Merge remote-tracking branch 'origin/master'

master
xhj 5 months ago
commit 3aefbb06d4

@ -66,4 +66,12 @@ public class DmTzjh implements Serializable {
private String id;
public static DmTzjh of(YdjhImport jh,String fd){
DmTzjh tzjh = new DmTzjh();
tzjh.setDcCh(jh.getDcCh());
tzjh.setDcPl(jh.getDcPl());
tzjh.setDcFd(fd);
tzjh.setZt("0");
return tzjh;
}
}

@ -1,9 +1,11 @@
package com.dsic.gj_erp.bean.jhgk;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;
@ -95,6 +97,24 @@ public class YdjhImport {
private String bz;
private String zt;
private int importIndex;
@ApiModelProperty(value = "前方需求小组期")
private String qfxqrqxz;
@ApiModelProperty(value = "前方需求大组期")
private String qfxqrqdz;
private String extData;//1:无基础数据;船号:使用目标船只基础数据;
@TableField(exist = false)
private Boolean qwbBs;
public boolean isAvailable(){
return !StrUtil.isAllEmpty(this.sl,this.xcpw,this.pw,this.dbqgks,this.ykpkjs,this.lmqgks,this.lmqgjs,
this.ekskks,this.ekpkjs,this.skskqgks,this.skpkjs,this.ptks,this.ptjs,this.qpt_zjs,this.qptjs,
this.qwbjs,this.fbqgks,this.fbqgjs,this.skqgks,this.pkqgjs,this.mbjb,this.xcmb,this.fdxq,this.gdjs);
}
}

@ -2,6 +2,7 @@ package com.dsic.gj_erp.bean.pgd;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.dsic.gj_erp.bean.jhgk.YdjhImport;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@ -11,7 +12,7 @@ import java.io.Serializable;
/**
* <p>
*
*
* </p>
*
* @author xn
@ -79,4 +80,15 @@ public class PgdTzjh implements Serializable {
private String fkry;
public static PgdTzjh of(YdjhImport jh,String pl,String fd){
PgdTzjh tzjh = new PgdTzjh();
tzjh.setCzbh(jh.getDcCh());
tzjh.setPl(pl);
tzjh.setQfxqrqxz(jh.getQfxqrqxz());
tzjh.setQfxqrqdz(jh.getQfxqrqdz());
tzjh.setFd(fd);
tzjh.setZt("01");
// tzjh.setTzzt("0");
return tzjh;
}
}

@ -27,4 +27,8 @@ public class DmYppyz {
private String lx;
private String xj;
private String ppch;//配盘船号
private String ypph;//预配盘号
}

@ -16,10 +16,12 @@ import java.util.List;
*/
public interface DmBomMapper extends BaseMapper<DmBom> {
List<DmBom> getBomWithYlbs(String dcCh,String dcPl);
int insertBoms(List<DmBom> dmMfgDetails);
int insertBom(DmBom dmMfgDetails);
int insertBoms(List<DmBom> dmMfgDetails);
int insertFile(@Param("filepath")String filepath,@Param("yhdm") String yhdm);
int insertBom(DmBom dmMfgDetails);
int insertFile(@Param("filepath")String filepath,@Param("yhdm") String yhdm);
}

@ -19,7 +19,7 @@ import java.util.Map;
*/
public interface DmBomService extends IService<DmBom> {
List<DmBom> getBomWithYlbs(String dcCh,String dcPl);
List<BomVO>getListBom(HttpServletRequest req, Map map) throws CustomException;
List<DmBom>getListBomRealy(HttpServletRequest req, Map map) throws CustomException;
void insertBoms(List<DmBom> map) throws CustomException;

@ -33,6 +33,10 @@ public class DmBomServiceImpl extends ServiceImpl<DmBomMapper, DmBom> implements
BomUploadServiceImpl bomUploadService;
@Autowired
DmBomMapper dmBomMapper;
public List<DmBom> getBomWithYlbs(String dcCh,String dcPl){
return dmBomMapper.getBomWithYlbs(dcCh,dcPl);
}
@Override
public List<BomVO> getListBom(HttpServletRequest req,Map map) throws CustomException {
// if(map.get("zt").equals("01")){

@ -4,6 +4,7 @@ package com.dsic.gj_erp.service.jhgk.impl;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.bean.copier.CopyOptions;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.ObjUtil;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil;
import com.alibaba.fastjson.JSONArray;
@ -30,6 +31,7 @@ import com.dsic.gj_erp.service.jhgk.*;
import com.dsic.gj_erp.util.MyString;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@ -67,6 +69,11 @@ public class DmSygdMxServiceImpl extends ServiceImpl<DmSygdMxMapper, DmSygdMx> i
DmBomService bomService;
@Autowired
DmYdjhService ydjhService;
@Autowired
IYdjhImportService ydjhImportService;
@Autowired
private RedisTemplate<String,Object> redisTemplate;
@Override
@Transactional(rollbackFor = Exception.class)
@ -104,61 +111,166 @@ public class DmSygdMxServiceImpl extends ServiceImpl<DmSygdMxMapper, DmSygdMx> i
//生成作业计划
List<DmYdjh> dmYdjhs = this.generateYdjh(sygdMxes);
ydjhService.saveOrUpdateBatch(dmYdjhs);
String gxsj=DateUtil.date().toString("yyyy/MM/dd HH:mm:ss");
Map<String, List<DmYdjh>> map = dmYdjhs.stream().collect(Collectors.groupingBy(it -> it.getDcCh() + "_" + it.getDcPl()));
map.forEach((key,val)->{
String plXh = this.getPlGdh();
val.forEach(item-> item.setPlxh(plXh));
});
//工单号
List<DmYdjh> updateList = dmYdjhs.stream()
.filter(item->StrUtil.isNotEmpty(item.getSljhrq()))
.map(item->ofXf(item,gxsj)).collect(Collectors.toList());
ydjhService.updateBatchById(updateList);
}
}
private DmYdjh ofXf(DmYdjh item,String gxsj){
Long djh=this.handlerDjh(item);
DmYdjh dmYdjh = new DmYdjh();
dmYdjh.setId(item.getId());
dmYdjh.setZt("2");
String perfix=item.getSljhrq().replace("/","");
perfix=perfix.substring(2);
dmYdjh.setDjh(StrUtil.format("{}{}",perfix, String.format("%03d",djh)));
dmYdjh.setGxsj(gxsj);
dmYdjh.setPlxh(item.getPlxh());
return dmYdjh;
}
private Long handlerDjh(DmYdjh item){
String key="ZYJH_GDH::";
//从101开始生成工单号,方便工人念出
if (ObjUtil.isEmpty(redisTemplate.opsForHash().get(key, item.getSljhrq()))) {
redisTemplate.opsForHash().put(key, item.getSljhrq(),100);
}
return redisTemplate.opsForHash().increment(key, item.getSljhrq(), 1);
}
private String getPlGdh(){
String date=DateUtil.date().toString("yyyyMMdd");
String key="ZYJH_PLGDH::";
Object o = redisTemplate.opsForHash().get(key, date);
if (ObjUtil.isEmpty(o)) {
redisTemplate.opsForHash().put(key, date,100);
}
Long xh=redisTemplate.opsForHash().increment(key, date, 1);
return StrUtil.format("{}{}",date, String.format("%03d",xh));
}
private List<DmYdjh> generateYdjh(List<DmSygdMx> sygdMxes){
List<DmYdjh> list=new ArrayList<>();
HashMap<String, Object> map = new HashMap<>();
for(DmSygdMx item:sygdMxes){
DmYdjh dmYdjh = ydjhService.getOne(Wrappers.<DmYdjh>query()
.select("top 1 id,jssj")
Object o = map.get(item.getDcCh() + item.getDcPl());
AtomicBoolean continueFlag= new AtomicBoolean(false);
if (ObjectUtil.isEmpty(o)){
List<YdjhImport> list1 = ydjhImportService.list(Wrappers.<YdjhImport>lambdaQuery()
.eq(YdjhImport::getDcCh, item.getDcCh()));
list1.forEach(jh->{
if (jh.getDcPl().contains("Q")) {
jh.setDcPl(jh.getDcPl().replace("Q", ""));
}
try {
String format = String.format("%03d", Integer.parseInt(item.getDcPl()));
jh.setDcPl(format);
} catch (Exception ignored) {
}
//没有基础数据在作业计划表中插入一条仅有日期的新数据
if(!"1".equals(jh.getExtData())&&item.getDcCh().equals(jh.getDcCh())&&item.getDcPl().equals(jh.getDcPl())){
map.put(item.getDcCh()+item.getDcPl(),"1");
DmYdjh dmYdjh = new DmYdjh();
dmYdjh.setDcCh(jh.getDcCh());
dmYdjh.setDcPl(jh.getDcPl());
dmYdjh.setJssj(item.getJssj());
dmYdjh.setDcCh1(jh.getExtData());//不是“0”为目标船只“0”表示无
dmYdjh.setSljhrq(item.getSlrq());
dmYdjh.setPwjhrq(item.getPwrq());
dmYdjh.setLljhrq(item.getLlrq());
dmYdjh.setHxjhrq(item.getQgrq());
dmYdjh.setQgjhrq(item.getQgrq());
boolean addFlag=true;
for (DmYdjh ydjh:list){
if (ydjh.getDcCh().equals(dmYdjh.getDcCh())&&ydjh.getDcPl().equals(ydjh.getDcPl())){
addFlag=false;
}
}
if (addFlag){
list.add(dmYdjh);
}
continueFlag.set(true);
}
});
}
if (continueFlag.get()){
continue;
}
List<DmYdjh> ydjhList = ydjhService.list(Wrappers.<DmYdjh>query()
.eq("dc_ch",item.getDcCh())
.eq("dc_pl",item.getDcPl())
.eq("tzbh",item.getTzbh())
);
if (dmYdjh != null){
dmYdjh.setId(dmYdjh.getId());
//计划日期
dmYdjh.setJssj(item.getJssj());
dmYdjh.setSljhrq(item.getSlrq());
dmYdjh.setPwjhrq(item.getPwrq());
dmYdjh.setHxjhrq(item.getHxrq());
dmYdjh.setQgjhrq(item.getQgrq());
//重量
dmYdjh.setBclqzl(item.getBclqzl());
dmYdjh.setBcshzl(item.getBcshzl());
dmYdjh.setBcylzl(item.getBcylzl());
dmYdjh.setBcljtlzl(item.getBcljtlzl());
//比对数据
dmYdjh.setXzglxq(dmYdjh.getJssj());
if (StrUtil.isAllNotEmpty(dmYdjh.getXzglxq(),dmYdjh.getJssj())){
//状态 2拖期 1提前 3追加
if (dmYdjh.getXzglxq().compareTo(dmYdjh.getJssj())<0){
if (!DateUtil.isSameMonth(DateUtil.parseDate(dmYdjh.getXzglxq()),DateUtil.parseDate(dmYdjh.getJssj()))){
dmYdjh.setJhlx("3");
}else {
dmYdjh.setJhlx("1");
for(DmYdjh dmYdjh:ydjhList){
if (dmYdjh.getDcCh().equals(item.getDcCh())
&&dmYdjh.getDcPl().equals(item.getDcPl())
&&dmYdjh.getTzbh().equals(item.getTzbh())
){
dmYdjh.setId(dmYdjh.getId());
this.updateYdjh(dmYdjh,item);
//比对数据
dmYdjh.setXzglxq(dmYdjh.getJssj());
if (StrUtil.isAllNotEmpty(dmYdjh.getXzglxq(),dmYdjh.getJssj())){
//状态 2拖期 1提前 3追加
if (dmYdjh.getXzglxq().compareTo(dmYdjh.getJssj())<0){
if (!DateUtil.isSameMonth(DateUtil.parseDate(dmYdjh.getXzglxq()),DateUtil.parseDate(dmYdjh.getJssj()))){
dmYdjh.setJhlx("3");
}else {
dmYdjh.setJhlx("1");
}
}
if (dmYdjh.getXzglxq().compareTo(dmYdjh.getJssj())>0){
dmYdjh.setJhlx("2");
}
dmYdjh.setJssjOld(StrUtil.isEmpty(dmYdjh.getJssj())?"":dmYdjh.getJssj());
dmYdjh.setJssj(dmYdjh.getXzglxq());
}
if (dmYdjh.getXzglxq().compareTo(dmYdjh.getJssj())>0){
dmYdjh.setJhlx("2");
if (StrUtil.isEmpty(dmYdjh.getTzbh())){
dmYdjh.setJhlx("3");
}
dmYdjh.setJssjOld(StrUtil.isEmpty(dmYdjh.getJssj())?"":dmYdjh.getJssj());
dmYdjh.setJssj(dmYdjh.getXzglxq());
list.add(dmYdjh);
}
if (StrUtil.isEmpty(dmYdjh.getTzbh())){
dmYdjh.setJhlx("3");
}
list.add(dmYdjh);
// else{
// DmYdjh dmYdjh1 = new DmYdjh();
// this.updateYdjh(dmYdjh1,item);
// list.add(dmYdjh1);
// }
}
}
return list;
}
private void updateYdjh(DmYdjh dmYdjh,DmSygdMx item){
//计划日期
dmYdjh.setJssj(item.getJssj());
dmYdjh.setSljhrq(item.getSlrq());
dmYdjh.setPwjhrq(item.getPwrq());
dmYdjh.setHxjhrq(item.getHxrq());
dmYdjh.setQgjhrq(item.getQgrq());
//重量
dmYdjh.setBclqzl(item.getBclqzl());
dmYdjh.setBcshzl(item.getBcshzl());
dmYdjh.setBcylzl(item.getBcylzl());
dmYdjh.setBcljtlzl(item.getBcljtlzl());
}
public Map<String,List<EmGcrlDto>> getMxMap(String begin,String end){
List<EmGcrlDto> list=baseMapper.getMxMap(begin,end);

@ -6,13 +6,16 @@ import cn.hutool.core.util.StrUtil;
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.DmSygdMx;
import com.dsic.gj_erp.bean.jhgk.DmSygdMxLj;
import com.dsic.gj_erp.bean.jhgk.YdjhImport;
import com.dsic.gj_erp.bean.jcsj.DmBom;
import com.dsic.gj_erp.bean.jcsj.DmCbxxp;
import com.dsic.gj_erp.bean.jhgk.*;
import com.dsic.gj_erp.bean.jhgk.excel.JhxfExcel;
import com.dsic.gj_erp.bean.pgd.PgdTzjh;
import com.dsic.gj_erp.mapper.jhgk.DmSygdMxMapper;
import com.dsic.gj_erp.mapper.jhgk.DmSygdxqMapper;
import com.dsic.gj_erp.service.jhgk.DmSygdMxLjService;
import com.dsic.gj_erp.service.jcsj.DmBomService;
import com.dsic.gj_erp.service.jcsj.DmCbxxpService;
import com.dsic.gj_erp.service.pgd.PgdTzjhService;
import lombok.AllArgsConstructor;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@ -25,137 +28,199 @@ import java.util.stream.Collectors;
public class YdjhImportService extends ServiceImpl<DmSygdMxMapper, DmSygdMx> {
private final DmSygdxqMapper sygdxqMapper;
private final DmSygdMxLjService ljService;
private final IYdjhImportService importService;
private final DmBomService bomService;
private final DmCbxxpService dmCbxxpService;
private final PgdTzjhService tzjhService;
public List<YdjhImport> list(String begin,String end){
public List<YdjhImport> list(String begin, String end) {
return importService.list(Wrappers.<YdjhImport>lambdaQuery()
.between(YdjhImport::getFdxq, begin, end).or().between(YdjhImport::getQwbjs, begin, end)
.orderByAsc(YdjhImport::getImportIndex)
.orderByAsc(YdjhImport::getId)
);
}
@Transactional(rollbackFor = Exception.class)
public void handler(List<JhxfExcel> objList){
this.executeYdjhImport(objList);
List<JhxfExcel> qwb = objList.stream()
.filter(item->!item.getDcPl().contains("-"))//去除T型材
.filter(item->!item.getDcPl().contains("/"))//去除T型材
.filter(item->item.getDcFd()!=null)
.filter(item -> item.getDcPl().contains("Q")).collect(Collectors.toList());
this.execute(qwb);
List<JhxfExcel> list = objList.stream()
.filter(item->!item.getDcPl().contains("-"))//去除T型材
.filter(item->!item.getDcPl().contains("/"))//去除T型材
.filter(item->item.getDcFd()!=null)
public void handler(List<JhxfExcel> objList) {
List<YdjhImport> ydjhImports = this.executeYdjhImport(objList);
ydjhImports.forEach(item->{
String dcPl=item.getDcPl();
if (item.getDcPl().contains("Q")) {
dcPl=item.getDcPl().replace("Q", "");
}
try {
dcPl = String.format("%03d", Integer.parseInt(dcPl));
} catch (Exception ignored) {
}
baseMapper.delete(new QueryWrapper<DmSygdMx>()
.eq("dc_ch", item.getDcCh())
.eq("dc_pl", dcPl)
);
});
// List<YdjhImport> qwb = ydjhImports.stream()
// .filter(YdjhImport::isAvailable)
// .filter(item -> !item.getDcPl().contains("-"))//去除T型材
// .filter(item -> !item.getDcPl().contains("/"))//去除T型材
// .filter(item -> StrUtil.isNotEmpty(item.getDcFd()))
// .filter(item -> item.getDcPl().contains("Q")).collect(Collectors.toList());
// this.execute(qwb);
List<YdjhImport> list = ydjhImports.stream()
.filter(YdjhImport::isAvailable)
.filter(item -> !item.getDcPl().contains("-"))//去除T型材
.filter(item -> !item.getDcPl().contains("/"))//去除T型材
.filter(item -> StrUtil.isNotEmpty(item.getDcFd()))
.filter(item -> !item.getDcPl().contains("Q")).collect(Collectors.toList());
this.execute(list);
ydjhImports.forEach(importService::saveOrUpdate);
//没有基础数据的计划生成图纸计划
List<PgdTzjh> tzjhList = new ArrayList<>();
ydjhImports.stream()
.filter(item -> !StrUtil.equals(item.getExtData(), "1"))
.forEach(item->{
String dcPl=item.getDcPl();
if (item.getDcPl().contains("Q")) {
dcPl=item.getDcPl().replace("Q", "");
}
try {
dcPl = String.format("%03d", Integer.parseInt(dcPl));
} catch (Exception ignored) {
}
if (StrUtil.isNotEmpty(item.getDcFd())){
String[] dcfd=item.getDcFd().split("\\.");
for(String dcFd:dcfd){
PgdTzjh dmTzjh = PgdTzjh.of(item,dcPl, dcFd);
tzjhList.add(dmTzjh);
}
}
});
tzjhService.saveBatch(tzjhList);
}
@Transactional(rollbackFor = Exception.class)
public void executeYdjhImport(List<JhxfExcel> objList){
Map<String,YdjhImport> map=new HashMap<>();
for (int i=0;i<objList.size();i++){
JhxfExcel item=objList.get(i);
public List<YdjhImport> executeYdjhImport(List<JhxfExcel> objList) {
Map<String, YdjhImport> map = new HashMap<>();
List<YdjhImport> list = new ArrayList<>();
for (int i = 0; i < objList.size(); i++) {
JhxfExcel item = objList.get(i);
YdjhImport jh = new YdjhImport();
BeanUtil.copyProperties(item, jh);
jh.setImportIndex(i);
YdjhImport _jh = map.get(jh.getDcCh() + jh.getDcPl());
if (_jh!=null){
if (_jh.getFdxq()!=null&&jh.getFdxq()==null){
if (_jh != null) {
if (_jh.getFdxq() != null && jh.getFdxq() == null) {
jh.setFdxq(_jh.getFdxq());
}
if (_jh.getFdxq()==null&&jh.getFdxq()!=null){
if (_jh.getFdxq() == null && jh.getFdxq() != null) {
_jh.setFdxq(jh.getFdxq());
}
if(_jh.getQwbjs()!=null&&jh.getQwbjs()==null){
if (_jh.getQwbjs() != null && jh.getQwbjs() == null) {
jh.setQwbjs(_jh.getQwbjs());
}
if(_jh.getQwbjs()==null&&jh.getQwbjs()!=null){
if (_jh.getQwbjs() == null && jh.getQwbjs() != null) {
_jh.setQwbjs(jh.getQwbjs());
}
}else {
map.put(jh.getDcCh() + jh.getDcPl(),jh);
} else {
map.put(jh.getDcCh() + jh.getDcPl(), jh);
}
YdjhImport one = importService.getOne(new QueryWrapper<YdjhImport>()
.select("top 1 id")
importService.remove(new QueryWrapper<YdjhImport>()
.eq("dc_ch", jh.getDcCh())
.eq("dc_pl", jh.getDcPl())
.eq("dc_fd", jh.getDcFd())
);
if (ObjUtil.isNotEmpty(one)){
jh.setId(one.getId());
}
importService.saveOrUpdate(jh);
jh.setZt("0");
list.add(jh);
}
return list;
}
/**
* ,使使
*/
@Transactional(rollbackFor = Exception.class)
public void execute(List<JhxfExcel> objList) {
for(JhxfExcel item:objList){
if (item.getDcPl().contains("Q")){
item.setDcPl(item.getDcPl().replace("Q",""));
public void execute(List<YdjhImport> objList) {
HashMap<String, Object> _map = new HashMap<>();
objList.parallelStream().forEach(item->{
String dcPl=item.getDcPl();
if (item.getDcPl().contains("Q")) {
dcPl=item.getDcPl().replace("Q", "");
item.setQwbBs(true);
}
try {
String format = String.format("%03d", Integer.parseInt(item.getDcPl()));
item.setDcPl(format);
}catch (Exception ignored){}
dcPl = String.format("%03d", Integer.parseInt(dcPl));
} catch (Exception ignored) {
}
String[] dcfd=item.getDcFd().split("\\.");
List<DmSygdMx> addList = new ArrayList<>();
boolean outContinueFlag=false;
for(String dcFd:dcfd){
if (!item.isAvailable()) {
baseMapper.delete(new QueryWrapper<DmSygdMx>()
.eq("dc_ch", item.getDcCh())
.eq("dc_pl", item.getDcPl())
.eq("dc_fd", dcFd)
);
addList.add(this.initDefault(item, dcFd));
outContinueFlag=true;
}
String dcFd=dcfd[0];
Object o = _map.get(item.getDcCh() + item.getDcPl());
if(o==null){
_map.put(item.getDcCh() + item.getDcPl(),1);
}else{
return;
}
if (outContinueFlag){
this.saveBatch(addList);
continue;
List<DmBom> bomList = bomService.getBomWithYlbs(item.getDcCh(), dcPl);
String dcCh;
//基础数据未导入,使用目标船只
if (ObjUtil.isEmpty(bomList)) {
DmCbxxp one = dmCbxxpService.getOne(Wrappers.<DmCbxxp>lambdaQuery()
.eq(DmCbxxp::getCbbm, item.getDcCh())
);
if (one != null) {
dcCh = one.getCbbm();
item.setExtData(dcCh);//使用目标船只基础数据
bomList = bomService.getBomWithYlbs(dcCh, dcPl);
if (ObjUtil.isEmpty(bomList)) {
DmSygdMx dmSygdMx = this.initDefault(item,dcFd,dcPl);
dmSygdMx.setDcCh1(dcCh);
this.save(dmSygdMx);
item.setExtData("0");//无基础数据
return;
}
} else {
item.setExtData("0");//无基础数据
DmSygdMx dmSygdMx = this.initDefault(item,dcFd,dcPl);
this.save(dmSygdMx);
return;
}
} else {
item.setExtData("1");//有基础数据
}
String dcFd=dcfd[0];
baseMapper.delete(new QueryWrapper<DmSygdMx>()
.eq("dc_ch", item.getDcCh())
.eq("dc_pl", item.getDcPl())
.eq("dc_fd", dcFd)
);
ljService.remove(new QueryWrapper<DmSygdMxLj>()
.eq("dcch", item.getDcCh())
.eq("pl", item.getDcPl())
.eq("fd", dcFd)
);
List<DmSygdxq> dmSygdxqs = sygdxqMapper.selectList(Wrappers.<DmSygdxq>lambdaQuery()
.eq(DmSygdxq::getDcCh, item.getDcCh()).eq(DmSygdxq::getDcPl, dcPl));
List<DmSygdMxLj> ljList = sygdxqMapper.getSygdLjMx1(item.getDcCh(), item.getDcPl());
HashMap<Object, DmSygdxq> map = new HashMap<>();
for (DmSygdxq xq : dmSygdxqs) {
String pl = xq.getDcPl();
String fd = xq.getDcFd();
map.put(item.getDcCh() + pl + fd, xq);
}
List<DmSygdMxLj> ljList = this.initLj(item.getDcCh(), map, bomList);
List<DmSygdMx> sygdMxes;
if (item.getQwbBs()) {
sygdMxes = this.initBySl(item, ljList.stream().filter(it -> "3".equals(it.getTzbh().substring(5, 6)))
.collect(Collectors.toList()), dcFd
);
ljList=ljList.stream().filter(it -> "3".equals(it.getTzbh().substring(5, 6)))
.collect(Collectors.toList());
sygdMxes = this.initBySl(item, ljList,dcFd);
} else {
sygdMxes = this.initBySl(item, ljList.stream().filter(it -> !"3".equals(it.getTzbh().substring(5, 6)))
.collect(Collectors.toList()), dcFd
);
ljList=ljList.stream().filter(it -> !"3".equals(it.getTzbh().substring(5, 6)))
.collect(Collectors.toList());
sygdMxes = this.initBySl(item, ljList,dcFd);
}
addList.addAll(sygdMxes);
List<DmSygdMx> addList = new ArrayList<>(sygdMxes);
if (item.getPkqgjs() != null) {
List<DmSygdMx> _sygdMxes = sygdMxes.stream().filter(it -> "7".equals(it.getKw())).collect(Collectors.toList());
@ -165,24 +230,24 @@ public class YdjhImportService extends ServiceImpl<DmSygdMxMapper, DmSygdMx> {
}
} else {
List<DmSygdMxLj> _ljlist = ljList.stream().filter(it -> "7".equals(it.getKw())).collect(Collectors.toList());
List<DmSygdMx> list = this.initByYklm(item, _ljlist, dcFd);
List<DmSygdMx> list = this.initByYklm(item, _ljlist,dcFd,dcPl);
addList.addAll(list);
}
List<DmSygdMx> _sygdMxes1 = sygdMxes.stream().filter(it -> "8".equals(it.getKw())).collect(Collectors.toList());
if (!_sygdMxes1.isEmpty()) {
for (DmSygdMx dmSygdMx : _sygdMxes1) {
this.updateByYksk(item, dmSygdMx);
}
} else {
List<DmSygdMxLj> _ljlist = ljList.stream().filter(it -> "8".equals(it.getKw())).collect(Collectors.toList());
if (!_ljlist.isEmpty()){
List<DmSygdMx> list = this.initByYksk(item, _ljlist, dcFd);
addList.addAll(list);
}
}
// List<DmSygdMx> _sygdMxes1 = sygdMxes.stream().filter(it -> "8".equals(it.getKw())).collect(Collectors.toList());
// if (!_sygdMxes1.isEmpty()) {
// for (DmSygdMx dmSygdMx : _sygdMxes1) {
// this.updateByYksk(item, dmSygdMx);
// }
// } else {
// List<DmSygdMxLj> _ljlist = ljList.stream().filter(it -> "8".equals(it.getKw())).collect(Collectors.toList());
// if (!_ljlist.isEmpty()) {
// List<DmSygdMx> list = this.initByYksk(item, _ljlist,dcFd,dcPl);
// addList.addAll(list);
// }
// }
}
//
if (item.getLmqgks() != null) {
List<DmSygdMx> _sygdMxes = sygdMxes.stream().filter(it -> "5".equals(it.getKw())).collect(Collectors.toList());
if (!_sygdMxes.isEmpty()) {
@ -191,7 +256,7 @@ public class YdjhImportService extends ServiceImpl<DmSygdMxMapper, DmSygdMx> {
}
} else {
List<DmSygdMxLj> _ljlist = ljList.stream().filter(it -> "5".equals(it.getKw())).collect(Collectors.toList());
List<DmSygdMx> list = this.initByEklmbs(item, _ljlist, dcFd);
List<DmSygdMx> list = this.initByEklmbs(item, _ljlist,dcFd,dcPl);
addList.addAll(list);
}
}
@ -204,7 +269,7 @@ public class YdjhImportService extends ServiceImpl<DmSygdMxMapper, DmSygdMx> {
}
} else {
List<DmSygdMxLj> _ljlist = ljList.stream().filter(it -> "9".equals(it.getKw())).collect(Collectors.toList());
List<DmSygdMx> list = this.initByEksk(item, _ljlist, dcFd);
List<DmSygdMx> list = this.initByEksk(item, _ljlist,dcFd,dcPl);
addList.addAll(list);
}
}
@ -217,7 +282,7 @@ public class YdjhImportService extends ServiceImpl<DmSygdMxMapper, DmSygdMx> {
}
} else {
List<DmSygdMxLj> _ljlist = ljList.stream().filter(it -> "14".equals(it.getKw())).collect(Collectors.toList());
List<DmSygdMx> list = this.initBySksk(item, _ljlist, dcFd);
List<DmSygdMx> list = this.initBySksk(item, _ljlist,dcFd,dcPl);
addList.addAll(list);
}
}
@ -230,7 +295,7 @@ public class YdjhImportService extends ServiceImpl<DmSygdMxMapper, DmSygdMx> {
}
} else {
List<DmSygdMxLj> _ljlist = ljList.stream().filter(it -> "6".equals(it.getKw())).collect(Collectors.toList());
List<DmSygdMx> list = this.initBySkpt(item, _ljlist, dcFd);
List<DmSygdMx> list = this.initBySkpt(item, _ljlist,dcFd,dcPl);
addList.addAll(list);
}
}
@ -243,52 +308,24 @@ public class YdjhImportService extends ServiceImpl<DmSygdMxMapper, DmSygdMx> {
}
} else {
List<DmSygdMxLj> _ljlist = ljList.stream().filter(it -> "15".equals(it.getKw())).collect(Collectors.toList());
List<DmSygdMx> list = this.initBySkbs(item, _ljlist, dcFd);
List<DmSygdMx> list = this.initBySkbs(item, _ljlist,dcFd,dcPl);
addList.addAll(list);
}
}
this.saveBatch(addList);
ljList.forEach(lj -> addList.forEach(mx -> {
if (lj.getDcch().equals(mx.getDcCh())
&& lj.getPl().equals(mx.getDcPl())
&& (StrUtil.isBlank(lj.getTzbh()) || lj.getTzbh().equals(mx.getTzbh()))) {
lj.setParentId(mx.getId());
}
}));
ljService.saveBatch(ljList);
}
}
private DmSygdMx initDefault(JhxfExcel item,String dcFd){
DmSygdMx dmSygdMx = new DmSygdMx();
dmSygdMx.setDcCh(item.getDcCh());
dmSygdMx.setDcPl(item.getDcPl());
dmSygdMx.setDcFd(dcFd);
dmSygdMx.setJssj(item.getFdxq());
if (item.getQwbBs()){
dmSygdMx.setQbs("1");
dmSygdMx.setJssj(item.getQwbjs());
}
return dmSygdMx;
});
}
private List<DmSygdMx> initBySl(JhxfExcel item,List<DmSygdMxLj> bomList,String dcFd){
List<DmSygdMx> addList=new ArrayList<>();
private List<DmSygdMx> initBySl(YdjhImport item, List<DmSygdMxLj> bomList,String dcFd) {
List<DmSygdMx> addList = new ArrayList<>();
if (item.getSl()!=null){
if (bomList.isEmpty()){
DmSygdMx dmSygdMx = this.initDefault(item,dcFd);
addList.add(dmSygdMx);
return addList;
}
if (item.getSl() != null) {
ArrayList<DmSygdMxLj> list = bomList.stream().collect(
Collectors.collectingAndThen(
Collectors.toCollection(() -> new TreeSet<>(Comparator.comparing(DmSygdMxLj::getUniqueData))), ArrayList::new)
);
for (DmSygdMxLj dmSygdMxLj : list) {
DmSygdMx init = this.initBySl(item, dmSygdMxLj, dcFd);
DmSygdMx init = this.initByOther(item, dmSygdMxLj);
if (item.getQwbBs()) {
init.setQbs("1");
init.setJssj(item.getQwbjs());
@ -299,19 +336,15 @@ public class YdjhImportService extends ServiceImpl<DmSygdMxMapper, DmSygdMx> {
return addList;
}
private List<DmSygdMx> initByYklm(JhxfExcel item, List<DmSygdMxLj> bomList, String dcFd){
List<DmSygdMx> addList=new ArrayList<>();
if (bomList.isEmpty()){
DmSygdMx dmSygdMx = this.initDefault(item,dcFd);
addList.add(dmSygdMx);
return addList;
}
private List<DmSygdMx> initByYklm(YdjhImport item, List<DmSygdMxLj> bomList,String dcFd,String dcPl) {
List<DmSygdMx> addList = new ArrayList<>();
ArrayList<DmSygdMxLj> list = bomList.stream().collect(
Collectors.collectingAndThen(
Collectors.toCollection(() -> new TreeSet<>(Comparator.comparing(DmSygdMxLj::getUniqueData))), ArrayList::new)
);
for (DmSygdMxLj dmSygdMxLj : list) {
DmSygdMx init = this.initByYklm(item, dmSygdMxLj, dcFd);
DmSygdMx init = this.initByOther(item, dmSygdMxLj);
this.updateByYklm(item,init);
if (item.getQwbBs()) {
init.setQbs("1");
init.setJssj(item.getQwbjs());
@ -321,19 +354,15 @@ public class YdjhImportService extends ServiceImpl<DmSygdMxMapper, DmSygdMx> {
return addList;
}
private List<DmSygdMx> initByYksk(JhxfExcel item, List<DmSygdMxLj> bomList, String dcFd){
List<DmSygdMx> addList=new ArrayList<>();
if (bomList.isEmpty()){
DmSygdMx dmSygdMx = this.initDefault(item,dcFd);
addList.add(dmSygdMx);
return addList;
}
private List<DmSygdMx> initByYksk(YdjhImport item, List<DmSygdMxLj> bomList,String dcFd,String dcPl) {
List<DmSygdMx> addList = new ArrayList<>();
ArrayList<DmSygdMxLj> list = bomList.stream().collect(
Collectors.collectingAndThen(
Collectors.toCollection(() -> new TreeSet<>(Comparator.comparing(DmSygdMxLj::getUniqueData))), ArrayList::new)
);
for (DmSygdMxLj dmSygdMxLj : list) {
DmSygdMx init = this.initByYksk(item, dmSygdMxLj, dcFd);
DmSygdMx init = this.initByOther(item, dmSygdMxLj);
this.updateByYksk(item,init);
if (item.getQwbBs()) {
init.setQbs("1");
init.setJssj(item.getQwbjs());
@ -343,19 +372,15 @@ public class YdjhImportService extends ServiceImpl<DmSygdMxMapper, DmSygdMx> {
return addList;
}
private List<DmSygdMx> initByEklmbs(JhxfExcel item, List<DmSygdMxLj> bomList, String dcFd){
List<DmSygdMx> addList=new ArrayList<>();
if (bomList.isEmpty()){
DmSygdMx dmSygdMx = this.initDefault(item,dcFd);
addList.add(dmSygdMx);
return addList;
}
private List<DmSygdMx> initByEklmbs(YdjhImport item, List<DmSygdMxLj> bomList,String dcFd,String dcPl) {
List<DmSygdMx> addList = new ArrayList<>();
ArrayList<DmSygdMxLj> list = bomList.stream().collect(
Collectors.collectingAndThen(
Collectors.toCollection(() -> new TreeSet<>(Comparator.comparing(DmSygdMxLj::getUniqueData))), ArrayList::new)
);
for (DmSygdMxLj dmSygdMxLj : list) {
DmSygdMx init = this.initByEklmbs(item, dmSygdMxLj, dcFd);
DmSygdMx init = this.initByOther(item, dmSygdMxLj);
this.updateByEklm(item,init);
if (item.getQwbBs()) {
init.setQbs("1");
init.setJssj(item.getQwbjs());
@ -365,19 +390,15 @@ public class YdjhImportService extends ServiceImpl<DmSygdMxMapper, DmSygdMx> {
return addList;
}
private List<DmSygdMx> initByEksk(JhxfExcel item, List<DmSygdMxLj> bomList, String dcFd){
List<DmSygdMx> addList=new ArrayList<>();
if (bomList.isEmpty()){
DmSygdMx dmSygdMx = this.initDefault(item,dcFd);
addList.add(dmSygdMx);
return addList;
}
private List<DmSygdMx> initByEksk(YdjhImport item, List<DmSygdMxLj> bomList,String dcFd,String dcPl) {
List<DmSygdMx> addList = new ArrayList<>();
ArrayList<DmSygdMxLj> list = bomList.stream().collect(
Collectors.collectingAndThen(
Collectors.toCollection(() -> new TreeSet<>(Comparator.comparing(DmSygdMxLj::getUniqueData))), ArrayList::new)
);
for (DmSygdMxLj dmSygdMxLj : list) {
DmSygdMx init = this.initByEksk(item, dmSygdMxLj, dcFd);
DmSygdMx init = this.initByOther(item, dmSygdMxLj);
this.updateByEksk(item,init);
if (item.getQwbBs()) {
init.setQbs("1");
init.setJssj(item.getQwbjs());
@ -387,19 +408,15 @@ public class YdjhImportService extends ServiceImpl<DmSygdMxMapper, DmSygdMx> {
return addList;
}
private List<DmSygdMx> initBySksk(JhxfExcel item, List<DmSygdMxLj> bomList, String dcFd){
List<DmSygdMx> addList=new ArrayList<>();
if (bomList.isEmpty()){
DmSygdMx dmSygdMx = this.initDefault(item,dcFd);
addList.add(dmSygdMx);
return addList;
}
private List<DmSygdMx> initBySksk(YdjhImport item, List<DmSygdMxLj> bomList,String dcFd,String dcPl) {
List<DmSygdMx> addList = new ArrayList<>();
ArrayList<DmSygdMxLj> list = bomList.stream().collect(
Collectors.collectingAndThen(
Collectors.toCollection(() -> new TreeSet<>(Comparator.comparing(DmSygdMxLj::getUniqueData))), ArrayList::new)
);
for (DmSygdMxLj dmSygdMxLj : list) {
DmSygdMx init = this.initBySksk(item, dmSygdMxLj, dcFd);
DmSygdMx init = this.initByOther(item, dmSygdMxLj);
this.updateBySksk(item,init);
if (item.getQwbBs()) {
init.setQbs("1");
init.setJssj(item.getQwbjs());
@ -409,19 +426,15 @@ public class YdjhImportService extends ServiceImpl<DmSygdMxMapper, DmSygdMx> {
return addList;
}
private List<DmSygdMx> initBySkpt(JhxfExcel item, List<DmSygdMxLj> bomList, String dcFd){
List<DmSygdMx> addList=new ArrayList<>();
if (bomList.isEmpty()){
DmSygdMx dmSygdMx = this.initDefault(item,dcFd);
addList.add(dmSygdMx);
return addList;
}
private List<DmSygdMx> initBySkpt(YdjhImport item, List<DmSygdMxLj> bomList,String dcFd,String dcPl) {
List<DmSygdMx> addList = new ArrayList<>();
ArrayList<DmSygdMxLj> list = bomList.stream().collect(
Collectors.collectingAndThen(
Collectors.toCollection(() -> new TreeSet<>(Comparator.comparing(DmSygdMxLj::getUniqueData))), ArrayList::new)
);
for (DmSygdMxLj dmSygdMxLj : list) {
DmSygdMx init = this.initBySkpt(item, dmSygdMxLj, dcFd);
DmSygdMx init = this.initByOther(item, dmSygdMxLj);
this.updateBySkpt(item,init);
if (item.getQwbBs()) {
init.setQbs("1");
init.setJssj(item.getQwbjs());
@ -431,19 +444,15 @@ public class YdjhImportService extends ServiceImpl<DmSygdMxMapper, DmSygdMx> {
return addList;
}
private List<DmSygdMx> initBySkbs(JhxfExcel item, List<DmSygdMxLj> bomList, String dcFd){
List<DmSygdMx> addList=new ArrayList<>();
if (bomList.isEmpty()){
DmSygdMx dmSygdMx = this.initDefault(item,dcFd);
addList.add(dmSygdMx);
return addList;
}
private List<DmSygdMx> initBySkbs(YdjhImport item, List<DmSygdMxLj> bomList,String dcFd,String dcPl) {
List<DmSygdMx> addList = new ArrayList<>();
ArrayList<DmSygdMxLj> list = bomList.stream().collect(
Collectors.collectingAndThen(
Collectors.toCollection(() -> new TreeSet<>(Comparator.comparing(DmSygdMxLj::getUniqueData))), ArrayList::new)
);
for (DmSygdMxLj dmSygdMxLj : list) {
DmSygdMx init = this.initBySkbs(item, dmSygdMxLj, dcFd);
DmSygdMx init = this.initByOther(item, dmSygdMxLj);
this.updateBySkbs(item,init);
if (item.getQwbBs()) {
init.setQbs("1");
init.setJssj(item.getQwbjs());
@ -453,120 +462,116 @@ public class YdjhImportService extends ServiceImpl<DmSygdMxMapper, DmSygdMx> {
return addList;
}
private void updateByYklm(JhxfExcel item, DmSygdMx dmSygdMx){
private void updateByYklm(YdjhImport item, DmSygdMx dmSygdMx) {
dmSygdMx.setKw("7");
dmSygdMx.setQgrq(item.getYkpkjs());
dmSygdMx.setHxrq(item.getYkpkjs());
}
private void updateByYksk(JhxfExcel item, DmSygdMx dmSygdMx){
private void updateByYksk(YdjhImport item, DmSygdMx dmSygdMx) {
dmSygdMx.setKw("8");
dmSygdMx.setQgrq(item.getYkpkjs());
dmSygdMx.setHxrq(item.getYkpkjs());
}
private void updateByEklm(JhxfExcel item, DmSygdMx dmSygdMx){
private void updateByEklm(YdjhImport item, DmSygdMx dmSygdMx) {
dmSygdMx.setKw("5");
dmSygdMx.setQgrq(item.getLmqgks());
dmSygdMx.setHxrq(item.getLmqgks());
}
private void updateByEksk(JhxfExcel item, DmSygdMx dmSygdMx){
private void updateByEksk(YdjhImport item, DmSygdMx dmSygdMx) {
dmSygdMx.setKw("9");
dmSygdMx.setQgrq(item.getEkskks());
dmSygdMx.setHxrq(item.getEkskks());
}
private void updateBySksk(JhxfExcel item, DmSygdMx dmSygdMx){
private void updateBySksk(YdjhImport item, DmSygdMx dmSygdMx) {
dmSygdMx.setKw("14");
dmSygdMx.setQgrq(item.getSkskqgks());
dmSygdMx.setHxrq(item.getSkskqgks());
dmSygdMx.setQgjs(item.getSkpkjs());
dmSygdMx.setQjgrq(item.getQptjs());
}
private void updateBySkpt(JhxfExcel item, DmSygdMx dmSygdMx){
private void updateBySkpt(YdjhImport item, DmSygdMx dmSygdMx) {
dmSygdMx.setKw("6");
dmSygdMx.setQgrq(item.getPtks());
}
private void updateBySkbs(JhxfExcel item, DmSygdMx dmSygdMx){
private void updateBySkbs(YdjhImport item, DmSygdMx dmSygdMx) {
dmSygdMx.setKw("15");
dmSygdMx.setQgrq(item.getPkqgjs());
}
private DmSygdMx initBySl(JhxfExcel item, DmSygdMxLj bom,String dcFd){
DmSygdMx dmSygdMx = DmSygdMx.ofWithDmSygdMxlj(bom);
dmSygdMx.setDcFd(dcFd);
dmSygdMx.setSlrq(item.getSl());
dmSygdMx.setXcpw(item.getXcpw());
dmSygdMx.setPwrq(item.getPw());
return dmSygdMx;
}
private DmSygdMx initByYklm(JhxfExcel item, DmSygdMxLj bom,String dcFd){
DmSygdMx dmSygdMx = DmSygdMx.ofWithDmSygdMxlj(bom);
dmSygdMx.setDcFd(dcFd);
dmSygdMx.setSlrq(item.getSl());
dmSygdMx.setXcpw(item.getXcpw());
dmSygdMx.setPwrq(item.getPw());
this.updateByYklm(item,dmSygdMx);
return dmSygdMx;
}
private DmSygdMx initByYksk(JhxfExcel item, DmSygdMxLj bom,String dcFd){
DmSygdMx dmSygdMx = DmSygdMx.ofWithDmSygdMxlj(bom);
dmSygdMx.setDcFd(dcFd);
dmSygdMx.setSlrq(item.getSl());
dmSygdMx.setXcpw(item.getXcpw());
dmSygdMx.setPwrq(item.getPw());
this.updateByYksk(item,dmSygdMx);
return dmSygdMx;
dmSygdMx.setQgrq(item.getSkqgks());
dmSygdMx.setQgrq(item.getSkqgks());
}
private DmSygdMx initByEklmbs(JhxfExcel item, DmSygdMxLj bom,String dcFd){
DmSygdMx dmSygdMx = DmSygdMx.ofWithDmSygdMxlj(bom);
private DmSygdMx initDefault(YdjhImport item,String dcFd,String dcPl) {
DmSygdMx dmSygdMx = new DmSygdMx();
dmSygdMx.setDcCh(item.getDcCh());
if(!"1".equals(item.getExtData())){
dmSygdMx.setDcCh1(item.getExtData());
}
dmSygdMx.setDcPl(dcPl);
dmSygdMx.setDcFd(dcFd);
dmSygdMx.setJssj(item.getFdxq());
dmSygdMx.setSlrq(item.getSl());
dmSygdMx.setXcpw(item.getXcpw());
dmSygdMx.setPwrq(item.getPw());
this.updateByEklm(item,dmSygdMx);
dmSygdMx.setLlrq(item.getPw());
if (item.getQwbBs()) {
dmSygdMx.setQbs("1");
dmSygdMx.setJssj(item.getQwbjs());
}
return dmSygdMx;
}
private DmSygdMx initByEksk(JhxfExcel item, DmSygdMxLj bom,String dcFd){
private DmSygdMx initByOther(YdjhImport item, DmSygdMxLj bom) {
DmSygdMx dmSygdMx = DmSygdMx.ofWithDmSygdMxlj(bom);
dmSygdMx.setDcFd(dcFd);
dmSygdMx.setDcCh(item.getDcCh());
if(!"1".equals(item.getExtData())){
dmSygdMx.setDcCh1(item.getExtData());
}
dmSygdMx.setDcPl(bom.getPl());
dmSygdMx.setDcFd(bom.getFd());
dmSygdMx.setSlrq(item.getSl());
dmSygdMx.setXcpw(item.getXcpw());
dmSygdMx.setPwrq(item.getPw());
this.updateByEksk(item,dmSygdMx);
return dmSygdMx;
}
private DmSygdMx initBySksk(JhxfExcel item, DmSygdMxLj bom,String dcFd){
DmSygdMx dmSygdMx = DmSygdMx.ofWithDmSygdMxlj(bom);
dmSygdMx.setDcFd(dcFd);
dmSygdMx.setJssj(item.getFdxq());
dmSygdMx.setSlrq(item.getSl());
dmSygdMx.setXcpw(item.getXcpw());
dmSygdMx.setPwrq(item.getPw());
this.updateBySksk(item,dmSygdMx);
dmSygdMx.setLlrq(item.getPw());
if (item.getQwbBs()) {
dmSygdMx.setQbs("1");
dmSygdMx.setJssj(item.getQwbjs());
}
return dmSygdMx;
}
private DmSygdMx initBySkpt(JhxfExcel item, DmSygdMxLj bom,String dcFd){
DmSygdMx dmSygdMx = DmSygdMx.ofWithDmSygdMxlj(bom);
dmSygdMx.setDcFd(dcFd);
dmSygdMx.setSlrq(item.getSl());
dmSygdMx.setXcpw(item.getXcpw());
dmSygdMx.setPwrq(item.getPw());
this.updateBySkpt(item,dmSygdMx);
return dmSygdMx;
}
/**
* @param dcCh
* @param bomList
*/
private List<DmSygdMxLj> initLj(String dcCh, HashMap<Object, DmSygdxq> map, List<DmBom> bomList) {
List<DmSygdMxLj> list = new ArrayList<>();
for (DmBom bom : bomList) {
DmSygdxq dmSygdxq = map.get(dcCh + bom.getPl() + bom.getFd());
DmSygdMxLj dmSygdMxLj = new DmSygdMxLj();
dmSygdMxLj.setDcch(dcCh);
dmSygdMxLj.setPl(bom.getPl());
dmSygdMxLj.setFd(bom.getFd());
if (dmSygdxq != null) {
dmSygdMxLj.setXzglxq(dmSygdxq.getXzglxq());
dmSygdMxLj.setDzglxq(dmSygdxq.getDzglxq());
}
if (!dcCh.equals(bom.getDcch())) {
dmSygdMxLj.setMbch(bom.getDcch());
}
BeanUtil.copyProperties(bom, dmSygdMxLj);
private DmSygdMx initBySkbs(JhxfExcel item, DmSygdMxLj bom,String dcFd){
DmSygdMx dmSygdMx = DmSygdMx.ofWithDmSygdMxlj(bom);
dmSygdMx.setDcFd(dcFd);
dmSygdMx.setSlrq(item.getSl());
dmSygdMx.setXcpw(item.getXcpw());
dmSygdMx.setPwrq(item.getPw());
this.updateBySkbs(item,dmSygdMx);
return dmSygdMx;
list.add(dmSygdMxLj);
}
return list;
}
}

@ -216,6 +216,66 @@
insert into upload_file(filepath,drr)values(#{filepath},#{yhdm})
</insert>
<select id="getBomWithYlbs" resultType="com.dsic.gj_erp.bean.jcsj.DmBom">
SELECT
dm_bom.dcch,
dm_bom.pl,
dm_bom.fd,
dm_bom.mbch,
dm_bom.pw,
dm_bom.lqlb,
dm_bom.kw,
dm_bom.zl,
dm_bom.wpcz,
dm_bom.wpgg,
dm_bom.bh,
dm_bom.bc,
dm_bom.yqyl,
dm_bom.qgcd,
dm_bom.tzbh,
dm_bom.tlsl,
dm_bom.pklx,
dm_bom.qbs,
dm_bom.pkbs,
dm_bom.pkcd,
dm_bom.dmbs,
dm_bom.dmcd,
dm_bom.zpsx,
dm_bom.ljbh,
dm_bom.ljsl,
dm_bom.ljsx,
dm_bom.djmj,
dm_bom.ljdz,
dm_bom.blgs,
dm_bom.pwgs,
dm_bom.llgs,
dm_bom.hxgs,
dm_bom.qggs,
dm_bom.pkgs,
dm_bom.qgs,
dm_bom.dmgs,
dm_bom.zpgs,
dm_bom.hxcd,
dm_bom.xcgs,
dm_bom.xcshms,
dm_bom.bclqzl,
dm_bom.bcshzl,
dm_bom.bcylzl,
dm_bom.bcljtlzl,
dm_bom.ylbhgg,
dm_bom.bcqpyld,
bc.sfyl ylbs
from
dm_bom left join
(select
dc_ch,dc_pl,tzbh,sfyl,rn
from
(select dc_ch,dc_pl,tzbh,sfyl,
ROW_NUMBER() over(PARTITION by dc_ch ,dc_pl,tzbh order by tzbh) rn from dm_bchxylp) a where a.rn=1) bc
on dm_bom.dcch =bc.dc_ch and dm_bom.pl =bc.dc_pl and dm_bom.tzbh =bc.tzbh
where
dm_bom.type = 'b' and dm_bom.dcch=#{dcCh} and dm_bom.pl=#{dcPl}
</select>
</mapper>

Loading…
Cancel
Save