jiazx0107@163.com
2023-11-06 69cd9f59a0fabf12f8c9147fcba7f69817a870b3
igds-web/src/main/resources/static/admin/inout/weight.js
@@ -34,87 +34,120 @@
/**
 * 出库-称重自动计算
 * 1、净重 = 毛重 - 皮重 ; 总扣重 = 扣水杂 + 现场扣重 + 其他扣重
 * 2、水分增重,整数 = 增重,负数= 扣重
 * 3、结算重量 = 净重 - 总扣重 (含水杂增重); 入库重量 = 净重 - 总扣重 (不含水杂增重)
 * 1、净重 = 毛重 - 皮重 ; 总扣重 = 质检扣重  + 其他扣重
 * 2、结算重量 = 净重 - 总扣重 + 质检扣重; 入库重量 = 净重 - 总扣重
 * 注意:如果是手动修改了水分和杂质的扣重,则不按照配置规则进行增扣重计算
 * @param name 触发事件的属性名称
 */
function deAutoByOut(name) {
    var curData = form.val("form-data");
    if (curData.fullWeight == 0 || curData.emptyWeight == 0) {
        return;
    }
    //汇总结果
    var deSum = 0, addSum = 0, settleWeight = 0, recordWeight = 0;
    // 净重
    var netWeight = curData.fullWeight - curData.emptyWeight;
    //扣水杂
    var deWet = curData.deWet, deImpurity = curData.deImpurity;
    if (netWeight <= 0) {
        layer.alert("净重小于0,当前称重存在逻辑问题");
        alertError("净重<=0,当前环节存在逻辑错误,请核对");
        return;
    }
    //其他信息
    var dePackage = curData.dePackage, deOther = curData.deOther, settleWeight = 0,
        recordWeight = 0, deSum = 0, deCheck = curData.deCheck, addCheck = curData.addCheck;
    var deBase = 0, multiple = 0;
    //水分杂质,更改比例并且水分扣重还没计算情况下
    if ("fullWeight" == name || null == deWet) {
        var checkItem = this.getCheckItem(recordData.checkItems, CHECK_ST.C01, CHECK_ST.C020101);
        if (checkItem) {
            deBase = Number(curData.wet) - Number(checkItem.upperLimit);
            if (deBase == 0) return;
            multiple = parseInt(deBase / checkItem.ruleNum);//倍数
            deWet = (netWeight * multiple * checkItem.ruleReduce / 100.00).toFixed(0);
        }
    }
    //杂质
    if ("fullWeight" == name || null == deImpurity) {
        checkItem = this.getCheckItem(recordData.checkItems, CHECK_ST.C02, CHECK_ST.C01010301);
        if (checkItem) {
            deBase = Number(curData.impurity) - Number(checkItem.upperLimit);
            if (deBase == 0) return;
            multiple = parseInt(deBase / checkItem.ruleNum);
            deImpurity = (netWeight * multiple * checkItem.ruleReduce / 100.00).toFixed(0);
        }
    }
    recordWeight = Number(netWeight) - Number(dePackage) - Number(deOther) - Number(deCheck);
    settleWeight = Number(recordWeight) + Number(addCheck);
    /** 总扣重,不含增重*/
    deSum = Number(curData.deOther) + Number(curData.deHandle);
    deSum = Number(deOther) + Number(deCheck)
    if (Number(deWet) > 0) {//增重
        addSum = addSum + Number(deWet);
    } else {
        deSum = deSum + Number(deWet);
    }
    if (Number(deImpurity) > 0) {//扣重
        deSum = deSum + Number(deImpurity);
    } else {
        addSum = addSum + Number(deImpurity);
    }
    netWeight = netWeight.toFixed(0);
    recordWeight = recordWeight.toFixed(0);
    settleWeight = settleWeight.toFixed(0);
    deSum = deSum.toFixed(0);
    /** 增重转正数,便于计算  */
    addSum = Math.abs(addSum).toFixed(0);
    /** 入库重量 = 净重 - 总扣重  */
    recordWeight = Number(netWeight) - Number(deSum);
    /** 结算重量 = 净重 - 总扣重 + 增重 */
    settleWeight = Number(netWeight) - Number(deSum) + Number(addSum);
    form.val("form-data", {
        netWeight: netWeight,
        deImpurity: deImpurity,
        deWet: deWet,
        deSum: deSum,
        settleWeight: settleWeight,
        recordWeight: recordWeight
        recordWeight: recordWeight,
        deSum: deSum
    });
    form.render();
}
// function deAutoByOut(name) {
//     var curData = form.val("form-data");
//
//     if (curData.fullWeight == 0 || curData.emptyWeight == 0) {
//         return;
//     }
//     //汇总结果
//     var deSum = 0, addSum = 0, settleWeight = 0, recordWeight = 0;
//     // 净重
//     var netWeight = curData.fullWeight - curData.emptyWeight;
//     //扣水杂
//     var deWet = curData.deWet, deImpurity = curData.deImpurity;
//
//     if (netWeight <= 0) {
//         layer.alert("净重小于0,当前称重存在逻辑问题");
//         return;
//     }
//
//     var deBase = 0, multiple = 0;
//     //水分杂质,更改比例并且水分扣重还没计算情况下
//     if ("fullWeight" == name || null == deWet) {
//         var checkItem = this.getCheckItem(recordData.checkItems, CHECK_ST.C01, CHECK_ST.C020101);
//         if (checkItem) {
//             deBase = Number(curData.wet) - Number(checkItem.upperLimit);
//             if (deBase == 0) return;
//             multiple = parseInt(deBase / checkItem.ruleNum);//倍数
//             deWet = (netWeight * multiple * checkItem.ruleReduce / 100.00).toFixed(0);
//         }
//     }
//     //杂质
//     if ("fullWeight" == name || null == deImpurity) {
//         checkItem = this.getCheckItem(recordData.checkItems, CHECK_ST.C02, CHECK_ST.C01010301);
//         if (checkItem) {
//             deBase = Number(curData.impurity) - Number(checkItem.upperLimit);
//             if (deBase == 0) return;
//             multiple = parseInt(deBase / checkItem.ruleNum);
//             deImpurity = (netWeight * multiple * checkItem.ruleReduce / 100.00).toFixed(0);
//         }
//     }
//
//     /** 总扣重,不含增重*/
//     deSum = Number(curData.deOther) + Number(curData.deHandle);
//
//
//     if (Number(deWet) > 0) {//增重
//         addSum = addSum + Number(deWet);
//     } else {
//         deSum = deSum + Number(deWet);
//     }
//
//     if (Number(deImpurity) > 0) {//扣重
//         deSum = deSum + Number(deImpurity);
//     } else {
//         addSum = addSum + Number(deImpurity);
//     }
//
//     deSum = deSum.toFixed(0);
//     /** 增重转正数,便于计算  */
//     addSum = Math.abs(addSum).toFixed(0);
//     /** 入库重量 = 净重 - 总扣重  */
//     recordWeight = Number(netWeight) - Number(deSum);
//     /** 结算重量 = 净重 - 总扣重 + 增重 */
//     settleWeight = Number(netWeight) - Number(deSum) + Number(addSum);
//
//     form.val("form-data", {
//         netWeight: netWeight,
//         deImpurity: deImpurity,
//         deWet: deWet,
//         deSum: deSum,
//         settleWeight: settleWeight,
//         recordWeight: recordWeight
//     });
//     form.render();
// }
/**
 * 根据化验项和传递过来的参数获取当前参数的配置信息
 * @param checkItems