| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144 |
- package cn.com.goldenwater.dcproj.service.impl;
- import cn.com.goldenwater.core.service.AbstractCrudService;
- import cn.com.goldenwater.dcproj.dao.BisInspRslkbkPblmDao;
- import cn.com.goldenwater.dcproj.model.BisInspRslkbkPblm;
- import cn.com.goldenwater.dcproj.model.BisInspRslkbkRgstr;
- import cn.com.goldenwater.dcproj.model.GwComFile;
- import cn.com.goldenwater.dcproj.param.BisInspRslkbkPblmParam;
- import cn.com.goldenwater.dcproj.param.BisInspRslkbkRgstrParam;
- import cn.com.goldenwater.dcproj.param.GwComFileParam;
- import cn.com.goldenwater.dcproj.service.BisInspRslkbkPblmService;
- import cn.com.goldenwater.dcproj.service.BisInspRslkbkRgstrService;
- import cn.com.goldenwater.dcproj.service.GwComFileService;
- import cn.com.goldenwater.dcproj.utils.Builder;
- import cn.com.goldenwater.id.util.UuidUtil;
- import com.github.pagehelper.PageHelper;
- import com.github.pagehelper.PageInfo;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.stereotype.Service;
- import org.springframework.transaction.annotation.Transactional;
- import java.util.Date;
- import java.util.List;
- import java.util.Optional;
- import java.util.stream.Collectors;
- /**
- * @author lhc
- * @date 2021-4-26
- */
- @Service
- @Transactional
- public class BisInspRslkbkPblmServiceImpl extends AbstractCrudService<BisInspRslkbkPblm, BisInspRslkbkPblmParam> implements BisInspRslkbkPblmService {
- @Autowired
- private BisInspRslkbkPblmDao bisInspRslkbkPblmDao;
- @Autowired
- private BisInspRslkbkRgstrService bisInspRslkbkRgstrService;
- @Autowired
- private GwComFileService gwComFileService;
- public BisInspRslkbkPblmServiceImpl(BisInspRslkbkPblmDao bisInspRslkbkPblmDao) {
- super(bisInspRslkbkPblmDao);
- this.bisInspRslkbkPblmDao = bisInspRslkbkPblmDao;
- }
- @Override
- public int insert(BisInspRslkbkPblm bisInspRslkbkPblm) {
- bisInspRslkbkPblm.setId(UuidUtil.uuid());
- bisInspRslkbkPblm.setIntm(new Date());
- bisInspRslkbkPblm.setUptm(new Date());
- bisInspRslkbkPblm.setDataStat("0");
- List<BisInspRslkbkRgstr> rslkbkRgstrList = bisInspRslkbkRgstrService.findList(Builder
- .of(BisInspRslkbkRgstrParam::new)
- .with(BisInspRslkbkRgstrParam::setId, bisInspRslkbkPblm.getRgstrId())
- .with(BisInspRslkbkRgstrParam::setRsCode, bisInspRslkbkPblm.getRsCode())
- .build());
- if (rslkbkRgstrList != null && rslkbkRgstrList.size() > 0) {
- bisInspRslkbkPblm.setRsCode(rslkbkRgstrList.get(0).getRsCode());
- bisInspRslkbkPblm.setRsName(rslkbkRgstrList.get(0).getRsName());
- bisInspRslkbkPblm.setAdCode(rslkbkRgstrList.get(0).getAdCode());
- bisInspRslkbkPblm.setDamRegCode(rslkbkRgstrList.get(0).getDamRegCode());
- bisInspRslkbkPblm.setEngScal(rslkbkRgstrList.get(0).getEngScal());
- rslkbkRgstrList.forEach(this::updateRgtsr);
- }
- int ret = this.bisInspRslkbkPblmDao.insert(bisInspRslkbkPblm);
- updateFiles(bisInspRslkbkPblm);
- BisInspRslkbkRgstr rgstr = bisInspRslkbkRgstrService.get(bisInspRslkbkPblm.getRgstrId());
- updateRgtsr(rgstr);
- return ret;
- }
- private void updateFiles(BisInspRslkbkPblm bisInspRslkbkPblm) {
- GwComFileParam param = new GwComFileParam();
- param.setBizId(bisInspRslkbkPblm.getId());
- param.setBizType("MEND_PROV");
- List<GwComFile> prov = gwComFileService.findList(param);
- if (bisInspRslkbkPblm.getGwComFiles() != null && bisInspRslkbkPblm.getGwComFiles().size() > 0) {
- if (prov != null) bisInspRslkbkPblm.getGwComFiles().addAll(prov);
- gwComFileService.updateBiz(bisInspRslkbkPblm.getGwComFiles(), bisInspRslkbkPblm.getId());
- }
- }
- private void updateRgtsr(BisInspRslkbkRgstr rslkbkRgstr) {
- if (!"2".equals(rslkbkRgstr.getState()) ||
- !"1".equals(rslkbkRgstr.getState())) {
- rslkbkRgstr.setState("1");
- bisInspRslkbkRgstrService.update(rslkbkRgstr);
- }
- }
- @Override
- public BisInspRslkbkPblm get(String key) {
- BisInspRslkbkPblm pblm = super.get(key);
- Optional.ofNullable(pblm).ifPresent(p -> {
- List<GwComFile> list = gwComFileService.findList(Builder.of(GwComFileParam::new).with(GwComFileParam::setBizId, p.getId()).build());
- p.setGwComFiles(list);
- });
- return pblm;
- }
- @Override
- public int update(BisInspRslkbkPblm bisInspRslkbkPblm) {
- bisInspRslkbkPblm.setUptm(new Date());
- int ret = this.bisInspRslkbkPblmDao.update(bisInspRslkbkPblm);
- List<BisInspRslkbkRgstr> rslkbkRgstrList = bisInspRslkbkRgstrService.findList(Builder
- .of(BisInspRslkbkRgstrParam::new)
- .with(BisInspRslkbkRgstrParam::setId, bisInspRslkbkPblm.getRgstrId())
- .with(BisInspRslkbkRgstrParam::setRsCode, bisInspRslkbkPblm.getRsCode())
- .build());
- if (rslkbkRgstrList != null && rslkbkRgstrList.size() > 0) {
- rslkbkRgstrList.forEach(this::updateRgtsr);
- }
- updateFiles(bisInspRslkbkPblm);
- return ret;
- }
- @Override
- public int delete(String id) {
- return this.bisInspRslkbkPblmDao.delete(id);
- }
- @Override
- public PageInfo<BisInspRslkbkPblm> findPageInfo(BisInspRslkbkPblmParam param) {
- PageHelper.startPage(param);
- List<BisInspRslkbkPblm> list = this.bisInspRslkbkPblmDao.findList(param);
- if (list != null && list.size() > 0) {
- for (BisInspRslkbkPblm pblm : list) {
- List<GwComFile> gwComFileList = gwComFileService.findList(Builder.of(GwComFileParam::new).with(GwComFileParam::setBizId, pblm.getId()).build());
- if (gwComFileList != null && gwComFileList.size() > 0) {
- gwComFileList = gwComFileList.stream().filter(file -> "MEND_EXTRA".equals(file.getBizType())).collect(Collectors.toList());
- }
- pblm.setGwComFiles(gwComFileList);
- }
- }
- PageInfo<BisInspRslkbkPblm> pageInfo = new PageInfo(list);
- return pageInfo;
- }
- }
|