salesContractExamine.vue 19 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733
  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="vertion-align: bottom; margin-right: 3px"
  19. src="../../../public/img/lujing.png"
  20. alt=""
  21. />返回</el-button
  22. >
  23. </el-col>
  24. </el-row>
  25. <div class="state">
  26. <h2>销售合同</h2>
  27. <p>【编号:{{ deptBudgetList.contractNo }}】</p>
  28. <span class="icon">&nbsp;&nbsp;{{ deptBudgetList.status }}</span>
  29. </div>
  30. <div class="center">
  31. <ws-form
  32. ref="deptBudgetList"
  33. :rules="mainReportAdd"
  34. :model="deptBudgetList"
  35. >
  36. <div class="remark">
  37. <h3>基本信息</h3>
  38. </div>
  39. <ws-info-table>
  40. <ws-form-item label="合同编号" span="1" prop="contractNo">
  41. <div class="unchanged">
  42. {{ deptBudgetList.contractNo }}
  43. </div>
  44. <span class="unchangeable">*</span>
  45. </ws-form-item>
  46. <ws-form-item label="运输方式" span="1" prop="shippingType">
  47. <div class="unchanged">
  48. {{ deptBudgetList.shippingType }}
  49. </div>
  50. </ws-form-item>
  51. <ws-form-item label="买方" span="1" prop="buyer">
  52. <div class="unchanged">
  53. {{ deptBudgetList.buyer }}
  54. </div>
  55. <span class="unchangeable">*</span>
  56. </ws-form-item>
  57. <ws-form-item label="结算方式" span="1" prop="settlementMethod">
  58. <div class="unchanged">
  59. {{ deptBudgetList.settlementMethod }}
  60. </div>
  61. </ws-form-item>
  62. <ws-form-item label="卖方" span="1" prop="seller">
  63. <div class="unchanged">
  64. {{ deptBudgetList.seller }}
  65. </div>
  66. <span class="unchangeable">*</span>
  67. </ws-form-item>
  68. <ws-form-item label="交货方式" span="1" prop="deliverType">
  69. <div class="unchanged">
  70. {{ deptBudgetList.deliverType1 }}
  71. </div>
  72. </ws-form-item>
  73. <ws-form-item label="买方电话" span="1" prop="buyerPhone">
  74. <div class="unchanged">
  75. {{ deptBudgetList.buyerPhone }}
  76. </div>
  77. </ws-form-item>
  78. <ws-form-item label="包装方式" span="1" prop="packingMethod">
  79. <div class="unchanged">
  80. {{ deptBudgetList.packingMethod }}
  81. </div>
  82. </ws-form-item>
  83. <ws-form-item label="卖方电话" span="1" prop="sellerPhone">
  84. <div class="unchanged">
  85. {{ deptBudgetList.sellerPhone }}
  86. </div>
  87. </ws-form-item>
  88. <ws-form-item label="验收方式" span="1" prop="acceptanceMethod">
  89. <div class="unchanged">
  90. {{ deptBudgetList.acceptanceMethod }}
  91. </div>
  92. </ws-form-item>
  93. <ws-form-item label="重量(吨)" span="1" prop="weight">
  94. <div class="unchanged">
  95. {{ deptBudgetList.weight }}
  96. </div>
  97. </ws-form-item>
  98. <ws-form-item
  99. label="交货日期(起)"
  100. span="1"
  101. prop="deliveryDateStart"
  102. >
  103. <div class="unchanged">
  104. {{ deptBudgetList.deliveryDateStart }}
  105. </div>
  106. </ws-form-item>
  107. <ws-form-item label="溢短装(%)" span="1" prop="overShort">
  108. <div class="unchanged">
  109. {{ deptBudgetList.overShort }}
  110. </div>
  111. </ws-form-item>
  112. <ws-form-item label="交货日期(止)" span="1" prop="deliveryDateEnd">
  113. <div class="unchanged">
  114. {{ deptBudgetList.deliveryDateEnd }}
  115. </div>
  116. </ws-form-item>
  117. <ws-form-item
  118. label="合同单价(元/吨)"
  119. span="1"
  120. prop="unitContractPrice"
  121. >
  122. <div class="unchanged">
  123. {{ deptBudgetList.unitContractPrice }}
  124. </div>
  125. <span class="unchangeable">*</span>
  126. </ws-form-item>
  127. <ws-form-item
  128. label="合同总价(元)"
  129. span="1"
  130. prop="totalContractPrice"
  131. >
  132. <div class="unchanged">
  133. {{ deptBudgetList.totalContractPrice }}
  134. </div>
  135. </ws-form-item>
  136. <ws-form-item label="货源所在地区" span="1" >
  137. <div class="unchanged">
  138. {{deptBudgetList. sourceProvince}}
  139. {{deptBudgetList. sourceCity}}
  140. {{deptBudgetList. sourceArea}}
  141. </div>
  142. </ws-form-item>
  143. <ws-form-item label="货源详细地址" span ="1" prop = "sourceGoods">
  144. <div class = "unchanged">
  145. {{deptBudgetList.sourceGoods}}
  146. </div>
  147. </ws-form-item>
  148. <ws-form-item label="交货地所在地区" span="1" >
  149. <div class="unchanged">
  150. {{deptBudgetList. deliveryProvince}}
  151. {{deptBudgetList.deliveryCity}}
  152. {{deptBudgetList.deliveryArea}}
  153. </div>
  154. </ws-form-item>
  155. <ws-form-item label="交货地详细地址" span="1" prop="placeDelivery">
  156. <div class = "unchanged">
  157. {{deptBudgetList.placeDelivery}}
  158. </div>
  159. </ws-form-item>
  160. <ws-form-item label="签订日期" span="1" prop="signingDate">
  161. <div class="unchanged">
  162. {{ deptBudgetList.signingDate }}
  163. </div>
  164. </ws-form-item>
  165. <ws-form-item label="最终实际交易量 (吨)" span="1" prop="finalTradingVolume">
  166. <div class="unchanged">
  167. {{deptBudgetList.finalTradingVolume}}
  168. </div>
  169. </ws-form-item>
  170. </ws-info-table>
  171. <!-- </base-card> -->
  172. <!--面试信息-->
  173. <div class="remark">
  174. <h3>货物信息</h3>
  175. </div>
  176. <ws-info-table>
  177. <ws-form-item label="货名" span="1" prop="waterContent">
  178. <div class="unchanged">
  179. {{ deptBudgetList.contractGoodsInfo.goodsName }}
  180. </div>
  181. <span class="unchangeable">*</span>
  182. </ws-form-item>
  183. <ws-form-item label="水分(%)<=" span="1" prop="intendedShipId">
  184. <div class="unchanged">
  185. {{ deptBudgetList.contractGoodsInfo.waterContent }}
  186. </div>
  187. </ws-form-item>
  188. <ws-form-item label="品级" span="1" prop="grade">
  189. <div class="unchanged">
  190. {{ deptBudgetList.contractGoodsInfo.grade }}
  191. </div>
  192. </ws-form-item>
  193. <ws-form-item label="杂质(%)<=" span="1" prop="impurity">
  194. <div class="unchanged">
  195. {{ deptBudgetList.contractGoodsInfo.impurity }}
  196. </div>
  197. </ws-form-item>
  198. <ws-form-item label="容重(克/升)<=" span="1" prop="bulkDensity">
  199. <div class="unchanged">
  200. {{ deptBudgetList.contractGoodsInfo.bulkDensity }}
  201. </div>
  202. </ws-form-item>
  203. <ws-form-item
  204. label="霉变粒(%)<="
  205. span="1"
  206. prop="mildewGrain"
  207. class="result"
  208. >
  209. <div class="unchanged">
  210. {{ deptBudgetList.contractGoodsInfo.mildewGrain }}
  211. </div>
  212. </ws-form-item>
  213. <ws-form-item label="热损伤(%)<=" span="1" prop="jiaorenli">
  214. <div class="unchanged">
  215. {{ deptBudgetList.contractGoodsInfo.jiaorenli }}
  216. </div>
  217. </ws-form-item>
  218. <ws-form-item
  219. label="不完善粒(%)<="
  220. span="1"
  221. prop="imperfectGrain"
  222. class="result"
  223. >
  224. <div class="unchanged">
  225. {{ deptBudgetList.contractGoodsInfo.imperfectGrain }}
  226. </div>
  227. </ws-form-item>
  228. </ws-info-table>
  229. <div class="remark">
  230. <h3>流程信息</h3>
  231. </div>
  232. <ws-info-table>
  233. <ws-form-item label="合同收入(元)" span="1" prop="goodsNameKey">
  234. <div class="unchanged">
  235. {{ deptBudgetList.contractProcessInfo.goodsNameKey }}
  236. </div>
  237. </ws-form-item>
  238. <ws-form-item label="已开发票(元)" span="1" prop="goodsName">
  239. <div class="unchanged">
  240. {{ deptBudgetList.contractProcessInfo.goodsName }}
  241. </div>
  242. </ws-form-item>
  243. <ws-form-item label="费用支出(元)" span="1" prop="waterContent">
  244. <div class="unchanged">
  245. {{ deptBudgetList.contractProcessInfo.waterContent }}
  246. </div>
  247. </ws-form-item>
  248. <ws-form-item label="未开发票(元)" span="1" prop="impurity">
  249. <div class="unchanged">
  250. {{ deptBudgetList.contractProcessInfo.impurity }}
  251. </div>
  252. </ws-form-item>
  253. <ws-form-item label="未回款(元)" span="1" prop="mildewGrain">
  254. <div class="unchanged">
  255. {{ deptBudgetList.contractProcessInfo.mildewGrain }}
  256. </div>
  257. </ws-form-item>
  258. <ws-form-item
  259. label="已完成发运量(吨)"
  260. span="1"
  261. prop="imperfectGrain"
  262. class="result"
  263. >
  264. <div class="unchanged">
  265. {{ deptBudgetList.contractProcessInfo.imperfectGrain }}
  266. </div>
  267. </ws-form-item>
  268. <!-- <ws-form-item label="双章原件回收情况" span="1" prop="grade">
  269. <div class="unchanged">
  270. {{ deptBudgetList.contractProcessInfo.grade }}
  271. </div>
  272. >{{ deptBudgetList.contractProcessInfo.imperfectGrain }}
  273. </ws-form-item> -->
  274. <ws-form-item label="双章原件回收情况" span="1" prop="grade">
  275. <div class="unchanged">
  276. {{ deptBudgetList.contractProcessInfo.grade }}
  277. </div>
  278. </ws-form-item>
  279. </ws-info-table>
  280. <div class="remark">
  281. <h3>备注信息</h3>
  282. <div class=" beizhu">
  283. {{ deptBudgetList.remarks }}
  284. </div>
  285. </div>
  286. <img :src="deptBudgetList.addressUrl" alt="" />
  287. <!-- </base-card> -->
  288. </ws-form>
  289. <div style="text-align: right; padding: 10px">
  290. <el-button
  291. class="bg-bottom"
  292. type="primary"
  293. size="small"
  294. @click="returnsales()"
  295. >关闭</el-button
  296. >
  297. </div>
  298. </div>
  299. </div>
  300. </template>
  301. <script>
  302. import {
  303. packList,
  304. xiala,
  305. examineList,
  306. } from '@/model/contarct/index'
  307. import { dayjs } from 'base-core-lib'
  308. import WsUpload from '@/components/WsUpload'
  309. export default {
  310. name: 'viewSpareMoney',
  311. components: {
  312. WsUpload,
  313. },
  314. watch: {
  315. vesselId(val) {
  316. this.getVesselData()
  317. },
  318. isShow(val) {
  319. this.showType = val
  320. },
  321. },
  322. data() {
  323. return {
  324. //弹出框
  325. dialogViewSpareMoney: false,
  326. dialogApproveFormVisible: false,
  327. // 船舶类型
  328. monetaryKey: null,
  329. // 表格显示数据
  330. tableDate: [],
  331. // 是否显示
  332. showType: true,
  333. // 年
  334. year: '',
  335. // 提交类型
  336. submitType: true,
  337. tableData: [],
  338. ruleDeptBudget: [],
  339. deptBudgetList: {
  340. contractProcessInfo: {},
  341. contractGoodsInfo: {},
  342. },
  343. mainReportAdd: {},
  344. list: {},
  345. }
  346. },
  347. activated() {
  348. this.status = this.$route.query.status
  349. this.loaddata()
  350. this.showType = this.isShow
  351. // this.examineList()
  352. },
  353. methods: {
  354. loaddata() {
  355. // 数据
  356. examineList({ id: this.$route.query.id })
  357. .toPromise()
  358. .then((response) => {
  359. this.deptBudgetList = response
  360. if(this.deptBudgetList.deliverType == 1){
  361. this.deptBudgetList.deliverType1 = "我方自提"
  362. }else if(this.deptBudgetList.deliverType == 2){
  363. this.deptBudgetList.deliverType1 = "对方送货"
  364. }
  365. })
  366. // 包装方式
  367. packList({ constId: 'CON1' })
  368. .toPromise()
  369. .then((response) => {
  370. this.packtypeList = response
  371. })
  372. // 验收方式
  373. this.getUnitList()
  374. // 货名
  375. packList({ constId: 'CON2' })
  376. .toPromise()
  377. .then((response) => {
  378. this.goodnameList = response
  379. })
  380. // 品级
  381. packList({ constId: 'CON3' })
  382. .toPromise()
  383. .then((response) => {
  384. this.gradeList = response
  385. })
  386. // 双章
  387. packList({ constId: 'CON4' })
  388. .toPromise()
  389. .then((response) => {
  390. this.ChapterTwoList = response
  391. })
  392. },
  393. getUnitList() {
  394. xiala({
  395. compId: sessionStorage.getItem('ws-pf_compId'),
  396. constCode: 'TYPEYAN',
  397. })
  398. .toPromise()
  399. .then((response) => {
  400. this.unitList = response
  401. let currItem
  402. this.unitList.forEach((item, index, arr) => {
  403. item.flag = 'delete'
  404. if (this.vModel == item.constKey) {
  405. currItem = item
  406. }
  407. })
  408. //
  409. if (currItem) {
  410. this.selectContract(currItem.constValue)
  411. }
  412. })
  413. },
  414. // 关闭 dialog时 处理文件url 初始化upload组件
  415. handleClose() {
  416. this.dialogViewSpareMoney = false
  417. },
  418. handleExamine() {},
  419. approve() {},
  420. returnsales() {
  421. this.$router.push({ path: 'salesContract' })
  422. },
  423. },
  424. }
  425. </script>
  426. <style lang="scss" scoped>
  427. /deep/.ws-info-table .el-form-item .el-form-item__content {
  428. padding: 0 25px;
  429. }
  430. /deep/.ws-info-table .el-form-item {
  431. border-right: 1px solid #cdd2dc;
  432. border-bottom: 1px solid #cdd2dc;
  433. }
  434. .title {
  435. position: relative;
  436. }
  437. .title::before {
  438. content: '';
  439. display: inline-block;
  440. width: 5px;
  441. height: 30px;
  442. background: #5473e8;
  443. position: absolute;
  444. left: 0;
  445. }
  446. .el-button--primary {
  447. background-color: #5878e8;
  448. border-color: #5878e8;
  449. }
  450. .el-col {
  451. background: #f6f7fc;
  452. }
  453. .readonly {
  454. position: relative;
  455. }
  456. .readonly:after {
  457. content: '*';
  458. color: #ff2727;
  459. position: absolute;
  460. right: 8px;
  461. z-index: 10;
  462. top: 21%;
  463. font-size: 20px;
  464. }
  465. /deep/.ws-info-table .el-form-item .el-form-item__content {
  466. padding: 0 25px;
  467. border-left: 1px solid #cdd2dc;
  468. background: #fafbfc;
  469. }
  470. /deep/.ws-info-table .el-form-item .el-form-item__label {
  471. width: 140px;
  472. text-align: center;
  473. background: #f0f2f6;
  474. // border: 1px solid #cdd2dc;
  475. }
  476. .button-container {
  477. display: flex;
  478. flex-wrap: nowrap;
  479. justify-content: space-between;
  480. align-items: center;
  481. background-color: #fff;
  482. width: 100%;
  483. height: 50px;
  484. padding: 0 10px;
  485. & > div {
  486. margin-left: 10px;
  487. display: flex;
  488. flex-wrap: nowrap;
  489. flex-direction: row;
  490. & > span {
  491. line-height: 50px;
  492. }
  493. }
  494. /deep/.auditFlow-box {
  495. position: unset;
  496. margin-left: 10px;
  497. &/deep/.auditFlow-icon {
  498. width: auto;
  499. padding-right: 30px;
  500. }
  501. &/deep/.auditFlow-main {
  502. position: absolute;
  503. }
  504. }
  505. }
  506. .box-app {
  507. display: inline-block;
  508. margin-left: 30px;
  509. line-height: 50px;
  510. }
  511. /deep/.el-dialog {
  512. .el-form-item {
  513. margin-bottom: 0 !important;
  514. .el-input--medium {
  515. textarea {
  516. min-height: 100px !important;
  517. }
  518. }
  519. }
  520. }
  521. .collapse-bottom {
  522. margin-bottom: 20px;
  523. }
  524. .input-main .textarea .el-textarea__inner {
  525. width: 100%;
  526. z-index: 1;
  527. }
  528. .bg-left {
  529. padding-left: 30px;
  530. }
  531. .bg-right {
  532. padding: 10px;
  533. text-align: right;
  534. }
  535. .bg-bottom {
  536. margin: 6px 0px;
  537. }
  538. .wenzi {
  539. width: 900px;
  540. margin: 0 auto;
  541. }
  542. .wenzi h3 {
  543. display: inline-block;
  544. left: 30px;
  545. }
  546. .wenzi p {
  547. display: inline-block;
  548. }
  549. .center {
  550. width: 900px;
  551. margin: 0 auto;
  552. }
  553. .el-form-item {
  554. width: 50%;
  555. }
  556. .el-form-item__label {
  557. text-align: center;
  558. }
  559. /*.crt-main .textarea /deep/ .el-form-item__label {*/
  560. /* height: 82px;*/
  561. /*}*/
  562. // 控制select为只读的时候显示样式
  563. .hide-sel {
  564. .el-input__inner {
  565. border: 0px;
  566. }
  567. .el-icon-arrow-up {
  568. display: none;
  569. }
  570. .el-textarea__inner {
  571. background-color: #fff !important;
  572. border: 0;
  573. }
  574. .el-date-editor {
  575. i {
  576. display: none;
  577. }
  578. }
  579. .is-disabled {
  580. .el-input__inner:hover {
  581. background-color: #fff !important;
  582. border: 0;
  583. }
  584. color: #606266;
  585. .el-input__inner {
  586. background-color: #fff !important;
  587. border: 0;
  588. color: #606266;
  589. }
  590. .el-textarea__inner {
  591. background-color: #fff !important;
  592. border: 0;
  593. color: #606266;
  594. }
  595. }
  596. }
  597. // 控制select为只读的时候显示样式
  598. /deep/.ws-class-table-col {
  599. height: auto;
  600. padding: 0px 2px;
  601. /deep/.el-input__inner {
  602. padding: 0px 2px;
  603. }
  604. }
  605. /deep/.is-disabled {
  606. .el-input__prefix,
  607. .el-input__suffix {
  608. display: none;
  609. }
  610. .el-input__inner {
  611. background-color: #fff;
  612. border-color: #fff !important;
  613. color: #000 !important;
  614. font-size: 14px;
  615. cursor: text;
  616. padding: 0 !important;
  617. }
  618. }
  619. .winseaview-view {
  620. padding: 10px 0 20px;
  621. }
  622. .container {
  623. overflow: scroll;
  624. height: 93vh;
  625. }
  626. .state {
  627. width: 900px;
  628. margin: 0 auto;
  629. }
  630. .state h2,
  631. .state p {
  632. display: inline-block;
  633. }
  634. .state p {
  635. display: inline-block;
  636. margin-left: 10px;
  637. width: 170px;
  638. height: 20px;
  639. font-size: 14px;
  640. font-family: PingFangSC-Regular, PingFang SC;
  641. font-weight: 400;
  642. color: #000000;
  643. line-height: 20px;
  644. }
  645. .icon {
  646. display: inline-block;
  647. width: 60px;
  648. height: 24px;
  649. background: #ecfeff;
  650. border-radius: 12px;
  651. border: 1px solid #50cad4;
  652. position: relative;
  653. font-family: PingFangSC-Regular, PingFang SC;
  654. font-size: 14px;
  655. color: #50cad4;
  656. line-height: 24px;
  657. }
  658. //*号
  659. .unchangeable {
  660. position: absolute;
  661. width: 9px;
  662. height: 22px;
  663. font-size: 16px;
  664. font-family: PingFangSC-Medium, PingFang SC;
  665. font-weight: 500;
  666. color: #ff2727;
  667. line-height: 22px;
  668. display: inline-block;
  669. right: 14px;
  670. }
  671. /deep/.el-input,
  672. /deep/.el-date-editor {
  673. font-size: 13px;
  674. width: 232px;
  675. left: 21px;
  676. }
  677. /deep/.el-textarea {
  678. width: 900px;
  679. margin: 0px;
  680. }
  681. /deep/el-date-editor--date {
  682. width: 200px;
  683. }
  684. /deep/.beizhu {
  685. margin: 0 auto;
  686. font-size: 14px;
  687. color: #afb5cb;
  688. margin-left: 20px;
  689. }
  690. .unchanged {
  691. position: absolute;
  692. left: 37px;
  693. width: 900px;
  694. height: 14px;
  695. font-size: 14px;
  696. font-family: PingFangSC-Regular, PingFang SC;
  697. font-weight: 400;
  698. color: #afb5cb;
  699. line-height: 14px;
  700. }
  701. /deep/.ws-info-table[data-v-850a44a6] .el-form-item .el-form-item__label {
  702. width: 130px;
  703. }
  704. /deep/.el-input--small .el-input__inner {
  705. height: 32px;
  706. line-height: 32px;
  707. width: 232px;
  708. }
  709. </style>