purchaseContractEdit.vue 42 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486
  1. <!--销售合同-->
  2. <!--2019年5月30日 20:25:16 by jlx-->
  3. <template>
  4. <div class="container">
  5. <el-row>
  6. <el-col :span="12">
  7. <h2 class="bg-left title">修改合同信息</h2>
  8. </el-col>
  9. <el-col :span="12" class="bg-right">
  10. <el-button
  11. class="bg-bottom"
  12. type="primary"
  13. size="small"
  14. @click="returnsales()"
  15. ><img
  16. width="6"
  17. height="10"
  18. style="vertical-align: bottom; margin-right: 3px"
  19. src="../../../public/img/lujing.png"
  20. alt=""
  21. />
  22. 返回</el-button
  23. >
  24. </el-col>
  25. </el-row>
  26. <ws-form
  27. ref="deptBudgetList"
  28. :rules="mainReportAdd"
  29. :model="deptBudgetList"
  30. >
  31. <div class="remark">
  32. <h3>基本信息</h3>
  33. <p style="color: #8890b1">
  34. &nbsp;&nbsp;注:基本信息和货物信息均为必填项,“*”
  35. 标记的条目提交后不可修改。
  36. </p>
  37. </div>
  38. <ws-info-table>
  39. <!-- 合同编号 -->
  40. <ws-form-item
  41. class="readonly"
  42. label="合同编号"
  43. span="1"
  44. prop="contractNo"
  45. >
  46. {{ deptBudgetList.contractNo }}
  47. </ws-form-item>
  48. <!-- 运输方式 -->
  49. <ws-form-item label="运输方式" span="1" prop="shippingType">
  50. <ws-input
  51. v-model="deptBudgetList.shippingType"
  52. maxlength="100"
  53. placeholder="请输入运输方式"
  54. size="small"
  55. />
  56. </ws-form-item>
  57. <!-- 买方 -->
  58. <ws-form-item class="readonly" label="买方" span="1" prop="buyer">
  59. {{ deptBudgetList.buyer }}
  60. </ws-form-item>
  61. <!-- 交货方式 -->
  62. <ws-form-item label="结算方式" span="1" prop="settlementMethod">
  63. <ws-input
  64. v-model="deptBudgetList.settlementMethod"
  65. maxlength="100"
  66. placeholder="请输入结算方式"
  67. size="small"
  68. />
  69. </ws-form-item>
  70. <!-- 卖方 -->
  71. <ws-form-item class="readonly" label="卖方" span="1" prop="seller"
  72. >{{ deptBudgetList.seller }}
  73. </ws-form-item>
  74. <ws-form-item
  75. class="readonly"
  76. label="交货方式"
  77. span="1"
  78. prop="sourceGoods"
  79. >
  80. {{ deptBudgetList.deliverType }}
  81. </ws-form-item>
  82. <!-- 买方电话 -->
  83. <ws-form-item label="买方电话" span="1" prop="buyerPhone">
  84. <ws-input
  85. v-model="deptBudgetList.buyerPhone"
  86. maxlength="100"
  87. size="small"
  88. />
  89. </ws-form-item>
  90. <!-- 包装方式 -->
  91. <ws-form-item label="包装方式" span="1" prop="packingMethod">
  92. <ws-select
  93. v-model="deptBudgetList.packingMethod"
  94. placeholder=""
  95. class="typeselect"
  96. @change="selectpackingMethod"
  97. >
  98. <ws-option
  99. v-for="item in packtypeList"
  100. :key="item.constKey"
  101. :label="item.constValue"
  102. :value="item.constValue"
  103. />
  104. </ws-select>
  105. </ws-form-item>
  106. <!-- 卖方电话 -->
  107. <ws-form-item label="卖方电话" span="1" prop="sellerPhone">
  108. <ws-input
  109. v-model="deptBudgetList.sellerPhone"
  110. maxlength="100"
  111. size="small"
  112. placeholder="请输入卖方电话"
  113. />
  114. </ws-form-item>
  115. <!-- 验收方式 -->
  116. <ws-form-item label="验收方式" span="1" prop="acceptanceMethod">
  117. <el-select
  118. v-model="deptBudgetList.acceptanceMethod"
  119. placeholder="请选择验收方式"
  120. style="width: 100%"
  121. filterable
  122. @change="selectunitList"
  123. >
  124. <el-option
  125. v-for="(item, index) in unitList"
  126. :key="item.constValue"
  127. :label="item.constValue"
  128. :value="item.constValue"
  129. >
  130. <span class="unit-left" style="float: left">
  131. <span v-if="item.flag == 'delete'"> {{ item.constValue }}</span>
  132. <!-- 新增文本框 -->
  133. <div v-if="item.flag !== 'delete'" @click.stop>
  134. <ws-input
  135. v-model="item.constValue"
  136. clearable
  137. maxlength="10"
  138. style="width: 200px"
  139. ></ws-input>
  140. </div>
  141. </span>
  142. <span style="float: right; color: #8492a6; font-size: 13px">
  143. <!-- 对号 -->
  144. <i
  145. class="el-icon-check"
  146. style="line-height: 29px; margin-left: 10px"
  147. v-if="item.flag !== 'delete'"
  148. @click.stop="saveClick(item, index)"
  149. ></i>
  150. <!-- 编辑 -->
  151. <i
  152. class="el-icon-edit"
  153. style="line-height: 29px; margin-left: 10px"
  154. v-if="item.flag == 'delete'"
  155. @click.stop="editClick(item, index)"
  156. ></i>
  157. <!-- 删除 -->
  158. <i
  159. class="el-icon-delete"
  160. style="line-height: 29px"
  161. @click.stop="deleteClick(item, index)"
  162. ></i>
  163. </span>
  164. </el-option>
  165. <!-- 新增按钮 -->
  166. <el-option value="" label="">
  167. <div
  168. style="
  169. text-align: right;
  170. border-top: 1px solid #dcdfe6;
  171. padding: 5px;
  172. "
  173. >
  174. <ws-button type="primary" @click.stop="addClick">{{
  175. $t('button.add')
  176. }}</ws-button>
  177. </div>
  178. </el-option>
  179. </el-select>
  180. </ws-form-item>
  181. <!-- 重量(吨) -->
  182. <ws-form-item label="重量(吨)" span="1" prop="weight">
  183. <ws-input
  184. v-model="deptBudgetList.weight"
  185. maxlength="100"
  186. size="small"
  187. placeholder="请输入重量(吨)"
  188. />
  189. </ws-form-item>
  190. <!-- 交货日期(起) -->
  191. <ws-form-item label="交货日期(起)" span="1" prop="deliveryDateStart">
  192. <ws-date-picker
  193. v-model="deptBudgetList.deliveryDateStart"
  194. type="date"
  195. placeholder="请选择交货日期(起)"
  196. value-format="yyyy-MM-dd"
  197. />
  198. </ws-form-item>
  199. <!-- 溢短装(%) -->
  200. <ws-form-item label="溢短装(%)" span="1" prop="overShort">
  201. <ws-input
  202. v-model="deptBudgetList.overShort"
  203. maxlength="100"
  204. size="small"
  205. placeholder="请输入溢短装比例(%)"
  206. />
  207. </ws-form-item>
  208. <!-- 交货日期(止) -->
  209. <ws-form-item label="交货日期(止)" span="1" prop="deliveryDateEnd">
  210. <ws-date-picker
  211. v-model="deptBudgetList.deliveryDateEnd"
  212. type="date"
  213. placeholder="请选择交货日期(止)"
  214. value-format="yyyy-MM-dd"
  215. />
  216. </ws-form-item>
  217. <!-- 合同单价(元/吨) -->
  218. <ws-form-item
  219. class="readonly"
  220. label="合同单价(元/吨)"
  221. span="1"
  222. prop="unitContractPrice"
  223. >
  224. <span v-if="deptBudgetList.unitContractPrice != 'null'">{{
  225. deptBudgetList.unitContractPrice
  226. }}</span>
  227. </ws-form-item>
  228. <!-- 合同总价(元) -->
  229. <ws-form-item label="合同总价(元)" span="1" prop="totalContractPrice">
  230. <ws-input
  231. v-model="deptBudgetList.totalContractPrice"
  232. maxlength="100"
  233. placeholder="请输入合同单价"
  234. size="small"
  235. />
  236. </ws-form-item>
  237. <!-- 货源所在地区 -->
  238. <ws-form-item label="货源所在地区" span="1" prop="packingMethod">
  239. <el-cascader
  240. :options="options_"
  241. v-model="selectedOptions"
  242. clearable
  243. size="large"
  244. placeholder="请选择货源所在地区"
  245. style="width: 200%"
  246. @change="handleChange"
  247. />
  248. </ws-form-item>
  249. <!-- 货源详细地址 -->
  250. <ws-form-item label="货源详细地址" span="1" prop="sourceGoods">
  251. <ws-input
  252. v-model="deptBudgetList.sourceGoods"
  253. maxlength="100"
  254. placeholder="请输入货源详细地址"
  255. size="small"
  256. />
  257. </ws-form-item>
  258. <!-- 交货地所在地区 -->
  259. <ws-form-item label="交货地所在地区" span="1" prop="packingMethod">
  260. <el-cascader
  261. :options="options_"
  262. v-model="selectedOptions1"
  263. clearable
  264. size="large"
  265. placeholder="请选择交货地所在地区"
  266. style="width: 200%"
  267. @change="handleChange"
  268. />
  269. </ws-form-item>
  270. <!-- 交货地详细地址 -->
  271. <ws-form-item label="交货地详细地址" span="1" prop="placeDelivery">
  272. <ws-input
  273. v-model="deptBudgetList.placeDelivery"
  274. maxlength="100"
  275. placeholder="请输入交货地详细地址"
  276. size="small"
  277. />
  278. </ws-form-item>
  279. <!-- 签订日期 -->
  280. <ws-form-item label="签订日期" span="1" prop="signingDate">
  281. <ws-date-picker
  282. v-model="deptBudgetList.signingDate"
  283. type="date"
  284. placeholder="请选择合同签订日期"
  285. value-format="yyyy-MM-dd"
  286. />
  287. </ws-form-item>
  288. <!-- 最终实际交易量(吨) -->
  289. <ws-form-item
  290. label="最终实际交易量(吨)"
  291. span="1"
  292. prop="totalContractPrice"
  293. >
  294. <ws-input
  295. v-model="deptBudgetList.finalTradingVolume"
  296. maxlength="100"
  297. placeholder="请输入最终实际交易量"
  298. size="small"
  299. />
  300. </ws-form-item>
  301. <!-- 临时库负责人 -->
  302. <ws-form-item
  303. label="临时库负责人"
  304. span="1"
  305. prop="packingMethod"
  306. v-show="deptBudgetList.sellers == '我方自提'"
  307. >
  308. <ws-select
  309. v-model="deptBudgetList.packingMethod"
  310. placeholder=""
  311. class="typeselect"
  312. @change="selectpackingMethod"
  313. >
  314. <ws-option
  315. v-for="item in packtypeList"
  316. :key="item.constKey"
  317. :label="item.constValue"
  318. :value="item.constValue"
  319. />
  320. </ws-select>
  321. </ws-form-item>
  322. </ws-info-table>
  323. <base-card>
  324. <!--面试信息-->
  325. <div class="remark">
  326. <h3>货物信息</h3>
  327. </div>
  328. <ws-info-table>
  329. <ws-form-item
  330. class="readonly"
  331. label="货名"
  332. span="1"
  333. prop="waterContent"
  334. >
  335. {{ deptBudgetList.contractGoodsInfo.goodsName }}
  336. </ws-form-item>
  337. <ws-form-item label="水分(%)<=" span="1" prop="intendedShipId">
  338. <ws-input
  339. v-model="deptBudgetList.contractGoodsInfo.waterContent"
  340. placeholder="请输入水分占比"
  341. maxlength="100"
  342. size="small"
  343. />
  344. </ws-form-item>
  345. <ws-form-item label="品级" span="1" prop="grade">
  346. <ws-select
  347. v-model="deptBudgetList.contractGoodsInfo.grade"
  348. placeholder=""
  349. class="typeselect"
  350. @change="selectgrade"
  351. >
  352. <ws-option
  353. v-for="item in gradeList"
  354. :key="item.constValue"
  355. :label="item.constValue"
  356. :value="item.constValue"
  357. />
  358. </ws-select>
  359. </ws-form-item>
  360. <ws-form-item label="杂质(%)<=" span="1" prop="impurity">
  361. <ws-input
  362. v-model="deptBudgetList.contractGoodsInfo.impurity"
  363. placeholder="请输入杂质占比(%)"
  364. maxlength="100"
  365. size="small"
  366. />
  367. </ws-form-item>
  368. <ws-form-item label="容重(克/升)<=" span="1" prop="bulkDensity">
  369. <ws-input
  370. v-model="deptBudgetList.contractGoodsInfo.bulkDensity"
  371. placeholder="请输入容重"
  372. maxlength="100"
  373. size="small"
  374. />
  375. </ws-form-item>
  376. <ws-form-item
  377. label="霉变粒(%)<="
  378. span="1"
  379. prop="mildewGrain"
  380. class="result"
  381. >
  382. <ws-input
  383. v-model="deptBudgetList.contractGoodsInfo.mildewGrain"
  384. placeholder="请输入霉变粒占比(%)"
  385. maxlength="100"
  386. size="small"
  387. />
  388. </ws-form-item>
  389. <ws-form-item label="热损伤(%)<=" span="1" prop="jiaorenli">
  390. <ws-input
  391. v-model="deptBudgetList.contractGoodsInfo.jiaorenli"
  392. placeholder="请输入输入热损伤占比(%)"
  393. maxlength="100"
  394. size="small"
  395. />
  396. </ws-form-item>
  397. <ws-form-item
  398. label="不完善粒(%)<="
  399. span="1"
  400. prop="imperfectGrain"
  401. class="result"
  402. >
  403. <ws-input
  404. v-model="deptBudgetList.contractGoodsInfo.imperfectGrain"
  405. placeholder="请输入不完整粒占比(%)"
  406. maxlength="100"
  407. size="small"
  408. />
  409. </ws-form-item>
  410. </ws-info-table>
  411. <div class="remark">
  412. <h3>流程信息</h3>
  413. </div>
  414. <ws-info-table>
  415. <ws-form-item label="合同收入(元)" span="1" prop="goodsNameKey">
  416. <ws-input
  417. v-model="deptBudgetList.contractProcessInfo.goodsNameKey"
  418. placeholder="请输入合同收入(元)"
  419. maxlength="100"
  420. size="small"
  421. />
  422. </ws-form-item>
  423. <ws-form-item label="已开发票(元)" span="1" prop="goodsName">
  424. <ws-input
  425. v-model="deptBudgetList.contractProcessInfo.goodsName"
  426. placeholder="请输入已开发票(元)"
  427. maxlength="100"
  428. size="small"
  429. />
  430. </ws-form-item>
  431. <ws-form-item label="费用支出(元)" span="1" prop="waterContent">
  432. <ws-input
  433. v-model="deptBudgetList.contractProcessInfo.waterContent"
  434. placeholder="请输入费用支出(元)"
  435. maxlength="100"
  436. size="small"
  437. />
  438. </ws-form-item>
  439. <ws-form-item label="未开发票(元)" span="1" prop="impurity"
  440. ><ws-input
  441. v-model="deptBudgetList.contractProcessInfo.impurity"
  442. placeholder="请输入未开发票(元)"
  443. maxlength="100"
  444. size="small"
  445. />
  446. </ws-form-item>
  447. <ws-form-item label="未回款(元)" span="1" prop="mildewGrain"
  448. ><ws-input
  449. v-model="deptBudgetList.contractProcessInfo.mildewGrain"
  450. placeholder="请输入已完成发货量(吨)"
  451. maxlength="100"
  452. size="small"
  453. />
  454. </ws-form-item>
  455. <ws-form-item
  456. label="已完成发运量(吨)"
  457. span="1"
  458. prop="imperfectGrain"
  459. class="result"
  460. >
  461. <ws-input
  462. v-model="deptBudgetList.contractProcessInfo.imperfectGrain"
  463. maxlength="100"
  464. size="small"
  465. />
  466. </ws-form-item>
  467. <ws-form-item label="双章原件回收情况" span="1" prop="grade"
  468. ><ws-select
  469. v-model="deptBudgetList.contractProcessInfo.grade"
  470. placeholder=""
  471. class="typeselect"
  472. @change="selectChapterTwo"
  473. >
  474. <ws-option
  475. v-for="item in ChapterTwoList"
  476. :key="item.constValue"
  477. :label="item.constValue"
  478. :value="item.constValue"
  479. />
  480. </ws-select>
  481. </ws-form-item>
  482. </ws-info-table>
  483. <div class="remark">
  484. <h3>备注信息</h3>
  485. </div>
  486. <ws-input
  487. v-model="deptBudgetList.remarks"
  488. type="textarea"
  489. row="3"
  490. placeholder="请输入备注信息,不超过200字"
  491. maxlength="200"
  492. />
  493. <ws-upload
  494. ref="upload"
  495. table-name="maintain_work_order"
  496. oss-key="mainPlan"
  497. :comp-id="compId"
  498. :appendix-ids="appendixIdsAdd"
  499. :vesselId="deptBudgetList.addressUrl"
  500. :size-limit="size"
  501. @uploadSuccess="uploadSuccess"
  502. accept=".jpg, .jpeg, .png, .pdf, .doc, .zip, .rar"
  503. />
  504. </base-card>
  505. </ws-form>
  506. <div style="text-align: right; padding: 10px">
  507. <el-button class="bg-bottom" type="primary" size="small" @click="submit()"
  508. >提交</el-button
  509. >
  510. </div>
  511. </div>
  512. </template>
  513. <script>
  514. import { regionData, CodeToText, TextToCode } from 'element-china-area-data'
  515. import {
  516. packList,
  517. addList,
  518. xiala,
  519. addxiala,
  520. editxiala,
  521. delxiala,
  522. examineList,
  523. editInfo,
  524. } from '@/model/contarct/index'
  525. import WsUpload from '@/components/WsUpload'
  526. import { EventBus, dayjs } from 'base-core-lib'
  527. export default {
  528. name: 'viewSpareMoney',
  529. watch: {
  530. vesselId(val) {
  531. this.getVesselData()
  532. },
  533. isShow(val) {
  534. this.showType = val
  535. },
  536. },
  537. components: {
  538. WsUpload,
  539. },
  540. data() {
  541. return {
  542. //弹出框
  543. dialogViewSpareMoney: false,
  544. dialogApproveFormVisible: false,
  545. // 船舶类型
  546. monetaryKey: null,
  547. // 表格显示数据
  548. tableDate: [],
  549. // 是否显示
  550. showType: true,
  551. // 年
  552. year: '',
  553. size: 10,
  554. // 提交类型
  555. submitType: true,
  556. options_: regionData,
  557. tableData: [{ date: 1111, name: 'qqqq', address: 'errrtt' }],
  558. ruleDeptBudget: [],
  559. deptBudgetList: {
  560. contractProcessInfo: {},
  561. contractGoodsInfo: {},
  562. },
  563. options_: regionData,
  564. selectedOptions: [],
  565. selectedOptions1: [],
  566. mainReportAdd: {},
  567. list: {},
  568. unitList: [],
  569. packtypeList: [],
  570. goodnameList: [],
  571. gradeList: [],
  572. ChapterTwoList: [],
  573. appendixIdsAdd: '',
  574. pickerBeginDateBefore: {
  575. disabledDate: (time) => {
  576. return time.getTime() > Date.now()
  577. },
  578. },
  579. acceptanceCheck: {},
  580. compId: sessionStorage.getItem('ws-pf_compId'),
  581. }
  582. },
  583. activated() {
  584. this.loaddata()
  585. this.showType = this.isShow
  586. },
  587. methods: {
  588. handleChange(value) {
  589. this.selectedOptions = value
  590. },
  591. handleChange1(value) {
  592. this.selectedOptions1 = value
  593. },
  594. loaddata() {
  595. // 数据
  596. examineList({ id: this.$route.query.id })
  597. .toPromise()
  598. .then((response) => {
  599. if (response.weight) {
  600. response.weight = String(response.weight)
  601. }
  602. if (response.overShort) {
  603. response.overShort = String(response.overShort)
  604. }
  605. if (response.totalContractPrice) {
  606. response.totalContractPrice = String(response.totalContractPrice)
  607. }
  608. if (response.unitContractPrice) {
  609. response.unitContractPrice = String(response.unitContractPrice)
  610. }
  611. var tmp = []
  612. console.log(TextToCode[response.sourceProvince])
  613. tmp[0] = TextToCode[response.sourceProvince].code
  614. tmp[1] = TextToCode[response.sourceProvince][response.sourceCity].code
  615. tmp[2] =
  616. TextToCode[response.sourceProvince][response.sourceCity][
  617. response.sourceArea
  618. ].code
  619. this.selectedOptions = tmp
  620. var tmp1 = []
  621. tmp1[0] = TextToCode[response.deliveryProvince].code
  622. tmp1[1] =
  623. TextToCode[response.deliveryProvince][response.deliveryCity].code
  624. tmp1[2] =
  625. TextToCode[response.deliveryProvince][response.deliveryCity][
  626. response.deliveryArea
  627. ].code
  628. this.selectedOptions1 = tmp1
  629. this.deptBudgetList = response
  630. })
  631. // 包装方式
  632. packList({ constId: 'CON1' })
  633. .toPromise()
  634. .then((response) => {
  635. this.packtypeList = response
  636. })
  637. // 验收方式
  638. this.getUnitList()
  639. // 货名
  640. packList({ constId: 'CON2' })
  641. .toPromise()
  642. .then((response) => {
  643. this.goodnameList = response
  644. })
  645. // 品级
  646. packList({ constId: 'CON3' })
  647. .toPromise()
  648. .then((response) => {
  649. this.gradeList = response
  650. })
  651. // 双章
  652. packList({ constId: 'CON4' })
  653. .toPromise()
  654. .then((response) => {
  655. this.ChapterTwoList = response
  656. })
  657. },
  658. addClick() {
  659. // let [flag, constValue, constKey] = ['check', '', '']
  660. // let obj = { flag, constValue, constKey }
  661. // let objAdd = { flag: 'add', constValue: '新增项目', constKey: '' }
  662. // let result = this.unitList.filter((item, val, arr) => {
  663. // return item.id != '1'
  664. // })
  665. // result.push(obj)
  666. // result.push(objAdd)
  667. // this.unitList = result
  668. this.unitList.push({
  669. flag: 'add',
  670. constValue: '',
  671. constKey: '',
  672. })
  673. },
  674. // 上传附件
  675. uploadSuccess(data, files, url) {
  676. console.log(data, files, url)
  677. // this.deptBudgetList.
  678. // this.formData.append('files', files)
  679. // this.feedbackObj.uploadNameAttachment = data.appendixName
  680. // this.feedbackObj.pathUploadAttachment = data.appendixPath
  681. // // this.newAppendixs = files
  682. // this.onChangeFlag = true
  683. },
  684. getUnitList() {
  685. xiala({
  686. compId: sessionStorage.getItem('ws-pf_compId'),
  687. constCode: 'TYPEYAN',
  688. })
  689. .toPromise()
  690. .then((response) => {
  691. this.unitList = response
  692. let currItem
  693. this.unitList.forEach((item, index, arr) => {
  694. item.flag = 'delete'
  695. if (this.vModel == item.constKey) {
  696. currItem = item
  697. }
  698. })
  699. //
  700. if (currItem) {
  701. this.selectContract(currItem.constValue)
  702. }
  703. })
  704. },
  705. // 关闭 dialog时 处理文件url 初始化upload组件
  706. handleClose() {
  707. this.dialogViewSpareMoney = false
  708. },
  709. handleExamine() {},
  710. approve() {},
  711. returnsales() {
  712. this.$router.push({ path: 'purchaseContract' })
  713. },
  714. selectChapterTwo(e) {
  715. for (var i = 0; i < this.ChapterTwoList.length; i++) {
  716. if (this.ChapterTwoList[i].constValue == e) {
  717. this.deptBudgetList.gradeKey = this.ChapterTwoList[i].constKey
  718. }
  719. }
  720. },
  721. selectunitList(e) {
  722. for (var i = 0; i < this.unitList.length; i++) {
  723. if (this.unitList[i].constValue == e) {
  724. this.deptBudgetList.packingMethodKey = this.unitList[i].constKey
  725. }
  726. }
  727. },
  728. selectgrade(e) {
  729. for (var i = 0; i < this.gradeList.length; i++) {
  730. if (this.gradeList[i].constValue == e) {
  731. this.deptBudgetList.gradeKey = this.gradeList[i].constKey
  732. }
  733. }
  734. },
  735. selectpackingMethod(e) {
  736. for (var i = 0; i < this.packtypeList.length; i++) {
  737. if (this.packtypeList[i].constValue == e) {
  738. this.deptBudgetList.acceptanceMethodKey =
  739. this.packtypeList[i].constKey
  740. }
  741. }
  742. },
  743. saveClick(item, index) {
  744. console.log(item)
  745. if (Object.is(item.id, 1)) {
  746. return
  747. }
  748. if (Object.is(this.unitList[index].flag, 'delete')) {
  749. this.$set(this.unitList, index, { flag: 'check' })
  750. } else {
  751. this.$set(this.unitList, index, { flag: 'delete' })
  752. }
  753. if (!item.constValue) {
  754. this.unitList.splice(index, 1)
  755. return
  756. }
  757. if (item.flag == 'add') {
  758. item.constKey = Math.random() * 20
  759. this.acceptanceCheck.compId = this.compId
  760. this.acceptanceCheck.constKey = item.constKey
  761. this.acceptanceCheck.constCode = 'TYPEYAN'
  762. this.acceptanceCheck.constValue = item.constValue
  763. this.acceptanceCheck.id = item.id
  764. addxiala(this.acceptanceCheck)
  765. .toPromise()
  766. .then((response) => {
  767. this.getUnitList()
  768. })
  769. } else if (item.flag == 'check') {
  770. this.acceptanceCheck.compId = this.compId
  771. this.acceptanceCheck.constKey = item.constKey
  772. this.acceptanceCheck.constCode = 'TYPEYAN'
  773. this.acceptanceCheck.constValue = item.constValue
  774. this.acceptanceCheck.id = item.id
  775. editxiala(this.acceptanceCheck)
  776. .toPromise()
  777. .then((response) => {
  778. this.getUnitList()
  779. })
  780. }
  781. },
  782. // 编辑
  783. editClick(item, index) {
  784. const map = JSON.parse(JSON.stringify(item))
  785. if (Object.is(item.id, 1)) {
  786. return
  787. }
  788. if (Object.is(this.unitList[index].flag, 'delete')) {
  789. map.flag = 'check'
  790. this.$set(this.unitList, index, map)
  791. } else {
  792. map.flag = 'delete'
  793. this.$set(this.unitList, index, map)
  794. }
  795. },
  796. // 删除
  797. deleteClick(item, index) {
  798. if (Object.is(item.constKey, 1)) {
  799. return
  800. }
  801. if (!item.constValue) {
  802. this.unitList.splice(index, 1)
  803. return
  804. }
  805. delxiala({ id: this.unitList[index].id })
  806. .toPromise()
  807. .then((response) => {
  808. this.getUnitList()
  809. this.pleaseChoose = ''
  810. })
  811. },
  812. submit() {
  813. if (!this.deptBudgetList.contractNo) {
  814. this.$message({
  815. message: '请输入合同编号',
  816. type: 'warning',
  817. })
  818. return
  819. }
  820. console.log(this.deptBudgetList.contractNo.length)
  821. if (
  822. this.deptBudgetList.contractNo.length < 6 ||
  823. this.deptBudgetList.contractNo.length > 20
  824. ) {
  825. this.$message({
  826. message: '合同编号长度不符合要求,请输入6到20个字符之内!',
  827. type: 'warning',
  828. })
  829. return
  830. }
  831. if (!this.deptBudgetList.shippingType) {
  832. this.$message({
  833. message: '请输入运输方式!',
  834. type: 'warning',
  835. })
  836. return
  837. }
  838. if (
  839. this.deptBudgetList.shippingType.length < 1 ||
  840. this.deptBudgetList.shippingType.length > 20
  841. ) {
  842. this.$message({
  843. message: '运输方式长度不符合要求,请输入1到20个字符之内!',
  844. type: 'warning',
  845. })
  846. return
  847. }
  848. if (!this.deptBudgetList.buyer) {
  849. this.$message({
  850. message: '请输入买方名称!',
  851. type: 'warning',
  852. })
  853. return
  854. }
  855. if (this.deptBudgetList.buyer.length > 30) {
  856. this.$message({
  857. message: '买方名称长度不符合要求,请输入30个字符之内!',
  858. type: 'warning',
  859. })
  860. return
  861. }
  862. if (!this.deptBudgetList.seller) {
  863. this.$message({
  864. message: '请输入卖方名称!',
  865. type: 'warning',
  866. })
  867. return
  868. }
  869. if (this.deptBudgetList.seller.length > 30) {
  870. this.$message({
  871. message: '卖方名称长度不符合要求,请输入30个字符之内!',
  872. type: 'warning',
  873. })
  874. return
  875. }
  876. if (!this.deptBudgetList.buyerPhone) {
  877. this.$message({
  878. message: '请输入买方电话!',
  879. type: 'warning',
  880. })
  881. return
  882. }
  883. if (isNaN(this.deptBudgetList.buyerPhone)) {
  884. this.$message({
  885. message: '输入买方电话有误!',
  886. type: 'warning',
  887. })
  888. return
  889. }
  890. if (
  891. this.deptBudgetList.buyerPhone.length < 7 ||
  892. this.deptBudgetList.buyerPhone.length > 20
  893. ) {
  894. this.$message({
  895. message: '买方电话长度不符合要求,请输入7到20个字符之内!',
  896. type: 'warning',
  897. })
  898. return
  899. }
  900. if (!this.deptBudgetList.sellerPhone) {
  901. this.$message({
  902. message: '请输入卖方电话!',
  903. type: 'warning',
  904. })
  905. return
  906. }
  907. if (isNaN(this.deptBudgetList.sellerPhone)) {
  908. this.$message({
  909. message: '输入卖方电话有误!',
  910. type: 'warning',
  911. })
  912. return
  913. }
  914. if (
  915. this.deptBudgetList.buyerPhone.length < 7 ||
  916. this.deptBudgetList.buyerPhone.length > 20
  917. ) {
  918. this.$message({
  919. message: '卖方电话长度不符合要求,请输入7到20个字符之内!',
  920. type: 'warning',
  921. })
  922. return
  923. }
  924. if (!this.deptBudgetList.settlementMethod) {
  925. this.$message({
  926. message: '请输入结算方式!',
  927. type: 'warning',
  928. })
  929. return
  930. }
  931. if (!this.deptBudgetList.sourceGoods) {
  932. this.$message({
  933. message: '请输入货源地!',
  934. type: 'warning',
  935. })
  936. return
  937. }
  938. if (!this.deptBudgetList.placeDelivery) {
  939. this.$message({
  940. message: '请输入交货地!',
  941. type: 'warning',
  942. })
  943. return
  944. }
  945. if (!this.deptBudgetList.weight) {
  946. this.$message({
  947. message: '请输入重量!',
  948. type: 'warning',
  949. })
  950. return
  951. }
  952. if (
  953. isNaN(this.deptBudgetList.weight) ||
  954. (String(this.deptBudgetList.weight).indexOf('.') != -1 &&
  955. String(this.deptBudgetList.weight).length -
  956. (String(this.deptBudgetList.weight).indexOf('.') + 1) >
  957. 3) ||
  958. this.deptBudgetList.weight < 0 ||
  959. this.deptBudgetList.weight > 200000
  960. ) {
  961. this.$message({
  962. message: '输入重量有误!',
  963. type: 'warning',
  964. })
  965. return
  966. }
  967. if (
  968. !this.deptBudgetList.overShort &&
  969. isNaN(this.deptBudgetList.overShort)
  970. ) {
  971. this.$message({
  972. message: '溢短装输入有误!',
  973. type: 'warning',
  974. })
  975. return
  976. }
  977. if (
  978. !this.deptBudgetList.unitContractPrice &&
  979. isNaN(this.deptBudgetList.unitContractPrice)
  980. ) {
  981. this.$message({
  982. message: '合同单价输入有误!',
  983. type: 'warning',
  984. })
  985. return
  986. }
  987. if (
  988. !this.deptBudgetList.totalContractPrice &&
  989. isNaN(this.deptBudgetList.totalContractPrice)
  990. ) {
  991. this.$message({
  992. message: '合同总价输入有误!',
  993. type: 'warning',
  994. })
  995. return
  996. }
  997. if (!this.deptBudgetList.deliveryDateStart) {
  998. this.$message({
  999. message: '请选择交货日期(起)',
  1000. type: 'warning',
  1001. })
  1002. return
  1003. }
  1004. if (!this.deptBudgetList.deliveryDateEnd) {
  1005. this.$message({
  1006. message: '请选择交货日期(止)',
  1007. type: 'warning',
  1008. })
  1009. return
  1010. }
  1011. //时间
  1012. if (
  1013. new Date(this.deptBudgetList.deliveryDateStart).getTime() >
  1014. new Date(this.deptBudgetList.deliveryDateEnd).getTime()
  1015. ) {
  1016. this.$message({
  1017. message: '交货日期(止)选择错误',
  1018. type: 'warning',
  1019. })
  1020. return
  1021. }
  1022. if (!this.deptBudgetList.signingDate) {
  1023. this.$message({
  1024. message: '请选择签订日期',
  1025. type: 'warning',
  1026. })
  1027. return
  1028. }
  1029. if (!this.deptBudgetList.contractGoodsInfo.goodsName) {
  1030. this.$message({
  1031. message: '请选择货名',
  1032. type: 'warning',
  1033. })
  1034. return
  1035. }
  1036. if (!this.deptBudgetList.contractGoodsInfo.waterContent) {
  1037. this.$message({
  1038. message: '请选择水分',
  1039. type: 'warning',
  1040. })
  1041. return
  1042. }
  1043. if (!this.deptBudgetList.contractGoodsInfo.grade) {
  1044. this.$message({
  1045. message: '请选择品级',
  1046. type: 'warning',
  1047. })
  1048. return
  1049. }
  1050. if (
  1051. !this.deptBudgetList.contractGoodsInfo.impurity ||
  1052. (String(this.deptBudgetList.contractGoodsInfo.impurity).indexOf('.') !=
  1053. -1 &&
  1054. String(this.deptBudgetList.contractGoodsInfo.impurity).length -
  1055. (String(this.deptBudgetList.contractGoodsInfo.impurity).indexOf(
  1056. '.'
  1057. ) +
  1058. 1) >
  1059. 2)
  1060. ) {
  1061. this.$message({
  1062. message: '杂质输入错误',
  1063. type: 'warning',
  1064. })
  1065. return
  1066. }
  1067. if (
  1068. !this.deptBudgetList.contractGoodsInfo.bulkDensity ||
  1069. (String(this.deptBudgetList.contractGoodsInfo.bulkDensity).indexOf(
  1070. '.'
  1071. ) != -1 &&
  1072. String(this.deptBudgetList.contractGoodsInfo.bulkDensity).length -
  1073. (String(this.deptBudgetList.contractGoodsInfo.bulkDensity).indexOf(
  1074. '.'
  1075. ) +
  1076. 1) >
  1077. 2)
  1078. ) {
  1079. this.$message({
  1080. message: '容重输入错误',
  1081. type: 'warning',
  1082. })
  1083. return
  1084. }
  1085. if (
  1086. !this.deptBudgetList.contractGoodsInfo.mildewGrain ||
  1087. (String(this.deptBudgetList.contractGoodsInfo.mildewGrain).indexOf(
  1088. '.'
  1089. ) != -1 &&
  1090. String(this.deptBudgetList.contractGoodsInfo.mildewGrain).length -
  1091. (String(this.deptBudgetList.contractGoodsInfo.mildewGrain).indexOf(
  1092. '.'
  1093. ) +
  1094. 1) >
  1095. 2)
  1096. ) {
  1097. this.$message({
  1098. message: '霉变粒输入错误',
  1099. type: 'warning',
  1100. })
  1101. return
  1102. }
  1103. if (
  1104. !this.deptBudgetList.contractGoodsInfo.jiaorenli ||
  1105. (String(this.deptBudgetList.contractGoodsInfo.jiaorenli).indexOf('.') !=
  1106. -1 &&
  1107. String(this.deptBudgetList.contractGoodsInfo.jiaorenli).length -
  1108. (String(this.deptBudgetList.contractGoodsInfo.jiaorenli).indexOf(
  1109. '.'
  1110. ) +
  1111. 1) >
  1112. 2)
  1113. ) {
  1114. this.$message({
  1115. message: '热损伤输入错误',
  1116. type: 'warning',
  1117. })
  1118. return
  1119. }
  1120. if (
  1121. !this.deptBudgetList.contractGoodsInfo.imperfectGrain ||
  1122. (String(this.deptBudgetList.contractGoodsInfo.imperfectGrain).indexOf(
  1123. '.'
  1124. ) != -1 &&
  1125. String(this.deptBudgetList.contractGoodsInfo.imperfectGrain).length -
  1126. (String(
  1127. this.deptBudgetList.contractGoodsInfo.imperfectGrain
  1128. ).indexOf('.') +
  1129. 1) >
  1130. 2)
  1131. ) {
  1132. this.$message({
  1133. message: '不完整粒输入错误',
  1134. type: 'warning',
  1135. })
  1136. return
  1137. }
  1138. if (
  1139. (!this.deptBudgetList.contractProcessInfo.goodsNameKey > 1000000000) |
  1140. (this.deptBudgetList.contractProcessInfo.goodsNameKey < 0) ||
  1141. (String(this.deptBudgetList.contractProcessInfo.goodsNameKey).indexOf(
  1142. '.'
  1143. ) != -1 &&
  1144. String(this.deptBudgetList.contractProcessInfo.goodsNameKey).length -
  1145. (String(
  1146. this.deptBudgetList.contractProcessInfo.goodsNameKey
  1147. ).indexOf('.') +
  1148. 1) >
  1149. 2)
  1150. ) {
  1151. this.$message({
  1152. message: '合同收入金额输入错误',
  1153. type: 'warning',
  1154. })
  1155. return
  1156. }
  1157. if (
  1158. (this.deptBudgetList.contractProcessInfo.waterContent > 10000000) |
  1159. (this.deptBudgetList.contractProcessInfo.waterContent < 0) ||
  1160. (String(this.deptBudgetList.contractProcessInfo.waterContent).indexOf(
  1161. '.'
  1162. ) != -1 &&
  1163. String(this.deptBudgetList.contractProcessInfo.waterContent).length -
  1164. (String(
  1165. this.deptBudgetList.contractProcessInfo.waterContent
  1166. ).indexOf('.') +
  1167. 1) >
  1168. 2)
  1169. ) {
  1170. this.$message({
  1171. message: '费用金额输入错误',
  1172. type: 'warning',
  1173. })
  1174. return
  1175. }
  1176. if (
  1177. (this.deptBudgetList.contractProcessInfo.goodsName > 1000000000) |
  1178. (this.deptBudgetList.contractProcessInfo.goodsName < 0) ||
  1179. (String(this.deptBudgetList.contractProcessInfo.goodsName).indexOf(
  1180. '.'
  1181. ) != -1 &&
  1182. String(this.deptBudgetList.contractProcessInfo.goodsName).length -
  1183. (String(this.deptBudgetList.contractProcessInfo.goodsName).indexOf(
  1184. '.'
  1185. ) +
  1186. 1) >
  1187. 2)
  1188. ) {
  1189. this.$message({
  1190. message: '已开发票金额输入错误',
  1191. type: 'warning',
  1192. })
  1193. return
  1194. }
  1195. if (
  1196. (this.deptBudgetList.contractProcessInfo.impurity > 1000000000) |
  1197. (this.deptBudgetList.contractProcessInfo.impurity < 0) ||
  1198. (String(this.deptBudgetList.contractProcessInfo.impurity).indexOf(
  1199. '.'
  1200. ) != -1 &&
  1201. String(this.deptBudgetList.contractProcessInfo.impurity).length -
  1202. (String(this.deptBudgetList.contractProcessInfo.impurity).indexOf(
  1203. '.'
  1204. ) +
  1205. 1) >
  1206. 2)
  1207. ) {
  1208. this.$message({
  1209. message: '未开发票金额输入错误',
  1210. type: 'warning',
  1211. })
  1212. return
  1213. }
  1214. if (
  1215. (this.deptBudgetList.contractProcessInfo.imperfectGrain > 200000) |
  1216. (this.deptBudgetList.contractProcessInfo.imperfectGrain < 0) ||
  1217. (String(this.deptBudgetList.contractProcessInfo.imperfectGrain).indexOf(
  1218. '.'
  1219. ) != -1 &&
  1220. String(this.deptBudgetList.contractProcessInfo.imperfectGrain)
  1221. .length -
  1222. (String(
  1223. this.deptBudgetList.contractProcessInfo.imperfectGrain
  1224. ).indexOf('.') +
  1225. 1) >
  1226. 2)
  1227. ) {
  1228. this.$message({
  1229. message: '已完成发运量输入错误',
  1230. type: 'warning',
  1231. })
  1232. return
  1233. }
  1234. this.$refs.deptBudgetList.validate((valid) => {
  1235. if (valid) {
  1236. this.deptBudgetList.sourceProvince =
  1237. CodeToText[this.selectedOptions[0]]
  1238. this.deptBudgetList.sourceCity = CodeToText[this.selectedOptions[1]]
  1239. this.deptBudgetList.sourceArea = CodeToText[this.selectedOptions[2]]
  1240. this.deptBudgetList.deliveryProvince =
  1241. CodeToText[this.selectedOptions1[0]]
  1242. this.deptBudgetList.deliveryCity =
  1243. CodeToText[this.selectedOptions1[1]]
  1244. this.deptBudgetList.deliveryArea =
  1245. CodeToText[this.selectedOptions1[2]]
  1246. this.deptBudgetList.compId = this.compId
  1247. this.deptBudgetList.contractType = 2
  1248. console.log(this.deptBudgetList)
  1249. editInfo(this.deptBudgetList)
  1250. .toPromise()
  1251. .then((response) => {
  1252. this.$message.success('编辑成功')
  1253. this.$router.push({ path: 'purchaseContract' })
  1254. })
  1255. } else {
  1256. EventBus.$emit('error', this.$t('showMessage.asteriskRequired'))
  1257. return false
  1258. }
  1259. })
  1260. },
  1261. },
  1262. }
  1263. </script>
  1264. <style lang="scss" scoped>
  1265. .el-form {
  1266. padding: 0 15%;
  1267. }
  1268. /deep/.ws-info-table .el-form-item {
  1269. border-right: 1px solid #cdd2dc;
  1270. border-bottom: 1px solid #cdd2dc;
  1271. }
  1272. .readonly {
  1273. position: relative;
  1274. }
  1275. .readonly:after {
  1276. content: '*';
  1277. color: #ff2727;
  1278. position: absolute;
  1279. right: 8px;
  1280. z-index: 10;
  1281. top: 21%;
  1282. font-size: 20px;
  1283. }
  1284. .title {
  1285. position: relative;
  1286. }
  1287. .title::before {
  1288. content: '';
  1289. display: inline-block;
  1290. width: 5px;
  1291. height: 30px;
  1292. background: #5473e8;
  1293. position: absolute;
  1294. left: 0;
  1295. }
  1296. .el-button--primary {
  1297. background-color: #5878e8;
  1298. border-color: #5878e8;
  1299. }
  1300. .el-col {
  1301. background: #f6f7fc;
  1302. }
  1303. /deep/.ws-info-table .el-form-item .el-form-item__content {
  1304. padding: 0 25px;
  1305. border-left: 1px solid #cdd2dc;
  1306. background: #fafbfc;
  1307. }
  1308. /deep/.ws-info-table .el-form-item .el-form-item__label {
  1309. width: 140px;
  1310. text-align: center;
  1311. background: #f0f2f6;
  1312. // border: 1px solid #cdd2dc;
  1313. }
  1314. .button-container {
  1315. display: flex;
  1316. flex-wrap: nowrap;
  1317. justify-content: space-between;
  1318. align-items: center;
  1319. background-color: #fff;
  1320. width: 100%;
  1321. height: 50px;
  1322. padding: 0 10px;
  1323. & > div {
  1324. margin-left: 10px;
  1325. display: flex;
  1326. flex-wrap: nowrap;
  1327. flex-direction: row;
  1328. & > span {
  1329. line-height: 50px;
  1330. }
  1331. }
  1332. /deep/.auditFlow-box {
  1333. position: unset;
  1334. margin-left: 10px;
  1335. &/deep/.auditFlow-icon {
  1336. width: auto;
  1337. padding-right: 30px;
  1338. }
  1339. &/deep/.auditFlow-main {
  1340. position: absolute;
  1341. }
  1342. }
  1343. }
  1344. .box-app {
  1345. display: inline-block;
  1346. float: left;
  1347. margin-left: 30px;
  1348. line-height: 50px;
  1349. }
  1350. /deep/.el-dialog {
  1351. .el-form-item {
  1352. margin-bottom: 0 !important;
  1353. .el-input--medium {
  1354. textarea {
  1355. min-height: 100px !important;
  1356. }
  1357. }
  1358. }
  1359. }
  1360. .collapse-bottom {
  1361. margin-bottom: 20px;
  1362. }
  1363. .input-main .textarea .el-textarea__inner {
  1364. width: 100%;
  1365. z-index: 1;
  1366. }
  1367. .bg-left {
  1368. padding-left: 30px;
  1369. }
  1370. .bg-right {
  1371. padding-right: 10px;
  1372. text-align: right;
  1373. }
  1374. .bg-bottom {
  1375. margin: 15px 0px;
  1376. }
  1377. .wenzi {
  1378. width: 900px;
  1379. margin: 0 auto;
  1380. }
  1381. .wenzi h3 {
  1382. display: inline-block;
  1383. left: 10px;
  1384. }
  1385. .wenzi p {
  1386. display: inline-block;
  1387. }
  1388. .center {
  1389. width: 900px;
  1390. margin: 0 auto;
  1391. }
  1392. .el-form-item {
  1393. width: 50%;
  1394. }
  1395. .el-form-item__label {
  1396. text-align: center;
  1397. }
  1398. .ce {
  1399. width: 900px;
  1400. margin: 0 auto;
  1401. }
  1402. /*.crt-main .textarea /deep/ .el-form-item__label {*/
  1403. /* height: 82px;*/
  1404. /*}*/
  1405. // 控制select为只读的时候显示样式
  1406. .hide-sel {
  1407. .el-input__inner {
  1408. border: 0px;
  1409. }
  1410. .el-icon-arrow-up {
  1411. display: none;
  1412. }
  1413. .el-textarea__inner {
  1414. background-color: #fff !important;
  1415. border: 0;
  1416. }
  1417. .el-date-editor {
  1418. i {
  1419. display: none;
  1420. }
  1421. }
  1422. .is-disabled {
  1423. .el-input__inner:hover {
  1424. background-color: #fff !important;
  1425. border: 0;
  1426. }
  1427. color: #606266;
  1428. .el-input__inner {
  1429. background-color: #fff !important;
  1430. border: 0;
  1431. color: #606266;
  1432. }
  1433. .el-textarea__inner {
  1434. background-color: #fff !important;
  1435. border: 0;
  1436. color: #606266;
  1437. }
  1438. }
  1439. }
  1440. // 控制select为只读的时候显示样式
  1441. /deep/.ws-class-table-col {
  1442. height: auto;
  1443. padding: 0px 2px;
  1444. /deep/.el-input__inner {
  1445. padding: 0px 2px;
  1446. }
  1447. }
  1448. /deep/.is-disabled {
  1449. .el-input__prefix,
  1450. .el-input__suffix {
  1451. display: none;
  1452. }
  1453. .el-input__inner {
  1454. background-color: #fff;
  1455. border-color: #fff !important;
  1456. color: #000 !important;
  1457. font-size: 14px;
  1458. cursor: text;
  1459. padding: 0 !important;
  1460. }
  1461. }
  1462. .winseaview-view {
  1463. padding: 0 0 20px;
  1464. }
  1465. .container {
  1466. overflow: scroll;
  1467. height: 93vh;
  1468. }
  1469. /deep/.ws-info-table[data-v-850a44a6] .el-form-item .el-form-item__label {
  1470. width: 130px;
  1471. }
  1472. </style>