1、fixbug:笼内玻璃错乱问题解决
2、中空问题修复:避免多个线程拿到的空格相同
3、swagger名称显示
| | |
| | | * @author wu |
| | | * @since 2024-06-25 |
| | | */ |
| | | @Api(description = "报工信息") |
| | | @Api(tags = "报工信息") |
| | | @RestController |
| | | @RequestMapping("/damage") |
| | | @ResponseBody |
| | |
| | | |
| | | @Autowired(required=true) |
| | | private DamageService damageService; |
| | | |
| | | @ApiOperation("报工数据查询") |
| | | @PostMapping("/selectDamage") |
| | | public Result selectDamage(@RequestBody Map map) { |
| | |
| | | package com.mes.glassinfo.controller; |
| | | |
| | | |
| | | import io.swagger.annotations.Api; |
| | | import org.springframework.web.bind.annotation.RequestMapping; |
| | | |
| | | import org.springframework.web.bind.annotation.RestController; |
| | |
| | | * @author wu |
| | | * @since 2024-04-29 |
| | | */ |
| | | @Api(tags = "玻璃小片信息") |
| | | @RestController |
| | | @RequestMapping("/glassinfo/glass-info") |
| | | public class GlassInfoController { |
| | |
| | | package com.mes.opctask.entity; |
| | | |
| | | import com.baomidou.mybatisplus.annotation.IdType; |
| | | import com.baomidou.mybatisplus.annotation.TableId; |
| | | import lombok.Data; |
| | | |
| | | import java.util.Date; |
| | |
| | | /** |
| | | * 历史任务id |
| | | */ |
| | | @TableId(value = "id", type = IdType.AUTO) |
| | | private Long id; |
| | | /** |
| | | * 任务请求 0无任务 1上片 |
| | |
| | | import com.mes.order.entity.Orders; |
| | | import com.mes.order.service.OrdersService; |
| | | import com.mes.utils.Result; |
| | | import io.swagger.annotations.Api; |
| | | import io.swagger.annotations.ApiOperation; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | |
| | | * @author wu |
| | | * @since 2024-06-17 |
| | | */ |
| | | @Api(tags = "订单信息") |
| | | @RestController |
| | | @RequestMapping("/order/order") |
| | | @Slf4j |
| | |
| | | * @author wu |
| | | * @since 2024-07-25 |
| | | */ |
| | | @Api(description = "生产基础数据") |
| | | @Api(tags = "生产基础数据") |
| | | @RestController |
| | | @RequestMapping("/basic_data_produce") |
| | | public class BasicDataProduceController { |
| | |
| | | * @author wu |
| | | * @since 2024-07-26 |
| | | */ |
| | | @Api(tags = "破损详情信息") |
| | | @RestController |
| | | @RequestMapping("/damage_details") |
| | | public class DamageDetailsController { |
| | |
| | | import com.mes.pp.entity.request.OptimizeRequest; |
| | | import com.mes.pp.service.OptimizeProjectService; |
| | | import com.mes.utils.Result; |
| | | import io.swagger.annotations.Api; |
| | | import io.swagger.annotations.ApiOperation; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | |
| | | * @author zhoush |
| | | * @since 2024-04-16 |
| | | */ |
| | | @Api(tags = "工程信息") |
| | | @RestController |
| | | @RequestMapping("/optimizeProject") |
| | | @Slf4j |
| | | |
| | | public class OptimizeProjectController { |
| | | @Autowired |
| | | //获取待选择的工程号 |
| | |
| | | import com.mes.pp.entity.request.Reportingdamage; |
| | | import com.mes.pp.service.ReportingWorkService; |
| | | import com.mes.utils.Result; |
| | | import io.swagger.annotations.Api; |
| | | import io.swagger.annotations.ApiOperation; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | |
| | | * @author wu |
| | | * @since 2024-06-26 |
| | | */ |
| | | @Api(tags = "工程选择信息") |
| | | @RestController |
| | | @RequestMapping("/reporting_work/reporting-work") |
| | | @Slf4j |
| | |
| | | * @author wu |
| | | * @since 2024-07-01 |
| | | */ |
| | | @Api(description = "值班信息") |
| | | @Api(tags = "值班信息") |
| | | @RestController |
| | | @RequestMapping("/work_assignment") |
| | | public class WorkAssignmentController { |
| | |
| | | * @author zhoush |
| | | * @since 2024-04-11 |
| | | */ |
| | | @Api(description = "菜单管理") |
| | | @Api(tags = "菜单管理") |
| | | @RestController |
| | | @RequestMapping("/sys/menu") |
| | | public class SysMenuController { |
| | |
| | | * @author zhoush |
| | | * @since 2024-04-11 |
| | | */ |
| | | @Api(description = "角色管理") |
| | | @Api(tags = "角色管理") |
| | | @RestController |
| | | @RequestMapping("/sys/role") |
| | | public class SysRoleController { |
| | |
| | | * @author zhoush |
| | | * @since 2024-04-11 |
| | | */ |
| | | @Api(description = "用户管理") |
| | | @Api(tags = "用户管理") |
| | | @RestController |
| | | @RequestMapping("/sys/user") |
| | | public class SysUserController { |
| | |
| | | import com.mes.edgglasstask.entity.request.EdgGlassInfoRequest; |
| | | import com.mes.edgglasstask.service.EdgGlassTaskInfoService; |
| | | import com.mes.utils.Result; |
| | | import io.swagger.annotations.Api; |
| | | import io.swagger.annotations.ApiOperation; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.web.bind.annotation.PostMapping; |
| | |
| | | * @author wu |
| | | * @since 2024-05-11 |
| | | */ |
| | | @Api(tags = "磨边队列信息") |
| | | @RestController |
| | | @RequestMapping("/edgGlassTaskInfo") |
| | | public class EdgGlassTaskInfoController { |
| | |
| | | public List<EdgGlassTaskInfo> selectTaskCacheIsRun() { |
| | | QueryWrapper<EdgGlassTaskInfo> wrapper = new QueryWrapper<EdgGlassTaskInfo>() |
| | | .select("line") |
| | | .eq("status", 1) |
| | | .eq("state", 1) |
| | | .groupBy("line"); |
| | | |
| | | return this.list(wrapper); |
| | |
| | | import com.mes.opctask.entity.EdgStorageDeviceTaskHistory; |
| | | import com.mes.opctask.service.EdgStorageDeviceTaskHistoryService; |
| | | import com.mes.utils.Result; |
| | | import io.swagger.annotations.Api; |
| | | import org.springframework.web.bind.annotation.*; |
| | | |
| | | import javax.annotation.Resource; |
| | |
| | | * @author makejava |
| | | * @since 2024-10-27 21:04:29 |
| | | */ |
| | | @Api(tags = "卧理历史任务") |
| | | @RestController |
| | | @RequestMapping("edgStorageDeviceTaskHistory") |
| | | public class EdgStorageDeviceTaskHistoryController { |
| | |
| | | * @author zhoush |
| | | * @since 2024-04-07 |
| | | */ |
| | | @Api(description = "识别显示") |
| | | @Api(tags = "识别显示") |
| | | @RestController |
| | | @RequestMapping("/taskCache") |
| | | public class TaskCacheController { |
| | |
| | | * @author zhoush |
| | | * @since 2024-03-27 |
| | | */ |
| | | @Api(description = "理片笼信息") |
| | | @Api(tags = "理片笼信息") |
| | | @RestController |
| | | @RequestMapping("/bigStorageCage") |
| | | public class BigStorageCageController { |
| | |
| | | * @author zhoush |
| | | * @since 2024-03-27 |
| | | */ |
| | | @Api(description = "理片笼详情") |
| | | @Api(tags = "理片笼详情") |
| | | @RestController |
| | | @RequestMapping("/bigStorageCageDetails") |
| | | public class BigStorageCageDetailsController { |
| | |
| | | package com.mes.bigstorage.entity; |
| | | |
| | | import com.baomidou.mybatisplus.annotation.IdType; |
| | | import com.baomidou.mybatisplus.annotation.TableId; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | |
| | | /** |
| | | * /*大理片笼信息表id |
| | | */ |
| | | @TableId(value = "id", type = IdType.AUTO) |
| | | private Long id; |
| | | /** |
| | | * /*玻璃id |
| | |
| | | package com.mes.bigstorage.entity; |
| | | |
| | | import com.baomidou.mybatisplus.annotation.IdType; |
| | | import com.baomidou.mybatisplus.annotation.TableId; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | |
| | | /** |
| | | * /*钢化玻璃关系表id |
| | | */ |
| | | @TableId(value = "id", type = IdType.AUTO) |
| | | private Long id; |
| | | |
| | | private String engineerId; |
| | |
| | | * @author zhoush |
| | | * @since 2024-04-16 |
| | | */ |
| | | @Api(description = "进片任务信息") |
| | | @Api(tags = "进片任务信息") |
| | | @RestController |
| | | @RequestMapping("/big-storage-cage-feed-task") |
| | | public class BigStorageCageFeedTaskController { |
| | |
| | | * @author zhoush |
| | | * @since 2024-04-16 |
| | | */ |
| | | @Api(description = "出片任务信息") |
| | | @Api(tags = "出片任务信息") |
| | | @RestController |
| | | @RequestMapping("/big-storage-cage-out-task") |
| | | public class BigStorageCageOutTaskController { |
| | |
| | | package com.mes.edgglasstask.controller; |
| | | |
| | | |
| | | import io.swagger.annotations.Api; |
| | | import org.springframework.web.bind.annotation.RequestMapping; |
| | | import org.springframework.web.bind.annotation.RestController; |
| | | |
| | |
| | | * @author wu |
| | | * @since 2024-05-11 |
| | | */ |
| | | @Api(tags = "磨边队列") |
| | | @RestController |
| | | @RequestMapping("/edgGlassTaskInfo") |
| | | public class EdgGlassTaskInfoController { |
| | |
| | | continue; |
| | | } |
| | | int sequence = -1; |
| | | int startSlot = -1; |
| | | int targetSlot = -1; |
| | | for (BigStorageSequenceDTO item : sequenceDTOList) { |
| | | if (item.getMaxSequence() == sequence - 1) { |
| | | //生成调度任务 |
| | | int targetSlot = item.getSlot(); |
| | | int startSlot = item.getSlot(); |
| | | list = bigStorageCageDetailsService.list(new LambdaQueryWrapper<BigStorageCageDetails>() |
| | | .eq(BigStorageCageDetails::getState, Const.GLASS_STATE_IN).eq(BigStorageCageDetails::getSlot, startSlot)); |
| | | computeOutGlassInfoByVirtualSlot(list, "big_storage_cage_out_one_task", targetSlot, Const.GLASS_STATE_SCHEDULE_ING, Const.BIG_STORAGE_BEFORE_DISPATCH); |
| | | computeOutGlassInfoByVirtualSlot(list, "big_storage_cage_out_one_task", |
| | | targetSlot, Const.GLASS_STATE_SCHEDULE_ING, Const.BIG_STORAGE_BEFORE_DISPATCH); |
| | | List<Integer> slotList = new ArrayList<>(); |
| | | slotList.add(targetSlot); |
| | | updateSlotRemainBySlots(slotList); |
| | | break loop; |
| | | } |
| | | sequence = item.getMinSequence(); |
| | | startSlot = item.getSlot(); |
| | | targetSlot = item.getSlot(); |
| | | } |
| | | } |
| | | } |
| | |
| | | * @author zhoush |
| | | * @since 2024-03-27 |
| | | */ |
| | | @Api(description = "钢化小片表信息") |
| | | @Api(tags = "钢化小片表信息") |
| | | @RestController |
| | | @RequestMapping("/temperingGlassInfo") |
| | | public class TemperingGlassInfoController { |
| | |
| | | String engineerId = upPattenUsage.get(0).getEngineeringId(); |
| | | int count = this.count(new LambdaQueryWrapper<UpPattenUsage>().eq(UpPattenUsage::getEngineeringId, engineerId)); |
| | | if (count <=0){ |
| | | //保存原片使用详情表 |
| | | this.saveBatch(upPattenUsage); |
| | | } |
| | | //保存原片使用详情表 |
| | | } |
| | | |
| | | @Override |
| | |
| | | |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | @Api(description = "缓存") |
| | | @Api(tags = "缓存") |
| | | @RestController |
| | | @RequestMapping("/downStorage") |
| | | public class DownStorageCageDetailsController { |
| | |
| | | */ |
| | | |
| | | @RestController |
| | | @Api(description = "工位") |
| | | @Api(tags = "工位") |
| | | @RequestMapping("/downWorkStation") |
| | | public class DownWorkstationController { |
| | | |
| | |
| | | |
| | | import javax.annotation.Resource; |
| | | import java.util.ArrayList; |
| | | import java.util.Date; |
| | | import java.util.List; |
| | | import java.util.stream.Collectors; |
| | | |
| | |
| | | BeanUtils.copyProperties(queue, queueInfo); |
| | | queueInfo.setState(Const.TEMPERING_NEW); |
| | | queueInfo.setCell(cell); |
| | | queueInfo.setCreateTime(new Date()); |
| | | queueInfo.setUpdateTime(new Date()); |
| | | hollowQueues.add(queueInfo); |
| | | if (queue.getIsPair() == 1){ |
| | | isPairCount -=1; |
| | |
| | | List<HollowGlassQueueInfo> list = hollowGlassQueueInfoService.list(new LambdaQueryWrapper<HollowGlassQueueInfo>() |
| | | .eq(HollowGlassQueueInfo::getFlowCardId, hollowGlassQueueInfo.getFlowCardId()) |
| | | .eq(HollowGlassQueueInfo::getCell, hollowGlassQueueInfo.getCell()) |
| | | .eq(HollowGlassQueueInfo::getIsPair, 1) |
| | | // .eq(HollowGlassQueueInfo::getIsPair, 1) |
| | | .eq(HollowGlassQueueInfo::getState, Const.TEMPERING_NEW) |
| | | ); |
| | | if (CollectionUtil.isEmpty(list)){ |
| | |
| | | jsonObject.append("932",listMap.get(932)); |
| | | List<WebSocketServer> sendwServer = WebSocketServer.sessionMap.get("HollowGlass"); |
| | | if (CollectionUtil.isNotEmpty(sendwServer)) { |
| | | WebSocketServer socketServer = sendwServer.get(0); |
| | | for (WebSocketServer socketServer : sendwServer) { |
| | | if (socketServer != null && socketServer.session.isOpen()) { |
| | | socketServer.sendMessage(jsonObject.toString()); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | |
| | | cloud: |
| | | nacos: |
| | | discovery: |
| | | server-addr: 192.168.2.100:8848 |
| | | server-addr: 127.0.0.1:8848 |
| | | redis: |
| | | database: 0 |
| | | host: 192.168.2.100 |
| | |
| | | |
| | | spring: |
| | | profiles: |
| | | active: dev |
| | | active: yw |
| | | application: |
| | | name: hollowGlass |
| | | liquibase: |
| | | enabled: false |
| | | task: |
| | | scheduling: |
| | | pool: |
| | | size: 10 |
| | | thread-name-prefix: task-hollowGlass |
| | | # task: |
| | | # scheduling: |
| | | # pool: |
| | | # size: 10 |
| | | # thread-name-prefix: task-hollowGlass |
| | | mybatis-plus: |
| | | mapper-locations: classpath*:mapper/*.xml |
| | | configuration: |
| | |
| | | xMaxSize: 2800 |
| | | temperingOutTargetPosition: 930 |
| | | artificialOutTargetPosition: 931 |
| | | |
| | | scan: |
| | | ip: 192.168.30.199 |
| | | port: 5000 |
| | | kangaroohy: |
| | | milo: |
| | | enabled: false |
| | | enabled: true |
| | | primary: default |
| | | config: |
| | | default: |