liuyangData.vue 23 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678
  1. <template>
  2. <div class="sample-content">
  3. <!-- 表格組件 -->
  4. <div class="selectPo" @click="positionBtn">
  5. <el-input type="text" v-model="placeValue" clearable></el-input>
  6. <input type="text" v-model="value" style="opacity: 0; position: fixed" />
  7. </div>
  8. <div class="viewArea" v-if="viewShow">
  9. <h2 class="title">留样间样品存放位置可视图</h2>
  10. <div class="close" @click="positionBtn">
  11. <i class="el-icon-circle-close"></i>
  12. </div>
  13. <div class="select_quyu" v-if="viewShow">
  14. <div class="test-quyu" v-if="leixingcare">
  15. <div class="test-list">
  16. <ul class="list-items">
  17. <li
  18. v-show="item.qu_yu_ =='留样区'"
  19. class="list-item quyu-item"
  20. :style="{
  21. background: quyuShows == item.qu_yu_ ? '#FF9900' : '#0099CC',
  22. }"
  23. @click="qu_yu_Event"
  24. v-for="item in quyu_arr"
  25. :key="item.qu_yu_"
  26. >
  27. {{ item.qu_yu_ }}
  28. </li>
  29. </ul>
  30. </div>
  31. </div>
  32. <div class="huojia">
  33. <div class="test-list">
  34. <ul class="list-items">
  35. <li
  36. class="list-item huojia-item"
  37. :style="{
  38. background:
  39. huojiashow ==
  40. item.huo_jia_hao_ + '号' + item.huo_jia_lei_xing_
  41. ? '#ff9900'
  42. : '#0099cc',
  43. }"
  44. @click="huo_jia_hao_Event"
  45. v-for="(item, index) in huo_jia_arr"
  46. :key="index"
  47. >
  48. {{ item.huo_jia_hao_ }}号{{ item.huo_jia_lei_xing_ }}
  49. </li>
  50. </ul>
  51. </div>
  52. </div>
  53. <div class="huojia">
  54. <div class="test-list" v-show="!leixingcare">
  55. <ul class="list-items">
  56. <li
  57. class="list-item huojia-item"
  58. :style="{
  59. background:
  60. guajiashow == item.gua_jia_hao_ + '号挂架'
  61. ? '#FF9900'
  62. : '#e5baba',
  63. }"
  64. @click="gua_jia_Event"
  65. v-for="(item, index) in gua_jia_arr"
  66. :key="index"
  67. >
  68. {{ item.gua_jia_hao_ }}号挂架
  69. </li>
  70. </ul>
  71. </div>
  72. </div>
  73. </div>
  74. <div class="body-content">
  75. <div class="left-table" v-if="false"></div>
  76. <div class="right-view">
  77. <div class="goods-items">
  78. <div
  79. class="show-demo"
  80. v-for="(item, index) in listData"
  81. :key="index"
  82. >
  83. <div @click="positionClick(listData[index])">
  84. <div class="goods-level">
  85. <div class="level-dsc">第{{ index }}层</div>
  86. <div class="goods-list">
  87. <div
  88. class="goods-dsc"
  89. v-for="(it, ind) in listData[index]"
  90. :key="ind"
  91. :style="{
  92. background:
  93. it.wei_zhi_zhuang_ta == '空余' ? 'green' : '#E6A23C',
  94. }"
  95. >
  96. <div class="top-dsc">
  97. <div class="position">
  98. <p>位置:{{ it.wei_zhi_bian_hao_ }}</p>
  99. <p>样品编号:{{ it.yang_ben_bian_hao_ }}</p>
  100. <p>样品名称:{{ it.yang_ben_ming_che }}</p>
  101. <!-- <p>
  102. 存储条件:{{
  103. it.cun_chu_tiao_jian || it.cun_chu_yao_qiu_
  104. }}
  105. </p>
  106. <p >收样日期:{{ it.shou_yang_ri_qi_}}</p>
  107. <p v-if="it.shi_fou_liu_yang_ =='是'">留样期限:{{ it.liu_yang_qi_xian_}}</p>
  108. -->
  109. <!-- <p>编号:{{it.yang_pin_bian_hao}}</p> -->
  110. <!-- <p>批次:</p>
  111. <p>有效期:</p> -->
  112. </div>
  113. <!-- <div class="right-content" v-if="false">
  114. <p v-if="false">编号:{{ it.liu_yang_qi_xian_ }}</p>
  115. <p>
  116. {{ it.wei_zhi_zhuang_ta || it.yang_pin_ming_che }}
  117. </p>
  118. <p v-if="false">
  119. 存储条件:{{
  120. it.cun_chu_tiao_jian || it.cun_chu_yao_qiu_
  121. }}
  122. </p>
  123. </div> -->
  124. <div class="right-content">
  125. <p>
  126. {{ it.wei_zhi_zhuang_ta || it.yang_pin_ming_che }}
  127. </p>
  128. </div>
  129. </div>
  130. <div class="bottom-dsc" v-if="false">
  131. {{ it.wei_zhi_zhuang_ta || it.yang_pin_ming_che }}
  132. </div>
  133. </div>
  134. </div>
  135. </div>
  136. </div>
  137. </div>
  138. </div>
  139. </div>
  140. </div>
  141. </div>
  142. </div>
  143. </template>
  144. <script>
  145. import FixHeight from "@/mixins/height";
  146. import curdPost from "@/business/platform/form/utils/custom/joinCURD.js";
  147. export default {
  148. mixins: [FixHeight],
  149. data() {
  150. return {
  151. placeValue: "选择位置",
  152. viewShow: false,
  153. leixingcare: true,
  154. sampleOption: [],
  155. formInline: {
  156. fang_jian_hao_value: "",
  157. qu_yu_value: "",
  158. huo_jia_value: "",
  159. gua_jia_value: "",
  160. },
  161. listData: [],
  162. warehouseOptions: [],
  163. quyu_arr: [],
  164. huo_jia_arr: [],
  165. gua_jia_arr: [],
  166. firstLoadActive: true,
  167. qu_yu_value: "",
  168. quyuShow: "",
  169. quyuShow: "留样区",
  170. huojiashow: "",
  171. guajiashow: "",
  172. leixingcare: true,
  173. cenghao: [],
  174. warehouse: [],
  175. loading: false,
  176. // pagination: {},
  177. // secondshow: false,
  178. desString: "",
  179. };
  180. },
  181. filters: {
  182. specimenFilters: function (value) {
  183. if (value == "空余") {
  184. return "未占用";
  185. } else {
  186. return value;
  187. }
  188. },
  189. },
  190. created() {
  191. this.loadQueryData();
  192. this.firstLoadViewData();
  193. },
  194. methods: {
  195. positionBtn() {
  196. this.loadQueryData();
  197. this.firstLoadViewData();
  198. this.viewShow = !this.viewShow;
  199. // console.log(this.viewShow);
  200. },
  201. positionClick(values) {
  202. this.viewShow = !this.viewShow;
  203. this.placeValue = values[0].wei_zhi_bian_hao_;
  204. let this_ = this;
  205. // console.log(values[0].id_, "id");
  206. this_.$emit("input", values[0].id_); //传导
  207. },
  208. firstLoadViewData() {
  209. var this_ = this;
  210. var sqlString = `select * from t_ypcfwz where fang_jian_lei_xin = '样品间' and qu_yu_ ='留样区' and huo_jia_hao_ = '5T' and huo_jia_lei_xing_ = '医用冷藏冷冻箱'`;
  211. this.huojiashow = "5T号医用冷藏冷冻箱";
  212. this.quyuShows = "留样区";
  213. this.desString = "样品间" + "留样区医用冷藏冷冻箱";
  214. this.queryLoad(sqlString);
  215. this.formInline.fang_jian_hao_value = "样品间";
  216. this.formInline.qu_yu_value = "留样区";
  217. this.formInline.huo_jia_value = "5T号医用冷藏冷冻箱";
  218. let sql = `select distinct huo_jia_hao_,huo_jia_lei_xing_ from t_ypcfwz where fang_jian_lei_xin = '样品间' and qu_yu_ ='留样区' order by huo_jia_hao_ asc `;
  219. curdPost("sql", sql).then((response) => {
  220. this_.huo_jia_arr = response.variables.data;
  221. // console.log(this_.huo_jia_arr, "首次加载货架信息");
  222. });
  223. },
  224. loadQueryData() {
  225. //查询选择数据查询 房间类型查询
  226. var sqlString =
  227. "select distinct fang_jian_lei_xin from t_ypcfwz WHERE fang_jian_lei_xin !=''";
  228. var this_ = this;
  229. curdPost("sql", sqlString)
  230. .then((response) => {
  231. this_.sampleOption = response.variables.data;
  232. // console.log(this_.sampleOption, "this_.sampleOption");
  233. })
  234. .catch((err) => {
  235. console.log(err, "err------>");
  236. });
  237. },
  238. describeFn() {
  239. this.desString =
  240. this.formInline.fang_jian_hao_value +
  241. this.formInline.qu_yu_value +
  242. this.formInline.huo_jia_value +
  243. this.formInline.gua_jia_value;
  244. },
  245. onSubmits(sql) {
  246. var fang_jian_ = this.formInline.fang_jian_hao_value;
  247. var qu_yu = this.formInline.qu_yu_value;
  248. var huo_jia_hao_ = this.formInline.huo_jia_value.split("号")[0];
  249. let huo_jia_lei_xing_ = this.formInline.huo_jia_value.split("号")[1];
  250. var gua_jia_hao = this.formInline.gua_jia_value.substr(0, 1);
  251. var sql = `select * from t_ypcfwz where fang_jian_lei_xin = '${fang_jian_}' and qu_yu_ ='${qu_yu}' and huo_jia_lei_xing_ = '${huo_jia_lei_xing_}' and huo_jia_hao_ = '${huo_jia_hao_}'`;
  252. // console.log(sql);
  253. this.describeFn();
  254. this.queryLoad(sql);
  255. },
  256. queryLoad(sql) {
  257. //根据样品信息货位查询相对应的样品登记表
  258. var datas = [];
  259. var labelsMap = {}; // map存储
  260. var this_ = this;
  261. this_.listData = [];
  262. curdPost("sql", sql).then((res) => {
  263. datas = res.variables.data;
  264. // console.log(datas, "2222222222 ");
  265. datas.forEach((item) => {
  266. if (!labelsMap[item.ceng_hao_]) {
  267. //没有就创建
  268. labelsMap[item.ceng_hao_] = [];
  269. }
  270. // 通过样品货位配置的id外键 查询样品登记表
  271. let yangpingSql =
  272. "select * from t_lhypdjb WHERE cun_fang_wei_zhi_ = '" +
  273. item.id_ +
  274. "'";
  275. curdPost("sql", yangpingSql).then((res) => {
  276. var resData = res.variables.data;
  277. if (resData.length > 0) {
  278. resData.forEach((it) => {
  279. // console.log(yangpingSql, item, "样品扽飞机表");
  280. it.wei_zhi_bian_hao_ = item.wei_zhi_bian_hao_;
  281. labelsMap[item.ceng_hao_].push(it);
  282. });
  283. } else {
  284. labelsMap[item.ceng_hao_].push(item);
  285. }
  286. });
  287. // console.log(labelsMap, "3333333333");
  288. });
  289. // this.loading = true;
  290. this_.listData = labelsMap;
  291. });
  292. },
  293. qu_yu_Event(e) {
  294. //区间 留样 样品间 点击事件 查询相应的货架号->冰箱 赋值 huo_jia_hao_
  295. this.huo_jia_arrEvent(e.target.innerText);
  296. this.huojiashow = "";
  297. this.guajiashow = "";
  298. let sqlString = `select distinct huo_jia_hao_,huo_jia_lei_xing_ from t_ypcfwz where fang_jian_lei_xin = '${this.formInline.fang_jian_hao_value}' and qu_yu_ = '${e.target.innerText}' order by huo_jia_hao_ asc`;
  299. var this_ = this;
  300. this.qu_yu_value = e.target.innerText;
  301. this.quyuShows = e.target.innerText;
  302. this.formInline.qu_yu_value = e.target.innerText;
  303. curdPost("sql", sqlString).then((response) => {
  304. this_.huo_jia_arr = response.variables.data;
  305. // console.log(this_.huo_jia_arr, "区域点击");
  306. });
  307. this.describeFn();
  308. },
  309. huo_jia_hao_Event(e) {
  310. //货架 冰箱 液氮罐点击事件
  311. this.guajiashow = "";
  312. let selectText = e.target.innerText;
  313. this.guajiaarrEvent(selectText);
  314. this.huojiashow = selectText;
  315. let huojiaNum = selectText.split("号")[0];
  316. this.formInline.huo_jia_value = selectText;
  317. // console.log(this.formInline.huo_jia_value, huojiaNum, "value");
  318. let huojialeixing = this.formInline.huo_jia_value.split("号")[1];
  319. var sql = `select * from t_ypcfwz where fang_jian_lei_xin = '${this.formInline.fang_jian_hao_value}' and qu_yu_ = '${this.formInline.qu_yu_value}' and huo_jia_lei_xing_ = '${huojialeixing}' and huo_jia_hao_ = '${huojiaNum}'`;
  320. // console.log(sql, "货架点击");
  321. this.queryLoad(sql);
  322. this.formInline.gua_jia_value = "";
  323. this.describeFn();
  324. this.formInline.huo_jia_value = selectText;
  325. },
  326. // gua_jia_Event(e) {
  327. // //液氮罐挂架号点击事件 查询该液氮罐下该挂架的货位位置信息;
  328. // let selectText = e.target.innerText;
  329. // this.formInline.gua_jia_value = selectText;
  330. // this.guajiashow = selectText;
  331. // let hguajiaNum = selectText.substr(0, 1);
  332. // var fang_jian_hao_value = this.formInline.fang_jian_hao_value;
  333. // var huo_jia_value = this.formInline.huo_jia_value;
  334. // var sql = `select * from t_mjypcfwz where fang_jian_lei_xin = '${fang_jian_hao_value}' and huo_jia_lei_xing_ = '液氮罐' and huo_jia_hao_ = '${huo_jia_value.substring(
  335. // 0,
  336. // 1
  337. // )}' and gua_jia_hao_= '${hguajiaNum}'`;
  338. // this.describeFn();
  339. // this.queryLoad(sql);
  340. // },
  341. huo_jia_arrEvent(quyu) {
  342. let sqlString = `select distinct huo_jia_hao_,huo_jia_lei_xing_ from t_ypcfwz where fang_jian_lei_xin = '${this.formInline.fang_jian_hao_value}' and qu_yu_ = '${quyu}' order by huo_jia_hao_ asc`;
  343. var this_ = this;
  344. curdPost("sql", sqlString).then((response) => {
  345. this_.huo_jia_arr = response.variables.data;
  346. if (!this_.firstLoadActive) {
  347. this_.formInline.huo_jia_value = "";
  348. }
  349. this_.firstLoadActive = false;
  350. });
  351. },
  352. guajiaarrEvent(huojiaweizhi) {
  353. let huojiaNum = huojiaweizhi.substr(0, 1);
  354. let huojialeixing = huojiaweizhi.substr(2, huojiaweizhi.length);
  355. if (huojiaweizhi.includes("冰箱")) {
  356. this.gua_jia_arr = [];
  357. return;
  358. }
  359. let sqlString = `select distinct gua_jia_hao_ from t_mjypcfwz where fang_jian_lei_xin = '留样间' and huo_jia_lei_xing_ = '${huojialeixing}' and huo_jia_hao_ = '${huojiaNum}' order by gua_jia_hao_`;
  360. var this_ = this;
  361. curdPost("sql", sqlString).then((response) => {
  362. this_.gua_jia_arr = response.variables.data;
  363. });
  364. },
  365. },
  366. watch: {
  367. "formInline.fang_jian_hao_value": function (newdata, olddata) {
  368. //监控房间号 input 输入框数据变化 来改变区域和货架信息(input)
  369. this.huo_jia_arr = [];
  370. let sqlString = `select distinct qu_yu_ ,huo_jia_hao_ from t_ypcfwz where fang_jian_lei_xin = '${newdata}' `;
  371. var this_ = this;
  372. this_.formInline.qu_yu_value = "";
  373. this_.formInline.gua_jia_value = "";
  374. this_.formInline.huo_jia_value = "";
  375. this_.describeFn();
  376. curdPost("sql", sqlString).then((response) => {
  377. let person = response.variables.data;
  378. let obj = {};
  379. let peon = person.reduce((cur, next) => {
  380. obj[next.qu_yu_] ? "" : (obj[next.qu_yu_] = true && cur.push(next));
  381. return cur;
  382. }, []); //设置cur默认类型为数组,并且初始值为空的数组
  383. // console.log(peon);
  384. this_.quyu_arr = peon; //区域获取
  385. this_.quyu_arr.forEach((item) => {
  386. if (item.qu_yu_ == "") {
  387. //区域值为空
  388. this_.leixingcare = false;
  389. let sql = `select distinct huo_jia_hao_,huo_jia_lei_xing_ from t_ypcfwz where fang_jian_lei_xin = '${newdata}' order by huo_jia_hao_ asc`;
  390. curdPost("sql", sql).then((res) => {
  391. this_.huo_jia_arr = res.variables.data;
  392. });
  393. return;
  394. } else {
  395. this_.leixingcare = true;
  396. }
  397. });
  398. if (!this.firstLoadActive) {
  399. this_.formInline.qu_yu_value = "";
  400. }
  401. });
  402. },
  403. "formInline.qu_yu_value": function (newdata, olddata) {
  404. //监控区域变化 input 输入框数据变化 来改变区域和货架信息(input)
  405. this.quyuShow = newdata;
  406. this.huo_jia_arrEvent(newdata);
  407. this.huojiashow = "";
  408. this.guajiashow = "";
  409. this.formInline.qu_yu_value = newdata;
  410. let sqlString = `select distinct huo_jia_hao_,huo_jia_lei_xing_ from t_ypcfwz where fang_jian_lei_xin = '${this.formInline.fang_jian_hao_value}' and qu_yu_ = '${newdata}' order by huo_jia_hao_ asc`;
  411. var this_ = this;
  412. this.qu_yu_value = newdata;
  413. this.quyuShow = olddata;
  414. // console.log(sqlString, "货架变化");
  415. curdPost("sql", sqlString)
  416. .then((response) => {
  417. this_.huo_jia_arr = response.variables.data;
  418. })
  419. .catch((err) => {
  420. console.log(err);
  421. });
  422. this.describeFn();
  423. },
  424. "formInline.huo_jia_value": function (newdata, olddata) {
  425. //监控挂架变化 input 输入框数据变化 来改变区域和货架信息(input)
  426. this.huojiashow = newdata;
  427. },
  428. placeValue: function (newdata, olddata) {
  429. if (newdata == "" || newdata == null) {
  430. this.$emit("input", "");
  431. }
  432. },
  433. // "formInline.huo_jia_value": function (newdata, olddata) {
  434. // //监控货架变化 input 输入框数据变化 来改变区域和货架信息(input)
  435. // this.huojiashow = newdata;
  436. // //货架 冰箱 液氮罐点击事件
  437. // this.guajiashow = "";
  438. // let selectText = newdata;
  439. // this.guajiaarrEvent(selectText);
  440. // this.huojiashow = selectText;
  441. // let huojiaNum = selectText.substr(0, 1);
  442. // this.formInline.huo_jia_value = selectText;
  443. // this.formInline.gua_jia_value = "";
  444. // //区分是冰箱和液氮罐的点击事件
  445. // if (selectText.includes("冰箱")) {
  446. // //如果是冰箱 请求样品货位配置信息 ->查询登记表
  447. // } else if (selectText.includes("液氮罐")) {
  448. // //液氮罐 查询该液氮罐下所有的挂架
  449. // console.log(huojiaNum);
  450. // let sqlString = `select distinct gua_jia_hao_ from t_mjypcfwz where huo_jia_lei_xing_ = '液氮罐' and huo_jia_hao_ = '${huojiaNum}' order by gua_jia_hao_ asc`;
  451. // var this_ = this;
  452. // curdPost("sql", sqlString).then((response) => {
  453. // this_.gua_jia_arr = response.variables.data;
  454. // });
  455. // }
  456. // let sqlString = `select distinct gua_jia_hao_ from t_mjypcfwz where huo_jia_lei_xing_ = '液氮罐' and huo_jia_hao_ = '${huojiaNum}' order by gua_jia_hao_ asc`;
  457. // var this_ = this;
  458. // curdPost("sql", sqlString).then((response) => {
  459. // this_.gua_jia_arr = response.variables.data;
  460. // });
  461. // this.describeFn();
  462. // this.formInline.huo_jia_value = selectText;
  463. // },
  464. },
  465. };
  466. </script>
  467. <style lang="scss" scoped>
  468. p {
  469. padding: 0;
  470. margin: 0;
  471. }
  472. .sample-content {
  473. width: 100%;
  474. // position: fixed;
  475. top: 50;
  476. position: relative;
  477. background: white;
  478. .close {
  479. position: fixed;
  480. right: 52px;
  481. top: 20px;
  482. color: red;
  483. z-index: 999;
  484. font-size: 45px;
  485. }
  486. .title {
  487. width: 100%;
  488. height: 14px;
  489. line-height: 24px;
  490. font-size: 24px;
  491. text-align: center;
  492. }
  493. .selectPo {
  494. cursor: pointer;
  495. z-index: 9;
  496. }
  497. .top-content {
  498. width: 100%;
  499. .top-title {
  500. text-align: center;
  501. font-weight: bold;
  502. width: 100%;
  503. font-size: 18px;
  504. line-height: 40px;
  505. }
  506. .query-content {
  507. display: flex;
  508. margin-left: 25px;
  509. }
  510. }
  511. .viewArea {
  512. position: fixed;
  513. left: 0;
  514. top: 0;
  515. width: 100%;
  516. background: white;
  517. z-index: 99 !important;
  518. }
  519. .select_quyu {
  520. .test-quyu,
  521. .huojia {
  522. width: 100%;
  523. .list-items {
  524. display: flex;
  525. cursor: pointer;
  526. .quyu-item {
  527. background: #0099cc;
  528. }
  529. .huojia-item {
  530. background: #99ccff;
  531. }
  532. .list-item {
  533. padding: 0px 10px;
  534. background-color: rgb(206, 198, 164);
  535. text-align: center;
  536. line-height: 35px;
  537. margin-left: 20px;
  538. border-radius: 10px;
  539. }
  540. }
  541. .cangku-mingchen {
  542. width: 100%;
  543. text-align: left;
  544. margin-left: 50px;
  545. }
  546. }
  547. }
  548. .body-content {
  549. margin-bottom: 20px;
  550. display: flex;
  551. box-sizing: border-box;
  552. height: 100vh;
  553. overflow-x: hidden;
  554. overflow-y: scroll;
  555. // .left-table {
  556. // // width: 40%;
  557. // ::v-deep .el-table {
  558. // width: 40%;
  559. // }
  560. // }
  561. .right-view {
  562. z-index: 99;
  563. width: 100%;
  564. .goods-items {
  565. width: 100%;
  566. border: solid 2px rgb(202, 236, 247);
  567. display: flex;
  568. flex-direction: column-reverse;
  569. .show-demo {
  570. width: 100%;
  571. // border-bottom: 1px solid bisque;
  572. // margin: 0 auto;
  573. text-align: center;
  574. .goods-level {
  575. display: flex;
  576. position: relative;
  577. margin-bottom: 6px;
  578. }
  579. .level-dsc {
  580. margin-top: 12px;
  581. position: absolute;
  582. bottom: 0;
  583. left: 10px;
  584. }
  585. .goods-list {
  586. display: flex;
  587. // justify-content: flex-start;
  588. flex-wrap: wrap-reverse;
  589. align-content: flex-start;
  590. margin-left: 50px;
  591. margin-right: 15px;
  592. .goods-dsc {
  593. cursor: pointer;
  594. padding: 2px 6px;
  595. border-radius: 5px;
  596. background: #e6a23c;
  597. margin-left: 12px;
  598. margin-top: 6px;
  599. // box-sizing: border-box;
  600. .top-dsc {
  601. display: flex;
  602. justify-content: space-between;
  603. font-size: 12px;
  604. // height: 18px;
  605. line-height: 18px;
  606. .position {
  607. width: 160px;
  608. overflow: hidden;
  609. }
  610. .position > p {
  611. text-align: left;
  612. color: #fbe8ff;
  613. }
  614. .right-content {
  615. display: flex;
  616. align-items: center;
  617. p {
  618. height: 18px;
  619. line-height: 18px;
  620. margin-left: 5px;
  621. color: #fbe8ff;
  622. text-align: left;
  623. }
  624. }
  625. }
  626. .bottom-dsc {
  627. width: 100%;
  628. text-align: center;
  629. font-size: 18px;
  630. height: 45px;
  631. line-height: 45px;
  632. margin-top: 9px;
  633. color: #fbe8ff;
  634. }
  635. .goods-demo {
  636. display: block;
  637. width: 70px;
  638. height: 90px;
  639. border: 1px solid rgb(10, 9, 8);
  640. text-align: center;
  641. margin: 0;
  642. }
  643. .goods-code {
  644. text-align: center;
  645. width: 100%;
  646. height: 20px;
  647. line-height: 20px;
  648. }
  649. }
  650. }
  651. .goodshelf-name {
  652. margin: 15px 0px;
  653. }
  654. .shelf {
  655. width: 100%;
  656. height: 40px;
  657. line-height: 40px;
  658. text-align: center;
  659. }
  660. }
  661. }
  662. }
  663. }
  664. }
  665. </style>