diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/ext/acs/service/impl/AcsToWmsServiceImpl.java b/mes/hd/nladmin-system/src/main/java/org/nl/ext/acs/service/impl/AcsToWmsServiceImpl.java index 72a48b9f..a53fe5de 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/ext/acs/service/impl/AcsToWmsServiceImpl.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/ext/acs/service/impl/AcsToWmsServiceImpl.java @@ -13,8 +13,6 @@ import org.nl.exception.BadRequestException; import org.nl.ext.acs.service.AcsToWmsService; import org.nl.ext.acs.service.WmsToAcsService; import org.nl.modules.security.service.dto.JwtUserDto; -import org.nl.modules.system.service.GenCodeService; -import org.nl.modules.system.service.impl.GenCodeServiceImpl; import org.nl.pda.exception.PdaRequestException; import org.nl.utils.SecurityUtils; import org.nl.wms.pf.service.FlourworkService; @@ -32,8 +30,8 @@ import org.nl.wql.core.bean.WQLObject; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.HttpStatus; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Isolation; import org.springframework.transaction.annotation.Transactional; - import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; import java.util.ArrayList; @@ -57,13 +55,49 @@ public class AcsToWmsServiceImpl implements AcsToWmsService { * @return */ @Override - @Transactional(rollbackFor = Exception.class) public Map transferApply(Map jsObject) { - Map map = transferApply2(jsObject); + WQLObject sys_param = WQLObject.getWQLObject("sys_param"); + Map map = new HashMap<>(); + int time = 0; + //休眠半秒 + try { + int flag = 1; + while(flag == 1){ + JSONObject param = sys_param.query("is_active='1' and is_delete='0' and code='TRANSFER'").uniqueResult(0); + if (ObjectUtil.isNotEmpty(param)) { + flag = param.getInteger("value"); + if(flag == 0){ + break; + }else{ + flag = 1; + } + }else{ + flag = 1; + } + Thread.sleep(2000); + time++; + if(time == 10){ + throw new BadRequestException("输送线请求等待超时!"); + } + } + JSONObject param = sys_param.query("is_active='1' and is_delete='0' and code='TRANSFER'").uniqueResult(0); + param.put("value","1"); + sys_param.update(param); + map = transferApply2(jsObject); + param.put("value","0"); + sys_param.update(param); + } catch (Exception e) { + e.printStackTrace(); + }finally { + JSONObject param = sys_param.query("is_active='1' and is_delete='0' and code='TRANSFER'").uniqueResult(0); + param.put("value","0"); + sys_param.update(param); + } return map; } - public static synchronized Map transferApply2(Map jsObject){ + @Transactional(rollbackFor = Exception.class) + public Map transferApply2(Map jsObject){ //任务表 WQLObject wo_Task = WQLObject.getWQLObject("SCH_BASE_Task"); WQLObject wo_EmptyVehicleRecord = WQLObject.getWQLObject("ST_IVT_EmptyVehicleRecord"); diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/st/core/service/impl/InbillServiceImpl.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/st/core/service/impl/InbillServiceImpl.java index 18c34a98..6b31c696 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/st/core/service/impl/InbillServiceImpl.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/st/core/service/impl/InbillServiceImpl.java @@ -120,6 +120,7 @@ public class InbillServiceImpl { WQLObject.getWQLObject("ST_IVT_IOStorInv").update(mst); } + @Transactional(rollbackFor = Exception.class) public void operatePoint(String operate, JSONObject form) { WQLObject point_table = WQLObject.getWQLObject("SCH_BASE_Point"); WQLObject struct_table = WQLObject.getWQLObject("ST_IVT_StructAttr");