diff --git a/src/main/java/com/dsic/gj_erp/bean/xiaochi/CutPlan.java b/src/main/java/com/dsic/gj_erp/bean/xiaochi/CutPlan.java index b5806dc..7c5e523 100644 --- a/src/main/java/com/dsic/gj_erp/bean/xiaochi/CutPlan.java +++ b/src/main/java/com/dsic/gj_erp/bean/xiaochi/CutPlan.java @@ -20,7 +20,7 @@ public class CutPlan extends Model { private String nestName; - private String nestNameSub1;//套料图号 + private String nestNameSub1;//套料图号 _V:切割;_K:划线 private String nestItaatu;//厚 diff --git a/src/main/java/com/dsic/gj_erp/controller/kban/KbanController.java b/src/main/java/com/dsic/gj_erp/controller/kban/KbanController.java index 07f4479..bfb8758 100644 --- a/src/main/java/com/dsic/gj_erp/controller/kban/KbanController.java +++ b/src/main/java/com/dsic/gj_erp/controller/kban/KbanController.java @@ -59,6 +59,14 @@ public class KbanController { @Value("${pdfUri}") private String pdfUri; + /** + * 设备状态及加工情况 + */ + @GetMapping("/getDeviceStatus") + public ResultBean getDeviceStatus() { + return new ResultBean<>(kbanService.getDeviceStatus()); + } + /** * 中日程表格数据 */ diff --git a/src/main/java/com/dsic/gj_erp/mapper/xiaochi/CutPlanMapper.java b/src/main/java/com/dsic/gj_erp/mapper/xiaochi/CutPlanMapper.java index 994be3f..8425c77 100644 --- a/src/main/java/com/dsic/gj_erp/mapper/xiaochi/CutPlanMapper.java +++ b/src/main/java/com/dsic/gj_erp/mapper/xiaochi/CutPlanMapper.java @@ -9,4 +9,6 @@ public interface CutPlanMapper extends BaseMapper { List getCutPlanList(String st,String ed); void synBom_qgPgd(); + + } diff --git a/src/main/java/com/dsic/gj_erp/mapper/xiaochi/DeviceMapper.java b/src/main/java/com/dsic/gj_erp/mapper/xiaochi/DeviceMapper.java index 039415e..002bdcd 100644 --- a/src/main/java/com/dsic/gj_erp/mapper/xiaochi/DeviceMapper.java +++ b/src/main/java/com/dsic/gj_erp/mapper/xiaochi/DeviceMapper.java @@ -3,5 +3,9 @@ package com.dsic.gj_erp.mapper.xiaochi; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.dsic.gj_erp.bean.xiaochi.Device; +import java.util.List; + public interface DeviceMapper extends BaseMapper { + + List getDeviceStatus(); } diff --git a/src/main/java/com/dsic/gj_erp/service/ApiService.java b/src/main/java/com/dsic/gj_erp/service/ApiService.java index 03056d8..e103bf8 100644 --- a/src/main/java/com/dsic/gj_erp/service/ApiService.java +++ b/src/main/java/com/dsic/gj_erp/service/ApiService.java @@ -70,7 +70,7 @@ public class ApiService { if (syuserp.getIpAddress()==null ) { throw new CustomException(10201, "登陆失败,IP地址未配置!"); } - if (!syuserp.getIpAddress().equals(ip) ) { + if (!syuserp.getIpAddress().contains("all")&&!syuserp.getIpAddress().equals(ip) ) { throw new CustomException(10201, "登陆失败,IP地址未授权!"); } // if (StrUtil.isNotEmpty(syuserp.getMacAddress())&& !syuserp.getMacAddress().equals(macAddress)) { diff --git a/src/main/java/com/dsic/gj_erp/service/KbanService.java b/src/main/java/com/dsic/gj_erp/service/KbanService.java index b0c67ca..e7f24e3 100644 --- a/src/main/java/com/dsic/gj_erp/service/KbanService.java +++ b/src/main/java/com/dsic/gj_erp/service/KbanService.java @@ -7,6 +7,8 @@ import java.util.List; import java.util.Map; import java.util.concurrent.atomic.AtomicInteger; +import com.dsic.gj_erp.bean.xiaochi.Device; +import com.dsic.gj_erp.mapper.xiaochi.DeviceMapper; import org.springframework.stereotype.Service; import com.dsic.gj_erp.bean.jhgk.DmYdjh; @@ -21,6 +23,11 @@ import lombok.AllArgsConstructor; public class KbanService { private final KbanMapper kbanMapper; + private final DeviceMapper deviceMapper; + + public List getDeviceStatus(){ + return deviceMapper.getDeviceStatus(); + } public Map zrcTable() { DateTime date = DateUtil.date(); diff --git a/src/main/java/com/dsic/gj_erp/service/jhgk/impl/DmSygdMxServiceImpl.java b/src/main/java/com/dsic/gj_erp/service/jhgk/impl/DmSygdMxServiceImpl.java index de60c37..10566a6 100644 --- a/src/main/java/com/dsic/gj_erp/service/jhgk/impl/DmSygdMxServiceImpl.java +++ b/src/main/java/com/dsic/gj_erp/service/jhgk/impl/DmSygdMxServiceImpl.java @@ -1064,6 +1064,7 @@ public class DmSygdMxServiceImpl extends ServiceImpl i //型材抛丸日期 val.stream().filter(item -> "16".equals(item.getKw())) + .filter(item->StrUtil.isNotEmpty(item.getSlrq())) .min(Comparator.comparing(DmSygdMx::getSlrq)).ifPresent(item -> dmYdjhxf.setXcpw(item.getSlrq())); //抛丸日期 diff --git a/src/main/java/com/dsic/gj_erp/service/xiaochi/XiaoChiService.java b/src/main/java/com/dsic/gj_erp/service/xiaochi/XiaoChiService.java index c8e6b9e..1d2aea4 100644 --- a/src/main/java/com/dsic/gj_erp/service/xiaochi/XiaoChiService.java +++ b/src/main/java/com/dsic/gj_erp/service/xiaochi/XiaoChiService.java @@ -6,12 +6,15 @@ import cn.hutool.core.util.StrUtil; import cn.hutool.cron.CronUtil; import cn.hutool.cron.task.Task; import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.dsic.gj_erp.bean.jhgk.DmYdjh; import com.dsic.gj_erp.bean.pgd.PgdQgjh; import com.dsic.gj_erp.bean.xiaochi.CutPlan; import com.dsic.gj_erp.bean.xiaochi.Device; import com.dsic.gj_erp.bean.xiaochi.XiaochiUser; import com.dsic.gj_erp.mapper.xiaochi.CutPlanMapper; +import com.dsic.gj_erp.mapper.xiaochi.DeviceMapper; import com.dsic.gj_erp.service.pgd.PgdQgjhService; +import com.dsic.gj_erp.service.zyjh.ZyjhService; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; @@ -24,9 +27,10 @@ import java.util.stream.Collectors; @AllArgsConstructor public class XiaoChiService{ - private final PgdQgjhService qgjhService; + private final ZyjhService zyjhService; private final CutPlanMapper mapper; + /** * 小池同步,先使用手动拉取方式,让钢加人员进行检查 * 后续改为自动拉取 @@ -40,50 +44,47 @@ public class XiaoChiService{ userMap.put(item.getEmployeeNumber(),item); }); Map deviceMap=new HashMap<>(); - devices.forEach(item->{ - deviceMap.put(item.getId(),item); - }); + devices.forEach(item-> deviceMap.put(item.getId(),item)); this.exe(userMap,deviceMap); } private void exe(Map userMap,Map deviceMap){ log.info("========小池同步开始==========="); - //todo sql查询时过滤划线数据 List cutPlans = mapper.getCutPlanList(DateUtil.lastMonth().toString(),DateUtil.today()) .stream().filter(item->StrUtil.isNotEmpty(item.getNestKakuyakuDate())).collect(Collectors.toList()); - List list=new ArrayList<>(); + List list=new ArrayList<>(); cutPlans.forEach(item->{ - PgdQgjh one = qgjhService.getOne(Wrappers.lambdaQuery() - .eq(PgdQgjh::getCzbh, item.getNestExtC02()) - .eq(PgdQgjh::getTlth, item.getNestNameSub1()) - .eq(PgdQgjh::getKw, item.getNestExtC03()) - .eq(PgdQgjh::getPl, item.getNestExtC04()) + DmYdjh one = zyjhService.getOne(Wrappers.lambdaQuery() + .eq(DmYdjh::getDcCh, item.getNestExtC02()) + .eq(DmYdjh::getTzbh, item.getNestNameSub1()) + .eq(DmYdjh::getKw, item.getNestExtC03()) + .eq(DmYdjh::getDcPl, item.getNestExtC04()) ); - if (ObjectUtil.isNotEmpty(one)){ - PgdQgjh _item=new PgdQgjh(); - _item.setId(one.getId()); - Optional.of(userMap.get(item.getNestExtC05())) - .ifPresent(user-> _item.setFkry(userMap.get(item.getNestExtC05()).getName())); - - Optional.of(deviceMap.get(item.getNestCutHo())) - .ifPresent(user-> _item.setQgsbbh(deviceMap.get(item.getNestCutHo()).getMachineName())); - _item.setFkrq(DateUtil.format(DateUtil.date(), "yyyy/MM/dd HH:mm:ss")); - _item.setQgksrq(item.getQgkssj()); - if (StrUtil.isNotEmpty(item.getQgjssj())){ - _item.setQgjsrq(item.getQgjssj()); - _item.setZt("09"); - } - list.add(_item); - } +// if (ObjectUtil.isNotEmpty(one)){ +// DmYdjh _item=new DmYdjh(); +// _item.setId(one.getId()); +// Optional.of(userMap.get(item.getNestExtC05())) +// .ifPresent(user-> _item.setFkry(userMap.get(item.getNestExtC05()).getName())); +// +// Optional.of(deviceMap.get(item.getNestCutHo())) +// .ifPresent(user-> _item.setQgsbbh(deviceMap.get(item.getNestCutHo()).getMachineName())); +// _item.setFkrq(DateUtil.format(DateUtil.date(), "yyyy/MM/dd HH:mm:ss")); +// _item.setQgksrq(item.getQgkssj()); +// if (StrUtil.isNotEmpty(item.getQgjssj())){ +// _item.setQgjsrq(item.getQgjssj()); +// _item.setZt("09"); +// } +// list.add(_item); +// } }); - qgjhService.updateBatchById(list,500); +// qgjhService.updateBatchById(list,500); log.info("========小池同步完成==========="); } private void exeAuto(Map userMap,Map deviceMap){ //CronUtil默认为分钟,目前未使用CronUtil.setMatchSecond(true)启动秒级任务,以下表示每30分钟执行一次 //每30分钟执行一次,获取小池今日加工并且未更新切割计划派工单的数据去更新派工单 - CronUtil.schedule("*/30 * * * * *", (Task) () -> { + CronUtil.schedule("* */30 * * * *", (Task) () -> { this.exe(userMap,deviceMap); }); CronUtil.start(); diff --git a/src/main/resources/mappers/xiaochi/CutPlanMapper.xml b/src/main/resources/mappers/xiaochi/CutPlanMapper.xml index b5d0096..bc09fa8 100644 --- a/src/main/resources/mappers/xiaochi/CutPlanMapper.xml +++ b/src/main/resources/mappers/xiaochi/CutPlanMapper.xml @@ -14,14 +14,13 @@ WHERE isnull(a.nest_ext_c02,'') != '' and a.nest_kakuyaku_date between #{st} and #{ed} and nest_cut_lengs>0 and not EXISTS( - select b.czbh as nest_ext_c02,b.kw as nest_ext_c03 ,b.pl as nest_ext_c04 - from pgd_qgjh b + select b.dc_ch as nest_ext_c02,b.kw as nest_ext_c03 ,b.dc_pl as nest_ext_c04 + from dm_ydjh b where - b.czbh=left(a.nest_ext_c02,datalength(a.nest_ext_c02)-1) - and b.tlth=a.nest_name_sub1 + b.dc_ch=left(a.nest_ext_c02,datalength(a.nest_ext_c02)-1) + and b.tzbh=a.nest_name_sub1 and b.kw=a.nest_ext_c03 - and b.pl=a.nest_ext_c04 - and (b.qgksrq is null or qgjsrq is null ) + and b.dcpl=a.nest_ext_c04 ) diff --git a/src/main/resources/mappers/xiaochi/DeviceMapper.xml b/src/main/resources/mappers/xiaochi/DeviceMapper.xml index deeaac6..270c3c3 100644 --- a/src/main/resources/mappers/xiaochi/DeviceMapper.xml +++ b/src/main/resources/mappers/xiaochi/DeviceMapper.xml @@ -2,4 +2,18 @@ +