From 572ab4fac9cb6e6bad7093963244451f7fdbf17d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=91=A3=E5=93=B2=E5=A5=87?= <13840175730@139.com> Date: Wed, 23 Oct 2024 11:50:08 +0800 Subject: [PATCH] =?UTF-8?q?1.=E8=B0=83=E6=95=B4=E7=BA=BF=E8=A1=A8=E8=AE=A1?= =?UTF-8?q?=E5=88=92=E5=AF=BC=E5=85=A5,=E6=8C=89=E6=96=87=E4=BB=B6?= =?UTF-8?q?=E5=AF=BC=E5=85=A5=E5=B9=B4=E4=BB=BD=E5=88=92=E5=88=86=E6=96=87?= =?UTF-8?q?=E4=BB=B6=E5=90=8D=202.=E4=BF=AE=E5=A4=8D=E6=9C=88=E5=BA=A6?= =?UTF-8?q?=E8=AE=A1=E5=88=92=E6=8F=90=E4=BA=A4=E5=AE=A1=E6=89=B9=E5=8A=9F?= =?UTF-8?q?=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/jhgk/DmSygdController.java | 19 +------ .../gj_erp/service/jhgk/DmSygdMxService.java | 1 + .../jhgk/impl/DmSygdMxServiceImpl.java | 55 +++++++++++-------- .../service/jhgk/impl/DmXbjhServiceImpl.java | 37 +++++++++---- src/main/resources/application-xbjh.yml | 1 + 5 files changed, 62 insertions(+), 51 deletions(-) create mode 100644 src/main/resources/application-xbjh.yml diff --git a/src/main/java/com/dsic/gj_erp/controller/jhgk/DmSygdController.java b/src/main/java/com/dsic/gj_erp/controller/jhgk/DmSygdController.java index 34ae684..d43efcb 100644 --- a/src/main/java/com/dsic/gj_erp/controller/jhgk/DmSygdController.java +++ b/src/main/java/com/dsic/gj_erp/controller/jhgk/DmSygdController.java @@ -41,23 +41,8 @@ public class DmSygdController { @RequestMapping("/getList") @AuthFunction public ResultBean getList(@RequestBody DmSygd sygd){ -// List list= service.list(new QueryWrapper() -// .eq(StrUtil.isNotEmpty(sygd.getGdZt()),"gd_zt",sygd.getGdZt()) -// .ge(StrUtil.isNotEmpty(sygd.getBeginTime()),"gjjs_xz",sygd.getBeginTime()) -// .le(StrUtil.isNotEmpty(sygd.getEndTime()),"gjjs_xz",sygd.getEndTime()) -// .orderByAsc("sl_sj,dc_ch,dc_pl") -// ); - List list= mxService.tqSygd1(sygd.getBeginTime(),sygd.getEndTime()); - Map map=new HashMap(); -// if (list.size()>0){ -// String beginTime=list.get(0).getGjjsXz(); -// String endTime=list.get(list.size()-1).getGjjsXz(); -// List emGcrls= gcrlService.list(new QueryWrapper().select("gl").between("gl",beginTime,endTime).eq("xxr","0")); -// List gcrl = emGcrls.stream().map(EmGcrl::getGl).collect(Collectors.toList()); -// map.put("gcrl",gcrl); -// } - map.put("list",list); - return new ResultBean(map); + List list= mxService.tqSygd2(sygd.getBeginTime(),sygd.getEndTime(),sygd.getGdZt()); + return new ResultBean(list); } @PostMapping("/upload") diff --git a/src/main/java/com/dsic/gj_erp/service/jhgk/DmSygdMxService.java b/src/main/java/com/dsic/gj_erp/service/jhgk/DmSygdMxService.java index eab0184..361e625 100644 --- a/src/main/java/com/dsic/gj_erp/service/jhgk/DmSygdMxService.java +++ b/src/main/java/com/dsic/gj_erp/service/jhgk/DmSygdMxService.java @@ -19,6 +19,7 @@ import java.util.Map; * @since 2023-10-09 */ public interface DmSygdMxService extends IService { + List tqSygd2(String from, String to,String zt); ResultBean sygdPC(); // List saveByDcch(HashMap> map); List getKwList(List list,String begin,String end); 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 01e9e69..81b97e6 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 @@ -71,31 +71,41 @@ public class DmSygdMxServiceImpl extends ServiceImpl i @Override @Transactional(rollbackFor = Exception.class) public void tj(String from,String to){ - List sygdMxes = this.list(Wrappers.lambdaQuery().between(DmSygdMx::getJssj, from, to)); - List collect = sygdMxes.stream().map(dmSygd -> { - DmSygdMx dmSygdMx = new DmSygdMx(); - dmSygdMx.setId(dmSygd.getId()); - dmSygdMx.setZt("1"); - return dmSygdMx; - }).collect(Collectors.toList()); - this.updateBatchById(collect); + List sygdMxes = this.list(Wrappers.lambdaQuery() + .eq(DmSygdMx::getZt,"0") + .between(DmSygdMx::getJssj, from, to) + ); + if (ObjectUtil.isNotEmpty(sygdMxes)){ + List collect = sygdMxes.stream().map(dmSygd -> { + DmSygdMx dmSygdMx = new DmSygdMx(); + dmSygdMx.setId(dmSygd.getId()); + dmSygdMx.setZt("1"); + return dmSygdMx; + }).collect(Collectors.toList()); + this.updateBatchById(collect); + } } @Override @Transactional(rollbackFor = Exception.class) public void sh(String from,String to){ - List sygdMxes = this.list(Wrappers.lambdaQuery().between(DmSygdMx::getJssj, from, to)); - List collect = sygdMxes.stream().map(dmSygd -> { - DmSygdMx dmSygdMx = new DmSygdMx(); - dmSygdMx.setId(dmSygd.getId()); - dmSygdMx.setZt("2"); - return dmSygdMx; - }).collect(Collectors.toList()); - this.updateBatchById(collect); - //生成作业计划 - new Thread(()->{ - this.generateYdjh(sygdMxes); - }).start(); + List sygdMxes = this.list(Wrappers.lambdaQuery() + .eq(DmSygdMx::getZt,"1") + .between(DmSygdMx::getJssj, from, to) + ); + if (ObjectUtil.isNotEmpty(sygdMxes)){ + List collect = sygdMxes.stream().map(dmSygd -> { + DmSygdMx dmSygdMx = new DmSygdMx(); + dmSygdMx.setId(dmSygd.getId()); + dmSygdMx.setZt("2"); + return dmSygdMx; + }).collect(Collectors.toList()); + this.updateBatchById(collect); + //生成作业计划 + new Thread(()->{ + this.generateYdjh(sygdMxes); + }).start(); + } } @Transactional(rollbackFor = Exception.class) @@ -970,9 +980,10 @@ public class DmSygdMxServiceImpl extends ServiceImpl i return new ResultBean(sygdList); } - private List tqSygd2(String begin,String end){ + public List tqSygd2(String begin,String end,String zt){ List slkw=Arrays.asList("7","8","9","5","6","15","11","14"); List list = this.list(Wrappers.lambdaQuery() + .eq(StrUtil.isNotEmpty(zt),DmSygdMx::getZt,zt) .between(DmSygdMx::getJssj, begin, end) .orderBy(true,true,DmSygdMx::getDcCh,DmSygdMx::getDcPl,DmSygdMx::getSlrq) ); @@ -1142,7 +1153,7 @@ public class DmSygdMxServiceImpl extends ServiceImpl i // list2.add(ydjhxf1); // } - return this.tqSygd2(begin,end); + return this.tqSygd2(begin,end,null); } diff --git a/src/main/java/com/dsic/gj_erp/service/jhgk/impl/DmXbjhServiceImpl.java b/src/main/java/com/dsic/gj_erp/service/jhgk/impl/DmXbjhServiceImpl.java index b1c0b61..239b9c0 100644 --- a/src/main/java/com/dsic/gj_erp/service/jhgk/impl/DmXbjhServiceImpl.java +++ b/src/main/java/com/dsic/gj_erp/service/jhgk/impl/DmXbjhServiceImpl.java @@ -9,7 +9,6 @@ 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 com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.dsic.gj_erp.bean.jhgk.DmXbjh; import com.dsic.gj_erp.mapper.jhgk.DmXbjhMapper; @@ -17,18 +16,16 @@ import com.dsic.gj_erp.service.jhgk.DmXbjhService; import com.dsic.gj_erp.util.ExcelUtil; import org.apache.commons.lang3.StringUtils; import org.modelmapper.ModelMapper; +import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.springframework.web.multipart.MultipartFile; import javax.annotation.Resource; import java.io.File; -import java.io.FileOutputStream; import java.io.IOException; -import java.util.ArrayList; -import java.util.LinkedHashMap; -import java.util.List; -import java.util.Map; +import java.util.*; +import java.util.concurrent.atomic.AtomicInteger; import java.util.stream.Collectors; /** @@ -46,6 +43,9 @@ public class DmXbjhServiceImpl extends ServiceImpl impleme @Resource ModelMapper modelMapper; + @Value("${xbjh-path}") + String xbjhPath; + @Override public Map> getList(JSONObject json) { QueryWrapper queryWrapper = new QueryWrapper<>(); @@ -83,18 +83,31 @@ public class DmXbjhServiceImpl extends ServiceImpl impleme public JSONObject upload(MultipartFile file) throws IOException { JSONObject dmXbjhs = ExcelUtil.readDmXbjh(file); if (dmXbjhs != null) { - List listByNf = list(Wrappers.lambdaQuery().eq(DmXbjh::getNf, dmXbjhs.getString("nf"))); - this.save(dmXbjhs); + File[] files = FileUtil.ls(xbjhPath); + AtomicInteger maxVersion= new AtomicInteger(0); + if (files.length > 0) { + HashSet names = new HashSet<>(); + for (File file1 : files) { + String name = FileUtil.getPrefix(file1.getName()); + String[] s = name.split("_"); + names.add(s[s.length - 1]); + } + String tmpVersion=names.stream().max(String::compareTo).get(); + Optional.of(tmpVersion).ifPresent(item->{ + String v = item.replace("v", ""); + maxVersion.set(Integer.parseInt(v)); + }); + } String type = FileUtil.extName(file.getOriginalFilename()); - File uploadFile = new File("./线表计划"); + File uploadFile = new File(xbjhPath); if (!uploadFile.exists()) { uploadFile.mkdirs(); } - int version = !listByNf.isEmpty() ? listByNf.get(0).getVersion() + 1 : 1; - File uploadFiles = new File(StrUtil.format("./线表计划/{}_{}{}{}", dmXbjhs.getString("nf"), version, StrUtil.DOT, type)); - + int version = maxVersion.incrementAndGet(); + File uploadFiles = new File(StrUtil.format("{}/{}_{}{}{}{}", xbjhPath,DateUtil.thisYear(), "v",version, StrUtil.DOT, type)); file.transferTo(uploadFiles); + this.save(dmXbjhs); } return dmXbjhs; } diff --git a/src/main/resources/application-xbjh.yml b/src/main/resources/application-xbjh.yml new file mode 100644 index 0000000..999e0a0 --- /dev/null +++ b/src/main/resources/application-xbjh.yml @@ -0,0 +1 @@ +xbjh-path: D:\\javaweb\\static\\upload\\线表计划 \ No newline at end of file