|
@@ -974,91 +974,94 @@ public class TmstruckWeightResultServiceImpl implements ITmstruckWeightResultSer
|
|
|
|
|
|
@Override
|
|
@Override
|
|
public Boolean checkOrder(Map<String, Object> map) {
|
|
public Boolean checkOrder(Map<String, Object> map) {
|
|
|
|
+
|
|
//获取三个参数
|
|
//获取三个参数
|
|
- try {
|
|
|
|
- if (map != null) {
|
|
|
|
- JSONObject jsonObject = new JSONObject(map);
|
|
|
|
- FastDateFormat format = FastDateFormat.getInstance("yyyy-MM-dd HH:mm:ss");
|
|
|
|
- logger.info("=========" + "计量检查" + format.format(new Date()));
|
|
|
|
- logger.info(jsonObject.toString());
|
|
|
|
- logger.info("=========" + "计量检查" + format.format(new Date()));
|
|
|
|
- try{
|
|
|
|
- new Thread( new Runnable() {
|
|
|
|
- public void run(){
|
|
|
|
- try {
|
|
|
|
- newFileTool.newFile(jsonObject.toString(),"计量物流金蝶核对");
|
|
|
|
- } catch (IOException e) {
|
|
|
|
- e.printStackTrace();
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
- }).start();
|
|
|
|
- }catch (Exception e) {
|
|
|
|
- e.printStackTrace();
|
|
|
|
- }
|
|
|
|
- //判断该车的运输订单号是否是钢材且是否是正在作业中的,如果不是就返回true
|
|
|
|
- int i = tmstruckWeightResultMapper.checkOrderIsSteel(map);
|
|
|
|
- if (i == 0) {
|
|
|
|
- return true;
|
|
|
|
- }
|
|
|
|
- //判断该分录是不是在物流系统,如果不在返回true
|
|
|
|
- int j = tmstruckWeightResultMapper.checkOrder(map);
|
|
|
|
- BigDecimal saleMaterialId = tmstruckWeightResultMapper.getSaleMaterialId(map);
|
|
|
|
- //判断该分录在计量实绩表里有没有净重,如果有
|
|
|
|
- try {
|
|
|
|
- Map<String,Object> weightMesBySaleMaterialId = tmstruckWeightResultMapper.getWeightMesBySaleMaterialId(saleMaterialId);
|
|
|
|
- if(weightMesBySaleMaterialId != null && weightMesBySaleMaterialId.get("poundNo") != null) {
|
|
|
|
- //系统自动走删皮
|
|
|
|
- linkageDeleteTransportOrder2(weightMesBySaleMaterialId);
|
|
|
|
- }
|
|
|
|
- } catch (Exception e) {
|
|
|
|
- e.printStackTrace();
|
|
|
|
- }
|
|
|
|
- //根据运输订单号查询计量实绩ID
|
|
|
|
- BigDecimal weightTaskResultId = tmstruckWeightResultMapper.getWeightTaskResultIdNoNet(map);
|
|
|
|
- if(weightTaskResultId != null && saleMaterialId != null) {
|
|
|
|
- //更新计量实绩
|
|
|
|
- System.out.println("更新计量实绩校验");
|
|
|
|
- //tmstruckWeightResultMapper.updateWeightTaskBySaleMaterialId(weightTaskResultId,saleMaterialId);
|
|
|
|
- }
|
|
|
|
- if (j == 0) {
|
|
|
|
- //如果是自提,则更换规格
|
|
|
|
- BigDecimal jlSaleOrderMaterialId = tmstruckWeightResultMapper.getJlSaleOrderMaterialId(map);
|
|
|
|
- BigDecimal wlSaleOrderMaterialId = tmstruckWeightResultMapper.getWlSaleOrderMaterialId(map);
|
|
|
|
- BigDecimal wlOrderId = tmstruckWeightResultMapper.getJlOrderId(wlSaleOrderMaterialId);
|
|
|
|
- if(jlSaleOrderMaterialId != null) {
|
|
|
|
- //如果车序号子表存在,判断拼数是否相同
|
|
|
|
- BigDecimal jlSpell = tmstruckWeightResultMapper.getJlSpell(jlSaleOrderMaterialId);
|
|
|
|
- BigDecimal wlSpell = tmstruckWeightResultMapper.getWlSpell(map);
|
|
|
|
- //如果拼数相同,则继续更换运单,否则返回
|
|
|
|
- if (jlSpell.compareTo(wlSpell) == 0) {
|
|
|
|
- //判断正确的车序号主键有没有派车
|
|
|
|
- BigDecimal jlOrderId = tmstruckWeightResultMapper.getJlOrderId(jlSaleOrderMaterialId);
|
|
|
|
- if(jlOrderId != null) {
|
|
|
|
- //分别更新
|
|
|
|
- tmstruckWeightResultMapper.updateOrderPlanId(jlOrderId,wlSaleOrderMaterialId);
|
|
|
|
- tmstruckWeightResultMapper.updateOrderPlanId(wlOrderId,jlSaleOrderMaterialId);
|
|
|
|
- //清空运输订单子表的某个数据
|
|
|
|
- tmstruckWeightResultMapper.updateOrderMaterialId(jlOrderId);
|
|
|
|
- tmstruckWeightResultMapper.updateOrderMaterialId(wlOrderId);
|
|
|
|
- }else{
|
|
|
|
- tmstruckWeightResultMapper.updateOrderPlanId(wlOrderId,jlSaleOrderMaterialId);
|
|
|
|
- tmstruckWeightResultMapper.updateOrderMaterialId(wlOrderId);
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
- }else {
|
|
|
|
- //如果对不上,那么就将运输订单里面的状态变一下
|
|
|
|
- tmstruckWeightResultMapper.updateOmsRedQrCode(map);
|
|
|
|
- }
|
|
|
|
- //根据分录ID查询车序号
|
|
|
|
- utilsService.pushMesToWebsocket((String) map.get("carNo"), "计量");
|
|
|
|
- return false;
|
|
|
|
- }else{
|
|
|
|
- return true;
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
- } catch (Exception e) {
|
|
|
|
- return true;
|
|
|
|
- }
|
|
|
|
|
|
+ //try {
|
|
|
|
+ // if (map != null) {
|
|
|
|
+ // JSONObject jsonObject = new JSONObject(map);
|
|
|
|
+ // FastDateFormat format = FastDateFormat.getInstance("yyyy-MM-dd HH:mm:ss");
|
|
|
|
+ // logger.info("=========" + "计量检查" + format.format(new Date()));
|
|
|
|
+ // logger.info(jsonObject.toString());
|
|
|
|
+ // logger.info("=========" + "计量检查" + format.format(new Date()));
|
|
|
|
+ //
|
|
|
|
+ // try{
|
|
|
|
+ // new Thread( new Runnable() {
|
|
|
|
+ // public void run(){
|
|
|
|
+ // try {
|
|
|
|
+ // newFileTool.newFile(jsonObject.toString(),"计量物流金蝶核对");
|
|
|
|
+ // } catch (IOException e) {
|
|
|
|
+ // e.printStackTrace();
|
|
|
|
+ // }
|
|
|
|
+ // }
|
|
|
|
+ // }).start();
|
|
|
|
+ // }catch (Exception e) {
|
|
|
|
+ // e.printStackTrace();
|
|
|
|
+ // }
|
|
|
|
+ // //判断该车的运输订单号是否是钢材且是否是正在作业中的,如果不是就返回true
|
|
|
|
+ // int i = tmstruckWeightResultMapper.checkOrderIsSteel(map);
|
|
|
|
+ // if (i == 0) {
|
|
|
|
+ // return true;
|
|
|
|
+ // }
|
|
|
|
+ //
|
|
|
|
+ // //判断该分录是不是在物流系统,如果不在返回true
|
|
|
|
+ // int j = tmstruckWeightResultMapper.checkOrder(map);
|
|
|
|
+ // BigDecimal saleMaterialId = tmstruckWeightResultMapper.getSaleMaterialId(map);
|
|
|
|
+ // ////判断该分录在计量实绩表里有没有净重,如果有
|
|
|
|
+ // //try {
|
|
|
|
+ // // Map<String,Object> weightMesBySaleMaterialId = tmstruckWeightResultMapper.getWeightMesBySaleMaterialId(saleMaterialId);
|
|
|
|
+ // // if(weightMesBySaleMaterialId != null && weightMesBySaleMaterialId.get("poundNo") != null) {
|
|
|
|
+ // // //系统自动走删皮
|
|
|
|
+ // // linkageDeleteTransportOrder2(weightMesBySaleMaterialId);
|
|
|
|
+ // // }
|
|
|
|
+ // //} catch (Exception e) {
|
|
|
|
+ // // e.printStackTrace();
|
|
|
|
+ // //}
|
|
|
|
+ // //根据运输订单号查询计量实绩ID
|
|
|
|
+ // BigDecimal weightTaskResultId = tmstruckWeightResultMapper.getWeightTaskResultIdNoNet(map);
|
|
|
|
+ // if(weightTaskResultId != null && saleMaterialId != null) {
|
|
|
|
+ // //更新计量实绩
|
|
|
|
+ // System.out.println("更新计量实绩校验");
|
|
|
|
+ // //tmstruckWeightResultMapper.updateWeightTaskBySaleMaterialId(weightTaskResultId,saleMaterialId);
|
|
|
|
+ // }
|
|
|
|
+ // if (j == 0) {
|
|
|
|
+ // //如果是自提,则更换规格
|
|
|
|
+ // BigDecimal jlSaleOrderMaterialId = tmstruckWeightResultMapper.getJlSaleOrderMaterialId(map);
|
|
|
|
+ // BigDecimal wlSaleOrderMaterialId = tmstruckWeightResultMapper.getWlSaleOrderMaterialId(map);
|
|
|
|
+ // BigDecimal wlOrderId = tmstruckWeightResultMapper.getJlOrderId(wlSaleOrderMaterialId);
|
|
|
|
+ // if(jlSaleOrderMaterialId != null) {
|
|
|
|
+ // //如果车序号子表存在,判断拼数是否相同
|
|
|
|
+ // BigDecimal jlSpell = tmstruckWeightResultMapper.getJlSpell(jlSaleOrderMaterialId);
|
|
|
|
+ // BigDecimal wlSpell = tmstruckWeightResultMapper.getWlSpell(map);
|
|
|
|
+ // //如果拼数相同,则继续更换运单,否则返回
|
|
|
|
+ // if (jlSpell.compareTo(wlSpell) == 0) {
|
|
|
|
+ // //判断正确的车序号主键有没有派车
|
|
|
|
+ // BigDecimal jlOrderId = tmstruckWeightResultMapper.getJlOrderId(jlSaleOrderMaterialId);
|
|
|
|
+ // if(jlOrderId != null) {
|
|
|
|
+ // //分别更新
|
|
|
|
+ // tmstruckWeightResultMapper.updateOrderPlanId(jlOrderId,wlSaleOrderMaterialId);
|
|
|
|
+ // tmstruckWeightResultMapper.updateOrderPlanId(wlOrderId,jlSaleOrderMaterialId);
|
|
|
|
+ // //清空运输订单子表的某个数据
|
|
|
|
+ // tmstruckWeightResultMapper.updateOrderMaterialId(jlOrderId);
|
|
|
|
+ // tmstruckWeightResultMapper.updateOrderMaterialId(wlOrderId);
|
|
|
|
+ // }else{
|
|
|
|
+ // tmstruckWeightResultMapper.updateOrderPlanId(wlOrderId,jlSaleOrderMaterialId);
|
|
|
|
+ // tmstruckWeightResultMapper.updateOrderMaterialId(wlOrderId);
|
|
|
|
+ // }
|
|
|
|
+ // }
|
|
|
|
+ // }else {
|
|
|
|
+ // //如果对不上,那么就将运输订单里面的状态变一下
|
|
|
|
+ // tmstruckWeightResultMapper.updateOmsRedQrCode(map);
|
|
|
|
+ // }
|
|
|
|
+ // //根据分录ID查询车序号
|
|
|
|
+ // utilsService.pushMesToWebsocket((String) map.get("carNo"), "计量");
|
|
|
|
+ // return false;
|
|
|
|
+ // }else{
|
|
|
|
+ // return true;
|
|
|
|
+ // }
|
|
|
|
+ // }
|
|
|
|
+ //} catch (Exception e) {
|
|
|
|
+ // return true;
|
|
|
|
+ //}
|
|
return true;
|
|
return true;
|
|
}
|
|
}
|
|
|
|
|