This commit is contained in:
parent
ca424afc79
commit
159fb22134
|
|
@ -1449,63 +1449,14 @@ export default {
|
|||
this.loadSchemeDataById(scheme_id);
|
||||
},
|
||||
reloadDrawer(index) {
|
||||
let drawer_detailData = this.drawer_detailsData[index];
|
||||
if (!drawer_detailData.scheme_id) return;
|
||||
const json = `{"id":${drawer_detailData.scheme_id}}`; // 构造json
|
||||
this.$mk.post({ // 获取详情数据
|
||||
url: `${BASE_URL.BASE_URL}/BathroomScheme/v1/bathroom/scheme/detail`, // 详情接口地址
|
||||
loading: "加载中...",
|
||||
data: json,
|
||||
config: {
|
||||
headers: {
|
||||
'Content-Type': 'application/json'
|
||||
}
|
||||
|
||||
let drawers = this.$refs['drawer']; // 获取抽屉组件
|
||||
|
||||
if (drawers && drawers[index] && drawers[index].reloadDrawer) {
|
||||
drawers[index].reloadDrawer();
|
||||
}
|
||||
}).then(a => {
|
||||
|
||||
let row = a.data.bathroom_scheme; // 重新加载方案数据
|
||||
|
||||
|
||||
let fittingsList = JSON.parse(row.fittingsList || "[]"); // 获取部件列表
|
||||
fittingsList = fittingsList.filter(a => a.fittings && a.fittings[0]); // 过滤部件列表
|
||||
let partsList = JSON.parse(row.partsList || "[]"); // 获取配件列表
|
||||
partsList = partsList.filter(a => a.parts && a.parts[0]); // 过滤配件列表
|
||||
let packagingList = JSON.parse(row.packagingList || "[]"); // 获取包装列表
|
||||
packagingList = packagingList.filter(a => a.packaging && a.packaging[0]); // 过滤包装列表
|
||||
|
||||
let laborList = JSON.parse(row.laborList || "[]"); // 获取人工列表
|
||||
laborList = laborList.filter(a => a.labor && a.labor[0]); // 过滤人工列表
|
||||
let materialList = JSON.parse(row.materialList || "[]"); // 获取材料列表
|
||||
materialList = materialList.filter(a => a.material && a.material[0]); // 过滤材料列表
|
||||
|
||||
|
||||
let paintLaborList = JSON.parse(row.paintLaborList || "[]"); // 获取油漆人工列表
|
||||
paintLaborList = paintLaborList.filter(a => a.labor && a.labor[0]); // 过滤油漆人工列表
|
||||
let paintMaterialList = JSON.parse(row.paintMaterialList || "[]"); // 获取油漆材料列表
|
||||
paintMaterialList = paintMaterialList.filter(a => a.material && a.material[0]); // 过滤油漆材料列表
|
||||
|
||||
|
||||
let updateToList = ({ sourceList, targetList }) => {
|
||||
sourceList.forEach(item => {
|
||||
let oldItem = targetList.filter(a => a.id == item.id);
|
||||
if (oldItem.length) { // 如果有原来行
|
||||
//覆盖 更新 原来行的数据
|
||||
Object.assign(oldItem[0], item);
|
||||
}
|
||||
});
|
||||
|
||||
};
|
||||
updateToList({ sourceList: fittingsList, targetList: drawer_detailData.fittingsList })
|
||||
updateToList({ sourceList: partsList, targetList: drawer_detailData.partsList })
|
||||
updateToList({ sourceList: packagingList, targetList: drawer_detailData.packagingList })
|
||||
updateToList({ sourceList: laborList, targetList: drawer_detailData.laborList })
|
||||
updateToList({ sourceList: materialList, targetList: drawer_detailData.materialList })
|
||||
updateToList({ sourceList: paintLaborList, targetList: drawer_detailData.paintLaborList })
|
||||
updateToList({ sourceList: paintMaterialList, targetList: drawer_detailData.paintMaterialList })
|
||||
|
||||
this.calculateAll();
|
||||
|
||||
});
|
||||
|
||||
|
||||
},
|
||||
loadSchemeDataById(dataId, callback) { // 加载方案数据
|
||||
const json = `{"id":${dataId}}`; // 构造json
|
||||
|
|
@ -1574,9 +1525,9 @@ export default {
|
|||
|
||||
} else { //主柜
|
||||
|
||||
|
||||
|
||||
this.mainTabTitle = row.type == '1' ? '主柜' : '镜柜';
|
||||
|
||||
|
||||
this.addToList({ scheme_id, listData: fittingsList, detailsData: this.fittings_detailsData }); // 把来源数据添加到目标表格数据
|
||||
this.addToList({ scheme_id, listData: partsList, detailsData: this.parts_detailsData }); // 把来源数据添加到目标表格数据
|
||||
this.addToList({ scheme_id, listData: packagingList, detailsData: this.packaging_detailsData }); // 把来源数据添加到目标表格数据
|
||||
|
|
|
|||
|
|
@ -1026,6 +1026,68 @@ export default {
|
|||
this.$mk.error(a.data.msg);
|
||||
});
|
||||
},
|
||||
reloadDrawer() {
|
||||
let drawer_detailData = this.item;
|
||||
if (!drawer_detailData.scheme_id) return;
|
||||
const json = `{"id":${drawer_detailData.scheme_id}}`; // 构造json
|
||||
this.$mk.post({ // 获取详情数据
|
||||
url: `${BASE_URL.BASE_URL}/BathroomScheme/v1/bathroom/scheme/detail`, // 详情接口地址
|
||||
loading: "加载中...",
|
||||
data: json,
|
||||
config: {
|
||||
headers: {
|
||||
'Content-Type': 'application/json'
|
||||
}
|
||||
}
|
||||
}).then(a => {
|
||||
|
||||
let row = a.data.bathroom_scheme; // 重新加载方案数据
|
||||
|
||||
|
||||
let fittingsList = JSON.parse(row.fittingsList || "[]"); // 获取部件列表
|
||||
fittingsList = fittingsList.filter(a => a.fittings && a.fittings[0]); // 过滤部件列表
|
||||
let partsList = JSON.parse(row.partsList || "[]"); // 获取配件列表
|
||||
partsList = partsList.filter(a => a.parts && a.parts[0]); // 过滤配件列表
|
||||
let packagingList = JSON.parse(row.packagingList || "[]"); // 获取包装列表
|
||||
packagingList = packagingList.filter(a => a.packaging && a.packaging[0]); // 过滤包装列表
|
||||
|
||||
let laborList = JSON.parse(row.laborList || "[]"); // 获取人工列表
|
||||
laborList = laborList.filter(a => a.labor && a.labor[0]); // 过滤人工列表
|
||||
let materialList = JSON.parse(row.materialList || "[]"); // 获取材料列表
|
||||
materialList = materialList.filter(a => a.material && a.material[0]); // 过滤材料列表
|
||||
|
||||
|
||||
let paintLaborList = JSON.parse(row.paintLaborList || "[]"); // 获取油漆人工列表
|
||||
paintLaborList = paintLaborList.filter(a => a.labor && a.labor[0]); // 过滤油漆人工列表
|
||||
let paintMaterialList = JSON.parse(row.paintMaterialList || "[]"); // 获取油漆材料列表
|
||||
paintMaterialList = paintMaterialList.filter(a => a.material && a.material[0]); // 过滤油漆材料列表
|
||||
|
||||
|
||||
let updateToList = ({ sourceList, targetList }) => {
|
||||
sourceList.forEach(item => {
|
||||
targetList.forEach(targetItem=>{
|
||||
if(targetItem.id == item.id){
|
||||
Object.assign(targetItem, item);
|
||||
}
|
||||
})
|
||||
});
|
||||
|
||||
};
|
||||
updateToList({ sourceList: fittingsList, targetList: this.fittings_detailsData })
|
||||
updateToList({ sourceList: partsList, targetList: this.parts_detailsData })
|
||||
updateToList({ sourceList: packagingList, targetList: this.packaging_detailsData })
|
||||
updateToList({ sourceList: laborList, targetList: this.labor_detailsData})
|
||||
updateToList({ sourceList: materialList, targetList: this.material_detailsData })
|
||||
updateToList({ sourceList: paintLaborList, targetList: this.paintLabor_detailsData })
|
||||
updateToList({ sourceList: paintMaterialList, targetList: this.paintMaterial_detailsData })
|
||||
|
||||
|
||||
this.calculateAll();
|
||||
|
||||
|
||||
});
|
||||
},
|
||||
|
||||
formatShowNumber(value, points) {
|
||||
if (!value) {
|
||||
return '<span>' + (0.0).toFixed(points || 0) + '</span>';
|
||||
|
|
@ -1999,6 +2061,8 @@ export default {
|
|||
},
|
||||
|
||||
_calculateAll() {
|
||||
|
||||
|
||||
this.calculateRows({ detailsData: this.fittings_detailsData, names: ["long", "width", "height", "seal", "board_length", "paint_area"], totalPrev: "fittings" });
|
||||
|
||||
this.totalRows({ detailsData: this.fittings_detailsData, names: ["quantity"], totalPrev: "fittings" });
|
||||
|
|
@ -2023,8 +2087,7 @@ export default {
|
|||
|
||||
this.formOptions.data.show_expense = parseFloat(this.formOptions.data.expense || 0).toFixed(2);
|
||||
this.formOptions.data.show_paint_expense = parseFloat(this.formOptions.data.paint_expense || 0).toFixed(2);
|
||||
|
||||
|
||||
|
||||
|
||||
let postdata = this.item;
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue