| | |
| | | /** |
| | | * 入库-称重自动计算 |
| | | * 1、净重 = 毛重 - 皮重 ; 总扣重 = 扣水杂 + 现场扣重 + 其他扣重 |
| | | * 2、水分扣重根据化验水分信息自动计算,正数=扣重,负数=增重 |
| | | * 3、结算重量 = 净重 - 总扣重 (含水杂增重); 入库重量 = 净重 - 总扣重 (不含水杂增重) |
| | | * 注意:如果是手动修改了水分和杂质的扣重,则不按照配置规则进行增扣重计算 |
| | | * @param name 触发事件的属性名称 |
| | | */ |
| | | function deAutoByIn(name) { |
| | |
| | | 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 deHandle = curData.deHandle, dePackage = curData.dePackage, deOther = curData.deOther, settleWeight = 0, |
| | | recordWeight = 0, deCheck = curData.deCheck, addCheck = curData.addCheck; |
| | | recordWeight = Number(netWeight) - Number(deHandle) - Number(dePackage) - Number(deOther) - Number(deCheck); |
| | | settleWeight = Number(recordWeight) + Number(addCheck); |
| | | |
| | | var deBase = 0, multiple = 0; |
| | | //水分杂质,更改比例并且水分扣重还没计算情况下 |
| | | if ("emptyWeight" == 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 ("emptyWeight" == 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) {//扣重 |
| | | deSum = deSum + Number(deWet); |
| | | } else { |
| | | addSum = addSum + 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); |
| | | netWeight = netWeight.toFixed(0); |
| | | recordWeight = recordWeight.toFixed(0); |
| | | settleWeight = recordWeight.toFixed(0); |
| | | |
| | | form.val("form-data", { |
| | | netWeight: netWeight, |
| | | deImpurity: deImpurity, |
| | | deWet: deWet, |
| | | deSum: deSum, |
| | | settleWeight: settleWeight, |
| | | recordWeight: recordWeight |
| | | }); |
| | |
| | | } |
| | | }); |
| | | } |
| | | |
| | | // ---------------------------粮食产地 -结束 -------------------// |