...
|
...
|
@@ -63,6 +63,17 @@ public class WeightCheckHandleServiceImpl implements WeightCheckHandleService { |
|
|
*/
|
|
|
@Override
|
|
|
public boolean checkExportDownLoading(double grossWt, double wt, double goodsWt, double inWt){
|
|
|
|
|
|
/**
|
|
|
* 异常情况判定
|
|
|
* 送货业务的入场重量必须大于离场重量
|
|
|
* 比如申请单申请的时候本来是进口提货 申请成出口送货
|
|
|
*/
|
|
|
if (inWt<grossWt){
|
|
|
log.info("出区重量比入区重量大,信息异常");
|
|
|
return false;
|
|
|
}
|
|
|
|
|
|
DecimalFormat df = new DecimalFormat("0.00");
|
|
|
boolean flag = false;
|
|
|
//卸货判定
|
...
|
...
|
@@ -77,12 +88,37 @@ public class WeightCheckHandleServiceImpl implements WeightCheckHandleService { |
|
|
log.info("[WEIGHT-CHECK]-进出场比对差值:{},空车出场差值:{},进出场比对重量差:{},空车比对重量差:{}",result,result2,Math.abs(inWt - goodsWt - grossWt),Math.abs(grossWt-wt));
|
|
|
}
|
|
|
double range = valueDob();
|
|
|
if (result <= range || result2 <= range) {
|
|
|
|
|
|
//车辆离场重量与车辆备案重量验放,只允许空车离场
|
|
|
if (result2 <= range) {
|
|
|
flag = true;
|
|
|
}
|
|
|
//
|
|
|
// if (result <= range || result2 <= range) {
|
|
|
// flag = true;
|
|
|
// }
|
|
|
return flag;
|
|
|
}
|
|
|
|
|
|
|
|
|
@Override
|
|
|
public boolean checkImportAtCheckIN(double grossWt, double wt, double goodsWt, double inWt){
|
|
|
double emptyIN= 0.00;
|
|
|
DecimalFormat df = new DecimalFormat("0.00");
|
|
|
if(Double.doubleToLongBits(grossWt)>Double.doubleToLongBits(0)){
|
|
|
//空车入场判定,入场重量-车辆备案重量
|
|
|
emptyIN = Double.parseDouble(df.format(Math.abs((wt - grossWt)) / grossWt));
|
|
|
|
|
|
double range = valueDob();
|
|
|
|
|
|
if (emptyIN <= range) {
|
|
|
log.info("[WEIGHT-CHECK]-进口提货入口重量验放:入场重量{},车辆备案重量:{},差值:{}",grossWt,wt,emptyIN);
|
|
|
return true;
|
|
|
}
|
|
|
}
|
|
|
|
|
|
return false;
|
|
|
}
|
|
|
/**
|
|
|
* 进口普货提货业务重量校验,可支持 带货提货,不支持卸货提货
|
|
|
* 进口转关业务重量校验
|
...
|
...
|
@@ -107,7 +143,7 @@ public class WeightCheckHandleServiceImpl implements WeightCheckHandleService { |
|
|
//进场过磅重量+带货重量 = 出场过磅重量
|
|
|
result = Double.parseDouble(df.format(Math.abs((inWt + goodsWt - grossWt)) / grossWt));
|
|
|
|
|
|
//todo:这里没有加空车离场判定,暂时不加,进口提货业务空车离场走空车验放判定系统.
|
|
|
//带货提货,不提货判定,非空车离场
|
|
|
result2 = Double.parseDouble(df.format(Math.abs((inWt - grossWt)) / grossWt));
|
|
|
|
|
|
//个别原因不提货了,空车离场
|
...
|
...
|
@@ -116,25 +152,28 @@ public class WeightCheckHandleServiceImpl implements WeightCheckHandleService { |
|
|
//车辆备案重量+货物重量 = 出场过磅重量,测试用,生产关闭
|
|
|
result1 = Double.parseDouble(df.format(Math.abs((wt + goodsWt - grossWt)) / grossWt));
|
|
|
|
|
|
//货重误差
|
|
|
//带货提货,货重误差
|
|
|
goodCheckResult = Double.parseDouble(df.format(Math.abs((grossWt-inWt-goodsWt)) / goodsWt));
|
|
|
}
|
|
|
|
|
|
double range = valueDob();
|
|
|
log.info("[WEIGHT-CHECK]-实际离场拉货重量:{},申请离场拉货重量:{},货重差值:{},货重误差:{}",grossWt-inWt,goodsWt,grossWt-inWt-goodsWt,goodCheckResult);
|
|
|
log.info("[WEIGHT-CHECK]-进出场比对差值:{},提货离场差值:{},进出场比对重量差:{}",result,result1,Math.abs(inWt - grossWt));
|
|
|
|
|
|
|
|
|
if (result <= range || goodCheckResult<=range) {
|
|
|
if (result <= range
|
|
|
// || goodCheckResult<=range
|
|
|
) {
|
|
|
|
|
|
flag = true;
|
|
|
}
|
|
|
|
|
|
//车辆备案重量+货物重量 = 出场过磅重量,测试用,生产关闭
|
|
|
if (result1 <= range || result2 <= range || emptyOut <= range) {
|
|
|
// //车辆备案重量+货物重量 = 出场过磅重量,测试用,生产关闭
|
|
|
// if (result1 <= range || result2 <= range || emptyOut <= range) {
|
|
|
//
|
|
|
// return true;
|
|
|
// }
|
|
|
|
|
|
return true;
|
|
|
}
|
|
|
|
|
|
}
|
|
|
return flag;
|
|
|
}
|
|
|
|
...
|
...
|
|