diff --git a/op-api/op-api-system/src/main/java/com/op/system/api/RemoteMesService.java b/op-api/op-api-system/src/main/java/com/op/system/api/RemoteMesService.java index 135fda3bd..dea44c1f1 100644 --- a/op-api/op-api-system/src/main/java/com/op/system/api/RemoteMesService.java +++ b/op-api/op-api-system/src/main/java/com/op/system/api/RemoteMesService.java @@ -35,4 +35,10 @@ public interface RemoteMesService { @PostMapping("/prepare/reportWorkTask") public R reportWorkTask(); + + @PostMapping("/wcsInterface/dataClearTask") + public R dataClearTask(); + + @PostMapping("/wcsInterface/dataBKTask") + public R dataBKTask(); } diff --git a/op-api/op-api-system/src/main/java/com/op/system/api/factory/RemoteMesFallbackFactory.java b/op-api/op-api-system/src/main/java/com/op/system/api/factory/RemoteMesFallbackFactory.java index 0bd451f3e..3390c0a09 100644 --- a/op-api/op-api-system/src/main/java/com/op/system/api/factory/RemoteMesFallbackFactory.java +++ b/op-api/op-api-system/src/main/java/com/op/system/api/factory/RemoteMesFallbackFactory.java @@ -45,6 +45,16 @@ public class RemoteMesFallbackFactory implements FallbackFactory getEquipmentTypeList(EquEquipment equEquipment); + } \ No newline at end of file diff --git a/op-modules/op-device/src/main/java/com/op/device/mapper/EquOutsourceWorkMapper.java b/op-modules/op-device/src/main/java/com/op/device/mapper/EquOutsourceWorkMapper.java index dc94b988d..532c5febd 100644 --- a/op-modules/op-device/src/main/java/com/op/device/mapper/EquOutsourceWorkMapper.java +++ b/op-modules/op-device/src/main/java/com/op/device/mapper/EquOutsourceWorkMapper.java @@ -3,6 +3,7 @@ package com.op.device.mapper; import java.util.List; import com.op.device.domain.EquOutsourceWork; +import com.op.device.domain.EquRepairWorkOrder; /** * 委外工单Mapper接口 @@ -58,4 +59,7 @@ public interface EquOutsourceWorkMapper { * @return 结果 */ public int deleteEquOutsourceWorkByWorkIds(String[] workIds); + + //流水号 + public int selectWorkCodeSerialNumber(); } diff --git a/op-modules/op-device/src/main/java/com/op/device/mapper/EquRepairOrderMapper.java b/op-modules/op-device/src/main/java/com/op/device/mapper/EquRepairOrderMapper.java index 47ced17db..d1f04e04e 100644 --- a/op-modules/op-device/src/main/java/com/op/device/mapper/EquRepairOrderMapper.java +++ b/op-modules/op-device/src/main/java/com/op/device/mapper/EquRepairOrderMapper.java @@ -65,7 +65,7 @@ public interface EquRepairOrderMapper { * 获取流水号 * @return */ - int selectSerialNumber(); + int selectOrderCodeSerialNumber(); //查询报修人员列表 @DS("master") diff --git a/op-modules/op-device/src/main/java/com/op/device/mapper/EquRepairWorkOrderMapper.java b/op-modules/op-device/src/main/java/com/op/device/mapper/EquRepairWorkOrderMapper.java index fdaa55747..f50a6159b 100644 --- a/op-modules/op-device/src/main/java/com/op/device/mapper/EquRepairWorkOrderMapper.java +++ b/op-modules/op-device/src/main/java/com/op/device/mapper/EquRepairWorkOrderMapper.java @@ -58,4 +58,10 @@ public interface EquRepairWorkOrderMapper { * @return 结果 */ public int deleteEquRepairWorkOrderByWorkIds(String[] workIds); + + //获取流水号 + public int selectWorkCodeSerialNumber(); + + //转委外 + void updateWorkOutsource(EquRepairWorkOrder equRepairWorkOrder); } diff --git a/op-modules/op-device/src/main/java/com/op/device/service/IEquRepairWorkOrderService.java b/op-modules/op-device/src/main/java/com/op/device/service/IEquRepairWorkOrderService.java index b0a155416..8d7cf168b 100644 --- a/op-modules/op-device/src/main/java/com/op/device/service/IEquRepairWorkOrderService.java +++ b/op-modules/op-device/src/main/java/com/op/device/service/IEquRepairWorkOrderService.java @@ -27,7 +27,7 @@ public interface IEquRepairWorkOrderService { public List selectEquRepairWorkOrderList(EquRepairWorkOrder equRepairWorkOrder); /** - * 新增维修工单 + * 快速工单 * * @param equRepairWorkOrder 维修工单 * @return 结果 diff --git a/op-modules/op-device/src/main/java/com/op/device/service/impl/EquOutsourceWorkServiceImpl.java b/op-modules/op-device/src/main/java/com/op/device/service/impl/EquOutsourceWorkServiceImpl.java index 87890958c..3bb88a81b 100644 --- a/op-modules/op-device/src/main/java/com/op/device/service/impl/EquOutsourceWorkServiceImpl.java +++ b/op-modules/op-device/src/main/java/com/op/device/service/impl/EquOutsourceWorkServiceImpl.java @@ -4,6 +4,10 @@ import java.util.List; import com.baomidou.dynamic.datasource.annotation.DS; import com.op.common.core.utils.DateUtils; +import com.op.common.core.utils.uuid.IdUtils; +import com.op.common.security.utils.SecurityUtils; +import com.op.device.domain.EquRepairWorkOrder; +import com.op.device.mapper.EquRepairWorkOrderMapper; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.op.device.mapper.EquOutsourceWorkMapper; @@ -21,6 +25,9 @@ public class EquOutsourceWorkServiceImpl implements IEquOutsourceWorkService { @Autowired private EquOutsourceWorkMapper equOutsourceWorkMapper; + @Autowired + private EquRepairWorkOrderMapper equRepairWorkOrderMapper; + /** * 查询委外工单 * @@ -54,7 +61,22 @@ public class EquOutsourceWorkServiceImpl implements IEquOutsourceWorkService { @Override @DS("#header.poolName") public int insertEquOutsourceWork(EquOutsourceWork equOutsourceWork) { + //转委外 + String serialNum = String.format("%03d", equOutsourceWorkMapper.selectWorkCodeSerialNumber()); + String equipmentCode = equOutsourceWork.getEquipmentCode(); + equOutsourceWork.setWorkCode("WW"+DateUtils.dateTimeNow(DateUtils.YYYYMMDD) + equipmentCode + serialNum); + if(equOutsourceWork.getWorkId()!= null){ + EquRepairWorkOrder equRepairWorkOrder = new EquRepairWorkOrder(); + equRepairWorkOrder.setWorkId(equOutsourceWork.getWorkId()); + equRepairWorkOrder.setWorkOutsource("1"); + equRepairWorkOrder.setOutWorkCode(equOutsourceWork.getWorkCode()); + equRepairWorkOrderMapper.updateWorkOutsource(equRepairWorkOrder); + equOutsourceWork.setWorkId(""); + } + equOutsourceWork.setWorkId(IdUtils.fastSimpleUUID()); + equOutsourceWork.setWorkReason(equOutsourceWork.getOutSourceReason()); equOutsourceWork.setCreateTime(DateUtils.getNowDate()); + equOutsourceWork.setCreateBy(SecurityUtils.getUsername()); return equOutsourceWorkMapper.insertEquOutsourceWork(equOutsourceWork); } @@ -68,6 +90,7 @@ public class EquOutsourceWorkServiceImpl implements IEquOutsourceWorkService { @DS("#header.poolName") public int updateEquOutsourceWork(EquOutsourceWork equOutsourceWork) { equOutsourceWork.setUpdateTime(DateUtils.getNowDate()); + equOutsourceWork.setUpdateBy(SecurityUtils.getUsername()); return equOutsourceWorkMapper.updateEquOutsourceWork(equOutsourceWork); } diff --git a/op-modules/op-device/src/main/java/com/op/device/service/impl/EquRepairOrderServiceImpl.java b/op-modules/op-device/src/main/java/com/op/device/service/impl/EquRepairOrderServiceImpl.java index f744f1861..aac8b908c 100644 --- a/op-modules/op-device/src/main/java/com/op/device/service/impl/EquRepairOrderServiceImpl.java +++ b/op-modules/op-device/src/main/java/com/op/device/service/impl/EquRepairOrderServiceImpl.java @@ -72,9 +72,10 @@ public class EquRepairOrderServiceImpl implements IEquRepairOrderService { public int insertEquRepairOrder(EquRepairOrder equRepairOrder) { equRepairOrder.setOrderId(IdUtils.fastSimpleUUID()); // 获取故障报修流水号 - String serialNum = String.format("%03d", equRepairOrderMapper.selectSerialNumber()); + String serialNum = String.format("%03d", equRepairOrderMapper.selectOrderCodeSerialNumber()); String equipmentCode = equRepairOrder.getEquipmentCode(); - equRepairOrder.setOrderCode(DateUtils.dateTimeNow(DateUtils.YYYYMMDD) + equipmentCode + serialNum); + //报修单号 + equRepairOrder.setOrderCode("BX"+DateUtils.dateTimeNow(DateUtils.YYYYMMDD) + equipmentCode + serialNum); equRepairOrder.setCreateTime(DateUtils.getNowDate()); equRepairOrder.setCreateBy(SecurityUtils.getUsername()); equRepairOrder.setOrderStatus("待审核"); @@ -82,7 +83,7 @@ public class EquRepairOrderServiceImpl implements IEquRepairOrderService { } /** - * 修改故障报修 + * 审核故障报修 * * @param equRepairOrder 故障报修 * @return 结果 @@ -94,14 +95,22 @@ public class EquRepairOrderServiceImpl implements IEquRepairOrderService { EquRepairWorkOrder equRepairWorkOrder = new EquRepairWorkOrder(); //报修单号 equRepairWorkOrder.setOrderCode(equRepairOrder.getOrderCode()); + //维修单号 + String serialNum = String.format("%03d", equRepairWorkOrderMapper.selectWorkCodeSerialNumber()); + String equipmentCode = equRepairOrder.getEquipmentCode(); + equRepairWorkOrder.setWorkCode("WX"+DateUtils.dateTimeNow(DateUtils.YYYYMMDD) + equipmentCode + serialNum); equRepairWorkOrder.setOrderId(equRepairOrder.getOrderId()); equRepairWorkOrder.setEquipmentCode(equRepairOrder.getEquipmentCode()); equRepairWorkOrder.setWorkTeam(equRepairOrder.getWorkTeam()); - equRepairWorkOrder.setWorkPlanDownTime(equRepairOrder.getWorkPlanDownTime()); - //是否停机维修 - if(equRepairOrder.getWorkPlanTime() != null){ + //不委外 + equRepairWorkOrder.setWorkOutsource("0"); + equRepairWorkOrder.setOutWorkCode("无"); + //计划维修时间 + equRepairWorkOrder.setWorkPlanTime(equRepairOrder.getWorkPlanTime()); + //是否停机维修 停机维修时间 + if(equRepairOrder.getWorkPlanDownTime() != null){ equRepairWorkOrder.setWorkDownMachine("1"); - equRepairWorkOrder.setWorkPlanTime(equRepairOrder.getWorkPlanTime()); + equRepairWorkOrder.setWorkPlanDownTime(equRepairOrder.getWorkPlanDownTime()); }else{ equRepairWorkOrder.setWorkDownMachine("0"); } @@ -116,7 +125,10 @@ public class EquRepairOrderServiceImpl implements IEquRepairOrderService { EquOutsourceWork equOutsourceWork = new EquOutsourceWork(); //委外工单编码、id、联系方式、委外单位、委外人员、委外原因 equOutsourceWork.setWorkId(IdUtils.fastSimpleUUID()); - equOutsourceWork.setWorkCode(equRepairOrder.getOrderCode()); + equOutsourceWork.setOrderCode(equRepairOrder.getOrderCode()); + String serialNum = String.format("%03d", equOutsourceWorkMapper.selectWorkCodeSerialNumber()); + String equipmentCode = equRepairOrder.getEquipmentCode(); + equOutsourceWork.setWorkCode("WW"+DateUtils.dateTimeNow(DateUtils.YYYYMMDD) + equipmentCode + serialNum); equOutsourceWork.setWorkConnection(equRepairOrder.getWorkConnection()); equOutsourceWork.setWorkOutsourcingUnit(equRepairOrder.getWorkOutsourcingUnit()); equOutsourceWork.setWorkPerson(equRepairOrder.getOutSourcePerson()); diff --git a/op-modules/op-device/src/main/java/com/op/device/service/impl/EquRepairWorkOrderServiceImpl.java b/op-modules/op-device/src/main/java/com/op/device/service/impl/EquRepairWorkOrderServiceImpl.java index 5d16e66b2..58e4171bd 100644 --- a/op-modules/op-device/src/main/java/com/op/device/service/impl/EquRepairWorkOrderServiceImpl.java +++ b/op-modules/op-device/src/main/java/com/op/device/service/impl/EquRepairWorkOrderServiceImpl.java @@ -4,6 +4,8 @@ import java.util.List; import com.baomidou.dynamic.datasource.annotation.DS; import com.op.common.core.utils.DateUtils; +import com.op.common.core.utils.uuid.IdUtils; +import com.op.common.security.utils.SecurityUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.op.device.mapper.EquRepairWorkOrderMapper; @@ -46,7 +48,7 @@ public class EquRepairWorkOrderServiceImpl implements IEquRepairWorkOrderService } /** - * 新增维修工单 + * 快速工单 * * @param equRepairWorkOrder 维修工单 * @return 结果 @@ -54,6 +56,13 @@ public class EquRepairWorkOrderServiceImpl implements IEquRepairWorkOrderService @Override @DS("#header.poolName") public int insertEquRepairWorkOrder(EquRepairWorkOrder equRepairWorkOrder) { + equRepairWorkOrder.setWorkId(IdUtils.fastSimpleUUID()); + // 获取流水号 + String serialNum = String.format("%03d", equRepairWorkOrderMapper.selectWorkCodeSerialNumber()); + String equipmentCode = equRepairWorkOrder.getEquipmentCode(); + //维修单号 + equRepairWorkOrder.setWorkCode("WX"+DateUtils.dateTimeNow(DateUtils.YYYYMMDD) + equipmentCode + serialNum); + equRepairWorkOrder.setCreateBy(SecurityUtils.getUsername()); equRepairWorkOrder.setCreateTime(DateUtils.getNowDate()); return equRepairWorkOrderMapper.insertEquRepairWorkOrder(equRepairWorkOrder); } diff --git a/op-modules/op-device/src/main/java/com/op/device/service/impl/SparePartsInOutStorageServiceImpl.java b/op-modules/op-device/src/main/java/com/op/device/service/impl/SparePartsInOutStorageServiceImpl.java index 69754cf11..1685a2439 100644 --- a/op-modules/op-device/src/main/java/com/op/device/service/impl/SparePartsInOutStorageServiceImpl.java +++ b/op-modules/op-device/src/main/java/com/op/device/service/impl/SparePartsInOutStorageServiceImpl.java @@ -53,6 +53,7 @@ public class SparePartsInOutStorageServiceImpl implements ISparePartsInOutStorag @Override @DS("#header.poolName") public int insertSparePartsInStorage(SparePartsInStorage sparePartsInStorage) { + return sparePartsInOutStorageMapper.insertSparePartsInStorage(sparePartsInStorage); } diff --git a/op-modules/op-device/src/main/resources/mapper/device/EquOutsourceWorkMapper.xml b/op-modules/op-device/src/main/resources/mapper/device/EquOutsourceWorkMapper.xml index bf65d9a96..d171c4d3b 100644 --- a/op-modules/op-device/src/main/resources/mapper/device/EquOutsourceWorkMapper.xml +++ b/op-modules/op-device/src/main/resources/mapper/device/EquOutsourceWorkMapper.xml @@ -7,12 +7,13 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + - + @@ -27,25 +28,30 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" - select work_id, work_code, work_person, work_outsourcing_unit, work_connection, work_reason, work_type, management_code, work_cost, work_cost_time, attr1, attr2, attr3, del_flag, create_by, create_time, update_by, update_time, factory_code from equ_outsource_work + select work_id, work_code,order_code, work_person, work_outsourcing_unit, work_connection, work_reason, work_type, equipment_code, work_cost, work_cost_time, attr1, attr2, attr3, del_flag, create_by, create_time, update_by, update_time, factory_code from equ_outsource_work @@ -59,12 +65,13 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" work_id, work_code, + order_code, work_person, work_outsourcing_unit, work_connection, work_reason, work_type, - management_code, + equipment_code, work_cost, work_cost_time, attr1, @@ -80,12 +87,13 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" #{workId}, #{workCode}, + #{orderCode}, #{workPerson}, #{workOutsourcingUnit}, #{workConnection}, #{workReason}, #{workType}, - #{managementCode}, + #{equipmentCode}, #{workCost}, #{workCostTime}, #{attr1}, @@ -104,12 +112,13 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" update equ_outsource_work work_code = #{workCode}, + order_code = #{orderCode}, work_person = #{workPerson}, work_outsourcing_unit = #{workOutsourcingUnit}, work_connection = #{workConnection}, work_reason = #{workReason}, work_type = #{workType}, - management_code = #{managementCode}, + equipment_code = #{equipmentCode}, work_cost = #{workCost}, work_cost_time = #{workCostTime}, attr1 = #{attr1}, @@ -123,6 +132,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" factory_code = #{factoryCode}, where work_id = #{workId} + and del_flag = '0' @@ -135,4 +145,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" #{workId} + + + \ No newline at end of file diff --git a/op-modules/op-device/src/main/resources/mapper/device/EquRepairOrderMapper.xml b/op-modules/op-device/src/main/resources/mapper/device/EquRepairOrderMapper.xml index a7bd58c7a..334a30f4d 100644 --- a/op-modules/op-device/src/main/resources/mapper/device/EquRepairOrderMapper.xml +++ b/op-modules/op-device/src/main/resources/mapper/device/EquRepairOrderMapper.xml @@ -35,6 +35,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + @@ -66,9 +67,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and attr1 = #{attr1} and attr2 = #{attr2} and attr3 = #{attr3} + and create_time = #{createTime} and create_by = #{createBy} and repair_destination = #{repairDestination} - and del_flag = '0' + and del_flag = '0' + ORDER BY create_time DESC @@ -97,6 +100,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" be.equipment_spec, be.department, be.equipment_location, + rwo.work_down_machine, rwo.work_plan_down_time, rwo.work_plan_time, rwo.work_team, @@ -110,6 +114,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" left join equ_outsource_work eow on ero.order_code = eow.work_code where ero.order_id = #{orderId} and ero.del_flag = '0' + ORDER BY create_time DESC @@ -203,7 +208,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" - SELECT COUNT(order_id)+1 AS serialNum FROM equ_repair_order WHERE CONVERT(date, GETDATE()) = CONVERT(date,create_time) diff --git a/op-modules/op-device/src/main/resources/mapper/device/EquRepairWorkOrderMapper.xml b/op-modules/op-device/src/main/resources/mapper/device/EquRepairWorkOrderMapper.xml index f4547b34c..c98edb1ad 100644 --- a/op-modules/op-device/src/main/resources/mapper/device/EquRepairWorkOrderMapper.xml +++ b/op-modules/op-device/src/main/resources/mapper/device/EquRepairWorkOrderMapper.xml @@ -7,6 +7,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + @@ -32,42 +33,84 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + + + + + + - select work_id, order_id, order_code, work_handle, work_plan_time, work_plan_down_time, order_relevance, work_person, work_team, work_outsource, work_down_machine, equipment_code, work_reason, work_fault_desc, work_cost_time, work_cost, out_work_id, out_work_code, attr1, attr2, attr3, create_by, create_time, update_time, update_by, del_flag, factory_code from equ_repair_work_order + select work_id, order_id, order_code, work_code,work_handle, work_plan_time, work_plan_down_time, order_relevance, work_person, work_team, work_outsource, work_down_machine, equipment_code, work_reason, work_fault_desc, work_cost_time, work_cost, out_work_id, out_work_code, attr1, attr2, attr3, create_by, create_time, update_time, update_by, del_flag, factory_code from equ_repair_work_order @@ -75,6 +118,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" work_id, order_id, + work_code, order_code, work_handle, work_plan_time, @@ -104,6 +148,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" #{workId}, #{orderId}, + #{workCode}, #{orderCode}, #{workHandle}, #{workPlanTime}, @@ -136,6 +181,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" update equ_repair_work_order order_id = #{orderId}, + work_code = #{workCode}, order_code = #{orderCode}, work_handle = #{workHandle}, work_plan_time = #{workPlanTime}, @@ -163,6 +209,16 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" factory_code = #{factoryCode}, where work_id = #{workId} + and del_flag = '0' + + + + update equ_repair_work_order + set + work_outsource = #{workOutsource}, + out_work_code = #{outWorkCode} + where work_id = #{workId} + and del_flag = '0' @@ -175,4 +231,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" #{workId} + + + \ No newline at end of file diff --git a/op-modules/op-job/src/main/java/com/op/job/task/RyTask.java b/op-modules/op-job/src/main/java/com/op/job/task/RyTask.java index e1a210349..a2f4aac3f 100644 --- a/op-modules/op-job/src/main/java/com/op/job/task/RyTask.java +++ b/op-modules/op-job/src/main/java/com/op/job/task/RyTask.java @@ -11,6 +11,9 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; import com.op.common.core.utils.StringUtils; +import java.util.ArrayList; +import java.util.List; + /** * 定时任务调度测试 * @@ -103,4 +106,15 @@ public class RyTask { logger.info("++物料接口+开始++sapBomTask+++++"); remoteSapService.sapBomSync(); } + + /**每天执行1:00一次**/ + public void dataClearTask(){ + logger.info("++数据库清理3天内的数据+开始++dataClearTask+++++"); + remoteMesService.dataClearTask(); + } + /**每月1日执行1:10一次**/ + public void dataBKTask(){ + logger.info("++数据库备份的数据+开始++dataClearTask+++++"); + remoteMesService.dataBKTask(); + } } diff --git a/op-modules/op-mes/src/main/java/com/op/mes/controller/WCSInterfaceController.java b/op-modules/op-mes/src/main/java/com/op/mes/controller/WCSInterfaceController.java index a169d7dae..5c5717590 100644 --- a/op-modules/op-mes/src/main/java/com/op/mes/controller/WCSInterfaceController.java +++ b/op-modules/op-mes/src/main/java/com/op/mes/controller/WCSInterfaceController.java @@ -16,6 +16,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.util.CollectionUtils; import org.springframework.web.bind.annotation.*; +import java.util.ArrayList; import java.util.List; /** @@ -29,7 +30,7 @@ import java.util.List; public class WCSInterfaceController extends BaseController { @Autowired - private IWCSInterfaceService WCInterfaceService; + private IWCSInterfaceService wCInterfaceService; /** * 下一工序机台集合获取 @@ -46,7 +47,7 @@ public class WCSInterfaceController extends BaseController { wcsdto.setMessage("factory is not null"); return wcsdto; } - return WCInterfaceService.requestDestinationStations(wcsdto); + return wCInterfaceService.requestDestinationStations(wcsdto); } // "下一工序机台集合获取(手持)" @PostMapping("/pdaRequestDestinationStations") @@ -54,7 +55,7 @@ public class WCSInterfaceController extends BaseController { if(StringUtils.isBlank(wcsdto.getFactory())){ return error("factory is not null"); } - return success(WCInterfaceService.requestDestinationStations(wcsdto)); + return success(wCInterfaceService.requestDestinationStations(wcsdto)); } // "获取料罐用量(废弃,留着以后给别的功能用)" @@ -66,7 +67,7 @@ public class WCSInterfaceController extends BaseController { if(StringUtils.isBlank(lgdtos.get(0).getFactoryCode())){ return error("工厂信息为空"); } - return success(WCInterfaceService.saveLGusedLog(lgdtos)); + return success(wCInterfaceService.saveLGusedLog(lgdtos)); } /** @@ -74,14 +75,14 @@ public class WCSInterfaceController extends BaseController { */ @PostMapping("/getBoardFactory") public AjaxResult getBoardFactory(@RequestBody BoardDTO boardDTO) { - return success(WCInterfaceService.getBoardFactory(boardDTO)); + return success(wCInterfaceService.getBoardFactory(boardDTO)); } @PostMapping("/getBoardShifts") public AjaxResult getProShifts(@RequestBody BoardDTO boardDTO) { if(StringUtils.isBlank(boardDTO.getFactory())){ return error("[factory] is not null"); } - return success(WCInterfaceService.getProShifts(boardDTO)); + return success(wCInterfaceService.getProShifts(boardDTO)); } @PostMapping("/getMesBoardEquProductionToday") public AjaxResult getMesBoardEquProductionToday(@RequestBody BoardDTO boardDTO) { @@ -99,7 +100,18 @@ public class WCSInterfaceController extends BaseController { if(StringUtils.isEmpty(boardDTO.getEquTypeCode())){//设备类型 return error("[equTypeCode] is not null"); } - return success(WCInterfaceService.getMesBoardEquProductionToday(boardDTO)); + return success(wCInterfaceService.getMesBoardEquProductionToday(boardDTO)); + } + /************************************************************/ + /****************************数据库清理************************/ + /************************************************************/ + //定时清理表 + @PostMapping("/dataClearTask") + public AjaxResult dataClearTask() { + List tables = new ArrayList<>(); + tables.add("mes_plc_log"); + tables.add("mes_interface_log"); + return success(wCInterfaceService.dataClearTask(tables)); } public static void main(String args[]){ diff --git a/op-modules/op-mes/src/main/java/com/op/mes/mapper/MesMapper.java b/op-modules/op-mes/src/main/java/com/op/mes/mapper/MesMapper.java index b19af438c..4de2274ea 100644 --- a/op-modules/op-mes/src/main/java/com/op/mes/mapper/MesMapper.java +++ b/op-modules/op-mes/src/main/java/com/op/mes/mapper/MesMapper.java @@ -38,4 +38,6 @@ public interface MesMapper { List getTotalNumL(BoardDTO boardDTO); List getEveryNumL(BoardDTO boardDTO); + + void deleteDateByTableName(@Param("table")String table,@Param("ymdhms")String ymdhms); } diff --git a/op-modules/op-mes/src/main/java/com/op/mes/service/IWCSInterfaceService.java b/op-modules/op-mes/src/main/java/com/op/mes/service/IWCSInterfaceService.java index b53c49dca..33ad4c270 100644 --- a/op-modules/op-mes/src/main/java/com/op/mes/service/IWCSInterfaceService.java +++ b/op-modules/op-mes/src/main/java/com/op/mes/service/IWCSInterfaceService.java @@ -1,5 +1,6 @@ package com.op.mes.service; +import com.op.common.core.domain.R; import com.op.common.core.web.domain.AjaxResult; import com.op.mes.domain.MesShift; import com.op.mes.domain.dto.BaseEquipmentDto; @@ -28,4 +29,6 @@ public interface IWCSInterfaceService { String saveLGusedLog(List lgdtos); List getProShifts(BoardDTO boardDTO); + + R dataClearTask(List tables); } diff --git a/op-modules/op-mes/src/main/java/com/op/mes/service/impl/IWCInterfaceServiceImpl.java b/op-modules/op-mes/src/main/java/com/op/mes/service/impl/IWCInterfaceServiceImpl.java index 1a0b384de..aff2697d6 100644 --- a/op-modules/op-mes/src/main/java/com/op/mes/service/impl/IWCInterfaceServiceImpl.java +++ b/op-modules/op-mes/src/main/java/com/op/mes/service/impl/IWCInterfaceServiceImpl.java @@ -2,6 +2,7 @@ package com.op.mes.service.impl; import com.alibaba.fastjson2.JSONArray; import com.baomidou.dynamic.datasource.toolkit.DynamicDataSourceContextHolder; +import com.op.common.core.domain.R; import com.op.common.core.utils.DateUtils; import com.op.common.core.utils.bean.BeanUtils; import com.op.common.core.utils.uuid.IdUtils; @@ -11,16 +12,27 @@ import com.op.mes.mapper.MesMapper; import com.op.mes.mapper.MesReportWorkMapper; import com.op.mes.mapper.ProRfidProcessDetailMapper; import com.op.mes.service.IWCSInterfaceService; +import com.op.system.api.RemoteUserService; import com.op.system.api.domain.SysDept; +import com.op.system.api.domain.SysUser; import com.op.system.api.domain.dto.BoardDTO; import com.op.system.api.domain.dto.WCSDTO; import com.op.system.api.domain.dto.WCSDataDTO; import com.op.system.api.domain.mes.ProRfidProcessDetail; import org.apache.commons.lang.StringUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.time.LocalDate; +import java.time.format.DateTimeFormatter; +import java.time.temporal.ChronoUnit; import java.util.*; +import java.util.concurrent.ExecutorService; +import java.util.concurrent.LinkedBlockingQueue; +import java.util.concurrent.ThreadPoolExecutor; +import java.util.concurrent.TimeUnit; import java.util.stream.Collectors; /** @@ -31,7 +43,7 @@ import java.util.stream.Collectors; */ @Service public class IWCInterfaceServiceImpl implements IWCSInterfaceService { - + protected Logger logger = LoggerFactory.getLogger(getClass()); @Autowired private MesMapper mesMapper; @Autowired @@ -39,6 +51,9 @@ public class IWCInterfaceServiceImpl implements IWCSInterfaceService { @Autowired private MesReportWorkMapper mesReportWorkMapper; + @Autowired + private RemoteUserService remoteUserService; + /**下一工序机台集合获取 * JSON * { @@ -176,6 +191,45 @@ public class IWCInterfaceServiceImpl implements IWCSInterfaceService { } + @Override + public R dataClearTask(List tables) { + // 加载sf-cloud库的sys_datasource + SysUser sysUser = new SysUser(); + sysUser.setUserId(1L); + R>> dateSources0 = remoteUserService.getPoolNameList(sysUser); + List> dateSources = dateSources0.getData(); + ExecutorService executorService = new ThreadPoolExecutor( + dateSources.size(), + dateSources.size(), + 0L, TimeUnit.MILLISECONDS, + new LinkedBlockingQueue()); + try { + dateSources.forEach(dateSource -> { + logger.info("++++++++++++" + dateSource.get("poolName") + "++++开始++++++++++"); + Runnable run = () -> dateDeleteFunc(dateSource.get("poolName"),tables); + executorService.execute(run); + }); + } catch (Exception e) { + logger.error("service == deviceOfflineTimingTask == exception", e); + return R.fail("service == deviceOfflineTimingTask == exception"); + } finally { + executorService.shutdown(); + } + return R.ok(true); + } + + public void dateDeleteFunc(String poolName,List tables){ + DynamicDataSourceContextHolder.push(poolName);// 这是数据源的key + DateTimeFormatter ymdhms = DateTimeFormatter.ofPattern("yyyy-MM-dd"); + LocalDate today = LocalDate.now(); + System.out.println("今天的日期为:"+today); + LocalDate nextWeek = today.plus(-3, ChronoUnit.DAYS); + String ymdhms7 = nextWeek.format(ymdhms)+" 00:00:00"; + for(String table:tables){ + mesMapper.deleteDateByTableName(table,ymdhms7); + } + } + @Override public String saveLGusedLog(List lgdtos) { DynamicDataSourceContextHolder.push("ds_"+lgdtos.get(0).getFactoryCode());// 这是数据源的key @@ -191,6 +245,11 @@ public class IWCInterfaceServiceImpl implements IWCSInterfaceService { } public static void main(String args[]){ - System.out.println(DateUtils.getDate()); + DateTimeFormatter ymdhms = DateTimeFormatter.ofPattern("yyyy-MM-dd"); + LocalDate today = LocalDate.now(); + System.out.println("今天的日期为:"+today); + LocalDate nextWeek = today.plus(-3, ChronoUnit.DAYS); + String ymdhms7 = nextWeek.format(ymdhms); + System.out.println("7天之前的日期为:"+ymdhms7); } } diff --git a/op-modules/op-mes/src/main/resources/mapper/mes/MesMapper.xml b/op-modules/op-mes/src/main/resources/mapper/mes/MesMapper.xml index 0acd5a912..fc72d0fa2 100644 --- a/op-modules/op-mes/src/main/resources/mapper/mes/MesMapper.xml +++ b/op-modules/op-mes/src/main/resources/mapper/mes/MesMapper.xml @@ -55,6 +55,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" ) + + delete from ${table} where #{ymdhms} > CONVERT(varchar(30),create_time, 120) + - select top 1 id, file_name, file_address, version, attr1, attr2, attr3, attr4, create_by, create_time, update_by, update_time, remark from base_apk_file - order by create_by desc + order by create_time desc diff --git a/op-modules/op-technology/src/main/java/com/op/technology/service/impl/ProProcessServiceImpl.java b/op-modules/op-technology/src/main/java/com/op/technology/service/impl/ProProcessServiceImpl.java index 5f6a0c5c8..cde0acd0b 100644 --- a/op-modules/op-technology/src/main/java/com/op/technology/service/impl/ProProcessServiceImpl.java +++ b/op-modules/op-technology/src/main/java/com/op/technology/service/impl/ProProcessServiceImpl.java @@ -159,7 +159,8 @@ public class ProProcessServiceImpl implements IProProcessService { } proProcess.setUpdateTime(DateUtils.getNowDate()); - return proProcessMapper.updateProProcess(proProcess); + int n = proProcessMapper.updateProProcess(proProcess); + return n; } /**