deposit_list-detail.vue 51 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295
  1. <template>
  2. <div>
  3. <div class="sty">
  4. <el-page-header content="详情" @back="goBack" />
  5. </div>
  6. <el-divider />
  7. <el-radio-group v-model="engineering" size="mini" @change="handleRadio">
  8. <el-radio-button label="工程押金信息" />
  9. <el-radio-button label="工程订单信息" />
  10. <el-radio-button label="工程发货信息" />
  11. <!-- <el-radio-button label="直调发货" /> -->
  12. <el-radio-button label="历史记录" />
  13. </el-radio-group>
  14. <br><br>
  15. <div v-show="engineering == '工程押金信息'">
  16. <div class="diy-table-1">
  17. <el-form ref="form" :model="details">
  18. <el-row :gutter="0">
  19. <el-col :xs="12" :sm="8" :lg="8" class="item">
  20. <div class="label">工程登录编号</div>
  21. <div class="value">{{ details.refEnginRecordNo }}</div>
  22. </el-col>
  23. <el-col :xs="12" :sm="8" :lg="8" class="item">
  24. <div class="label">项目类别</div>
  25. <div class="value">{{ details.refProjectCategory }}</div>
  26. </el-col>
  27. <el-col :xs="12" :sm="8" :lg="8" class="item">
  28. <div class="label">工程编号</div>
  29. <div class="value">{{ details.refProjectNo }}</div>
  30. </el-col>
  31. <el-col :xs="24" :sm="24" :lg="16" class="item">
  32. <div class="label">经销商名称</div>
  33. <div class="value">{{ details.customerName }}</div>
  34. </el-col>
  35. <el-col :xs="24" :sm="24" :lg="8" class="item">
  36. <div class="label">经销商编码</div>
  37. <div class="value">{{ details.customerNumber }}</div>
  38. </el-col>
  39. <el-col :xs="24" :sm="24" :lg="8" class="item">
  40. <div class="label">工程登录类型</div>
  41. <div class="value">{{ details.refPromiseStatus }}</div>
  42. </el-col>
  43. <el-col :xs="24" :sm="24" :lg="8" class="item">
  44. <div class="label">联系人</div>
  45. <div class="value">{{ details.refLinkman }}</div>
  46. </el-col>
  47. <el-col :xs="24" :sm="24" :lg="8" class="item">
  48. <div class="label">固定电话</div>
  49. <div class="value">{{ details.refTel }}</div>
  50. </el-col>
  51. <!-- <el-col :xs="24" :sm="24" :lg="16" class="item">-->
  52. <!-- <div class="label">厂工程编码</div>-->
  53. <!-- <div class="value">-->
  54. <!-- <el-form-item prop="refFactoryNo">-->
  55. <!-- <el-input-->
  56. <!-- v-model="details.refFactoryNo"-->
  57. <!-- placeholder="厂工程编码"-->
  58. <!-- size="small"-->
  59. <!-- />-->
  60. <!-- </el-form-item>-->
  61. <!-- </div>-->
  62. <!-- </el-col>-->
  63. <el-col :xs="24" :sm="24" :lg="8" class="item">
  64. <div class="label">移动电话</div>
  65. <div class="value">{{ details.refPhone }}</div>
  66. </el-col>
  67. <el-col :xs="24" :sm="24" :lg="8" class="item">
  68. <div class="label">押金总额</div>
  69. <div class="value">{{ details.depositAmount }}</div>
  70. </el-col>
  71. <el-col :xs="24" :sm="24" :lg="8" class="item">
  72. <div class="label">工程差价总额</div>
  73. <div class="value">{{ details.depositDiffAmount }}</div>
  74. </el-col>
  75. <el-col v-if="!isCustomer" :xs="24" :sm="24" :lg="24" class="item">
  76. <div class="label">格力内部备注</div>
  77. <div class="value">
  78. <el-input v-model="details.geLiInerNote" placeholder="格力内部备注" />
  79. </div>
  80. </el-col>
  81. <el-col v-if="!isCustomer" :xs="24" :sm="24" :lg="24" class="item">
  82. <div class="label">格力内部资料备注</div>
  83. <div class="value">
  84. <el-input v-model="details.geLiInnerDataNote" placeholder="格力内部资料备注" />
  85. </div>
  86. </el-col>
  87. <el-col v-if="!isCustomer" :xs="24" :sm="24" :lg="24" class="item">
  88. <div class="label">订单格力内部备注</div>
  89. <div class="value">{{ details.orderGeLiInnerNote }}</div>
  90. </el-col>
  91. <el-col :xs="24" :sm="24" :lg="12" class="item">
  92. <div class="label">使用单位</div>
  93. <div class="value">{{ details.refUseUnit }}</div>
  94. </el-col>
  95. <el-col :xs="24" :sm="24" :lg="12" class="item">
  96. <div class="label">跨区厂编号</div>
  97. <div class="value">{{ details.refFactoryNo }}</div>
  98. </el-col>
  99. <el-col :xs="24" :sm="24" :lg="24" class="item">
  100. <div class="label">安装时间</div>
  101. <div class="value" style="padding: 0">
  102. <el-form-item prop="installDate">
  103. <el-date-picker
  104. v-model="details.installDate"
  105. :disabled="details.examineStatus == 'OK'"
  106. type="datetime"
  107. placeholder="安装时间"
  108. default-time="00:00:00"
  109. value-format="yyyy-MM-dd HH:mm:ss"
  110. />
  111. </el-form-item>
  112. </div>
  113. </el-col>
  114. <el-col :xs="24" :sm="24" :lg="24" class="item">
  115. <div class="label">安装地址</div>
  116. <div class="value">
  117. {{ details.refInstallAddress }}
  118. </div>
  119. </el-col>
  120. <el-col :xs="24" :sm="24" :lg="8" class="item">
  121. <div class="label">登录有效期</div>
  122. <div class="value">
  123. {{ details.refBillsExpireDate }}
  124. </div>
  125. </el-col>
  126. <el-col :xs="24" :sm="24" :lg="8" class="item">
  127. <div class="label">实际使用单位</div>
  128. <div class="value">
  129. <el-input v-model="details.realUseUnit" :readonly="isCustomer" placeholder="实际使用单位" />
  130. </div>
  131. </el-col>
  132. <el-col :xs="24" :sm="24" :lg="8" class="item">
  133. <div class="label">实际安装地址</div>
  134. <div class="value">
  135. <el-input v-model="details.realInstallAddress" :readonly="isCustomer" placeholder="实际使用单位" />
  136. </div>
  137. </el-col>
  138. <el-col :xs="24" :sm="24" :lg="8" class="item">
  139. <div class="label">项目编号</div>
  140. <div class="value">
  141. {{ details.refProjectNo }}
  142. </div>
  143. </el-col>
  144. <el-col :xs="24" :sm="24" :lg="8" class="item">
  145. <div class="label">购买单位</div>
  146. <div class="value">
  147. <el-input v-model="details.refBuyUnitName" :readonly="isCustomer" placeholder="实际使用单位" />
  148. </div>
  149. </el-col>
  150. <el-col :xs="24" :sm="24" :lg="8" class="item">
  151. <div class="label">合同变更批复意见</div>
  152. <div class="value">
  153. {{ details.refContractIdea }}
  154. </div>
  155. </el-col>
  156. <el-col :xs="24" :sm="24" :lg="8" class="item">
  157. <div class="label">合同变更批复结果</div>
  158. <div class="value">
  159. {{ details.refContractResult }}
  160. </div>
  161. </el-col>
  162. <el-col :xs="24" :sm="24" :lg="8" class="item">
  163. <div class="label">资料延期批复意见</div>
  164. <div class="value">
  165. {{ details.refDataDelayResult }}
  166. </div>
  167. </el-col>
  168. <el-col :xs="24" :sm="24" :lg="8" class="item">
  169. <div class="label">资料延期批复结果</div>
  170. <div class="value">
  171. {{ details.refInstallAddress }}
  172. </div>
  173. </el-col>
  174. <el-col :xs="24" :sm="24" :lg="8" class="item">
  175. <div class="label">工程机转零售批复意见</div>
  176. <div class="value">
  177. {{ details.refToRetailIdea }}
  178. </div>
  179. </el-col>
  180. <el-col :xs="24" :sm="24" :lg="8" class="item">
  181. <div class="label">工程机转零售批复结果</div>
  182. <div class="value">
  183. {{ details.refToRetailResult }}
  184. </div>
  185. </el-col>
  186. <el-col :xs="24" :sm="24" :lg="8" class="item">
  187. <div class="label">其他附件审批意见</div>
  188. <div class="value">
  189. {{ details.refOtherAnnexIdea }}
  190. </div>
  191. </el-col>
  192. <el-col :xs="24" :sm="24" :lg="8" class="item">
  193. <div class="label">其他附件批复结果</div>
  194. <div class="value">
  195. {{ details.refOtherAnnexResult }}
  196. </div>
  197. </el-col>
  198. <!-- <el-col :xs="24" :sm="24" :lg="8" class="item">-->
  199. <!-- <div class="label">寄厂日期</div>-->
  200. <!-- <div class="value" style="padding: 0">-->
  201. <!-- <el-form-item prop="sendFactoryDate">-->
  202. <!-- <el-date-picker-->
  203. <!-- v-model="details.sendFactoryDate"-->
  204. <!-- type="datetime"-->
  205. <!-- placeholder="寄厂日期"-->
  206. <!-- default-time="00:00:00"-->
  207. <!-- value-format="yyyy-MM-dd HH:mm:ss"-->
  208. <!-- >-->
  209. <!-- </el-date-picker>-->
  210. <!-- </el-form-item>-->
  211. <!-- </div>-->
  212. <!-- </el-col>-->
  213. </el-row>
  214. </el-form>
  215. </div>
  216. <h3>货品信息</h3>
  217. <el-divider />
  218. <!-- 列表 -->
  219. <div class="mymain-container">
  220. <div class="table">
  221. <el-table
  222. v-loading="listLoading"
  223. :data="details.items"
  224. element-loading-text="Loading"
  225. border
  226. fit
  227. highlight-current-row
  228. stripe
  229. show-summary
  230. :summary-method="$getSummaries"
  231. >
  232. <el-table-column
  233. v-if="!isCustomer"
  234. align="left"
  235. label="厂编号"
  236. prop="factoryNo"
  237. min-width="160"
  238. show-overflow-tooltip
  239. >
  240. <template slot-scope="scope">
  241. <CopyButton :copy-text="scope.row.factoryNo" />
  242. <span>{{ scope.row.factoryNo }}</span>
  243. </template>
  244. </el-table-column>
  245. <el-table-column
  246. v-if="!isCustomer"
  247. align="left"
  248. label="特价编号"
  249. prop="specialNo"
  250. min-width="160"
  251. show-overflow-tooltip
  252. >
  253. <template slot-scope="scope">
  254. <CopyButton :copy-text="scope.row.specialNo" />
  255. <span>{{ scope.row.specialNo }}</span>
  256. </template>
  257. </el-table-column>
  258. <el-table-column align="left" label="物料编码" prop="materialNumber" min-width="130" show-overflow-tooltip>
  259. <template slot-scope="scope">
  260. <CopyButton :copy-text="scope.row.materialNumber" />
  261. <span>{{ scope.row.materialNumber }}</span>
  262. </template>
  263. </el-table-column>
  264. <el-table-column
  265. align="left"
  266. label="产品编码"
  267. prop="materialOldNumber"
  268. min-width="130"
  269. show-overflow-tooltip
  270. >
  271. <template slot-scope="scope">
  272. <CopyButton :copy-text="scope.row.materialOldNumber" />
  273. <span>{{ scope.row.materialOldNumber }}</span>
  274. </template>
  275. </el-table-column>
  276. <el-table-column align="left" label="产品名称" prop="materialName" min-width="160" show-overflow-tooltip>
  277. <template slot-scope="scope">
  278. <CopyButton :copy-text="scope.row.materialName" />
  279. <span>{{ scope.row.materialName }}</span>
  280. </template>
  281. </el-table-column>
  282. <el-table-column align="left" label="规格型号" prop="specification" min-width="300" show-overflow-tooltip>
  283. <template slot-scope="scope">
  284. <CopyButton :copy-text="scope.row.specification" />
  285. <span>{{ scope.row.specification }}</span>
  286. </template>
  287. </el-table-column>
  288. <!-- <el-table-column
  289. align="left"
  290. label="实装规格型号"
  291. prop="realSpecification"
  292. min-width="300"
  293. show-overflow-tooltip
  294. >
  295. <template slot-scope="scope">
  296. <div :style="scope.row.realSpecification != scope.row.specification ? { color: 'blue' } : ''">
  297. {{ scope.row.realSpecification }}
  298. </div>
  299. </template>
  300. </el-table-column>
  301. <el-table-column
  302. align="left"
  303. label="实装物料编号"
  304. prop="realMaterialNumber"
  305. min-width="150"
  306. show-overflow-tooltip
  307. >
  308. <template slot-scope="scope">
  309. <div :style="scope.row.realMaterialNumber != scope.row.materialNumber ? { color: 'blue' } : ''">
  310. {{ scope.row.realMaterialNumber }}
  311. </div>
  312. </template>
  313. </el-table-column>
  314. <el-table-column
  315. align="left"
  316. label="实装厂产品编码"
  317. prop="realMaterialOldNumber"
  318. min-width="200"
  319. show-overflow-tooltip
  320. >
  321. <template slot-scope="scope">
  322. <div :style="scope.row.realMaterialOldNumber != scope.row.materialOldNumber ? { color: 'blue' } : ''">
  323. {{ scope.row.realMaterialOldNumber }}
  324. </div>
  325. </template>
  326. </el-table-column> -->
  327. <el-table-column
  328. align="left"
  329. label="实装规格型号"
  330. prop="depositSpecification"
  331. min-width="300"
  332. show-overflow-tooltip
  333. >
  334. <template slot-scope="scope">
  335. <div :class="setColour(scope.row,'specification', 'realSpecification', 'depositSpecification')">
  336. {{ scope.row.depositSpecification }}
  337. </div>
  338. </template>
  339. </el-table-column>
  340. <el-table-column
  341. align="left"
  342. label="实装物料编号"
  343. prop="depositMaterialNumber"
  344. min-width="150"
  345. show-overflow-tooltip
  346. >
  347. <template slot-scope="scope">
  348. <div :class="setColour(scope.row,'materialNumber', 'realMaterialNumber', 'depositMaterialNumber')">
  349. {{ scope.row.depositMaterialNumber }}
  350. </div>
  351. </template>
  352. </el-table-column>
  353. <el-table-column
  354. align="left"
  355. label="实装厂产品编码"
  356. prop="depositMaterialOldNumber"
  357. min-width="200"
  358. show-overflow-tooltip
  359. >
  360. <template slot-scope="scope">
  361. <div :class="setColour(scope.row,'materialOldNumber', 'realMaterialOldNumber', 'depositMaterialOldNumber')">
  362. {{ scope.row.depositMaterialOldNumber }}
  363. </div>
  364. </template>
  365. </el-table-column>
  366. <el-table-column align="right" label="单价" prop="price" min-width="160" show-overflow-tooltip>
  367. <template slot-scope="scope">
  368. {{ scope.row.price | numToFixed }}
  369. </template>
  370. </el-table-column>
  371. <el-table-column align="right" label="数量" prop="qty" min-width="160" show-overflow-tooltip />
  372. <el-table-column align="right" label="金额" prop="totalAmount" min-width="160" show-overflow-tooltip>
  373. <template slot-scope="scope">
  374. {{ scope.row.totalAmount | numToFixed }}
  375. </template>
  376. </el-table-column>
  377. <el-table-column align="right" label="销售数量" prop="salesQty" min-width="160" show-overflow-tooltip />
  378. <el-table-column align="right" label="销售金额" prop="salesAmount" min-width="160" show-overflow-tooltip>
  379. <template slot-scope="scope">
  380. {{ scope.row.salesAmount | numToFixed }}
  381. </template>
  382. </el-table-column>
  383. <el-table-column align="right" label="押金数量" prop="hasSendQty" min-width="160" show-overflow-tooltip />
  384. <el-table-column
  385. align="right"
  386. label="发货数量"
  387. prop="orderHasSendQty"
  388. min-width="160"
  389. show-overflow-tooltip
  390. />
  391. <!-- <el-table-column
  392. align="right"
  393. label="押金金额"
  394. prop="depositAmount"
  395. min-width="160"
  396. show-overflow-tooltip
  397. >
  398. <template slot-scope="scope">
  399. {{ scope.row.depositAmount | numToFixed }}
  400. </template>
  401. </el-table-column> -->
  402. <el-table-column align="right" label="合同数量" prop="contractQty" min-width="160" show-overflow-tooltip>
  403. <template slot-scope="scope">
  404. {{ scope.row.contractQty }}
  405. </template>
  406. </el-table-column>
  407. <el-table-column align="right" label="合同单价" prop="contractPrice" min-width="160" show-overflow-tooltip>
  408. <template slot-scope="scope">
  409. {{ scope.row.contractPrice }}
  410. </template>
  411. </el-table-column>
  412. <el-table-column align="right" label="合同金额" prop="contractAmount" min-width="160" show-overflow-tooltip>
  413. <template slot-scope="scope">
  414. {{ scope.row.contractAmount }}
  415. </template>
  416. </el-table-column>
  417. <el-table-column align="right" label="押金金额" prop="depositAmount" min-width="160" show-overflow-tooltip>
  418. <template slot-scope="scope">
  419. {{ scope.row.depositAmount | numToFixed }}
  420. </template>
  421. </el-table-column>
  422. <el-table-column align="right" label="上交资料" prop="dataQty" min-width="160" show-overflow-tooltip />
  423. <el-table-column align="right" label="收差金额" prop="diffAmount" min-width="160" show-overflow-tooltip>
  424. <template slot-scope="scope">
  425. {{ scope.row.diffAmount | numToFixed }}
  426. </template>
  427. </el-table-column>
  428. <el-table-column
  429. align="right"
  430. label="收差政策价格"
  431. prop="diffPolicyPrice"
  432. min-width="200"
  433. show-overflow-tooltip
  434. >
  435. <template slot-scope="scope">
  436. {{ scope.row.diffPolicyPrice | numToFixed }}
  437. </template>
  438. </el-table-column>
  439. </el-table>
  440. </div>
  441. </div>
  442. <h3>押金货品信息</h3>
  443. <el-divider />
  444. <!-- 列表 -->
  445. <div class="mymain-container">
  446. <div class="table">
  447. <el-table
  448. v-loading="listLoading"
  449. :data="details.collectList"
  450. element-loading-text="Loading"
  451. border
  452. fit
  453. highlight-current-row
  454. stripe
  455. show-summary
  456. :summary-method="$getSummaries"
  457. >
  458. <el-table-column align="left" label="工程登录单号" prop="refEnginRecordNo" min-width="130" show-overflow-tooltip>
  459. <template slot-scope="scope">
  460. <CopyButton :copy-text="scope.row.refEnginRecordNo" />
  461. <span>{{ scope.row.refEnginRecordNo }}</span>
  462. </template>
  463. </el-table-column>
  464. <el-table-column align="left" label="规格型号" prop="specification" min-width="130" show-overflow-tooltip>
  465. <template slot-scope="scope">
  466. <CopyButton :copy-text="scope.row.specification" />
  467. <span>{{ scope.row.specification }}</span>
  468. </template>
  469. </el-table-column>
  470. <el-table-column align="left" label="基本单位编码" prop="unit" min-width="130" show-overflow-tooltip>
  471. <template slot-scope="scope">
  472. <CopyButton :copy-text="scope.row.unit" />
  473. <span>{{ scope.row.unit }}</span>
  474. </template>
  475. </el-table-column>
  476. <el-table-column align="left" label="现金钱包" prop="customerWalletName" min-width="130" show-overflow-tooltip>
  477. <template slot-scope="scope">
  478. <CopyButton :copy-text="scope.row.customerWalletName" />
  479. <span>{{ scope.row.customerWalletName }}</span>
  480. </template>
  481. </el-table-column>
  482. <el-table-column align="left" label="现金钱包编码" prop="customerWalletNumber" min-width="130" show-overflow-tooltip>
  483. <template slot-scope="scope">
  484. <CopyButton :copy-text="scope.row.customerWalletNumber" />
  485. <span>{{ scope.row.customerWalletNumber }}</span>
  486. </template>
  487. </el-table-column>
  488. <el-table-column align="left" label="金蝶物料类型名称" prop="k3CategoryName" min-width="130" show-overflow-tooltip>
  489. <template slot-scope="scope">
  490. <CopyButton :copy-text="scope.row.k3CategoryName" />
  491. <span>{{ scope.row.k3CategoryName }}</span>
  492. </template>
  493. </el-table-column>
  494. <el-table-column align="left" label="金蝶物料类型编码" prop="k3CategoryNumber" min-width="130" show-overflow-tooltip>
  495. <template slot-scope="scope">
  496. <CopyButton :copy-text="scope.row.k3CategoryNumber" />
  497. <span>{{ scope.row.k3CategoryNumber }}</span>
  498. </template>
  499. </el-table-column>
  500. <el-table-column align="left" label="金蝶物料名称" prop="materialName" min-width="130" show-overflow-tooltip>
  501. <template slot-scope="scope">
  502. <CopyButton :copy-text="scope.row.materialName" />
  503. <span>{{ scope.row.materialName }}</span>
  504. </template>
  505. </el-table-column>
  506. <el-table-column align="left" label="金蝶物料编码" prop="materialNumber" min-width="130" show-overflow-tooltip>
  507. <template slot-scope="scope">
  508. <CopyButton :copy-text="scope.row.materialNumber" />
  509. <span>{{ scope.row.materialNumber }}</span>
  510. </template>
  511. </el-table-column>
  512. <el-table-column align="left" label="金蝶物料旧编码" prop="materialOldNumber" min-width="130" show-overflow-tooltip>
  513. <template slot-scope="scope">
  514. <CopyButton :copy-text="scope.row.materialOldNumber" />
  515. <span>{{ scope.row.materialOldNumber }}</span>
  516. </template>
  517. </el-table-column>
  518. <el-table-column align="left" label="已发押金数量" prop="hasSendQty" min-width="130" show-overflow-tooltip />
  519. <el-table-column align="left" label="单价" prop="price" min-width="130" show-overflow-tooltip>
  520. <template slot-scope="scope">
  521. {{ scope.row.price | numToFixed }}
  522. </template>
  523. </el-table-column>
  524. <el-table-column align="left" label="已退押金金额" prop="refundDepositAmount" min-width="130" show-overflow-tooltip>
  525. <template slot-scope="scope">
  526. {{ scope.row.refundDepositAmount | numToFixed }}
  527. </template>
  528. </el-table-column>
  529. <el-table-column align="left" label="押金金额" prop="depositAmount" min-width="130" show-overflow-tooltip>
  530. <template slot-scope="scope">
  531. {{ scope.row.depositAmount | numToFixed }}
  532. </template>
  533. </el-table-column>
  534. </el-table>
  535. </div>
  536. </div>
  537. <h3 class="gdzl">工程资料</h3>
  538. <el-button
  539. :disabled="isDis"
  540. class="batchDownload"
  541. type="primary"
  542. size="small"
  543. @click="batchDownloadFn"
  544. >批量下载
  545. </el-button>
  546. <el-divider />
  547. <!-- 列表 -->
  548. <div class="mymain-container">
  549. <div class="table">
  550. <el-table
  551. v-loading="listLoading"
  552. :data="original"
  553. element-loading-text="Loading"
  554. border
  555. fit
  556. highlight-current-row
  557. stripe
  558. >
  559. <el-table-column align="left" label="资料描述" prop="dataDescribe" min-width="160" show-overflow-tooltip />
  560. <el-table-column align="left" label="原文件名" prop="fileName" min-width="160" show-overflow-tooltip />
  561. <el-table-column align="left" label="缩略图" prop="fileUrl" min-width="160" show-overflow-tooltip>
  562. <template slot-scope="scope">
  563. <el-image
  564. v-if="checkFileType(scope.row.fileUrl) == 'image'"
  565. ref="img"
  566. :src="imageURL + scope.row.fileUrl"
  567. style="width: 120px; height: 120px"
  568. fit="cover"
  569. :preview-src-list="[imageURL + scope.row.fileUrl]"
  570. />
  571. <img v-if="checkFileType(scope.row.fileUrl) == 'word'" class="file" src="@/assets/common/word.png">
  572. <img v-if="checkFileType(scope.row.fileUrl) == 'excel'" class="file" src="@/assets/common/excel.png">
  573. <img v-if="checkFileType(scope.row.fileUrl) == 'ppt'" class="file" src="@/assets/common/ppt.png">
  574. <img
  575. v-if="checkFileType(scope.row.fileUrl) == 'pdf'"
  576. class="file"
  577. style="cursor: pointer"
  578. src="@/assets/common/pdf.png"
  579. @click="openPdf(scope.row.fileUrl)"
  580. >
  581. <img
  582. v-if="checkFileType(scope.row.fileUrl) == 'file'"
  583. class="file aaa"
  584. src="@/assets/common/zip.jpeg"
  585. >
  586. </template>
  587. </el-table-column>
  588. <el-table-column align="left" label="下载文件名称" prop="fileName" min-width="160" show-overflow-tooltip>
  589. <template slot-scope="scope">
  590. {{ '资料_' + scope.row.fileName }}
  591. </template>
  592. </el-table-column>
  593. <el-table-column align="center" label="操作" min-width="160" show-overflow-tooltip>
  594. <template slot-scope="scope">
  595. <el-button
  596. type="text"
  597. class="textColor"
  598. @click="downLoadFn(scope.row.fileUrl, scope.row.fileName)"
  599. >下载
  600. </el-button>
  601. <!-- <el-button-->
  602. <!-- v-if="checkFileType(scope.row.fileUrl) == 'pdf'"-->
  603. <!-- type="text"-->
  604. <!-- class="textColor"-->
  605. <!-- @click="openPdf(scope.row.fileUrl)"-->
  606. <!-- >-->
  607. <!-- 查看-->
  608. <!-- </el-button>-->
  609. </template>
  610. </el-table-column>
  611. </el-table>
  612. </div>
  613. </div>
  614. <div class="diy-table-1">
  615. <el-row :gutter="0">
  616. <el-col :xs="12" :sm="12" :lg="12" class="item">
  617. <div class="label">申请人</div>
  618. <div class="value">{{ details.customerName }}</div>
  619. </el-col>
  620. <el-col :xs="12" :sm="12" :lg="12" class="item">
  621. <div class="label">申请日期</div>
  622. <div class="value">{{ details.createTime }}</div>
  623. </el-col>
  624. <el-col :xs="24" :sm="24" :lg="24" class="item">
  625. <div class="label">申请退押金</div>
  626. <div class="value">{{ details.applyNote }}</div>
  627. </el-col>
  628. </el-row>
  629. </div>
  630. <div style="margin-top: 25px">审批</div>
  631. <el-divider />
  632. <div class="diy-table-1">
  633. <el-row :gutter="0">
  634. <el-col :xs="12" :sm="12" :lg="12" class="item">
  635. <div class="label">验收人</div>
  636. <div class="value">{{ details.checkBy }}</div>
  637. </el-col>
  638. <el-col :xs="12" :sm="12" :lg="12" class="item">
  639. <div class="label">受理日期</div>
  640. <div class="value">{{ details.checkDate }}</div>
  641. </el-col>
  642. <el-col :xs="12" :sm="12" :lg="12" class="item">
  643. <div class="label">是否退押</div>
  644. <div class="value">
  645. <template
  646. v-if="
  647. !(
  648. details.examineStatus == 'WAIT' ||
  649. details.examineStatus == 'SAVE' ||
  650. details.examineStatus == 'CLOSE'
  651. )
  652. "
  653. >
  654. {{ details.isRefundDeposit == true ? '是' : '否' }}
  655. </template>
  656. </div>
  657. </el-col>
  658. <el-col :xs="12" :sm="12" :lg="12" class="item">
  659. <div class="label">审批结果</div>
  660. <div v-if="details.examineStatus == 'Ok'" class="value">通过</div>
  661. <div v-if="details.confirmName && details.examineStatus == 'SAVE'" class="value">驳回</div>
  662. </el-col>
  663. <el-col :xs="24" :sm="24" :lg="24" class="item">
  664. <div class="label">验收说明</div>
  665. <div class="value">{{ details.checkNote }}</div>
  666. </el-col>
  667. <!-- <el-col v-if="details.confirmName && details.examineStatus == 'SAVE'" :xs="24" :sm="24" :lg="24" class="item">
  668. <div class="label">驳回说明</div>
  669. <div class="value">{{ details.confirmName }}</div>
  670. </el-col> -->
  671. </el-row>
  672. </div>
  673. <div>
  674. <div v-if="details.dataState == 'WAIT_REVIEW' || details.dataState == 'AMEND' || details.dataState == 'REVIEW'">
  675. <h3 class="gdzl">补充资料</h3>
  676. <el-divider />
  677. <div class="mymain-container">
  678. <div class="table">
  679. <el-table
  680. v-loading="listLoading"
  681. :data="amendData"
  682. element-loading-text="Loading"
  683. border
  684. fit
  685. highlight-current-row
  686. stripe
  687. >
  688. <el-table-column
  689. align="left"
  690. label="资料描述"
  691. prop="dataDescribe"
  692. min-width="160"
  693. show-overflow-tooltip
  694. />
  695. <el-table-column align="left" label="原文件名" prop="fileName" min-width="160" show-overflow-tooltip />
  696. <el-table-column align="left" label="缩略图" prop="fileUrl" min-width="160" show-overflow-tooltip>
  697. <template slot-scope="scope">
  698. <el-image
  699. v-if="checkFileType(scope.row.fileUrl) == 'image'"
  700. ref="img"
  701. :src="imageURL + scope.row.fileUrl"
  702. style="width: 120px; height: 120px"
  703. fit="cover"
  704. :preview-src-list="[imageURL + scope.row.fileUrl]"
  705. />
  706. <img
  707. v-if="checkFileType(scope.row.fileUrl) == 'word'"
  708. class="file"
  709. src="@/assets/common/word.png"
  710. >
  711. <img
  712. v-if="checkFileType(scope.row.fileUrl) == 'excel'"
  713. class="file"
  714. src="@/assets/common/excel.png"
  715. >
  716. <img v-if="checkFileType(scope.row.fileUrl) == 'ppt'" class="file" src="@/assets/common/ppt.png">
  717. <img v-if="checkFileType(scope.row.fileUrl) == 'pdf'" class="file" src="@/assets/common/pdf.png">
  718. <img
  719. v-if="checkFileType(scope.row.fileUrl) == 'file'"
  720. class="file aaa"
  721. src="@/assets/common/zip.jpeg"
  722. >
  723. </template>
  724. </el-table-column>
  725. <el-table-column
  726. align="left"
  727. label="下载文件名称"
  728. prop="fileName"
  729. min-width="160"
  730. show-overflow-tooltip
  731. >
  732. <template slot-scope="scope">
  733. {{ '资料_' + scope.row.fileName }}
  734. </template>
  735. </el-table-column>
  736. <el-table-column align="center" label="操作" min-width="160" show-overflow-tooltip>
  737. <template slot-scope="scope">
  738. <el-button
  739. type="text"
  740. class="textColor"
  741. @click="downLoadFn(scope.row.fileUrl, scope.row.fileName)"
  742. >下载</el-button>
  743. </template>
  744. </el-table-column>
  745. </el-table>
  746. </div>
  747. <div class="diy-table-1">
  748. <el-row :gutter="0">
  749. <el-col :xs="12" :sm="12" :lg="12" class="item">
  750. <div class="label">上传人</div>
  751. <div class="value">
  752. {{ details.amendBy }}
  753. </div>
  754. </el-col>
  755. <el-col :xs="12" :sm="12" :lg="12" class="item">
  756. <div class="label">上传时间</div>
  757. <div class="value">
  758. {{ details.amendTime }}
  759. </div>
  760. </el-col>
  761. <el-col :xs="12" :sm="24" :lg="24" class="item">
  762. <div class="label">补充说明</div>
  763. <div class="value">
  764. {{ details.amendRemark }}
  765. </div>
  766. </el-col>
  767. </el-row>
  768. </div>
  769. <div v-if="isCustomer && details.dataState == 'REVIEW'">
  770. <h3 class="gdzl">复核</h3>
  771. <el-divider />
  772. <div class="diy-table-1">
  773. <el-row :gutter="0">
  774. <el-col :xs="12" :sm="12" :lg="12" class="item">
  775. <div class="label">复核人</div>
  776. <div class="value">
  777. <el-input v-model="details.reviewBy" placeholder="请输入" />
  778. </div>
  779. </el-col>
  780. <el-col :xs="12" :sm="12" :lg="12" class="item">
  781. <div class="label">复核时间</div>
  782. <div class="value">
  783. <el-date-picker
  784. v-model="details.reviewTime"
  785. class="dateStyle"
  786. type="datetime"
  787. placeholder="选择日期"
  788. default-time="00:00:00"
  789. value-format="yyyy-MM-dd HH:mm:ss"
  790. />
  791. </div>
  792. </el-col>
  793. <el-col :xs="12" :sm="24" :lg="24" class="item">
  794. <div class="label">复核说明</div>
  795. <div class="value">
  796. <input v-model="details.reviewRemark" type="text">
  797. </div>
  798. </el-col>
  799. </el-row>
  800. </div>
  801. </div>
  802. </div>
  803. </div>
  804. </div>
  805. <div style="margin: 20px 0">
  806. <el-button
  807. v-if="
  808. (details.examineStatus != 'OK' || (!isCustomer && details.examineStatus == 'OK')) &&
  809. details.dataState != 'WAIT_REVIEW' &&
  810. details.dataState != 'AMEND' &&
  811. details.dataState != 'REVIEW'
  812. "
  813. type="primary"
  814. size="small"
  815. @click="handleSvse"
  816. >保存
  817. </el-button>
  818. <el-button
  819. v-if="
  820. (details.examineStatus != 'OK' || (!isCustomer && details.examineStatus == 'OK')) &&
  821. details.dataState != 'WAIT_REVIEW' &&
  822. details.dataState != 'AMEND' &&
  823. details.dataState != 'REVIEW'
  824. "
  825. type="primary"
  826. size="small"
  827. @click="handleReset"
  828. >重置
  829. </el-button>
  830. </div>
  831. </div>
  832. <div v-show="engineering == '工程订单信息'">
  833. <h3>工程订单信息</h3>
  834. <el-divider />
  835. <!-- 列表 -->
  836. <div class="mymain-container">
  837. <div class="table">
  838. <el-table
  839. v-loading="listLoading"
  840. :data="dataList"
  841. element-loading-text="Loading"
  842. border
  843. fit
  844. highlight-current-row
  845. stripe
  846. >
  847. <el-table-column align="left" label="工程订单号" prop="enginOrderNo" min-width="160" show-overflow-tooltip>
  848. <template slot-scope="scope">
  849. <CopyButton :copy-text="scope.row.enginOrderNo" />
  850. <span>{{ scope.row.enginOrderNo }}</span>
  851. </template>
  852. </el-table-column>
  853. <el-table-column align="left" label="订单日期" prop="orderDate" min-width="160" show-overflow-tooltip />
  854. <el-table-column align="left" label="产品名称" prop="materialName" min-width="160" show-overflow-tooltip>
  855. <template slot-scope="scope">
  856. <CopyButton :copy-text="scope.row.materialName" />
  857. <span>{{ scope.row.materialName }}</span>
  858. </template>
  859. </el-table-column>
  860. <el-table-column align="left" label="规格型号" prop="specification" min-width="160" show-overflow-tooltip>
  861. <template slot-scope="scope">
  862. <CopyButton :copy-text="scope.row.specification" />
  863. <span>{{ scope.row.specification }}</span>
  864. </template>
  865. </el-table-column>
  866. <el-table-column align="right" label="单价" prop="price" min-width="160" show-overflow-tooltip>
  867. <template slot-scope="scope">
  868. {{ scope.row.price | numToFixed }}
  869. </template>
  870. </el-table-column>
  871. <el-table-column align="right" label="数量" prop="qty" min-width="160" show-overflow-tooltip />
  872. <el-table-column
  873. align="right"
  874. label="押金金额"
  875. prop="totalDepositAmount"
  876. min-width="160"
  877. show-overflow-tooltip
  878. >
  879. <template slot-scope="scope">
  880. {{ scope.row.totalDepositAmount | numToFixed }}
  881. </template>
  882. </el-table-column>
  883. </el-table>
  884. </div>
  885. </div>
  886. </div>
  887. <div v-show="engineering == '工程发货信息'">
  888. <h3>工程发货信息</h3>
  889. <el-divider />
  890. <!-- 列表 -->
  891. <div class="mymain-container">
  892. <div class="table">
  893. <el-table
  894. v-loading="listLoading"
  895. :data="projectList"
  896. element-loading-text="Loading"
  897. border
  898. fit
  899. highlight-current-row
  900. stripe
  901. >
  902. <el-table-column align="left" label="发货单" prop="id" min-width="160" show-overflow-tooltip>
  903. <template slot-scope="scope">
  904. <CopyButton :copy-text="scope.row.id" />
  905. <span>{{ scope.row.id }}</span>
  906. </template>
  907. </el-table-column>
  908. <el-table-column align="left" label="发货申请日期" prop="theTime" min-width="160" show-overflow-tooltip />
  909. <el-table-column align="left" label="产品名称" prop="materialName" min-width="160" show-overflow-tooltip>
  910. <template slot-scope="scope">
  911. <CopyButton :copy-text="scope.row.materialName" />
  912. <span>{{ scope.row.materialName }}</span>
  913. </template>
  914. </el-table-column>
  915. <el-table-column align="left" label="规格型号" prop="specification" min-width="160" show-overflow-tooltip>
  916. <template slot-scope="scope">
  917. <CopyButton :copy-text="scope.row.specification" />
  918. <span>{{ scope.row.specification }}</span>
  919. </template>
  920. </el-table-column>
  921. <el-table-column align="right" label="单价" prop="price" min-width="160" show-overflow-tooltip>
  922. <template slot-scope="scope">
  923. {{ scope.row.price | numToFixed }}
  924. </template>
  925. </el-table-column>
  926. <el-table-column align="right" label="数量" prop="refundableQty" min-width="160" show-overflow-tooltip />
  927. <el-table-column
  928. align="right"
  929. label="押金金额"
  930. prop="totalDepositAmount"
  931. min-width="160"
  932. show-overflow-tooltip
  933. >
  934. <template slot-scope="scope">
  935. {{ ((scope.row.refundableQty || 0) * (scope.row.singleDepositAmount || 0)) | numToFixed }}
  936. </template>
  937. </el-table-column>
  938. </el-table>
  939. </div>
  940. </div>
  941. </div>
  942. <div v-show="engineering == '直调发货'" class="zd">
  943. <div class="table" style="margin-top: 20px">
  944. <el-table :data="goodsList" element-loading-text="Loading" border fit highlight-current-row stripe>
  945. <el-table-column align="left" label="发货单" prop="id" min-width="160" show-overflow-tooltip>
  946. <template slot-scope="scope">
  947. <CopyButton :copy-text="scope.row.id" />
  948. <span>{{ scope.row.id }}</span>
  949. </template>
  950. </el-table-column>
  951. <el-table-column align="left" label="发货申请日期" prop="orderTime" min-width="160" show-overflow-tooltip />
  952. <el-table-column align="left" label="产品名称" prop="materialName" min-width="160" show-overflow-tooltip>
  953. <template slot-scope="scope">
  954. <CopyButton :copy-text="scope.row.materialName" />
  955. <span>{{ scope.row.materialName }}</span>
  956. </template>
  957. </el-table-column>
  958. <el-table-column align="left" label="规格型号" prop="specification" min-width="160" show-overflow-tooltip>
  959. <template slot-scope="scope">
  960. <CopyButton :copy-text="scope.row.specification" />
  961. <span>{{ scope.row.specification }}</span>
  962. </template>
  963. </el-table-column>
  964. <el-table-column align="rihgt" label="单价" prop="price" min-width="160" show-overflow-tooltip>
  965. <template slot-scope="scope">
  966. {{ scope.row.price | numToFixed }}
  967. </template>
  968. </el-table-column>
  969. <el-table-column align="right" label="数量" prop="refundableQty" min-width="160" show-overflow-tooltip />
  970. <el-table-column
  971. align="right"
  972. label="押金金额"
  973. prop="totalDepositAmount"
  974. min-width="160"
  975. show-overflow-tooltip
  976. >
  977. <template slot-scope="scope">
  978. {{ ((scope.row.qty || 0) * (scope.row.singleDepositAmount || 0)) | numToFixed }}
  979. </template>
  980. </el-table-column>
  981. </el-table>
  982. </div>
  983. </div>
  984. <div v-show="engineering == '历史记录'">
  985. <h3>历史记录</h3>
  986. <el-divider />
  987. <!-- 列表 -->
  988. <div class="mymain-container">
  989. <div class="table">
  990. <el-table
  991. v-loading="listLoading"
  992. :data="details.checkRecordItems"
  993. element-loading-text="Loading"
  994. border
  995. fit
  996. highlight-current-row
  997. stripe
  998. >
  999. <el-table-column align="left" label="受理日期" prop="checkDate" min-width="160" show-overflow-tooltip />
  1000. <el-table-column align="left" label="验收人" prop="checkName" min-width="160" show-overflow-tooltip />
  1001. <el-table-column
  1002. align="left"
  1003. label="申请退押金备注
  1004. "
  1005. prop="applyNote"
  1006. min-width="160"
  1007. show-overflow-tooltip
  1008. />
  1009. <el-table-column
  1010. align="left"
  1011. label="验收说明
  1012. "
  1013. prop="checkNote"
  1014. min-width="160"
  1015. show-overflow-tooltip
  1016. />
  1017. <el-table-column
  1018. align="left"
  1019. label="是否退押
  1020. "
  1021. prop="checkNote"
  1022. min-width="160"
  1023. show-overflow-tooltip
  1024. >
  1025. <template slot-scope="scope">
  1026. {{ scope.row.isRefundDeposit ? '是' : '否' }}
  1027. </template>
  1028. </el-table-column>
  1029. <el-table-column
  1030. align="left"
  1031. label="提交人
  1032. "
  1033. prop="submitName"
  1034. min-width="160"
  1035. show-overflow-tooltip
  1036. />
  1037. <el-table-column align="left" label="提交时间" prop="submitTime" min-width="160" show-overflow-tooltip />
  1038. </el-table>
  1039. </div>
  1040. </div>
  1041. </div>
  1042. </div>
  1043. </template>
  1044. <script>
  1045. import { editInfo, geDetail, geOrderInfo, getListProject } from '@/api/engin_deposit.js'
  1046. import { getList } from '@/api/supply/adjust'
  1047. import { downloadFiles, downloadPdf } from '@/utils/util'
  1048. import { getFileUrl } from '@/api/common'
  1049. export default {
  1050. props: {
  1051. depositManageId: {
  1052. type: [String, Number],
  1053. default: null
  1054. },
  1055. refEnginRecordNo: {
  1056. type: [String, Number],
  1057. default: null
  1058. }
  1059. },
  1060. data() {
  1061. return {
  1062. isDis: true,
  1063. listLoading: false,
  1064. engineering: '工程押金信息',
  1065. dataList: [],
  1066. projectList: [],
  1067. details: {},
  1068. goodsList: [],
  1069. warehouseList: [],
  1070. positionList: [],
  1071. imageURL: this.$imageUrl,
  1072. deliverForm: {
  1073. date: '',
  1074. warehouse: '',
  1075. position: ''
  1076. },
  1077. deliverFormRules: {
  1078. date: [{ required: true, message: '请选择发货日期', trigger: 'change' }],
  1079. warehouse: [{ required: true, message: '请选择发货仓库', trigger: 'change' }],
  1080. position: [{ required: true, message: '请选择仓位', trigger: 'change' }]
  1081. },
  1082. orderType: {
  1083. TRADE: '商用',
  1084. HOME: '家用',
  1085. RETAIL: '零售单',
  1086. RETAIL_POLICY: '销售政策单'
  1087. },
  1088. amendData: [],
  1089. original: []
  1090. }
  1091. },
  1092. computed: {
  1093. isCustomer() {
  1094. return !!(this.$store.getters.customerId && this.$store.getters.customerNumber)
  1095. },
  1096. setColour() {
  1097. return (row, oldValue, newValue, mostNewValue) => {
  1098. let myCalss = ''
  1099. if (row[newValue] !== row[oldValue]) {
  1100. myCalss = 'input'
  1101. }
  1102. if (row[mostNewValue] !== row[newValue]) {
  1103. myCalss = 'input2'
  1104. }
  1105. console.log(row, 9999, myCalss)
  1106. return myCalss
  1107. }
  1108. }
  1109. },
  1110. created() {
  1111. this.getDetail()
  1112. },
  1113. methods: {
  1114. getDetail() {
  1115. if (this.engineering == '工程押金信息') {
  1116. geDetail({ id: this.depositManageId }).then(res => {
  1117. if (res.data.dataList.length == 0) {
  1118. this.isDis = true
  1119. } else {
  1120. this.isDis = false
  1121. }
  1122. const arr = []
  1123. res.data.items.forEach(item => {
  1124. if (Number(item.qty) > 0) {
  1125. arr.push(item)
  1126. }
  1127. // item.number = (item.qty*100 - item.directTransferQty*100 - item.retiredQty*100) / 100;
  1128. item.sums1 = ['orderHasSendQty', 'dataQty', 'qty', 'hasSendQty', 'contractQty']
  1129. item.sums2 = ['totalAmount', 'diffAmount', 'price', 'depositAmount', 'contractPrice', 'contractAmount']
  1130. })
  1131. res.data.collectList.forEach(item => {
  1132. // item.number = (item.qty*100 - item.directTransferQty*100 - item.retiredQty*100) / 100;
  1133. item.sums1 = ['orderHasSendQty', 'dataQty', 'hasSendQty']
  1134. item.sums2 = ['price', 'refundDepositAmount', 'depositAmount']
  1135. })
  1136. res.data.items = arr
  1137. this.amendData = res.data.dataList.filter(k => k.dataPosition == 'AMEND')
  1138. this.original = res.data.dataList.filter(k => k.dataPosition != 'AMEND')
  1139. res.data.realUseUnit = res.data.realUseUnit || res.data.refUseUnit
  1140. res.data.realInstallAddress = res.data.realInstallAddress || res.data.refInstallAddress
  1141. this.details = res.data
  1142. })
  1143. } else if (this.engineering == '工程订单信息') {
  1144. geOrderInfo({
  1145. refEnginRecordNo: this.refEnginRecordNo,
  1146. examineStatus: 'OK'
  1147. }).then(res => {
  1148. this.dataList = res.data
  1149. })
  1150. } else if (this.engineering == '直调发货') {
  1151. getListProject({
  1152. pageSize: -1,
  1153. pageNum: 1,
  1154. type: 3,
  1155. refEnginRecordNo: this.refEnginRecordNo
  1156. }).then(res => {
  1157. this.goodsList = res.data.records
  1158. })
  1159. } else {
  1160. getListProject({
  1161. pageSize: -1,
  1162. pageNum: 1,
  1163. refEnginRecordNo: this.refEnginRecordNo
  1164. }).then(res => {
  1165. this.projectList = res.data.records
  1166. })
  1167. }
  1168. },
  1169. // 批量下载
  1170. async batchDownloadFn() {
  1171. downloadFiles('deposit-manage/downZip', { parentId: this.depositManageId })
  1172. },
  1173. // 下载
  1174. downLoadFn(v, fileName) {
  1175. if (this.checkFileType(v) === 'pdf') {
  1176. downloadPdf(this.$imageUrl + v, fileName)
  1177. return
  1178. }
  1179. downloadFiles('common/file/getStream', { key: v, fileName: fileName })
  1180. // getFileUrl({ key: v }).then((res) => {
  1181. // window.open(res.data)
  1182. // })
  1183. },
  1184. openPdf(pdfUrl) {
  1185. window.open(this.$imageUrl + pdfUrl)
  1186. },
  1187. // 检查文件类型
  1188. checkFileType(url) {
  1189. if (!url) return ''
  1190. const fileSuffix = url.substring(url.lastIndexOf('.') + 1)
  1191. if (['jpg', 'jpeg', 'png'].includes(fileSuffix)) {
  1192. return 'image'
  1193. } else if (['doc', 'docx', 'dot', 'wps', 'wpt'].includes(fileSuffix)) {
  1194. return 'word'
  1195. } else if (['xls', 'xlsx', 'xlt', 'et', 'ett'].includes(fileSuffix)) {
  1196. return 'excel'
  1197. } else if (['ppt', 'pptx', 'dps', 'dpt', 'pot', 'pps'].includes(fileSuffix)) {
  1198. return 'ppt'
  1199. } else if (['pdf'].includes(fileSuffix)) {
  1200. return 'pdf'
  1201. } else if (['zip', 'rar', 'gz', 'apk'].includes(fileSuffix)) {
  1202. return 'file'
  1203. } else {
  1204. return ''
  1205. }
  1206. },
  1207. goBack() {
  1208. this.$emit('setShowPage', 1)
  1209. },
  1210. handleRadio(e) {
  1211. this.getDetail()
  1212. },
  1213. handleSvse() {
  1214. this.details.isRefundDeposit = this.details.isRefundDeposit == true
  1215. editInfo(this.details).then(res => {
  1216. this.$successMsg('编辑成功')
  1217. this.$emit('setShowPage', 1)
  1218. })
  1219. },
  1220. handleReset() {
  1221. this.$refs.form.resetFields()
  1222. }
  1223. }
  1224. }
  1225. </script>
  1226. <style scoped lang="scss">
  1227. ::v-deep .input .el-input__inner, .input {
  1228. color: blue !important;
  1229. }
  1230. ::v-deep .input2 .el-input__inner, .input2 {
  1231. color: #f00 !important;
  1232. }
  1233. .aaa {
  1234. height: 64px;
  1235. width: 64px;
  1236. }
  1237. .gdzl {
  1238. display: inline-block;
  1239. }
  1240. .batchDownload {
  1241. float: right;
  1242. margin-top: 9px;
  1243. }
  1244. ::v-deep .el-input__prefix {
  1245. display: none;
  1246. left: 65px !important;
  1247. -webkit-transition: all 0.3s;
  1248. transition: all 0.3s;
  1249. }
  1250. ::v-deep .el-date-editor.el-input {
  1251. width: 100%;
  1252. box-sizing: border-box;
  1253. padding-left: 10px;
  1254. }
  1255. .diy-table-1 {
  1256. ::v-deep .el-form-item {
  1257. margin: 0;
  1258. }
  1259. }
  1260. .zd {
  1261. ::v-deep .el-input__suffix {
  1262. right: 0;
  1263. -webkit-transition: all 0.3s;
  1264. transition: all 0.3s;
  1265. }
  1266. }
  1267. ::v-deep .el-input__suffix {
  1268. right: -15px;
  1269. -webkit-transition: all 0.3s;
  1270. transition: all 0.3s;
  1271. }
  1272. </style>