|
@@ -525,7 +525,6 @@
|
|
|
filter-by-label
|
|
filter-by-label
|
|
|
label-in-value
|
|
label-in-value
|
|
|
v-model="scope.row.product_id"
|
|
v-model="scope.row.product_id"
|
|
|
- @change="$refs.xTable.updateStatus(scope)"
|
|
|
|
|
@on-change="
|
|
@on-change="
|
|
|
handleSelectProductMetail(
|
|
handleSelectProductMetail(
|
|
|
scope.row,
|
|
scope.row,
|
|
@@ -928,12 +927,12 @@
|
|
|
</vxe-column>
|
|
</vxe-column>
|
|
|
<vxe-column title="附加项" min-width="150" :edit-render="{}">
|
|
<vxe-column title="附加项" min-width="150" :edit-render="{}">
|
|
|
<template #edit="scope">
|
|
<template #edit="scope">
|
|
|
- <div v-if="!scope.row.is_metal">
|
|
|
|
|
|
|
+ <div>
|
|
|
<div
|
|
<div
|
|
|
v-for="(ext_detail, idx) in scope.row.extArray"
|
|
v-for="(ext_detail, idx) in scope.row.extArray"
|
|
|
:key="ext_detail.ext_id"
|
|
:key="ext_detail.ext_id"
|
|
|
:style="
|
|
:style="
|
|
|
- idx != scope.row.ext.length - 1
|
|
|
|
|
|
|
+ idx != scope.row.extArray.length - 1
|
|
|
? {
|
|
? {
|
|
|
borderBottom: '1px solid #e8eaec',
|
|
borderBottom: '1px solid #e8eaec',
|
|
|
padding: '10px 0',
|
|
padding: '10px 0',
|
|
@@ -3149,6 +3148,7 @@ export default {
|
|
|
this.axios("/api/employee_list").then((res) => (this.users = res.data));
|
|
this.axios("/api/employee_list").then((res) => (this.users = res.data));
|
|
|
},
|
|
},
|
|
|
handleExtraAdd(array, type) {
|
|
handleExtraAdd(array, type) {
|
|
|
|
|
+ console.log(`array`, array);
|
|
|
array.push({
|
|
array.push({
|
|
|
num: 0,
|
|
num: 0,
|
|
|
price: 0,
|
|
price: 0,
|
|
@@ -3343,6 +3343,7 @@ export default {
|
|
|
this.clientDetailList_address[0].id || 0;
|
|
this.clientDetailList_address[0].id || 0;
|
|
|
this.info.service_id = re.data.detail.service_id;
|
|
this.info.service_id = re.data.detail.service_id;
|
|
|
this.fax = re.data.detail.fax;
|
|
this.fax = re.data.detail.fax;
|
|
|
|
|
+ this.HandleAutoCreateNewLine();
|
|
|
});
|
|
});
|
|
|
});
|
|
});
|
|
|
// }
|
|
// }
|
|
@@ -3354,6 +3355,7 @@ export default {
|
|
|
JSON.stringify(this.charge_list)
|
|
JSON.stringify(this.charge_list)
|
|
|
);
|
|
);
|
|
|
this.clientList = JSON.parse(JSON.stringify(this.cus_list));
|
|
this.clientList = JSON.parse(JSON.stringify(this.cus_list));
|
|
|
|
|
+ this.HandleAutoCreateNewLine();
|
|
|
}
|
|
}
|
|
|
},
|
|
},
|
|
|
handleClientDetailChange(value) {
|
|
handleClientDetailChange(value) {
|
|
@@ -3694,12 +3696,25 @@ export default {
|
|
|
measure: this._measure, //测量字段数组
|
|
measure: this._measure, //测量字段数组
|
|
|
support_remark: this.support_remark, //备注列表
|
|
support_remark: this.support_remark, //备注列表
|
|
|
is_metal: false,
|
|
is_metal: false,
|
|
|
|
|
+ extArray: [
|
|
|
|
|
+ {
|
|
|
|
|
+ num: 0,
|
|
|
|
|
+ price: 0,
|
|
|
|
|
+ total_price: 0,
|
|
|
|
|
+ type: 2,
|
|
|
|
|
+ remark: "",
|
|
|
|
|
+ title: "",
|
|
|
|
|
+ id: "",
|
|
|
|
|
+ is_metal: true,
|
|
|
|
|
+ },
|
|
|
|
|
+ ],
|
|
|
process_obj: JSON.parse(JSON.stringify(this.process_obj)), //工艺属性含选项对象
|
|
process_obj: JSON.parse(JSON.stringify(this.process_obj)), //工艺属性含选项对象
|
|
|
};
|
|
};
|
|
|
obj.process_obj.map(
|
|
obj.process_obj.map(
|
|
|
(v) => ((obj[v.id] = ""), (obj.procedure_properties[v.id] = ""))
|
|
(v) => ((obj[v.id] = ""), (obj.procedure_properties[v.id] = ""))
|
|
|
);
|
|
);
|
|
|
this.tableData.push(obj);
|
|
this.tableData.push(obj);
|
|
|
|
|
+ this.$forceUpdate();
|
|
|
} else {
|
|
} else {
|
|
|
this.$Message.warning("请先选择客户");
|
|
this.$Message.warning("请先选择客户");
|
|
|
}
|
|
}
|
|
@@ -3718,7 +3733,6 @@ export default {
|
|
|
});
|
|
});
|
|
|
},
|
|
},
|
|
|
handleSet(row, index, type) {
|
|
handleSet(row, index, type) {
|
|
|
- console.log("row :>> ", row);
|
|
|
|
|
let obj;
|
|
let obj;
|
|
|
// 1 新增 2 编辑 3 删除 4复制 5详情
|
|
// 1 新增 2 编辑 3 删除 4复制 5详情
|
|
|
switch (type) {
|
|
switch (type) {
|
|
@@ -4440,11 +4454,11 @@ export default {
|
|
|
});
|
|
});
|
|
|
}
|
|
}
|
|
|
});
|
|
});
|
|
|
- this.handleClearExtInfo(
|
|
|
|
|
- this.modalData,
|
|
|
|
|
- this.pre_bp_id,
|
|
|
|
|
- res.data.bp_id
|
|
|
|
|
- );
|
|
|
|
|
|
|
+ // this.handleClearExtInfo(
|
|
|
|
|
+ // this.modalData,
|
|
|
|
|
+ // this.pre_bp_id,
|
|
|
|
|
+ // res.data.bp_id
|
|
|
|
|
+ // );
|
|
|
// 是否有上一个的工艺属性ID
|
|
// 是否有上一个的工艺属性ID
|
|
|
this.chooseLastRouteId(this.modalData, res);
|
|
this.chooseLastRouteId(this.modalData, res);
|
|
|
this.$forceUpdate();
|
|
this.$forceUpdate();
|
|
@@ -4883,33 +4897,39 @@ export default {
|
|
|
match_item.max > v.long * 1 + product["H"] * 1 &&
|
|
match_item.max > v.long * 1 + product["H"] * 1 &&
|
|
|
match_item.min <= v.long * 1 + product["H"] * 1
|
|
match_item.min <= v.long * 1 + product["H"] * 1
|
|
|
) {
|
|
) {
|
|
|
- part_arr.part_detail.map((v) => {
|
|
|
|
|
- if (v.part_detail_id == k) {
|
|
|
|
|
- v.material_detail_id =
|
|
|
|
|
- match_item.material_detail_id;
|
|
|
|
|
- v.material_detail_org_num = match_item.num;
|
|
|
|
|
- v.material_detail_num = match_item.num;
|
|
|
|
|
- }
|
|
|
|
|
- });
|
|
|
|
|
|
|
+ part_arr &&
|
|
|
|
|
+ part_arr.part_detail &&
|
|
|
|
|
+ part_arr.part_detail.map((v) => {
|
|
|
|
|
+ if (v.part_detail_id == k) {
|
|
|
|
|
+ v.material_detail_id =
|
|
|
|
|
+ match_item.material_detail_id;
|
|
|
|
|
+ v.material_detail_org_num = match_item.num;
|
|
|
|
|
+ v.material_detail_num = match_item.num;
|
|
|
|
|
+ }
|
|
|
|
|
+ });
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
});
|
|
});
|
|
|
- }
|
|
|
|
|
- if (
|
|
|
|
|
- match_item.max > product[match_item.e_title] &&
|
|
|
|
|
- match_item.min <= product[match_item.e_title]
|
|
|
|
|
- ) {
|
|
|
|
|
- part_arr.part_detail.map((v) => {
|
|
|
|
|
- if (v.part_detail_id == k) {
|
|
|
|
|
- v.material_detail_id = match_item.material_detail_id;
|
|
|
|
|
- v.material_detail_org_num = match_item.num;
|
|
|
|
|
- v.material_detail_num = match_item.num;
|
|
|
|
|
- }
|
|
|
|
|
- });
|
|
|
|
|
|
|
+ } else {
|
|
|
|
|
+ if (
|
|
|
|
|
+ match_item.max > product[match_item.e_title] &&
|
|
|
|
|
+ match_item.min <= product[match_item.e_title]
|
|
|
|
|
+ ) {
|
|
|
|
|
+ part_arr &&
|
|
|
|
|
+ part_arr.part_detail &&
|
|
|
|
|
+ part_arr.part_detail.map((v) => {
|
|
|
|
|
+ if (v.part_detail_id == k) {
|
|
|
|
|
+ v.material_detail_id = match_item.material_detail_id;
|
|
|
|
|
+ v.material_detail_org_num = match_item.num;
|
|
|
|
|
+ v.material_detail_num = match_item.num;
|
|
|
|
|
+ }
|
|
|
|
|
+ });
|
|
|
|
|
+ }
|
|
|
}
|
|
}
|
|
|
});
|
|
});
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
+ this.handleCalcCount();
|
|
|
this.$forceUpdate();
|
|
this.$forceUpdate();
|
|
|
});
|
|
});
|
|
|
},
|
|
},
|
|
@@ -4934,10 +4954,10 @@ export default {
|
|
|
if (part_detail.material_detail_list.length > 1) {
|
|
if (part_detail.material_detail_list.length > 1) {
|
|
|
try {
|
|
try {
|
|
|
part_detail.longCalcFinal = eval(part_detail._longCalc);
|
|
part_detail.longCalcFinal = eval(part_detail._longCalc);
|
|
|
- part_detail.material_detail_id = this.handleFindNearest(
|
|
|
|
|
- part_detail.material_detail_list,
|
|
|
|
|
- part_detail.longCalcFinal
|
|
|
|
|
- );
|
|
|
|
|
|
|
+ // part_detail.material_detail_id = this.handleFindNearest(
|
|
|
|
|
+ // part_detail.material_detail_list,
|
|
|
|
|
+ // part_detail.longCalcFinal
|
|
|
|
|
+ // );
|
|
|
} catch (error) {
|
|
} catch (error) {
|
|
|
console.log("error :>> ", error);
|
|
console.log("error :>> ", error);
|
|
|
}
|
|
}
|