From 26ead5eef59d03ff3b5197a92a6016f94e15eefb Mon Sep 17 00:00:00 2001 From: xiaoning <1097449274@qq.com> Date: Mon, 18 Dec 2023 10:32:35 +0800 Subject: [PATCH] xn --- .../com/dsic/gj_erp/bean/jhgk/DmQfxq.java | 83 ++++++---- .../controller/jhgk/DmQfxqController.java | 33 +++- .../controller/jhgk/DmSygdxqController.java | 28 +--- .../controller/jhgk/DmYdjhController.java | 21 +++ .../dsic/gj_erp/mapper/jhgk/DmYdjhMapper.java | 2 + .../gj_erp/service/jhgk/DmQfxqService.java | 5 +- .../gj_erp/service/jhgk/DmYdjhService.java | 1 + .../service/jhgk/impl/DmQfxqServiceImpl.java | 108 ++++++++++--- .../service/jhgk/impl/DmYdjhServiceImpl.java | 40 +++-- .../resources/mappers/jhgk/DmQfxqMapper.xml | 19 +-- .../resources/mappers/jhgk/DmYdjhMapper.xml | 151 +++++++++++++++--- 11 files changed, 356 insertions(+), 135 deletions(-) diff --git a/src/main/java/com/dsic/gj_erp/bean/jhgk/DmQfxq.java b/src/main/java/com/dsic/gj_erp/bean/jhgk/DmQfxq.java index 02d365f..28c10df 100644 --- a/src/main/java/com/dsic/gj_erp/bean/jhgk/DmQfxq.java +++ b/src/main/java/com/dsic/gj_erp/bean/jhgk/DmQfxq.java @@ -12,62 +12,87 @@ import java.io.Serializable; /** * <p> - * + * * </p> * * @author xn - * @since 2023-09-18 + * @since 2023-11-02 */ @Data @EqualsAndHashCode(callSuper = false) -@ApiModel(value="DmQfxq对象", description="") +@ApiModel(value="DmSygdxq对象", description="") public class DmQfxq implements Serializable { private static final long serialVersionUID=1L; - @ApiModelProperty(value = "船名") - @TableField("DC_CH") - private String dcCh; - - @ApiModelProperty(value = "批量") - @TableField("DC_PL") - private String dcPl; - @ApiModelProperty(value = "分段") @TableField("DC_FD") private String dcFd; - @ApiModelProperty(value = "配送场地") - private String pscd; + @ApiModelProperty(value = "总段号") + private String zdh; - @ApiModelProperty(value = "车间主管") - private String cjzg; + @ApiModelProperty(value = "大组极重") + private Double dzjz; - @ApiModelProperty(value = "大板") - private String db; + @ApiModelProperty(value = "总装部最新分段需求期") + private String zxfdxq; - @ApiModelProperty(value = "型材") - private String xc; + @ApiModelProperty(value = "钢料需求") + private String xzglxq; + private String dzglxq; + @ApiModelProperty(value = "钢料需求") + private String xzglxqOld; + private String dzglxqOld; - @ApiModelProperty(value = "T型材") - private String txc; + @ApiModelProperty(value = "X大板") + private String xdb; - @ApiModelProperty(value = "备注") - private String bz; + @ApiModelProperty(value = "X数控件") + private String xskj; - @ApiModelProperty(value = "状态") - private String zt; + @ApiModelProperty(value = "X平铁") + private String xpt; + + @ApiModelProperty(value = "X压弯") + private String xyw; + + @ApiModelProperty(value = "X型材") + private String xxc; + + @ApiModelProperty(value = "X二次装T型材") + private String xtxc; + + + @ApiModelProperty(value = "D曲板") + private String dqb; + + @ApiModelProperty(value = "D型材T") + private String dxc; + + @ApiModelProperty(value = "D散件") + private String dsj; + + @ApiModelProperty(value = "D大板") + private String ddb; @TableId(value = "id", type = IdType.ASSIGN_UUID) private String id; - @ApiModelProperty(value = "编制人员") - private String bzry; - @ApiModelProperty(value = "编制日期") - private String bzrq; + private String dcCh; + + private String dcPl; + + private String drr; + private String drrq; + private String zt; + private int drcs=1; + @ApiModelProperty(value = "审核人员") private String shry; @ApiModelProperty(value = "审核日期") private String shrq; + private String xqzt="0"; + } diff --git a/src/main/java/com/dsic/gj_erp/controller/jhgk/DmQfxqController.java b/src/main/java/com/dsic/gj_erp/controller/jhgk/DmQfxqController.java index b28a11f..7249583 100644 --- a/src/main/java/com/dsic/gj_erp/controller/jhgk/DmQfxqController.java +++ b/src/main/java/com/dsic/gj_erp/controller/jhgk/DmQfxqController.java @@ -1,6 +1,8 @@ package com.dsic.gj_erp.controller.jhgk; +import cn.hutool.core.bean.BeanUtil; +import cn.hutool.core.date.DateUtil; import cn.hutool.core.util.StrUtil; import com.alibaba.excel.EasyExcel; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; @@ -8,8 +10,13 @@ import com.dsic.gj_erp.annotation.AuthFunction; import com.dsic.gj_erp.bean.ResultBean; import com.dsic.gj_erp.bean.jcsj.DmCbxxp; import com.dsic.gj_erp.bean.jhgk.DmQfxq; +import com.dsic.gj_erp.bean.jhgk.DmSygdxq; +import com.dsic.gj_erp.bean.jhgk.excel.GdxqExcel; +import com.dsic.gj_erp.bean.jhgk.excel.GdxqExcel1; import com.dsic.gj_erp.bean.jhgk.excel.QfExcel; import com.dsic.gj_erp.exception.CustomException; +import com.dsic.gj_erp.listeners.ExcelGdxq1Listener; +import com.dsic.gj_erp.listeners.ExcelGdxqListener; import com.dsic.gj_erp.listeners.ExcelQFListener; import com.dsic.gj_erp.service.jcsj.DmCbxxpService; import com.dsic.gj_erp.service.jhgk.DmQfxqService; @@ -42,10 +49,10 @@ public class DmQfxqController { @AuthFunction public ResultBean getList(@RequestBody DmQfxq qfxq) { List<DmQfxq> list = service.list(new QueryWrapper<DmQfxq>() - .eq(StrUtil.isNotEmpty(qfxq.getDb()), "substring(db,0,8) ", qfxq.getDb()) + .eq(StrUtil.isNotEmpty(qfxq.getXzglxq()), "substring(Xzglxq,0,8) ", qfxq.getXzglxq()) .eq(StrUtil.isNotEmpty(qfxq.getZt()), "zt", qfxq.getZt()) .orderByAsc("DC_CH,cast(dc_pl as int),DC_FD")); - return new ResultBean(list); + return new ResultBean(); } @RequestMapping("/getCzxx") @@ -62,12 +69,24 @@ public class DmQfxqController { @PostMapping("/upload") @AuthFunction @ResponseBody - public ResultBean uploadQf(@RequestParam("file") MultipartFile file, String czbh, HttpServletRequest req) throws Exception, CustomException { + public ResultBean uploadQf(@RequestParam("file") MultipartFile file, HttpServletRequest req) throws Exception, CustomException { + + ExcelGdxqListener objectListener = new ExcelGdxqListener(); + ExcelGdxq1Listener objectListener1 = new ExcelGdxq1Listener(); - ExcelQFListener objectListener = new ExcelQFListener(); - EasyExcel.read(file.getInputStream(), QfExcel.class, objectListener).sheet(0).headRowNumber(1).doRead(); - List<QfExcel> objList = objectListener.getObjectList(); - return service.uploadQf(objList, czbh, req); + EasyExcel.read(file.getInputStream(), GdxqExcel.class, objectListener).sheet(0).headRowNumber(1).doRead(); + List<GdxqExcel> objList = objectListener.getObjectList(); + + EasyExcel.read(file.getInputStream(), GdxqExcel1.class, objectListener1).sheet(1).headRowNumber(1).doRead(); + List<GdxqExcel1> objList1 = objectListener1.getObjectList(); + + List<DmQfxq> list = BeanUtil.copyToList(objList, DmQfxq.class); + List<DmQfxq> list1 = BeanUtil.copyToList(objList1, DmQfxq.class); + String username=(String) req.getAttribute("yhms"); + String day= DateUtil.format(DateUtil.date(), "yyyy/MM/dd"); + service.saveXzList(list,username,day); + service.saveDzList(list1,username,day); + return new ResultBean(); } //保存 diff --git a/src/main/java/com/dsic/gj_erp/controller/jhgk/DmSygdxqController.java b/src/main/java/com/dsic/gj_erp/controller/jhgk/DmSygdxqController.java index b0d5085..40d5949 100644 --- a/src/main/java/com/dsic/gj_erp/controller/jhgk/DmSygdxqController.java +++ b/src/main/java/com/dsic/gj_erp/controller/jhgk/DmSygdxqController.java @@ -49,33 +49,7 @@ public class DmSygdxqController { .ge(StrUtil.isNotEmpty(map.get("beginTime")), "xzglxq", DateUtil.beginOfMonth(DateUtil.parseDate(map.get("beginTime")))) .le(StrUtil.isNotEmpty(map.get("endTime")), "xzglxq", DateUtil.endOfMonth(DateUtil.parseDate(map.get("endTime")))) .orderByAsc("dc_ch, cast(dc_pl as int),xzglxq")); - if (ObjUtil.isEmpty(list)) { - return new ResultBean(); - } -// Map<String, List<DmSygdxq>> groupByZl = list.stream().collect(Collectors.groupingBy(DmSygdxq::getZl)); - - Map<String, Map<String, Double>> m = - list.stream() - .filter(x -> Objects.nonNull(x.getXzglxq()) && Objects.nonNull(x.getDzjz())) - .collect(Collectors.groupingBy(DmSygdxq::getDcCh - , Collectors.groupingBy(x -> x.getXzglxq().substring(5, 7) - , Collectors.summingDouble(l -> l.getDzjz()) - ))); - - List<Json> list1 = new ArrayList<>(); - for (String ch : m.keySet()) { - String str = "\"dcCh\":" +"\"" +ch+"\"" ; - for (String month : m.get(ch).keySet()) { - str += ",\"yf" + month + "\":\"" + m.get(ch).get(month)+"\""; - } - str = "{" + str + "}"; - Json j = new Json(str); - list1.add(j); - } - Map map1 = new HashMap(); - map1.put("hz", list1); - map1.put("list", list); - return new ResultBean(map1); + return new ResultBean(list); } @PostMapping("/upload") diff --git a/src/main/java/com/dsic/gj_erp/controller/jhgk/DmYdjhController.java b/src/main/java/com/dsic/gj_erp/controller/jhgk/DmYdjhController.java index 34da123..8d1504f 100644 --- a/src/main/java/com/dsic/gj_erp/controller/jhgk/DmYdjhController.java +++ b/src/main/java/com/dsic/gj_erp/controller/jhgk/DmYdjhController.java @@ -4,6 +4,7 @@ package com.dsic.gj_erp.controller.jhgk; import cn.hutool.core.date.DateUtil; import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.dsic.gj_erp.annotation.AuthFunction; import com.dsic.gj_erp.bean.ResultBean; import com.dsic.gj_erp.bean.jhgk.DmYdjh; @@ -15,6 +16,7 @@ import org.springframework.web.bind.annotation.RestController; import java.util.List; import java.util.Map; +import java.util.stream.Collectors; /** * <p> @@ -36,6 +38,7 @@ public class DmYdjhController { public ResultBean getList(@RequestBody Map<String, String> map){ List<DmYdjh> list= service.list(new QueryWrapper<DmYdjh>() .eq(StrUtil.isNotEmpty(map.get("dcCh")),"dc_ch",map.get("dcCh")) + .eq(StrUtil.isNotEmpty(map.get("zt")),"zt",map.get("zt")) .ge(StrUtil.isNotEmpty(map.get("yf")), "jssj", DateUtil.beginOfMonth(DateUtil.parseDate(map.get("yf")))) .le(StrUtil.isNotEmpty(map.get("yf")), "jssj", DateUtil.endOfMonth(DateUtil.parseDate(map.get("yf")))) .orderByAsc("jssj,dc_ch,dc_pl") @@ -54,5 +57,23 @@ public class DmYdjhController { public ResultBean hz(@RequestBody List<DmYdjh> list){ return new ResultBean(service.hz(list)); } + + @RequestMapping("/tj") + @AuthFunction + public ResultBean tj(@RequestBody List<DmYdjh> list){ + List<String> idList=list.stream().map(DmYdjh::getId).collect(Collectors.toList()); + service.update(new UpdateWrapper<DmYdjh>().set("zt","1") + .in( "id",idList) + ); + return new ResultBean(); + } + + @RequestMapping("/xf") + @AuthFunction + public ResultBean xf(@RequestBody List<DmYdjh> list){ + + return new ResultBean(); + } + } diff --git a/src/main/java/com/dsic/gj_erp/mapper/jhgk/DmYdjhMapper.java b/src/main/java/com/dsic/gj_erp/mapper/jhgk/DmYdjhMapper.java index 0f81bd5..212c33d 100644 --- a/src/main/java/com/dsic/gj_erp/mapper/jhgk/DmYdjhMapper.java +++ b/src/main/java/com/dsic/gj_erp/mapper/jhgk/DmYdjhMapper.java @@ -25,4 +25,6 @@ public interface DmYdjhMapper extends BaseMapper<DmYdjh> { List<PgdSljh> getSljh(@Param("begin") String begin, @Param("end") String end); List<PgdPwjh> getPwjh(@Param("begin") String begin, @Param("end") String end); List<PgdQgjh> getQgjh(@Param("begin") String begin, @Param("end") String end); + int xfbc(List<String> ids); + int tqlj(List<String> ids); } diff --git a/src/main/java/com/dsic/gj_erp/service/jhgk/DmQfxqService.java b/src/main/java/com/dsic/gj_erp/service/jhgk/DmQfxqService.java index cf70954..c61fc60 100644 --- a/src/main/java/com/dsic/gj_erp/service/jhgk/DmQfxqService.java +++ b/src/main/java/com/dsic/gj_erp/service/jhgk/DmQfxqService.java @@ -4,6 +4,7 @@ package com.dsic.gj_erp.service.jhgk; import com.baomidou.mybatisplus.extension.service.IService; import com.dsic.gj_erp.bean.ResultBean; import com.dsic.gj_erp.bean.jhgk.DmQfxq; +import com.dsic.gj_erp.bean.jhgk.DmSygdxq; import com.dsic.gj_erp.bean.jhgk.excel.QfExcel; import javax.servlet.http.HttpServletRequest; @@ -20,5 +21,7 @@ import java.util.Map; */ public interface DmQfxqService extends IService<DmQfxq> { - ResultBean uploadQf(List<QfExcel> list, String project, HttpServletRequest req); + + void saveXzList(List<DmQfxq> list, String username, String day); + void saveDzList(List<DmQfxq> list, String username, String day); } diff --git a/src/main/java/com/dsic/gj_erp/service/jhgk/DmYdjhService.java b/src/main/java/com/dsic/gj_erp/service/jhgk/DmYdjhService.java index e3a631b..b2535d6 100644 --- a/src/main/java/com/dsic/gj_erp/service/jhgk/DmYdjhService.java +++ b/src/main/java/com/dsic/gj_erp/service/jhgk/DmYdjhService.java @@ -21,4 +21,5 @@ public interface DmYdjhService extends IService<DmYdjh> { List<DmSygdMx> tjydjh(); Map<String,Object> hz(List<DmYdjh> ydjhList); + void xf(List<DmYdjh> ydjhList); } diff --git a/src/main/java/com/dsic/gj_erp/service/jhgk/impl/DmQfxqServiceImpl.java b/src/main/java/com/dsic/gj_erp/service/jhgk/impl/DmQfxqServiceImpl.java index ee09914..aeaca4c 100644 --- a/src/main/java/com/dsic/gj_erp/service/jhgk/impl/DmQfxqServiceImpl.java +++ b/src/main/java/com/dsic/gj_erp/service/jhgk/impl/DmQfxqServiceImpl.java @@ -2,15 +2,15 @@ package com.dsic.gj_erp.service.jhgk.impl; import cn.hutool.core.bean.BeanUtil; -import cn.hutool.core.date.DateUtil; +import cn.hutool.core.util.ObjUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.dsic.gj_erp.bean.ResultBean; -import com.dsic.gj_erp.bean.jcsj.EmGcrl; import com.dsic.gj_erp.bean.jhgk.DmQfxq; +import com.dsic.gj_erp.bean.jhgk.DmSygdxq; import com.dsic.gj_erp.bean.jhgk.DmYdjh; import com.dsic.gj_erp.bean.jhgk.excel.QfExcel; -import com.dsic.gj_erp.mapper.jcsj.EmGcrlMapper; import com.dsic.gj_erp.mapper.jhgk.DmQfxqMapper; import com.dsic.gj_erp.service.jhgk.DmQfxqService; import com.dsic.gj_erp.service.jhgk.DmYdjhService; @@ -33,31 +33,91 @@ import java.util.stream.Collectors; @Service public class DmQfxqServiceImpl extends ServiceImpl<DmQfxqMapper, DmQfxq> implements DmQfxqService { - - @Resource - private EmGcrlMapper gcrlMapper; - @Resource private DmYdjhService ydjhService; @Override - @Transactional(rollbackFor = Exception.class) - public ResultBean uploadQf(List<QfExcel> list, String project, HttpServletRequest req) { - List<DmQfxq> listForSave = new ArrayList<>(); - for (QfExcel q : list) { - DmQfxq a = new DmQfxq(); - BeanUtil.copyProperties(q, a); - String pl = a.getDcPl().length() == 1 ? "00" + a.getDcPl() : a.getDcPl().length() == 2 ? "0" + a.getDcPl() : a.getDcPl(); - a.setDcPl(pl); - a.setBzry((String) req.getAttribute("yhms")); - a.setBzrq(DateUtil.format(DateUtil.date(), "yyyy/MM/dd")); - listForSave.add(a); - this.remove(new QueryWrapper<DmQfxq>().eq("Dc_ch", a.getDcCh()).eq("Dc_pl", a.getDcPl()).eq("Dc_fd", a.getDcFd())); - } - this.saveBatch(listForSave); - //生成月度计划信息 - generateYdjh(listForSave); - return new ResultBean(); + @Transactional + public void saveXzList(List<DmQfxq> list, String username, String day){ + list.forEach(l->{ + l.setDcPl(l.getDcPl().length() == 1 ? "00" + l.getDcPl() : l.getDcPl().length() == 2 ? "0" + l.getDcPl() : l.getDcPl()); + DmQfxq qfxq=this.getOne(new QueryWrapper<DmQfxq>() + .eq("dc_ch",l.getDcCh()) + .eq("dc_pl",l.getDcPl()) + .eq("DC_FD",l.getDcFd()) + ); + if (ObjUtil.isNotEmpty(qfxq)){ + l.setDrcs(qfxq.getDrcs()+1); + l.setXzglxqOld(qfxq.getXzglxq()); + l.setDrr(username); + l.setDrrq(day); + //状态 2拖期 1提前 + if (l.getXzglxq().compareTo(qfxq.getXzglxq())>0){ + l.setXqzt("2"); + } + if (l.getXzglxq().compareTo(qfxq.getXzglxq())<0){ + l.setXqzt("1"); + } + this.update(new UpdateWrapper<DmQfxq>() + .set("xzglxq",l.getXzglxq()) + .set("xzglxq_old",l.getXzglxqOld()) + .set("xdb",l.getXdb()) + .set("xskj",l.getXskj()) + .set("xpt",l.getXpt()) + .set("xyw",l.getXyw()) + .set("xxc",l.getXxc()) + .set("xtxc",l.getXtxc()) + .set("drcs",l.getDrcs()) + .set("xqzt",l.getXqzt()) + .set("drrq",l.getDrrq()) + .set("drr",l.getDrr()) + .eq("dc_ch",l.getDcCh()) + .eq("dc_pl",l.getDcPl()) + .eq("DC_FD",l.getDcFd()) + ); + }else { + l.setDrr(username); + l.setDrrq(day); + this.save(l); + } + + + }); + } + + @Override + @Transactional + public void saveDzList(List<DmQfxq> list,String username,String day){ + list.forEach(l->{ + l.setDcPl(l.getDcPl().length() == 1 ? "00" + l.getDcPl() : l.getDcPl().length() == 2 ? "0" + l.getDcPl() : l.getDcPl()); + DmQfxq qfxq=this.getOne(new QueryWrapper<DmQfxq>() + .eq("dc_ch",l.getDcCh()) + .eq("dc_pl",l.getDcPl()) + .eq("DC_FD",l.getDcFd()) + ); + if (ObjUtil.isNotEmpty(qfxq)){ + l.setDrr(username); + l.setDrrq(day); + this.update(new UpdateWrapper<DmQfxq>() + .set("dzglxq",l.getDzglxq()) + .set("dzglxq_old",qfxq.getDzglxq()) + .set("dqb",l.getDqb()) + .set("dxc",l.getDxc()) + .set("dsj",l.getDsj()) + .set("ddb",l.getDdb()) + .set("drrq",l.getDrrq()) + .set("drr",l.getDrr()) + .eq("dc_ch",l.getDcCh()) + .eq("dc_pl",l.getDcPl()) + .eq("DC_FD",l.getDcFd()) + ); + }else { + l.setDrr(username); + l.setDrrq(day); + this.save(l); + } + }); + generateYdjh(list); } /** diff --git a/src/main/java/com/dsic/gj_erp/service/jhgk/impl/DmYdjhServiceImpl.java b/src/main/java/com/dsic/gj_erp/service/jhgk/impl/DmYdjhServiceImpl.java index 7712971..d9f27cb 100644 --- a/src/main/java/com/dsic/gj_erp/service/jhgk/impl/DmYdjhServiceImpl.java +++ b/src/main/java/com/dsic/gj_erp/service/jhgk/impl/DmYdjhServiceImpl.java @@ -3,8 +3,10 @@ package com.dsic.gj_erp.service.jhgk.impl; import cn.hutool.core.date.DateUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.dsic.gj_erp.bean.jcsj.EmGcrl; +import com.dsic.gj_erp.bean.jcsj.EmSbcnp; import com.dsic.gj_erp.bean.jhgk.DmQfxq; import com.dsic.gj_erp.bean.jhgk.DmSygdMx; import com.dsic.gj_erp.bean.jhgk.DmYdjh; @@ -55,7 +57,7 @@ public class DmYdjhServiceImpl extends ServiceImpl<DmYdjhMapper, DmYdjh> impleme //3.根据前方需求期,重新为三月滚动明细排产(板),排产后的数据添加到月度计划,并且反写数据到三月滚动明细 // List<DmQfxq> qfxqList= qfxqService.list(new QueryWrapper<DmQfxq>().eq("substring(db,0,8) ", DateUtil.format(DateUtil.nextMonth(),"yyyy/MM"))); int i = qfxqService.count(new QueryWrapper<DmQfxq>() - .eq("substring(db,0,8) ", "2023/08")); + .eq("substring(xzglxq,0,8) ", "2023/08")); if (i < 1) { System.out.println("下月的前方需求信息未导入!"); return null; @@ -83,35 +85,37 @@ public class DmYdjhServiceImpl extends ServiceImpl<DmYdjhMapper, DmYdjh> impleme String end ="2023/08/31"; //图纸计划 - List<PgdTzjh> tzjhList=tzjhService.list(new QueryWrapper<PgdTzjh>().between("qgxqrq",begin,end)); + List<PgdTzjh> tzjhList=tzjhService.list(new QueryWrapper<PgdTzjh>().between("qgxqrq",begin,end).orderByAsc("czbh,pl,qgxqrq")); if (tzjhList.size()<1){ baseMapper.getTzjh(begin,end); - tzjhList=tzjhService.list(new QueryWrapper<PgdTzjh>().between("qgxqrq",begin,end)); + tzjhList=tzjhService.list(new QueryWrapper<PgdTzjh>().between("qgxqrq",begin,end) + .orderByAsc("czbh,pl,qgxqrq") + ); } //订货清单 - List<PgdDh> dhList=dhService.list(new QueryWrapper<PgdDh>().between("slxqrq",begin,end)); + List<PgdDh> dhList=dhService.list(new QueryWrapper<PgdDh>().between("slxqrq",begin,end).orderByAsc("czbh,slxqrq")); if (dhList.size()<1){ baseMapper.getDhjh(begin,end); - dhList=dhService.list(new QueryWrapper<PgdDh>().between("slxqrq",begin,end)); + dhList=dhService.list(new QueryWrapper<PgdDh>().between("slxqrq",begin,end).orderByAsc("czbh,slxqrq")); } //上料计划 - List<PgdSljh> slList=slService.list(new QueryWrapper<PgdSljh>().between("sljhrq",begin,end)); + List<PgdSljh> slList=slService.list(new QueryWrapper<PgdSljh>().between("sljhrq",begin,end).orderByAsc("czbh,pl,sljhrq")); if (slList.size()<1){ baseMapper.getSljh(begin,end); - slList=slService.list(new QueryWrapper<PgdSljh>().between("sljhrq",begin,end)); + slList=slService.list(new QueryWrapper<PgdSljh>().between("sljhrq",begin,end).orderByAsc("czbh,pl,sljhrq")); } //抛丸计划 - List<PgdPwjh> pwList=pwService.list(new QueryWrapper<PgdPwjh>().between("pwjhrq",begin,end)); + List<PgdPwjh> pwList=pwService.list(new QueryWrapper<PgdPwjh>().between("pwjhrq",begin,end).orderByAsc("czbh,pl,pwjhrq")); if (pwList.size()<1){ baseMapper.getPwjh(begin,end); - pwList=pwService.list(new QueryWrapper<PgdPwjh>().between("pwjhrq",begin,end)); + pwList=pwService.list(new QueryWrapper<PgdPwjh>().between("pwjhrq",begin,end).orderByAsc("czbh,pl,pwjhrq")); } //切割计划 - List<PgdQgjh> qgList=qgService.list(new QueryWrapper<PgdQgjh>().between("qgjhrq",begin,end)); + List<PgdQgjh> qgList=qgService.list(new QueryWrapper<PgdQgjh>().between("qgjhrq",begin,end).orderByAsc("czbh,pl,qgjhrq")); if (qgList.size()<1){ baseMapper.getQgjh(begin,end); - qgList=qgService.list(new QueryWrapper<PgdQgjh>().between("qgjhrq",begin,end)); + qgList=qgService.list(new QueryWrapper<PgdQgjh>().between("qgjhrq",begin,end).orderByAsc("czbh,pl,qgjhrq")); } map.put("tzjhList",tzjhList); map.put("dhList",dhList); @@ -121,4 +125,18 @@ public class DmYdjhServiceImpl extends ServiceImpl<DmYdjhMapper, DmYdjh> impleme return map; } //下发 派工单状态改为编制 生成零件信息 + @Override + public void xf(List<DmYdjh> ydjhList){ + + //修改状态 + List<String> idList=ydjhList.stream().map(DmYdjh::getId).collect(Collectors.toList()); + this.update(new UpdateWrapper<DmYdjh>().set("zt","2") + .in( "id",idList) + ); + //修改汇总状态 改为 编制 + baseMapper.xfbc(idList); + //生成对应零件信息 bom->tzjhLj + baseMapper.tqlj(idList); + } + } diff --git a/src/main/resources/mappers/jhgk/DmQfxqMapper.xml b/src/main/resources/mappers/jhgk/DmQfxqMapper.xml index e0e869e..3eef070 100644 --- a/src/main/resources/mappers/jhgk/DmQfxqMapper.xml +++ b/src/main/resources/mappers/jhgk/DmQfxqMapper.xml @@ -2,25 +2,12 @@ <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.dsic.gj_erp.mapper.jhgk.DmQfxqMapper"> - <!-- 通用查询映射结果 --> - <resultMap id="BaseResultMap" type="com.dsic.gj_erp.bean.jhgk.DmQfxq"> - <id column="id" property="id" /> - <result column="DC_CH" property="dcCh" /> - <result column="DC_PL" property="dcPl" /> - <result column="DC_FD" property="dcFd" /> - <result column="pscd" property="pscd" /> - <result column="cjzg" property="cjzg" /> - <result column="db" property="db" /> - <result column="xc" property="xc" /> - <result column="txc" property="txc" /> - <result column="bz" property="bz" /> - <result column="zt" property="zt" /> - </resultMap> + <select id="getYdjh" resultType="com.dsic.gj_erp.bean.jhgk.DmYdjh" parameterType="arraylist"> SELECT dm_qfxq.DC_CH,dm_qfxq.DC_PL, - dm_qfxq.db,dm_qfxq.xc,dm_qfxq.txc, +-- dm_qfxq.xzglxq, dm_sygd_mx.dc_ch1, dm_sygd_mx.LQLB, dm_sygd_mx.tzbh, @@ -91,6 +78,6 @@ dm_qfxq left JOIN dm_sygd_mx on dm_qfxq.dc_pl=dm_sygd_mx.dc_pl and dm_qfxq.DC_CH=dm_sygd_mx.dc_ch - ORDER BY dm_qfxq.db,dm_qfxq.DC_CH,dm_qfxq.DC_PL + ORDER BY dm_qfxq.xzglxq,dm_qfxq.DC_CH,dm_qfxq.DC_PL </select> </mapper> diff --git a/src/main/resources/mappers/jhgk/DmYdjhMapper.xml b/src/main/resources/mappers/jhgk/DmYdjhMapper.xml index e268efc..4a4eb52 100644 --- a/src/main/resources/mappers/jhgk/DmYdjhMapper.xml +++ b/src/main/resources/mappers/jhgk/DmYdjhMapper.xml @@ -144,15 +144,15 @@ dm_sygd_mx.bcqpyld, dm_sygd_mx.ylbhgg,t.xqsj as jssj from ( SELECT DC_CH,DC_PL,DC_FD,tzbh,xqsj,rn FROM - ( SELECT dm_qfxq.db as xqsj,dm_bom.tzbh, + ( SELECT dm_qfxq.xzglxq as xqsj,dm_bom.tzbh, dm_qfxq.DC_CH,dm_qfxq.DC_PL,dm_qfxq.DC_FD, - row_number() over(partition by dm_qfxq.DC_CH,dm_qfxq.DC_PL,dm_bom.tzbh order by dm_qfxq.db ) rn + row_number() over(partition by dm_qfxq.DC_CH,dm_qfxq.DC_PL,dm_bom.tzbh order by dm_qfxq.xzglxq ) rn from dm_qfxq LEFT JOIN dm_bom on dm_bom.dcch = dm_qfxq.DC_CH and dm_bom.pl = dm_qfxq.DC_PL and dm_bom.fd = dm_qfxq.DC_FD where - substring(dm_qfxq.db, 0, 8) =#{nextMonth}) r where r.rn=1 + substring(dm_qfxq.xzglxq, 0, 8) =#{nextMonth}) r where r.rn=1 )t LEFT JOIN dm_sygd_mx on dm_sygd_mx.dc_ch=t.DC_CH and dm_sygd_mx.dc_pl=t.DC_PL and dm_sygd_mx.tzbh=t.TZBH order BY t.xqsj,t.DC_CH,t.DC_PL @@ -181,26 +181,33 @@ dm_czplp_new.jsq_lqb as lqbjsrq, dm_czplp_new.xfq_tlt as tltxfrq, dm_czplp_new.jsq_tlt as tltjsrq, - dm_ydjh.qgrq as qgxqrq, - dm_ydjh.jssj as qfxqrqxz, - dm_ydjh.gjjs_dz as qfxqrqdz, + MIN(dm_ydjh.qgrq) as qgxqrq, + MIN(dm_ydjh.jssj) as qfxqrqxz, + MIN(dm_ydjh.gjjs_dz) as qfxqrqdz, REPLACE(CAST(CAST(NEWID()AS BINARY(10)) + CAST(GETDATE() AS BINARY(6)) AS UNIQUEIDENTIFIER),'-','') as id - from dm_ydjh LEFT JOIN - (SELECT dm_czplp_new.DC_CH,dm_czplp_new.DC_PL,dm_czplp_new.jsq_lqb,dm_czplp_new.jsq_tlt,dm_czplp_new.xfq_lqb,dm_czplp_new.xfq_tlt,dm_czplp_new.jsq_ptb,dm_czplp_new.xfq_ptb - from dm_czplp_new - GROUP BY dm_czplp_new.DC_CH,dm_czplp_new.DC_PL,dm_czplp_new.jsq_lqb,dm_czplp_new.jsq_tlt,dm_czplp_new.xfq_lqb,dm_czplp_new.xfq_tlt,dm_czplp_new.jsq_ptb,dm_czplp_new.xfq_ptb) - dm_czplp_new + from + dm_ydjh + LEFT JOIN dm_czplp_new on dm_ydjh.dc_ch=dm_czplp_new.DC_CH and dm_ydjh.dc_pl=dm_czplp_new.DC_pl WHERE dm_ydjh.qgrq BETWEEN #{begin} and #{end} + GROUP BY + dm_ydjh.dc_ch, + dm_ydjh.dc_pl, + dm_ydjh.dc_fd, + dm_czplp_new.xfq_lqb, + dm_czplp_new.jsq_lqb, + dm_czplp_new.xfq_tlt, + dm_czplp_new.jsq_tlt </select> <select id="getDhjh" resultType="com.dsic.gj_erp.bean.pgd.PgdDh"> insert into pgd_dh (id, czbh, + pl, dhqdh, wpcz, slxqrq, @@ -216,7 +223,7 @@ SELECT REPLACE(CAST(CAST(NEWID()AS BINARY(10)) + CAST(GETDATE() AS BINARY(6)) AS UNIQUEIDENTIFIER),'-','') as id, dm_ydjh.dc_ch as czbh, - dm_czplp_new.dhqd as dhqdh, + dm_ydjh.dhqd as dhqdh, dm_ydjh.jssj as qfxqrqxz, dm_ydjh.gjjs_dz as qfxqrqdz, dm_ydjh.slrq as slxqrq, @@ -230,13 +237,6 @@ dhxx.RKXH as wpcz from dm_ydjh LEFT JOIN - (SELECT DC_CH, DC_PL, dhqd - from dm_czplp_new - GROUP BY DC_CH, DC_PL, dhqd) dm_czplp_new - on - dm_ydjh.dc_ch = dm_czplp_new.DC_CH and - dm_ydjh.dc_pl = dm_czplp_new.DC_pl - LEFT JOIN (select MS_DDJBP.CGFLM, MS_DDJBP.DDH, MS_DDJBP.ddmc as ddmc, @@ -261,7 +261,7 @@ and im_crklsz.HDLX <![CDATA[ <> ]]> '99' GROUP BY MS_DDJBP.CGFLM, MS_DDJBP.DDH, MS_DDJBP.ddmc, MS_DDMXP.dc_ch, MS_DDMXP.WPHD, MS_DDMXP.WPCD, MS_DDMXP.WPKD, MS_DDMXP.RKXH, MS_DDJBP.dhqdh) dhxx - on dhxx.dhqdh = dm_czplp_new.dhqd + on dhxx.dhqdh = dm_ydjh.dhqd where dm_ydjh.slrq BETWEEN #{begin} and #{end} ORDER BY dm_ydjh.dc_ch, dm_ydjh.dc_pl @@ -311,6 +311,7 @@ dm_ydjh.dc_pl=IM_CKWPKWP.DC_pl and dm_ydjh.tzbh=IM_CKWPKWP.DC_th WHERE dm_ydjh.slrq BETWEEN #{begin} and #{end} + </select> <select id="getPwjh" resultType="com.dsic.gj_erp.bean.pgd.PgdPwjh"> @@ -397,4 +398,114 @@ from dm_ydjh where dm_ydjh.qgrq BETWEEN #{begin} and #{end} </select> + <update id="xfbc" parameterType="arraylist"> + update pgd_tzjh + set zt='01' + from pgd_tzjh,dm_ydjh + where pgd_tzjh.czbh= dm_ydjh.dc_ch and pgd_tzjh.pl=dm_ydjh.dc_pl + and dm_ydjh.id in + <foreach collection="ids" index="index" item="item" open="(" separator="," close=");"> + #{item} + </foreach> + + update pgd_dh + set zt='01' + from pgd_dh,dm_ydjh + where pgd_dh.czbh= dm_ydjh.dc_ch and pgd_dh.dhqdh=dm_ydjh.dhqdh + and dm_ydjh.id in + <foreach collection="ids" index="index" item="item" open="(" separator="," close=");"> + #{item} + </foreach> + + update pgd_sljh + set zt='01' + from pgd_sljh,dm_ydjh + where pgd_sljh.czbh= dm_ydjh.dc_ch and pgd_sljh.pl=dm_ydjh.dc_pl and pgd_sljh.tlth=dm_ydjh.tzbh + and dm_ydjh.id in + <foreach collection="ids" index="index" item="item" open="(" separator="," close=");"> + #{item} + </foreach> + + update pgd_pwjh + set zt='01' + from pgd_pwjh,dm_ydjh + where pgd_pwjh.czbh= dm_ydjh.dc_ch and pgd_pwjh.pl=dm_ydjh.dc_pl and pgd_pwjh.tlth=dm_ydjh.tzbh + and dm_ydjh.id in + <foreach collection="ids" index="index" item="item" open="(" separator="," close=");"> + #{item} + </foreach> + + update pgd_qgjh + set zt='01' + from pgd_qgjh,dm_ydjh + where pgd_qgjh.czbh= dm_ydjh.dc_ch and pgd_qgjh.pl=dm_ydjh.dc_pl and pgd_qgjh.tlth=dm_ydjh.tzbh + and dm_ydjh.id in + <foreach collection="ids" index="index" item="item" open="(" separator="," close=");"> + #{item} + </foreach> + + </update> + <insert id="tqlj" parameterType="arraylist"> + insert into dm_ydjh_lj ( + id, + czbh, + pl, + fd, + kw, + zl, + tlth, + ptblx, + ljbh, + ljmc, + ljgg, + ljcz, + wpfl, + jldw, + sl, + qfxqrqxz, + qfxqrqdz, + gylx, + pklx, + pkcd, + pkbs, + dmbs, + dmcd, + qbs + ) + SELECT + REPLACE(CAST(CAST(NEWID()AS BINARY(10)) + CAST(GETDATE() AS BINARY(6)) AS UNIQUEIDENTIFIER),'-','') as id, + dm_ydjh.dc_ch as czbh, + dm_ydjh.dc_pl as pl, + dm_bom.fd as fd, + dm_ydjh.kw as kw, + dm_bom.zl as zl, + dm_bom.tzbh as tlth, + '' as ptblx, + dm_bom.ljbh as ljbh, + '' as ljmc, + dm_bom.wpgg as ljgg, + dm_bom.wpcz as ljcz, + '' as wpfl, + '' as jldw, + dm_bom.ljsl as sl, + dm_qfxq.xzglxq as qfxqrqxz, + dm_qfxq.dzglxq as qfxqrqdz, + '' as gylx, + dm_bom.pklx as pklx, + dm_bom.pkcd as pkcd, + dm_bom.pkbs as pkbs, + dm_bom.dmbs as dmbs, + dm_bom.dmcd as dmcd, + dm_bom.qbs as qbs + from dm_ydjh,dm_bom + LEFT JOIN dm_qfxq on dm_qfxq.DC_CH=dm_bom.dcch and dm_qfxq.DC_PL=dm_bom.pl and dm_qfxq.DC_FD=dm_bom.fd + WHERE + dm_ydjh.dc_ch= dm_bom.dcch + and dm_ydjh.dc_pl=dm_bom.pl + and dm_ydjh.tzbh=dm_bom.tzbh + and dm_ydjh.id in + <foreach collection="ids" index="index" item="item" open="(" separator="," close=");"> + #{item} + </foreach> + </insert> </mapper>