| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168 |
- package cn.com.goldenwater.dcproj.service.impl.waga;
- import cn.com.goldenwater.core.service.AbstractCrudService;
- import cn.com.goldenwater.dcproj.dao.BisInspWagaPblmDao;
- import cn.com.goldenwater.dcproj.model.AttWagaRgstr;
- import cn.com.goldenwater.dcproj.model.BisInspWagaPblm;
- import cn.com.goldenwater.dcproj.model.GwComFile;
- import cn.com.goldenwater.dcproj.param.AttWagaRgstrParam;
- import cn.com.goldenwater.dcproj.param.BisInspWagaPblmParam;
- import cn.com.goldenwater.dcproj.param.GwComFileParam;
- import cn.com.goldenwater.dcproj.service.AttWagaRgstrService;
- import cn.com.goldenwater.dcproj.service.BisInspWagaPblmService;
- 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.apache.commons.lang3.StringUtils;
- 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-5-21
- */
- @Service
- @Transactional
- public class BisInspWagaPblmServiceImpl extends AbstractCrudService<BisInspWagaPblm, BisInspWagaPblmParam> implements BisInspWagaPblmService {
- @Autowired
- private BisInspWagaPblmDao bisInspWagaPblmDao;
- @Autowired
- private GwComFileService gwComFileService;
- @Autowired
- private AttWagaRgstrService attWagaRgstrService;
- public BisInspWagaPblmServiceImpl(BisInspWagaPblmDao bisInspWagaPblmDao) {
- super(bisInspWagaPblmDao);
- this.bisInspWagaPblmDao = bisInspWagaPblmDao;
- }
- @Override
- public BisInspWagaPblm get(String key) {
- BisInspWagaPblm 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 insert(BisInspWagaPblm bisInspWagaPblm) {
- String uuid = UuidUtil.uuid();
- bisInspWagaPblm.setId(uuid);
- bisInspWagaPblm.setIntm(new Date());
- bisInspWagaPblm.setUptm(new Date());
- bisInspWagaPblm.setDataStat("0");
- List<AttWagaRgstr> rslkbkRgstrList = attWagaRgstrService.findList(Builder
- .of(AttWagaRgstrParam::new)
- .with(AttWagaRgstrParam::setId, bisInspWagaPblm.getRgstrId())
- .with(AttWagaRgstrParam::setObjCode, bisInspWagaPblm.getObjCode())
- .build());
- if (rslkbkRgstrList != null && rslkbkRgstrList.size() > 0) {
- bisInspWagaPblm.setObjCode(rslkbkRgstrList.get(0).getObjCode());
- bisInspWagaPblm.setGateName(rslkbkRgstrList.get(0).getGateName());
- bisInspWagaPblm.setAdCode(rslkbkRgstrList.get(0).getAdCode());
- bisInspWagaPblm.setEngScal(rslkbkRgstrList.get(0).getEngScal());
- rslkbkRgstrList.forEach(this::updateRgtsr);
- }
- if (StringUtils.isNotBlank(bisInspWagaPblm.getRevwRectConc())) {
- bisInspWagaPblm.setRevwState("2");
- }
- int ret = this.bisInspWagaPblmDao.insert(bisInspWagaPblm);
- updateFiles(bisInspWagaPblm);
- AttWagaRgstr rgstr = attWagaRgstrService.get(bisInspWagaPblm.getRgstrId());
- updateRgtsr(rgstr);
- return ret;
- }
- @Override
- public int update(BisInspWagaPblm bisInspWagaPblm) {
- bisInspWagaPblm.setUptm(new Date());
- if (StringUtils.isNotBlank(bisInspWagaPblm.getRevwRectConc())) {
- bisInspWagaPblm.setRevwState("2");
- }
- int ret = this.bisInspWagaPblmDao.update(bisInspWagaPblm);
- List<AttWagaRgstr> rslkbkRgstrList = attWagaRgstrService.findList(Builder
- .of(AttWagaRgstrParam::new)
- .with(AttWagaRgstrParam::setId, bisInspWagaPblm.getRgstrId())
- .with(AttWagaRgstrParam::setObjCode, bisInspWagaPblm.getObjCode())
- .build());
- if (rslkbkRgstrList != null && rslkbkRgstrList.size() > 0) {
- rslkbkRgstrList.forEach(this::updateRgtsr);
- }
- updateFiles(bisInspWagaPblm);
- return ret;
- }
- private void updateRgtsr(AttWagaRgstr rgstr) {
- if (!"2".equals(rgstr.getState()) ||
- !"1".equals(rgstr.getState())) {
- rgstr.setState("1");
- attWagaRgstrService.update(rgstr);
- }
- }
- private void updateFiles(BisInspWagaPblm bisInspWagaPblm) {
- GwComFileParam param = new GwComFileParam();
- param.setBizId(bisInspWagaPblm.getId());
- param.setBizType("MEND_PROV");
- List<GwComFile> prov = gwComFileService.findList(param);
- if (bisInspWagaPblm.getGwComFiles() != null && bisInspWagaPblm.getGwComFiles().size() > 0) {
- if (prov != null) bisInspWagaPblm.getGwComFiles().addAll(prov);
- gwComFileService.updateBiz(bisInspWagaPblm.getGwComFiles(), bisInspWagaPblm.getId());
- }
- }
- @Override
- public int delete(String id) {
- return this.bisInspWagaPblmDao.delete(id);
- }
- @Override
- public PageInfo<BisInspWagaPblm> findPageInfo(BisInspWagaPblmParam param) {
- PageHelper.startPage(param);
- List<BisInspWagaPblm> list = this.bisInspWagaPblmDao.findList(param);
- if (list != null && list.size() > 0) {
- for (BisInspWagaPblm 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);
- }
- }
- return (PageInfo<BisInspWagaPblm>) new PageInfo(list);
- }
- @Override
- public PageInfo<BisInspWagaPblm> findPageWaga(BisInspWagaPblmParam param) {
- PageHelper.startPage(param);
- List<BisInspWagaPblm> list = this.bisInspWagaPblmDao.findList(param);
- return (PageInfo<BisInspWagaPblm>) new PageInfo(list);
- }
- @Override
- public BisInspWagaPblm getWithExtras(GwComFileParam gwComFileParam) {
- BisInspWagaPblm bisInspWagaPblm = bisInspWagaPblmDao.get(gwComFileParam.getId());
- Optional.ofNullable(bisInspWagaPblm).ifPresent(pblm -> {
- gwComFileParam.setId("");
- List<GwComFile> list = gwComFileService.findList(gwComFileParam);
- pblm.setGwComFiles(list);
- });
- return bisInspWagaPblm;
- }
- }
|