Browse Source

不含税单价

yusheng 1 year ago
parent
commit
3cffa819f1

+ 21 - 0
src/BIZComponents/inventoryTable.vue

@@ -264,6 +264,20 @@
           </el-input>
         </el-form-item>
       </template>
+      <template v-slot:notaxSinglePrice="scope">
+        <el-form-item
+          style="margin-bottom: 20px"
+          :prop="'datasource.' + scope.$index + '.notaxSinglePrice'"
+        >
+          <el-input
+            v-model="scope.row.notaxSinglePrice"
+            placeholder="请输入"
+            type="number"
+          >
+            <template slot="append">元</template>
+          </el-input>
+        </el-form-item>
+      </template>
       <template v-slot:taxRate="scope">
         <el-form-item
           style="margin-bottom: 20px"
@@ -822,6 +836,13 @@
             slot: 'taxRate',
             align: 'center'
           },
+          {
+            width: 180,
+            prop: 'notaxSinglePrice',
+            label: '不含税单价',
+            slot: 'notaxSinglePrice',
+            align: 'center'
+          },
           {
             width: 160,
             prop: 'discountSinglePrice',

+ 6 - 0
src/BIZComponents/inventoryTableDetails.vue

@@ -277,6 +277,12 @@
             },
             align: 'center'
           },
+          {
+            width: 160,
+            prop: 'notaxSinglePrice',
+            label: '不含税单价',
+            align: 'center'
+          },
           {
             width: 160,
             prop: 'discountSinglePrice',

+ 22 - 0
src/views/bpm/handleTask/components/inquiryManage/inquiryTable.vue

@@ -218,6 +218,21 @@
           </el-input>
         </el-form-item>
       </template>
+      <template v-slot:notaxSinglePrice="scope">
+        <el-form-item
+          style="margin-bottom: 20px"
+          :prop="'datasource.' + scope.$index + '.notaxSinglePrice'"
+        >
+          <el-input
+            v-model="scope.row.notaxSinglePrice"
+            placeholder="请输入"
+            type="number"
+            :disabled="status == 'Detail'"
+          >
+            <template slot="append">元</template>
+          </el-input>
+        </el-form-item>
+      </template>
       <template v-slot:totalCount="scope">
         <el-form-item
           :prop="'resultList.' + scope.$index + '.totalCount'"
@@ -486,6 +501,13 @@
       headerSlot: 'isRequired',
       align: 'center'
     },
+    {
+      width: 180,
+      prop: 'notaxSinglePrice',
+      label: '不含税单价',
+      slot: 'notaxSinglePrice',
+      align: 'center'
+    },
     {
       minWidth: 80,
       prop: 'totalPrice',

+ 6 - 0
src/views/bpm/handleTask/components/purchaseOrder/accountstatement/inventoryTable.vue

@@ -192,6 +192,12 @@ export default {
             align: 'center',
             slot: 'discountSinglePrice'
           },
+          {
+              width: 150,
+              prop: 'notaxSinglePrice',
+              label: '不含税单价',
+              align: 'center'
+            },
           {
             minWidth: 120,
             prop: 'discountTotalPrice',

+ 6 - 0
src/views/bpm/handleTask/components/purchaseOrder/detailDialog.vue

@@ -487,6 +487,12 @@
             },
             align: 'center'
           },
+          {
+            width: 150,
+            prop: 'notaxSinglePrice',
+            label: '不含税单价',
+            align: 'center'
+          },
           {
             width: 160,
             prop: 'discountSinglePrice',

+ 550 - 534
src/views/bpm/handleTask/components/purchaseOrder/inventoryTable.vue

@@ -85,7 +85,7 @@
               v-model="scope.row.totalCount"
               type="number"
               placeholder="请输入"
-              @input="changeCount(scope.row,scope.$index)"
+              @input="changeCount(scope.row, scope.$index)"
             ></el-input>
           </el-form-item>
         </template>
@@ -258,13 +258,13 @@
             :prop="'datasource.' + scope.$index + '.technicalDrawings'"
           >
             <fileMain v-model="scope.row.technicalDrawings"></fileMain>
-<!--            <fileUpload-->
-<!--              :disabled="isContractId"-->
-<!--              v-model="scope.row.technicalDrawings"-->
-<!--              module="main"-->
-<!--              :showLib="false"-->
-<!--              :limit="5"-->
-<!--            />-->
+            <!--            <fileUpload-->
+            <!--              :disabled="isContractId"-->
+            <!--              v-model="scope.row.technicalDrawings"-->
+            <!--              module="main"-->
+            <!--              :showLib="false"-->
+            <!--              :limit="5"-->
+            <!--            />-->
           </el-form-item>
         </template>
         <template v-slot:guaranteePeriodDeadline="scope">
@@ -335,571 +335,587 @@
   </el-form>
 </template>
 <script>
-import {numberReg} from 'ele-admin';
-import productList from '@/views/bpm/handleTask/components/quotation/product-list.vue';
-import dictMixins from '@/mixins/dictMixins';
-import fileUpload from '@/components/upload/fileUpload';
-import headList from '@/components/headList';
-import fileMain from "@/components/addDoc/index.vue";
+  import { numberReg } from 'ele-admin';
+  import productList from '@/views/bpm/handleTask/components/quotation/product-list.vue';
+  import dictMixins from '@/mixins/dictMixins';
+  import fileUpload from '@/components/upload/fileUpload';
+  import headList from '@/components/headList';
+  import fileMain from '@/components/addDoc/index.vue';
 
-const dayjs = require('dayjs');
+  const dayjs = require('dayjs');
 
-export default {
-  mixins: [dictMixins],
-  props: {
-    isContractId: {
-      type: Boolean,
-      default: false
-    },
-    pricingWay: {
-      type: [Number, String],
-      default: 1
-    }
-  },
-  components: {
-    fileMain,
-    productList, headList,
-    fileUpload
-  },
-
-  data() {
-    const defaultForm = {
-      key: null,
-      endTime: '',
-      isFirst: 0,
-      name: '',
-      startTime: '',
-      workHour: '',
-      technicalDrawings: []
-    };
-    return {
-      discountTotalPrice: 0.0,
-      allPrice: 0.0,
-      numberReg,
-      defaultForm,
-      contractStartDate: new Date(),
-      form: {
-        datasource: []
+  export default {
+    mixins: [dictMixins],
+    props: {
+      isContractId: {
+        type: Boolean,
+        default: false
       },
-      rules: {},
+      pricingWay: {
+        type: [Number, String],
+        default: 1
+      }
+    },
+    components: {
+      fileMain,
+      productList,
+      headList,
+      fileUpload
+    },
 
-      columns: [
-        {
-          width: 45,
-          type: 'index',
-          columnKey: 'index',
-          align: 'center',
-          fixed: 'left'
-        },
-        {
-          width: 200,
-          prop: 'productName',
-          label: '名称',
-          slot: 'productName',
-          headerSlot: 'headerProductName',
-          align: "center"
-        },
-        {
-          width: 120,
-          prop: 'productCode',
-          label: '编码',
-          slot: 'productCode',
-          align: "center"
-        },
-        {
-          width: 200,
-          prop: 'productCategoryName',
-          label: '类型',
-          slot: 'productCategoryName',
-          align: "center"
-        },
-        {
-          width: 160,
-          prop: 'productBrand',
-          label: '牌号',
-          slot: 'productBrand',
-          align: "center"
-        },
-        {
-          width: 120,
-          prop: 'modelType',
-          label: '型号',
-          slot: 'modelType',
-          align: "center"
-        },
-        {
-          width: 120,
-          prop: 'supplierMark',
-          label: '供应商代号',
-          // headerSlot: 'headerSupplierMark',
-          slot: 'supplierMark',
-          align: "center"
-        },
-        {
-          width: 120,
-          prop: 'specification',
-          label: '规格',
-          slot: 'specification',
-          align: "center"
+    data() {
+      const defaultForm = {
+        key: null,
+        endTime: '',
+        isFirst: 0,
+        name: '',
+        startTime: '',
+        workHour: '',
+        technicalDrawings: []
+      };
+      return {
+        discountTotalPrice: 0.0,
+        allPrice: 0.0,
+        numberReg,
+        defaultForm,
+        contractStartDate: new Date(),
+        form: {
+          datasource: []
         },
+        rules: {},
 
-        {
-          width: 150,
-          prop: 'totalCount',
-          label: '数量',
-          slot: 'totalCount',
-          headerSlot: 'headerTotalCount',
-          align: "center"
-
-        },
-        {
-          width: 80,
-          prop: 'measuringUnit',
-          label: '计量单位',
-          slot: 'measuringUnit',
-          align: "center"
-        },
-        {
-          width: 120,
-          prop: 'singleWeight',
-          label: '单重',
-          slot: 'singleWeight',
-          align: "center"
-        },
-        {
-          width: 120,
-          prop: 'totalWeight',
-          label: '总重',
-          slot: 'totalWeight',
-          align: "center"
-        },
-        {
-          width: 120,
-          prop: 'weightUnit',
-          label: '重量单位',
-          slot: 'weightUnit',
-          align: "center"
-        },
-        {
-          width: 160,
-          prop: 'singlePrice',
-          label: '单价',
-          slot: 'singlePrice',
-          headerSlot: 'headerSinglePrice',
-          align: "center"
-        },
-        {
-          width: 160,
-          prop: 'discountSinglePrice',
-          label: '折后单价',
-          slot: 'discountSinglePrice',
-          align: "center",
+        columns: [
+          {
+            width: 45,
+            type: 'index',
+            columnKey: 'index',
+            align: 'center',
+            fixed: 'left'
+          },
+          {
+            width: 200,
+            prop: 'productName',
+            label: '名称',
+            slot: 'productName',
+            headerSlot: 'headerProductName',
+            align: 'center'
+          },
+          {
+            width: 120,
+            prop: 'productCode',
+            label: '编码',
+            slot: 'productCode',
+            align: 'center'
+          },
+          {
+            width: 200,
+            prop: 'productCategoryName',
+            label: '类型',
+            slot: 'productCategoryName',
+            align: 'center'
+          },
+          {
+            width: 160,
+            prop: 'productBrand',
+            label: '牌号',
+            slot: 'productBrand',
+            align: 'center'
+          },
+          {
+            width: 120,
+            prop: 'modelType',
+            label: '型号',
+            slot: 'modelType',
+            align: 'center'
+          },
+          {
+            width: 120,
+            prop: 'supplierMark',
+            label: '供应商代号',
+            // headerSlot: 'headerSupplierMark',
+            slot: 'supplierMark',
+            align: 'center'
+          },
+          {
+            width: 120,
+            prop: 'specification',
+            label: '规格',
+            slot: 'specification',
+            align: 'center'
+          },
 
-        },
+          {
+            width: 150,
+            prop: 'totalCount',
+            label: '数量',
+            slot: 'totalCount',
+            headerSlot: 'headerTotalCount',
+            align: 'center'
+          },
+          {
+            width: 80,
+            prop: 'measuringUnit',
+            label: '计量单位',
+            slot: 'measuringUnit',
+            align: 'center'
+          },
+          {
+            width: 120,
+            prop: 'singleWeight',
+            label: '单重',
+            slot: 'singleWeight',
+            align: 'center'
+          },
+          {
+            width: 120,
+            prop: 'totalWeight',
+            label: '总重',
+            slot: 'totalWeight',
+            align: 'center'
+          },
+          {
+            width: 120,
+            prop: 'weightUnit',
+            label: '重量单位',
+            slot: 'weightUnit',
+            align: 'center'
+          },
+          {
+            width: 160,
+            prop: 'singlePrice',
+            label: '单价',
+            slot: 'singlePrice',
+            headerSlot: 'headerSinglePrice',
+            align: 'center'
+          },
+ 
+          {
+            width: 160,
+            prop: 'discountSinglePrice',
+            label: '折后单价',
+            slot: 'discountSinglePrice',
+            align: 'center'
+          },
 
-        {
-          width: 120,
-          prop: 'totalPrice',
-          label: '合计',
-          slot: 'totalPrice',
-          align: "center"
-        },
-        {
-          width: 120,
-          prop: 'discountTotalPrice',
-          label: '折后合计',
-          slot: 'discountTotalPrice',
-          align: "center"
-        },
-        // {
-        //   width: 80,
-        //   prop: 'deliveryDays',
-        //   label: '交期(天)',
-        //   slot: 'deliveryDays'
-        // },
-        {
-          width: 160,
-          prop: 'deliveryDeadline',
-          label: '交期截止日期',
-          slot: 'deliveryDeadline',
-          align: "center",
-          // headerSlot: 'headerDeadline'
-        },
-        {
-          width: 200,
-          prop: 'guaranteePeriod',
-          label: '质保期',
-          slot: 'guaranteePeriod',
-          align: "center"
-        },
-        {
-          width: 160,
-          prop: 'guaranteePeriodDeadline',
-          label: '	质保截止日期',
-          slot: 'guaranteePeriodDeadline',
-          align: "center"
-        },
-        // {
-        //   width: 120,
-        //   prop: 'guaranteePeriodUnitCode',
-        //   label: '',
-        //   slot: 'guaranteePeriodUnitCode'
-        // },
-        {
-          width: 130,
-          prop: 'technicalAnswerName',
-          label: '技术答疑人',
-          slot: 'technicalAnswerName',
-          align: "center"
-        },
-        {
-          width: 220,
-          prop: 'technicalParams',
-          label: '技术参数',
-          slot: 'technicalParams',
-          align: "center"
-        },
-        {
-          width: 240,
-          prop: 'technicalDrawings',
-          label: '技术图纸',
-          slot: 'technicalDrawings',
-          align: "center"
-        },
-        {
-          width: 220,
-          prop: 'remark',
-          label: '备注',
-          slot: 'remark',
-          align: "center"
-        },
-        {
-          columnKey: 'action',
-          label: '操作',
-          width: 120,
-          align: 'center',
-          resizable: false,
-          slot: 'action',
-          fixed: 'right',
-          showOverflowTooltip: true
-        }
-      ]
-    };
-  },
-  computed: {
-    canHandl() {
-      return this.form.datasource.length;
-    },
-    contractId() {
-      return this.$store.state.order.contractId;
-    }
-  },
-  methods: {
-    // 返回列表数据
-    getTableValue() {
-      let comitDatasource = this.form.datasource;
-      if (comitDatasource.length === 0) return [];
-      comitDatasource.forEach((v) => {
-        // v.totalPrice = (v.totalCount * v.singlePrice)?.toFixed(2) || 0;
-        v.guaranteePeriodUnitName = this.getDictValue(
-          '质保期单位',
-          v.guaranteePeriodUnitCode
-        );
-        v.technicalDrawings = Array.isArray(v.technicalDrawings)
-          ? v.technicalDrawings
-          : [];
-      });
-      return comitDatasource;
+          {
+            width: 120,
+            prop: 'totalPrice',
+            label: '合计',
+            slot: 'totalPrice',
+            align: 'center'
+          },
+          {
+            width: 120,
+            prop: 'discountTotalPrice',
+            label: '折后合计',
+            slot: 'discountTotalPrice',
+            align: 'center'
+          },
+          // {
+          //   width: 80,
+          //   prop: 'deliveryDays',
+          //   label: '交期(天)',
+          //   slot: 'deliveryDays'
+          // },
+          {
+            width: 160,
+            prop: 'deliveryDeadline',
+            label: '交期截止日期',
+            slot: 'deliveryDeadline',
+            align: 'center'
+            // headerSlot: 'headerDeadline'
+          },
+          {
+            width: 200,
+            prop: 'guaranteePeriod',
+            label: '质保期',
+            slot: 'guaranteePeriod',
+            align: 'center'
+          },
+          {
+            width: 160,
+            prop: 'guaranteePeriodDeadline',
+            label: '	质保截止日期',
+            slot: 'guaranteePeriodDeadline',
+            align: 'center'
+          },
+          // {
+          //   width: 120,
+          //   prop: 'guaranteePeriodUnitCode',
+          //   label: '',
+          //   slot: 'guaranteePeriodUnitCode'
+          // },
+          {
+            width: 130,
+            prop: 'technicalAnswerName',
+            label: '技术答疑人',
+            slot: 'technicalAnswerName',
+            align: 'center'
+          },
+          {
+            width: 220,
+            prop: 'technicalParams',
+            label: '技术参数',
+            slot: 'technicalParams',
+            align: 'center'
+          },
+          {
+            width: 240,
+            prop: 'technicalDrawings',
+            label: '技术图纸',
+            slot: 'technicalDrawings',
+            align: 'center'
+          },
+          {
+            width: 220,
+            prop: 'remark',
+            label: '备注',
+            slot: 'remark',
+            align: 'center'
+          },
+          {
+            columnKey: 'action',
+            label: '操作',
+            width: 120,
+            align: 'center',
+            resizable: false,
+            slot: 'action',
+            fixed: 'right',
+            showOverflowTooltip: true
+          }
+        ]
+      };
     },
-    getPrice() {
-      return [this.allPrice];
+    computed: {
+      canHandl() {
+        return this.form.datasource.length;
+      },
+      contractId() {
+        return this.$store.state.order.contractId;
+      }
     },
-    //改变数量
-    changeCount(row, index) {
-      if (this.detailType) {
+    methods: {
+      // 返回列表数据
+      getTableValue() {
+        let comitDatasource = this.form.datasource;
+        if (comitDatasource.length === 0) return [];
+        comitDatasource.forEach((v) => {
+          // v.totalPrice = (v.totalCount * v.singlePrice)?.toFixed(2) || 0;
+          v.guaranteePeriodUnitName = this.getDictValue(
+            '质保期单位',
+            v.guaranteePeriodUnitCode
+          );
+          v.technicalDrawings = Array.isArray(v.technicalDrawings)
+            ? v.technicalDrawings
+            : [];
+        });
+        return comitDatasource;
+      },
+      getPrice() {
+        return [this.allPrice];
+      },
+      //改变数量
+      changeCount(row, index) {
+        if (this.detailType) {
           return;
         }
-      this.singleWeightChange(row, index);
-      this.getTotalPrice()
-    },
-    //计算总金额
-    getTotalPrice() {
-      if (this.form.datasource.length) {
-        let sum = 0;
-        sum = this.getNumTotalPrice()
-        let allsum = sum.toFixed(2);
-        this.allPrice = allsum;
-        this.form.discountTotalPrice = allsum;
-        this.$store.commit('concact/setDiscountAmount', allsum);
-        this.$store.commit('order/setAllcountAmount', allsum);
-        this.$emit('orderDiscountAmount', this.allPrice)
-        this.$refs.table.reload()
-        return allsum;
-      } else {
-        this.allPrice = 0.0;
-        this.form.discountTotalPrice = 0.0;
-        this.$emit('orderDiscountAmount', 0)
-        return 0.0;
-      }
-    },
-    //计算总金额
-    getNumTotalPrice(sum = 0) {
-      this.form.datasource.forEach((r) => {
-        this.$set(r, 'discountSinglePrice', r.singlePrice ? Number(r.singlePrice) : '')
-        if (r.singlePrice && r.totalCount) {
-          r.totalPrice = this.getAllPrice(r);
-          r.discountTotalPrice = this.getDiscountTotalPrice(r);
-          this.$set(r, 'totalPrice', Number(r.totalPrice))
-          this.$set(r, 'discountTotalPrice', Number(r.discountTotalPrice))
-          sum += Number(r.totalPrice);
+        this.singleWeightChange(row, index);
+        this.getTotalPrice();
+      },
+      //计算总金额
+      getTotalPrice() {
+        if (this.form.datasource.length) {
+          let sum = 0;
+          sum = this.getNumTotalPrice();
+          let allsum = sum.toFixed(2);
+          this.allPrice = allsum;
+          this.form.discountTotalPrice = allsum;
+          this.$store.commit('concact/setDiscountAmount', allsum);
+          this.$store.commit('order/setAllcountAmount', allsum);
+          this.$emit('orderDiscountAmount', this.allPrice);
+          this.$refs.table.reload();
+          return allsum;
         } else {
-          this.$set(r, 'totalPrice', '')
-          this.$set(r, 'discountTotalPrice', '')
+          this.allPrice = 0.0;
+          this.form.discountTotalPrice = 0.0;
+          this.$emit('orderDiscountAmount', 0);
+          return 0.0;
         }
-      });
-      return sum
-    },
+      },
+      //计算总金额
+      getNumTotalPrice(sum = 0) {
+        this.form.datasource.forEach((r) => {
+          this.$set(
+            r,
+            'discountSinglePrice',
+            r.singlePrice ? Number(r.singlePrice) : ''
+          );
+          if (r.singlePrice && r.totalCount) {
+            r.totalPrice = this.getAllPrice(r);
+            r.discountTotalPrice = this.getDiscountTotalPrice(r);
+            this.$set(r, 'totalPrice', Number(r.totalPrice));
+            this.$set(r, 'discountTotalPrice', Number(r.discountTotalPrice));
+            sum += Number(r.totalPrice);
+          } else {
+            this.$set(r, 'totalPrice', '');
+            this.$set(r, 'discountTotalPrice', '');
+          }
+        });
+        return sum;
+      },
 
-    //计算单重
-    singleWeightChange(row, index) {
-      if (row && row.singleWeight && row.totalCount) {
-        row.totalWeight = (row.singleWeight * row.totalCount).toFixed(2) || 0;
-        this.$set(this.form.datasource[index], 'totalWeight', row.totalWeight)
-      }
-      if (this.pricingWay == 2) {
-        this.getTotalPrice(row)
-      }
-    },
-    //设置优惠总金额修改产品单价
-    discountInputByOrder(val) {
-      this.form.discountTotalPrice = val
-      //获取优惠金额和总计的差价
-      this.form.datasource.forEach((item) => {
-        if (val === 0) {
-          item.discountTotalPrice = 0
-          item.discountSinglePrice = 0
-          return
+      //计算单重
+      singleWeightChange(row, index) {
+        if (row && row.singleWeight && row.totalCount) {
+          row.totalWeight = (row.singleWeight * row.totalCount).toFixed(2) || 0;
+          this.$set(
+            this.form.datasource[index],
+            'totalWeight',
+            row.totalWeight
+          );
         }
-        if (!val) {
-          item.discountTotalPrice = item.totalPrice
-          item.discountSinglePrice = item.singlePrice
-          return
+        if (this.pricingWay == 2) {
+          this.getTotalPrice(row);
         }
-        //获取折让单价
-        item.discountSinglePrice = this.getDiscountSinglePrice(item)
-        item.discountTotalPrice = this.getDiscountTotalPrice(item)
-      })
-      this.$refs.table.reload()
-      this.$store.commit('concact/setDiscountAmount', val);
-    },
-    //获取折让单价
-    getDiscountSinglePrice(row) {
-      let num = Number(this.form.discountTotalPrice) / Number(this.allPrice) * Number(row.singlePrice)
-      return isNaN(num) ? '' : num
-    },
-    //获取合计
-    getAllPrice(row) {
-      let num = 0
-      switch (this.pricingWay) {
-        case 1: //按数量计价计算总金额
-          num = Number(row.singlePrice) * Number(row.totalCount)
-          break;
-        case 2 ://按重量计价计算总金额
-          num = Number(row.singlePrice) * Number(row.totalCount) * Number(row.singleWeight)
-          break;
-      }
-      return isNaN(num) ? '' : num.toFixed(2)
-    },
-    //获取折让合计
-    getDiscountTotalPrice(row) {
-      let num = 0
-      switch (this.pricingWay) {
-        case 1: //按数量计价计算折让合计
-          num = Number(row.discountSinglePrice) * Number(row.totalCount)
-          break;
-        case 2 ://按重量计价计算折让合计
-          num = Number(row.discountSinglePrice) * Number(row.totalCount) * Number(row.singleWeight)
-          break;
-      }
-      return isNaN(num) ? '' : num.toFixed(2)
-    },
-    //修改回显
-    putTableValue(data, contractStartDate) {
-      if (contractStartDate) {
-        this.contractStartDate = contractStartDate;
-      }
-      if (data) {
-        data.forEach((item) => {
-          item.guaranteePeriodUnitCode = item.guaranteePeriodUnitCode + '';
-
-          // if (item.deliveryDays) {
-          //   item['deliveryDeadline'] = this.setDay(item.deliveryDays);
-          // }
+      },
+      //设置优惠总金额修改产品单价
+      discountInputByOrder(val) {
+        this.form.discountTotalPrice = val;
+        //获取优惠金额和总计的差价
+        this.form.datasource.forEach((item) => {
+          if (val === 0) {
+            item.discountTotalPrice = 0;
+            item.discountSinglePrice = 0;
+            return;
+          }
+          if (!val) {
+            item.discountTotalPrice = item.totalPrice;
+            item.discountSinglePrice = item.singlePrice;
+            return;
+          }
+          //获取折让单价
+          item.discountSinglePrice = this.getDiscountSinglePrice(item);
+          item.discountTotalPrice = this.getDiscountTotalPrice(item);
         });
-        this.form.datasource = data;
-      }
-    },
-    //选择产品
-    handParent(row, index) {
-      let item = {
-        id: row.productCode
-      };
-      this.$refs.productListRef.open(item, index);
-    },
-    //选择技术人回调
-    changeAnswer(obj, idx) {
-      this.$set(this.form.datasource[idx], 'technicalAnswerId', obj.id);
-      this.$set(this.form.datasource[idx], 'technicalAnswerName', obj.name);
-    },
-    handHead(row, index) {
-      let item = {
-        id: row.technicalAnswerId
-      };
-      this.$refs.headRef.open(item, index);
-    },
-    //选择产品回调
-    changeParent(obj, idx) {
-      this.$set(this.form.datasource[idx], 'categoryName', obj.name);
-      this.$set(
-        this.form.datasource[idx],
-        'productCategoryId',
-        obj.categoryLevelId
-      );
-      this.$set(this.form.datasource[idx], 'productBrand', obj.brandNum);
-      this.$set(
-        this.form.datasource[idx],
-        'productCategoryName',
-        obj.categoryLevelPath
-      );
-      this.$set(this.form.datasource[idx], 'productCode', obj.code);
-      this.$set(this.form.datasource[idx], 'productName', obj.name);
-      this.$set(this.form.datasource[idx], 'modelType', obj.modelType);
-      this.$set(
-        this.form.datasource[idx],
-        'measuringUnit',
-        obj.measuringUnit
-      );
-      this.$set(
-        this.form.datasource[idx],
-        'specification',
-        obj.specification
-      );
-    },
-    remove(row) {
-      let index = this.form.datasource.findIndex((n) => n.key == row.key);
-      if (index !== -1) {
-        this.form.datasource.splice(index, 1);
-        this.setSort();
-      }
-    },
-    // 清空表格
-    restTable() {
-      this.form.datasource = [];
-    },
-    // 重新排序
-    setSort() {
-      this.form.datasource.forEach((n, index) => {
-        n.key = index + 1;
-      });
-    },
-    // 添加
-    handlAdd() {
-      let item = JSON.parse(JSON.stringify(this.defaultForm));
-      item.key = this.form.datasource.length + 1;
-      this.form.datasource.push(item);
-    },
-    setDeliveryDays(row, index, type) {
-      if (type == 'deliveryDays') {
+        this.$refs.table.reload();
+        this.$store.commit('concact/setDiscountAmount', val);
+      },
+      //获取折让单价
+      getDiscountSinglePrice(row) {
+        let num =
+          (Number(this.form.discountTotalPrice) / Number(this.allPrice)) *
+          Number(row.singlePrice);
+        return isNaN(num) ? '' : num;
+      },
+      //获取合计
+      getAllPrice(row) {
+        let num = 0;
+        switch (this.pricingWay) {
+          case 1: //按数量计价计算总金额
+            num = Number(row.singlePrice) * Number(row.totalCount);
+            break;
+          case 2: //按重量计价计算总金额
+            num =
+              Number(row.singlePrice) *
+              Number(row.totalCount) *
+              Number(row.singleWeight);
+            break;
+        }
+        return isNaN(num) ? '' : num.toFixed(2);
+      },
+      //获取折让合计
+      getDiscountTotalPrice(row) {
+        let num = 0;
+        switch (this.pricingWay) {
+          case 1: //按数量计价计算折让合计
+            num = Number(row.discountSinglePrice) * Number(row.totalCount);
+            break;
+          case 2: //按重量计价计算折让合计
+            num =
+              Number(row.discountSinglePrice) *
+              Number(row.totalCount) *
+              Number(row.singleWeight);
+            break;
+        }
+        return isNaN(num) ? '' : num.toFixed(2);
+      },
+      //修改回显
+      putTableValue(data, contractStartDate) {
+        if (contractStartDate) {
+          this.contractStartDate = contractStartDate;
+        }
+        if (data) {
+          data.forEach((item) => {
+            item.guaranteePeriodUnitCode = item.guaranteePeriodUnitCode + '';
+
+            // if (item.deliveryDays) {
+            //   item['deliveryDeadline'] = this.setDay(item.deliveryDays);
+            // }
+          });
+          this.form.datasource = data;
+        }
+      },
+      //选择产品
+      handParent(row, index) {
+        let item = {
+          id: row.productCode
+        };
+        this.$refs.productListRef.open(item, index);
+      },
+      //选择技术人回调
+      changeAnswer(obj, idx) {
+        this.$set(this.form.datasource[idx], 'technicalAnswerId', obj.id);
+        this.$set(this.form.datasource[idx], 'technicalAnswerName', obj.name);
+      },
+      handHead(row, index) {
+        let item = {
+          id: row.technicalAnswerId
+        };
+        this.$refs.headRef.open(item, index);
+      },
+      //选择产品回调
+      changeParent(obj, idx) {
+        this.$set(this.form.datasource[idx], 'categoryName', obj.name);
         this.$set(
-          this.form.datasource[index],
-          'deliveryDeadline',
-          this.setDay(row.deliveryDays)
+          this.form.datasource[idx],
+          'productCategoryId',
+          obj.categoryLevelId
         );
-      }
-      if (type == 'guaranteePeriod') {
-        let guaranteePeriodUnitName = this.guaranteePeriodUnit(
-          row.guaranteePeriodUnitCode
+        this.$set(this.form.datasource[idx], 'productBrand', obj.brandNum);
+        this.$set(
+          this.form.datasource[idx],
+          'productCategoryName',
+          obj.categoryLevelPath
         );
+        this.$set(this.form.datasource[idx], 'productCode', obj.code);
+        this.$set(this.form.datasource[idx], 'productName', obj.name);
+        this.$set(this.form.datasource[idx], 'modelType', obj.modelType);
         this.$set(
-          this.form.datasource[index],
-          'guaranteePeriodDeadline',
-          guaranteePeriodUnitName != 'second'
-            ? this.setDay(row.guaranteePeriod, guaranteePeriodUnitName)
-            : ''
+          this.form.datasource[idx],
+          'measuringUnit',
+          obj.measuringUnit
         );
-      }
-    },
-    guaranteePeriodUnit(code) {
-      return code == 3
-        ? 'day'
-        : code == 4
+        this.$set(
+          this.form.datasource[idx],
+          'specification',
+          obj.specification
+        );
+      },
+      remove(row) {
+        let index = this.form.datasource.findIndex((n) => n.key == row.key);
+        if (index !== -1) {
+          this.form.datasource.splice(index, 1);
+          this.setSort();
+        }
+      },
+      // 清空表格
+      restTable() {
+        this.form.datasource = [];
+      },
+      // 重新排序
+      setSort() {
+        this.form.datasource.forEach((n, index) => {
+          n.key = index + 1;
+        });
+      },
+      // 添加
+      handlAdd() {
+        let item = JSON.parse(JSON.stringify(this.defaultForm));
+        item.key = this.form.datasource.length + 1;
+        this.form.datasource.push(item);
+      },
+      setDeliveryDays(row, index, type) {
+        if (type == 'deliveryDays') {
+          this.$set(
+            this.form.datasource[index],
+            'deliveryDeadline',
+            this.setDay(row.deliveryDays)
+          );
+        }
+        if (type == 'guaranteePeriod') {
+          let guaranteePeriodUnitName = this.guaranteePeriodUnit(
+            row.guaranteePeriodUnitCode
+          );
+          this.$set(
+            this.form.datasource[index],
+            'guaranteePeriodDeadline',
+            guaranteePeriodUnitName != 'second'
+              ? this.setDay(row.guaranteePeriod, guaranteePeriodUnitName)
+              : ''
+          );
+        }
+      },
+      guaranteePeriodUnit(code) {
+        return code == 3
+          ? 'day'
+          : code == 4
           ? 'month'
           : code == 5
-            ? 'year'
-            : 'second';
-    },
-    setDay(addDay, dateType = 'day') {
-      return dayjs(this.contractStartDate || new Date())
-        .add(addDay, dateType)
-        .format('YYYY-MM-DD');
-    },
+          ? 'year'
+          : 'second';
+      },
+      setDay(addDay, dateType = 'day') {
+        return dayjs(this.contractStartDate || new Date())
+          .add(addDay, dateType)
+          .format('YYYY-MM-DD');
+      },
 
-    validateForm(callback) {
-      //开始表单校验
-      this.$refs.form.validate((valid) => {
-        callback(valid);
-      });
+      validateForm(callback) {
+        //开始表单校验
+        this.$refs.form.validate((valid) => {
+          callback(valid);
+        });
+      }
     }
-  }
-};
+  };
 </script>
 <style lang="scss" scoped>
-.headbox {
-  display: flex;
-  justify-content: space-between;
-  align-items: center;
+  .headbox {
+    display: flex;
+    justify-content: space-between;
+    align-items: center;
 
-  .amount {
-    font-size: 14px;
-    font-weight: bold;
-    padding-right: 30px;
+    .amount {
+      font-size: 14px;
+      font-weight: bold;
+      padding-right: 30px;
+    }
   }
-}
 
-.time-form .el-form-item {
-  margin-bottom: 0 !important;
-}
+  .time-form .el-form-item {
+    margin-bottom: 0 !important;
+  }
 
-::v-deep .period {
-  display: flex;
+  ::v-deep .period {
+    display: flex;
 
-  .borderleftnone {
-    .el-input--medium .el-input__inner {
-      border-top-right-radius: 0;
-      border-bottom-right-radius: 0;
+    .borderleftnone {
+      .el-input--medium .el-input__inner {
+        border-top-right-radius: 0;
+        border-bottom-right-radius: 0;
+      }
     }
-  }
 
-  .borderrightnone {
-    .el-input--medium .el-input__inner {
-      border-top-left-radius: 0;
-      border-bottom-left-radius: 0;
+    .borderrightnone {
+      .el-input--medium .el-input__inner {
+        border-top-left-radius: 0;
+        border-bottom-left-radius: 0;
+      }
     }
   }
-}
 
-::v-deep .time-form tbody > tr:hover > td {
-  background-color: transparent !important;
-}
+  ::v-deep .time-form tbody > tr:hover > td {
+    background-color: transparent !important;
+  }
 
-::v-deep .time-form .el-table tr {
-  background-color: #ffffff;
-}
+  ::v-deep .time-form .el-table tr {
+    background-color: #ffffff;
+  }
 
-.pricebox {
-  display: flex;
-  justify-content: flex-start;
-  align-items: center;
-  font-weight: bold;
-}
+  .pricebox {
+    display: flex;
+    justify-content: flex-start;
+    align-items: center;
+    font-weight: bold;
+  }
 </style>

+ 590 - 508
src/views/bpm/handleTask/components/purchaseOrder/invoice/inventoryTable.vue

@@ -29,18 +29,18 @@
           :prop="'datasource.' + $index + '.technicalDrawings'"
         >
           <fileMain v-model="row.technicalDrawings" type="view"></fileMain>
-<!--          <div v-if="row.technicalDrawings && row.technicalDrawings?.length">-->
-<!--            <el-link-->
-<!--              v-for="link in row.technicalDrawings"-->
-<!--              :key="link.id"-->
-<!--              type="primary"-->
-<!--              :underline="false"-->
-<!--              @click="downloadFile(link)"-->
-<!--            >-->
-<!--              {{ link.name }}-->
-<!--            </el-link-->
-<!--            >-->
-<!--          </div>-->
+          <!--          <div v-if="row.technicalDrawings && row.technicalDrawings?.length">-->
+          <!--            <el-link-->
+          <!--              v-for="link in row.technicalDrawings"-->
+          <!--              :key="link.id"-->
+          <!--              type="primary"-->
+          <!--              :underline="false"-->
+          <!--              @click="downloadFile(link)"-->
+          <!--            >-->
+          <!--              {{ link.name }}-->
+          <!--            </el-link-->
+          <!--            >-->
+          <!--          </div>-->
         </el-form-item>
       </template>
       <template v-slot:remark="{ row, $index }">
@@ -76,21 +76,27 @@
           style="margin-bottom: 20px"
           :prop="'datasource.' + scope.$index + '.sendTotalWeight'"
           :rules="[
-            { required: [2,3].includes(Number(sourceType))&&pricingWay==2, message: '请输入数字', trigger: 'blur' }
+            {
+              required: [2, 3].includes(Number(sourceType)) && pricingWay == 2,
+              message: '请输入数字',
+              trigger: 'blur'
+            }
           ]"
         >
-          <el-input v-model="scope.row.sendTotalWeight" :disabled="!outsourceSendCode" @blur="changeSendTotalWeight(scope.$index)"
-                    style="width: 60%; margin-right: 10px">
-
+          <el-input
+            v-model="scope.row.sendTotalWeight"
+            :disabled="!outsourceSendCode"
+            @blur="changeSendTotalWeight(scope.$index)"
+            style="width: 60%; margin-right: 10px"
+          >
           </el-input>
           <el-button
             size="small"
             type="primary"
-            v-if="[2,3].includes(Number(sourceType))&&outsourceSendCode"
-            @click.native="(e)=>handleOutBound(e,scope.row,scope.$index)"
-          >选择
-          </el-button
-          >
+            v-if="[2, 3].includes(Number(sourceType)) && outsourceSendCode"
+            @click.native="(e) => handleOutBound(e, scope.row, scope.$index)"
+            >选择
+          </el-button>
         </el-form-item>
       </template>
       <template v-slot:warehouseId="scope">
@@ -123,7 +129,13 @@
         <span class="is-required">{{ column.label }}</span>
       </template>
       <template v-slot:headerTotalCount="{ column }">
-        <span :class="{'is-required':[2,3].includes(Number(sourceType))&&pricingWay==2}">{{ column.label }}</span>
+        <span
+          :class="{
+            'is-required':
+              [2, 3].includes(Number(sourceType)) && pricingWay == 2
+          }"
+          >{{ column.label }}</span
+        >
       </template>
 
       <!-- 操作列 -->
@@ -148,235 +160,244 @@
       @changeParent="changeParent"
     ></product-list>
     <!--出库详情-->
-    <outbound-details-dialog v-if="outboundDetailsDialogFlag" ref="outboundDetailsDialogRef"
-                             :outboundDetailsDialogFlag.sync="outboundDetailsDialogFlag"
-                             @saveDate="saveDate"></outbound-details-dialog>
+    <outbound-details-dialog
+      v-if="outboundDetailsDialogFlag"
+      ref="outboundDetailsDialogRef"
+      :outboundDetailsDialogFlag.sync="outboundDetailsDialogFlag"
+      @saveDate="saveDate"
+    ></outbound-details-dialog>
   </el-form>
 </template>
 <script>
-import {numberReg} from 'ele-admin';
-import productList from '@/views/bpm/handleTask/components/saleOrder/invoice/product-list.vue';
-import dictMixins from '@/mixins/dictMixins';
-import {
-  getWarehouseList,
-} from '@/api/bpm/components/saleManage/saleorder';
+  import { numberReg } from 'ele-admin';
+  import productList from '@/views/bpm/handleTask/components/saleOrder/invoice/product-list.vue';
+  import dictMixins from '@/mixins/dictMixins';
+  import { getWarehouseList } from '@/api/bpm/components/saleManage/saleorder';
 
-import {copyObj} from '@/utils/util';
-import OutboundDetailsDialog from "./outboundDetailsDialog.vue";
-import fileMain from "@/components/addDoc/index.vue";
+  import { copyObj } from '@/utils/util';
+  import OutboundDetailsDialog from './outboundDetailsDialog.vue';
+  import fileMain from '@/components/addDoc/index.vue';
 
-export default {
-  mixins: [dictMixins],
-  props: {
-    orderId: String,
-    outsourceSendCode: String,
-    pricingWay: [String, Number],
-    sourceType: [String, Number],
-  },
-  components: {
-    fileMain,
-    OutboundDetailsDialog,
-    productList
-  },
-  data() {
-    const defaultForm = {
-      key: null,
-      endTime: '',
-      isFirst: 0,
-      name: '',
-      startTime: '',
-      workHour: '',
-      technicalDrawings: []
-      // warehouseCode:"",
-      // warehouseId:'',
-      // warehouseName:'',
-    };
-    return {
-      discountTotalPrice: 0.0,
-      allPrice: 0.0,
-      numberReg,
-      defaultForm,
-      oldSendTotalWeightList: [],
-      warehouseList: [],
-      form: {
-        datasource: []
-      },
-      rules: {},
-      outboundDetailsDialogFlag: false,
-      columns: [
-        {
-          width: 45,
-          type: 'index',
-          columnKey: 'index',
-          align: 'center',
-          fixed: 'left',
-        },
-        {
-          width: 200,
-          prop: 'productName',
-          label: '名称',
-          slot: 'productName',
-          align: 'center',
-        },
-        {
-          width: 120,
-          prop: 'productCode',
-          label: '编码',
-          slot: 'productCode',
-          align: 'center'
-        },
-        {
-          width: 200,
-          prop: 'productCategoryName',
-          label: '类型',
-          slot: 'productCategoryName',
-          align: 'center'
-        },
-        {
-          width: 160,
-          prop: 'productBrand',
-          label: '牌号',
-          slot: 'productBrand',
-          align: 'center'
-        },
-        {
-          width: 120,
-          prop: 'modelType',
-          label: '型号',
-          slot: 'modelType',
-          align: 'center'
-        },
-        {
-          width: 120,
-          prop: 'supplierMark',
-          label: '供应商代号',
-          slot: 'supplierMark',
-          align: 'center',
-        },
-        {
-          width: 120,
-          prop: 'specification',
-          label: '规格',
-          slot: 'specification',
-          align: 'center'
-        },
-        {
-          width: 200,
-          prop: 'warehouseId',
-          label: '仓库名称',
-          slot: 'warehouseId',
-          headerSlot: 'headerWarehouseId',
-          align: 'center'
-        },
-        {
-          width: 120,
-          prop: 'totalCount',
-          label: '进货数量',
-          slot: 'totalCount',
-          headerSlot: 'headerTotalCount',
-          align: 'center'
-        },
-        {
-          width: 120,
-          prop: 'orderTotalCount',
-          label: '总数量',
-          slot: 'orderTotalCount',
-          align: 'center'
-        },
-        {
-          width: 80,
-          prop: 'measuringUnit',
-          label: '计量单位',
-          slot: 'measuringUnit',
-          align: 'center'
-        },
-        {
-          width: 120,
-          prop: 'singleWeight',
-          label: '单重',
-          slot: 'singleWeight',
-          align: "center"
-        },
-        {
-          width: 200,
-          prop: 'sendTotalWeight',
-          label: '发货总重',
-          slot: 'sendTotalWeight',
-          align: "center",
-          headerSlot: 'headerTotalCount'
-        },
-        {
-          width: 100,
-          prop: 'receiveTotalWeight',
-          label: '收货总重',
-          slot: 'receiveTotalWeight',
-          align: "center"
-        },
-        {
-          width: 100,
-          prop: 'increaseTotalWeight',
-          label: '增重重量',
-          slot: 'increaseTotalWeight',
-          align: "center"
-        },
-        {
-          width: 100,
-          prop: 'weightUnit',
-          label: '重量单位',
-          slot: 'weightUnit',
-          align: "center"
+  export default {
+    mixins: [dictMixins],
+    props: {
+      orderId: String,
+      outsourceSendCode: String,
+      pricingWay: [String, Number],
+      sourceType: [String, Number]
+    },
+    components: {
+      fileMain,
+      OutboundDetailsDialog,
+      productList
+    },
+    data() {
+      const defaultForm = {
+        key: null,
+        endTime: '',
+        isFirst: 0,
+        name: '',
+        startTime: '',
+        workHour: '',
+        technicalDrawings: []
+        // warehouseCode:"",
+        // warehouseId:'',
+        // warehouseName:'',
+      };
+      return {
+        discountTotalPrice: 0.0,
+        allPrice: 0.0,
+        numberReg,
+        defaultForm,
+        oldSendTotalWeightList: [],
+        warehouseList: [],
+        form: {
+          datasource: []
         },
-        {
+        rules: {},
+        outboundDetailsDialogFlag: false,
+        columns: [
+          {
+            width: 45,
+            type: 'index',
+            columnKey: 'index',
+            align: 'center',
+            fixed: 'left'
+          },
+          {
+            width: 200,
+            prop: 'productName',
+            label: '名称',
+            slot: 'productName',
+            align: 'center'
+          },
+          {
+            width: 120,
+            prop: 'productCode',
+            label: '编码',
+            slot: 'productCode',
+            align: 'center'
+          },
+          {
+            width: 200,
+            prop: 'productCategoryName',
+            label: '类型',
+            slot: 'productCategoryName',
+            align: 'center'
+          },
+          {
+            width: 160,
+            prop: 'productBrand',
+            label: '牌号',
+            slot: 'productBrand',
+            align: 'center'
+          },
+          {
+            width: 120,
+            prop: 'modelType',
+            label: '型号',
+            slot: 'modelType',
+            align: 'center'
+          },
+          {
+            width: 120,
+            prop: 'supplierMark',
+            label: '供应商代号',
+            slot: 'supplierMark',
+            align: 'center'
+          },
+          {
+            width: 120,
+            prop: 'specification',
+            label: '规格',
+            slot: 'specification',
+            align: 'center'
+          },
+          {
+            width: 200,
+            prop: 'warehouseId',
+            label: '仓库名称',
+            slot: 'warehouseId',
+            headerSlot: 'headerWarehouseId',
+            align: 'center'
+          },
+          {
+            width: 120,
+            prop: 'totalCount',
+            label: '进货数量',
+            slot: 'totalCount',
+            headerSlot: 'headerTotalCount',
+            align: 'center'
+          },
+          {
+            width: 120,
+            prop: 'orderTotalCount',
+            label: '总数量',
+            slot: 'orderTotalCount',
+            align: 'center'
+          },
+          {
+            width: 80,
+            prop: 'measuringUnit',
+            label: '计量单位',
+            slot: 'measuringUnit',
+            align: 'center'
+          },
+          {
+            width: 120,
+            prop: 'singleWeight',
+            label: '单重',
+            slot: 'singleWeight',
+            align: 'center'
+          },
+          {
+            width: 200,
+            prop: 'sendTotalWeight',
+            label: '发货总重',
+            slot: 'sendTotalWeight',
+            align: 'center',
+            headerSlot: 'headerTotalCount'
+          },
+          {
+            width: 100,
+            prop: 'receiveTotalWeight',
+            label: '收货总重',
+            slot: 'receiveTotalWeight',
+            align: 'center'
+          },
+          {
+            width: 100,
+            prop: 'increaseTotalWeight',
+            label: '增重重量',
+            slot: 'increaseTotalWeight',
+            align: 'center'
+          },
+          {
+            width: 100,
+            prop: 'weightUnit',
+            label: '重量单位',
+            slot: 'weightUnit',
+            align: 'center'
+          },
+          {
             width: 160,
             prop: 'pricingWay',
             label: '计价方式',
             slot: 'pricingWay',
             align: 'center',
             formatter: (row, column) => {
-              return row.pricingWay == 1 ? '按数量计费' : row.pricingWay == 2 ? '按重量计费':'';
-
+              return row.pricingWay == 1
+                ? '按数量计费'
+                : row.pricingWay == 2
+                ? '按重量计费'
+                : '';
             }
           },
-        {
-          width: 160,
-          prop: 'singlePrice',
-          label: '单价',
-          slot: 'singlePrice',
-          align: 'center'
-        },
-        {
+          {
+            width: 160,
+            prop: 'singlePrice',
+            label: '单价',
+            slot: 'singlePrice',
+            align: 'center'
+          },
+          {
             width: 120,
             prop: 'taxRate',
             label: '税率',
             formatter: (_row, _column, cellValue) => {
-              return _row.taxRate
-                ? _row.taxRate+'%'
-                : '';
+              return _row.taxRate ? _row.taxRate + '%' : '';
             },
-            align: 'center',
+            align: 'center'
           },
-        {
-          width: 160,
-          prop: 'discountSinglePrice',
-          label: '折后单价',
-          slot: 'discountSinglePrice',
-          align: 'center'
-        },
-        {
-          width: 120,
-          prop: 'totalPrice',
-          label: '合计',
-          slot: 'totalPrice',
-          align: 'center'
-        },
-        {
-          width: 120,
-          prop: 'discountTotalPrice',
-          label: '折后合计',
-          slot: 'discountTotalPrice',
-          align: 'center'
-        },
-        {
+          {
+            width: 180,
+            prop: 'notaxSinglePrice',
+            label: '不含税单价',
+            slot: 'notaxSinglePrice',
+            align: 'center'
+          },
+          {
+            width: 160,
+            prop: 'discountSinglePrice',
+            label: '折后单价',
+            slot: 'discountSinglePrice',
+            align: 'center'
+          },
+          {
+            width: 120,
+            prop: 'totalPrice',
+            label: '合计',
+            slot: 'totalPrice',
+            align: 'center'
+          },
+          {
+            width: 120,
+            prop: 'discountTotalPrice',
+            label: '折后合计',
+            slot: 'discountTotalPrice',
+            align: 'center'
+          },
+          {
             prop: 'provenance',
             label: '产地',
             slot: 'provenance',
@@ -391,304 +412,365 @@ export default {
                 : '';
             }
           },
-        // {
-        //   width: 80,
-        //   prop: 'deliveryDays',
-        //   label: '交期(天)',
-        //   slot: 'deliveryDays',
-        //   align: 'center'
-        // },
-        {
-          width: 160,
-          prop: 'deliveryDeadline',
-          label: '交期截止日期',
-          slot: 'deliveryDeadline',
-          align: 'center'
-        },
-        {
-          width: 200,
-          prop: 'guaranteePeriod',
-          label: '质保期',
-          slot: 'guaranteePeriod',
-          formatter: (_row, _column, cellValue) => {
-            return (_row.guaranteePeriod || '') + _row.guaranteePeriodUnitName;
-          },
-          align: 'center'
-        },
-        {
-          width: 160,
-          prop: 'guaranteePeriodDeadline',
-          label: '质保截止日期',
-          slot: 'guaranteePeriodDeadline',
-          align: 'center'
-        },
-        {
-          width: 130,
-          prop: 'technicalAnswerName',
-          label: '技术答疑人',
-          slot: 'technicalAnswerName',
-          align: 'center'
-        },
-        {
-          width: 220,
-          prop: 'technicalParams',
-          label: '技术参数',
-          slot: 'technicalParams',
-          align: 'center'
-        },
-        {
-          width: 240,
-          prop: 'technicalDrawings',
-          label: '技术图纸',
-          slot: 'technicalDrawings',
-          align: 'center'
-        },
-        {
-          width: 220,
-          prop: 'remark',
-          label: '备注',
-          slot: 'remark',
-          align: 'center'
-        },
-        {
-          columnKey: 'action',
-          label: '操作',
-          width: 120,
-          align: 'center',
-          resizable: false,
-          slot: 'action',
-          fixed: 'right',
-          showOverflowTooltip: true
-        }
-      ]
-    };
-  },
-  created() {
-    this.requestDict('产地');
-    getWarehouseList().then((res) => {
-      this.warehouseList = res;
-    });
-  },
-  computed: {},
-  methods: {
-    async warehouseChange(index, row) {
-      let warehouseIds =
-        this.form.datasource
-          .filter(
-            (item, i) => row.productCode == item.productCode && index != i
-          )
-          .map((item) => item.warehouseId) || [];
-      const data = this.warehouseList.find(
-        (item) => item.id == row.warehouseId
-      );
-      if (warehouseIds.length > 0 && warehouseIds.includes(row.warehouseId)) {
-        row.warehouseId = '';
-        return this.$message.error('同一个产品不能选择相同的仓库');
-      }
-      this.$set(this.form.datasource[index], 'warehouseName', data.name);
-      this.$set(this.form.datasource[index], 'warehouseCode', data.code);
+          // {
+          //   width: 80,
+          //   prop: 'deliveryDays',
+          //   label: '交期(天)',
+          //   slot: 'deliveryDays',
+          //   align: 'center'
+          // },
+          {
+            width: 160,
+            prop: 'deliveryDeadline',
+            label: '交期截止日期',
+            slot: 'deliveryDeadline',
+            align: 'center'
+          },
+          {
+            width: 200,
+            prop: 'guaranteePeriod',
+            label: '质保期',
+            slot: 'guaranteePeriod',
+            formatter: (_row, _column, cellValue) => {
+              return (
+                (_row.guaranteePeriod || '') + _row.guaranteePeriodUnitName
+              );
+            },
+            align: 'center'
+          },
+          {
+            width: 160,
+            prop: 'guaranteePeriodDeadline',
+            label: '质保截止日期',
+            slot: 'guaranteePeriodDeadline',
+            align: 'center'
+          },
+          {
+            width: 130,
+            prop: 'technicalAnswerName',
+            label: '技术答疑人',
+            slot: 'technicalAnswerName',
+            align: 'center'
+          },
+          {
+            width: 220,
+            prop: 'technicalParams',
+            label: '技术参数',
+            slot: 'technicalParams',
+            align: 'center'
+          },
+          {
+            width: 240,
+            prop: 'technicalDrawings',
+            label: '技术图纸',
+            slot: 'technicalDrawings',
+            align: 'center'
+          },
+          {
+            width: 220,
+            prop: 'remark',
+            label: '备注',
+            slot: 'remark',
+            align: 'center'
+          },
+          {
+            columnKey: 'action',
+            label: '操作',
+            width: 120,
+            align: 'center',
+            resizable: false,
+            slot: 'action',
+            fixed: 'right',
+            showOverflowTooltip: true
+          }
+        ]
+      };
     },
-//修改发货总重
-    changeSendTotalWeight(index) {
-      this.curIndex = index
-      this.setIcreaseTotalWeight()
+    created() {
+      this.requestDict('产地');
+      getWarehouseList().then((res) => {
+        this.warehouseList = res;
+      });
     },
-    //出库单详情
-    handleOutBound(e, rows, index) {
-      this.curIndex = index
-      this.outboundDetailsDialogFlag = true
-      this.$nextTick(() => {
-        let row = {
-          sendNo: this.outsourceSendCode,
-          productCode: rows.productCode
+    computed: {},
+    methods: {
+      async warehouseChange(index, row) {
+        let warehouseIds =
+          this.form.datasource
+            .filter(
+              (item, i) => row.productCode == item.productCode && index != i
+            )
+            .map((item) => item.warehouseId) || [];
+        const data = this.warehouseList.find(
+          (item) => item.id == row.warehouseId
+        );
+        if (warehouseIds.length > 0 && warehouseIds.includes(row.warehouseId)) {
+          row.warehouseId = '';
+          return this.$message.error('同一个产品不能选择相同的仓库');
         }
-        this.$refs.outboundDetailsDialogRef.init(row)
-      })
-    },
-    //修改数量更新合计/总重
-    changeNum(val, index) {
-      this.curIndex = index
-      if (this.pricingWay == 2) {
-        if (val != this.form.datasource[index].orderTotalCount) {
-          this.$set(this.form.datasource[index], 'sendTotalWeight', '')
-          this.$set(this.form.datasource[index], 'receiveTotalWeight', Number(val) * Number(this.form.datasource[index].singleWeight));
+        this.$set(this.form.datasource[index], 'warehouseName', data.name);
+        this.$set(this.form.datasource[index], 'warehouseCode', data.code);
+      },
+      //修改发货总重
+      changeSendTotalWeight(index) {
+        this.curIndex = index;
+        this.setIcreaseTotalWeight();
+      },
+      //出库单详情
+      handleOutBound(e, rows, index) {
+        this.curIndex = index;
+        this.outboundDetailsDialogFlag = true;
+        this.$nextTick(() => {
+          let row = {
+            sendNo: this.outsourceSendCode,
+            productCode: rows.productCode
+          };
+          this.$refs.outboundDetailsDialogRef.init(row);
+        });
+      },
+      //修改数量更新合计/总重
+      changeNum(val, index) {
+        this.curIndex = index;
+        if (this.pricingWay == 2) {
+          if (val != this.form.datasource[index].orderTotalCount) {
+            this.$set(this.form.datasource[index], 'sendTotalWeight', '');
+            this.$set(
+              this.form.datasource[index],
+              'receiveTotalWeight',
+              Number(val) * Number(this.form.datasource[index].singleWeight)
+            );
+          } else {
+            let find =
+              this.oldSendTotalWeightList.find(
+                (key) =>
+                  key.productCode == this.form.datasource[index].productCode
+              ) || {};
+            this.$set(
+              this.form.datasource[index],
+              'sendTotalWeight',
+              find.oldSendTotalWeight || ''
+            );
+            this.$set(
+              this.form.datasource[index],
+              'receiveTotalWeight',
+              Number(val) * Number(this.form.datasource[index].singleWeight)
+            );
+          }
+          this.setIcreaseTotalWeight();
+          this.getWeightPrice();
         } else {
-          let find = this.oldSendTotalWeightList.find(key => key.productCode == this.form.datasource[index].productCode) || {}
-          this.$set(this.form.datasource[index], 'sendTotalWeight', find.oldSendTotalWeight||'')
-          this.$set(this.form.datasource[index], 'receiveTotalWeight', Number(val) * Number(this.form.datasource[index].singleWeight));
+          this.$set(
+            this.form.datasource[index],
+            'totalPrice',
+            (Number(this.form.datasource[index].singlePrice) * val).toFixed(2)
+          );
+          this.$set(
+            this.form.datasource[index],
+            'discountTotalPrice',
+            (
+              Number(this.form.datasource[index].discountSinglePrice) * val
+            ).toFixed(2)
+          );
+          this.$set(
+            this.form.datasource[index],
+            'receiveTotalWeight',
+            Number(this.form.datasource[index].totalCount) *
+              Number(this.form.datasource[index].singleWeight)
+          );
+          this.$set(
+            this.form.datasource[index],
+            'increaseTotalWeight',
+            Number(this.form.datasource[index].totalCount) *
+              Number(this.form.datasource[index].singleWeight)
+          );
         }
-        this.setIcreaseTotalWeight()
-        this.getWeightPrice()
-      } else {
-        this.$set(this.form.datasource[index], 'totalPrice', (Number(this.form.datasource[index].singlePrice) * val).toFixed(2));
-        this.$set(this.form.datasource[index], 'discountTotalPrice', (Number(this.form.datasource[index].discountSinglePrice) * val).toFixed(2));
-        this.$set(this.form.datasource[index], 'receiveTotalWeight', Number(this.form.datasource[index].totalCount) * Number(this.form.datasource[index].singleWeight));
-        this.$set(this.form.datasource[index], 'increaseTotalWeight', Number(this.form.datasource[index].totalCount) * Number(this.form.datasource[index].singleWeight));
-      }
-    },
-    getWeightPrice() {
-      let increaseTotalWeight = this.form.datasource[this.curIndex].increaseTotalWeight
-      let singlePrice = this.form.datasource[this.curIndex].singlePrice
-      let discountSinglePrice = this.form.datasource[this.curIndex].discountSinglePrice
-      this.$set(this.form.datasource[this.curIndex], 'totalPrice', (Number(increaseTotalWeight) * Number(singlePrice)).toFixed(2));
-      this.$set(this.form.datasource[this.curIndex], 'discountTotalPrice', (Number(discountSinglePrice) * Number(increaseTotalWeight)).toFixed(2));
-    },
-    //设置增重总重
-    setIcreaseTotalWeight() {
-      let receiveTotalWeight = Number(this.form.datasource[this.curIndex].receiveTotalWeight)
-      let sendTotalWeight = Number(this.form.datasource[this.curIndex].sendTotalWeight)
-      this.$set(this.form.datasource[this.curIndex], 'increaseTotalWeight', (receiveTotalWeight - sendTotalWeight).toFixed(2));
-      if (this.pricingWay == 2) {
-        this.getWeightPrice()
-      }
-      this.$refs.table.reload()
-    },
-
-    //选择产品回调
-    changeParent(obj, idx) {
-      obj.orderTotalCount = obj.orderTotalCount || obj.totalCount;
-      obj.id = '';
-      this.$set(
-        this.form.datasource,
-        this.form.datasource.length,
-        copyObj(obj)
-      );
-    },
-    validateTotalCount(row) {
-      return (rule, value, callback) => {
-        if (isNaN(value) || Number(value) <= 0) {
-          this.$message.error('请输入大于0的数');
-          callback(new Error('请输入大于0的数字'));
-        } else if (this.getTotalCount(row) > row.orderTotalCount) {
-          this.$message.error('进货数量不能大于总数量');
-          callback(new Error('进货数量不能大于总数量'));
-        } else {
-          callback();
+      },
+      getWeightPrice() {
+        let increaseTotalWeight =
+          this.form.datasource[this.curIndex].increaseTotalWeight;
+        let singlePrice = this.form.datasource[this.curIndex].singlePrice;
+        let discountSinglePrice =
+          this.form.datasource[this.curIndex].discountSinglePrice;
+        this.$set(
+          this.form.datasource[this.curIndex],
+          'totalPrice',
+          (Number(increaseTotalWeight) * Number(singlePrice)).toFixed(2)
+        );
+        this.$set(
+          this.form.datasource[this.curIndex],
+          'discountTotalPrice',
+          (Number(discountSinglePrice) * Number(increaseTotalWeight)).toFixed(2)
+        );
+      },
+      //设置增重总重
+      setIcreaseTotalWeight() {
+        let receiveTotalWeight = Number(
+          this.form.datasource[this.curIndex].receiveTotalWeight
+        );
+        let sendTotalWeight = Number(
+          this.form.datasource[this.curIndex].sendTotalWeight
+        );
+        this.$set(
+          this.form.datasource[this.curIndex],
+          'increaseTotalWeight',
+          (receiveTotalWeight - sendTotalWeight).toFixed(2)
+        );
+        if (this.pricingWay == 2) {
+          this.getWeightPrice();
         }
-      };
-    },
-    getTotalCount(row) {
-      let num = 0;
-      this.form.datasource
-        .filter((item) => item.productCode == row.productCode)
-        .forEach((item) => {
-          num += Number(item.totalCount);
-        });
-      return num;
-    },
-    // 返回列表数据
-    getTableValue() {
-      let comitDatasource = this.form.datasource;
-      if (comitDatasource.length === 0) return [];
-      comitDatasource.forEach(async (v) => {
-        v.totalCount = Number(v.totalCount);
-        v.technicalDrawings = Array.isArray(v.technicalDrawings)
-          ? v.technicalDrawings
-          : [];
-      });
-      return comitDatasource;
-    },
-    getPrice() {
-      return [this.allPrice];
-    },
-//修改回显
-    async putTableValue(data = [], code) {
-      this.$nextTick(()=>{
-        this.form.datasource = data;
-        this.oldSendTotalWeightList = this.form.datasource.map(item => {
-          return {
-            productCode: item.productCode,
-            oldSendTotalWeight: item.sendTotalWeight
-          }
-        })
-        this.form.datasource.forEach((item,index) => {
-          item.receiveTotalWeight = item.receiveTotalWeight || (Number(item.totalCount) * Number(item.singleWeight)) || 0
-          if(this.outsourceSendCode){
-            item.increaseTotalWeight =  Number(item.receiveTotalWeight)-Number(item.sendTotalWeight)
-          }else {
-            item.increaseTotalWeight = item.increaseTotalWeight || item.receiveTotalWeight || 0
+        this.$refs.table.reload();
+      },
+
+      //选择产品回调
+      changeParent(obj, idx) {
+        obj.orderTotalCount = obj.orderTotalCount || obj.totalCount;
+        obj.id = '';
+        this.$set(
+          this.form.datasource,
+          this.form.datasource.length,
+          copyObj(obj)
+        );
+      },
+      validateTotalCount(row) {
+        return (rule, value, callback) => {
+          if (isNaN(value) || Number(value) <= 0) {
+            this.$message.error('请输入大于0的数');
+            callback(new Error('请输入大于0的数字'));
+          } else if (this.getTotalCount(row) > row.orderTotalCount) {
+            this.$message.error('进货数量不能大于总数量');
+            callback(new Error('进货数量不能大于总数量'));
+          } else {
+            callback();
           }
-          this.changeNum(item.totalCount,index)
-        })
-        this.$refs.table.reload()
-      })
-    },
-    remove(i) {
-      this.form.datasource.splice(i, 1);
-      this.setSort();
-    },
-    // 清空表格
-    restTable() {
-      this.form.datasource = [];
-    },
-    // 重新排序
-    setSort() {
-      this.form.datasource.forEach((n, index) => {
-        n.key = index + 1;
-      });
-    },
-    // 添加
-    handlAdd() {
-      if (!this.orderId) return this.$message.error('请先选择订单');
-      this.$refs.productListRef.open(this.form.datasource);
-    },
+        };
+      },
+      getTotalCount(row) {
+        let num = 0;
+        this.form.datasource
+          .filter((item) => item.productCode == row.productCode)
+          .forEach((item) => {
+            num += Number(item.totalCount);
+          });
+        return num;
+      },
+      // 返回列表数据
+      getTableValue() {
+        let comitDatasource = this.form.datasource;
+        if (comitDatasource.length === 0) return [];
+        comitDatasource.forEach(async (v) => {
+          v.totalCount = Number(v.totalCount);
+          v.technicalDrawings = Array.isArray(v.technicalDrawings)
+            ? v.technicalDrawings
+            : [];
+        });
+        return comitDatasource;
+      },
+      getPrice() {
+        return [this.allPrice];
+      },
+      //修改回显
+      async putTableValue(data = [], code) {
+        this.$nextTick(() => {
+          this.form.datasource = data;
+          this.oldSendTotalWeightList = this.form.datasource.map((item) => {
+            return {
+              productCode: item.productCode,
+              oldSendTotalWeight: item.sendTotalWeight
+            };
+          });
+          this.form.datasource.forEach((item, index) => {
+            item.receiveTotalWeight =
+              item.receiveTotalWeight ||
+              Number(item.totalCount) * Number(item.singleWeight) ||
+              0;
+            if (this.outsourceSendCode) {
+              item.increaseTotalWeight =
+                Number(item.receiveTotalWeight) - Number(item.sendTotalWeight);
+            } else {
+              item.increaseTotalWeight =
+                item.increaseTotalWeight || item.receiveTotalWeight || 0;
+            }
+            this.changeNum(item.totalCount, index);
+          });
+          this.$refs.table.reload();
+        });
+      },
+      remove(i) {
+        this.form.datasource.splice(i, 1);
+        this.setSort();
+      },
+      // 清空表格
+      restTable() {
+        this.form.datasource = [];
+      },
+      // 重新排序
+      setSort() {
+        this.form.datasource.forEach((n, index) => {
+          n.key = index + 1;
+        });
+      },
+      // 添加
+      handlAdd() {
+        if (!this.orderId) return this.$message.error('请先选择订单');
+        this.$refs.productListRef.open(this.form.datasource);
+      },
 
-    validateForm(callback) {
-      //开始表单校验
-      this.$refs.form.validate((valid) => {
-        callback(valid);
-      });
+      validateForm(callback) {
+        //开始表单校验
+        this.$refs.form.validate((valid) => {
+          callback(valid);
+        });
+      }
     }
-  }
-};
+  };
 </script>
 <style lang="scss" scoped>
-.headbox {
-  display: flex;
-  justify-content: space-between;
-  align-items: center;
+  .headbox {
+    display: flex;
+    justify-content: space-between;
+    align-items: center;
 
-  .amount {
-    font-size: 14px;
-    font-weight: bold;
-    padding-right: 30px;
+    .amount {
+      font-size: 14px;
+      font-weight: bold;
+      padding-right: 30px;
+    }
   }
-}
 
-.time-form .el-form-item {
-  margin-bottom: 0 !important;
-}
+  .time-form .el-form-item {
+    margin-bottom: 0 !important;
+  }
 
-::v-deep .period {
-  display: flex;
+  ::v-deep .period {
+    display: flex;
 
-  .borderleftnone {
-    .el-input--medium .el-input__inner {
-      border-top-right-radius: 0;
-      border-bottom-right-radius: 0;
+    .borderleftnone {
+      .el-input--medium .el-input__inner {
+        border-top-right-radius: 0;
+        border-bottom-right-radius: 0;
+      }
     }
-  }
 
-  .borderrightnone {
-    .el-input--medium .el-input__inner {
-      border-top-left-radius: 0;
-      border-bottom-left-radius: 0;
+    .borderrightnone {
+      .el-input--medium .el-input__inner {
+        border-top-left-radius: 0;
+        border-bottom-left-radius: 0;
+      }
     }
   }
-}
 
-::v-deep .time-form tbody > tr:hover > td {
-  background-color: transparent !important;
-}
+  ::v-deep .time-form tbody > tr:hover > td {
+    background-color: transparent !important;
+  }
 
-::v-deep .time-form .el-table tr {
-  background-color: #ffffff;
-}
+  ::v-deep .time-form .el-table tr {
+    background-color: #ffffff;
+  }
 
-.pricebox {
-  display: flex;
-  justify-content: flex-start;
-  align-items: center;
-  font-weight: bold;
-}
+  .pricebox {
+    display: flex;
+    justify-content: flex-start;
+    align-items: center;
+    font-weight: bold;
+  }
 </style>

+ 14 - 9
src/views/bpm/handleTask/components/purchaseOrder/invoice/receiptInfo.vue

@@ -97,7 +97,7 @@
 <script>
   import { reviewStatusEnum } from '@/enum/dict';
   import dictMixins from '@/mixins/dictMixins';
-  import {lbjtList } from '@/enum/dict.js';
+  import { lbjtList } from '@/enum/dict.js';
 
   import fileMain from '@/components/addDoc/index.vue';
   export default {
@@ -162,12 +162,13 @@
             label: '属性类型',
             showOverflowTooltip: true,
             formatter: (row, column) => {
-              if(row.produceType){
-                return row.produceType.map(item=>{
-                  return lbjtList[item]
-                }).toString()
+              if (row.produceType) {
+                return row.produceType
+                  .map((item) => {
+                    return lbjtList[item];
+                  })
+                  .toString();
               }
-          
             }
           },
           {
@@ -288,12 +289,16 @@
             prop: 'taxRate',
             label: '税率',
             formatter: (_row, _column, cellValue) => {
-              return _row.taxRate
-                ? _row.taxRate+'%'
-                : '';
+              return _row.taxRate ? _row.taxRate + '%' : '';
             },
             align: 'center'
           },
+          {
+            width: 150,
+            prop: 'notaxSinglePrice',
+            label: '不含税单价',
+            align: 'center'
+          },
           {
             width: 160,
             prop: 'discountSinglePrice',

+ 6 - 1
src/views/bpm/handleTask/components/purchaseOrder/outSourceSend/detailDialog.vue

@@ -307,7 +307,12 @@
                 : '';
             },
             align: 'center',
-            show: !this.detailType
+          },
+          {
+            width: 150,
+            prop: 'notaxSinglePrice',
+            label: '不含税单价',
+            align: 'center',
           },
           {
             width: 100,

+ 6 - 0
src/views/bpm/handleTask/components/saleOrder/accountstatement/inventoryTable.vue

@@ -226,6 +226,12 @@ export default {
             show:j.subType!=11
 
           },
+          {
+            width: 150,
+            prop: 'notaxSinglePrice',
+            label: '不含税单价',
+            align: 'center'
+          },
           {
             minWidth: 120,
             prop: 'totalPrice',

+ 6 - 0
src/views/bpm/handleTask/components/saleOrder/invoice/detailDialog.vue

@@ -507,6 +507,12 @@
             },
             align: 'center'
           },
+          {
+            width: 160,
+            prop: 'notaxSinglePrice',
+            label: '不含税单价',
+            align: 'center'
+          },
           {
             width: 160,
             prop: 'discountSinglePrice',

+ 6 - 1
src/views/bpm/handleTask/components/saleOrder/invoiceConfirm/detailDialog.vue

@@ -467,7 +467,12 @@
             slot: 'singlePrice',
             align: 'center'
           },
-
+          {
+            width: 150,
+            prop: 'notaxSinglePrice',
+            label: '不含税单价',
+            align: 'center'
+          },
           {
             width: 100,
             prop: 'totalPrice',

+ 12 - 1
src/views/bpm/handleTask/components/saleOrder/returnGoods/detailDialog.vue

@@ -335,6 +335,12 @@
             slot: 'singlePrice',
             align: 'center'
           },
+          {
+            width: 150,
+            prop: 'notaxSinglePrice',
+            label: '不含税单价',
+            align: 'center'
+          },
           {
             width: 160,
             prop: 'discountSinglePrice',
@@ -539,7 +545,12 @@
             slot: 'singlePrice',
             align: 'center'
           },
-       
+          {
+            width: 150,
+            prop: 'notaxSinglePrice',
+            label: '不含税单价',
+            align: 'center'
+          },
           {
             width: 100,
             prop: 'totalPrice',

+ 6 - 1
src/views/bpm/handleTask/components/saleOrder/returnGoods/inventoryTable.vue

@@ -337,7 +337,12 @@
             slot: 'singlePrice',
             align: 'center'
           },
-        
+          {
+            width: 150,
+            prop: 'notaxSinglePrice',
+            label: '不含税单价',
+            align: 'center'
+          },
           {
             width: 100,
             prop: 'totalPrice',

+ 6 - 1
src/views/bpm/handleTask/components/saleOrder/returnGoods/inventoryTabledetail.vue

@@ -222,7 +222,12 @@ export default {
           slot: 'singlePrice',
           align: 'center'
         },
-
+        {
+            width: 150,
+            prop: 'notaxSinglePrice',
+            label: '不含税单价',
+            align: 'center'
+          },
         {
           width: 120,
           prop: 'totalPrice',

+ 6 - 1
src/views/bpm/handleTask/components/saleOrder/saleReturnGoods/detailDialog.vue

@@ -256,7 +256,12 @@ export default {
           slot: 'singlePrice',
           align: 'center'
         },
-
+        {
+            width: 150,
+            prop: 'notaxSinglePrice',
+            label: '不含税单价',
+            align: 'center'
+          },
 
         {
           width: 120,

+ 6 - 1
src/views/bpm/handleTask/components/saleOrder/saleReturnGoods/inventoryTable.vue

@@ -464,7 +464,12 @@
             slot: 'singlePrice',
             align: 'center'
           },
-
+          {
+            width: 150,
+            prop: 'notaxSinglePrice',
+            label: '不含税单价',
+            align: 'center'
+          },
           // {
           //   minWidth: 80,
           //   prop: 'weight',