2025-05-16 | zhanghl | ![]() |
2025-05-16 | zhanghl | ![]() |
2025-05-16 | huangjiayang | ![]() |
2025-05-16 | huangjiayang | ![]() |
2025-05-16 | zhanghl | ![]() |
2025-05-16 | zhanghl | ![]() |
2025-05-16 | huangjiayang | ![]() |
2025-05-16 | zhanghl | ![]() |
2025-05-16 | zhanghl | ![]() |
aps-common/aps-common-core/src/main/java/com/aps/common/core/config/MyBatisPlusConfig.java
@@ -2,6 +2,7 @@ import com.baomidou.mybatisplus.annotation.DbType; import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor; import com.baomidou.mybatisplus.extension.plugins.inner.BlockAttackInnerInterceptor; import com.baomidou.mybatisplus.extension.plugins.inner.OptimisticLockerInnerInterceptor; import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor; @@ -15,14 +16,16 @@ * å页æä»¶ */ @Bean public PaginationInnerInterceptor paginationInterceptor() { public MybatisPlusInterceptor mybatisPlusInterceptor() { MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor(); PaginationInnerInterceptor paginationInterceptor = new PaginationInnerInterceptor(); // 设置请æ±ç页é¢å¤§äºæå¤§é¡µåæ¯å¦è¿è¡åæ», trueåæ», falseç»§ç» paginationInterceptor.setOverflow(false); // 设置æå¤§å页éå¶æ°é, é»è®¤ 500 æ¡, -1 ä¸åéå¶ paginationInterceptor.setDbType(DbType.MYSQL); paginationInterceptor.setDbType(DbType.POSTGRE_SQL); paginationInterceptor.setMaxLimit(-1L); return paginationInterceptor; interceptor.addInnerInterceptor(paginationInterceptor); return interceptor; } /** aps-common/aps-common-core/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports
@@ -1,2 +1,3 @@ com.aps.common.core.utils.SpringUtils com.aps.common.core.utils.uuid.Sequence com.aps.common.core.utils.uuid.Sequence com.aps.common.core.config.MyBatisPlusConfig aps-common/aps-common-redis/pom.xml
@@ -22,12 +22,15 @@ <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId> </dependency> <!-- RuoYi Common Core--> <dependency> <groupId>com.aps</groupId> <artifactId>aps-common-core</artifactId> </dependency> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <scope>provided</scope> </dependency> </dependencies> </project> aps-common/aps-common-redis/src/main/java/com/aps/common/redis/service/RedisLockUtils.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,45 @@ package com.aps.common.redis.service; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.redis.core.RedisTemplate; import org.springframework.data.redis.core.script.DefaultRedisScript; import org.springframework.data.redis.core.script.RedisScript; import org.springframework.stereotype.Component; import java.time.Duration; import java.util.Collections; /** * Redis åå¸å¼é * **/ @Component public class RedisLockUtils { @Autowired private RedisTemplate redisTemplate; //åå¸å¼éè¿ææ¶é´ s å¯ä»¥æ ¹æ®ä¸å¡èªå·±è°è private static final Long LOCK_REDIS_TIMEOUT = 10L; //åå¸å¼éä¼ç è³ åæ¬¡å°è¯è·å ççå¾ æ¶é´ ms å¯ä»¥æ ¹æ®ä¸å¡èªå·±è°è public static final Long LOCK_REDIS_WAIT = 500L; /** * å é **/ public Boolean getLock(String key,String value,Long timeoutSeconds){ Boolean lockStatus = this.redisTemplate.opsForValue().setIfAbsent(key,value, Duration.ofSeconds(timeoutSeconds)); return lockStatus; } /** * éæ¾é **/ public Long releaseLock(String key,String value){ String luaScript = "if redis.call('get', KEYS[1]) == ARGV[1] then return redis.call('del', KEYS[1]) else return 0 end"; RedisScript<Long> redisScript = new DefaultRedisScript<>(luaScript,Long.class); Long releaseStatus = (Long)this.redisTemplate.execute(redisScript, Collections.singletonList(key),value); return releaseStatus; } } aps-common/aps-common-redis/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports
@@ -1,2 +1,3 @@ com.aps.common.redis.configure.RedisConfig com.aps.common.redis.service.RedisService com.aps.common.redis.service.RedisLockUtils aps-modules/aps-core/src/main/java/com/aps/core/controller/mainPlan/ApsPlanTaskController.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,35 @@ package com.aps.core.controller.mainPlan; import com.aps.common.core.domain.R; import com.aps.common.core.web.controller.BaseController; import com.aps.common.core.web.page.PageDomain; import com.aps.common.core.web.page.TableDataInfo; import com.aps.common.core.web.page.TableSupport; import com.aps.core.domain.ApsPlanTask; import com.aps.core.service.ApsPlanTaskService; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; /** * 计åä»»å¡ç®¡ç * */ @RestController @RequestMapping("/planTask") public class ApsPlanTaskController extends BaseController { @Autowired private ApsPlanTaskService apsPlanTaskService; // @RequiresPermissions("planTask:list") @GetMapping("/list") public Page<ApsPlanTask> list(ApsPlanTask task){ PageDomain pageDomain = TableSupport.buildPageRequest(); Page<ApsPlanTask> page = new Page<>(pageDomain.getPageNum(), pageDomain.getPageSize()); return apsPlanTaskService.pagingList(page, task); } } aps-modules/aps-core/src/main/java/com/aps/core/controller/mainPlan/ApsPlateStandardRequireController.java
@@ -8,7 +8,11 @@ import com.aps.common.log.enums.BusinessType; import com.aps.common.security.annotation.RequiresPermissions; import com.aps.core.domain.ApsPlateStandardRequire; import com.aps.core.enums.PLAN_TASK_STATUS; import com.aps.core.service.ApsPlanTaskService; import com.aps.core.service.IApsPlateStandardRequireBatchService; import com.aps.core.service.IApsPlateStandardRequireService; import jakarta.annotation.Resource; import jakarta.servlet.http.HttpServletResponse; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; @@ -29,6 +33,10 @@ { @Autowired private IApsPlateStandardRequireService apsPlateStandardRequireService; @Resource IApsPlateStandardRequireBatchService requireBatchService; @Resource ApsPlanTaskService planTaskService; /** * æ¥è¯¢é£éå·¥åæ åéæ±å表 @@ -133,7 +141,10 @@ @PostMapping("/generatorPlan") public AjaxResult generatorPlan() { apsPlateStandardRequireService.generatorPlan(); String batchNum= requireBatchService.getNewBatchNumber(); planTaskService.savePlanTask(batchNum); apsPlateStandardRequireService.generatorPlan(batchNum); planTaskService.updateTaskStatus(batchNum, PLAN_TASK_STATUS.FINISHED); return success(); } aps-modules/aps-core/src/main/java/com/aps/core/domain/ApsPlanTask.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,87 @@ package com.aps.core.domain; import com.aps.common.core.web.domain.BaseEntity; import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import java.io.Serializable; import java.util.Date; import lombok.Builder; import lombok.Data; import lombok.EqualsAndHashCode; import lombok.ToString; /** * 计åçææ¥å¿è¡¨ * @TableName aps_plan_task */ @ToString @EqualsAndHashCode(callSuper = false) @TableName(value ="aps_plan_task") @Data @Builder public class ApsPlanTask extends BaseEntity implements Serializable { @TableField(exist = false) private static final long serialVersionUID = 1L; /** * 主é®ID */ @TableField(value = "id") @TableId(type = IdType.INPUT) private Long id; /** * 任塿¹æ¬¡å· */ @TableField(value = "batch_num") private String batchNum; /** * ä»»å¡ç±»å */ @TableField(value = "task_type") private String taskType; /** * ä»»å¡ç¶æ */ @TableField(value = "task_status") private String taskStatus; /** * å建人 */ @TableField(value = "create_by") private String createBy; /** * å建æ¶é´ */ @TableField(value = "create_time") private Date createTime; /** * æ´æ°äºº */ @TableField(value = "update_by") private String updateBy; /** * æ´æ°æ¶é´ */ @TableField(value = "update_time") private Date updateTime; /** * å 餿 è®°(0,1) */ @TableField(value = "del_flag") private Integer delFlag; } aps-modules/aps-core/src/main/java/com/aps/core/enums/PLAN_TASK_STATUS.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,37 @@ package com.aps.core.enums; public enum PLAN_TASK_STATUS { IN_PROCESS("InProgress","è¿è¡ä¸"), FINISHED("Finished","宿"); private String code; private String desc; PLAN_TASK_STATUS(String code ,String desc){ this.code = code; this.desc=desc; } public static PLAN_TASK_TYPE getByCode(String code){ for(PLAN_TASK_TYPE type : PLAN_TASK_TYPE.values()){ if(type.getCode().equals(code)){ return type; } } return null; } public String getCode() { return code; } public void setCode(String code) { this.code = code; } public String getDesc() { return desc; } public void setDesc(String desc) { this.desc = desc; } } aps-modules/aps-core/src/main/java/com/aps/core/enums/PLAN_TASK_TYPE.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,37 @@ package com.aps.core.enums; public enum PLAN_TASK_TYPE { PLATE_PLAN("PlateOrderPlan","çæé£éå·¥å计å"); private String code; private String desc; PLAN_TASK_TYPE(String code ,String desc){ this.code = code; this.desc=desc; } public static PLAN_TASK_TYPE getByCode(String code){ for(PLAN_TASK_TYPE type : PLAN_TASK_TYPE.values()){ if(type.code.equals(code)){ return type; } } return null; } public String getCode() { return code; } public void setCode(String code) { this.code = code; } public String getDesc() { return desc; } public void setDesc(String desc) { this.desc = desc; } } aps-modules/aps-core/src/main/java/com/aps/core/mapper/ApsPlanTaskMapper.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,22 @@ package com.aps.core.mapper; import com.aps.core.domain.ApsPlanTask; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import org.apache.ibatis.annotations.Mapper; /** * @author zhl * @description é对表ãaps_plan_task(计åçææ¥å¿è¡¨)ãçæ°æ®åºæä½Mapper * @createDate 2025-05-16 14:41:49 * @Entity com.aps.core.domain.ApsPlanTask */ @Mapper public interface ApsPlanTaskMapper extends BaseMapper<ApsPlanTask> { Page<ApsPlanTask> pagingList(Page<ApsPlanTask> page , ApsPlanTask task); } aps-modules/aps-core/src/main/java/com/aps/core/service/ApsPlanTaskService.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,23 @@ package com.aps.core.service; import com.aps.core.domain.ApsPlanTask; import com.aps.core.enums.PLAN_TASK_STATUS; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; import java.util.List; /** * @author zhl * @description é对表ãaps_plan_task(计åçææ¥å¿è¡¨)ãçæ°æ®åºæä½Service * @createDate 2025-05-16 14:41:49 */ public interface ApsPlanTaskService extends IService<ApsPlanTask> { Page<ApsPlanTask> pagingList(Page<ApsPlanTask> page , ApsPlanTask task); void savePlanTask(String batchNum); void updateTaskStatus(String batchNum, PLAN_TASK_STATUS status); } aps-modules/aps-core/src/main/java/com/aps/core/service/IApsPlateStandardRequireService.java
@@ -69,5 +69,5 @@ public List<ApsPlateStandardRequire> selectPlateSupplyGapList(ApsPlateStandardRequire apsPlateStandardRequire); void generatorPlan(); void generatorPlan(String batchNum); } aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsGasPipingRouteStatServiceImpl.java
@@ -592,7 +592,7 @@ } List<ApsResourceDateStat> tempList = new ArrayList<>(dayMap.values()); HashMap<String, List<ApsResourceDateStat>> temp = new HashMap<>(); temp.put(processName + "-" + plant, tempList); temp.put(processName + "_" + plant, tempList); processList.add(temp); } } else { aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsPlanTaskServiceImpl.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,72 @@ package com.aps.core.service.impl; import cn.hutool.core.util.IdUtil; import com.aps.common.core.utils.DateUtils; import com.aps.common.security.utils.SecurityUtils; import com.aps.core.enums.PLAN_TASK_STATUS; import com.aps.core.enums.PLAN_TASK_TYPE; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.aps.core.domain.ApsPlanTask; import com.aps.core.service.ApsPlanTaskService; import com.aps.core.mapper.ApsPlanTaskMapper; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.List; /** * @author zhl * @description é对表ãaps_plan_task(计åçææ¥å¿è¡¨)ãçæ°æ®åºæä½Serviceå®ç° * @createDate 2025-05-16 14:41:49 */ @Service public class ApsPlanTaskServiceImpl extends ServiceImpl<ApsPlanTaskMapper, ApsPlanTask> implements ApsPlanTaskService{ @Autowired ApsPlanTaskMapper mapper; public Page<ApsPlanTask> pagingList(Page<ApsPlanTask> page ,ApsPlanTask task){ LambdaQueryWrapper<ApsPlanTask> queryWrapper=new LambdaQueryWrapper<>(); queryWrapper.like( !task.getTaskType().isEmpty(), ApsPlanTask::getTaskType,task.getTaskType()); return mapper.selectPage(page, queryWrapper); } /** * å建æ°ç计åä»»å¡ */ @Override public void savePlanTask(String batchNum){ ApsPlanTask task = ApsPlanTask.builder().id(IdUtil.getSnowflakeNextId()) .batchNum(batchNum) .taskStatus(PLAN_TASK_STATUS.IN_PROCESS.getCode()) .taskType(PLAN_TASK_TYPE.PLATE_PLAN.getCode()) .createBy(SecurityUtils.getUsername()) .createTime(DateUtils.getNowDate()) .delFlag(0) .build(); baseMapper.insert(task); } /** * æ ¹æ®æ¹æ¬¡å· æ´æ°ç¶æ * */ @Override public void updateTaskStatus(String batchNum, PLAN_TASK_STATUS status){ LambdaQueryWrapper<ApsPlanTask> queryWrapper=new LambdaQueryWrapper<>(); queryWrapper.like(ApsPlanTask::getBatchNum,batchNum); ApsPlanTask task = ApsPlanTask.builder() .taskStatus(status.getCode()) .updateBy(SecurityUtils.getUsername()) .updateTime(DateUtils.getNowDate()) .build(); baseMapper.update(task,queryWrapper); } } aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsPlateOrderPlanManagerServiceImpl.java
@@ -5,9 +5,13 @@ import com.aps.core.domain.ApsPlateOrderPlanManager; import com.aps.core.domain.ApsPlateOrderPlanRequireDate; import com.aps.core.domain.ApsPlateStandardRequire; import com.aps.core.enums.PLAN_TASK_STATUS; import com.aps.core.mapper.ApsPlateOrderPlanManagerMapper; import com.aps.core.service.ApsPlanTaskService; import com.aps.core.service.IApsPlateOrderPlanManagerService; import com.aps.core.service.IApsPlateStandardRequireBatchService; import com.aps.core.service.IApsPlateStandardRequireService; import jakarta.annotation.Resource; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -27,7 +31,10 @@ @Autowired private IApsPlateStandardRequireService apsPlateStandardRequireService; @Resource IApsPlateStandardRequireBatchService requireBatchService; @Resource ApsPlanTaskService planTaskService; /** * æ¥è¯¢é£éå·¥å计å管ç * @@ -68,6 +75,9 @@ apsPlateOrderPlanManagerMapper.updatePlanDateByBatch(planRequireDate); }); } apsPlateStandardRequireService.generatorPlan(); String batchNum= requireBatchService.getNewBatchNumber(); planTaskService.savePlanTask(batchNum); apsPlateStandardRequireService.generatorPlan(batchNum); planTaskService.updateTaskStatus(batchNum, PLAN_TASK_STATUS.FINISHED); } } aps-modules/aps-core/src/main/java/com/aps/core/service/impl/ApsPlateStandardRequireServiceImpl.java
@@ -163,7 +163,7 @@ @Transactional @Override public void generatorPlan(){ public void generatorPlan(String batchNum){ /*åå§åæ°æ®*/ requireBatchService.initRequireBatch(); @@ -171,8 +171,6 @@ String plantCode="FORTUNA"; /*å®ä¹ä¸»åç±»å为é£é主å*/ String mainOrderType = "main"; /*çææ°æ¹æ¬¡å·*/ String batchNum= requireBatchService.getNewBatchNumber(); /*è·åé£é主åä¿¡æ¯*/ List<ApsPlatePlan> mainPlans = platePlanMapper.selectPlatePlanByPlantMajor(plantCode,mainOrderType); Hashtable<String, ApsMaterialStorageManagement> usedStorage = new Hashtable<>(); aps-modules/aps-core/src/main/resources/mapper/core/ApsPlanTaskMapper.xml
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,26 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.aps.core.mapper.ApsPlanTaskMapper"> <resultMap id="BaseResultMap" type="com.aps.core.domain.ApsPlanTask"> <result property="id" column="id" /> <result property="batchNum" column="batch_num" /> <result property="taskType" column="task_type" /> <result property="taskStatus" column="task_status" /> <result property="createBy" column="create_by" /> <result property="createTime" column="create_time" /> <result property="updateBy" column="update_by" /> <result property="updateTime" column="update_time" /> <result property="delFlag" column="del_flag" /> </resultMap> <sql id="Base_Column_List"> id,batch_num,task_type,task_status,create_by,create_time, update_by,update_time,del_flag </sql> <select id="pagingList" resultMap="BaseResultMap"> select * from aps_plan_task </select> </mapper> aps-modules/aps-core/src/main/resources/mapper/core/ApsShopMapper.xml
@@ -27,7 +27,6 @@ <if test="shopCode != null and shopCode != ''"> and shop_code = #{shopCode}</if> <if test="plantCode != null and plantCode != ''"> and plant_code = #{plantCode}</if> <if test="status != null and status != ''"> and status = #{status}</if> and status='1' </where> order by id asc </select> aps-modules/aps-core/src/main/resources/mapper/core/ApsStandardProcessRouteHeaderMapper.xml
@@ -36,7 +36,6 @@ <if test="endDate != null and endDate != ''"> and end_date = #{endDate}</if> <if test="orgCode != null and orgCode != ''"> and org_code = #{orgCode}</if> <if test="itemCode != null and itemCode != ''"> and item_code like '%' || #{itemCode} || '%'</if> <if test="orgCode != null and orgCode != ''"> and org_code = #{orgCode}</if> and del_flag = '0' </where> ORDER BY version desc aps-modules/aps-job/src/main/java/com/aps/job/service/impl/ApsWorkOrderProcessServiceImpl.java
@@ -133,7 +133,9 @@ @Override public void getWorkOrderProcessFromU9(List<String> docNos) throws Exception { List<String> noProcessDocNos = docNos; List<String> noProcessDocNos = new ArrayList<>(docNos); List<String> haveProcessDocNos = new ArrayList<>(); ApsWorkOrderJobLog apsWorkOrderJobLog = new ApsWorkOrderJobLog(); // 设置请æ±å¤´ HttpHeaders headers = new HttpHeaders(); headers.setContentType(MediaType.APPLICATION_JSON); @@ -151,13 +153,11 @@ ResponseEntity<String> response = restTemplate.postForEntity(u9WorkOrderProcessUrl, request, String.class); String responseBody = response.getBody(); JSONObject responseBodyJson = JSONObject.parseObject(responseBody); ApsWorkOrderJobLog apsWorkOrderJobLog = new ApsWorkOrderJobLog(); apsWorkOrderJobLog.setRequestData(requestBody.toJSONString()); apsWorkOrderJobLog.setCreateTime(DateUtils.getNowDate()); apsWorkOrderJobLog.setBizType("work_order_process"); apsWorkOrderJobLog.setResult("SUCCESS"); apsWorkOrderJobLogService.insertApsWorkOrderJobLog(apsWorkOrderJobLog); List<String> haveProcessDocNos = new ArrayList<>(); if (response.getStatusCode().is2xxSuccessful()) { if(!StringUtils.isEmpty(responseBody)){ if("200".equals(responseBodyJson.getString("status"))){ @@ -166,8 +166,8 @@ List<ApsWorkOrderProcess> addList = new ArrayList<>(); List<ApsWorkOrderProcess> updateList = new ArrayList<>(); String nowDocNo = null; for (Object o : jsonArray) { JSONObject process = (JSONObject) o; for (int i = 0,size=jsonArray.size();i<size;i++) { JSONObject process = jsonArray.getJSONObject(i); if (nowDocNo == null) { nowDocNo = process.getString("DocNo"); noProcessDocNos.remove(nowDocNo); @@ -204,9 +204,9 @@ apsWorkOrderProcess.setCreateTime(DateUtils.getNowDate()); addList.add(apsWorkOrderProcess); // } if(!nowDocNo.equals(process.getString("DocNo"))){ if(!nowDocNo.equals(process.getString("DocNo")) || i==size-1){ //æ´æ°å·¥å忥工åºç¶æ docNos.remove(nowDocNo); noProcessDocNos.remove(nowDocNo); haveProcessDocNos.add(nowDocNo); nowDocNo = process.getString("DocNo"); } @@ -225,23 +225,6 @@ apsWorkOrderJobLogService.updateApsWorkOrderJobLog(apsWorkOrderJobLog); logger.info("ãINSERTãè·åå¹¶æå ¥U9å·¥åºæåï¼ãå·¥åå·ï¼{}ã", docNos); } Map<String, Object> param = new HashMap<>(); param.put("status", "1"); param.put("docNos", haveProcessDocNos); apsWorkOrderJobMapper.updateApsWorkOrderJobPrccessStatus(param); }else{ if(!noProcessDocNos.isEmpty()){ Map<String, Object> param = new HashMap<>(); param.put("status", "2"); param.put("docNos", noProcessDocNos); apsWorkOrderJobMapper.updateApsWorkOrderJobPrccessStatus(param); apsWorkOrderJobLog.setRequestData(requestBody.toJSONString()); apsWorkOrderJobLog.setResponseData(response.getBody()); apsWorkOrderJobLog.setResult("empty"); apsWorkOrderJobLog.setUpdateTime(DateUtils.getNowDate()); apsWorkOrderJobLogService.updateApsWorkOrderJobLog(apsWorkOrderJobLog); } break; } if(jsonArray.size()<1000){ break; @@ -265,11 +248,29 @@ throw new Exception("ãERRORãæ¥è¯¢U9å·¥åºå¤±è´¥ï¼ãå·¥åå·ï¼{"+ docNos +"}, é误ç ï¼{"+ responseBodyJson.getString("status") +"}ï¼é误信æ¯ï¼{"+ responseBodyJson.getString("message") +"}ã"); } } if(!haveProcessDocNos.isEmpty()){ Map<String, Object> param = new HashMap<>(); param.put("status", "1"); param.put("docNos", haveProcessDocNos); apsWorkOrderJobMapper.updateApsWorkOrderJobPrccessStatus(param); } if(!noProcessDocNos.isEmpty()){ Map<String, Object> param = new HashMap<>(); param.put("status", "2"); param.put("docNos", noProcessDocNos); apsWorkOrderJobMapper.updateApsWorkOrderJobPrccessStatus(param); apsWorkOrderJobLog.setRequestData(noProcessDocNos.toString()); apsWorkOrderJobLog.setResponseData(""); apsWorkOrderJobLog.setResult("empty"); apsWorkOrderJobLog.setUpdateTime(DateUtils.getNowDate()); apsWorkOrderJobLogService.updateApsWorkOrderJobLog(apsWorkOrderJobLog); } } @Override public void syncWorkOrderProcessData(String status, Integer pageSize) { try{ Integer pageNum = 1; //å页æ¥è¯¢å·¥å ApsWorkOrderJob apsWorkOrderJob = new ApsWorkOrderJob(); if("".equals(status)){ @@ -282,6 +283,7 @@ while (true){ PageHelper.startPage(1, pageSize); List<ApsWorkOrderJob> pageList = apsWorkOrderJobMapper.selectApsWorkOrderJobList(apsWorkOrderJob); PageHelper.clearPage(); if(!pageList.isEmpty()){ long startTime = System.currentTimeMillis(); List<String> docNos = new ArrayList<>(); @@ -293,15 +295,14 @@ break; } lastDocNos = String.join(",", docNos); long endTime = System.currentTimeMillis(); // è®°å½ç»ææ¶é´ long duration = endTime - startTime; // 计ç®è¿è¡æ¶é´ System.out.println("è¿è¡æ¶é´ï¼"+ duration +"毫ç§"); } pageNum++; } }else{ while (true){ PageHelper.startPage(1, pageSize); List<ApsWorkOrderJob> pageList = apsWorkOrderJobMapper.selectApsWorkOrderJobList(apsWorkOrderJob); PageHelper.clearPage(); if(!pageList.isEmpty()){ long startTime = System.currentTimeMillis(); List<String> docNos = new ArrayList<>(); @@ -312,15 +313,13 @@ } if(!docNos.isEmpty()){ getWorkOrderProcessFromU9(docNos); long endTime = System.currentTimeMillis(); // è®°å½ç»ææ¶é´ long duration = endTime - startTime; // 计ç®è¿è¡æ¶é´ System.out.println("è¿è¡æ¶é´ï¼"+ duration +"毫ç§"); }else{ break; } }else{ break; } pageNum++; } } }catch (Exception e){