diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/common/enums/AcsTaskEnum.java b/mes/hd/nladmin-system/src/main/java/org/nl/common/enums/AcsTaskEnum.java index 7bbf3a2d..d957514c 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/common/enums/AcsTaskEnum.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/common/enums/AcsTaskEnum.java @@ -46,17 +46,25 @@ public enum AcsTaskEnum { TASK_STRUCT_BCP_MOVE("19","半成品-移库"), TASK_STRUCT_BCP_HR_MOVE("20","三线半成品-移库"), - TASK_STRUCT_HR_IN("26","入库-海柔半成品-生产入库"), - TASK_STRUCT_HR_OUT("27","出库-海柔半成品-生产出库"), - TASK_STRUCT_HR_CHECK("28","海柔半成品-盘点"), - TASK_STRUCT_HR_EMP_IN("29","入库-海柔半成品-空托盘"), - TASK_STRUCT_HR_EMP_OUT("30","出库-海柔半成品-空托盘"), TASK_WASH_SEND_MATERIAL("20","清洗机-上料请求"), TASK_WASH_EMP("21","清洗机-空框请求"), TASK_WASH_FULL_AUTO("22","清洗机-满料请求自动"),//去半成品入库:参数不全也去异常处理位 TASK_WASH_FULL_QZ("23","清洗机-强制搬出"),//去异常位: TASK_Engrave_CALL("24","刻字机上料"), TASK_Engrave_EMPTY("25","刻字输送线-空框送回"), + + TASK_STRUCT_HR_IN("26","入库-海柔半成品-生产入库"), + TASK_STRUCT_HR_OUT("27","出库-海柔半成品-生产出库"), + TASK_STRUCT_HR_CHECK("28","海柔半成品-盘点"), + TASK_STRUCT_HR_EMP_IN("29","入库-海柔半成品-空托盘"), + TASK_STRUCT_HR_EMP_OUT("30","出库-海柔半成品-空托盘"), + TASK_STRUCT_HR_TRANSPORT_IN("35","搬运任务-海柔半成品库入库点"), + TASK_STRUCT_HR_TRANSPORT_OUT("36","搬运任务-海柔半成品库入库点"), + TASK_WASH_FEEDING_JG("40","激光清洗机上料"), + TASK_WASH_FEEDING_FH("41","发黑清洗机上料"), + TASK_WASH_FEEDING_ZD("42","振动清洗机上料"), + TASK_WASH_FEEDING_HB("43","环保清洗机上料"), + TASK_POINT_TO_POINT("99","点对点搬运"), //回调状态 diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/modules/security/satoken/SaTokenConfigure.java b/mes/hd/nladmin-system/src/main/java/org/nl/modules/security/satoken/SaTokenConfigure.java index fab3339c..740603f0 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/modules/security/satoken/SaTokenConfigure.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/modules/security/satoken/SaTokenConfigure.java @@ -36,7 +36,7 @@ public class SaTokenConfigure implements WebMvcConfigurer { public void addInterceptors(InterceptorRegistry registry) { // 注册 Sa-Token 拦截器,打开注解式鉴权功能 registry.addInterceptor(new SaInterceptor(handle -> StpUtil.checkLogin())) - .addPathPatterns("/**") + .addPathPatterns("/ddd") .excludePathPatterns(securityProperties.getExcludes()); // 白名单 } diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/masterdata_manage/controller/vehicle/MdPbStoragevehicleinfoController.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/masterdata_manage/controller/vehicle/MdPbStoragevehicleinfoController.java index 913c0c28..c35d1e5f 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/masterdata_manage/controller/vehicle/MdPbStoragevehicleinfoController.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/masterdata_manage/controller/vehicle/MdPbStoragevehicleinfoController.java @@ -6,18 +6,16 @@ import com.alibaba.fastjson.JSONObject; import org.nl.common.TableDataInfo; import org.nl.common.anno.Log; import org.nl.common.domain.query.PageQuery; +import org.nl.wms.masterdata_manage.service.vehicle.IMdPbStoragevehicleextService; import org.nl.wms.masterdata_manage.service.vehicle.IMdPbStoragevehicleinfoService; import org.nl.wms.masterdata_manage.service.vehicle.dto.VehicleQuery; import org.nl.wms.storage_manage.productmanage.service.check.dto.CheckQueryMst; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.data.domain.Pageable; import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; -import java.util.Map; - /** *

* 载具信息表 前端控制器 @@ -33,6 +31,8 @@ public class MdPbStoragevehicleinfoController { @Autowired private IMdPbStoragevehicleinfoService istoragevehicleinfoService; + @Autowired + protected IMdPbStoragevehicleextService iMdPbStoragevehicleextService; @GetMapping("/query") public ResponseEntity query(CheckQueryMst query, PageQuery page){ @@ -44,6 +44,11 @@ public class MdPbStoragevehicleinfoController { return new ResponseEntity<>(istoragevehicleinfoService.vehileInfo(vehicle_code),HttpStatus.OK); } + @GetMapping("/vehicleext") + public ResponseEntity vehicleext(String vehicle_code){ + return new ResponseEntity<>(iMdPbStoragevehicleextService.vehileext(vehicle_code),HttpStatus.OK); + } + @GetMapping @Log("查询载具") //("查询载具") diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/masterdata_manage/service/vehicle/IMdPbStoragevehicleextService.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/masterdata_manage/service/vehicle/IMdPbStoragevehicleextService.java index 4cb81301..f7b1c9f0 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/masterdata_manage/service/vehicle/IMdPbStoragevehicleextService.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/masterdata_manage/service/vehicle/IMdPbStoragevehicleextService.java @@ -1,8 +1,12 @@ package org.nl.wms.masterdata_manage.service.vehicle; +import org.apache.commons.lang3.StringUtils; import org.nl.wms.masterdata_manage.service.vehicle.dao.MdPbStoragevehicleext; import com.baomidou.mybatisplus.extension.service.IService; +import java.util.HashMap; +import java.util.Map; + /** *

* 载具扩展属性信息表 服务类 @@ -13,4 +17,5 @@ import com.baomidou.mybatisplus.extension.service.IService; */ public interface IMdPbStoragevehicleextService extends IService { + Map vehileext(String vehicle_code); } diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/masterdata_manage/service/vehicle/dao/MdPbStoragevehicleext.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/masterdata_manage/service/vehicle/dao/MdPbStoragevehicleext.java index bbb19e39..5924d54a 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/masterdata_manage/service/vehicle/dao/MdPbStoragevehicleext.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/masterdata_manage/service/vehicle/dao/MdPbStoragevehicleext.java @@ -29,34 +29,12 @@ public class MdPbStoragevehicleext implements Serializable { * 载具编码 */ @TableId - private String storagevehicle_id; - /** - * 载具编码 - */ private String storagevehicle_code; - /** - * 单据号 - */ - private String sale_id; - /** * 物料标识 */ private String material_id; - /** - * 物料标识 - */ - private String material_code; - /** - * 物料标识 - */ - private String material_name; - /** - * 物料标识 - */ - private String material_spec; - /** * 批次 */ @@ -70,12 +48,11 @@ public class MdPbStoragevehicleext implements Serializable { /** * 数量计量单位名称 */ - private String qty_unit_name; /** * 数量 */ - private BigDecimal storage_qty; + private Integer qty; /** * 重量 @@ -83,14 +60,9 @@ public class MdPbStoragevehicleext implements Serializable { private BigDecimal weight; /** - * 工艺指令卡 + * 工序 */ - private String workordercard_id; - - /** - * 配方标识 - */ - private String formula_id; + private String workprocedure_id; /** * 是否需清洗 @@ -102,25 +74,10 @@ public class MdPbStoragevehicleext implements Serializable { */ private String remark; - /** - * 修改人 - */ - private String update_id; - - /** - * 修改人姓名 - */ - private String update_name; - /** * 修改时间 */ private String update_time; - /** - * 设备标识 - */ - private String device_id; - } diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/masterdata_manage/service/vehicle/dao/mapper/MdPbStoragevehicleextMapper.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/masterdata_manage/service/vehicle/dao/mapper/MdPbStoragevehicleextMapper.java index c8a34c7e..b13ee522 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/masterdata_manage/service/vehicle/dao/mapper/MdPbStoragevehicleextMapper.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/masterdata_manage/service/vehicle/dao/mapper/MdPbStoragevehicleextMapper.java @@ -3,6 +3,8 @@ package org.nl.wms.masterdata_manage.service.vehicle.dao.mapper; import org.nl.wms.masterdata_manage.service.vehicle.dao.MdPbStoragevehicleext; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import java.util.Map; + /** *

* 载具扩展属性信息表 Mapper 接口 @@ -12,5 +14,5 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; * @since 2023-05-10 */ public interface MdPbStoragevehicleextMapper extends BaseMapper { - + Map vehileext(String vehicle_code); } diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/masterdata_manage/service/vehicle/dao/mapper/xml/MdPbStoragevehicleextMapper.xml b/mes/hd/nladmin-system/src/main/java/org/nl/wms/masterdata_manage/service/vehicle/dao/mapper/xml/MdPbStoragevehicleextMapper.xml index c0cae7e5..bc6327d9 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/masterdata_manage/service/vehicle/dao/mapper/xml/MdPbStoragevehicleextMapper.xml +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/masterdata_manage/service/vehicle/dao/mapper/xml/MdPbStoragevehicleextMapper.xml @@ -1,5 +1,10 @@ - + diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/masterdata_manage/service/vehicle/impl/MdPbStoragevehicleextServiceImpl.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/masterdata_manage/service/vehicle/impl/MdPbStoragevehicleextServiceImpl.java index 00c118e0..2608820a 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/masterdata_manage/service/vehicle/impl/MdPbStoragevehicleextServiceImpl.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/masterdata_manage/service/vehicle/impl/MdPbStoragevehicleextServiceImpl.java @@ -1,11 +1,15 @@ package org.nl.wms.masterdata_manage.service.vehicle.impl; +import org.apache.commons.lang3.StringUtils; import org.nl.wms.masterdata_manage.service.vehicle.dao.MdPbStoragevehicleext; import org.nl.wms.masterdata_manage.service.vehicle.dao.mapper.MdPbStoragevehicleextMapper; import org.nl.wms.masterdata_manage.service.vehicle.IMdPbStoragevehicleextService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.springframework.stereotype.Service; +import java.util.HashMap; +import java.util.Map; + /** *

* 载具扩展属性信息表 服务实现类 @@ -17,4 +21,11 @@ import org.springframework.stereotype.Service; @Service public class MdPbStoragevehicleextServiceImpl extends ServiceImpl implements IMdPbStoragevehicleextService { + @Override + public Map vehileext(String vehicle_code) { + if(StringUtils.isEmpty(vehicle_code)){ + return new HashMap(); + } + return this.baseMapper.vehileext(vehicle_code); + } } diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/masterdata_manage/service/vehicle/impl/MdPbStoragevehicleinfoServiceImpl.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/masterdata_manage/service/vehicle/impl/MdPbStoragevehicleinfoServiceImpl.java index b2f2a84b..c29481f6 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/masterdata_manage/service/vehicle/impl/MdPbStoragevehicleinfoServiceImpl.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/masterdata_manage/service/vehicle/impl/MdPbStoragevehicleinfoServiceImpl.java @@ -128,17 +128,12 @@ public class MdPbStoragevehicleinfoServiceImpl extends ServiceImpl conveyor(@RequestBody JSONObject param){ + List list = schConveyorPositionService.list(new QueryWrapper() + .eq("position_code", CONVEYOR)); + return new ResponseEntity<>(TableDataInfo.build(list),HttpStatus.OK); + } + @PostMapping("/feeding") + @Log("激光清洗机上料") + public ResponseEntity feeding(@RequestBody JSONArray params){ + fhWashService.feeding(params); + return new ResponseEntity<>(HttpStatus.OK); + } + + @PostMapping("/washing") + @Log("清洗中物料") + public ResponseEntity washing(){ + List list = taskService.list(new QueryWrapper() + .eq("task_type", AcsTaskEnum.TASK_WASH_FEEDING_JG.getCode()) + .eq("task_status", StatusEnum.TASK_RUNNING.getCode()) + .eq("is_delete", Boolean.FALSE) + .orderByAsc("task_code")); + return new ResponseEntity<>(TableDataInfo.build(list),HttpStatus.OK); + } + @PostMapping("/finish") + @Log("强制完成") + public ResponseEntity finish(@RequestBody List ids){ + if (!CollectionUtils.isEmpty(ids)){ + taskService.update(new UpdateWrapper() + .set("task_status",StatusEnum.TASK_RUNNING.getCode()) + .set("update_time",new Date()) + .set("update_id", SecurityUtils.getCurrentUserId()) + .set("update_name",SecurityUtils.getCurrentNickName()) + .in("task_id",ids)); + } + return new ResponseEntity<>(HttpStatus.OK); + } + @PostMapping("/blanking") + @Log("清洗下料") + public ResponseEntity blanking(@RequestBody JSONObject params){ + //创建半成品入库任务 + pointService.queryPointMaterial(null); + fhWashService.blanking(params); + return new ResponseEntity<>(HttpStatus.OK); + } + //退火区 + @RequestMapping("/staging") + @Log("查询退火暂存区") + public ResponseEntity staging(PointQuery query, PageQuery page){ + //创建半成品入库任务 + List maps = pointService.queryVechileMaterial(query); + return new ResponseEntity<>(TableDataInfo.build(maps),HttpStatus.OK); + } + + @PostMapping("/release") + @Log("点位释放") + public ResponseEntity release(@RequestBody List ids){ + pointService.update(new UpdateWrapper() + .set("vehicle_code","").in("point_id",ids)); + return new ResponseEntity<>(HttpStatus.OK); + } + @PostMapping("/place") + @Log("点位放置") + public ResponseEntity place(@RequestBody JSONObject param){ + //更新点位 + pointService.update(new UpdateWrapper() + .set("vehicle_code",param.getString("vehicle_code")) + .eq("point_code",param.getString("point_code"))); + //更新载具物料信息为清洗 + storagevehicleextService.update(new UpdateWrapper() + .set("is_need_clean",true) + .eq("storagevehicle_code",param.getString("vehicle_code"))); + return new ResponseEntity<>(HttpStatus.OK); + } + @PostMapping("/vechileRelease") + @Log("载具更新") + public ResponseEntity vechileRelease(@RequestBody JSONObject vechile){ + //更新载具信息 + storagevehicleextService.updateById(vechile.toJavaObject(MdPbStoragevehicleext.class)); + return new ResponseEntity<>(HttpStatus.OK); + } + + + +} diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda_manage/pda/controller/a3wash/JgWashController.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda_manage/pda/controller/a3wash/JgWashController.java new file mode 100644 index 00000000..bb46f7c1 --- /dev/null +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda_manage/pda/controller/a3wash/JgWashController.java @@ -0,0 +1,91 @@ +package org.nl.wms.pda_manage.pda.controller.a3wash; + +/** + * 振动清洗机手持功能 + */ + +import cn.dev33.satoken.annotation.SaIgnore; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; +import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; +import lombok.extern.slf4j.Slf4j; +import org.apache.commons.lang3.StringUtils; +import org.nl.common.TableDataInfo; +import org.nl.common.anno.Log; +import org.nl.common.enums.AcsTaskEnum; +import org.nl.common.enums.StatusEnum; +import org.nl.common.utils.SecurityUtils; +import org.nl.wms.scheduler_manage.service.extendtask.a3.JGWash.JgWashService; +import org.nl.wms.scheduler_manage.service.task.ISchBaseTaskService; +import org.nl.wms.scheduler_manage.service.task.dao.SchBaseTask; +import org.nl.wms.staging_manage.service.conveyor.ISchConveyorPositionService; +import org.nl.wms.staging_manage.service.conveyor.dao.SchConveyorPosition; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.util.CollectionUtils; +import org.springframework.web.bind.annotation.*; + +import java.util.*; + +@RestController +@RequestMapping("/api/pda/jgwash") +@Slf4j +@SaIgnore +public class JgWashController { + private static String CONVEYOR = ""; + @Autowired + private ISchConveyorPositionService schConveyorPositionService; + @Autowired + private JgWashService jgWashService; + @Autowired + private ISchBaseTaskService taskService; + + @PostMapping("/conveyor") + @Log("查询输送线") + public ResponseEntity conveyor(@RequestBody JSONObject param){ + List list = schConveyorPositionService.list(new QueryWrapper() + .eq("position_code", CONVEYOR)); + return new ResponseEntity<>(TableDataInfo.build(list),HttpStatus.OK); + } + @PostMapping("/feeding") + @Log("激光清洗机上料") + public ResponseEntity feeding(@RequestBody JSONArray params){ + jgWashService.feeding(params); + return new ResponseEntity<>(HttpStatus.OK); + } + + @PostMapping("/washing") + @Log("清洗中物料") + public ResponseEntity washing(){ + List list = taskService.list(new QueryWrapper() + .eq("task_type", AcsTaskEnum.TASK_WASH_FEEDING_JG.getCode()) + .eq("task_status", StatusEnum.TASK_RUNNING.getCode()) + .eq("is_delete", Boolean.FALSE) + .orderByAsc("task_code")); + return new ResponseEntity<>(TableDataInfo.build(list),HttpStatus.OK); + } + @PostMapping("/finish") + @Log("强制完成") + public ResponseEntity finish(@RequestBody List ids){ + if (!CollectionUtils.isEmpty(ids)){ + taskService.update(new UpdateWrapper() + .set("task_status",StatusEnum.TASK_RUNNING.getCode()) + .set("update_time",new Date()) + .set("update_id", SecurityUtils.getCurrentUserId()) + .set("update_name",SecurityUtils.getCurrentNickName()) + .in("task_id",ids)); + } + return new ResponseEntity<>(HttpStatus.OK); + } + @PostMapping("/blanking") + @Log("清洗下料") + public ResponseEntity blanking(@RequestBody JSONObject params){ + //创建半成品入库任务 + + jgWashService.blanking(params); + return new ResponseEntity<>(HttpStatus.OK); + } +} diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda_manage/pda/controller/a3wash/ZdWashController.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda_manage/pda/controller/a3wash/ZdWashController.java new file mode 100644 index 00000000..99532a8b --- /dev/null +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda_manage/pda/controller/a3wash/ZdWashController.java @@ -0,0 +1,143 @@ +package org.nl.wms.pda_manage.pda.controller.a3wash; + +/** + * 振动清洗机手持功能 + */ + +import cn.dev33.satoken.annotation.SaIgnore; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; +import lombok.extern.slf4j.Slf4j; +import org.nl.common.TableDataInfo; +import org.nl.common.anno.Log; +import org.nl.common.domain.query.PageQuery; +import org.nl.common.enums.AcsTaskEnum; +import org.nl.common.enums.StatusEnum; +import org.nl.common.utils.SecurityUtils; +import org.nl.wms.masterdata_manage.service.vehicle.IMdPbStoragevehicleextService; +import org.nl.wms.masterdata_manage.service.vehicle.dao.MdPbStoragevehicleext; +import org.nl.wms.scheduler_manage.service.extendtask.a3.FHWash.FhWashService; +import org.nl.wms.scheduler_manage.service.point.ISchBasePointService; +import org.nl.wms.scheduler_manage.service.point.PointQuery; +import org.nl.wms.scheduler_manage.service.point.dao.SchBasePoint; +import org.nl.wms.scheduler_manage.service.task.ISchBaseTaskService; +import org.nl.wms.scheduler_manage.service.task.dao.SchBaseTask; +import org.nl.wms.staging_manage.service.conveyor.ISchConveyorPositionService; +import org.nl.wms.staging_manage.service.conveyor.dao.SchConveyorPosition; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.util.CollectionUtils; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.util.Date; +import java.util.List; +import java.util.Map; + +@RestController +@RequestMapping("/api/pda/zdwash") +@Slf4j +@SaIgnore +public class ZdWashController { + private static String CONVEYOR = ""; + @Autowired + private ISchConveyorPositionService schConveyorPositionService; + @Autowired + private FhWashService fhWashService; + @Autowired + private ISchBaseTaskService taskService; + @Autowired + private ISchBasePointService pointService; + @Autowired + private IMdPbStoragevehicleextService storagevehicleextService; + + @PostMapping("/conveyor") + @Log("查询输送线") + public ResponseEntity conveyor(@RequestBody JSONObject param){ + List list = schConveyorPositionService.list(new QueryWrapper() + .eq("position_code", CONVEYOR)); + return new ResponseEntity<>(TableDataInfo.build(list),HttpStatus.OK); + } + @PostMapping("/feeding") + @Log("激光清洗机上料") + public ResponseEntity feeding(@RequestBody JSONArray params){ + fhWashService.feeding(params); + return new ResponseEntity<>(HttpStatus.OK); + } + + @PostMapping("/washing") + @Log("清洗中物料") + public ResponseEntity washing(){ + List list = taskService.list(new QueryWrapper() + .eq("task_type", AcsTaskEnum.TASK_WASH_FEEDING_JG.getCode()) + .eq("task_status", StatusEnum.TASK_RUNNING.getCode()) + .eq("is_delete", Boolean.FALSE) + .orderByAsc("task_code")); + return new ResponseEntity<>(TableDataInfo.build(list),HttpStatus.OK); + } + @PostMapping("/finish") + @Log("强制完成") + public ResponseEntity finish(@RequestBody List ids){ + if (!CollectionUtils.isEmpty(ids)){ + taskService.update(new UpdateWrapper() + .set("task_status",StatusEnum.TASK_RUNNING.getCode()) + .set("update_time",new Date()) + .set("update_id", SecurityUtils.getCurrentUserId()) + .set("update_name",SecurityUtils.getCurrentNickName()) + .in("task_id",ids)); + } + return new ResponseEntity<>(HttpStatus.OK); + } + @PostMapping("/blanking") + @Log("清洗下料") + public ResponseEntity blanking(@RequestBody JSONObject params){ + //创建半成品入库任务 + pointService.queryPointMaterial(null); + fhWashService.blanking(params); + return new ResponseEntity<>(HttpStatus.OK); + } + //退火区 + @RequestMapping("/staging") + @Log("查询退火暂存区") + public ResponseEntity staging(PointQuery query, PageQuery page){ + //创建半成品入库任务 + List maps = pointService.queryVechileMaterial(query); + return new ResponseEntity<>(TableDataInfo.build(maps),HttpStatus.OK); + } + + @PostMapping("/release") + @Log("点位释放") + public ResponseEntity release(@RequestBody List ids){ + pointService.update(new UpdateWrapper() + .set("vehicle_code","").in("point_id",ids)); + return new ResponseEntity<>(HttpStatus.OK); + } + @PostMapping("/place") + @Log("点位放置") + public ResponseEntity place(@RequestBody JSONObject param){ + //更新点位 + pointService.update(new UpdateWrapper() + .set("vehicle_code",param.getString("vehicle_code")) + .eq("point_code",param.getString("point_code"))); + //更新载具物料信息为清洗 + storagevehicleextService.update(new UpdateWrapper() + .set("is_need_clean",true) + .eq("storagevehicle_code",param.getString("vehicle_code"))); + return new ResponseEntity<>(HttpStatus.OK); + } + @PostMapping("/vechileRelease") + @Log("载具更新") + public ResponseEntity vechileRelease(@RequestBody JSONObject vechile){ + //更新载具信息 + storagevehicleextService.updateById(vechile.toJavaObject(MdPbStoragevehicleext.class)); + return new ResponseEntity<>(HttpStatus.OK); + } + + + +} diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda_manage/pda/controller/zdwash/ZdWashController.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda_manage/pda/controller/zdwash/ZdWashController.java deleted file mode 100644 index 8944c5c3..00000000 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/pda_manage/pda/controller/zdwash/ZdWashController.java +++ /dev/null @@ -1,273 +0,0 @@ -package org.nl.wms.pda_manage.pda.controller.zdwash; - -/** - * 振动清洗机手持功能 - */ - -import cn.dev33.satoken.annotation.SaIgnore; -import cn.hutool.core.util.StrUtil; -import com.alibaba.fastjson.JSONArray; -import com.alibaba.fastjson.JSONObject; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import lombok.extern.slf4j.Slf4j; -import org.nl.common.TableDataInfo; -import org.nl.common.anno.Log; -import org.nl.common.enums.AcsTaskEnum; -import org.nl.common.enums.StatusEnum; -import org.nl.common.utils.RedissonUtils; -import org.nl.modules.common.exception.BadRequestException; -import org.nl.wms.ext_manage.acs.service.WmsToAcsService; -import org.nl.wms.masterdata_manage.service.material.IMdMeMaterialbaseService; -import org.nl.wms.masterdata_manage.service.material.dao.MdMeMaterialbase; -import org.nl.wms.masterdata_manage.storage.service.storage.IStIvtSectattrService; -import org.nl.wms.masterdata_manage.storage.service.storage.dao.StIvtSectattr; -import org.nl.wms.masterdata_manage.storage.service.storage.dao.StIvtStructattr; -import org.nl.wms.scheduler_manage.service.extendtask.Engrave.EngraveCallService; -import org.nl.wms.scheduler_manage.service.extendtask.Engrave.EngraveSendEmpTask; -import org.nl.wms.scheduler_manage.service.extendtask.manage.TaskStatusEnum; -import org.nl.wms.scheduler_manage.service.extendtask.plotter.PlotterCallEmptyTask; -import org.nl.wms.scheduler_manage.service.point.ISchBasePointService; -import org.nl.wms.scheduler_manage.service.point.dao.SchBasePoint; -import org.nl.wms.scheduler_manage.service.task.ISchBaseTaskService; -import org.nl.wms.scheduler_manage.service.task.dao.SchBaseTask; -import org.nl.wms.storage_manage.productmanage.util.DivRuleCpService; -import org.nl.wms.storage_manage.productmanage.util.RuleUtil; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.http.HttpStatus; -import org.springframework.http.ResponseEntity; -import org.springframework.util.CollectionUtils; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; - -import java.math.BigDecimal; -import java.util.*; -import java.util.stream.Collectors; - -//@RestController - -@RequestMapping("/api/pda") -@Slf4j -@SaIgnore -public class ZdWashController { - - @Autowired - private WmsToAcsService wmsToAcsService; - @Autowired - private ISchBasePointService basePointService; - @Autowired - private PlotterCallEmptyTask plotterCallEmptyTask; - @Autowired - private ISchBaseTaskService taskService; - @Autowired - private EngraveCallService engraveScheduleService; - @Autowired - private IMdMeMaterialbaseService materialbaseService; - @Autowired - private EngraveSendEmpTask engraveSendEmpTask; - @Autowired - private IStIvtSectattrService sectattrService; - @Autowired - private DivRuleCpService divRuleCpService; - - /** - * - * @param param - * @return - */ - @PostMapping("deviceinstorQty") - @SaIgnore - public ResponseEntity deviceinstorQty(@RequestBody JSONObject param){ - SchBasePoint one = basePointService.getOne(new QueryWrapper() - .eq("device_code", param.getString("device_code")) - .eq("point_type", StatusEnum.POINT_LOCATION_IN.getCode())); - if (one==null){ - throw new BadRequestException("当前设备无倒料点"); - } - JSONObject jo = new JSONObject(); - jo.put("device_code", one.getPoint_code()); - jo.put("qty", param.getString("qty")); - JSONObject result = wmsToAcsService.request(jo, "api/wms/handPour"); - if (!StrUtil.equals(result.getString("status"), "200")) { - throw new BadRequestException((String)result.get("message")); - } - return new ResponseEntity<>(TableDataInfo.build(),HttpStatus.OK); - } - - @PostMapping("callVechile") - @SaIgnore - public ResponseEntity callVechile(@RequestBody JSONObject param){ - plotterCallEmptyTask.callEmpVechile(param.getString("device_code")); - return new ResponseEntity<>(TableDataInfo.build(),HttpStatus.OK); - } - - //鞋料 - @Log("卸料") - @PostMapping("kzunload") - @SaIgnore - public ResponseEntity kzunload(@RequestBody JSONObject param) { - JSONObject jo = new JSONObject(); - jo.put("device_code", "A1_KZ_SL"); - JSONObject result = wmsToAcsService.request(jo, "api/wms/startDischarge"); - if (!StrUtil.equals(result.getString("status"), "200")) { - throw new BadRequestException((String)result.get("message")); - } - return new ResponseEntity<>(TableDataInfo.build(),HttpStatus.OK); - } - @PostMapping("kzresidue") - @SaIgnore - public ResponseEntity kzresidue(@RequestBody JSONObject param){ - RedissonUtils.lock(()->{ - JSONObject jo = new JSONObject(); - jo.put("next_point_code", param.getString("device_code")); - jo.put("start_point_code", "A1_KZ_SL"); - jo.put("weight", param.getString("qty")); - JSONObject result = wmsToAcsService.request(jo, "api/wms/putOver"); - if (!StrUtil.equals(result.getString("status"), "200")) { - throw new BadRequestException((String)result.get("message")); - } - },"kzresidue",null); - return new ResponseEntity<>(TableDataInfo.build(),HttpStatus.OK); - } - @PostMapping("tmpcallVechile") - @SaIgnore - public ResponseEntity tmpcallVechile(@RequestBody JSONObject param){ - RedissonUtils.lock(()->{ - JSONObject moveTask =taskService.createMoveTask("A1_BCPRKW_SD", "A1_KZ_SL", AcsTaskEnum.TASK_POINT_TO_POINT, AcsTaskEnum.ACS_TASK_TYPE_NON_WEIGHING_TASK_OF_PS20); - JSONArray data = new JSONArray(); - data.add(moveTask); - Map result = wmsToAcsService.issueTaskToAcs2(data); - if (StrUtil.equals((String)result.get("status"), "400")) { - throw new BadRequestException((String)result.get("message")); - } - moveTask.put("task_status",StatusEnum.TASK_FINISH.getCode()); - taskService.save(moveTask.toJavaObject(SchBaseTask.class)); - },"刻字上料送载具",null); - return new ResponseEntity<>(TableDataInfo.build(),HttpStatus.OK); - } - @PostMapping("tmpsendVechile") - @SaIgnore - public ResponseEntity tmpsendVechile(@RequestBody JSONObject param){ - RedissonUtils.lock(()->{ - JSONObject moveTask = taskService.createMoveTask("A1_KZ_SL", "A1_BCPRKW_SD", AcsTaskEnum.TASK_POINT_TO_POINT, AcsTaskEnum.ACS_TASK_TYPE_NON_WEIGHING_TASK_OF_PS20); - JSONArray data = new JSONArray(); - data.add(moveTask); - Map result = wmsToAcsService.issueTaskToAcs2(data); - if (StrUtil.equals((String)result.get("status"), "400")) { - throw new BadRequestException((String)result.get("message")); - } - moveTask.put("task_status",StatusEnum.TASK_FINISH.getCode()); - taskService.save(moveTask.toJavaObject(SchBaseTask.class)); - },"刻字上料送载具",null); - return new ResponseEntity<>(TableDataInfo.build(),HttpStatus.OK); - } - @PostMapping("/kz/submitkz") - @Log("提交刻字任务") - @SaIgnore - public ResponseEntity submitkz(@RequestBody JSONArray param){ - engraveScheduleService.createTask(param); - return new ResponseEntity<>(TableDataInfo.build(),HttpStatus.OK); - } - - @PostMapping("/kz/kzTasks") - @SaIgnore - public ResponseEntity kzTasks(@RequestBody JSONObject param){ - List> list = taskService.listMaps(new QueryWrapper() - .lt("task_status", StatusEnum.TASK_FINISH.getCode()) - .isNotNull("task_step") - .eq("product_area", param.getString("product_area")) - .nested(a -> - a.eq("task_type", AcsTaskEnum.TASK_STRUCT_OUT.getCode()) - .or() - .eq("task_type", AcsTaskEnum.TASK_Engrave_CALL.getCode())) - ); - Set materials = list.stream().map(a->String.valueOf(a.get("material_id"))).collect(Collectors.toSet()); - if (!CollectionUtils.isEmpty(materials)){ - Map materialMap = materialbaseService.listByIds(materials) - .stream().collect(HashMap::new, (k, v) -> k.put(v.getMaterial_id(), v), HashMap::putAll); - for (Map map : list) { - map.put("material_spec",materialMap.get(map.get("material_id")).getMaterial_spec()); - map.put("material_code",materialMap.get(map.get("material_id")).getMaterial_code()); - map.put("create_time",map.get("create_time").toString()); - } - } - - return new ResponseEntity<>(TableDataInfo.build(list),HttpStatus.OK); - } - - @PostMapping("/kz/sendVechile") - @Log("手动送空框") - @SaIgnore - public ResponseEntity sendVechile(@RequestBody JSONObject param){ - JSONObject object = new JSONObject(); - object.put("device_code","A1_KZ_SL"); - //?刻字满料请求:可以存在多个任务? - List list = taskService.list(new QueryWrapper() - .lt("task_status", StatusEnum.TASK_FINISH.getCode()).eq("task_type",AcsTaskEnum.TASK_Engrave_EMPTY.getCode())); - if (!CollectionUtils.isEmpty(list)){ - throw new BadRequestException(String.format("刻字输送线-空框送回存在未完成任务"+list.stream().map(SchBaseTask::getTask_code).collect(Collectors.toList()).toString(), param.getString("device_code"))); - } - StIvtSectattr sect = sectattrService.getOne(new QueryWrapper().eq("sect_name", "半成品库区")); - JSONObject jo = new JSONObject(); - jo.put("sect_id", sect.getSect_id()); - jo.put("stor_id", sect.getStor_id()); - jo.put("rule_type", RuleUtil.PRODUCTION_IN_1); - StIvtStructattr stIvtStructattr = divRuleCpService.divRuleIn(jo); - if (stIvtStructattr ==null){ - throw new BadRequestException("半成品库没有可用空位."); - } - engraveSendEmpTask.createTask(object); - return new ResponseEntity<>(TableDataInfo.build(),HttpStatus.OK); - } - - @PostMapping("/kz/resend") - @Log("刻字任务重新下发") - @SaIgnore - public ResponseEntity resend(@RequestBody JSONObject param){ - RedissonUtils.lock(()->{ - SchBaseTask baseTask = taskService.getById(param.getString("task_id")); - if (baseTask.getTask_status().equals(StatusEnum.TASK_FINISH.getCode())){ - throw new BadRequestException("任务已经完成"); - }; - if (baseTask.getTask_type().equals(AcsTaskEnum.TASK_Engrave_CALL.getCode())){ - //下发 - Map qtyArr = JSONObject.parseObject(baseTask.getQtyArr(), Map.class); - JSONObject jo = new JSONObject(); - jo.put("start_point_code", baseTask.getPoint_code1()); - jo.put("task_code", baseTask.getTask_code()); - jo.put("all_weight", baseTask.getMaterial_qty().intValue()); - String[] to_sort_array = {"0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"}; - String[] to_devices_array = {"0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"}; - String[] to_weight_array = {"0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"}; - List sort = qtyArr.keySet().stream().sorted(Comparator.comparingInt(key -> Integer.valueOf(key.substring(key.lastIndexOf("_") + 1)))).collect(Collectors.toList()); - for (int i1 = 0; i1 < sort.size(); i1++) { - String key = sort.get(i1); - to_sort_array[i1] = String.valueOf(i1+1); - to_devices_array[i1] = String.valueOf(key); - to_weight_array[i1] = String.valueOf(new BigDecimal(qtyArr.get(key))); - } - jo.put("to_sort_array", Arrays.stream(to_sort_array).collect(Collectors.joining(","))); - jo.put("to_devices_array",Arrays.stream(to_devices_array).collect(Collectors.joining(","))); - jo.put("to_weight_array", Arrays.stream(to_weight_array).collect(Collectors.joining(","))); - JSONObject result = wmsToAcsService.request(jo, "api/wms/engravingIn"); - if (!result.getString("status").equals("200")){ - log.error("刻字上料输送线任务下发异常:{}",result.getString("message")); - baseTask.setRemark(result.getString("message")); - baseTask.setTask_status(TaskStatusEnum.SURE_START_ERROR.getCode()); - taskService.updateById(baseTask); - throw new BadRequestException(result.getString("message")); - }else { - baseTask.setTask_status(TaskStatusEnum.ISSUE.getCode()); - taskService.updateById(baseTask); - } - }else { - throw new BadRequestException("搬运任务不允许直接下发"); - //taskService.operation(MapOf.of("method_name","immediateNotifyAcs","task_id",param.getString("task_id"))); - } - },"刻字输送线下发",null); - - return new ResponseEntity<>(TableDataInfo.build(),HttpStatus.OK); - } - -} diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/scheduler_manage/service/extendtask/a3/FHWash/FhWashService.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/scheduler_manage/service/extendtask/a3/FHWash/FhWashService.java new file mode 100644 index 00000000..2c2ac404 --- /dev/null +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/scheduler_manage/service/extendtask/a3/FHWash/FhWashService.java @@ -0,0 +1,80 @@ +package org.nl.wms.scheduler_manage.service.extendtask.a3.FHWash; +/* + * @author ZZQ + * @Date 2023/7/12 21:13 + */ + +import cn.hutool.core.date.DateUtil; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; +import lombok.extern.slf4j.Slf4j; +import org.nl.common.enums.AcsTaskEnum; +import org.nl.common.enums.StatusEnum; +import org.nl.common.utils.IdUtil; +import org.nl.common.utils.SecurityUtils; +import org.nl.modules.common.exception.BadRequestException; +import org.nl.modules.system.util.CodeUtil; +import org.nl.wms.scheduler_manage.service.extendtask.a3.HrTransportTask; +import org.nl.wms.scheduler_manage.service.task.ISchBaseTaskService; +import org.nl.wms.scheduler_manage.service.task.dao.SchBaseTask; +import org.nl.wms.staging_manage.service.conveyor.ISchConveyorPositionService; +import org.nl.wms.staging_manage.service.conveyor.dao.SchConveyorPosition; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.ArrayList; +import java.util.Date; +import java.util.List; + +@Slf4j +@Service +public class FhWashService { + + @Autowired + private ISchBaseTaskService taskService; + @Autowired + private ISchConveyorPositionService conveyorPositionService; + @Autowired + private HrTransportTask transportTask; + + public String feeding(JSONArray params){ + if (params!=null && params.size()>0){ + List positionList = params.toJavaList(SchConveyorPosition.class); + conveyorPositionService.removeByIds(positionList); + List list = new ArrayList<>(); + for (SchConveyorPosition position : positionList) { + SchBaseTask task = new SchBaseTask(); + task.setTask_id(IdUtil.getStringId()); + task.setTask_name(AcsTaskEnum.TASK_WASH_FEEDING_JG.getDesc()); + task.setTask_type(AcsTaskEnum.TASK_WASH_FEEDING_JG.getCode()); + task.setTask_code(CodeUtil.getNewCode("TASK_CODE")); + task.setMaterial_id(position.getMaterila_id()); + task.setIs_delete(Boolean.FALSE); + task.setCreate_id(SecurityUtils.getCurrentUserId()); + task.setCreate_name(SecurityUtils.getCurrentNickName()); + task.setCreate_time(new Date()); + task.setTask_status(StatusEnum.TASK_RUNNING.getCode()); + list.add(task); + } + taskService.saveBatch(list); + } + //创建任务 + return null; + }; + + public String blanking(JSONObject params){ + /** + * 校验:完成清洗任务 + * 绑定载具物料关系 + */ + taskService.update(new UpdateWrapper() + .set("task_status",StatusEnum.TASK_FINISH.getCode()) + .set("update_name",SecurityUtils.getCurrentNickName()) + .set("update_time", DateUtil.now()) + .eq("task_id",params.getString("task_id"))); + + return null; + }; +} diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/scheduler_manage/service/extendtask/a3/HrTransportTask.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/scheduler_manage/service/extendtask/a3/HrTransportTask.java new file mode 100644 index 00000000..259de6e1 --- /dev/null +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/scheduler_manage/service/extendtask/a3/HrTransportTask.java @@ -0,0 +1,116 @@ +package org.nl.wms.scheduler_manage.service.extendtask.a3; + +import cn.hutool.core.date.DateUtil; +import cn.hutool.core.util.NumberUtil; +import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; +import org.apache.commons.lang3.StringUtils; +import org.nl.common.enums.AcsTaskEnum; +import org.nl.common.enums.StatusEnum; +import org.nl.common.utils.IdUtil; +import org.nl.common.utils.SecurityUtils; +import org.nl.modules.system.util.CodeUtil; +import org.nl.wms.ext_manage.acs.service.WmsToAcsService; +import org.nl.wms.scheduler_manage.service.extendtask.manage.AbstractAcsTask; +import org.nl.wms.scheduler_manage.service.extendtask.manage.TaskStatusEnum; +import org.nl.wms.scheduler_manage.service.task.ISchBaseTaskService; +import org.nl.wms.scheduler_manage.service.task.dao.SchBaseTask; +import org.nl.wms.storage_manage.IOSEnum; +import org.nl.wms.storage_manage.pda.PDAEnum; +import org.nl.wms.storage_manage.semimanagehr.service.iostorInv.IStIvtIostorinvOrderService; +import org.nl.wms.storage_manage.semimanagehr.service.iostorInv.dao.StIvtIostorinvOrder; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.math.BigDecimal; +import java.util.Date; + +/* + * @author ZZQ + * @Date 2024/2/22 15:47 + */ +@Service +public class HrTransportTask extends AbstractAcsTask { + + + @Autowired + private ISchBaseTaskService taskService; + @Autowired + private WmsToAcsService wmsToAcsService; + @Autowired + protected IStIvtIostorinvOrderService iStIvtIostorinvOrderService; + + @Override + public void updateTaskStatus(JSONObject param, String status) { + //任务完成:插入入库顺序表 + SchBaseTask taskDao = taskService.getOne(new QueryWrapper() + .eq("task_id",param.getString("task_id"))); + if (status.equals(AcsTaskEnum.STATUS_FINISH.getCode())) { + taskDao.setTask_status(TaskStatusEnum.FINISHED.getCode()); + // 插入出入库顺序表 + StIvtIostorinvOrder dao = new StIvtIostorinvOrder(); + dao.setOrder_id(IdUtil.getStringId()); + dao.setWorkshop_id(PDAEnum.WORKSHOP_ID.code("智能三线车间")); + dao.setStor_id(PDAEnum.STOR_ID.code("紫铜三线半成品仓库")); + dao.setBar_code(taskDao.getVehicle_code()); + dao.setMaterial_id(taskDao.getMaterial_id()); + dao.setWeight(taskDao.getMaterial_qty()); + dao.setQty(taskDao.getMaterial_qty()); + dao.setType(IOSEnum.IO_TYPE.code("入库")); + dao.setIs_delete(false); + dao.setCreate_time(DateUtil.now()); + dao.setBiz_date(DateUtil.today()); + dao.setWorkprocedure_id(taskDao.getWorkprocedure_id()); + iStIvtIostorinvOrderService.save(dao); + } + if (status.equals(AcsTaskEnum.STATUS_START.getCode())) { + taskDao.setTask_status(TaskStatusEnum.EXECUTING.getCode()); + } + if (status.equals(AcsTaskEnum.STATUS_CANNEL.getCode())) { + taskDao.setTask_status(TaskStatusEnum.CANCEL.getCode()); + } + taskService.updateById(taskDao); + //TODO:通知acs取消任务 + } + + @Override + public String createTask(JSONObject param) { + SchBaseTask washTask = param.toJavaObject(SchBaseTask.class); + // 查找任务状态 + SchBaseTask task = new SchBaseTask(); + task.setTask_id(IdUtil.getStringId()); + task.setProduct_area("A3"); + task.setTask_name(AcsTaskEnum.TASK_STRUCT_HR_TRANSPORT_IN.getDesc()); + task.setTask_type(AcsTaskEnum.TASK_STRUCT_HR_TRANSPORT_IN.getDesc()); + task.setTask_code(CodeUtil.getNewCode("TASK_CODE")); + task.setTable_fk_id(washTask.getTask_id()); + task.setAcs_task_type(AcsTaskEnum.ACS_TASK_TYPE_NOBLE_SINGLE_TASK.getCode()); + task.setMaterial_id(washTask.getMaterial_id()); + task.setMaterial_qty(washTask.getMaterial_qty()); + task.setWorkprocedure_id(washTask.getWorkprocedure_id()); + task.setTask_status(TaskStatusEnum.CREATED.getCode()); + task.setIs_delete(Boolean.FALSE); + task.setIs_send(Boolean.TRUE); + task.setCreate_time(new Date()); + task.setCreate_id(SecurityUtils.getCurrentUserId()); + task.setCreate_name(SecurityUtils.getCurrentNickName()); + task.setPriority("1"); + task.setFinished_type("1"); + task.setAgv_system_type(AcsTaskEnum.AGV_SYSTEM_NB.getCode()); + taskService.save(task); + //下发acs + wmsToAcsService.issueTaskToAcs2(null); + return null; + } + + @Override + public void cancel(String task_id) { + + } + + @Override + public void pointConfirm(JSONObject param) { + + } +} diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/scheduler_manage/service/extendtask/a3/JGWash/JgWashService.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/scheduler_manage/service/extendtask/a3/JGWash/JgWashService.java new file mode 100644 index 00000000..bc663c61 --- /dev/null +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/scheduler_manage/service/extendtask/a3/JGWash/JgWashService.java @@ -0,0 +1,88 @@ +package org.nl.wms.scheduler_manage.service.extendtask.a3.JGWash; +/* + * @author ZZQ + * @Date 2023/7/12 21:13 + */ +import cn.hutool.core.date.DateUtil; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; + +import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; +import lombok.extern.slf4j.Slf4j; +import org.nl.common.enums.AcsTaskEnum; +import org.nl.common.enums.StatusEnum; +import org.nl.common.utils.IdUtil; +import org.nl.common.utils.SecurityUtils; +import org.nl.modules.common.exception.BadRequestException; +import org.nl.modules.system.util.CodeUtil; +import org.nl.wms.ext_manage.acs.service.WmsToAcsService; +import org.nl.wms.scheduler_manage.service.extendtask.a3.HrTransportTask; +import org.nl.wms.scheduler_manage.service.extendtask.manage.TaskStatusEnum; +import org.nl.wms.scheduler_manage.service.task.ISchBaseTaskService; +import org.nl.wms.scheduler_manage.service.task.dao.SchBaseTask; +import org.nl.wms.staging_manage.service.conveyor.ISchConveyorPositionService; +import org.nl.wms.staging_manage.service.conveyor.dao.SchConveyorPosition; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.*; + +@Slf4j +@Service +public class JgWashService { + + @Autowired + private ISchBaseTaskService taskService; + @Autowired + private ISchConveyorPositionService conveyorPositionService; + @Autowired + private HrTransportTask transportTask; + + public String feeding(JSONArray params){ + if (params!=null && params.size()>0){ + List positionList = params.toJavaList(SchConveyorPosition.class); + conveyorPositionService.removeByIds(positionList); + List list = new ArrayList<>(); + for (SchConveyorPosition position : positionList) { + SchBaseTask task = new SchBaseTask(); + task.setTask_id(IdUtil.getStringId()); + task.setTask_name(AcsTaskEnum.TASK_WASH_FEEDING_JG.getDesc()); + task.setTask_type(AcsTaskEnum.TASK_WASH_FEEDING_JG.getCode()); + task.setTask_code(CodeUtil.getNewCode("TASK_CODE")); + task.setMaterial_id(position.getMaterila_id()); + task.setIs_delete(Boolean.FALSE); + task.setCreate_id(SecurityUtils.getCurrentUserId()); + task.setCreate_name(SecurityUtils.getCurrentNickName()); + task.setCreate_time(new Date()); + task.setTask_status(StatusEnum.TASK_RUNNING.getCode()); + list.add(task); + } + taskService.saveBatch(list); + } + //创建任务 + return null; + }; + + public String blanking(JSONObject params){ + /** + * 校验:起点位置是否 + * 1.料框输送线移动 + * 2.生成点对点搬运 + */ + SchBaseTask one = taskService.getOne(new QueryWrapper() + .eq("task_type", AcsTaskEnum.TASK_STRUCT_HR_TRANSPORT_IN.getCode()) + .eq("task_status", StatusEnum.TASK_CREATE.getCode()) + .eq("point_code1", "激光下料输送线满料位")); + if (one!=null){ + throw new BadRequestException("当前输送线存在未执行的入库任务:"+one.getTask_code()); + } + taskService.update(new UpdateWrapper() + .set("task_status",StatusEnum.TASK_FINISH.getCode()) + .set("update_name",SecurityUtils.getCurrentNickName()) + .set("update_time", DateUtil.now()) + .eq("task_id",params.getString("task_id"))); + String task = transportTask.createTask(params); + return task; + }; +} diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/scheduler_manage/service/point/ISchBasePointService.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/scheduler_manage/service/point/ISchBasePointService.java index bfc30b1e..fb82e8cf 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/scheduler_manage/service/point/ISchBasePointService.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/scheduler_manage/service/point/ISchBasePointService.java @@ -26,6 +26,8 @@ public interface ISchBasePointService extends IService { List> queryPointMaterial(Map query); + List queryVechileMaterial(PointQuery query); + /** * * 获取点位 diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/scheduler_manage/service/point/PointQuery.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/scheduler_manage/service/point/PointQuery.java new file mode 100644 index 00000000..48c62544 --- /dev/null +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/scheduler_manage/service/point/PointQuery.java @@ -0,0 +1,21 @@ +package org.nl.wms.scheduler_manage.service.point; + +import lombok.Data; +import org.nl.common.domain.query.BaseQuery; +import org.nl.wms.mps_manage.saleorder.service.dao.MpsSaleOrder; +import org.nl.wms.scheduler_manage.service.point.dao.SchBasePoint; + +/* + * @author ZZQ + * @Date 2024/2/23 14:58 + */ +@Data +public class PointQuery extends BaseQuery { + + /** + * 区域编码 + */ + private String region_code; + private String vehicle_code; + private String point_code; +} diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/scheduler_manage/service/point/dao/mapper/SchBasePointMapper.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/scheduler_manage/service/point/dao/mapper/SchBasePointMapper.java index 35feb50a..e286e12b 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/scheduler_manage/service/point/dao/mapper/SchBasePointMapper.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/scheduler_manage/service/point/dao/mapper/SchBasePointMapper.java @@ -2,6 +2,7 @@ package org.nl.wms.scheduler_manage.service.point.dao.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import org.apache.ibatis.annotations.Param; +import org.nl.wms.scheduler_manage.service.point.PointQuery; import org.nl.wms.scheduler_manage.service.point.dao.SchBasePoint; import java.util.List; @@ -26,6 +27,8 @@ public interface SchBasePointMapper extends BaseMapper { List queryVehicle(Map map); List queryPointMaterial(Map map); + List queryVechileMaterial(PointQuery map); + /** * 点位管理页面查询 * @param map diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/scheduler_manage/service/point/dao/mapper/SchBasePointMapper.xml b/mes/hd/nladmin-system/src/main/java/org/nl/wms/scheduler_manage/service/point/dao/mapper/SchBasePointMapper.xml index f1b26c7f..6a2e4e24 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/scheduler_manage/service/point/dao/mapper/SchBasePointMapper.xml +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/scheduler_manage/service/point/dao/mapper/SchBasePointMapper.xml @@ -268,4 +268,21 @@ and ( point.point_code like '%${name}' or point.point_name like '%${name}' ) + diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/scheduler_manage/service/point/impl/SchBasePointServiceImpl.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/scheduler_manage/service/point/impl/SchBasePointServiceImpl.java index 0222fecc..28ef1d82 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/scheduler_manage/service/point/impl/SchBasePointServiceImpl.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/scheduler_manage/service/point/impl/SchBasePointServiceImpl.java @@ -21,6 +21,7 @@ import org.nl.modules.common.exception.BadRequestException; import org.nl.modules.common.utils.DateUtil; import org.nl.modules.wql.core.bean.WQLObject; import org.nl.wms.scheduler_manage.service.point.ISchBasePointService; +import org.nl.wms.scheduler_manage.service.point.PointQuery; import org.nl.wms.scheduler_manage.service.point.dao.SchBasePoint; import org.nl.wms.scheduler_manage.service.point.dao.mapper.SchBasePointMapper; import org.nl.wms.scheduler_manage.service.region.ISchBaseRegionService; @@ -119,6 +120,11 @@ public class SchBasePointServiceImpl extends ServiceImpl queryVechileMaterial(PointQuery query) { + return schBasePointMapper.queryVechileMaterial(query); + } + @Override public Object selectPoint(Map query, PageQuery pageQuery) { Page page = PageHelper.startPage(pageQuery.getPage()+1, pageQuery.getSize()); diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/scheduler_manage/service/task/dao/SchBaseTask.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/scheduler_manage/service/task/dao/SchBaseTask.java index 07a27d61..958ea399 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/scheduler_manage/service/task/dao/SchBaseTask.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/scheduler_manage/service/task/dao/SchBaseTask.java @@ -103,6 +103,11 @@ public class SchBaseTask implements Serializable { */ private BigDecimal material_qty; + /** + * 物料数量 + */ + private String workprocedure_id; + /** * 载具类型 */ diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/staging_manage/controller/conveyor/SchConveyorPositionController.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/staging_manage/controller/conveyor/SchConveyorPositionController.java new file mode 100644 index 00000000..ed5ca31e --- /dev/null +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/staging_manage/controller/conveyor/SchConveyorPositionController.java @@ -0,0 +1,62 @@ +package org.nl.wms.staging_manage.controller.conveyor; + + +import cn.dev33.satoken.annotation.SaIgnore; +import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import org.nl.common.TableDataInfo; +import org.nl.common.anno.Log; +import org.nl.common.domain.query.PageQuery; +import org.nl.wms.product_manage.service.workorder.dto.WorkorderQuery; +import org.nl.wms.scheduler_manage.service.extendtask.a3.JGWash.JgWashService; +import org.nl.wms.staging_manage.service.conveyor.ISchConveyorPositionService; +import org.nl.wms.staging_manage.service.conveyor.dao.SchConveyorPosition; +import org.nl.wms.staging_manage.service.conveyor.dto.ConveyorQuery; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.web.bind.annotation.*; + +/** + *

+ * 输送线队列列表 前端控制器 + *

+ * + * @author generator + * @since 2024-02-21 + */ +@RestController +@RequestMapping("/api/schConveyorPosition") +@SaIgnore +public class SchConveyorPositionController { + + @Autowired + private ISchConveyorPositionService conveyorPositionService; + + @GetMapping("/label") + @Log("查询输送线列表") + public ResponseEntity getLabel() { + return new ResponseEntity<>(conveyorPositionService.getLable(), HttpStatus.OK); + } + + @GetMapping + @Log("查询输送线") + public ResponseEntity query(ConveyorQuery query, PageQuery page) { + return new ResponseEntity<>(TableDataInfo.build(conveyorPositionService.page(page.build(), query.build())), HttpStatus.OK); + } + @PostMapping("/create") + @Log("新增") + public ResponseEntity create(@RequestBody JSONObject param) { + SchConveyorPosition position = param.toJavaObject(SchConveyorPosition.class); + conveyorPositionService.save(position); + return new ResponseEntity<>( HttpStatus.OK); + } + @PostMapping("/update") + @Log("修改") + public ResponseEntity queryByAps(@RequestBody JSONObject param) { + SchConveyorPosition position = param.toJavaObject(SchConveyorPosition.class); + conveyorPositionService.updateById(position); + return new ResponseEntity<>(HttpStatus.OK); + } +} + diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/staging_manage/service/conveyor/ISchConveyorPositionService.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/staging_manage/service/conveyor/ISchConveyorPositionService.java new file mode 100644 index 00000000..2653afe9 --- /dev/null +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/staging_manage/service/conveyor/ISchConveyorPositionService.java @@ -0,0 +1,25 @@ +package org.nl.wms.staging_manage.service.conveyor; + +import com.alibaba.fastjson.JSONArray; +import org.nl.wms.staging_manage.service.conveyor.dao.SchConveyorPosition; +import com.baomidou.mybatisplus.extension.service.IService; + +import java.util.List; +import java.util.Map; + +/** + *

+ * 输送线队列列表 服务类 + *

+ * + * @author generator + * @since 2024-02-21 + */ +public interface ISchConveyorPositionService extends IService { + /** + * 获取标签 + * @return + */ + List getLable(); + +} diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/staging_manage/service/conveyor/dao/SchConveyorPosition.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/staging_manage/service/conveyor/dao/SchConveyorPosition.java new file mode 100644 index 00000000..1bad9151 --- /dev/null +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/staging_manage/service/conveyor/dao/SchConveyorPosition.java @@ -0,0 +1,82 @@ +package org.nl.wms.staging_manage.service.conveyor.dao; + +import java.math.BigDecimal; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import java.io.Serializable; +import lombok.Data; +import lombok.EqualsAndHashCode; + +/** + *

+ * 输送线队列列表 + *

+ * + * @author generator + * @since 2024-02-21 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@TableName("sch_conveyor_position") +public class SchConveyorPosition implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 主键 + */ + @TableId(value = "id", type = IdType.AUTO) + private Integer id; + + /** + * 输送线编码 + */ + private String position_code; + + /** + * 缓存线位置名字 + */ + private String position_name; + + /** + * 位置顺序号 + */ + private Integer position_no; + + /** + * 缓存线层数 + */ + private String storagevehicle_code; + + /** + * 缓存线层数 + */ + private String materila_id; + + /** + * 缓存线层数 + */ + private BigDecimal qty; + + /** + * 缓存线层数 + */ + private String wrokprocedure_id; + + /** + * 缓存线层数 + */ + private Integer max_no; + + /** + * 创建时间 + */ + private String create_time; + /** + * 输送线限制 + */ + private String idx; + + +} diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/staging_manage/service/conveyor/dao/mapper/SchConveyorPositionMapper.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/staging_manage/service/conveyor/dao/mapper/SchConveyorPositionMapper.java new file mode 100644 index 00000000..8ecffc58 --- /dev/null +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/staging_manage/service/conveyor/dao/mapper/SchConveyorPositionMapper.java @@ -0,0 +1,22 @@ +package org.nl.wms.staging_manage.service.conveyor.dao.mapper; + +import org.apache.ibatis.annotations.Select; +import org.nl.wms.staging_manage.service.conveyor.dao.SchConveyorPosition; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +import java.util.List; +import java.util.Map; + +/** + *

+ * 输送线队列列表 Mapper 接口 + *

+ * + * @author generator + * @since 2024-02-21 + */ +public interface SchConveyorPositionMapper extends BaseMapper { + + @Select("select position_code as value,position_name as lable from sch_conveyor_position GROUP BY position_code,position_name") + List getLable(); +} diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/staging_manage/service/conveyor/dao/mapper/xml/SchConveyorPositionMapper.xml b/mes/hd/nladmin-system/src/main/java/org/nl/wms/staging_manage/service/conveyor/dao/mapper/xml/SchConveyorPositionMapper.xml new file mode 100644 index 00000000..0b86648c --- /dev/null +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/staging_manage/service/conveyor/dao/mapper/xml/SchConveyorPositionMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/staging_manage/service/conveyor/dto/ConveyorQuery.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/staging_manage/service/conveyor/dto/ConveyorQuery.java new file mode 100644 index 00000000..437937e4 --- /dev/null +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/staging_manage/service/conveyor/dto/ConveyorQuery.java @@ -0,0 +1,19 @@ +package org.nl.wms.staging_manage.service.conveyor.dto; + +import lombok.Data; +import org.nl.common.domain.query.BaseQuery; +import org.nl.common.domain.query.QParam; +import org.nl.common.enums.QueryTEnum; +import org.nl.wms.product_manage.service.processroute.dao.PdmBiProcessroute; +import org.nl.wms.staging_manage.service.conveyor.dao.SchConveyorPosition; + +/* + * @author ZZQ + * @Date 2023/5/4 19:49 + */ +@Data +public class ConveyorQuery extends BaseQuery { + + private String position_code; + +} diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/staging_manage/service/conveyor/impl/SchConveyorPositionServiceImpl.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/staging_manage/service/conveyor/impl/SchConveyorPositionServiceImpl.java new file mode 100644 index 00000000..66640ec9 --- /dev/null +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/staging_manage/service/conveyor/impl/SchConveyorPositionServiceImpl.java @@ -0,0 +1,28 @@ +package org.nl.wms.staging_manage.service.conveyor.impl; + +import org.nl.wms.staging_manage.service.conveyor.dao.SchConveyorPosition; +import org.nl.wms.staging_manage.service.conveyor.dao.mapper.SchConveyorPositionMapper; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.nl.wms.staging_manage.service.conveyor.ISchConveyorPositionService; +import org.springframework.stereotype.Service; + +import java.util.List; +import java.util.Map; + +/** + *

+ * 输送线队列列表 服务实现类 + *

+ * + * @author generator + * @since 2024-02-21 + */ +@Service +public class SchConveyorPositionServiceImpl extends ServiceImpl implements ISchConveyorPositionService { + + @Override + public List getLable() { + List lable = this.baseMapper.getLable(); + return lable; + } +} diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/service/moreOrLess/impl/StIvtMoreorlessmstCpServiceImpl.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/service/moreOrLess/impl/StIvtMoreorlessmstCpServiceImpl.java index 5e763a5e..17c65269 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/service/moreOrLess/impl/StIvtMoreorlessmstCpServiceImpl.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/service/moreOrLess/impl/StIvtMoreorlessmstCpServiceImpl.java @@ -223,7 +223,7 @@ public class StIvtMoreorlessmstCpServiceImpl extends ServiceImpl().lambda() .eq(MdPbStoragevehicleext::getStoragevehicle_code,dtl.getStoragevehicle_code()) );*/ diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/semimanage/controller/iostorInv/StIvtIoVstorinvBcpController.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/semimanage/controller/iostorInv/StIvtIoVstorinvBcpController.java index cbe26fca..ce167460 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/semimanage/controller/iostorInv/StIvtIoVstorinvBcpController.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/semimanage/controller/iostorInv/StIvtIoVstorinvBcpController.java @@ -5,7 +5,7 @@ import cn.dev33.satoken.annotation.SaIgnore; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; - + import lombok.extern.slf4j.Slf4j; import org.nl.common.anno.Log; import org.nl.common.domain.query.PageQuery; @@ -38,7 +38,7 @@ import java.util.stream.Collectors; * @since 2023-05-10 */ @RestController - + @RequestMapping("/api/in/semivproductIn") @Slf4j @SaIgnore @@ -82,7 +82,7 @@ public class StIvtIoVstorinvBcpController { iMdPbStoragevehicleextService.update( new MdPbStoragevehicleext() .setMaterial_id("") - .setStorage_qty(BigDecimal.valueOf(0)), + .setQty(0), new QueryWrapper().lambda() .in(MdPbStoragevehicleext::getStoragevehicle_code,collect) ); diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/semimanage/controller/iostorInv/StIvtIostorinvBcpController.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/semimanage/controller/iostorInv/StIvtIostorinvBcpController.java index bc980184..402dc2be 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/semimanage/controller/iostorInv/StIvtIostorinvBcpController.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/semimanage/controller/iostorInv/StIvtIostorinvBcpController.java @@ -45,7 +45,7 @@ import java.util.stream.Collectors; * @since 2023-05-10 */ @RestController - + @RequestMapping("/api/in/semiproductIn") @Slf4j @SaIgnore @@ -98,7 +98,7 @@ public class StIvtIostorinvBcpController { iMdPbStoragevehicleextService.update( new MdPbStoragevehicleext() .setMaterial_id("") - .setStorage_qty(BigDecimal.valueOf(0)), + .setQty(0), new QueryWrapper().lambda() .in(MdPbStoragevehicleext::getStoragevehicle_code,collect) ); diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/semimanage/service/iostorInv/impl/StIvtIostorinvBcpOutServiceImpl.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/semimanage/service/iostorInv/impl/StIvtIostorinvBcpOutServiceImpl.java index 819d1b0c..8c2570ca 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/semimanage/service/iostorInv/impl/StIvtIostorinvBcpOutServiceImpl.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/semimanage/service/iostorInv/impl/StIvtIostorinvBcpOutServiceImpl.java @@ -291,7 +291,7 @@ public class StIvtIostorinvBcpOutServiceImpl extends ServiceImpl().lambda() .eq(MdPbStoragevehicleext::getStoragevehicle_code,mst.getStoragevehicle_code()) ); @@ -330,7 +330,7 @@ public class StIvtIostorinvBcpOutServiceImpl extends ServiceImpl().lambda() .eq(MdPbStoragevehicleext::getStoragevehicle_code,form.getString("storagevehicle_code")) ); diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/semimanage/service/moveOrLess/impl/StIvtMoreorlessmstBcpServiceImpl.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/semimanage/service/moveOrLess/impl/StIvtMoreorlessmstBcpServiceImpl.java index 61a7b325..70b1c22d 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/semimanage/service/moveOrLess/impl/StIvtMoreorlessmstBcpServiceImpl.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/semimanage/service/moveOrLess/impl/StIvtMoreorlessmstBcpServiceImpl.java @@ -182,7 +182,7 @@ public class StIvtMoreorlessmstBcpServiceImpl extends ServiceImpl().lambda() .eq(MdPbStoragevehicleext::getStoragevehicle_code,dtl.getStoragevehicle_code()) ); @@ -260,7 +260,7 @@ public class StIvtMoreorlessmstBcpServiceImpl extends ServiceImpl().lambda() .set(MdPbStoragevehicleext::getMaterial_id, "") - .set(MdPbStoragevehicleext::getStorage_qty, BigDecimal.valueOf(0)) + .set(MdPbStoragevehicleext::getQty, BigDecimal.valueOf(0)) .eq(MdPbStoragevehicleext::getStoragevehicle_code, dtl.getStoragevehicle_code()) ); // 更新扩展属性 -- 有料 iMdPbStoragevehicleextService.update( new UpdateWrapper().lambda() - .set(MdPbStoragevehicleext::getStorage_qty, in_ivt.getCanuse_qty()) + .set(MdPbStoragevehicleext::getQty, in_ivt.getCanuse_qty()) .eq(MdPbStoragevehicleext::getStoragevehicle_code, dtl.getStoragevehicle_code_in()) ); diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/semimanagehr/controller/iostorInv/StIvtIostorinvHrBcpInController.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/semimanagehr/controller/iostorInv/StIvtIostorinvHrBcpInController.java index b3d937f4..1fbba7b2 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/semimanagehr/controller/iostorInv/StIvtIostorinvHrBcpInController.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/semimanagehr/controller/iostorInv/StIvtIostorinvHrBcpInController.java @@ -5,7 +5,7 @@ import cn.dev33.satoken.annotation.SaIgnore; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; - + import lombok.extern.slf4j.Slf4j; import org.nl.common.anno.Log; import org.nl.common.domain.query.PageQuery; @@ -35,7 +35,7 @@ import java.util.stream.Collectors; * @since 2023-05-10 */ @RestController - + @RequestMapping("/api/in/semiproductHr") @Slf4j @SaIgnore @@ -78,7 +78,7 @@ public class StIvtIostorinvHrBcpInController { iMdPbStoragevehicleextService.update( new MdPbStoragevehicleext() .setMaterial_id("") - .setStorage_qty(BigDecimal.valueOf(0)), + .setQty(0), new QueryWrapper().lambda() .in(MdPbStoragevehicleext::getStoragevehicle_code,collect) ); diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/semimanagehr/service/iostorInv/impl/StIvtIostorinvHrBcpInServiceImpl.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/semimanagehr/service/iostorInv/impl/StIvtIostorinvHrBcpInServiceImpl.java index 3d6c4678..fefb266c 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/semimanagehr/service/iostorInv/impl/StIvtIostorinvHrBcpInServiceImpl.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/semimanagehr/service/iostorInv/impl/StIvtIostorinvHrBcpInServiceImpl.java @@ -303,7 +303,7 @@ public class StIvtIostorinvHrBcpInServiceImpl extends ServiceImpl().lambda() .eq(MdPbStoragevehicleext::getStoragevehicle_code, mst.getStoragevehicle_code()) .set(MdPbStoragevehicleext::getMaterial_id, mst.getMaterial_id()) - .set(MdPbStoragevehicleext::getStorage_qty, mst.getPlan_qty()) + .set(MdPbStoragevehicleext::getQty, mst.getPlan_qty()) ); if (StringUtils.isNotEmpty(mst.getStoragevehicle_code())){ iStIvtIostorinvOrderService.remove(new QueryWrapper().eq("bar_code",mst.getStoragevehicle_code())); diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/semimanagehr/service/iostorInv/impl/StIvtIostorinvHrBcpOutServiceImpl.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/semimanagehr/service/iostorInv/impl/StIvtIostorinvHrBcpOutServiceImpl.java index 655afe3d..9d41497c 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/semimanagehr/service/iostorInv/impl/StIvtIostorinvHrBcpOutServiceImpl.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/semimanagehr/service/iostorInv/impl/StIvtIostorinvHrBcpOutServiceImpl.java @@ -235,7 +235,7 @@ public class StIvtIostorinvHrBcpOutServiceImpl extends ServiceImpl().lambda() .eq(MdPbStoragevehicleext::getStoragevehicle_code,mst.getStoragevehicle_code()) ); @@ -293,7 +293,7 @@ public class StIvtIostorinvHrBcpOutServiceImpl extends ServiceImpl().lambda() .eq(MdPbStoragevehicleext::getStoragevehicle_code,form.getString("storagevehicle_code")) ); diff --git a/mes/hd/nladmin-system/src/main/resources/config/application.yml b/mes/hd/nladmin-system/src/main/resources/config/application.yml index 2505ba08..aaf699a8 100644 --- a/mes/hd/nladmin-system/src/main/resources/config/application.yml +++ b/mes/hd/nladmin-system/src/main/resources/config/application.yml @@ -69,6 +69,7 @@ security: - /api/localStorage/pictures # 参数 - /api/param/getValueByCode + - /api/pda/jgwash/** - /plumelog/** - /api/esLog/** - /api/users diff --git a/mes/hd/nladmin-system/src/main/resources/logback-spring.xml b/mes/hd/nladmin-system/src/main/resources/logback-spring.xml index 2af1330c..df3db5d7 100644 --- a/mes/hd/nladmin-system/src/main/resources/logback-spring.xml +++ b/mes/hd/nladmin-system/src/main/resources/logback-spring.xml @@ -80,7 +80,7 @@ - + diff --git a/mes/hd/nladmin-system/src/main/resources/sql/三线初始化数据.sql b/mes/hd/nladmin-system/src/main/resources/sql/三线初始化数据.sql index a5e650f6..e5e7f340 100644 --- a/mes/hd/nladmin-system/src/main/resources/sql/三线初始化数据.sql +++ b/mes/hd/nladmin-system/src/main/resources/sql/三线初始化数据.sql @@ -331,3 +331,23 @@ INSERT INTO `hl_one_mes`.`sch_base_point`(`point_id`, `point_code`, `point_name` INSERT INTO `hl_one_mes`.`sch_base_point`(`point_id`, `point_code`, `point_name`, `product_area`, `region_code`, `pre_region_code`, `next_region_code`, `point_type`, `point_status`, `lock_type`, `material_id`, `device_code`, `can_vehicle_type`, `vehicle_max_qty`, `vehicle_type`, `vehicle_code`, `vehicle_qty`, `block_num`, `row_num`, `col_num`, `layer_num`, `in_order_seq`, `out_order_seq`, `in_empty_seq`, `out_empty_seq`, `point_group_code`, `task_id`, `point_location`, `remark`, `source_id`, `is_used`, `is_delete`, `create_id`, `create_name`, `create_time`, `update_id`, `update_name`, `update_time`, `control_point`, `qty`, `priority`) VALUES ('1759406007819301337', 'A3_THXL_19_J', '三线铜环下料05接料位', 'A3', 'A3_THXL', NULL, NULL, '1', '1', '0', NULL, 'A3_THXL_19', NULL, 0, NULL, NULL, 0, 0, 0, 0, 0, 0, 0, 0, 0, NULL, NULL, NULL, NULL, NULL, '1', '0', '1740177213497675776', '管理员', '2024-02-19 10:58:01.349', NULL, NULL, NULL, NULL, NULL, '2'); INSERT INTO `hl_one_mes`.`sch_base_point`(`point_id`, `point_code`, `point_name`, `product_area`, `region_code`, `pre_region_code`, `next_region_code`, `point_type`, `point_status`, `lock_type`, `material_id`, `device_code`, `can_vehicle_type`, `vehicle_max_qty`, `vehicle_type`, `vehicle_code`, `vehicle_qty`, `block_num`, `row_num`, `col_num`, `layer_num`, `in_order_seq`, `out_order_seq`, `in_empty_seq`, `out_empty_seq`, `point_group_code`, `task_id`, `point_location`, `remark`, `source_id`, `is_used`, `is_delete`, `create_id`, `create_name`, `create_time`, `update_id`, `update_name`, `update_time`, `control_point`, `qty`, `priority`) VALUES ('1759406007819301338', 'A3_THXL_19_M', '三线铜环下料05满料位', 'A3', 'A3_THXL', NULL, NULL, '1', '1', '0', NULL, 'A3_THXL_19', NULL, 0, NULL, NULL, 0, 0, 0, 0, 0, 0, 0, 0, 0, NULL, NULL, NULL, NULL, NULL, '1', '0', '1740177213497675776', '管理员', '2024-02-19 10:58:01.349', NULL, NULL, NULL, NULL, NULL, '3'); INSERT INTO `hl_one_mes`.`sch_base_point`(`point_id`, `point_code`, `point_name`, `product_area`, `region_code`, `pre_region_code`, `next_region_code`, `point_type`, `point_status`, `lock_type`, `material_id`, `device_code`, `can_vehicle_type`, `vehicle_max_qty`, `vehicle_type`, `vehicle_code`, `vehicle_qty`, `block_num`, `row_num`, `col_num`, `layer_num`, `in_order_seq`, `out_order_seq`, `in_empty_seq`, `out_empty_seq`, `point_group_code`, `task_id`, `point_location`, `remark`, `source_id`, `is_used`, `is_delete`, `create_id`, `create_name`, `create_time`, `update_id`, `update_name`, `update_time`, `control_point`, `qty`, `priority`) VALUES ('1759406007819301339', 'A3_THXL_19_D', '三线铜环下料05倒料位', 'A3', 'A3_THXL', NULL, NULL, '1', '1', '0', NULL, 'A3_THXL_19', NULL, 0, NULL, NULL, 0, 0, 0, 0, 0, 0, 0, 0, 0, NULL, NULL, NULL, NULL, NULL, '1', '0', '1740177213497675776', '管理员', '2024-02-19 10:58:01.349', NULL, NULL, NULL, NULL, NULL, '3'); + + +--业务-- +CREATE TABLE `sch_conveyor_position` ( + `id` int NOT NULL AUTO_INCREMENT COMMENT '主键', + `position_code` varchar(20) CHARACTER SET utf8mb3 COLLATE utf8mb3_bin NOT NULL COMMENT '输送线编码', + `position_name` varchar(100) CHARACTER SET utf8mb3 COLLATE utf8mb3_bin NOT NULL COMMENT '缓存线位置名字', + `position_no` int NOT NULL DEFAULT '0' COMMENT '位置顺序号', + `storagevehicle_code` varchar(20) COLLATE utf8mb3_bin DEFAULT '0' COMMENT '缓存线层数', + `materila_id` varchar(20) COLLATE utf8mb3_bin DEFAULT '0' COMMENT '缓存线层数', + `qty` decimal(5,3) DEFAULT '0.000' COMMENT '缓存线层数', + `wrokprocedure_id` varchar(20) COLLATE utf8mb3_bin DEFAULT '0' COMMENT '缓存线层数', + `max_no` int NOT NULL DEFAULT '0' COMMENT '缓存线层数', + `create_time` varchar(25) COLLATE utf8mb3_bin NOT NULL COMMENT '创建时间', + PRIMARY KEY (`id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COLLATE=utf8mb3_bin COMMENT='输送线队列列表'; + + +ALTER TABLE sch_base_task + ADD COLUMN workprocedure_id varchar(20) DEFAULT NULL COMMENT '物料工序id'; diff --git a/mes/qd/src/views/wms/masterdata_manage/master/storagevehicleinfo/storagevehicleinfo.js b/mes/qd/src/views/wms/masterdata_manage/master/storagevehicleinfo/storagevehicleinfo.js index fca8a9d9..dd560fd4 100644 --- a/mes/qd/src/views/wms/masterdata_manage/master/storagevehicleinfo/storagevehicleinfo.js +++ b/mes/qd/src/views/wms/masterdata_manage/master/storagevehicleinfo/storagevehicleinfo.js @@ -45,6 +45,13 @@ export function vehileInfo(data) { }) } +export function vehicleext(data) { + return request({ + url: 'api/storagevehicleinfo/vehicleext?vehicle_code='+data, + method: 'get', + }) +} + export function updateVehicleMaterial(data) { return request({ url: 'api/storagevehicleinfo/updateVehicleMaterial', @@ -53,4 +60,4 @@ export function updateVehicleMaterial(data) { }) } -export default { add, edit, del, changeActive, getVehicle, vehileInfo, updateVehicleMaterial } +export default { add, edit, del, changeActive, getVehicle, vehileInfo, vehicleext, updateVehicleMaterial } diff --git a/mes/qd/src/views/wms/staging_manage/staging/kzStaging/ViewDialog.vue b/mes/qd/src/views/wms/staging_manage/fhstaging/ViewDialog.vue similarity index 100% rename from mes/qd/src/views/wms/staging_manage/staging/kzStaging/ViewDialog.vue rename to mes/qd/src/views/wms/staging_manage/fhstaging/ViewDialog.vue diff --git a/mes/qd/src/views/wms/staging_manage/staging/kzStaging/kzStaging.js b/mes/qd/src/views/wms/staging_manage/fhstaging/fhstaging.js similarity index 85% rename from mes/qd/src/views/wms/staging_manage/staging/kzStaging/kzStaging.js rename to mes/qd/src/views/wms/staging_manage/fhstaging/fhstaging.js index 9f9e53b3..7a1817c4 100644 --- a/mes/qd/src/views/wms/staging_manage/staging/kzStaging/kzStaging.js +++ b/mes/qd/src/views/wms/staging_manage/fhstaging/fhstaging.js @@ -66,12 +66,19 @@ export function vehileInfo(data) { method: 'get', }) } +export function editvehicle(data) { + return request({ + url: '/api/pda/fhwash/vechileRelease', + method: 'post', + data + }) +} export function setEmp(data) { return request({ - url: 'api/point/setEmp', + url: '/api/pda/fhwash/release', method: 'post', data }) } -export default { add, edit, del, changeActive, setEmp, getPoint, getRegion, changeUsed, vehileInfo } +export default { add, edit, del, changeActive, setEmp, getPoint, getRegion, changeUsed, editvehicle } diff --git a/mes/qd/src/views/wms/staging_manage/staging/kzStaging/index.vue b/mes/qd/src/views/wms/staging_manage/fhstaging/index.vue similarity index 82% rename from mes/qd/src/views/wms/staging_manage/staging/kzStaging/index.vue rename to mes/qd/src/views/wms/staging_manage/fhstaging/index.vue index dadaa5ac..6efcce8e 100644 --- a/mes/qd/src/views/wms/staging_manage/staging/kzStaging/index.vue +++ b/mes/qd/src/views/wms/staging_manage/fhstaging/index.vue @@ -14,32 +14,18 @@ label-width="90px" label-suffix=":" > - - - - - - + - + @@ -79,8 +65,8 @@ - - + + @@ -113,7 +99,7 @@ - + @@ -163,32 +149,25 @@ > - - - - - - - - - + + + - - + + - + +