| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225 |
- package cn.com.goldenwater.dcproj.service.impl.rssfdr;
- import cn.com.goldenwater.core.service.AbstractCrudService;
- import cn.com.goldenwater.dcproj.constValue.BisInspEnum;
- import cn.com.goldenwater.dcproj.constValue.SplitValue;
- import cn.com.goldenwater.dcproj.constValue.StateEnum;
- import cn.com.goldenwater.dcproj.dao.*;
- import cn.com.goldenwater.dcproj.dto.BisInspRssfdrRgstrDto;
- import cn.com.goldenwater.dcproj.dto.BisNewDcuserRelVillDto;
- import cn.com.goldenwater.dcproj.model.AttRsBase;
- import cn.com.goldenwater.dcproj.model.BisInspAllObj;
- import cn.com.goldenwater.dcproj.model.BisInspRssfdrRgstr;
- import cn.com.goldenwater.dcproj.model.BisZhejiangDcuserRelVill;
- import cn.com.goldenwater.dcproj.param.*;
- import cn.com.goldenwater.dcproj.service.BisInspObjStrategy;
- import cn.com.goldenwater.dcproj.service.BisInspRssfdrRgstrService;
- import cn.com.goldenwater.dcproj.utils.AdLevelUtil;
- import cn.com.goldenwater.id.util.UuidUtil;
- import com.github.pagehelper.PageHelper;
- import com.github.pagehelper.PageInfo;
- import org.apache.commons.collections.CollectionUtils;
- import org.apache.commons.lang3.StringUtils;
- import org.springframework.beans.BeanUtils;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.stereotype.Service;
- import org.springframework.transaction.annotation.Transactional;
- import javax.servlet.http.HttpServletResponse;
- import java.util.ArrayList;
- import java.util.Date;
- import java.util.List;
- /**
- * @author lune
- * @date 2020-9-11
- */
- @Service
- @Transactional(rollbackFor = Exception.class)
- public class BisInspRssfdrRgstrServiceImpl extends AbstractCrudService<BisInspRssfdrRgstr, BisInspRssfdrRgstrParam> implements BisInspRssfdrRgstrService, BisInspObjStrategy {
- @Autowired
- private BisInspRssfdrRgstrDao bisInspRssfdrRgstrDao;
- @Autowired
- private BisInspPblmDao bisInspPblmDao;
- @Autowired
- private BisInspAllObjDao bisInspAllObjDao;
- @Autowired
- private AttRsBaseDao attRsBaseDao;
- @Autowired
- private BisInspRssfdrRgstrBuildDao bisInspRssfdrRgstrBuildDao;
- @Autowired
- private BisInspRssfdrRgstrImplmtDao bisInspRssfdrRgstrImplmtDao;
- public BisInspRssfdrRgstrServiceImpl(BisInspRssfdrRgstrDao bisInspRssfdrRgstrDao) {
- super(bisInspRssfdrRgstrDao);
- this.bisInspRssfdrRgstrDao = bisInspRssfdrRgstrDao;
- }
- @Override
- public void insertObj(BisInspAllObj bisInspAllObj, String persId) {
- AttRsBase base = attRsBaseDao.get(bisInspAllObj.getCode());
- BisInspRssfdrRgstr rgstr = new BisInspRssfdrRgstr();
- BeanUtils.copyProperties(base, rgstr);
- rgstr.setId(UuidUtil.uuid());
- rgstr.setObjId(bisInspAllObj.getObjId());
- rgstr.setRsCode(bisInspAllObj.getCode());
- rgstr.setRsName(bisInspAllObj.getNm());
- rgstr.setAdCode(base.getAdmDiv());
- rgstr.setAdName(base.getLocation());
- rgstr.setGdX(Double.valueOf(base.getCenterXGd() == null ? "0" : base.getCenterXGd()));
- rgstr.setGdY(Double.valueOf(base.getCenterYGd() == null ? "0" : base.getCenterYGd()));
- rgstr.setAdCode(base.getAdmDiv());
- rgstr.setAdName(base.getLocation());
- rgstr.setAddr(base.getRsLoc());
- rgstr.setResCreateTime(base.getCompDate());
- rgstr.setDamType(base.getDamType());
- rgstr.setDamRegCode(base.getRegCode());
- rgstr.setState(StateEnum.NOWASTSTATE.getKey());
- rgstr.setSfdrState(StateEnum.NOWASTSTATE.getKey());
- rgstr.setIntm(new Date());
- rgstr.setUptm(new Date());
- bisInspRssfdrRgstrDao.insert(rgstr);
- }
- @Override
- public String getType() {
- return BisInspEnum.RSSFDR.getValue();
- }
- @Override
- public void cleanObjData(String objId) {
- BisInspRssfdrRgstrParam rgstrParam = new BisInspRssfdrRgstrParam();
- rgstrParam.setObjId(objId);
- List<BisInspRssfdrRgstr> rgstrList = bisInspRssfdrRgstrDao.findList(rgstrParam);
- if (CollectionUtils.isNotEmpty(rgstrList)) {
- String id = rgstrList.get(0).getId();
- //删除问题
- BisInspPblmParam bisInspPblmParam = new BisInspPblmParam();
- bisInspPblmParam.setObjId(objId);
- bisInspPblmParam.setObjType(BisInspEnum.WINTU.getValue());
- this.bisInspPblmDao.deleteBy(bisInspPblmParam);
- //删除对象名录表
- BisInspAllObjParam bisInspAllObjParam = new BisInspAllObjParam();
- bisInspAllObjParam.setObjId(objId);
- this.bisInspAllObjDao.deleteBy(bisInspAllObjParam);
- BisInspRssfdrRgstrBuildParam buildParam = new BisInspRssfdrRgstrBuildParam();
- buildParam.setRgstrId(id);
- bisInspRssfdrRgstrBuildDao.deleteBy(buildParam);
- BisInspRssfdrRgstrImplmtParam implmtParam = new BisInspRssfdrRgstrImplmtParam();
- implmtParam.setRgstrId(id);
- bisInspRssfdrRgstrImplmtDao.deleteBy(implmtParam);
- bisInspRssfdrRgstrDao.delete(id);
- }
- }
- public String getAdCode(String regid) {
- BisInspRssfdrRgstr rgstr = bisInspRssfdrRgstrDao.get(regid);
- if (rgstr != null && StringUtils.isNotBlank(rgstr.getAdCode())) {
- return rgstr.getAdCode().substring(0, 2);
- }
- return null;
- }
- @Override
- public PageInfo findObjPageByType(TypeParam typeParam, HttpServletResponse response) {
- return this.findRssfdrPage(typeParam);
- }
- @Override
- public Object findObjListByType(TypeParam typeParam) {
- List<BisInspRssfdrRgstrDto> list = bisInspRssfdrRgstrDao.findRssfdrList(typeParam);
- if (list.size() > 0) {
- for (BisInspRssfdrRgstrDto rgstrDto : list) {
- String adFullName = rgstrDto.getAdName();
- if (StringUtils.isBlank(adFullName)) {
- continue;
- }
- if (adFullName.contains(SplitValue.HENG_SPLIT)) {
- String[] split = adFullName.split(SplitValue.HENG_SPLIT);
- if (split.length == 3) {
- rgstrDto.setProvince(split[0]);
- rgstrDto.setCity(split[1]);
- rgstrDto.setCountry(split[2]);
- }
- if (split.length == 2) {
- rgstrDto.setProvince(split[0]);
- rgstrDto.setCity(split[1]);
- rgstrDto.setCountry("");
- }
- } else {
- rgstrDto.setProvince(adFullName);
- }
- }
- }
- return list;
- }
- @Override
- public PageInfo<BisInspRssfdrRgstrDto> findRssfdrPage(TypeParam param) {
- if (StringUtils.isNotBlank(param.getAdCode())) {
- param.setAdCode(String.valueOf(AdLevelUtil.SubAd(param.getAdCode()).get(SplitValue.SUBAD)));
- }
- if (StringUtils.isNotBlank(param.getAdCodes())) {
- param.setAdCodes(AdLevelUtil.getListAddvcd(param.getAdCodes()));
- }
- PageHelper.startPage(param);
- List<BisInspRssfdrRgstrDto> list = bisInspRssfdrRgstrDao.findRssfdrList(param);
- if (list.size() > 0) {
- for (BisInspRssfdrRgstrDto rgstrDto : list) {
- String adFullName = rgstrDto.getAdName();
- if (StringUtils.isBlank(adFullName)) {
- continue;
- }
- if (adFullName.contains(SplitValue.HENG_SPLIT)) {
- String[] split = adFullName.split(SplitValue.HENG_SPLIT);
- if (split.length == 3) {
- rgstrDto.setProvince(split[0]);
- rgstrDto.setCity(split[1]);
- rgstrDto.setCountry(split[2]);
- }
- if (split.length == 2) {
- rgstrDto.setProvince(split[0]);
- rgstrDto.setCity(split[1]);
- rgstrDto.setCountry("");
- }
- } else {
- rgstrDto.setProvince(adFullName);
- }
- }
- }
- return new PageInfo<>(list);
- }
- @Override
- public List<BisNewDcuserRelVillDto> findZhenListByType(String adCode, String regstrId, String type) {
- List<BisZhejiangDcuserRelVill> dcuserRelVillList = bisInspRssfdrRgstrDao.findCunListByType(adCode, regstrId, type);
- List<String> zhenList = new ArrayList<>();
- for (BisZhejiangDcuserRelVill bisZhejiangDcuserRelVill : dcuserRelVillList) {
- String townName = bisZhejiangDcuserRelVill.getTownName();
- if (!zhenList.contains(townName)) {
- zhenList.add(townName);
- }
- }
- List<BisNewDcuserRelVillDto> dcuserRelVillDtos = new ArrayList<>();
- for (int i = 0; i < zhenList.size(); i++) {
- BisNewDcuserRelVillDto dcuserRelVillDto = new BisNewDcuserRelVillDto();
- List<BisZhejiangDcuserRelVill> cunList = new ArrayList<>();
- String townCode = "";
- for (int j = 0; j < dcuserRelVillList.size(); j++) {
- if (zhenList.get(i).equals(dcuserRelVillList.get(j).getTownName())) {
- cunList.add(dcuserRelVillList.get(j));
- townCode = dcuserRelVillList.get(j).getAdCode();
- townCode = townCode.substring(0, townCode.length() - 3);
- }
- }
- dcuserRelVillDto.setTownCode(townCode);
- dcuserRelVillDto.setTownName(zhenList.get(i));
- dcuserRelVillDto.setDcuserRelVilles(cunList);
- dcuserRelVillDtos.add(dcuserRelVillDto);
- }
- return dcuserRelVillDtos;
- }
- }
|