taskForm.vue 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133
  1. <template>
  2. <view class="">
  3. <u-sticky offset-top="50">
  4. <u-subsection fontSize='25' mode='subsection' :list="list" :current="curNow" @change="sectionChange"
  5. activeColor='#157A2C'></u-subsection>
  6. </u-sticky>
  7. <view v-show='curNow===0'>
  8. <u--form style="margin: 0 20px;" labelPosition="left" :model="form" ref="uForm" labelWidth='140rpx'>
  9. <u-form-item label="发货单据编码" prop="docNo" borderBottom>
  10. <u--input style="width: 100%;" disabled v-model="form.docNo"></u--input>
  11. </u-form-item>
  12. <u-form-item label="订单编码" prop="orderNo" borderBottom>
  13. <u--input style="width: 100%;" disabled v-model="form.orderNo"></u--input>
  14. </u-form-item>
  15. <u-form-item label="客户名称" prop="contactName" borderBottom>
  16. <u--input style="width: 100%;" disabled v-model="form.contactName"></u--input>
  17. </u-form-item>
  18. <u-form-item label="客户联系人" prop="linkName" borderBottom>
  19. <u--input style="width: 100%;" disabled v-model="form.linkName"></u--input>
  20. </u-form-item>
  21. <u-form-item label="客户电话" prop="linkPhone" borderBottom>
  22. <u--input style="width: 100%;" disabled v-model="form.linkPhone"></u--input>
  23. </u-form-item>
  24. <u-form-item label="客户地址" prop="receiveAddress" borderBottom>
  25. <u--input style="width: 100%;" disabled v-model="form.receiveAddress"></u--input>
  26. </u-form-item>
  27. <u-form-item label="车牌号" prop="carNo" borderBottom>
  28. <u--input style="width: 100%;" disabled v-model="form.carNo"></u--input>
  29. </u-form-item>
  30. </u--form>
  31. </view>
  32. <view v-show='curNow===1'>
  33. <view v-for="(item,index) in form['productList']" :key="index">
  34. <u--form style="margin: 0 20px;" labelPosition="left" :model="form" ref="uForm" labelWidth='140rpx'>
  35. <u-row v-for="(key,index1) in tableField" :key="index1">
  36. <u-col :span="12">
  37. <u-form-item :label="key.label" prop="categoryName" borderBottom>
  38. <u--input style="width: 100%;" :title='item[key.field]' disabled
  39. v-model="item[key.field]"></u--input>
  40. </u-form-item>
  41. </u-col>
  42. </u-row>
  43. </u--form>
  44. <u-gap height="40" bgColor="#f0f0f0"></u-gap>
  45. </view>
  46. </view>
  47. </view>
  48. </template>
  49. <script>
  50. import {
  51. getSaleOrderSendRecordDetailAPI
  52. } from '@/api/wt/index.js'
  53. export default {
  54. props: {
  55. businessId: {
  56. default: ''
  57. },
  58. taskDefinitionKey: {
  59. default: ''
  60. },
  61. },
  62. data() {
  63. return {
  64. form: {},
  65. tableField: [{
  66. label: '名称',
  67. field: 'productName',
  68. },
  69. {
  70. label: '编码',
  71. field: 'productCode',
  72. },
  73. {
  74. label: '类型',
  75. field: 'productCategoryName',
  76. },
  77. {
  78. label: '客户代号',
  79. field: 'customerMark',
  80. },
  81. {
  82. label: '单价',
  83. field: 'singlePrice',
  84. },
  85. {
  86. label: '数量',
  87. field: 'totalCount',
  88. },
  89. {
  90. label: '合计',
  91. field: 'totalPrice',
  92. },
  93. ],
  94. list: ['发货信息', '产品清单'],
  95. curNow: 0
  96. }
  97. },
  98. async mounted() {
  99. await this.getDetailData(this.businessId);
  100. },
  101. methods: {
  102. sectionChange(index) {
  103. this.curNow = index;
  104. },
  105. async getDetailData(id) {
  106. const data = await getSaleOrderSendRecordDetailAPI(id);
  107. this.form = data;
  108. },
  109. //
  110. getTableValue() {
  111. return new Promise(async (resolve, reject) => {
  112. try {
  113. await this.$refs.uForm[0].validate()
  114. resolve(this.form)
  115. } catch {
  116. reject(null)
  117. }
  118. })
  119. },
  120. }
  121. }
  122. </script>
  123. <style>
  124. </style>