|
@@ -78,8 +78,9 @@
|
|
|
</template>
|
|
|
<tempalte slot="salerName">
|
|
|
<dic-select v-model="form.salerName" placeholder="业务员" key="id" label="name"
|
|
|
- url="/blade-user/salerList" :filterable="true" @selectChange="dicChange('salerName', $event)"
|
|
|
- :disabled="form.generateTask == '已生成'||form.businessSource == '外部销售' || isDisabledTask">
|
|
|
+ url="/blade-user/salerList" :filterable="true"
|
|
|
+ @selectChange="dicChange('salerName', $event)"
|
|
|
+ :disabled="form.generateTask == '已生成' || form.businessSource == '外部销售' || isDisabledTask">
|
|
|
</dic-select>
|
|
|
</tempalte>
|
|
|
</avue-form>
|
|
@@ -154,7 +155,7 @@
|
|
|
<span v-else>{{ row.dot }}</span>
|
|
|
</template>
|
|
|
<template slot="subTotalMoney" slot-scope="{ row }">{{ row.goodsNum * row.price
|
|
|
- }}</template>
|
|
|
+ }}</template>
|
|
|
|
|
|
<template slot="remarks" slot-scope="{ row }">
|
|
|
<el-input v-if="!mingxibaocun" size="small" v-model="row.remarks"
|
|
@@ -181,16 +182,18 @@
|
|
|
|
|
|
|
|
|
<template slot-scope="{type,size,row,index,disabled}" slot="menu">
|
|
|
- <el-button v-if="mingxibaocun" :size="size" :disabled="disabled || isAdd|| form.billType == 1" :type="type"
|
|
|
+ <el-button v-if="mingxibaocun" :size="size"
|
|
|
+ :disabled="disabled || isAdd || form.billType == 1" :type="type"
|
|
|
:icon="row.$cellEdit ? 'el-icon-plus' : 'el-icon-edit'"
|
|
|
@click="hangeditBtn(row, index)">编辑
|
|
|
</el-button>
|
|
|
- <el-button v-else :size="size" :disabled="disabled || isAdd|| form.billType == 1" :type="type"
|
|
|
- :icon="row.$cellEdit ? 'el-icon-plus' : 'el-icon-edit'"
|
|
|
+ <el-button v-else :size="size" :disabled="disabled || isAdd || form.billType == 1"
|
|
|
+ :type="type" :icon="row.$cellEdit ? 'el-icon-plus' : 'el-icon-edit'"
|
|
|
@click="hangbaocun(row, index)">保存
|
|
|
</el-button>
|
|
|
- <el-button icon="el-icon-delete" :size="size" :disabled="disabled || isDisabled|| form.billType == 1"
|
|
|
- :type="type" @click="rowDelBox(row, index, 'orderItemsList')">删除
|
|
|
+ <el-button icon="el-icon-delete" :size="size"
|
|
|
+ :disabled="disabled || isDisabled || form.billType == 1" :type="type"
|
|
|
+ @click="rowDelBox(row, index, 'orderItemsList')">删除
|
|
|
</el-button>
|
|
|
</template>
|
|
|
</avue-crud>
|
|
@@ -865,265 +868,265 @@ export default {
|
|
|
}],
|
|
|
column: [
|
|
|
{
|
|
|
- label: '商品名称',
|
|
|
- prop: 'goodsId',
|
|
|
- width: 250,
|
|
|
- disabled: false,
|
|
|
- remote: true,
|
|
|
- overHidden: true,
|
|
|
- hide: true,
|
|
|
- type: 'select',
|
|
|
- dicData: [],
|
|
|
- props: {
|
|
|
- label: 'goodsName',
|
|
|
- value: 'goodsId'
|
|
|
+ label: '商品名称',
|
|
|
+ prop: 'goodsId',
|
|
|
+ width: 250,
|
|
|
+ disabled: false,
|
|
|
+ remote: true,
|
|
|
+ overHidden: true,
|
|
|
+ hide: true,
|
|
|
+ type: 'select',
|
|
|
+ dicData: [],
|
|
|
+ props: {
|
|
|
+ label: 'goodsName',
|
|
|
+ value: 'goodsId'
|
|
|
+ },
|
|
|
+ // dicUrl: '/api/blade-sales-part/goodsDesc/goodsListAll?cname={{key}}'
|
|
|
+ dicUrl: `/api/blade-sales-part/goodsDesc/goodsListXs?cname={{key}}&customId=&enableOrNot=1&stock=${this.goodsId}`
|
|
|
+ // dicUrl: "/api/blade-sales-part/goodsDesc/goodsListXs?cname={{key}}"
|
|
|
},
|
|
|
- // dicUrl: '/api/blade-sales-part/goodsDesc/goodsListAll?cname={{key}}'
|
|
|
- dicUrl: `/api/blade-sales-part/goodsDesc/goodsListXs?cname={{key}}&customId=&enableOrNot=1&stock=${this.goodsId}`
|
|
|
- // dicUrl: "/api/blade-sales-part/goodsDesc/goodsListXs?cname={{key}}"
|
|
|
- },
|
|
|
- {
|
|
|
- label: '商品名称',
|
|
|
- prop: 'goodsName',
|
|
|
- width: 250,
|
|
|
- disabled: false,
|
|
|
- remote: true,
|
|
|
- overHidden: true,
|
|
|
- }, {
|
|
|
- label: '库存',
|
|
|
- prop: 'inventory',
|
|
|
- width: 250,
|
|
|
- disabled: false,
|
|
|
- remote: true,
|
|
|
- overHidden: true,
|
|
|
- }, {
|
|
|
- label: '数量',
|
|
|
- prop: 'goodsNum',
|
|
|
- overHidden: true,
|
|
|
- disabled: false,
|
|
|
- cell: true,
|
|
|
- width: 100,
|
|
|
- rules: [{
|
|
|
- required: true,
|
|
|
- message: " ",
|
|
|
- trigger: "blur"
|
|
|
+ {
|
|
|
+ label: '商品名称',
|
|
|
+ prop: 'goodsName',
|
|
|
+ width: 250,
|
|
|
+ disabled: false,
|
|
|
+ remote: true,
|
|
|
+ overHidden: true,
|
|
|
}, {
|
|
|
- validator: (rule, value, callback) => {
|
|
|
- console.log(this.formContacts.inventory);
|
|
|
- if (value < 0) {
|
|
|
- callback(new Error("数量不能小于0"));
|
|
|
- } else if (Number(value) > Number(this.formContacts.inventory)) {
|
|
|
- callback(new Error("数量不能大于库存"));
|
|
|
- } else {
|
|
|
- callback();
|
|
|
- }
|
|
|
- },
|
|
|
- trigger: "blur"
|
|
|
- }]
|
|
|
- },
|
|
|
- {
|
|
|
- label: '价格',
|
|
|
- prop: 'price',
|
|
|
- overHidden: true,
|
|
|
- width: 100,
|
|
|
- disabled: false,
|
|
|
- cell: true,
|
|
|
- rules: [{
|
|
|
- required: true,
|
|
|
- message: " ",
|
|
|
- trigger: "blur"
|
|
|
+ label: '库存',
|
|
|
+ prop: 'inventory',
|
|
|
+ width: 250,
|
|
|
+ disabled: false,
|
|
|
+ remote: true,
|
|
|
+ overHidden: true,
|
|
|
}, {
|
|
|
- validator: (rule, value, callback) => {
|
|
|
- if (value < 0) {
|
|
|
- callback(new Error("价格不能小于0"));
|
|
|
- } else {
|
|
|
- callback();
|
|
|
- }
|
|
|
+ label: '数量',
|
|
|
+ prop: 'goodsNum',
|
|
|
+ overHidden: true,
|
|
|
+ disabled: false,
|
|
|
+ cell: true,
|
|
|
+ width: 100,
|
|
|
+ rules: [{
|
|
|
+ required: true,
|
|
|
+ message: " ",
|
|
|
+ trigger: "blur"
|
|
|
+ }, {
|
|
|
+ validator: (rule, value, callback) => {
|
|
|
+ console.log(this.formContacts.inventory);
|
|
|
+ if (value < 0) {
|
|
|
+ callback(new Error("数量不能小于0"));
|
|
|
+ } else if (Number(value) > Number(this.formContacts.inventory)) {
|
|
|
+ callback(new Error("数量不能大于库存"));
|
|
|
+ } else {
|
|
|
+ callback();
|
|
|
+ }
|
|
|
+ },
|
|
|
+ trigger: "blur"
|
|
|
+ }]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ label: '价格',
|
|
|
+ prop: 'price',
|
|
|
+ overHidden: true,
|
|
|
+ width: 100,
|
|
|
+ disabled: false,
|
|
|
+ cell: true,
|
|
|
+ rules: [{
|
|
|
+ required: true,
|
|
|
+ message: " ",
|
|
|
+ trigger: "blur"
|
|
|
+ }, {
|
|
|
+ validator: (rule, value, callback) => {
|
|
|
+ if (value < 0) {
|
|
|
+ callback(new Error("价格不能小于0"));
|
|
|
+ } else {
|
|
|
+ callback();
|
|
|
+ }
|
|
|
+ },
|
|
|
+ trigger: "blur"
|
|
|
+ }]
|
|
|
+ },
|
|
|
+ {
|
|
|
+ label: '库存',
|
|
|
+ prop: 'inventory',
|
|
|
+ overHidden: true,
|
|
|
+ hide: true,
|
|
|
+ width: 100
|
|
|
+ }, {
|
|
|
+ label: '批次号',
|
|
|
+ prop: 'dot',
|
|
|
+ cell: true,
|
|
|
+ type: "select",
|
|
|
+ width: 120,
|
|
|
+ disabled: true,
|
|
|
+ allowCreate: true,
|
|
|
+ filterable: true,
|
|
|
+ dicData: [],
|
|
|
+ props: {
|
|
|
+ label: "dot",
|
|
|
+ value: "dot"
|
|
|
},
|
|
|
- trigger: "blur"
|
|
|
- }]
|
|
|
- },
|
|
|
- {
|
|
|
- label: '库存',
|
|
|
- prop: 'inventory',
|
|
|
- overHidden: true,
|
|
|
- hide: true,
|
|
|
- width: 100
|
|
|
- }, {
|
|
|
- label: '批次号',
|
|
|
- prop: 'dot',
|
|
|
- cell: true,
|
|
|
- type: "select",
|
|
|
- width: 120,
|
|
|
- disabled: true,
|
|
|
- allowCreate: true,
|
|
|
- filterable: true,
|
|
|
- dicData: [],
|
|
|
- props: {
|
|
|
- label: "dot",
|
|
|
- value: "dot"
|
|
|
+ dicUrl: "/api/blade-sales-part/stockDesc/dotList",
|
|
|
+ overHidden: true,
|
|
|
},
|
|
|
- dicUrl: "/api/blade-sales-part/stockDesc/dotList",
|
|
|
- overHidden: true,
|
|
|
- },
|
|
|
- // {
|
|
|
- // label: '单号',
|
|
|
- // prop: 'poNo',
|
|
|
- // overHidden: true,
|
|
|
- // disabled: false,
|
|
|
- // width: 100
|
|
|
- // },
|
|
|
- {
|
|
|
- label: '商品编码',
|
|
|
- prop: 'goodsNo',
|
|
|
- overHidden: true,
|
|
|
- disabled: false,
|
|
|
- width: 100
|
|
|
- },
|
|
|
- {
|
|
|
- label: '品牌',
|
|
|
- prop: 'brandName',
|
|
|
- disabled: false,
|
|
|
- width: 100,
|
|
|
- overHidden: true,
|
|
|
- },
|
|
|
- {
|
|
|
- label: '规格型号',
|
|
|
- prop: 'propertyName',
|
|
|
- overHidden: true,
|
|
|
- disabled: false,
|
|
|
- width: 100
|
|
|
- }, {
|
|
|
- label: '花纹',
|
|
|
- prop: 'pattern',
|
|
|
- overHidden: true,
|
|
|
- disabled: false,
|
|
|
- width: 100
|
|
|
- }, {
|
|
|
- label: '商品描述',
|
|
|
- prop: 'goodsDescription',
|
|
|
- disabled: false,
|
|
|
- overHidden: true,
|
|
|
- width: 100
|
|
|
- },
|
|
|
- {
|
|
|
- label: '单位',
|
|
|
- prop: 'units',
|
|
|
- type: "select",
|
|
|
- disabled: false,
|
|
|
- props: {
|
|
|
- label: "dictValue",
|
|
|
- value: "dictValue"
|
|
|
+ // {
|
|
|
+ // label: '单号',
|
|
|
+ // prop: 'poNo',
|
|
|
+ // overHidden: true,
|
|
|
+ // disabled: false,
|
|
|
+ // width: 100
|
|
|
+ // },
|
|
|
+ {
|
|
|
+ label: '商品编码',
|
|
|
+ prop: 'goodsNo',
|
|
|
+ overHidden: true,
|
|
|
+ disabled: false,
|
|
|
+ width: 100
|
|
|
+ },
|
|
|
+ {
|
|
|
+ label: '品牌',
|
|
|
+ prop: 'brandName',
|
|
|
+ disabled: false,
|
|
|
+ width: 100,
|
|
|
+ overHidden: true,
|
|
|
+ },
|
|
|
+ {
|
|
|
+ label: '规格型号',
|
|
|
+ prop: 'propertyName',
|
|
|
+ overHidden: true,
|
|
|
+ disabled: false,
|
|
|
+ width: 100
|
|
|
+ }, {
|
|
|
+ label: '花纹',
|
|
|
+ prop: 'pattern',
|
|
|
+ overHidden: true,
|
|
|
+ disabled: false,
|
|
|
+ width: 100
|
|
|
+ }, {
|
|
|
+ label: '商品描述',
|
|
|
+ prop: 'goodsDescription',
|
|
|
+ disabled: false,
|
|
|
+ overHidden: true,
|
|
|
+ width: 100
|
|
|
+ },
|
|
|
+ {
|
|
|
+ label: '单位',
|
|
|
+ prop: 'units',
|
|
|
+ type: "select",
|
|
|
+ disabled: false,
|
|
|
+ props: {
|
|
|
+ label: "dictValue",
|
|
|
+ value: "dictValue"
|
|
|
+ },
|
|
|
+ dicUrl: "/api/blade-system/dict-biz/dictionary?code=unit",
|
|
|
+ overHidden: true,
|
|
|
+ width: 100
|
|
|
},
|
|
|
- dicUrl: "/api/blade-system/dict-biz/dictionary?code=unit",
|
|
|
- overHidden: true,
|
|
|
- width: 100
|
|
|
- },
|
|
|
|
|
|
- {
|
|
|
- label: '发货数量',
|
|
|
- prop: 'sendNum',
|
|
|
- overHidden: true,
|
|
|
- width: 100,
|
|
|
- disabled: true,
|
|
|
- editDisplay: false,
|
|
|
- addDisplay: false
|
|
|
- },
|
|
|
- // {
|
|
|
- // label: '利润',
|
|
|
- // prop: 'profit',
|
|
|
- // overHidden: true,
|
|
|
- // width: 100
|
|
|
- // },
|
|
|
- {
|
|
|
- label: '小计',
|
|
|
- prop: 'subTotalMoney',
|
|
|
- overHidden: true,
|
|
|
- width: 100,
|
|
|
- disabled: true,
|
|
|
- editDisplay: false,
|
|
|
- addDisplay: false
|
|
|
- },
|
|
|
- // {
|
|
|
- // label: '返利',
|
|
|
- // prop: 'thisAmount',
|
|
|
- // overHidden: true,
|
|
|
- // width: 100
|
|
|
- // },
|
|
|
- {
|
|
|
- label: '成本',
|
|
|
- prop: 'costprie',
|
|
|
- overHidden: true,
|
|
|
- width: 100,
|
|
|
- disabled: true,
|
|
|
- editDisplay: false,
|
|
|
- addDisplay: false
|
|
|
+ {
|
|
|
+ label: '发货数量',
|
|
|
+ prop: 'sendNum',
|
|
|
+ overHidden: true,
|
|
|
+ width: 100,
|
|
|
+ disabled: true,
|
|
|
+ editDisplay: false,
|
|
|
+ addDisplay: false
|
|
|
+ },
|
|
|
+ // {
|
|
|
+ // label: '利润',
|
|
|
+ // prop: 'profit',
|
|
|
+ // overHidden: true,
|
|
|
+ // width: 100
|
|
|
+ // },
|
|
|
+ {
|
|
|
+ label: '小计',
|
|
|
+ prop: 'subTotalMoney',
|
|
|
+ overHidden: true,
|
|
|
+ width: 100,
|
|
|
+ disabled: true,
|
|
|
+ editDisplay: false,
|
|
|
+ addDisplay: false
|
|
|
+ },
|
|
|
+ // {
|
|
|
+ // label: '返利',
|
|
|
+ // prop: 'thisAmount',
|
|
|
+ // overHidden: true,
|
|
|
+ // width: 100
|
|
|
+ // },
|
|
|
+ {
|
|
|
+ label: '成本',
|
|
|
+ prop: 'costprie',
|
|
|
+ overHidden: true,
|
|
|
+ width: 100,
|
|
|
+ disabled: true,
|
|
|
+ editDisplay: false,
|
|
|
+ addDisplay: false
|
|
|
|
|
|
- },
|
|
|
- {
|
|
|
- label: '毛利',
|
|
|
- prop: 'grossProfit',
|
|
|
- overHidden: true,
|
|
|
- width: 100,
|
|
|
- disabled: true,
|
|
|
- editDisplay: false,
|
|
|
- addDisplay: false
|
|
|
- },
|
|
|
- {
|
|
|
- label: '返利后单价',
|
|
|
- prop: 'rebatePrice',
|
|
|
- overHidden: true,
|
|
|
- width: 100,
|
|
|
- disabled: true,
|
|
|
- editDisplay: false,
|
|
|
- addDisplay: false,
|
|
|
- hide: false,
|
|
|
- showColumn: true
|
|
|
- },
|
|
|
- {
|
|
|
- label: '返利后成本价',
|
|
|
- prop: 'rebateCostprie',
|
|
|
- overHidden: true,
|
|
|
- width: 100,
|
|
|
- disabled: true,
|
|
|
- editDisplay: false,
|
|
|
- addDisplay: false,
|
|
|
- hide: false,
|
|
|
- showColumn: true
|
|
|
- },
|
|
|
- {
|
|
|
- label: '返利后利润',
|
|
|
- prop: 'rebateProfit',
|
|
|
- overHidden: true,
|
|
|
- width: 100,
|
|
|
- disabled: true,
|
|
|
- editDisplay: false,
|
|
|
- addDisplay: false,
|
|
|
- hide: false,
|
|
|
- showColumn: true
|
|
|
- },
|
|
|
- {
|
|
|
- label: '退货数量',
|
|
|
- prop: "returnsNumber",
|
|
|
- overHidden: true,
|
|
|
- width: 100,
|
|
|
- disabled: true,
|
|
|
- },
|
|
|
- {
|
|
|
- label: '退货金额',
|
|
|
- prop: "returnsAmount",
|
|
|
- overHidden: true,
|
|
|
- width: 100,
|
|
|
- disabled: true,
|
|
|
- },
|
|
|
- {
|
|
|
- label: '备注',
|
|
|
- prop: "remarks",
|
|
|
- overHidden: true,
|
|
|
- width: 100,
|
|
|
- disabled: false,
|
|
|
+ },
|
|
|
+ {
|
|
|
+ label: '毛利',
|
|
|
+ prop: 'grossProfit',
|
|
|
+ overHidden: true,
|
|
|
+ width: 100,
|
|
|
+ disabled: true,
|
|
|
+ editDisplay: false,
|
|
|
+ addDisplay: false
|
|
|
+ },
|
|
|
+ {
|
|
|
+ label: '返利后单价',
|
|
|
+ prop: 'rebatePrice',
|
|
|
+ overHidden: true,
|
|
|
+ width: 100,
|
|
|
+ disabled: true,
|
|
|
+ editDisplay: false,
|
|
|
+ addDisplay: false,
|
|
|
+ hide: false,
|
|
|
+ showColumn: true
|
|
|
+ },
|
|
|
+ {
|
|
|
+ label: '返利后成本价',
|
|
|
+ prop: 'rebateCostprie',
|
|
|
+ overHidden: true,
|
|
|
+ width: 100,
|
|
|
+ disabled: true,
|
|
|
+ editDisplay: false,
|
|
|
+ addDisplay: false,
|
|
|
+ hide: false,
|
|
|
+ showColumn: true
|
|
|
+ },
|
|
|
+ {
|
|
|
+ label: '返利后利润',
|
|
|
+ prop: 'rebateProfit',
|
|
|
+ overHidden: true,
|
|
|
+ width: 100,
|
|
|
+ disabled: true,
|
|
|
+ editDisplay: false,
|
|
|
+ addDisplay: false,
|
|
|
+ hide: false,
|
|
|
+ showColumn: true
|
|
|
+ },
|
|
|
+ {
|
|
|
+ label: '退货数量',
|
|
|
+ prop: "returnsNumber",
|
|
|
+ overHidden: true,
|
|
|
+ width: 100,
|
|
|
+ disabled: true,
|
|
|
+ },
|
|
|
+ {
|
|
|
+ label: '退货金额',
|
|
|
+ prop: "returnsAmount",
|
|
|
+ overHidden: true,
|
|
|
+ width: 100,
|
|
|
+ disabled: true,
|
|
|
+ },
|
|
|
+ {
|
|
|
+ label: '备注',
|
|
|
+ prop: "remarks",
|
|
|
+ overHidden: true,
|
|
|
+ width: 100,
|
|
|
+ disabled: false,
|
|
|
|
|
|
- }
|
|
|
+ }
|
|
|
]
|
|
|
},
|
|
|
selectionMultilist: [], // 多选数据
|
|
@@ -1621,6 +1624,7 @@ export default {
|
|
|
current: 1,
|
|
|
size: 10,
|
|
|
corpType: 'KH',
|
|
|
+ enableOrNot:1,
|
|
|
cname: cname ? cname : null,
|
|
|
}).then(res => {
|
|
|
this.customerData = res.data.data.records
|
|
@@ -1688,7 +1692,7 @@ export default {
|
|
|
this.form.salerId = row.id
|
|
|
this.form.salerName = row.name
|
|
|
} else {
|
|
|
- this.form.salerId =null
|
|
|
+ this.form.salerId = null
|
|
|
this.form.salerName = null
|
|
|
}
|
|
|
}
|
|
@@ -1768,6 +1772,7 @@ export default {
|
|
|
goodsNumtype: false,
|
|
|
// 价格
|
|
|
pricetype: false,
|
|
|
+ // sendNum: 0,
|
|
|
}
|
|
|
if (item.goodsFilesList && item.goodsFilesList.length) {
|
|
|
for (let ite of item.goodsFilesList) {
|
|
@@ -1968,7 +1973,7 @@ export default {
|
|
|
this.isAdd = false
|
|
|
if (this.form.billType == 1) {
|
|
|
this.optionForm.column.forEach(its => {
|
|
|
- if (its.prop == 'customerName' || its.prop == 'businesDate' || its.prop == 'businessSource' || its.prop == 'returnsNumber' || its.prop == 'returnsAmount' || its.prop == 'srcOrdNo'|| its.prop == 'phone'|| its.prop == 'recAddress'|| its.prop == 'receivableType') {
|
|
|
+ if (its.prop == 'customerName' || its.prop == 'businesDate' || its.prop == 'businessSource' || its.prop == 'returnsNumber' || its.prop == 'returnsAmount' || its.prop == 'srcOrdNo' || its.prop == 'phone' || its.prop == 'recAddress' || its.prop == 'receivableType') {
|
|
|
this.$set(its, 'disabled', true)
|
|
|
this.isSaveBtn = false;
|
|
|
this.isDisabledTask = false;
|
|
@@ -2460,6 +2465,9 @@ export default {
|
|
|
picihao = true
|
|
|
|
|
|
}
|
|
|
+ if (!this.form.orderItemsList[i].sendNum) {
|
|
|
+ this.form.orderItemsList[i].sendNum = 0
|
|
|
+ }
|
|
|
}
|
|
|
this.mingxibaocun = true
|
|
|
if (picihao) {
|