|
@@ -1383,6 +1383,7 @@ export const useHooks = (t?: any) => {
|
|
|
data.mtrlname = item.mtrlname;
|
|
|
data.priceunit = item.priceunit;
|
|
|
data.shrinkage = item.price; // 收缩率
|
|
|
+ data.extra_cost = item.extra_cost;
|
|
|
if (item.if_inputqty == 1 || Number(data.thickness) == 0) {
|
|
|
data.thickness = Number(item.thickness);
|
|
|
}
|
|
@@ -1397,6 +1398,8 @@ export const useHooks = (t?: any) => {
|
|
|
let mattress_width = state.LjDetailRef._mainData.mattress_width ?? 0;
|
|
|
let mattress_length = state.LjDetailRef._mainData.mattress_length ?? 0;
|
|
|
_qty = (mattress_width / 100 + mattress_length / 100) * 2;
|
|
|
+ } else if ([206].includes(data.formulakind)) {
|
|
|
+ _qty = 2;
|
|
|
}
|
|
|
data.qty = _qty;
|
|
|
|
|
@@ -1411,13 +1414,18 @@ export const useHooks = (t?: any) => {
|
|
|
// 床网与主副规格互联
|
|
|
updateSubspecsTable();
|
|
|
}
|
|
|
- autoLoadMtrlExtra(item, state.specialProcessesMxRef);
|
|
|
+ autoLoadMtrlExtra(item);
|
|
|
});
|
|
|
}
|
|
|
}
|
|
|
};
|
|
|
|
|
|
const rModelClearMtrl = (data: any, $table?: any) => {
|
|
|
+ const _item = {
|
|
|
+ mtrlid: data.mtrlid,
|
|
|
+ mtrlname: data.mtrlname,
|
|
|
+ extra_cost: data.extra_cost
|
|
|
+ };
|
|
|
console.log("rModelClearMtrl data :>> ", data);
|
|
|
data.mattressid = state.LjDetailRef._mainData.mattressid;
|
|
|
data.mattressmxid = 0;
|
|
@@ -1444,6 +1452,8 @@ export const useHooks = (t?: any) => {
|
|
|
// 床网与主副规格互联
|
|
|
updateSubspecsTable();
|
|
|
}
|
|
|
+
|
|
|
+ autoLoadMtrlExtra(_item, 5, "del");
|
|
|
});
|
|
|
}
|
|
|
};
|
|
@@ -3675,8 +3685,20 @@ export const useHooks = (t?: any) => {
|
|
|
];
|
|
|
|
|
|
let _disabled = arr.some(t => t.type.includes(row.formulakind));
|
|
|
+ let _mtrlItem = {
|
|
|
+ mtrlid: row.mtrlid,
|
|
|
+ mtrlname: row.mtrlname,
|
|
|
+ extra_cost: row.extra_cost
|
|
|
+ };
|
|
|
|
|
|
- return <el-input v-model={scope.row.qty} type="number" disabled={row.mtrlid == 0 || _disabled}></el-input>;
|
|
|
+ return (
|
|
|
+ <el-input
|
|
|
+ v-model={scope.row.qty}
|
|
|
+ type="number"
|
|
|
+ disabled={row.mtrlid == 0 || _disabled}
|
|
|
+ onChange={val => autoLoadMtrlExtra({ ..._mtrlItem, qty: val })}
|
|
|
+ ></el-input>
|
|
|
+ );
|
|
|
}
|
|
|
},
|
|
|
{
|
|
@@ -5725,17 +5747,14 @@ export const useHooks = (t?: any) => {
|
|
|
/**
|
|
|
* @description 获取特殊工艺数据
|
|
|
* @params mtrlItem 物料
|
|
|
- * @params targetRef 目标表格实例
|
|
|
* @params arg_extraid 数据库建立的特殊费用id,5: 物料的特殊工艺费用
|
|
|
*/
|
|
|
- const autoLoadMtrlExtra = (mtrlItem?: any, targetRef?: any, arg_extraid = 5) => {
|
|
|
- //计算拼侧数量
|
|
|
- if (mtrlItem?.extra_cost == 0) return;
|
|
|
-
|
|
|
- // const $table = tableRef.element;
|
|
|
- // const { visibleData } = $table.getTableData();
|
|
|
- const $tableTarget = targetRef.element;
|
|
|
+ const autoLoadMtrlExtra = (mtrlItem?: any, arg_extraid = 5, action = "add") => {
|
|
|
+ const $tableTarget = state.specialProcessesMxRef.element;
|
|
|
const { visibleData: tgVisibleData } = $tableTarget.getTableData();
|
|
|
+ let _sum = getSumMtrlQty(mtrlItem?.mtrlid);
|
|
|
+
|
|
|
+ console.log("autoLoadMtrlExtra _sum :>> ", _sum, mtrlItem);
|
|
|
|
|
|
let _remove = [];
|
|
|
tgVisibleData.map(t => {
|
|
@@ -5744,6 +5763,15 @@ export const useHooks = (t?: any) => {
|
|
|
}
|
|
|
});
|
|
|
$tableTarget.remove(_remove);
|
|
|
+
|
|
|
+ //计算拼侧数量
|
|
|
+ if (action == "add") {
|
|
|
+ if (mtrlItem?.extra_cost == 0) return;
|
|
|
+ } else if (action == "del") {
|
|
|
+ if (_sum <= 0) {
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ }
|
|
|
let result = [];
|
|
|
|
|
|
let extraArr = state.specialProcessesMxData.filter(item => item.typeid == 1 && item.extraid == arg_extraid);
|
|
@@ -5763,7 +5791,7 @@ export const useHooks = (t?: any) => {
|
|
|
extramxid: o.extramxid,
|
|
|
extraname: mtrlItem.mtrlname,
|
|
|
price: mtrlItem.extra_cost,
|
|
|
- qty: o.qty,
|
|
|
+ qty: _sum,
|
|
|
dscrp: o.dscrp,
|
|
|
inputtype: o.inputtype,
|
|
|
typeid: o.typeid,
|
|
@@ -5774,6 +5802,30 @@ export const useHooks = (t?: any) => {
|
|
|
$tableTarget.insertAt(_arr, -1);
|
|
|
}
|
|
|
};
|
|
|
+
|
|
|
+ /**
|
|
|
+ * @description 统计物料使用数量
|
|
|
+ * @param mtrlid
|
|
|
+ * @returns
|
|
|
+ */
|
|
|
+ const getSumMtrlQty = (mtrlid?: number) => {
|
|
|
+ let sum = 0;
|
|
|
+ state.fabricMxTabList.map(t => {
|
|
|
+ if (t.ref) {
|
|
|
+ if (dynamicRef(t.ref) && !["specialProcessesMxRef", "additionalCostsMxRef"].includes(t.ref)) {
|
|
|
+ let $table = dynamicRef(t.ref)?.element;
|
|
|
+ $table.clearEdit();
|
|
|
+ let { visibleData } = $table.getTableData();
|
|
|
+ visibleData.map((itm, idx) => {
|
|
|
+ if (itm.mtrlid == mtrlid) {
|
|
|
+ sum += Number(itm.qty ?? 0);
|
|
|
+ }
|
|
|
+ });
|
|
|
+ }
|
|
|
+ }
|
|
|
+ });
|
|
|
+ return sum;
|
|
|
+ };
|
|
|
/**
|
|
|
* @description 自动导入修改特殊工艺费用
|
|
|
*/
|