manualConfirmationSupplementary.vue 44 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958
  1. <!-- 样品接收确认 -->
  2. <template>
  3. <div class="sample-scan">
  4. <!-- 扫码接收的输入框-->
  5. <el-input
  6. v-model="facilityId"
  7. ref="redarInput"
  8. @change="facilityData(facilityId)"
  9. style="z-index: -999;"
  10. ></el-input>
  11. <!-- <el-button type="primary" @click="openRedar" >
  12. 測試</el-button> -->
  13. <!-- 扫码操作组件-->
  14. <div class="popContainer" v-if="redar" @click="remRedar">
  15. <dv-decoration-12 style="width:150px;height:100px;margin:0 auto;top: 35%;">
  16. <span style=" color: #66D9EF;">开启扫描设备连接-样品接收确认</span>
  17. </dv-decoration-12>
  18. </div>
  19. <el-dialog
  20. width="90%"
  21. top="5vh"
  22. :modal-append-to-body='false'
  23. title=" 样品补数据操作 - 确认样品数量及相关信息
  24. 如有修改样品类型规格等信息,请前往质量管理-客户反馈-客户沟通模块填写客户沟通记录表"
  25. @close="closeDialog"
  26. :before-close = "handleClose"
  27. :visible.sync="visible"
  28. > <!-- 表单是否显示 -->
  29. <div style="height: 600px;overflow: auto;" @click.self="handleChange">
  30. <el-form label-position="top" size="mini" :model="listData" label-width="100px">
  31. <div v-for="(item,index) in listData">
  32. <el-row>
  33. <div class="dynamic-form-table">
  34. <div class="dynamic-form-table__block panel panel-info">
  35. <div class="panel-heading ibps-clearfix">
  36. <!--块模式:工具栏-->
  37. <div class="ibps-fl dynamic-form-table__label">
  38. 样品No:{{ index+1 }}
  39. </div>
  40. </div>
  41. </div>
  42. </div>
  43. </el-row>
  44. <div style="padding: 10px 20px;">
  45. <el-row>
  46. <el-col :span="6">
  47. <el-form-item label="样品编号">
  48. <el-input v-model="item.yang_pin_bian_hao" readonly="true"></el-input>
  49. </el-form-item>
  50. </el-col>
  51. <el-col :span="6">
  52. <el-form-item label="样品名称">
  53. <el-input v-model="item.yang_pin_ming_che" readonly="true"></el-input>
  54. </el-form-item>
  55. </el-col>
  56. <el-col :span="6">
  57. <el-form-item label="样品总数">
  58. <el-input v-model="item.yang_pin_zong_shu" readonly="true"></el-input>
  59. </el-form-item>
  60. </el-col>
  61. <el-col :span="6">
  62. <el-form-item label="本次确认数量" required>
  63. <el-input v-model="item.jie_yang_shu_lian"></el-input>
  64. </el-form-item>
  65. </el-col>
  66. </el-row>
  67. <el-row>
  68. <el-col :span="6">
  69. <el-form-item label="样品类型(一)">
  70. <!-- <el-input v-model="item.yang_pin_lei_xing " ></el-input> -->
  71. <template slot-scope="scope">
  72. <el-select v-model="item.yang_pin_lei_xing" placeholder="请选择" filterable allow-create>
  73. <el-option
  74. v-for="item in sampleTypes"
  75. :key = "item.value"
  76. :label = "item.label"
  77. :value = "item.value"
  78. >
  79. </el-option>
  80. </el-select>
  81. </template>
  82. </el-form-item>
  83. </el-col>
  84. <el-col :span="6">
  85. <el-form-item label="样品运输条件(一)">
  86. <!-- <el-input v-model="item.yang_ben_yun_shu_" ></el-input> -->
  87. <template slot-scope="scope">
  88. <el-select v-model="item.yang_ben_yun_shu_" placeholder="请选择" filterable allow-create>
  89. <el-option
  90. v-for="item in sampleTransportationConditions"
  91. :key = "item.value"
  92. :label = "item.label"
  93. :value = "item.value"
  94. >
  95. </el-option>
  96. </el-select>
  97. </template>
  98. </el-form-item>
  99. </el-col>
  100. <el-col :span="6">
  101. <el-form-item label="样品数量(一)">
  102. <el-input v-model="item.shu_liang_" @change="changeShuLiang(index)"></el-input>
  103. </el-form-item>
  104. </el-col>
  105. <el-col :span="6">
  106. <el-form-item label="样品规格(一)">
  107. <!-- <el-input v-model="item.yang_pin_gui_ge_"></el-input> -->
  108. <template slot-scope="scope">
  109. <el-select v-model="item.yang_pin_gui_ge_" placeholder="请选择" filterable allow-create>
  110. <el-option
  111. v-for="item in sampleSpecifications"
  112. :key = "item.value"
  113. :label = "item.label"
  114. :value = "item.value"
  115. >
  116. </el-option>
  117. </el-select>
  118. </template>
  119. </el-form-item>
  120. </el-col>
  121. </el-row>
  122. <!--每种类型对应的留样数量和留样存放位置-->
  123. <el-row >
  124. <el-col :span="6">
  125. <el-form-item label="样品存放位置(一)" required >
  126. <template slot-scope="scope">
  127. <weizhiData v-model="item.shou_yang_wei_zhi_yi"/>
  128. </template>
  129. </el-form-item>
  130. </el-col>
  131. <el-col :span="6">
  132. <el-form-item label="是否留样" class="zzj">
  133. <template slot-scope="scope">
  134. <el-select v-model="item.shi_fou_liu_yang_yi" placeholder="请选择"
  135. @change="ifLiuYangChange_One(index)">
  136. <el-option
  137. v-for="item in ifLY"
  138. :key="item.value"
  139. :label="item.label"
  140. :value="item.value">
  141. </el-option>
  142. </el-select>
  143. </template>
  144. </el-form-item>
  145. </el-col>
  146. <el-col :span="6">
  147. <el-form-item label="留样数量(一)" required class="zzj">
  148. <template slot-scope="scope">
  149. <el-input v-model="item.liu_yang_shu_lian_yi"></el-input>
  150. </template>
  151. </el-form-item>
  152. </el-col>
  153. <el-col :span="6">
  154. <el-form-item label="留样存放位置(一)" required>
  155. <template slot-scope="scope">
  156. <liuyangData v-model="item.liu_yang_wei_zhi_yi"/>
  157. </template>
  158. </el-form-item>
  159. </el-col>
  160. </el-row>
  161. <el-row v-if="item.flag2">
  162. <el-col :span="6">
  163. <el-form-item label="样品类型(二)" >
  164. <!-- <el-input v-model="item.yang_pin_lei_er_" ></el-input> -->
  165. <template slot-scope="scope">
  166. <el-select v-model="item.yang_pin_lei_er_" placeholder="请选择" filterable allow-create>
  167. <el-option
  168. v-for="item in sampleTypes"
  169. :key = "item.value"
  170. :label = "item.label"
  171. :value = "item.value"
  172. >
  173. </el-option>
  174. </el-select>
  175. </template>
  176. </el-form-item>
  177. </el-col>
  178. <el-col :span="6">
  179. <el-form-item label="样品运输条件(二)">
  180. <!-- <el-input v-model="item.yang_pin_yun_shu_" ></el-input> -->
  181. <template slot-scope="scope">
  182. <el-select v-model="item.yang_pin_yun_shu_" placeholder="请选择" filterable allow-create>
  183. <el-option
  184. v-for="item in sampleTransportationConditions"
  185. :key = "item.value"
  186. :label = "item.label"
  187. :value = "item.value"
  188. >
  189. </el-option>
  190. </el-select>
  191. </template>
  192. </el-form-item>
  193. </el-col>
  194. <el-col :span="6">
  195. <el-form-item label="样品数量(二)" >
  196. <el-input v-model="item.shu_liang_er_" @change="changeShuLiang(index)"></el-input>
  197. </el-form-item>
  198. </el-col>
  199. <el-col :span="6">
  200. <el-form-item label="样品规格(二)">
  201. <!-- <el-input v-model="item.yang_pin_gui_ge_e" ></el-input> -->
  202. <template slot-scope="scope">
  203. <el-select v-model="item.yang_pin_gui_ge_e" placeholder="请选择" filterable allow-create>
  204. <el-option
  205. v-for="item in sampleSpecifications"
  206. :key = "item.value"
  207. :label = "item.label"
  208. :value = "item.value"
  209. >
  210. </el-option>
  211. </el-select>
  212. </template>
  213. </el-form-item>
  214. </el-col>
  215. </el-row>
  216. <!--每种类型对应的留样数量和留样存放位置-->
  217. <el-row v-if="item.flag2">
  218. <el-col :span="6">
  219. <el-form-item label="样品存放位置(二)" required>
  220. <template slot-scope="scope">
  221. <weizhiData v-model="item.shou_yang_wei_zhi_er"/>
  222. </template>
  223. </el-form-item>
  224. </el-col>
  225. <el-col :span="6">
  226. <el-form-item label="是否留样" class="zzj">
  227. <template slot-scope="scope">
  228. <el-select v-model="item.shi_fou_liu_yang_er" placeholder="请选择"
  229. @change="ifLiuYangChange_Two(index)">
  230. <el-option
  231. v-for="item in ifLY"
  232. :key="item.value"
  233. :label="item.label"
  234. :value="item.value">
  235. </el-option>
  236. </el-select>
  237. </template>
  238. </el-form-item>
  239. </el-col>
  240. <el-col :span="6">
  241. <el-form-item label="留样数量(二)" required class="zzj">
  242. <template slot-scope="scope">
  243. <el-input v-model="item.liu_yang_shu_lian_er"></el-input>
  244. </template>
  245. </el-form-item>
  246. </el-col>
  247. <el-col :span="6">
  248. <el-form-item label="留样存放位置(二)" required>
  249. <template slot-scope="scope">
  250. <liuyangData v-model="item.liu_yang_wei_zhi_er"/>
  251. </template>
  252. </el-form-item>
  253. </el-col>
  254. </el-row>
  255. <el-row v-if="item.flag3">
  256. <el-col :span="6">
  257. <el-form-item label="样品类型(三)" >
  258. <!-- <el-input v-model="item.yang_pin_lei_san_" ></el-input> -->
  259. <template slot-scope="scope">
  260. <el-select v-model="item.yang_pin_lei_san_" placeholder="请选择" filterable allow-create>
  261. <el-option
  262. v-for="item in sampleTypes"
  263. :key = "item.value"
  264. :label = "item.label"
  265. :value = "item.value"
  266. >
  267. </el-option>
  268. </el-select>
  269. </template>
  270. </el-form-item>
  271. </el-col>
  272. <el-col :span="6">
  273. <el-form-item label="样品运输条件(三)">
  274. <!-- <el-input v-model="item.yang_pin_yun_san" ></el-input> -->
  275. <template slot-scope="scope">
  276. <el-select v-model="item.yang_pin_yun_san" placeholder="请选择" filterable allow-create>
  277. <el-option
  278. v-for="item in sampleTransportationConditions"
  279. :key = "item.value"
  280. :label = "item.label"
  281. :value = "item.value"
  282. >
  283. </el-option>
  284. </el-select>
  285. </template>
  286. </el-form-item>
  287. </el-col>
  288. <el-col :span="6">
  289. <el-form-item label="样品数量(三)">
  290. <el-input v-model="item.shu_liang_san_" @change="changeShuLiang(index)"></el-input>
  291. </el-form-item>
  292. </el-col>
  293. <el-col :span="6">
  294. <el-form-item label="样品规格(三)">
  295. <!-- <el-input v-model="item.yang_pin_gui_ge_s" ></el-input> -->
  296. <template slot-scope="scope">
  297. <el-select v-model="item.yang_pin_gui_ge_s" placeholder="请选择" filterable allow-create>
  298. <el-option
  299. v-for="item in sampleSpecifications"
  300. :key = "item.value"
  301. :label = "item.label"
  302. :value = "item.value"
  303. >
  304. </el-option>
  305. </el-select>
  306. </template>
  307. </el-form-item>
  308. </el-col>
  309. </el-row>
  310. <!--每种类型对应的留样数量和留样存放位置-->
  311. <el-row v-if="item.flag3">
  312. <el-col :span="6">
  313. <el-form-item label="样品存放位置(三)" required>
  314. <template slot-scope="scope">
  315. <weizhiData v-model="item.shou_yang_wei_zhi_san"/>
  316. </template>
  317. </el-form-item>
  318. </el-col>
  319. <el-col :span="6">
  320. <el-form-item label="是否留样" class="zzj">
  321. <template slot-scope="scope">
  322. <el-select v-model="item.shi_fou_liu_yang_san" placeholder="请选择"
  323. @change="ifLiuYangChange_Three(index)">
  324. <el-option
  325. v-for="item in ifLY"
  326. :key="item.value"
  327. :label="item.label"
  328. :value="item.value">
  329. </el-option>
  330. </el-select>
  331. </template>
  332. </el-form-item>
  333. </el-col>
  334. <el-col :span="6">
  335. <el-form-item label="留样数量(三)" required class="zzj">
  336. <template slot-scope="scope">
  337. <el-input v-model="item.liu_yang_shu_lian_san"></el-input>
  338. </template>
  339. </el-form-item>
  340. </el-col>
  341. <el-col :span="6">
  342. <el-form-item label="留样存放位置(三)" required>
  343. <template slot-scope="scope">
  344. <liuyangData v-model="item.liu_yang_wei_zhi_san"/>
  345. </template>
  346. </el-form-item>
  347. </el-col>
  348. </el-row>
  349. <el-row v-if="item.flag4">
  350. <el-col :span="6">
  351. <el-form-item label="样品类型(四)">
  352. <!-- <el-input v-model="item.yang_pin_lei_si_" ></el-input> -->
  353. <template slot-scope="scope">
  354. <el-select v-model="item.yang_pin_lei_si_" placeholder="请选择" filterable allow-create>
  355. <el-option
  356. v-for="item in sampleTypes"
  357. :key = "item.value"
  358. :label = "item.label"
  359. :value = "item.value"
  360. >
  361. </el-option>
  362. </el-select>
  363. </template>
  364. </el-form-item>
  365. </el-col>
  366. <el-col :span="6">
  367. <el-form-item label="样品运输条件(四)">
  368. <!-- <el-input v-model="item.yang_pin_yun_si_" ></el-input> -->
  369. <template slot-scope="scope">
  370. <el-select v-model="item.yang_pin_yun_si_" placeholder="请选择" filterable allow-create>
  371. <el-option
  372. v-for="item in sampleTransportationConditions"
  373. :key = "item.value"
  374. :label = "item.label"
  375. :value = "item.value"
  376. >
  377. </el-option>
  378. </el-select>
  379. </template>
  380. </el-form-item>
  381. </el-col>
  382. <el-col :span="6">
  383. <el-form-item label="样品数量(四)">
  384. <el-input v-model="item.shu_liang_si_" @change="changeShuLiang(index)"></el-input>
  385. </el-form-item>
  386. </el-col>
  387. <el-col :span="6">
  388. <el-form-item label="样品规格(四)">
  389. <!-- <el-input v-model="item.yang_pin_gui_si_" ></el-input> -->
  390. <template slot-scope="scope">
  391. <el-select v-model="item.yang_pin_gui_si_" placeholder="请选择" filterable allow-create>
  392. <el-option
  393. v-for="item in sampleSpecifications"
  394. :key = "item.value"
  395. :label = "item.label"
  396. :value = "item.value"
  397. >
  398. </el-option>
  399. </el-select>
  400. </template>
  401. </el-form-item>
  402. </el-col>
  403. </el-row>
  404. <!--每种类型对应的留样数量和留样存放位置-->
  405. <el-row v-if="item.flag4">
  406. <el-col :span="6">
  407. <el-form-item label="样品存放位置(四)" required>
  408. <template slot-scope="scope">
  409. <weizhiData v-model="item.shou_yang_wei_zhi_si"/>
  410. </template>
  411. </el-form-item>
  412. </el-col>
  413. <el-col :span="6">
  414. <el-form-item label="是否留样" class="zzj">
  415. <template slot-scope="scope">
  416. <el-select v-model="item.shi_fou_liu_yang_si" placeholder="请选择"
  417. @change="ifLiuYangChange_Four(index)">
  418. <el-option
  419. v-for="item in ifLY"
  420. :key="item.value"
  421. :label="item.label"
  422. :value="item.value">
  423. </el-option>
  424. </el-select>
  425. </template>
  426. </el-form-item>
  427. </el-col>
  428. <el-col :span="6">
  429. <el-form-item label="留样数量(四)" required class="zzj">
  430. <template slot-scope="scope">
  431. <el-input v-model="item.liu_yang_shu_lian_si"></el-input>
  432. </template>
  433. </el-form-item>
  434. </el-col>
  435. <el-col :span="6">
  436. <el-form-item label="留样存放位置(四)" required>
  437. <template slot-scope="scope">
  438. <liuyangData v-model="item.liu_yang_wei_zhi_si"/>
  439. </template>
  440. </el-form-item>
  441. </el-col>
  442. </el-row>
  443. <el-row>
  444. <!-- <el-col :span="6">
  445. <el-form-item label="样品存放位置" required>
  446. <template slot-scope="scope">
  447. <weizhiData v-model="item.shou_yang_wei_zhi"/>
  448. </template>
  449. </el-form-item>
  450. </el-col> -->
  451. <!-- <el-col :span="6">
  452. <el-form-item label="留样存放位置" required>
  453. <template slot-scope="scope">
  454. <liuyangData v-model="item.liu_yang_wei_zhi_"/>
  455. </template>
  456. </el-form-item>
  457. </el-col> -->
  458. </el-row>
  459. <el-row>
  460. <!-- <el-col :span="6">
  461. <el-form-item label="是否留样">
  462. <template slot-scope="scope">
  463. <el-select v-model="item.shi_fou_liu_yang_" placeholder="请选择"
  464. @change="ifLiuYangChange(item,index)">
  465. <el-option
  466. v-for="item in ifLY"
  467. :key="item.value"
  468. :label="item.label"
  469. :value="item.value">
  470. </el-option>
  471. </el-select>
  472. </template>
  473. </el-form-item>
  474. </el-col> -->
  475. <el-col :span="6">
  476. <el-form-item label="留样日期">
  477. <template slot-scope="scope">
  478. <el-date-picker
  479. v-model="item.liu_yang_ri_qi_"
  480. type="date"
  481. value-format="yyyy-MM-dd"
  482. format="yyyy-MM-dd"
  483. placeholder="请选择"
  484. :readonly="false"
  485. :clearable="true"
  486. @change="liuyanChange(item,index)"
  487. />
  488. </template>
  489. </el-form-item>
  490. </el-col>
  491. <!-- <el-col :span="6">
  492. <el-form-item label="留样数量" required>
  493. <template slot-scope="scope">
  494. <el-input
  495. v-model="item.liu_yang_shu_lian"
  496. >
  497. </el-input>
  498. </template>
  499. </el-form-item>
  500. </el-col> -->
  501. <el-col :span="6">
  502. <el-form-item label="留样期限至">
  503. <template slot-scope="scope">
  504. <el-date-picker
  505. v-model="item.liu_yang_qi_xian"
  506. type="date"
  507. value-format="yyyy-MM-dd"
  508. format="yyyy-MM-dd"
  509. placeholder="请选择"
  510. :readonly="false"
  511. :clearable="true"
  512. />
  513. </template>
  514. </el-form-item>
  515. </el-col>
  516. <!-- <el-col :span="6">
  517. <el-form-item v-if="flag" label="销毁日期" >
  518. <template slot-scope="scope">
  519. <el-date-picker
  520. v-model="item.xiao_hui_ri_qi_"
  521. type="date"
  522. value-format="yyyy-MM-dd"
  523. format="yyyy-MM-dd"
  524. placeholder="请选择"
  525. :readonly="true"
  526. :clearable="true"
  527. />
  528. </template>
  529. </el-form-item>
  530. </el-col> -->
  531. </el-row>
  532. <el-row>
  533. <el-col :span="6">
  534. <el-form-item label="返样日期">
  535. <template slot-scope="scope">
  536. <el-date-picker
  537. v-model="item.fan_yang_ri_qi_"
  538. type="date"
  539. value-format="yyyy-MM-dd"
  540. format="yyyy-MM-dd"
  541. placeholder="请选择"
  542. :readonly="false"
  543. :clearable="true"
  544. />
  545. </template>
  546. </el-form-item>
  547. </el-col>
  548. <el-col :span="6">
  549. <el-form-item label="返样接样人">
  550. <template slot-scope="scope">
  551. <el-input
  552. v-model="item.fan_yang_jyr"
  553. placeholder="请输入"
  554. type="text"
  555. :readonly="false"
  556. clearable
  557. />
  558. </template>
  559. </el-form-item>
  560. </el-col>
  561. <el-col :span="6">
  562. <el-form-item label="是否加急" >
  563. <el-input v-model="item.chu_ju_bao_gao_ya" readonly="true" class="jiaji"></el-input>
  564. </el-form-item>
  565. </el-col>
  566. <el-col :span="6">
  567. <el-form-item label="验收结果">
  568. <template slot-scope="scope">
  569. <el-select v-model="item.yan_shou_jie_guo_" placeholder="请选择">
  570. <el-option
  571. v-for="item in checkOptions"
  572. :key="item.value"
  573. :label="item.label"
  574. :value="item.value">
  575. </el-option>
  576. </el-select>
  577. </template>
  578. </el-form-item>
  579. </el-col>
  580. <!-- <el-col :span="6">
  581. <el-form-item label="分装留样数量">
  582. <template slot-scope="scope">
  583. <el-input
  584. v-model="item.fen_zhuang_liu_ya"
  585. placeholder="请输入"
  586. type="text"
  587. :readonly="false"
  588. clearable
  589. />
  590. </template>
  591. </el-form-item>
  592. </el-col> -->
  593. </el-row>
  594. <el-row>
  595. <el-col :span="6">
  596. <el-form-item label="姓名">
  597. <template slot-scope="scope">
  598. <el-input
  599. v-model="item.xing_ming_"
  600. placeholder="请输入"
  601. type="text"
  602. :readonly="false"
  603. clearable
  604. />
  605. </template>
  606. </el-form-item>
  607. </el-col>
  608. <el-col :span="6">
  609. <el-form-item label="性别">
  610. <template slot-scope="scope">
  611. <el-select v-model="item.xing_bie_" placeholder="请选择">
  612. <el-option
  613. v-for="item in sex"
  614. :key="item.value"
  615. :label="item.label"
  616. :value="item.value">
  617. </el-option>
  618. </el-select>
  619. </template>
  620. </el-form-item>
  621. </el-col>
  622. <el-col :span="6">
  623. <el-form-item label="年龄">
  624. <template slot-scope="scope">
  625. <el-input
  626. v-model="item.nian_ling_"
  627. placeholder="请输入"
  628. type="text"
  629. :readonly="false"
  630. clearable
  631. />
  632. </template>
  633. </el-form-item>
  634. </el-col>
  635. </el-row>
  636. <el-row>
  637. <el-col :span="6">
  638. <el-form-item label="备注">
  639. <template slot-scope="scope">
  640. <el-input
  641. v-model="item.bei_zhu_"
  642. placeholder="请输入"
  643. type="text"
  644. :readonly="false"
  645. clearable
  646. />
  647. </template>
  648. </el-form-item>
  649. </el-col>
  650. <el-col :span="6">
  651. <el-form-item label="送样要求">
  652. <template slot-scope="scope">
  653. <el-input
  654. v-model="item.song_yang_yao_qiu"
  655. placeholder="请输入"
  656. type="text"
  657. :readonly="false"
  658. clearable
  659. />
  660. </template>
  661. </el-form-item>
  662. </el-col>
  663. <el-col :span="6">
  664. <el-form-item label="接样确认状态">
  665. <template slot-scope="scope">
  666. <el-select v-model="item.jie_yang_zhuang_t" placeholder="请选择">
  667. <el-option
  668. v-for="item in options"
  669. :key="item.value"
  670. :label="item.label"
  671. :value="item.value">
  672. </el-option>
  673. </el-select>
  674. </template>
  675. </el-form-item>
  676. </el-col>
  677. <el-col :span="6">
  678. <el-form-item label="功能">
  679. <template slot-scope="scope">
  680. <el-button
  681. size="small"
  682. type="danger"
  683. icon="el-icon-delete"
  684. @click="deleteData(item.id_)"
  685. >删除</el-button>
  686. </template>
  687. </el-form-item>
  688. </el-col>
  689. </el-row>
  690. <el-row>
  691. </el-row>
  692. </div>
  693. </div>
  694. </el-form>
  695. </div>
  696. <span slot="footer" class="dialog-footer">
  697. <el-button @click="visible = false">取 消</el-button>
  698. <el-button @click="submitData('确认')" type="primary" >样品确认</el-button>
  699. </span>
  700. </el-dialog>
  701. </div>
  702. </template>
  703. <script>
  704. import manualConfirmationJSSupplementary from '../js/manualConfirmationJSSupplementary.js'
  705. import IbpsLinkData from '@/business/platform/data/templaterender/link-data'
  706. import weizhiData from "./weizhiData.vue"
  707. import liuyangData from "./liuyangData.vue"
  708. import * as dayjs from 'dayjs'
  709. export default {
  710. components:{
  711. IbpsLinkData,
  712. weizhiData,
  713. liuyangData,
  714. },
  715. mixins:[manualConfirmationJSSupplementary],
  716. props:{scanVisible:Boolean},
  717. watch:{
  718. listData: {
  719. handler(val, oldName) {
  720. if(val.length>0){
  721. this.visible = true
  722. this.redar = false // 扫描后就让扫描组件隐藏
  723. }
  724. },
  725. deep: true,
  726. immediate: true
  727. },
  728. scanVisible:{
  729. handler(val, oldName) {
  730. if(val){
  731. this.redar = false // 扫码的组件 一开始先展示
  732. this.visible = true // 结果列表 一开始没扫描就不展示
  733. this.$nextTick(() => {
  734. this.$refs.redarInput.focus(); //聚焦input
  735. })
  736. this.listData = [] //清空列表
  737. }else{
  738. this.remRedar()
  739. }
  740. },
  741. deep: true,
  742. immediate: true
  743. }
  744. },
  745. created() {
  746. this.facilityData(1)
  747. },
  748. data () {
  749. return {
  750. updateNum:1,
  751. visible:false,
  752. redar:false,
  753. facilityId:'',
  754. listData:[],
  755. currentPage:1,
  756. options: [{
  757. value: '已确认',
  758. label: '已确认'
  759. }, {
  760. value: '未确认',
  761. label: '未确认'
  762. }],
  763. checkOptions:[{
  764. value:'完好',
  765. label:'完好'
  766. },{
  767. value:'残缺',
  768. label:'残缺'
  769. }],
  770. ifLY:[{
  771. value:'是',
  772. label:'是'
  773. },{
  774. value:'否',
  775. label:'否'
  776. }],
  777. sex:[{
  778. value:'男',
  779. label:'男'
  780. },{
  781. value:'女',
  782. label:'女'
  783. }],
  784. // OriginalPosition:[],
  785. sampleTypes:[],
  786. sampleSpecifications:[],
  787. sampleTransportationConditions:[{
  788. value:'常温',
  789. label:'常温'
  790. },{
  791. value:'冰袋(2-8℃)',
  792. label:'冰袋(2-8℃)'
  793. },{
  794. value:'干冰',
  795. label:'干冰'
  796. },{
  797. value:'液氮',
  798. label:'液氮'
  799. },{
  800. value:'其它',
  801. label:'其它'
  802. }],
  803. pageCount:1,
  804. item:'',
  805. flag: true,
  806. }
  807. },
  808. methods:{
  809. current_change(currentPage){
  810. this.currentPage = currentPage
  811. this.facilityData(currentPage)
  812. },
  813. liuyanChange(item,index){
  814. // console.log(item,index)
  815. if(this.listData[index].liu_yang_ri_qi_=== undefined || this.listData[index].liu_yang_ri_qi_ === null){
  816. this.listData[index].xiao_hui_ri_qi_ = null
  817. this.listData[index].liu_yang_qi_xian = null
  818. }else{
  819. this.flag = false
  820. let itemData = dayjs(this.listData[index].liu_yang_ri_qi_).add(7,'day').format("YYYY-MM-DD")
  821. let val = dayjs(this.listData[index].liu_yang_ri_qi_).add(3,'month').format("YYYY-MM-DD")
  822. this.listData[index].xiao_hui_ri_qi_ = itemData
  823. this.listData[index].liu_yang_qi_xian = val
  824. this.flag = true
  825. }
  826. },
  827. changeShuLiang(index){
  828. let item = this.listData[index]
  829. let total = parseInt(item.shu_liang_ || 0) + parseInt(item.shu_liang_er_ || 0) + parseInt(item.shu_liang_san_ || 0) + parseInt(item.shu_liang_si_ || 0)
  830. item.yang_pin_zong_shu = total
  831. item.jie_yang_shu_lian = total
  832. },
  833. ifLiuYangChange(item,index){
  834. console.log(index)
  835. // if(this.listData[index].shi_fou_liu_yang_ == '否'){
  836. // this.listData[index].liu_yang_ri_qi_ = null
  837. // this.listData[index].liu_yang_qi_xian = null
  838. // this.listData[index].liu_yang_shu_lian_yi = null
  839. // this.listData[index].liu_yang_shu_lian_er = null
  840. // this.listData[index].liu_yang_shu_lian_san = null
  841. // this.listData[index].liu_yang_shu_lian_si = null
  842. // this.listData[index].liu_yang_wei_zhi_yi = null
  843. // this.listData[index].liu_yang_wei_zhi_er = null
  844. // this.listData[index].liu_yang_wei_zhi_san = null
  845. // this.listData[index].liu_yang_wei_zhi_si = null
  846. // // todo 更新留样位置1-4
  847. // }
  848. },
  849. ifLiuYangChange_One(index){
  850. if(this.listData[index].shi_fou_liu_yang_yi == '否'){
  851. this.listData[index].liu_yang_shu_lian_yi = null
  852. }
  853. },
  854. ifLiuYangChange_Two(index){
  855. if(this.listData[index].shi_fou_liu_yang_er == '否'){
  856. this.listData[index].liu_yang_shu_lian_er = null
  857. }
  858. },
  859. ifLiuYangChange_Three(index){
  860. if(this.listData[index].shi_fou_liu_yang_san == '否'){
  861. this.listData[index].liu_yang_shu_lian_san = null
  862. }
  863. },
  864. ifLiuYangChange_Four(index){
  865. if(this.listData[index].shi_fou_liu_yang_si == '否'){
  866. this.listData[index].liu_yang_shu_lian_si = null
  867. }
  868. }
  869. }
  870. }
  871. </script>
  872. <style lang="less" scoped>
  873. /deep/ .el-form-item__label,/deep/ .el-input__inner{
  874. color: none;
  875. }
  876. .sample-scan .popContainer{
  877. position: fixed;
  878. top: 0;
  879. left: 0;
  880. right: 0;
  881. bottom: 0;
  882. z-index: 9999999;
  883. background: rgba(0,0,0,0.7);
  884. }
  885. // .dynamic-form-table__label:before {
  886. // content: '*';
  887. // color: #F56C6C;
  888. // }
  889. .dynamic-form-table__label{
  890. color: #F56C6C;
  891. font-size: 18px;
  892. line-height: 40px;
  893. font-weight: bold;
  894. }
  895. /**必须设置.el-form-item__label为none */
  896. /deep/.zzj .el-form-item__content .el-input__inner{
  897. color: #e60c14;
  898. }
  899. /deep/.el-form-item__content{
  900. display: inline-block;
  901. }
  902. /deep/.el-form-item__label{
  903. padding: 0;
  904. margin-right: 5px;
  905. width: 120px;
  906. }
  907. /deep/.el-input__inner{
  908. border-top: none !important;
  909. border-left: none !important;
  910. border-right: none !important;
  911. border-radius: 0;
  912. }
  913. /deep/.jiaji{
  914. // color: #F56C6C;
  915. // font-size: 18px;
  916. // line-height: 40px;
  917. // font-weight: bold;
  918. }
  919. /deep/.el-dialog__title{
  920. line-height: 24px;
  921. color: #e60c14;
  922. font-weight: 600;
  923. }
  924. </style>