| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416 |
- package cn.com.goldenwater.dcproj.service.impl.irr;
- import cn.com.goldenwater.core.service.AbstractCrudService;
- import cn.com.goldenwater.dcproj.constValue.BisInspEnum;
- import cn.com.goldenwater.dcproj.constValue.BisInspIrrEnum;
- 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.BisInspIrrRgstrChildreDto;
- import cn.com.goldenwater.dcproj.dto.BisInspRgstrDto;
- import cn.com.goldenwater.dcproj.model.*;
- import cn.com.goldenwater.dcproj.param.*;
- import cn.com.goldenwater.dcproj.service.BisInspIrrRgstrService;
- import cn.com.goldenwater.dcproj.service.BisInspObjStrategy;
- import cn.com.goldenwater.dcproj.utils.AdLevelUtil;
- import cn.com.goldenwater.id.util.UuidUtil;
- import cn.com.goldenwater.util.common.InspPblmUtils;
- import com.github.pagehelper.PageHelper;
- import com.github.pagehelper.PageInfo;
- import org.apache.commons.lang3.StringUtils;
- import org.apache.poi.hssf.usermodel.HSSFWorkbook;
- import org.apache.poi.ss.usermodel.Cell;
- import org.apache.poi.ss.usermodel.Row;
- import org.apache.poi.ss.usermodel.Sheet;
- import org.apache.poi.ss.usermodel.Workbook;
- import org.apache.poi.xssf.usermodel.XSSFWorkbook;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.stereotype.Service;
- import org.springframework.transaction.annotation.Transactional;
- import org.springframework.web.multipart.MultipartFile;
- import javax.servlet.http.HttpServletResponse;
- import java.io.IOException;
- import java.io.InputStream;
- import java.lang.reflect.Field;
- import java.util.ArrayList;
- import java.util.Date;
- import java.util.List;
- import static cn.com.goldenwater.dcproj.utils.impexcel.ImpUtil.XLS;
- /**
- * @author lune
- * @date 2020-4-30
- */
- @Service
- @Transactional
- public class BisInspIrrRgstrServiceImpl extends AbstractCrudService<BisInspIrrRgstr, BisInspIrrRgstrParam> implements BisInspIrrRgstrService,BisInspObjStrategy {
- @Autowired
- private BisInspIrrRgstrDao bisInspIrrRgstrDao;
- @Autowired
- private BisInspPblmDao bisInspPblmDao;
- @Autowired
- private BisInspAllObjDao bisInspAllObjDao;
- @Autowired
- private AttAdXBaseDao attAdXBaseDao;
- public BisInspIrrRgstrServiceImpl(BisInspIrrRgstrDao bisInspIrrRgstrDao) {
- super(bisInspIrrRgstrDao);
- this.bisInspIrrRgstrDao = bisInspIrrRgstrDao;
- }
- @Override
- public void insertObj(BisInspAllObj bisInspAllObj, String persId) {
- AttAdXBase xBase = attAdXBaseDao.getByCode(bisInspAllObj.getCode());
- BisInspIrrRgstr rgstr = new BisInspIrrRgstr();
- rgstr.setId(UuidUtil.uuid());
- rgstr.setIntm(new Date());
- rgstr.setUptm(new Date());
- rgstr.setDataStat(StateEnum.NOWASTSTATE.getKey());
- rgstr.setState(StateEnum.NOWASTSTATE.getKey());
- rgstr.setObjId(bisInspAllObj.getObjId());
- rgstr.setAdCode(xBase.getAdCode());
- rgstr.setAdName(xBase.getAdName());
- rgstr.setAdFullName(xBase.getAdFullName());
- bisInspIrrRgstrDao.insert(rgstr);
- }
- @Override
- public void cleanObjData(String objId) {
- BisInspIrrRgstrParam param = new BisInspIrrRgstrParam();
- param.setObjId(objId);
- List< BisInspIrrRgstr> list = this.bisInspIrrRgstrDao.findList(param);
- if (list.size() > 0) {
- String id = list.get(0).getId();
- BisInspPblmParam bisInspPblmParam = new BisInspPblmParam();
- bisInspPblmParam.setObjId(objId);
- bisInspPblmParam.setObjType(BisInspEnum.MFDP.getValue());
- this.bisInspPblmDao.deleteBy(bisInspPblmParam);//删除问题
- bisInspIrrRgstrDao.delete(id);
- BisInspAllObjParam bisInspAllObjParam = new BisInspAllObjParam();
- bisInspAllObjParam.setObjId(objId);
- this.bisInspAllObjDao.deleteBy(bisInspAllObjParam);//删除督查对象
- //删除附表
- BisInspIrrTownsDsuParam bisInspIrrTownsDsuParam = new BisInspIrrTownsDsuParam();
- bisInspIrrTownsDsuParam.setRgstrId(id);
- bisInspIrrTownsDsuDao.deleteBy(bisInspIrrTownsDsuParam);
- BisInspIrrWellParam bisInspIrrWellParam = new BisInspIrrWellParam();
- bisInspIrrWellParam.setRgstrId(id);
- bisInspIrrWellDao.deleteBy(bisInspIrrWellParam);
- BisInspIrrWasParam bisInspIrrWasParam = new BisInspIrrWasParam();
- bisInspIrrWasParam.setRgstrId(id);
- bisInspIrrWasDao.deleteBy(bisInspIrrWasParam);
- BisInspIrrPitParam bisInspIrrPitParam = new BisInspIrrPitParam();
- bisInspIrrPitParam.setRgstrId(id);
- bisInspIrrPitDao.deleteBy(bisInspIrrPitParam);
- BisInspIrrPondParam bisInspIrrPondParam = new BisInspIrrPondParam();
- bisInspIrrPondParam.setRgstrId(id);
- bisInspIrrPondDao.deleteBy(bisInspIrrPondParam);
- BisInspIrrPustParam bisInspIrrPustParam = new BisInspIrrPustParam();
- bisInspIrrPustParam.setRgstrId(id);
- bisInspIrrPustDao.deleteBy(bisInspIrrPustParam);
- BisInspIrrMicroParam bisInspIrrMicroParam = new BisInspIrrMicroParam();
- bisInspIrrMicroParam.setRgstrId(id);
- bisInspIrrMicroDao.deleteBy(bisInspIrrMicroParam);
- BisInspIrrSprayParam bisInspIrrSprayParam = new BisInspIrrSprayParam();
- bisInspIrrSprayParam.setRgstrId(id);
- bisInspIrrSprayDao.deleteBy(bisInspIrrSprayParam);
- BisInspIrrPipeParam bisInspIrrPipeParam = new BisInspIrrPipeParam();
- bisInspIrrPipeParam.setRgstrId(id);
- bisInspIrrPipeDao.deleteBy(bisInspIrrPipeParam);
- BisInspIrrChanParam bisInspIrrChanParam = new BisInspIrrChanParam();
- bisInspIrrChanParam.setRgstrId(id);
- bisInspIrrChanDao.deleteBy(bisInspIrrChanParam);
- BisInspIrrWtusrParam bisInspIrrWtusrParam = new BisInspIrrWtusrParam();
- bisInspIrrWtusrParam.setRgstrId(id);
- bisInspIrrWtusrDao.deleteBy(bisInspIrrWtusrParam);
- }
- }
- @Override
- public PageInfo findObjPageByType(TypeParam typeParam, HttpServletResponse response) {
- return this.findIrrPage(typeParam,response);
- }
- @Override
- public Object findObjListByType(TypeParam typeParam) {
- if (StringUtils.isNotBlank(typeParam.getAdCode())) {
- typeParam.setAdCode(String.valueOf(AdLevelUtil.SubAd(typeParam.getAdCode()).get(SplitValue.SUBAD)));
- }
- if (StringUtils.isNotBlank(typeParam.getAdCodes())) {
- typeParam.setAdCodes(AdLevelUtil.getListAddvcd(typeParam.getAdCodes()));
- }
- List<BisInspRgstrDto> list = bisInspIrrRgstrDao.findIrrList(typeParam);
- return InspPblmUtils.changeList(list);
- }
- @Override
- public String getType() {
- return BisInspEnum.IRR.getValue();
- }
- @Override
- public PageInfo<BisInspRgstrDto> findIrrPage(TypeParam param, HttpServletResponse response) {
- 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<BisInspRgstrDto> list = bisInspIrrRgstrDao.findIrrList(param);
- list= InspPblmUtils.changeList(list);
- return new PageInfo<BisInspRgstrDto>(list);
- }
- @Autowired
- private BisInspIrrTownsDsuDao bisInspIrrTownsDsuDao;
- @Autowired
- private BisInspIrrWellDao bisInspIrrWellDao;
- @Autowired
- private BisInspIrrWasDao bisInspIrrWasDao;
- @Autowired
- private BisInspIrrPitDao bisInspIrrPitDao;
- @Autowired
- private BisInspIrrPondDao bisInspIrrPondDao;
- @Autowired
- private BisInspIrrPustDao bisInspIrrPustDao;
- @Autowired
- private BisInspIrrMicroDao bisInspIrrMicroDao;
- @Autowired
- private BisInspIrrSprayDao bisInspIrrSprayDao;
- @Autowired
- private BisInspIrrPipeDao bisInspIrrPipeDao;
- @Autowired
- private BisInspIrrChanDao bisInspIrrChanDao;
- @Autowired
- private BisInspIrrWtusrDao bisInspIrrWtusrDao;
- /**
- * 类型比较死
- * @param bisInspIrrRgstrParam
- * @return
- */
- @Override
- public PageInfo<BisInspIrrRgstrChildreDto> findChildrenPage(BisInspIrrRgstrParam bisInspIrrRgstrParam) {
- PageHelper.startPage(bisInspIrrRgstrParam);
- List list = null;
- if (BisInspIrrEnum.TOWNSDSU.getKey().equals(bisInspIrrRgstrParam.getType())) {
- BisInspIrrTownsDsuParam param = new BisInspIrrTownsDsuParam();
- param.setAdName(bisInspIrrRgstrParam.getName());
- param.setRgstrId(bisInspIrrRgstrParam.getId());
- list = bisInspIrrTownsDsuDao.findList(param);
- } else if (BisInspIrrEnum.WELL.getKey().equals(bisInspIrrRgstrParam.getType())) {
- BisInspIrrWellParam param = new BisInspIrrWellParam();
- param.setName(bisInspIrrRgstrParam.getName());
- param.setRgstrId(bisInspIrrRgstrParam.getId());
- list = bisInspIrrWellDao.findList(param);
- } else if (BisInspIrrEnum.WAS.getKey().equals(bisInspIrrRgstrParam.getType())) {
- BisInspIrrWasParam param = new BisInspIrrWasParam();
- param.setRgstrId(bisInspIrrRgstrParam.getId());
- param.setName(bisInspIrrRgstrParam.getName());
- list = bisInspIrrWasDao.findList(param);
- } else if (BisInspIrrEnum.PIT.getKey().equals(bisInspIrrRgstrParam.getType())) {
- BisInspIrrPitParam param = new BisInspIrrPitParam();
- param.setRgstrId(bisInspIrrRgstrParam.getId());
- param.setName(bisInspIrrRgstrParam.getName());
- list = bisInspIrrPitDao.findList(param);
- } else if (BisInspIrrEnum.POND.getKey().equals(bisInspIrrRgstrParam.getType())) {
- BisInspIrrPondParam param = new BisInspIrrPondParam();
- param.setRgstrId(bisInspIrrRgstrParam.getId());
- param.setName(bisInspIrrRgstrParam.getName());
- list = bisInspIrrPondDao.findList(param);
- } else if (BisInspIrrEnum.PUST.getKey().equals(bisInspIrrRgstrParam.getType())) {
- BisInspIrrPustParam param = new BisInspIrrPustParam();
- param.setRgstrId(bisInspIrrRgstrParam.getId());
- param.setName(bisInspIrrRgstrParam.getName());
- list = bisInspIrrPustDao.findList(param);
- } else if (BisInspIrrEnum.MICRO.getKey().equals(bisInspIrrRgstrParam.getType())) {
- BisInspIrrMicroParam param = new BisInspIrrMicroParam();
- param.setRgstrId(bisInspIrrRgstrParam.getId());
- list = bisInspIrrMicroDao.findList(param);
- } else if (BisInspIrrEnum.SPRAY.getKey().equals(bisInspIrrRgstrParam.getType())) {
- BisInspIrrSprayParam param = new BisInspIrrSprayParam();
- param.setName(bisInspIrrRgstrParam.getName());
- param.setRgstrId(bisInspIrrRgstrParam.getId());
- list = bisInspIrrSprayDao.findList(param);
- } else if (BisInspIrrEnum.PIPE.getKey().equals(bisInspIrrRgstrParam.getType())) {
- BisInspIrrPipeParam param = new BisInspIrrPipeParam();
- param.setRgstrId(bisInspIrrRgstrParam.getId());
- param.setName(bisInspIrrRgstrParam.getName());
- list = bisInspIrrPipeDao.findList(param);
- } else if (BisInspIrrEnum.CHAN.getKey().equals(bisInspIrrRgstrParam.getType())) {
- BisInspIrrChanParam param = new BisInspIrrChanParam();
- param.setRgstrId(bisInspIrrRgstrParam.getId());
- param.setName(bisInspIrrRgstrParam.getName());
- list = bisInspIrrChanDao.findList(param);
- } else if (BisInspIrrEnum.WTUSR.getKey().equals(bisInspIrrRgstrParam.getType())) {
- BisInspIrrWtusrParam param = new BisInspIrrWtusrParam();
- param.setRgstrId(bisInspIrrRgstrParam.getId());
- param.setUswtName(bisInspIrrRgstrParam.getName());
- List<BisInspIrrWtusr> wtusrs= bisInspIrrWtusrDao.findList(param);
- List<BisInspIrrRgstrChildreDto> result = new ArrayList<>();
- for (BisInspIrrWtusr wtusr : wtusrs) {
- BisInspIrrRgstrChildreDto dto = new BisInspIrrRgstrChildreDto();
- dto.setId(wtusr.getId());
- dto.setRgstrId(wtusr.getRgstrId());
- dto.setObjId(wtusr.getObjId());
- dto.setName(wtusr.getUswtName());
- dto.setAdCode(wtusr.getAdCode());
- dto.setAdName(wtusr.getAdName());
- dto.setSour(wtusr.getUswtPhone());
- dto.setCompDate(String.valueOf(wtusr.getEffIrrArea()));
- result.add(dto);
- }
- return new PageInfo<>(result);
- }
- if (list != null) {
- List<BisInspIrrRgstrChildreDto> childreDtos = formatChildreList(list);
- return new PageInfo<>(childreDtos);
- }
- return null;
- }
- private List<BisInspIrrRgstrChildreDto> formatChildreList(List list) {
- List<BisInspIrrRgstrChildreDto> dtoList = new ArrayList<>();
- Field[] fileds = BisInspIrrRgstrChildreDto.class.getDeclaredFields();
- for (Object object : list) {
- BisInspIrrRgstrChildreDto dto = new BisInspIrrRgstrChildreDto();
- for (Field filed : fileds) {
- String fieldName = filed.getName();
- try {
- Field fi = object.getClass().getDeclaredField(fieldName);
- fi.setAccessible(true);
- Field childField = dto.getClass().getDeclaredField(fieldName);
- childField.setAccessible(true);
- childField.set(dto,fi.get(object));
- } catch (Exception e) {
- continue;
- }
- }
- dtoList.add(dto);
- }
- return dtoList;
- }
- @Override
- public int delChildren(BisInspIrrRgstrParam bisInspIrrRgstrParam) {
- if (BisInspIrrEnum.TOWNSDSU.getKey().equals(bisInspIrrRgstrParam.getType())) {
- bisInspIrrTownsDsuDao.delete(bisInspIrrRgstrParam.getId());
- } else if (BisInspIrrEnum.WELL.getKey().equals(bisInspIrrRgstrParam.getType())) {
- bisInspIrrWellDao.delete(bisInspIrrRgstrParam.getId());
- } else if (BisInspIrrEnum.WAS.getKey().equals(bisInspIrrRgstrParam.getType())) {
- bisInspIrrWasDao.delete(bisInspIrrRgstrParam.getId());
- } else if (BisInspIrrEnum.PIT.getKey().equals(bisInspIrrRgstrParam.getType())) {
- bisInspIrrPitDao.delete(bisInspIrrRgstrParam.getId());
- } else if (BisInspIrrEnum.POND.getKey().equals(bisInspIrrRgstrParam.getType())) {
- bisInspIrrPondDao.delete(bisInspIrrRgstrParam.getId());
- } else if (BisInspIrrEnum.PUST.getKey().equals(bisInspIrrRgstrParam.getType())) {
- bisInspIrrPustDao.delete(bisInspIrrRgstrParam.getId());
- } else if (BisInspIrrEnum.MICRO.getKey().equals(bisInspIrrRgstrParam.getType())) {
- bisInspIrrMicroDao.delete(bisInspIrrRgstrParam.getId());
- } else if (BisInspIrrEnum.SPRAY.getKey().equals(bisInspIrrRgstrParam.getType())) {
- bisInspIrrSprayDao.delete(bisInspIrrRgstrParam.getId());
- } else if (BisInspIrrEnum.PIPE.getKey().equals(bisInspIrrRgstrParam.getType())) {
- bisInspIrrPipeDao.delete(bisInspIrrRgstrParam.getId());
- } else if (BisInspIrrEnum.CHAN.getKey().equals(bisInspIrrRgstrParam.getType())) {
- bisInspIrrChanDao.delete(bisInspIrrRgstrParam.getId());
- } else if (BisInspIrrEnum.WTUSR.getKey().equals(bisInspIrrRgstrParam.getType())) {
- bisInspIrrWtusrDao.delete(bisInspIrrRgstrParam.getId());
- }
- return 0;
- }
- @Autowired
- private ObjInspPblmsDao objInspPblmsDao;
- @Override
- public int importObjInspPblms(MultipartFile file) {
- String guid = "280000000000000000000000000000";
- Workbook wb = null;
- InputStream fis = null;
- List<Row> rowList = new ArrayList<Row>();
- try {
- fis = file.getInputStream();
- if (file.getOriginalFilename().endsWith(XLS)) {
- wb = new HSSFWorkbook(fis);
- } else {
- wb = new XSSFWorkbook(fis);
- }
- Sheet sheet = wb.getSheetAt(0);
- Row row = null;
- int lastRowNum = sheet.getPhysicalNumberOfRows();
- for (int i = sheet.getFirstRowNum(); i < lastRowNum; i++) {
- row = sheet.getRow(i);
- if (row != null) {
- rowList.add(row);
- }
- }
- } catch (IOException e) {
- e.printStackTrace();
- } finally {
- if (wb != null) {
- try {
- wb.close();
- } catch (IOException e) {
- e.printStackTrace();
- }
- }
- if (fis != null) {
- try {
- fis.close();
- } catch (IOException e) {
- e.printStackTrace();
- }
- }
- }
- if (rowList.size() > 1) {
- Row row = null;
- for (int i = 1; i < rowList.size(); i++) {
- row = rowList.get(i);
- ObjInspPblms objInspPblms = new ObjInspPblms();
- objInspPblms.setPguid("28000000000000000000000000000000");
- objInspPblms.setType("28");
- objInspPblms.setInspPblmCate("1");
- objInspPblms.setAttach("1");
- objInspPblms.setSnClass("1");
- objInspPblms.setDataStat("1");
- for (int j = row.getFirstCellNum(); j <= row.getPhysicalNumberOfCells(); j++) {
- Cell cell = row.getCell(j);
- if (cell == null) {
- continue;
- }
- if (j == 0) {
- String index = Integer.valueOf(String.valueOf(cell)) + "";
- objInspPblms.setSn(index);
- objInspPblms.setSnNum(index);
- if (index.length() < 2) {
- objInspPblms.setGuid("2800000000000000000000000000000" + index);
- } else {
- objInspPblms.setGuid("280000000000000000000000000000" + index);
- }
- }
- if (j == 1) {
- objInspPblms.setInspPblmsName(String.valueOf(cell));
- }
- if (j == 2) {
- objInspPblms.setCheckPoint(String.valueOf(cell));
- }
- }
- if (StringUtils.isBlank(objInspPblms.getInspPblmsName())) {
- continue;
- }
- objInspPblmsDao.insert(objInspPblms);
- }
- }
- return 0;
- }
- }
|