wuyouming666
2024-05-16 889ff0512bc68be0f5d231a524bf97c9488ec37f
Merge branch 'master' of http://10.153.19.25:10101/r/HangZhouMes
14个文件已修改
182 ■■■■ 已修改文件
hangzhoumesParent/common/servicebase/src/main/java/com/mes/engineering/controller/EngineeringController.java 20 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
hangzhoumesParent/common/servicebase/src/main/java/com/mes/engineering/service/EngineeringService.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
hangzhoumesParent/common/servicebase/src/main/java/com/mes/engineering/service/impl/EngineeringServiceImpl.java 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
hangzhoumesParent/common/servicebase/src/main/java/com/mes/pp/controller/OptimizeProjectController.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
hangzhoumesParent/common/servicebase/src/main/java/com/mes/uppattenusage/controller/UpPattenUsageController.java 34 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
hangzhoumesParent/common/servicebase/src/main/java/com/mes/uppattenusage/service/UpPattenUsageService.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
hangzhoumesParent/common/servicebase/src/main/java/com/mes/uppattenusage/service/impl/UpPattenUsageServiceImpl.java 18 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
hangzhoumesParent/moduleService/LoadGlassModule/src/main/java/com/mes/job/PlcLoadGlassTask.java 17 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
hangzhoumesParent/moduleService/LoadGlassModule/src/main/java/com/mes/workstation/controller/UpWorkstationController.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
hangzhoumesParent/moduleService/LoadGlassModule/src/test/java/com/mes/LoadGlassModuleApplicationTest.java 9 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/service/impl/DownGlassTaskServiceImpl.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/DownStorageCageDetailsService.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/impl/DownStorageCageDetailsServiceImpl.java 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/job/DownCacheGlassTask.java 32 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
hangzhoumesParent/common/servicebase/src/main/java/com/mes/engineering/controller/EngineeringController.java
@@ -8,6 +8,9 @@
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import com.mes.engineering.service.EngineeringService;
import java.util.List;
/**
 * <p>
 *  前端控制器
@@ -26,10 +29,19 @@
    @ApiOperation("开始/暂停任务/传递工程号和状态,开始是1 暂停是0")
    @PostMapping("/changeTask") //调用上片任务
    @ResponseBody
    public Result <Engineering> changeTask(String projectId , Integer state) {
        boolean work=engineeringService.changeTask(projectId,state);
        log.info("开始任务返回:{}", work);
        return Result.build(200, "",null);
    public  Result <Boolean> changeTask(@RequestBody Engineering engineering) {
        boolean work=engineeringService.changeTask(engineering.getEngineerId(),engineering.getState());
        log.info("StartorStop:{},{}", work,engineering);
        return Result.build(200, engineering.getEngineerId(),work);
    }
    @ApiOperation("查询可以上片的工程号")
    @GetMapping("/selectTask") //调用上片任务
    @ResponseBody
    public Result <List<Engineering>> selectTask() {
        List<Engineering> engineering=engineeringService.selectTask();
        log.info("可领取任务返回:{}", engineering);
        return Result.build(200, "",engineering);
    }
}
hangzhoumesParent/common/servicebase/src/main/java/com/mes/engineering/service/EngineeringService.java
@@ -35,4 +35,6 @@
     * @return Engineering
     */
    Engineering selectInitiate(Integer state);
    List<Engineering> selectTask();
}
hangzhoumesParent/common/servicebase/src/main/java/com/mes/engineering/service/impl/EngineeringServiceImpl.java
@@ -29,6 +29,9 @@
    @Autowired
    OptimizeProjectMapper optimizeProjectMapper;
    @Autowired
    private EngineeringMapper engineeringMapper;
    //开始/暂停任务
    @Override
    public  boolean  changeTask(String projectId, Integer state) {
@@ -97,4 +100,12 @@
        return this.getOne(wrapper);
    }
    @Override
    public List<Engineering> selectTask() {
        //查询可开始任务的工程
        QueryWrapper<Engineering> wrapper = new QueryWrapper<>();
        wrapper.eq("state", 0);
        return engineeringMapper.selectList(wrapper);
    }
}
hangzhoumesParent/common/servicebase/src/main/java/com/mes/pp/controller/OptimizeProjectController.java
@@ -8,10 +8,7 @@
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
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 org.springframework.web.bind.annotation.*;
import java.util.List;
@@ -34,6 +31,7 @@
    @ApiOperation("显示工程选择信息")
    @PostMapping("/listByState") //显示工程选择信息
    @ResponseBody
    public Result<List<OptimizeProject>> listByState(@RequestBody OptimizeRequest optimizeRequest) {
        log.info("将请求参数封装在请求类里面");
        List<OptimizeProject> glass = optimizeProjectService.listByState(optimizeRequest);
hangzhoumesParent/common/servicebase/src/main/java/com/mes/uppattenusage/controller/UpPattenUsageController.java
@@ -11,9 +11,7 @@
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import java.util.List;
@@ -40,33 +38,37 @@
    private OptimizeProjectService optimizeProjectService;
    @ApiOperation("显示正在出片的工程信息")
    @GetMapping("/prioritylist") //查询现在上片机的玻璃信息
    @ResponseBody
    public Result<List<UpPattenUsage>> prioritylist() {
        List<UpPattenUsage> glass = upPattenUsageService.prioritylist(1);
        log.info("显示工位上的玻璃信息:{}", glass);
        List<UpPattenUsage> glass = upPattenUsageService.prioritylist();
        log.info("显示正在出片的工程信息:{}", glass);
        return Result.build(200, "", glass);
    }
    @ApiOperation("点击选择工程保存后进行调用,传入工程号")
    @GetMapping("/saveUpPattenUsage") //查询现在上片机的玻璃信息
    public Result<Integer> saveUpPattenUsage(String engineeringId) {
        log.info("传入工程号判断是否已保存:{}", engineeringId);
        UpPattenUsage upPattenUsage= upPattenUsageService.selectedEngineering(engineeringId);
    @PostMapping("/saveUpPattenUsage") //查询现在上片机的玻璃信息
    @ResponseBody
    public Result<Engineering> saveUpPattenUsage(@RequestBody Engineering engineering) {
        log.info("engineeringId:{}", engineering);
        UpPattenUsage upPattenUsage= upPattenUsageService.selectedEngineering(engineering.getEngineerId());
        if (upPattenUsage!=null){
            log.info("已保存过");
            return Result.build(200, "已保存的工程", 200);
            return Result.build(200, "已保存的工程", null);
        }else {
            List<UpPattenUsage> upPattenUsages = upPattenUsageService.selectSaveUpPattenUsage(engineeringId);
            List<UpPattenUsage> upPattenUsages = upPattenUsageService.selectSaveUpPattenUsage(engineering.getEngineerId());
            log.info("将查询出的UpPattenUsage数据保存到数据库表里");
            upPattenUsageService.saveUpPattenUsage(upPattenUsages);
            log.info("从PP表查询glassinfo的数据并保存到表里");
            List<GlassInfo> glassinfo=glassInfoService.selectGlassInfo(engineeringId);
            List<GlassInfo> glassinfo=glassInfoService.selectGlassInfo(engineering.getEngineerId());
            glassInfoService.saveGlassInfo(glassinfo);
            log.info("从PP表查询engineering的数据并保存到表里");
            List<Engineering> engineering= engineeringService.selectEngineering(engineeringId);
            engineeringService.saveEngineering(engineering);
            List<Engineering> listengineering= engineeringService.selectEngineering(engineering.getEngineerId());
            engineeringService.saveEngineering(listengineering);
            log.info("更改pp表状态为已领取");
            optimizeProjectService.changeTask(engineeringId, 200);
            return Result.build(200, "", 200);
            optimizeProjectService.changeTask(engineering.getEngineerId(), 200);
//            List<UpPattenUsage> data=upPattenUsageService.prioritylist();
//            log.info("显示保存后的上片顺序表");
            return Result.build(200, "", engineering);
        }
    }
hangzhoumesParent/common/servicebase/src/main/java/com/mes/uppattenusage/service/UpPattenUsageService.java
@@ -17,7 +17,7 @@
      * 查询工位上的玻璃信息
      * @return List<UpPattenUsage>
      */
     List<UpPattenUsage> prioritylist(int state);
     List<UpPattenUsage> prioritylist();
     /**
      * 查询上片顺序信息
      * @return List<UpPattenUsage>
hangzhoumesParent/common/servicebase/src/main/java/com/mes/uppattenusage/service/impl/UpPattenUsageServiceImpl.java
@@ -5,6 +5,8 @@
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.github.yulichang.base.MPJBaseServiceImpl;
import com.github.yulichang.query.MPJQueryWrapper;
import com.mes.engineering.entity.Engineering;
import com.mes.engineering.service.EngineeringService;
import com.mes.pp.entity.OptimizeProject;
import com.mes.pp.mapper.OptimizeProjectMapper;
import com.mes.uppattenusage.entity.OptimizeUpPattenUsage;
@@ -31,13 +33,21 @@
    @Autowired
    OptimizeProjectMapper optimizeProjectMapper;
    @Autowired
    EngineeringService engineeringService;
    @Override
    public List<UpPattenUsage> prioritylist(int state) {
        log.info("将参数传入到查询类里,工程号做非空判断模糊查询");
    public List<UpPattenUsage> prioritylist() {
        //获取正在上片的任务id
        Engineering engineering= engineeringService.selectInitiate(1);
        log.info("将参数传入到查询类里{}",engineering);
        if(engineering!=null){
        LambdaQueryWrapper<UpPattenUsage> wrapper = new LambdaQueryWrapper<>();
        wrapper.eq(UpPattenUsage::getState,state);
        log.info("返回工程信息");
            wrapper.eq(UpPattenUsage::getEngineeringId,engineering.getEngineerId());
        return this.list(wrapper);
        }else {
            return  null;
        }
    }
    @Override
hangzhoumesParent/moduleService/LoadGlassModule/src/main/java/com/mes/job/PlcLoadGlassTask.java
@@ -39,6 +39,7 @@
        try {
            //获取是否有上片请求
            String loadRequest = plcParameterObject.getPlcParameter("loadRequest").getValue();
            String mesToPlc = plcParameterObject.getPlcParameter("MesToPlc").getValue();
            //判断开始上片的工程号
            Engineering engineering = engineeringService.selectInitiate(1);
            if ("1".equals(loadRequest) && engineering != null) {
@@ -59,7 +60,8 @@
                    upPattenUsageService.updateUpPattenUsageState(upPattenUsage, workId);
                }
            }else {
            }
            if("1".equals(mesToPlc)&& "0".equals(loadRequest)){
                //请求字为零时,任务字清零
                S7object.getinstance().plccontrol.writetime(plcParameterObject.getPlcParameter("MesToPlc").getAddress(), 0);
            }
@@ -76,20 +78,25 @@
        String loadStatus = plcParameterObject.getPlcParameter("PlcStatus").getValue();
        if (loadStatus != null) {
            log.info(loadStatus);
            if ("1".equals(loadStatus)) {
            switch (loadStatus) {
                case "1":
                log.info("收到汇报任务完成");
                S7object.getinstance().plccontrol.writetime(plcParameterObject.getPlcParameter("MesToPlcStatus").getAddress(), 1);
            } else if ("2".equals(loadStatus)) {
                    break;
                case "2":
                log.info("收到汇报未完成任务");
                //减少工位数量,恢复任务状态
                overTask(loadStatus,0);
            } else if ("3".equals(loadStatus)) {
                    break;
                case "3":
                log.info("收到汇报玻璃破损");
                overTask(loadStatus,0);
            } else if("0".equals(loadStatus)){
                    break;
                case "0":
                log.info("收到汇报清0状态");
                //减少工位数量,完成任务状态
                overTask(loadStatus,100);
                    break;
            }
        }
    }
hangzhoumesParent/moduleService/LoadGlassModule/src/main/java/com/mes/workstation/controller/UpWorkstationController.java
@@ -29,6 +29,7 @@
    private UpWorkstationService upWorkstationService;
    @ApiOperation("显示工位上的玻璃信息")
    @GetMapping("/list") //查询现在上片机的玻璃信息
    @ResponseBody
    public Result<List<UpWorkstation>> list() {
        List<UpWorkstation> glass = upWorkstationService.list();
        log.info("显示工位上的玻璃信息:{}", glass);
hangzhoumesParent/moduleService/LoadGlassModule/src/test/java/com/mes/LoadGlassModuleApplicationTest.java
@@ -75,7 +75,8 @@
    @Test
    public  void  textengineering2(){
        //更新工程表状态为已领取
        optimizeProjectService.changeTask("P24050801",200);
        //optimizeProjectService.changeTask("P24050801",200);
        engineeringService.changeTask("P24051102",1);
    }
    @Test
    public  void  textengineering3(){
@@ -83,5 +84,11 @@
        UpPattenUsage upPattenUsage=upPattenUsageService.selectOverTask();
        log.info("上片表任务中的数据{}",upPattenUsage);
    }
    @Test
    public  void  textengineering4(){
        //判断是否已保存过工程号到上片表
        List<Engineering> engineerings=engineeringService.selectTask();
        log.info("上片表任务中的数据{}",engineerings);
    }
}
hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downglassinfo/service/impl/DownGlassTaskServiceImpl.java
@@ -29,7 +29,7 @@
    @Override
    public List<DownGlassTask> getUnloadingTaskState() {
        QueryWrapper<DownGlassTask> queryWrapper = new QueryWrapper<>();
        queryWrapper.eq("task_stauts", 0);
        queryWrapper.eq("task_stauts", 0).eq("task_type", 2).or().eq("task_stauts", 3);
        return baseMapper.selectList(queryWrapper);
    }
hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/DownStorageCageDetailsService.java
@@ -2,6 +2,7 @@
import com.github.yulichang.base.MPJBaseService;
import com.mes.downstorage.entity.DownStorageCageDetails;
import com.mes.glassinfo.entity.GlassInfo;
import java.util.List;
import java.util.Map;
@@ -52,4 +53,10 @@
     */
    List<DownStorageCageDetails> CacheOut1(int start, int end);
    /**
     * @return 直通查询
     */
    List<GlassInfo>  DirectConnection();
}
hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/downstorage/service/impl/DownStorageCageDetailsServiceImpl.java
@@ -160,6 +160,27 @@
//
//    }
    @Override
    public List<GlassInfo>  DirectConnection(){
        LambdaQueryWrapper<GlassInfo> queryWrapper2 = Wrappers.lambdaQuery();
        queryWrapper2.select(GlassInfo::getFlowCardId,
                GlassInfo::getGlassId,
                GlassInfo::getTemperingLayoutId,
                GlassInfo::getTemperingFeedSequence)
                .notInSql(GlassInfo::getGlassId, "SELECT glass_id FROM down_glass_info")
                .orderByAsc(GlassInfo::getTemperingLayoutId)
                .orderByDesc(GlassInfo::getTemperingFeedSequence)
                .last("LIMIT 1");
        // 查询 GlassInfo 表
        log.info("直通查询");
        return glassInfoMapper.selectList(queryWrapper2);
    };
    @Override
    public List<DownStorageCageDetails> CacheOut1(int start, int end) {
hangzhoumesParent/moduleService/UnLoadGlassModule/src/main/java/com/mes/job/DownCacheGlassTask.java
@@ -144,9 +144,19 @@
        }
        log.info("2、获取到的玻璃信息为{}", glassInfo);
//        if(glassInfo.getFlowCardId()=){
//
//        }
        if (glassInfo.getGlassId().equals(downStorageCageDetailsService.DirectConnection()) ) {
            //直通
            log.info("3、如果当前玻璃属于版图id和片序的顺序则直通,执行下片任务");
            DownWorkstation downWorkstation = downWorkstationService.getOne(new LambdaQueryWrapper<DownWorkstation>().eq(DownWorkstation::getFlowCardId, glassInfo.getFlowCardId()));
            int WorkstationId=downWorkstation.getWorkstationId();
            DownGlassTask downGlassTask = downStorageCageService.createDownGlassTask(glassInfo, "0", String.valueOf(WorkstationId), "3");
            downGlassTaskService.insertCacheTask(downGlassTask);
        }else{
            log.info("4、如果不属于版图id和片序的顺序执行进片任务");
        //添加进片任务  查找空格
        List<DownStorageCageDetails> list = downStorageCageService.selectCacheEmpty();
        if(list.size()>0){
@@ -154,8 +164,8 @@
        log.info("3、查询卧式理片笼里面的空格:{}", list);
        log.info("4、将玻璃信息插入卧式理片笼,当前玻璃信息:{}", glassInfo);
        log.info("5、查询卧式理片笼里面的空格:{}", list);
        log.info("6、将玻璃信息插入卧式理片笼,当前玻璃信息:{}", glassInfo);
        DownStorageCageDetails details = new DownStorageCageDetails();
        BeanUtils.copyProperties(glassInfo, details);
        details.setState(1);
@@ -163,17 +173,19 @@
        details.setSlot(item.getSlot());
        details.setDeviceId(item.getDeviceId());
        downStorageCageDetailsService.save(details);
        log.info("5、玻璃信息已存入理片笼详情表,玻璃信息为{}", details);
        log.info("7、玻璃信息已存入理片笼详情表,玻璃信息为{}", details);
            DownGlassTask downGlassTask = downStorageCageService.createDownGlassTask(glassInfo, "0", item.getSlot() + "", "1");
        //添加进片任务
        log.info("6、生成进片任务信息存入任务表{}", downGlassTask);
        log.info("8、生成进片任务信息存入任务表{}", downGlassTask);
            downGlassTaskService.insertCacheTask(downGlassTask);
        }
        }
        log.info("9、发送确认字完成");
        //S7object.getinstance().plccontrol.WriteWord(confirmationWrodAddress, (short) 1);
        log.info("7、发送确认字完成");
    }
    /**