apply-clients 3.2.50 → 3.2.53

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (282) hide show
  1. package/package.json +4 -3
  2. package/src/AndroidApp.vue +2 -2
  3. package/src/apply.js +7 -0
  4. package/src/components/app_apply/Process/AppExplorationUser.vue +200 -200
  5. package/src/components/app_apply/Process/AppServiceControl.vue +620 -620
  6. package/src/components/app_apply/Supervisory/AppProcessSupervisory.vue +1 -1
  7. package/src/components/image/tubiao2.png +0 -0
  8. package/src/components/image//347/247/246/345/215/216.png +0 -0
  9. package/src/components/product/Apply/Supervisory/SupervisoryhCart.vue +1 -1
  10. package/src/components/product/Ledger/ContractManagement/PurchaseContract/PurchaseContractInformation.vue +104 -7
  11. package/src/components/product/Ledger/FacilityManagement/FacilityInventory/FacilityInventoryInformation.vue +7 -3
  12. package/src/components/product/Ledger/Function/InstallInfoSelect.vue +1 -1
  13. package/src/components/product/Ledger/MaterialManagement/DeliveryRecord/DeliveryRecordList.vue +11 -4
  14. package/src/components/product/Ledger/MaterialManagement/InventoryInformation/InventoryInformationList.vue +11 -0
  15. package/src/components/product/Ledger/MaterialManagement/InventoryInformation/MaterialOutStock.vue +9 -1
  16. package/src/components/product/Ledger/MaterialManagement/InventoryInformation/MaterialOutboundOrder.vue +56 -14
  17. package/src/components/product/Ledger/MaterialManagement/InventoryInformation/PurchaseMaterial.vue +10 -2
  18. package/src/components/product/Ledger/MaterialManagement/InventoryInformation/PurchaseOrder.vue +33 -2
  19. package/src/components/product/Ledger/MaterialManagement/InventoryInformation/ReturnMaterial.vue +149 -2
  20. package/src/components/product/Ledger/MaterialManagement/OutboundOrder/OutboundOrderInformation.vue +17 -5
  21. package/src/components/product/Ledger/MaterialManagement/OutboundOrder/PrintMaterialBill.vue +10 -8
  22. package/src/components/product/Ledger/MaterialManagement/PurchaseRecords/PrintPurchaseOrder.vue +13 -6
  23. package/src/components/product/Ledger/MaterialManagement/PurchaseRecords/PurchaseRecordsInformation.vue +40 -9
  24. package/src/components/product/Ledger/MaterialManagement/PurchaseRecords/PurchaseRecordsList.vue +10 -60
  25. package/src/components/product/Ledger/MaterialManagement/WarehousingRecord/WarehousingRecordList.vue +4 -4
  26. package/src/components/product/Ledger/Process/ProcessBusiness.vue +8 -0
  27. package/src/components/product/Ledger/Process/ProcessSelect.vue +39 -14
  28. package/src/components/product/Ledger/Process/Service/ServiceControl.vue +747 -639
  29. package/src/components/product/Ledger/QinhuaMaterial/PickingRecord/PickingAddingMaterial.vue +330 -0
  30. package/src/components/product/Ledger/QinhuaMaterial/PickingRecord/PickingInformation.vue +117 -25
  31. package/src/components/product/Ledger/QinhuaMaterial/PickingRecord/PickingMaterialDepot.vue +113 -0
  32. package/src/components/product/Ledger/QinhuaMaterial/PickingRecord/PickingMaterialList.vue +143 -0
  33. package/src/components/product/Ledger/Supervisory/BatchProcessing.vue +79 -0
  34. package/src/components/product/Ledger/Supervisory/BathProcessinglist.vue +205 -0
  35. package/src/components/product/Ledger/Supervisory/ProcessSupervisory.vue +8 -0
  36. package/src/components/product/Ledger/Supervisory/Service/PrepareContract.vue +393 -0
  37. package/src/components/product/Ledger/Supervisory/Service/SupervisoryServiceControl.vue +2 -7
  38. package/src/components/product/Ledger/Supervisory/SupervisoryCart.vue +1 -1
  39. package/src/components/product/Ledger/Supervisory/SupervisoryList.vue +79 -16
  40. package/src/components/product/ServiceView.vue +1 -3
  41. package/dist-android/index.html +0 -3
  42. package/dist-android/static/.gitkeep +0 -0
  43. package/dist-android/static/0.js +0 -2
  44. package/dist-android/static/0.js.map +0 -1
  45. package/dist-android/static/1.js +0 -2
  46. package/dist-android/static/1.js.map +0 -1
  47. package/dist-android/static/10.js +0 -2
  48. package/dist-android/static/10.js.map +0 -1
  49. package/dist-android/static/100.js +0 -2
  50. package/dist-android/static/100.js.map +0 -1
  51. package/dist-android/static/11.js +0 -2
  52. package/dist-android/static/11.js.map +0 -1
  53. package/dist-android/static/12.js +0 -2
  54. package/dist-android/static/12.js.map +0 -1
  55. package/dist-android/static/13.js +0 -2
  56. package/dist-android/static/13.js.map +0 -1
  57. package/dist-android/static/14.js +0 -2
  58. package/dist-android/static/14.js.map +0 -1
  59. package/dist-android/static/15.js +0 -2
  60. package/dist-android/static/15.js.map +0 -1
  61. package/dist-android/static/16.js +0 -2
  62. package/dist-android/static/16.js.map +0 -1
  63. package/dist-android/static/17.js +0 -2
  64. package/dist-android/static/17.js.map +0 -1
  65. package/dist-android/static/18.js +0 -2
  66. package/dist-android/static/18.js.map +0 -1
  67. package/dist-android/static/19.js +0 -2
  68. package/dist-android/static/19.js.map +0 -1
  69. package/dist-android/static/2.js +0 -2
  70. package/dist-android/static/2.js.map +0 -1
  71. package/dist-android/static/20.js +0 -2
  72. package/dist-android/static/20.js.map +0 -1
  73. package/dist-android/static/21.js +0 -2
  74. package/dist-android/static/21.js.map +0 -1
  75. package/dist-android/static/22.js +0 -2
  76. package/dist-android/static/22.js.map +0 -1
  77. package/dist-android/static/23.js +0 -2
  78. package/dist-android/static/23.js.map +0 -1
  79. package/dist-android/static/24.js +0 -2
  80. package/dist-android/static/24.js.map +0 -1
  81. package/dist-android/static/25.js +0 -2
  82. package/dist-android/static/25.js.map +0 -1
  83. package/dist-android/static/26.js +0 -2
  84. package/dist-android/static/26.js.map +0 -1
  85. package/dist-android/static/27.js +0 -2
  86. package/dist-android/static/27.js.map +0 -1
  87. package/dist-android/static/28.js +0 -2
  88. package/dist-android/static/28.js.map +0 -1
  89. package/dist-android/static/29.js +0 -2
  90. package/dist-android/static/29.js.map +0 -1
  91. package/dist-android/static/3.js +0 -2
  92. package/dist-android/static/3.js.map +0 -1
  93. package/dist-android/static/30.js +0 -2
  94. package/dist-android/static/30.js.map +0 -1
  95. package/dist-android/static/31.js +0 -2
  96. package/dist-android/static/31.js.map +0 -1
  97. package/dist-android/static/32.js +0 -2
  98. package/dist-android/static/32.js.map +0 -1
  99. package/dist-android/static/33.js +0 -2
  100. package/dist-android/static/33.js.map +0 -1
  101. package/dist-android/static/34.js +0 -2
  102. package/dist-android/static/34.js.map +0 -1
  103. package/dist-android/static/35.js +0 -2
  104. package/dist-android/static/35.js.map +0 -1
  105. package/dist-android/static/36.js +0 -2
  106. package/dist-android/static/36.js.map +0 -1
  107. package/dist-android/static/37.js +0 -2
  108. package/dist-android/static/37.js.map +0 -1
  109. package/dist-android/static/38.js +0 -2
  110. package/dist-android/static/38.js.map +0 -1
  111. package/dist-android/static/39.js +0 -2
  112. package/dist-android/static/39.js.map +0 -1
  113. package/dist-android/static/4.js +0 -2
  114. package/dist-android/static/4.js.map +0 -1
  115. package/dist-android/static/40.js +0 -2
  116. package/dist-android/static/40.js.map +0 -1
  117. package/dist-android/static/41.js +0 -2
  118. package/dist-android/static/41.js.map +0 -1
  119. package/dist-android/static/42.js +0 -2
  120. package/dist-android/static/42.js.map +0 -1
  121. package/dist-android/static/43.js +0 -2
  122. package/dist-android/static/43.js.map +0 -1
  123. package/dist-android/static/44.js +0 -2
  124. package/dist-android/static/44.js.map +0 -1
  125. package/dist-android/static/45.js +0 -2
  126. package/dist-android/static/45.js.map +0 -1
  127. package/dist-android/static/46.js +0 -2
  128. package/dist-android/static/46.js.map +0 -1
  129. package/dist-android/static/47.js +0 -2
  130. package/dist-android/static/47.js.map +0 -1
  131. package/dist-android/static/48.js +0 -2
  132. package/dist-android/static/48.js.map +0 -1
  133. package/dist-android/static/49.js +0 -2
  134. package/dist-android/static/49.js.map +0 -1
  135. package/dist-android/static/5.js +0 -2
  136. package/dist-android/static/5.js.map +0 -1
  137. package/dist-android/static/50.js +0 -2
  138. package/dist-android/static/50.js.map +0 -1
  139. package/dist-android/static/51.js +0 -2
  140. package/dist-android/static/51.js.map +0 -1
  141. package/dist-android/static/52.js +0 -2
  142. package/dist-android/static/52.js.map +0 -1
  143. package/dist-android/static/53.js +0 -2
  144. package/dist-android/static/53.js.map +0 -1
  145. package/dist-android/static/54.js +0 -2
  146. package/dist-android/static/54.js.map +0 -1
  147. package/dist-android/static/55.js +0 -2
  148. package/dist-android/static/55.js.map +0 -1
  149. package/dist-android/static/56.js +0 -2
  150. package/dist-android/static/56.js.map +0 -1
  151. package/dist-android/static/57.js +0 -2
  152. package/dist-android/static/57.js.map +0 -1
  153. package/dist-android/static/58.js +0 -2
  154. package/dist-android/static/58.js.map +0 -1
  155. package/dist-android/static/59.js +0 -2
  156. package/dist-android/static/59.js.map +0 -1
  157. package/dist-android/static/6.js +0 -2
  158. package/dist-android/static/6.js.map +0 -1
  159. package/dist-android/static/60.js +0 -2
  160. package/dist-android/static/60.js.map +0 -1
  161. package/dist-android/static/61.js +0 -2
  162. package/dist-android/static/61.js.map +0 -1
  163. package/dist-android/static/62.js +0 -2
  164. package/dist-android/static/62.js.map +0 -1
  165. package/dist-android/static/63.js +0 -2
  166. package/dist-android/static/63.js.map +0 -1
  167. package/dist-android/static/64.js +0 -2
  168. package/dist-android/static/64.js.map +0 -1
  169. package/dist-android/static/65.js +0 -2
  170. package/dist-android/static/65.js.map +0 -1
  171. package/dist-android/static/66.js +0 -2
  172. package/dist-android/static/66.js.map +0 -1
  173. package/dist-android/static/67.js +0 -2
  174. package/dist-android/static/67.js.map +0 -1
  175. package/dist-android/static/68.js +0 -2
  176. package/dist-android/static/68.js.map +0 -1
  177. package/dist-android/static/69.js +0 -2
  178. package/dist-android/static/69.js.map +0 -1
  179. package/dist-android/static/7.js +0 -6
  180. package/dist-android/static/7.js.map +0 -1
  181. package/dist-android/static/70.js +0 -2
  182. package/dist-android/static/70.js.map +0 -1
  183. package/dist-android/static/71.js +0 -2
  184. package/dist-android/static/71.js.map +0 -1
  185. package/dist-android/static/72.js +0 -2
  186. package/dist-android/static/72.js.map +0 -1
  187. package/dist-android/static/73.js +0 -2
  188. package/dist-android/static/73.js.map +0 -1
  189. package/dist-android/static/74.js +0 -2
  190. package/dist-android/static/74.js.map +0 -1
  191. package/dist-android/static/75.js +0 -2
  192. package/dist-android/static/75.js.map +0 -1
  193. package/dist-android/static/76.js +0 -2
  194. package/dist-android/static/76.js.map +0 -1
  195. package/dist-android/static/77.js +0 -2
  196. package/dist-android/static/77.js.map +0 -1
  197. package/dist-android/static/78.js +0 -2
  198. package/dist-android/static/78.js.map +0 -1
  199. package/dist-android/static/79.js +0 -2
  200. package/dist-android/static/79.js.map +0 -1
  201. package/dist-android/static/8.js +0 -2
  202. package/dist-android/static/8.js.map +0 -1
  203. package/dist-android/static/80.js +0 -2
  204. package/dist-android/static/80.js.map +0 -1
  205. package/dist-android/static/81.js +0 -2
  206. package/dist-android/static/81.js.map +0 -1
  207. package/dist-android/static/82.js +0 -2
  208. package/dist-android/static/82.js.map +0 -1
  209. package/dist-android/static/83.js +0 -2
  210. package/dist-android/static/83.js.map +0 -1
  211. package/dist-android/static/84.js +0 -2
  212. package/dist-android/static/84.js.map +0 -1
  213. package/dist-android/static/85.js +0 -2
  214. package/dist-android/static/85.js.map +0 -1
  215. package/dist-android/static/86.js +0 -2
  216. package/dist-android/static/86.js.map +0 -1
  217. package/dist-android/static/87.js +0 -2
  218. package/dist-android/static/87.js.map +0 -1
  219. package/dist-android/static/88.js +0 -2
  220. package/dist-android/static/88.js.map +0 -1
  221. package/dist-android/static/89.js +0 -2
  222. package/dist-android/static/89.js.map +0 -1
  223. package/dist-android/static/9.js +0 -3
  224. package/dist-android/static/9.js.map +0 -1
  225. package/dist-android/static/90.js +0 -2
  226. package/dist-android/static/90.js.map +0 -1
  227. package/dist-android/static/91.js +0 -2
  228. package/dist-android/static/91.js.map +0 -1
  229. package/dist-android/static/92.js +0 -2
  230. package/dist-android/static/92.js.map +0 -1
  231. package/dist-android/static/93.js +0 -2
  232. package/dist-android/static/93.js.map +0 -1
  233. package/dist-android/static/94.js +0 -2
  234. package/dist-android/static/94.js.map +0 -1
  235. package/dist-android/static/95.js +0 -2
  236. package/dist-android/static/95.js.map +0 -1
  237. package/dist-android/static/96.js +0 -2
  238. package/dist-android/static/96.js.map +0 -1
  239. package/dist-android/static/97.js +0 -2
  240. package/dist-android/static/97.js.map +0 -1
  241. package/dist-android/static/98.js +0 -2
  242. package/dist-android/static/98.js.map +0 -1
  243. package/dist-android/static/99.js +0 -2
  244. package/dist-android/static/99.js.map +0 -1
  245. package/dist-android/static/app.css +0 -2
  246. package/dist-android/static/app.css.map +0 -1
  247. package/dist-android/static/app.js +0 -80
  248. package/dist-android/static/app.js.map +0 -1
  249. package/dist-android/static/batchleft.png +0 -0
  250. package/dist-android/static/batchright.png +0 -0
  251. package/dist-android/static/bluemainbg.jpg +0 -0
  252. package/dist-android/static/config.json +0 -7
  253. package/dist-android/static/denglu.png +0 -0
  254. package/dist-android/static/glyphicons-halflings-regular.eot +0 -0
  255. package/dist-android/static/glyphicons-halflings-regular.svg +0 -288
  256. package/dist-android/static/glyphicons-halflings-regular.ttf +0 -0
  257. package/dist-android/static/glyphicons-halflings-regular.woff +0 -0
  258. package/dist-android/static/glyphicons-halflings-regular.woff2 +0 -0
  259. package/dist-android/static/huangtengbiaozhi.png +0 -0
  260. package/dist-android/static/jingyin.jpg +0 -0
  261. package/dist-android/static/login_bg.jpg +0 -0
  262. package/dist-android/static/login_title.png +0 -0
  263. package/dist-android/static/login_title1.png +0 -0
  264. package/dist-android/static/loginbg.jpg +0 -0
  265. package/dist-android/static/loginlogo.png +0 -0
  266. package/dist-android/static/main_logo.png +0 -0
  267. package/dist-android/static/mainbg.jpg +0 -0
  268. package/dist-android/static/menulogo.png +0 -0
  269. package/dist-android/static/newmainbg.jpg +0 -0
  270. package/dist-android/static/psicon.png +0 -0
  271. package/dist-android/static/singleleft.png +0 -0
  272. package/dist-android/static/singleright.png +0 -0
  273. package/dist-android/static/treeopen.png +0 -0
  274. package/dist-android/static/treeout.png +0 -0
  275. package/dist-android/static/treeset.png +0 -0
  276. package/dist-android/static/usericon.png +0 -0
  277. package/dist-android/static/workflow_apply.json +0 -766
  278. package/dist-android/static/xinxi.png +0 -0
  279. package/dist-android/static//344/277/256/346/224/271/345/257/206/347/240/201.png +0 -0
  280. package/dist-android/static//345/256/211/346/243/200/345/257/274/350/210/252/347/253/226/345/261/2173.png +0 -0
  281. package/dist-android/static//345/257/274/345/207/272/346/225/260/346/215/256.png +0 -0
  282. package/dist-android/static//346/270/205/347/251/272/346/225/260/346/215/256.png +0 -0
@@ -0,0 +1,330 @@
1
+ <template>
2
+ <div class="select-overspread" style="background-color: #ffffff;padding: 20px;overflow: scroll">
3
+ <form class="form-horizontal">
4
+ <div class="form-group">
5
+ <!-- 添加设备 -->
6
+ <validator name="v">
7
+ <div class="col-sm-12">
8
+ <data-grid :model="model" partial='list' v-ref:grid style="overflow: auto" class="list_area table_sy">
9
+ <template partial='head'>
10
+ <tr>
11
+ <th style="white-space: nowrap;">序号</th>
12
+ <th style="white-space: nowrap;">材料编码</th>
13
+ <th style="white-space: nowrap;">材料名称</th>
14
+ <th style="white-space: nowrap;">材料型号</th>
15
+ <th style="white-space: nowrap;">材料规格</th>
16
+ <th style="white-space: nowrap;">单位</th>
17
+ <th style="white-space: nowrap;">备注</th>
18
+ <th style="white-space: nowrap;">
19
+ <button @click="$parent.$parent.openModal()" type="button" class="btn btn-info">
20
+ <span class="glyphicon glyphicon-plus" aria-hidden="true"></span>
21
+ </button>
22
+ <a href="/download/秦华材料批量导入模板.xlsx" type="button" class="btn btn-info">模板下载</a>
23
+ <button @click="$parent.$parent.showFile = !$parent.$parent.showFile" type="button" class="btn btn-info">批量导入</button>
24
+ </th>
25
+ </tr>
26
+ </template>
27
+ <template partial='body'>
28
+ <tr>
29
+ <td style="text-align: center;">{{$index+1}}</td>
30
+ <td style="text-align: center;">{{row.f_qhmaterial_coding}}</td>
31
+ <td style="text-align: center;">{{row.f_qhmaterial_name}}</td>
32
+ <td style="text-align: center;">{{row.f_qhmaterial_model}}</td>
33
+ <td style="text-align: center;">{{row.f_qhmaterial_norm}}</td>
34
+ <td style="text-align: center;">{{row.f_qhunit}}</td>
35
+ <td style="text-align: center;">{{row.f_qhremarks}}</td>
36
+ <td style="text-align: center;">
37
+ <button type="button" name="button" class="btn btn-link" @click="$parent.$parent.openUpdateFacility($index,row)">修改</button>
38
+ <button type="button" name="button" class="btn btn-link" @click="$parent.$parent.deleteFacility($index)">删除</button>
39
+ </td>
40
+ </tr>
41
+ </template>
42
+ </data-grid>
43
+ </div>
44
+ <div class="col-sm-12 form-group" style="text-align: center">
45
+ <button class="btn btn-primary" :disabled='!($v.valid && model.data.length > 0)' @click.prevent="addoldFacility()">保存</button>
46
+ </div>
47
+ </validator>
48
+
49
+ <validator name="mv">
50
+ <modal v-if="showFacility" :show.sync="showFacility" backdrop="false" large>
51
+ <header slot="modal-header" class="modal-header">
52
+ <button type="button" class="close" @click="closeModal()"><span>&times;</span></button>
53
+ <span class="modal-title"><font size="3">添加材料</font></span>
54
+ </header>
55
+ <article slot="modal-body" class="form-horizontal modal-body clearfix">
56
+ <div class="col-sm-12 form-group" :class="[$mv.f_qhmaterial_coding.required ? 'has-error' : '']">
57
+ <label class="control-label col-sm-2">材料编码</label>
58
+ <div class="col-sm-9">
59
+ <input class="form-control" type="text" v-validate:f_qhmaterial_coding = "['required']" v-model="facility.f_qhmaterial_coding" :value="facility.f_qhmaterial_coding"/>
60
+ </div>
61
+ </div>
62
+ <div class="col-sm-12 form-group" :class="[$mv.f_qhmaterial_name.required ? 'has-error' : '']">
63
+ <label class="control-label col-sm-2">材料名称</label>
64
+ <div class="col-sm-9">
65
+ <input class="form-control" type="text" v-validate:f_unit = "['required']" v-model="facility.f_qhmaterial_name" :value="facility.f_qhmaterial_name"/>
66
+ </div>
67
+ </div>
68
+ <div class="col-sm-12 form-group" :class="[$mv.f_qhmaterial_model.required ? 'has-error' : '']">
69
+ <label class="control-label col-sm-2">材料型号</label>
70
+ <div class="col-sm-9">
71
+ <input class="form-control" type="text" v-validate:f_unit = "['required']" v-model="facility.f_qhmaterial_model" :value="facility.f_qhmaterial_model"/>
72
+ </div>
73
+ </div>
74
+ <div class="col-sm-12 form-group" :class="[$mv.f_qhmaterial_norm.required ? 'has-error' : '']">
75
+ <label class="control-label col-sm-2">材料规格</label>
76
+ <div class="col-sm-9">
77
+ <input class="form-control" type="text" v-validate:f_unit = "['required']" v-model="facility.f_qhmaterial_norm" :value="facility.f_qhmaterial_norm"/>
78
+ </div>
79
+ </div>
80
+ <div class="col-sm-12 form-group" :class="[$mv.f_qhunit.required ? 'has-error' : '']">
81
+ <label class="control-label col-sm-2">单位</label>
82
+ <div class="col-sm-9">
83
+ <input class="form-control" type="text" v-validate:f_unit = "['required']" v-model="facility.f_qhunit" :value="facility.f_qhunit"/>
84
+ </div>
85
+ </div>
86
+ <div class="col-sm-12 form-group" :class="[$mv.f_qhremarks.required ? 'has-error' : '']">
87
+ <label class="control-label col-sm-2">备注</label>
88
+ <div class="col-sm-9">
89
+ <input class="form-control" type="text" v-model="facility.f_qhremarks" :value="facility.f_qhremarks"/>
90
+ </div>
91
+ </div>
92
+ </article>
93
+ <footer slot="modal-footer" class="modal-footer">
94
+ <button class="btn btn-primary" type="button" @click.prevent="saveOrUpdateFacility()" :disabled='!$mv.valid'>确认</button>
95
+ </footer>
96
+ </modal>
97
+ </validator>
98
+ <modal :show.sync="showFile" v-ref:modal backdrop="true" title="选择文件">
99
+ <header slot="modal-header" class="modal-header">
100
+ <button type="button" class="close" @click="closeFile"><span>&times;</span></button>
101
+ <h4 class="modal-title">选择文件</h4>
102
+ </header>
103
+ <article slot="modal-body" class="modal-body">
104
+ <div class="form-group">
105
+ <file-upload class="my-file-uploader" name="useraddressUploadFile" action="rs/file/uploadFile" tagname="确定" multiple v-ref:file></file-upload>
106
+ </div>
107
+ </article>
108
+ <footer slot="modal-footer" class="modal-footer"></footer>
109
+ </modal>
110
+ </div>
111
+ </form>
112
+ </div>
113
+ </template>
114
+
115
+ <script>
116
+ import {HttpResetClass} from 'vue-client'
117
+ import {isEmpty} from '../../../../Util'
118
+ export default {
119
+ title: '设备信息',
120
+ data () {
121
+ return {
122
+ showFile:false,
123
+ contractList: [],
124
+ contract: {},
125
+ material: {},
126
+ contractFacility: [],
127
+ model: {
128
+ data: []
129
+ },
130
+ showFacility: false,
131
+ facility: {},
132
+ index: null
133
+ }
134
+ },
135
+ ready () {
136
+ },
137
+ methods: {
138
+ closeFile () {
139
+ this.showFile = false
140
+ // 将选的文件清空
141
+ this.$refs.file.$el.querySelector('input').value = ''
142
+ },
143
+ // 添加设备
144
+ addoldFacility () {
145
+ let data = {
146
+ contract: this.contract,
147
+ data: this.model.data
148
+ }
149
+ this.$dispatch('addoldFacility', data)
150
+ },
151
+ // 打开修改
152
+ async openUpdateFacility (index, facility) {
153
+ await this.getContractFacility()
154
+
155
+ this.index = index
156
+ this.facility = JSON.parse(JSON.stringify(facility))
157
+
158
+ this.showFacility = true
159
+ },
160
+ // 删除
161
+ async deleteFacility (index) {
162
+ this.index = index
163
+ await this.$showMessage('您确定要删除这条记录吗?').then((res) => {
164
+ if (res === 'confirm') {
165
+ this.model.data.splice(this.index, 1)
166
+ }
167
+ })
168
+ this.closeModal()
169
+ },
170
+ // 添加或修改
171
+ saveOrUpdateFacility () {
172
+ debugger
173
+ let flag = this.model.data.some(item => {
174
+ debugger
175
+ if (
176
+ item.f_qhmaterial_coding === this.facility.f_qhmaterial_coding &&
177
+ item.f_qhmaterial_name === this.facility.f_qhmaterial_name &&
178
+ item.f_qhmaterial_norm === this.facility.f_qhmaterial_norm &&
179
+ item.f_qhmaterial_model === this.facility.f_qhmaterial_model &&
180
+ item.f_qhunit === this.facility.f_qhunit
181
+ ) {
182
+ return true
183
+ }
184
+ return false
185
+ })
186
+ if (flag) {
187
+ if (isEmpty(i)) {
188
+ this.$showAlert('该材料已经存在!!!', 'warning', 3000)
189
+ } else {
190
+ throw `第${i}行材料已经存在!!!`
191
+ }
192
+
193
+ } else {
194
+ if (isEmpty(this.index)) {
195
+ this.model.data.push(this.facility)
196
+ } else {
197
+ this.model.data.splice(this.index, 1, this.facility)
198
+ }
199
+ }
200
+ this.closeModal()
201
+ },
202
+ // 关闭
203
+ closeModal () {
204
+ this.showFacility = false
205
+ this.index = null
206
+ this.facility = null
207
+ this.contractFacility = []
208
+ },
209
+ async openModal () {
210
+ this.showFacility = true
211
+ },
212
+ async getContractFacility () {
213
+ let data = {
214
+ tablename: 't_qinhua_material',
215
+ condition: `1=1`
216
+ }
217
+
218
+ let res = await this.$resetpost(
219
+ `rs/sql/singleTable`,
220
+ {data: data},
221
+ {resolveMsg: null, rejectMsg: '材料查询失败!!!'}
222
+ )
223
+ debugger
224
+ res.data.forEach(item => {
225
+ this.contractFacility.push({
226
+ 'label': `$${item.f_qhmaterial_coding}--${item.f_qhmaterial_name}$--${item.qhmaterial_model}--${item.f_qhmaterial_norm}--${item.f_qhunit}`,
227
+ 'value': item
228
+ })
229
+ })
230
+ },
231
+ },
232
+ events: {
233
+ async 'onFileUpload'(file, result) {
234
+ let data = {
235
+ filepath: result.f_downloadpath
236
+ }
237
+ let res = await this.$resetpost(`rs/logic/addQhDaoru`, {data:data}, {resolveMsg: null, rejectMsg: '导入失败', silent: true}, 0)
238
+
239
+ console.log('----------解析内容--------------')
240
+ console.log(res.data)
241
+
242
+ let i = 1
243
+ for (const item of res.data) {
244
+ debugger
245
+ this.facility = item.qinhua_material
246
+
247
+ try {
248
+ this.saveOrUpdateFacility(i)
249
+ } catch (e) {
250
+ this.$showAlert(e, 'danger', 3000)
251
+ this.closeFile()
252
+ return
253
+ }
254
+ i++
255
+ }
256
+
257
+ this.$showAlert(`成功导入${i}条数据`, 'success', 3000)
258
+ this.closeFile()
259
+ }
260
+ }
261
+ }
262
+ </script>
263
+
264
+ <style scoped>
265
+ .item{
266
+ height: 40px;
267
+ margin-bottom: 20px;
268
+ }
269
+
270
+ th{
271
+ font-size: 15px !important;
272
+ text-align: center !important;
273
+ background-color: #dfedfb!important;
274
+ color: #666666 !important;
275
+ font-family: PINGFANG-BOLD !important;
276
+ font-weight: normal!important;
277
+ }
278
+ /*清除model中的浮动*/
279
+ .clearfix:after,.clearfix:before{
280
+ display: table;
281
+ }
282
+ .clearfix:after{
283
+ clear: both;
284
+ }
285
+
286
+ .input_view{
287
+ padding: 8px;
288
+ background-color: #ffffff;
289
+ border-radius: 2px;
290
+ border: solid 1px #c7c7c7!important;
291
+ color: #333333!important;
292
+ font-size: 15px!important;
293
+ }
294
+
295
+ .input_view[readonly]{
296
+ border: 1px solid #DDD!important;
297
+ /*background-color: #F5F5F5;*/
298
+ color:#ACA899!important;
299
+ }
300
+ .input_view:disabled{
301
+ border: 1px solid #DDD!important;
302
+ /*background-color: #F5F5F5;*/
303
+ color:#ACA899!important;
304
+ }
305
+
306
+ .control-label-justify {
307
+ display: inline-block;
308
+ vertical-align: top;
309
+ width: 110px;
310
+ text-align: justify;
311
+ font-family: PingFang-SC-Bold;
312
+ }
313
+
314
+ .control-label-justify::after {
315
+ content: "";
316
+ display: inline-block;
317
+ width: 70px;
318
+ overflow: hidden;
319
+ height: 0;
320
+ }
321
+
322
+ input::-webkit-outer-spin-button,
323
+ input::-webkit-inner-spin-button {
324
+ -webkit-appearance: none;
325
+ }
326
+
327
+ input[type="number"] {
328
+ -moz-appearance: textfield;
329
+ }
330
+ </style>
@@ -12,6 +12,8 @@
12
12
  :value.sync="model.f_cea_number"
13
13
  v-model="model.f_cea_number"
14
14
  :options="ceaList"
15
+ :timeout="500"
16
+ @select-search="select_search"
15
17
  :valueSingle="true"></input-select>
16
18
  </div>
17
19
  </div>
@@ -28,7 +30,7 @@
28
30
  <th style="white-space: nowrap;">数量</th>
29
31
  <th style="white-space: nowrap;">备注</th>
30
32
  <th style="white-space: nowrap;">
31
- <button :disabled="!model.f_cea_number" @click="$parent.$parent.showModal = !$parent.$parent.showModal" type="button" class="btn btn-info">
33
+ <button :disabled="!model.f_cea_number" @click="$parent.$parent.showModal2()" type="button" class="btn btn-info">
32
34
  <span class="glyphicon glyphicon-plus" aria-hidden="true"></span>
33
35
  </button>
34
36
  </th>
@@ -65,46 +67,43 @@
65
67
  <span class="modal-title"><font size="3">添加材料</font></span>
66
68
  </header>
67
69
  <article slot="modal-body" class="form-horizontal modal-body clearfix">
68
- <div class="col-sm-12 form-group" :class="[$mv.f_material_name.required ? 'has-error' : '']">
69
- <label class="control-label col-sm-2">材料名称</label>
70
+ <div class="col-sm-12 form-group" :class="[$mv.material.required ? 'has-error' : '']">
71
+ <label class="control-label col-sm-2">选择材料</label>
70
72
  <div class="col-sm-9">
71
- <input type="text" v-show="false" v-model="material.f_material_name" v-validate:f_material_name = "['required']" >
73
+ <input type="text" v-show="false" v-model="material.id" v-validate:material = "['required']" >
72
74
  <input-select
73
75
  class="select select_list"
74
- :value.sync="material.f_material_name"
75
- v-model="material.f_material_name"
76
- :options="f_material_name"
76
+ :value.sync="material"
77
+ v-model="material"
78
+ :options="contractMaterial"
79
+ @change="changeMaterial()"
80
+ :timeout="500"
81
+ @select-search="select_material_search"
77
82
  :valueSingle="true"></input-select>
78
83
  </div>
79
84
  </div>
85
+ <div class="col-sm-12 form-group" :class="[$mv.f_material_name.required ? 'has-error' : '']">
86
+ <label class="control-label col-sm-2">材料名称</label>
87
+ <div class="col-sm-9">
88
+ <input class="form-control" type="text" readonly v-validate:f_material_name = "['required']" v-model="material.f_material_name" :value="material.f_qhmaterial_name"/>
89
+ </div>
90
+ </div>
80
91
  <div class="col-sm-12 form-group" :class="[$mv.f_material_model.required ? 'has-error' : '']">
81
92
  <label class="control-label col-sm-2">材料型号</label>
82
93
  <div class="col-sm-9">
83
- <input type="text" v-show="false" v-model="material.f_material_model" v-validate:f_material_model = "['required']" >
84
- <input-select
85
- class="select select_list"
86
- :value.sync="material.f_material_model"
87
- v-model="material.f_material_model"
88
- :options="f_material_model"
89
- :valueSingle="true"></input-select>
94
+ <input class="form-control" type="text" readonly v-validate:f_material_model = "['required']" v-model="material.f_material_model" :value="material.f_qhmaterial_model"/>
90
95
  </div>
91
96
  </div>
92
97
  <div class="col-sm-12 form-group" :class="[$mv.f_material_norm.required ? 'has-error' : '']">
93
98
  <label class="control-label col-sm-2">材料规格</label>
94
99
  <div class="col-sm-9">
95
- <input type="text" v-show="false" v-model="material.f_material_norm" v-validate:f_material_norm = "['required']" >
96
- <input-select
97
- class="select select_list"
98
- :value.sync="material.f_material_norm"
99
- v-model="material.f_material_norm"
100
- :options="f_material_norm"
101
- :valueSingle="true"></input-select>
100
+ <input class="form-control" type="text" readonly v-validate:f_material_norm = "['required']" v-model="material.f_material_norm" :value="material.f_qhmaterial_norm"/>
102
101
  </div>
103
102
  </div>
104
103
  <div class="col-sm-12 form-group" :class="[$mv.f_unit.required ? 'has-error' : '']">
105
104
  <label class="control-label col-sm-2">单&emsp;&emsp;位</label>
106
105
  <div class="col-sm-9">
107
- <input class="form-control" type="text" v-validate:f_unit = "['required']" v-model="material.f_unit" :value="material.f_unit" />
106
+ <input class="form-control" type="text" readonly v-validate:f_unit = "['required']" v-model="material.f_unit" :value="material.f_qhunit" />
108
107
  </div>
109
108
  </div>
110
109
  <div class="col-sm-12 form-group" :class="[$mv.f_stock.required ? 'has-error' : '']">
@@ -139,26 +138,78 @@
139
138
 
140
139
  <script>
141
140
  import {isEmpty} from '../../../../Util'
141
+ import {HttpResetClass} from "vue-client";
142
142
 
143
143
  export default {
144
144
  title: '材料详细信息',
145
145
  data () {
146
146
  return {
147
- f_material_name:[{label:'全部',value:''},... this.$appdata.getParam('秦华材料名称')],
148
- f_material_model:[{label:'全部',value:''},... this.$appdata.getParam('秦华材料型号')],
149
- f_material_norm:[{label:'全部',value:''},... this.$appdata.getParam('秦华材料规格')],
147
+
148
+ // f_material_name:[{label:'全部',value:''},... this.$appdata.getParam('秦华材料名称')],
149
+ // f_material_model:[{label:'全部',value:''},... this.$appdata.getParam('秦华材料型号')],
150
+ // f_material_norm:[{label:'全部',value:''},... this.$appdata.getParam('秦华材料规格')],
150
151
  ceaList: [],
151
152
  model: {
152
153
  data: []
153
154
  },
154
155
  material: {},
155
156
  showModal: false,
157
+ contractMaterial: []
156
158
  }
157
159
  },
158
160
  ready () {
159
161
  this.getCEAList()
160
162
  },
161
163
  methods: {
164
+ select_material_search(text1){
165
+ debugger
166
+ console.log("----------------"+text1)
167
+ debugger
168
+ if(text1){
169
+ let clText=text1=`and f_qhmaterial_name like '%${text1}%'`
170
+ new HttpResetClass().load("POST", `${this.$androidUtil.getProxyUrl()}/rs/sql/singleTable`, {data:{items:"*",tablename:"t_qinhua_material",condition:`1=1 ${clText} `}}, {resolveMsg: null, rejectMsg: null}).then((res)=>{
171
+ console.log('请求发送完成!!!!!'+JSON.stringify(res))
172
+ if(res.data.length>0){
173
+ res.data.forEach((item)=>{
174
+
175
+ this.contractMaterial.push({
176
+ 'label': `${item.f_qhmaterial_name}--${item.f_qhmaterial_model}--${item.f_qhmaterial_norm}--${item.f_qhunit}`,
177
+ 'value': item
178
+ })
179
+ })
180
+ }
181
+ })
182
+ }else{
183
+ this.getContractMaterial()
184
+ }
185
+ },
186
+ select_search(text){
187
+ debugger
188
+ console.log("----------------"+text)
189
+ debugger
190
+ if(text){
191
+ let pcdText=text=`and f_cea_number like '%${text}%'`
192
+ new HttpResetClass().load("POST", `${this.$androidUtil.getProxyUrl()}/rs/sql/singleTable`, {data:{items:"*",tablename:"t_apply",condition:`f_cea_number is not null and f_sub_state != '完工' ${pcdText} `}}, {resolveMsg: null, rejectMsg: null}).then((res)=>{
193
+ console.log('请求发送完成!!!!!'+JSON.stringify(res))
194
+ if(res.data.length>0){
195
+ res.data.forEach((item)=>{
196
+
197
+ this.ceaList.push({
198
+ 'label': item.f_cea_number,
199
+ 'value': {
200
+ id: item.id,
201
+ f_cea_number: item.f_cea_number,
202
+ f_entry_name: item.f_entry_name,
203
+ f_construction_team:item.f_construction_team
204
+ }
205
+ })
206
+ })
207
+ }
208
+ })
209
+ }else{
210
+ this.getCEAList()
211
+ }
212
+ },
162
213
  addMaterial () {
163
214
  this.$dispatch('addMaterial', this.model)
164
215
  },
@@ -169,6 +220,31 @@ export default {
169
220
 
170
221
  this.showModal = true
171
222
  },
223
+ async showModal2(){
224
+ this.showModal=!this.showModal
225
+ await this.getContractMaterial()
226
+
227
+ this.showMaterial = true
228
+ },
229
+ async getContractMaterial () {
230
+ debugger
231
+ let data = {
232
+ condition: `1=1`
233
+ }
234
+
235
+ let res = await this.$resetpost(
236
+ `rs/sql/getQhMaterial`,
237
+ {data: data},
238
+ {resolveMsg: null, rejectMsg: '秦华物料查询失败!!!'}
239
+ )
240
+ debugger
241
+ res.data.forEach(item => {
242
+ this.contractMaterial.push({
243
+ 'label': `${item.f_qhmaterial_name}--${item.f_qhmaterial_model}--${item.f_qhmaterial_norm}--${item.f_qhunit}`,
244
+ 'value': item
245
+ })
246
+ })
247
+ },
172
248
  // 删除
173
249
  async delete (index) {
174
250
  this.index = index
@@ -211,10 +287,26 @@ export default {
211
287
 
212
288
  this.closeModal()
213
289
  },
290
+ changeMaterial () {
291
+ if (!isEmpty(this.material.id)) {
292
+ let flag = this.model.data.some(item => {
293
+ if (item.id === this.material.id) {
294
+ return true
295
+ }
296
+ return false
297
+ })
298
+ if (flag) {
299
+ this.$showAlert('该物料已经存在,如需再次添加,请进行修改操作!!!', 'warning', 3000)
300
+ this.closeModal()
301
+ }
302
+ }
303
+ },
214
304
  closeModal () {
305
+ debugger
215
306
  this.material = {}
216
307
  this.index = null
217
308
  this.showModal = false
309
+ this.contractMaterial = []
218
310
  },
219
311
  async getCEAList () {
220
312
  let data = {
@@ -0,0 +1,113 @@
1
+ <template>
2
+ <div class="flex-row">
3
+ <div class="basic-main">
4
+ <div :class="showData ? 'top' : 'auto'">
5
+ <picking-material-list v-ref:query :show-data="showData"></picking-material-list>
6
+ </div>
7
+ <div v-if="showAdd" style="margin-top: 20px;height: 90%" >
8
+ <tabset v-ref:tabs :close="false">
9
+ <tab header='材料信息'>
10
+ <picking-adding-material></picking-adding-material>
11
+ </tab>
12
+ </tabset>
13
+ </div>
14
+ </div>
15
+ </div>
16
+ </template>
17
+
18
+ <script>
19
+
20
+ import {HttpResetClass} from 'vue-client'
21
+ import Vue from 'vue'
22
+ export default {
23
+ title: '添加材料',
24
+ data () {
25
+ return {
26
+ showData: true,
27
+ showtotal: false,
28
+ showAdd: false,
29
+ showAddold:false,
30
+ facility: {},
31
+ type: null
32
+ }
33
+ },
34
+ ready () {
35
+ },
36
+ methods: {
37
+ },
38
+ events: {
39
+ // 打开详情
40
+ 'openViewFacility' (facility) {
41
+ this.type = 'view'
42
+ this.facility = facility
43
+ this.showData = false
44
+ this.showtotal = false
45
+ this.$refs.query.$refs.cp.pager = false
46
+
47
+ this.$nextTick(() => {
48
+ this.showtotal = true
49
+ })
50
+ },
51
+ // 添加设备
52
+ async 'addFacility' (data) {
53
+ data.user = this.$login.f
54
+
55
+ let res = await this.$resetpost('rs/logic/addFacility', {data: data}, {
56
+ resolveMsg: null,
57
+ rejectMsg: '添加设备失败!!!'
58
+ })
59
+
60
+ this.$refs.query.search()
61
+ },
62
+ // 添加老旧设备
63
+ async 'addoldFacility' (data) {
64
+ data.user = this.$login.f
65
+
66
+ let res = await this.$resetpost('rs/logic/addqhMaterial', {data: data}, {
67
+ resolveMsg: null,
68
+ rejectMsg: '添加材料失败!!!'
69
+ })
70
+
71
+ this.$refs.query.search()
72
+ },
73
+ // 打开添加设备
74
+ async 'openAddFacility' () {
75
+ this.showData = false
76
+ this.showtotal = false
77
+
78
+ this.$refs.query.$refs.cp.pager = false
79
+
80
+ this.showAdd = false
81
+ this.$nextTick(() => {
82
+ this.showAdd = true
83
+ })
84
+ },
85
+ // 打开添加老旧设备
86
+ async 'openAddoldFacility' () {
87
+ this.showData = false
88
+ this.showtotal = false
89
+
90
+ this.$refs.query.$refs.cp.pager = false
91
+
92
+ this.showAddold = false
93
+ this.$nextTick(() => {
94
+ this.showAddold = true
95
+ })
96
+ },
97
+ //查询
98
+ 'search' () {
99
+ // 关闭详细
100
+ this.showtotal = false
101
+ // 显示列表数据
102
+ this.showData = true
103
+ // 显示分页
104
+ this.$refs.query.$refs.cp.pager = true
105
+ // 调用查询
106
+ this.$refs.query.$refs.cp.$refs.cri.search()
107
+ }
108
+ }
109
+ }
110
+ </script>
111
+
112
+ <style scoped>
113
+ </style>