| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514 |
- package cn.com.goldenwater.dcproj.service.impl.mend;
- import cn.com.goldenwater.core.model.BaseBean;
- import cn.com.goldenwater.core.service.AbstractCrudService;
- import cn.com.goldenwater.dcproj.annotation.NotExport;
- import cn.com.goldenwater.dcproj.constValue.BisInspEnum;
- import cn.com.goldenwater.dcproj.constValue.SplitValue;
- import cn.com.goldenwater.dcproj.dao.BisInspPblmPlistDao;
- import cn.com.goldenwater.dcproj.dao.BisInspPblmPlistLogDao;
- import cn.com.goldenwater.dcproj.dao.BisInspRsvrRgstrDao;
- import cn.com.goldenwater.dcproj.dto.LoginUser;
- import cn.com.goldenwater.dcproj.model.AttAdBase;
- import cn.com.goldenwater.dcproj.model.BisInspAllRlationPers;
- import cn.com.goldenwater.dcproj.model.BisInspPblm;
- import cn.com.goldenwater.dcproj.model.BisInspPblmPlist;
- import cn.com.goldenwater.dcproj.model.BisInspPblmPlistLog;
- import cn.com.goldenwater.dcproj.model.BisInspRsvrRgstr;
- import cn.com.goldenwater.dcproj.model.GwComFile;
- import cn.com.goldenwater.dcproj.model.OlBisInspOrg;
- import cn.com.goldenwater.dcproj.param.BisInspPblmPlistParam;
- import cn.com.goldenwater.dcproj.service.AttAdBaseService;
- import cn.com.goldenwater.dcproj.service.BisInspAllRlationPersService;
- import cn.com.goldenwater.dcproj.service.BisInspPblmPlistService;
- import cn.com.goldenwater.dcproj.service.BisInspPblmService;
- import cn.com.goldenwater.dcproj.service.DicService;
- import cn.com.goldenwater.dcproj.service.GwComFileService;
- import cn.com.goldenwater.dcproj.service.OlBisInspOrgService;
- import cn.com.goldenwater.dcproj.util.BisInspPblmPlistConventUtil;
- import cn.com.goldenwater.dcproj.util.FileUtil;
- import cn.com.goldenwater.dcproj.utils.AdLevelUtil;
- import cn.com.goldenwater.dcproj.utils.DateUtils;
- import cn.com.goldenwater.dcproj.utils.InspPblmUtils;
- import cn.com.goldenwater.dcproj.utils.InspUtils;
- import cn.com.goldenwater.dcproj.utils.expExcel.ExcelExport;
- import cn.com.goldenwater.dcproj.utils.expExcel.ExportAbstract;
- import cn.com.goldenwater.dcproj.utils.expExcel.ExportUtil;
- import cn.com.goldenwater.dcproj.utils.impexcel.ExpAndImpUtil;
- import cn.com.goldenwater.id.util.UuidUtil;
- import cn.com.goldenwater.target.CheckException;
- import com.github.pagehelper.PageHelper;
- import com.github.pagehelper.PageInfo;
- import io.swagger.annotations.ApiModelProperty;
- import org.apache.commons.collections.CollectionUtils;
- import org.apache.commons.collections.MapUtils;
- import org.apache.commons.lang3.ArrayUtils;
- import org.apache.commons.lang3.StringUtils;
- import org.slf4j.Logger;
- import org.slf4j.LoggerFactory;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.beans.factory.annotation.Value;
- 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.BufferedInputStream;
- import java.io.File;
- import java.io.FileInputStream;
- import java.io.FileOutputStream;
- import java.io.IOException;
- import java.io.OutputStream;
- import java.lang.reflect.Field;
- import java.nio.charset.StandardCharsets;
- import java.text.ParseException;
- import java.text.SimpleDateFormat;
- import java.time.LocalDate;
- import java.time.format.DateTimeFormatter;
- import java.util.ArrayList;
- import java.util.Calendar;
- import java.util.Date;
- import java.util.List;
- import java.util.Map;
- import java.util.Objects;
- import java.util.Optional;
- import java.util.stream.Collectors;
- import static cn.com.goldenwater.dcproj.utils.BeanUtil.transBean2Map;
- import static cn.com.goldenwater.dcproj.utils.expExcel.ExportUtil.COMMONLIST_AND_OPEN_ANNOTATION;
- /**
- * @author lhc
- * @date 2020-11-4
- */
- @Service
- @Transactional
- public class BisInspPblmPlistServiceImpl extends AbstractCrudService<BisInspPblmPlist, BisInspPblmPlistParam> implements BisInspPblmPlistService {
- private Logger logger = LoggerFactory.getLogger(BisInspPblmPlistServiceImpl.class);
- @Autowired
- private BisInspPblmPlistDao bisInspPblmPlistDao;
- @Autowired
- private BisInspPblmPlistLogDao bisInspPblmPlistLogDao;
- @Autowired
- private DicService dicService;
- @Autowired
- private BisInspAllRlationPersService bisInspAllRlationPersService;
- @Autowired
- private BisInspPblmService bisInspPblmService;
- @Autowired
- private AttAdBaseService attAdBaseService;
- @Autowired
- private GwComFileService gwComFileService;
- @Autowired
- private OlBisInspOrgService olBisInspOrgService;
- @Value("${export.templatePath}")
- private String templatePath;
- @Value("${web.upload-path}")
- private String uploadPath;
- @Autowired
- private BisInspRsvrRgstrDao bisInspRsvrRgstrDao;
- public BisInspPblmPlistServiceImpl(BisInspPblmPlistDao bisInspPblmPlistDao) {
- super(bisInspPblmPlistDao);
- this.bisInspPblmPlistDao = bisInspPblmPlistDao;
- }
- @Override
- public int insert(BisInspPblmPlist bisInspPblmPlist) {
- String uuid = UuidUtil.uuid(); // 生成uuid
- bisInspPblmPlist.setId(uuid);
- bisInspPblmPlist.setIntm(new Date());
- bisInspPblmPlist.setUptm(new Date());
- bisInspPblmPlist.setDataStat("0");
- BisInspAllRlationPers bisInspAllRlationPers = bisInspAllRlationPersService.getById(bisInspPblmPlist.getPersId());
- bisInspPblmPlist.setPersName(bisInspAllRlationPers.getPersName());
- bisInspPblmPlist.setPblmState("0");
- bisInspPblmPlist.setCrtState("0");
- bisInspPblmPlist.setIsStart("0");
- bisInspPblmPlist.setImpSource("水利厅");
- // 0未销号 1 销号
- bisInspPblmPlist.setPblmOut("0");
- //获取问题属性,冗余到整改表
- BisInspPblm bisInspPblm = bisInspPblmService.get(bisInspPblmPlist.getPblmId());
- if (null != bisInspPblm) {
- // 四川省 填报问题提交时 如果时小水库 判断 水库注册登记号 是否 存在
- /* if (bisInspPblm.getObjCode().startsWith("51") && "1".equals(bisInspPblm.getObjType())) {
- List<BisInspRsvrRgstr> rsvrRgstrList = bisInspRsvrRgstrDao.getByPblmId(bisInspPblmPlist.getPblmId());
- if (null != rsvrRgstrList && rsvrRgstrList.size() > 0) {
- String damRegCode = rsvrRgstrList.get(0).getDamRegCode();
- if (StringUtils.isBlank(damRegCode)) {
- throw new CheckException("水库注册登记号不能为空!");
- }
- bisInspPblmPlist.setDamRegCode(damRegCode);
- }
- }*/
- // 设置复核状态 0 未复核
- bisInspPblmPlist.setReviewStat("0");
- bisInspPblmPlist.setObjCode(bisInspPblm.getObjCode());
- bisInspPblmPlist.setObjAdCode(bisInspPblm.getObjAdCode());
- bisInspPblmPlist.setPblmAdName(attAdBaseService.getByAdcode(bisInspPblm.getObjAdCode()).getAdFullName());
- bisInspPblmPlist.setObjName(bisInspPblm.getObjName());
- bisInspPblmPlist.setObjType(bisInspPblm.getObjType());
- bisInspPblmPlist.setPblmDescBz(bisInspPblm.getPblmDescBz());
- bisInspPblmPlist.setPblmNameBz(bisInspPblm.getPblmNameBz());
- bisInspPblmPlist.setPblmTm(bisInspPblm.getCollTime());
- bisInspPblmPlist.setInspPblmDesc(bisInspPblm.getInspPblmDesc());
- bisInspPblmPlist.setInspPblmCate(bisInspPblm.getInspPblmCate());
- // 根据问题中的 是否省属 设置 整改的 省属 属性
- bisInspPblmPlist.setProvincial(bisInspPblm.getProvincial());
- // 根据问题中的 机构id和 所属行政区域代码 设置 整改记录中的机构Id和所属行政区域代码
- bisInspPblmPlist.setBelongOrgId(bisInspPblm.getBelongOrgId());
- bisInspPblmPlist.setBelongAdCode(bisInspPblm.getBelongAdCode());
- // 山东省的 市、县 自查 整改流程 1-未下发 默认值
- if (bisInspPblm.getBelongAdCode().startsWith("37")) {
- String curOrgId = bisInspPblmPlist.getSendOrgId();
- OlBisInspOrg olBisInspOrg = olBisInspOrgService.get(curOrgId);
- AttAdBase attAdBase = attAdBaseService.getByAdcode(olBisInspOrg.getAdCode());
- String adGrad = attAdBase.getAdGrad();
- if ("3".equals(adGrad)) {
- // 市级自查 添加整改问题
- bisInspPblmPlist.setSelfInspProcessState("1");
- // 增加 自查记录
- AddOptionLog(uuid, "0", "添加整改问题", "", "市级待下发", bisInspPblmPlist.getPersId(), bisInspAllRlationPers.getPersName(), bisInspPblmPlist.getSendOrgId(), bisInspPblmPlist.getSendOrgName());
- } else if ("4".equals(adGrad)) {
- // 县级级自查 添加整改问题
- bisInspPblmPlist.setSelfInspProcessState("2");
- // 增加 自查记录
- AddOptionLog(uuid, "0", "添加整改问题", "", "县级待整改反馈", bisInspPblmPlist.getPersId(), bisInspAllRlationPers.getPersName(), bisInspPblmPlist.getSendOrgId(), bisInspPblmPlist.getSendOrgName());
- }
- }
- }
- return this.bisInspPblmPlistDao.insert(bisInspPblmPlist);
- }
- @Override
- public int update(BisInspPblmPlist bisInspPblmPlist) {
- bisInspPblmPlist.setUptm(new Date());
- return this.bisInspPblmPlistDao.update(bisInspPblmPlist);
- }
- @Override
- public int delete(String id) {
- return this.bisInspPblmPlistDao.delete(id);
- }
- @Override
- public PageInfo<BisInspPblmPlist> getList(BisInspPblmPlistParam bisInspPblmPlistParam) {
- PageHelper.startPage(bisInspPblmPlistParam);
- bisInspPblmPlistParam.setObjAdCode(AdLevelUtil.getAddvcd(bisInspPblmPlistParam.getObjAdCode()));
- List<BisInspPblmPlist> list = this.bisInspPblmPlistDao.getList(bisInspPblmPlistParam);
- PageInfo<BisInspPblmPlist> pageInfo = new PageInfo<>(list);
- for (BisInspPblmPlist bisInspPblmPlist : pageInfo.getList()) {
- //补充省市县
- if (bisInspPblmPlist.getPblmAdName() != null) {
- if (bisInspPblmPlist.getPblmAdName().contains(SplitValue.HENG_SPLIT)) {
- String[] split = bisInspPblmPlist.getPblmAdName().split(SplitValue.HENG_SPLIT);
- if (split.length == 3) {
- bisInspPblmPlist.setProvince(split[0]);
- bisInspPblmPlist.setCity(split[1]);
- bisInspPblmPlist.setCounty(split[2]);
- }
- if (split.length == 2) {
- bisInspPblmPlist.setProvince(split[0]);
- bisInspPblmPlist.setCity(split[1]);
- bisInspPblmPlist.setCounty("");
- }
- } else {
- bisInspPblmPlist.setProvince(bisInspPblmPlist.getPblmAdName());
- }
- }
- }
- return pageInfo;
- }
- @Override
- public PageInfo<BisInspPblmPlist> sendOrgGetList(BisInspPblmPlistParam bisInspPblmPlistParam, String adCode) {
- bisInspPblmPlistParam.setObjAdCode(AdLevelUtil.getAddvcd(bisInspPblmPlistParam.getObjAdCode()));
- bisInspPblmPlistParam.setImpSource(InspUtils.setOrgIds(bisInspPblmPlistParam.getImpSource()));
- setDate(bisInspPblmPlistParam);
- if (adCode.startsWith("37")) {
- // 山东省的 省、市、县 分级查询
- String orgType = bisInspPblmPlistParam.getOrgType();
- if (StringUtils.isEmpty(orgType)) {
- // 默认为省级查询
- orgType = "province";
- bisInspPblmPlistParam.setProvincialLevel(null);
- }
- bisInspPblmPlistParam.setOrgType(null);
- AttAdBase curAdBase = attAdBaseService.getByAdcode(adCode);
- String adGrad = curAdBase.getAdGrad();
- bisInspPblmPlistParam.setAdGrad(null);
- if ("2".equals(adGrad)) {
- // 当前机构为省级用户
- if ("city".equals(orgType)) {
- // 省级用户查看 市级自查菜单
- List<OlBisInspOrg> cityOrgList = olBisInspOrgService.getByPid(bisInspPblmPlistParam.getOrgId(), null);
- bisInspPblmPlistParam.setBelongOrgId(cityOrgList.stream().map(m -> m.getOrgId()).collect(Collectors.joining("','", "'", "'")));
- bisInspPblmPlistParam.setOrgType(orgType);
- bisInspPblmPlistParam.setAdGrad(adGrad);
- bisInspPblmPlistParam.setProvincialLevel(null);
- bisInspPblmPlistParam.setObjAdCode(bisInspPblmPlistParam.getProvince());
- bisInspPblmPlistParam.setProvince(null);
- } else if ("county".equals(orgType)) {
- // 省级用户查看 县级自查菜单
- logger.debug("county -- province:" + bisInspPblmPlistParam.getProvince());
- List<OlBisInspOrg> cityOrgList = olBisInspOrgService.getByPid(bisInspPblmPlistParam.getOrgId(), null);
- List<OlBisInspOrg> countyOrgList = new ArrayList<>();
- for (OlBisInspOrg cityOrg : cityOrgList) {
- List<OlBisInspOrg> countyInspOrgs = olBisInspOrgService.getByPid(cityOrg.getOrgId(), null);
- if (null != countyInspOrgs && countyInspOrgs.size() > 0) {
- countyOrgList.addAll(countyInspOrgs);
- }
- }
- bisInspPblmPlistParam.setBelongOrgId(countyOrgList.stream().map(m -> m.getOrgId()).collect(Collectors.joining("','", "'", "'")));
- logger.debug("county -- belongorgid:" + bisInspPblmPlistParam.getBelongOrgId());
- bisInspPblmPlistParam.setOrgType(orgType);
- bisInspPblmPlistParam.setAdGrad(adGrad);
- bisInspPblmPlistParam.setProvincialLevel(null);
- bisInspPblmPlistParam.setObjAdCode(bisInspPblmPlistParam.getProvince());
- bisInspPblmPlistParam.setProvince(null);
- }
- } else if ("3".equals(adGrad)) {
- bisInspPblmPlistParam.setProvincialLevel(null);
- // 当前机构为市级用户
- if ("province".equals(orgType)) {
- // 市级用户查看 省级下发的
- OlBisInspOrg bisInspOrg = olBisInspOrgService.get(bisInspPblmPlistParam.getOrgId());
- bisInspPblmPlistParam.setBelongOrgId(bisInspOrg.getOrgPid());
- bisInspPblmPlistParam.setOrgType(orgType);
- bisInspPblmPlistParam.setAdGrad(adGrad);
- bisInspPblmPlistParam.setProvincialLevel("2");
- } else if ("city".equals(orgType)) {
- // 市级用户查看 市级自查菜单
- } else if ("county".equals(orgType)) {
- // 市级用户查看 县级自查菜单
- List<OlBisInspOrg> cityOrgList = olBisInspOrgService.getByPid(bisInspPblmPlistParam.getOrgId(), null);
- bisInspPblmPlistParam.setBelongOrgId(cityOrgList.stream().map(m -> m.getOrgId()).collect(Collectors.joining("','", "'", "'")));
- bisInspPblmPlistParam.setOrgType(orgType);
- bisInspPblmPlistParam.setAdGrad(adGrad);
- }
- } else if ("4".equals(adGrad)) {
- bisInspPblmPlistParam.setProvincialLevel(null);
- // 当前用户的区、县级别的 用户 ,查询 上级 市级的
- if ("province".equals(orgType)) {
- // 县级用户查看 省级下发的
- OlBisInspOrg bisInspOrg = olBisInspOrgService.get(bisInspPblmPlistParam.getOrgId());
- OlBisInspOrg cityBisInspOrg = olBisInspOrgService.get(bisInspOrg.getOrgPid());
- bisInspPblmPlistParam.setBelongOrgId(cityBisInspOrg.getOrgPid());
- bisInspPblmPlistParam.setOrgType(orgType);
- bisInspPblmPlistParam.setAdGrad(adGrad);
- bisInspPblmPlistParam.setProvincialLevel("2");
- } else if ("city".equals(orgType)) {
- // 县级用户查询 市级 下发的 问题
- OlBisInspOrg bisInspOrg = olBisInspOrgService.get(bisInspPblmPlistParam.getOrgId());
- bisInspPblmPlistParam.setBelongOrgId(bisInspOrg.getOrgPid());
- bisInspPblmPlistParam.setOrgType(orgType);
- bisInspPblmPlistParam.setAdGrad(adGrad);
- }
- }
- } else {
- bisInspPblmPlistParam.setBelongOrgId(null);
- bisInspPblmPlistParam.setOrgType(null);
- bisInspPblmPlistParam.setAdGrad(null);
- }
- PageHelper.startPage(bisInspPblmPlistParam);
- //只能查询分配给个人类别的,还有自己添加的,做过滤
- List<BisInspPblmPlist> list = this.bisInspPblmPlistDao.sendOrgGetList(bisInspPblmPlistParam);
- logger.info("bisInspPblmPlistParam:" + bisInspPblmPlistParam.toString());
- PageInfo<BisInspPblmPlist> pageInfo = new PageInfo<>(list);
- for (BisInspPblmPlist bisInspPblmPlist : pageInfo.getList()) {
- bisInspPblmPlist.setYear(DateUtils.Date2Str(bisInspPblmPlist.getPblmTm(), "yyyy"));
- // 补充省市县
- if (bisInspPblmPlist.getPblmAdName() != null) {
- if (bisInspPblmPlist.getPblmAdName().contains(SplitValue.HENG_SPLIT)) {
- String[] split = bisInspPblmPlist.getPblmAdName().split(SplitValue.HENG_SPLIT);
- if (split.length == 3) {
- bisInspPblmPlist.setProvince(split[0]);
- bisInspPblmPlist.setCity(split[1]);
- bisInspPblmPlist.setCounty(split[2]);
- }
- if (split.length == 2) {
- bisInspPblmPlist.setProvince(split[0]);
- bisInspPblmPlist.setCity(split[1]);
- bisInspPblmPlist.setCounty("");
- }
- } else {
- bisInspPblmPlist.setProvince(bisInspPblmPlist.getPblmAdName());
- }
- }
- // 查询
- logger.info("=======================================bisInspPblmPlistParam.getProvince():" + bisInspPblmPlistParam.getProvince() + "==============================================================");
- List<Map<String, String>> bpmDataIdList = bisInspPblmPlistDao.getBpmDataId(bisInspPblmPlist.getId(), bisInspPblmPlistParam.getOrgId(), bisInspPblmPlistParam.getProvince());
- if (CollectionUtils.isNotEmpty(bpmDataIdList)) {
- Map<String, String> bpmData = bpmDataIdList.get(0);
- bisInspPblmPlist.setTaskInstId(bpmData.get("taskInstId"));
- bisInspPblmPlist.setProcInstId(bpmData.get("procInstId"));
- bisInspPblmPlist.setProcTypeName("督查-" + bpmData.get("procTypeName"));
- }
- // 四川省 如果督查对象是水库 就把 大坝注册登记号 damRegCode 带出来
- if (StringUtils.isEmpty(bisInspPblmPlist.getDamRegCode()) && "1".equals(bisInspPblmPlist.getObjType()) && (null != bisInspPblmPlist.getObjAdCode() ? bisInspPblmPlist.getObjAdCode().startsWith("51") : (null != bisInspPblmPlist.getBelongAdCode() ? bisInspPblmPlist.getBelongAdCode().startsWith("51") : false))) {
- List<BisInspRsvrRgstr> rgstrList = this.bisInspRsvrRgstrDao.getByPblmId(bisInspPblmPlist.getPblmId());
- if (null != rgstrList && rgstrList.size() > 0) {
- bisInspPblmPlist.setDamRegCode(rgstrList.get(0).getDamRegCode());
- }
- }
- }
- return pageInfo;
- }
- private void setDate(BisInspPblmPlistParam bisInspPblmPlistParam) {
- // 1. 判断 时间类别
- String timeType = Optional.ofNullable(bisInspPblmPlistParam).map(BisInspPblmPlistParam::getTimeType).orElse("");
- if (timeType.contains("_")) {
- //自定义时间段
- String[] dateStr = timeType.split("_");
- if (2 == dateStr.length) {
- bisInspPblmPlistParam.setSttm(DateUtils.Str2Date(dateStr[0]));
- bisInspPblmPlistParam.setEntm(DateUtils.Str2Date(dateStr[1]));
- return;
- }
- }
- Calendar sttm = Calendar.getInstance();
- switch (timeType) {
- // 近一个月
- case "1":
- sttm.add(Calendar.MONTH, -1);
- break;
- // 近三个月
- case "2":
- sttm.add(Calendar.MONTH, -3);
- break;
- // 近半年
- case "3":
- sttm.add(Calendar.MONTH, -6);
- break;
- // 近一年
- case "4":
- sttm.add(Calendar.YEAR, -1);
- break;
- // 今年
- case "6":
- sttm.set(Integer.parseInt(DateUtils.getToday("yyyy")), Calendar.JANUARY, 1);
- break;
- case "7":
- // 按年度
- break;
- default:
- return;
- }
- bisInspPblmPlistParam.setSttm(sttm.getTime());
- bisInspPblmPlistParam.setEntm(new Date());
- if ("7".equals(timeType)) {
- // 福建省 督查首页 按年份统计
- String year = bisInspPblmPlistParam.getYear();
- DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy-MM-dd");
- SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
- LocalDate startDate = null;
- if (cn.com.goldenwater.dcproj.utils.StringUtils.isNotBlank(year)) {
- try {
- startDate = LocalDate.parse(year + "-01-01", dtf);
- } catch (Exception e) {
- startDate = LocalDate.now().withMonth(1).withDayOfMonth(1);
- }
- }
- if (null == startDate) {
- startDate = LocalDate.now().withMonth(1).withDayOfMonth(1);
- }
- LocalDate endDate = startDate.plusYears(1L).minusDays(1L);
- try {
- bisInspPblmPlistParam.setSttm(sdf.parse(startDate.format(dtf)));
- bisInspPblmPlistParam.setEntm(sdf.parse(endDate.format(dtf)));
- } catch (ParseException e) {
- bisInspPblmPlistParam.setSttm(sttm.getTime());
- bisInspPblmPlistParam.setEntm(new Date());
- }
- bisInspPblmPlistParam.setYear(String.valueOf(startDate.getYear()));
- }
- }
- @Override
- public PageInfo<BisInspPblmPlist> recvGetList(BisInspPblmPlistParam bisInspPblmPlistParam) {
- PageHelper.startPage(bisInspPblmPlistParam);
- List<BisInspPblmPlist> list = this.bisInspPblmPlistDao.recvGetList(bisInspPblmPlistParam);
- PageInfo<BisInspPblmPlist> pageInfo = new PageInfo<>(list);
- for (BisInspPblmPlist bisInspPblmPlist : pageInfo.getList()) {
- //补充省市县
- if (bisInspPblmPlist.getPblmAdName() != null) {
- if (bisInspPblmPlist.getPblmAdName().contains(SplitValue.HENG_SPLIT)) {
- String[] split = bisInspPblmPlist.getPblmAdName().split(SplitValue.HENG_SPLIT);
- if (split.length == 3) {
- bisInspPblmPlist.setProvince(split[0]);
- bisInspPblmPlist.setCity(split[1]);
- bisInspPblmPlist.setCounty(split[2]);
- }
- if (split.length == 2) {
- bisInspPblmPlist.setProvince(split[0]);
- bisInspPblmPlist.setCity(split[1]);
- bisInspPblmPlist.setCounty("");
- }
- } else {
- bisInspPblmPlist.setProvince(bisInspPblmPlist.getPblmAdName());
- }
- }
- }
- return pageInfo;
- }
- @Override
- public PageInfo<BisInspPblmPlist> recvCountyGetList(BisInspPblmPlistParam bisInspPblmPlistParam) {
- PageHelper.startPage(bisInspPblmPlistParam);
- List<BisInspPblmPlist> list = this.bisInspPblmPlistDao.recvCountyGetList(bisInspPblmPlistParam);
- PageInfo<BisInspPblmPlist> pageInfo = new PageInfo<>(list);
- for (BisInspPblmPlist bisInspPblmPlist : pageInfo.getList()) {
- //补充省市县
- if (bisInspPblmPlist.getPblmAdName() != null) {
- if (bisInspPblmPlist.getPblmAdName().contains(SplitValue.HENG_SPLIT)) {
- String[] split = bisInspPblmPlist.getPblmAdName().split(SplitValue.HENG_SPLIT);
- if (split.length == 3) {
- bisInspPblmPlist.setProvince(split[0]);
- bisInspPblmPlist.setCity(split[1]);
- bisInspPblmPlist.setCounty(split[2]);
- }
- if (split.length == 2) {
- bisInspPblmPlist.setProvince(split[0]);
- bisInspPblmPlist.setCity(split[1]);
- bisInspPblmPlist.setCounty("");
- }
- } else {
- bisInspPblmPlist.setProvince(bisInspPblmPlist.getPblmAdName());
- }
- }
- }
- return pageInfo;
- }
- @Override
- public String getHandWarn(BisInspPblmPlistParam bisInspPblmPlistParam) {
- String info = "";
- //bisInspPblmPlistParam.setIsRect("0");
- List<BisInspPblmPlist> list = this.bisInspPblmPlistDao.getHandWarn(bisInspPblmPlistParam);
- if (list != null && list.size() > 0) {
- info = "有" + list.size() + "个整改问题暂时没反馈,请及时催促相关单位填写整改情况。";
- } else {
- info = "暂无问题需要反馈!";
- }
- return info;
- }
- @Override
- public void downloadTemplate(HttpServletResponse response) {
- // 模板路径
- String filePath = templatePath + File.separator + "pblm_zg.xls";
- try {
- ExportUtil.download(response, new ArrayList<>(), filePath);
- } catch (IOException e) {
- e.printStackTrace();
- }
- }
- @Override
- public String uploadFile(MultipartFile[] file) {
- return null;
- }
- @Override
- public void exportListExcel(BisInspPblmPlistParam bisInspPblmPlistParam, String adCode, HttpServletResponse response) throws IOException {
- /* 1. 获取整改数据 */
- bisInspPblmPlistParam.setObjAdCode(AdLevelUtil.getAddvcd(bisInspPblmPlistParam.getObjAdCode()));
- bisInspPblmPlistParam.setImpSource(InspUtils.setOrgIds(bisInspPblmPlistParam.getImpSource()));
- setDate(bisInspPblmPlistParam);
- if (adCode.startsWith("37")) {
- // 山东省的 省、市、县 分级查询
- String orgType = bisInspPblmPlistParam.getOrgType();
- if (StringUtils.isEmpty(orgType)) {
- // 默认为省级查询
- orgType = "province";
- bisInspPblmPlistParam.setProvincialLevel(null);
- }
- bisInspPblmPlistParam.setOrgType(null);
- AttAdBase curAdBase = attAdBaseService.getByAdcode(adCode);
- String adGrad = curAdBase.getAdGrad();
- bisInspPblmPlistParam.setAdGrad(null);
- if ("2".equals(adGrad)) {
- // 当前机构为省级用户
- if ("city".equals(orgType)) {
- // 省级用户查看 市级自查菜单
- List<OlBisInspOrg> cityOrgList = olBisInspOrgService.getByPid(bisInspPblmPlistParam.getOrgId(), null);
- bisInspPblmPlistParam.setBelongOrgId(cityOrgList.stream().map(m -> m.getOrgId()).collect(Collectors.joining("','", "'", "'")));
- bisInspPblmPlistParam.setOrgType(orgType);
- bisInspPblmPlistParam.setAdGrad(adGrad);
- bisInspPblmPlistParam.setProvincialLevel(null);
- bisInspPblmPlistParam.setObjAdCode(bisInspPblmPlistParam.getProvince());
- bisInspPblmPlistParam.setProvince(null);
- } else if ("county".equals(orgType)) {
- // 省级用户查看 县级自查菜单
- logger.debug("county -- province:" + bisInspPblmPlistParam.getProvince());
- List<OlBisInspOrg> cityOrgList = olBisInspOrgService.getByPid(bisInspPblmPlistParam.getOrgId(), null);
- List<OlBisInspOrg> countyOrgList = new ArrayList<>();
- for (OlBisInspOrg cityOrg : cityOrgList) {
- List<OlBisInspOrg> countyInspOrgs = olBisInspOrgService.getByPid(cityOrg.getOrgId(), null);
- if (null != countyInspOrgs && countyInspOrgs.size() > 0) {
- countyOrgList.addAll(countyInspOrgs);
- }
- }
- bisInspPblmPlistParam.setBelongOrgId(countyOrgList.stream().map(m -> m.getOrgId()).collect(Collectors.joining("','", "'", "'")));
- logger.debug("county -- belongorgid:" + bisInspPblmPlistParam.getBelongOrgId());
- bisInspPblmPlistParam.setOrgType(orgType);
- bisInspPblmPlistParam.setAdGrad(adGrad);
- bisInspPblmPlistParam.setProvincialLevel(null);
- bisInspPblmPlistParam.setObjAdCode(bisInspPblmPlistParam.getProvince());
- bisInspPblmPlistParam.setProvince(null);
- }
- } else if ("3".equals(adGrad)) {
- bisInspPblmPlistParam.setProvincialLevel(null);
- // 当前机构为市级用户
- if ("province".equals(orgType)) {
- // 市级用户查看 省级下发的
- OlBisInspOrg bisInspOrg = olBisInspOrgService.get(bisInspPblmPlistParam.getOrgId());
- bisInspPblmPlistParam.setBelongOrgId(bisInspOrg.getOrgPid());
- bisInspPblmPlistParam.setOrgType(orgType);
- bisInspPblmPlistParam.setAdGrad(adGrad);
- bisInspPblmPlistParam.setProvincialLevel("2");
- } else if ("city".equals(orgType)) {
- // 市级用户查看 市级自查菜单
- } else if ("county".equals(orgType)) {
- // 市级用户查看 县级自查菜单
- List<OlBisInspOrg> cityOrgList = olBisInspOrgService.getByPid(bisInspPblmPlistParam.getOrgId(), null);
- bisInspPblmPlistParam.setBelongOrgId(cityOrgList.stream().map(m -> m.getOrgId()).collect(Collectors.joining("','", "'", "'")));
- bisInspPblmPlistParam.setOrgType(orgType);
- bisInspPblmPlistParam.setAdGrad(adGrad);
- }
- } else if ("4".equals(adGrad)) {
- bisInspPblmPlistParam.setProvincialLevel(null);
- // 当前用户的区、县级别的 用户 ,查询 上级 市级的
- if ("province".equals(orgType)) {
- // 县级用户查看 省级下发的
- OlBisInspOrg bisInspOrg = olBisInspOrgService.get(bisInspPblmPlistParam.getOrgId());
- OlBisInspOrg cityBisInspOrg = olBisInspOrgService.get(bisInspOrg.getOrgPid());
- bisInspPblmPlistParam.setBelongOrgId(cityBisInspOrg.getOrgPid());
- bisInspPblmPlistParam.setOrgType(orgType);
- bisInspPblmPlistParam.setAdGrad(adGrad);
- bisInspPblmPlistParam.setProvincialLevel("2");
- } else if ("city".equals(orgType)) {
- // 县级用户查询 市级 下发的 问题
- OlBisInspOrg bisInspOrg = olBisInspOrgService.get(bisInspPblmPlistParam.getOrgId());
- bisInspPblmPlistParam.setBelongOrgId(bisInspOrg.getOrgPid());
- bisInspPblmPlistParam.setOrgType(orgType);
- bisInspPblmPlistParam.setAdGrad(adGrad);
- }
- }
- } else {
- bisInspPblmPlistParam.setBelongOrgId(null);
- bisInspPblmPlistParam.setOrgType(null);
- bisInspPblmPlistParam.setAdGrad(null);
- }
- List<BisInspPblmPlist> list = this.bisInspPblmPlistDao.sendOrgGetList(bisInspPblmPlistParam);
- if (list == null || list.size() == 0) {
- logger.info("--------------------------------------exp pblm mend size 0-----------------------------------------------");
- return;
- }
- list.stream().filter(pblm -> StringUtils.isNotBlank(pblm.getPblmAdName())).forEach(pblm -> {
- pblm.setYear(DateUtils.Date2Str(pblm.getPblmTm(), "yyyy"));
- String pblmOut = "1".equals(pblm.getPblmOut()) ? "是" : "否";
- pblm.setPblmOut(pblmOut);
- if (pblm.getPblmAdName().contains(SplitValue.HENG_SPLIT)) {
- String[] split = pblm.getPblmAdName().split(SplitValue.HENG_SPLIT);
- if (split.length == 3) {
- pblm.setProvince(split[0]);
- pblm.setCity(split[1]);
- pblm.setCounty(split[2]);
- }
- if (split.length == 2) {
- pblm.setProvince(split[0]);
- pblm.setCity(split[1]);
- pblm.setCounty("");
- }
- } else {
- pblm.setProvince(pblm.getPblmAdName());
- }
- });
- String mkdirName = templatePath + File.separator + "整改问题_" + DateUtils.getToday("yyyyMMddHHmmss");
- File file = new File(mkdirName);
- // 如果文件夹不存在
- if (!file.exists()) {
- // 创建文件夹
- file.mkdirs();
- logger.info("--------------------------------------exp pblm mend mak dir-----------------------------------------------");
- }
- try {
- exportExcel(list, response, "整改问题列表", mkdirName, COMMONLIST_AND_OPEN_ANNOTATION, BisInspPblmPlist.class);
- ExpAndImpUtil.downloadFile(response, mkdirName + File.separator + "整改问题列表.xls", "整改问题模板");
- } catch (Exception e) {
- logger.error("导出excel出错");
- }
- }
- @Override
- public void export(BisInspPblmPlistParam bisInspPblmPlistParam, String adCode, HttpServletResponse response) throws IOException {
- /* 1. 获取整改数据 */
- bisInspPblmPlistParam.setObjAdCode(AdLevelUtil.getAddvcd(bisInspPblmPlistParam.getObjAdCode()));
- bisInspPblmPlistParam.setImpSource(InspUtils.setOrgIds(bisInspPblmPlistParam.getImpSource()));
- setDate(bisInspPblmPlistParam);
- if (adCode.startsWith("37")) {
- // 山东省的 省、市、县 分级查询
- String orgType = bisInspPblmPlistParam.getOrgType();
- if (StringUtils.isEmpty(orgType)) {
- // 默认为省级查询
- orgType = "province";
- bisInspPblmPlistParam.setProvincialLevel(null);
- }
- bisInspPblmPlistParam.setOrgType(null);
- AttAdBase curAdBase = attAdBaseService.getByAdcode(adCode);
- String adGrad = curAdBase.getAdGrad();
- bisInspPblmPlistParam.setAdGrad(null);
- if ("2".equals(adGrad)) {
- // 当前机构为省级用户
- if ("city".equals(orgType)) {
- // 省级用户查看 市级自查菜单
- List<OlBisInspOrg> cityOrgList = olBisInspOrgService.getByPid(bisInspPblmPlistParam.getOrgId(), null);
- bisInspPblmPlistParam.setBelongOrgId(cityOrgList.stream().map(m -> m.getOrgId()).collect(Collectors.joining("','", "'", "'")));
- bisInspPblmPlistParam.setOrgType(orgType);
- bisInspPblmPlistParam.setAdGrad(adGrad);
- bisInspPblmPlistParam.setProvincialLevel(null);
- bisInspPblmPlistParam.setObjAdCode(bisInspPblmPlistParam.getProvince());
- bisInspPblmPlistParam.setProvince(null);
- } else if ("county".equals(orgType)) {
- // 省级用户查看 县级自查菜单
- logger.debug("county -- province:" + bisInspPblmPlistParam.getProvince());
- List<OlBisInspOrg> cityOrgList = olBisInspOrgService.getByPid(bisInspPblmPlistParam.getOrgId(), null);
- List<OlBisInspOrg> countyOrgList = new ArrayList<>();
- for (OlBisInspOrg cityOrg : cityOrgList) {
- List<OlBisInspOrg> countyInspOrgs = olBisInspOrgService.getByPid(cityOrg.getOrgId(), null);
- if (null != countyInspOrgs && countyInspOrgs.size() > 0) {
- countyOrgList.addAll(countyInspOrgs);
- }
- }
- bisInspPblmPlistParam.setBelongOrgId(countyOrgList.stream().map(m -> m.getOrgId()).collect(Collectors.joining("','", "'", "'")));
- logger.debug("county -- belongorgid:" + bisInspPblmPlistParam.getBelongOrgId());
- bisInspPblmPlistParam.setOrgType(orgType);
- bisInspPblmPlistParam.setAdGrad(adGrad);
- bisInspPblmPlistParam.setProvincialLevel(null);
- bisInspPblmPlistParam.setObjAdCode(bisInspPblmPlistParam.getProvince());
- bisInspPblmPlistParam.setProvince(null);
- }
- } else if ("3".equals(adGrad)) {
- bisInspPblmPlistParam.setProvincialLevel(null);
- // 当前机构为市级用户
- if ("province".equals(orgType)) {
- // 市级用户查看 省级下发的
- OlBisInspOrg bisInspOrg = olBisInspOrgService.get(bisInspPblmPlistParam.getOrgId());
- bisInspPblmPlistParam.setBelongOrgId(bisInspOrg.getOrgPid());
- bisInspPblmPlistParam.setOrgType(orgType);
- bisInspPblmPlistParam.setAdGrad(adGrad);
- bisInspPblmPlistParam.setProvincialLevel("2");
- } else if ("city".equals(orgType)) {
- // 市级用户查看 市级自查菜单
- } else if ("county".equals(orgType)) {
- // 市级用户查看 县级自查菜单
- List<OlBisInspOrg> cityOrgList = olBisInspOrgService.getByPid(bisInspPblmPlistParam.getOrgId(), null);
- bisInspPblmPlistParam.setBelongOrgId(cityOrgList.stream().map(m -> m.getOrgId()).collect(Collectors.joining("','", "'", "'")));
- bisInspPblmPlistParam.setOrgType(orgType);
- bisInspPblmPlistParam.setAdGrad(adGrad);
- }
- } else if ("4".equals(adGrad)) {
- bisInspPblmPlistParam.setProvincialLevel(null);
- // 当前用户的区、县级别的 用户 ,查询 上级 市级的
- if ("province".equals(orgType)) {
- // 县级用户查看 省级下发的
- OlBisInspOrg bisInspOrg = olBisInspOrgService.get(bisInspPblmPlistParam.getOrgId());
- OlBisInspOrg cityBisInspOrg = olBisInspOrgService.get(bisInspOrg.getOrgPid());
- bisInspPblmPlistParam.setBelongOrgId(cityBisInspOrg.getOrgPid());
- bisInspPblmPlistParam.setOrgType(orgType);
- bisInspPblmPlistParam.setAdGrad(adGrad);
- bisInspPblmPlistParam.setProvincialLevel("2");
- } else if ("city".equals(orgType)) {
- // 县级用户查询 市级 下发的 问题
- OlBisInspOrg bisInspOrg = olBisInspOrgService.get(bisInspPblmPlistParam.getOrgId());
- bisInspPblmPlistParam.setBelongOrgId(bisInspOrg.getOrgPid());
- bisInspPblmPlistParam.setOrgType(orgType);
- bisInspPblmPlistParam.setAdGrad(adGrad);
- }
- }
- } else {
- bisInspPblmPlistParam.setBelongOrgId(null);
- bisInspPblmPlistParam.setOrgType(null);
- bisInspPblmPlistParam.setAdGrad(null);
- }
- List<BisInspPblmPlist> list = this.bisInspPblmPlistDao.sendOrgGetList(bisInspPblmPlistParam);
- if (list == null || list.size() == 0) {
- logger.info("--------------------------------------exp pblm mend size 0-----------------------------------------------");
- return;
- }
- list.stream().filter(pblm -> StringUtils.isNotBlank(pblm.getPblmAdName())).forEach(pblm -> {
- pblm.setYear(DateUtils.Date2Str(pblm.getPblmTm(), "yyyy"));
- String pblmOut = "1".equals(pblm.getPblmOut()) ? "是" : "否";
- pblm.setPblmOut(pblmOut);
- if (pblm.getPblmAdName().contains(SplitValue.HENG_SPLIT)) {
- String[] split = pblm.getPblmAdName().split(SplitValue.HENG_SPLIT);
- if (split.length == 3) {
- pblm.setProvince(split[0]);
- pblm.setCity(split[1]);
- pblm.setCounty(split[2]);
- }
- if (split.length == 2) {
- pblm.setProvince(split[0]);
- pblm.setCity(split[1]);
- pblm.setCounty("");
- }
- } else {
- pblm.setProvince(pblm.getPblmAdName());
- }
- });
- /* 2.0 创建文件夹 */
- String mkdirName = templatePath + File.separator + "整改问题_" + DateUtils.getToday("yyyyMMddHHmmss");
- File file = new File(mkdirName);
- // 如果文件夹不存在
- if (!file.exists()) {
- // 创建文件夹
- file.mkdirs();
- logger.info("--------------------------------------exp pblm mend mak dir-----------------------------------------------");
- }
- /* 2. 获取表格 */
- try {
- exportExcel(list, response, "整改问题列表", mkdirName, COMMONLIST_AND_OPEN_ANNOTATION, BisInspPblmPlist.class);
- } catch (Exception e) {
- logger.error("导出excel出错");
- }
- logger.info("--------------------------------------exp pblm mend excel -----------------------------------------------");
- /* 3. 循环问题获取问题文件 */
- if (list != null && list.size() > 0) {
- for (int i = 1; i <= list.size(); i++) {
- // 添加文件夹
- addMkdir(list.get(i - 1), i, mkdirName);
- }
- }
- /* 4. 导出 */
- String zipFileName = "整改问题_" + DateUtils.getToday("yyyyMMddHHmmss") + ".zip";
- FileUtil.compressToZip(mkdirName, templatePath, zipFileName);
- logger.info("--------------------------------------exp pblm mend zip -----------------------------------------------");
- /* 5.压缩包导出 */
- File zipFile = new File(templatePath + File.separator + zipFileName);
- response.setCharacterEncoding("UTF-8");
- response.setHeader("Content-Disposition",
- "attachment; filename=" + new String(zipFileName.getBytes(StandardCharsets.UTF_8), "ISO8859-1"));
- response.setContentLength((int) zipFile.length());
- response.setContentType("application/zip");// 定义输出类型
- FileInputStream fis = new FileInputStream(zipFile);
- BufferedInputStream buff = new BufferedInputStream(fis);
- byte[] b = new byte[1024];// 相当于我们的缓存
- long k = 0;// 该值用于计算当前实际下载了多少字节
- OutputStream myout = response.getOutputStream();// 从response对象中得到输出流,准备下载
- // 开始循环下载
- while (k < zipFile.length()) {
- int j = buff.read(b, 0, 1024);
- k += j;
- myout.write(b, 0, j);
- }
- myout.flush();
- buff.close();
- zipFile.delete();
- }
- @Override
- public void exportExcel(BisInspPblmPlistParam bisInspPblmPlistParam, String adCode, HttpServletResponse response) throws IOException {
- /* 1. 获取整改数据 */
- bisInspPblmPlistParam.setObjAdCode(AdLevelUtil.getAddvcd(bisInspPblmPlistParam.getObjAdCode()));
- bisInspPblmPlistParam.setImpSource(InspUtils.setOrgIds(bisInspPblmPlistParam.getImpSource()));
- setDate(bisInspPblmPlistParam);
- if (adCode.startsWith("37")) {
- // 山东省的 省、市、县 分级查询
- String orgType = bisInspPblmPlistParam.getOrgType();
- if (StringUtils.isEmpty(orgType)) {
- // 默认为省级查询
- orgType = "province";
- bisInspPblmPlistParam.setProvincialLevel(null);
- }
- bisInspPblmPlistParam.setOrgType(null);
- AttAdBase curAdBase = attAdBaseService.getByAdcode(adCode);
- String adGrad = curAdBase.getAdGrad();
- bisInspPblmPlistParam.setAdGrad(null);
- if ("2".equals(adGrad)) {
- // 当前机构为省级用户
- if ("city".equals(orgType)) {
- // 省级用户查看 市级自查菜单
- List<OlBisInspOrg> cityOrgList = olBisInspOrgService.getByPid(bisInspPblmPlistParam.getOrgId(), null);
- bisInspPblmPlistParam.setBelongOrgId(cityOrgList.stream().map(m -> m.getOrgId()).collect(Collectors.joining("','", "'", "'")));
- bisInspPblmPlistParam.setOrgType(orgType);
- bisInspPblmPlistParam.setAdGrad(adGrad);
- bisInspPblmPlistParam.setProvincialLevel(null);
- bisInspPblmPlistParam.setObjAdCode(bisInspPblmPlistParam.getProvince());
- bisInspPblmPlistParam.setProvince(null);
- } else if ("county".equals(orgType)) {
- // 省级用户查看 县级自查菜单
- logger.debug("county -- province:" + bisInspPblmPlistParam.getProvince());
- List<OlBisInspOrg> cityOrgList = olBisInspOrgService.getByPid(bisInspPblmPlistParam.getOrgId(), null);
- List<OlBisInspOrg> countyOrgList = new ArrayList<>();
- for (OlBisInspOrg cityOrg : cityOrgList) {
- List<OlBisInspOrg> countyInspOrgs = olBisInspOrgService.getByPid(cityOrg.getOrgId(), null);
- if (null != countyInspOrgs && countyInspOrgs.size() > 0) {
- countyOrgList.addAll(countyInspOrgs);
- }
- }
- bisInspPblmPlistParam.setBelongOrgId(countyOrgList.stream().map(m -> m.getOrgId()).collect(Collectors.joining("','", "'", "'")));
- logger.debug("county -- belongorgid:" + bisInspPblmPlistParam.getBelongOrgId());
- bisInspPblmPlistParam.setOrgType(orgType);
- bisInspPblmPlistParam.setAdGrad(adGrad);
- bisInspPblmPlistParam.setProvincialLevel(null);
- bisInspPblmPlistParam.setObjAdCode(bisInspPblmPlistParam.getProvince());
- bisInspPblmPlistParam.setProvince(null);
- }
- } else if ("3".equals(adGrad)) {
- bisInspPblmPlistParam.setProvincialLevel(null);
- // 当前机构为市级用户
- if ("province".equals(orgType)) {
- // 市级用户查看 省级下发的
- OlBisInspOrg bisInspOrg = olBisInspOrgService.get(bisInspPblmPlistParam.getOrgId());
- bisInspPblmPlistParam.setBelongOrgId(bisInspOrg.getOrgPid());
- bisInspPblmPlistParam.setOrgType(orgType);
- bisInspPblmPlistParam.setAdGrad(adGrad);
- bisInspPblmPlistParam.setProvincialLevel("2");
- } else if ("city".equals(orgType)) {
- // 市级用户查看 市级自查菜单
- } else if ("county".equals(orgType)) {
- // 市级用户查看 县级自查菜单
- List<OlBisInspOrg> cityOrgList = olBisInspOrgService.getByPid(bisInspPblmPlistParam.getOrgId(), null);
- bisInspPblmPlistParam.setBelongOrgId(cityOrgList.stream().map(m -> m.getOrgId()).collect(Collectors.joining("','", "'", "'")));
- bisInspPblmPlistParam.setOrgType(orgType);
- bisInspPblmPlistParam.setAdGrad(adGrad);
- }
- } else if ("4".equals(adGrad)) {
- bisInspPblmPlistParam.setProvincialLevel(null);
- // 当前用户的区、县级别的 用户 ,查询 上级 市级的
- if ("province".equals(orgType)) {
- // 县级用户查看 省级下发的
- OlBisInspOrg bisInspOrg = olBisInspOrgService.get(bisInspPblmPlistParam.getOrgId());
- OlBisInspOrg cityBisInspOrg = olBisInspOrgService.get(bisInspOrg.getOrgPid());
- bisInspPblmPlistParam.setBelongOrgId(cityBisInspOrg.getOrgPid());
- bisInspPblmPlistParam.setOrgType(orgType);
- bisInspPblmPlistParam.setAdGrad(adGrad);
- bisInspPblmPlistParam.setProvincialLevel("2");
- } else if ("city".equals(orgType)) {
- // 县级用户查询 市级 下发的 问题
- OlBisInspOrg bisInspOrg = olBisInspOrgService.get(bisInspPblmPlistParam.getOrgId());
- bisInspPblmPlistParam.setBelongOrgId(bisInspOrg.getOrgPid());
- bisInspPblmPlistParam.setOrgType(orgType);
- bisInspPblmPlistParam.setAdGrad(adGrad);
- }
- }
- } else {
- bisInspPblmPlistParam.setBelongOrgId(null);
- bisInspPblmPlistParam.setOrgType(null);
- bisInspPblmPlistParam.setAdGrad(null);
- }
- List<BisInspPblmPlist> list = this.bisInspPblmPlistDao.sendOrgGetList(bisInspPblmPlistParam);
- if (list == null || list.size() == 0) {
- logger.info("--------------------------------------exp pblm mend size 0-----------------------------------------------");
- return;
- }
- list.stream().filter(pblm -> StringUtils.isNotBlank(pblm.getPblmAdName())).forEach(pblm -> {
- pblm.setYear(DateUtils.Date2Str(pblm.getPblmTm(), "yyyy"));
- String pblmOut = "1".equals(pblm.getPblmOut()) ? "是" : "否";
- pblm.setPblmOut(pblmOut);
- if (pblm.getPblmAdName().contains(SplitValue.HENG_SPLIT)) {
- String[] split = pblm.getPblmAdName().split(SplitValue.HENG_SPLIT);
- if (split.length == 3) {
- pblm.setProvince(split[0]);
- pblm.setCity(split[1]);
- pblm.setCounty(split[2]);
- }
- if (split.length == 2) {
- pblm.setProvince(split[0]);
- pblm.setCity(split[1]);
- pblm.setCounty("");
- }
- } else {
- pblm.setProvince(pblm.getPblmAdName());
- }
- });
- /* 2.0 创建文件夹 */
- String mkdirName = templatePath + File.separator + "整改问题_" + DateUtils.getToday("yyyyMMddHHmmss");
- File file = new File(mkdirName);
- // 如果文件夹不存在
- if (!file.exists()) {
- // 创建文件夹
- file.mkdirs();
- logger.info("--------------------------------------exp pblm mend mak dir-----------------------------------------------");
- }
- /* 2. 获取表格 */
- try {
- exportExcel(list, response, "整改问题列表", mkdirName, COMMONLIST_AND_OPEN_ANNOTATION, BisInspPblmPlist.class);
- } catch (Exception e) {
- logger.error("导出excel出错");
- }
- logger.info("--------------------------------------exp pblm mend excel -----------------------------------------------");
- /* 4. 导出 */
- String zipFileName = "整改问题_" + DateUtils.getToday("yyyyMMddHHmmss") + ".zip";
- FileUtil.compressToZip(mkdirName, templatePath, zipFileName);
- logger.info("--------------------------------------exp pblm mend zip -----------------------------------------------");
- /* 5.压缩包导出 */
- File zipFile = new File(templatePath + File.separator + zipFileName);
- response.setCharacterEncoding("UTF-8");
- response.setHeader("Content-Disposition",
- "attachment; filename=" + new String(zipFileName.getBytes(StandardCharsets.UTF_8), "ISO8859-1"));
- response.setContentLength((int) zipFile.length());
- response.setContentType("application/zip");// 定义输出类型
- FileInputStream fis = new FileInputStream(zipFile);
- BufferedInputStream buff = new BufferedInputStream(fis);
- byte[] b = new byte[1024];// 相当于我们的缓存
- long k = 0;// 该值用于计算当前实际下载了多少字节
- OutputStream myout = response.getOutputStream();// 从response对象中得到输出流,准备下载
- // 开始循环下载
- while (k < zipFile.length()) {
- int j = buff.read(b, 0, 1024);
- k += j;
- myout.write(b, 0, j);
- }
- myout.flush();
- buff.close();
- zipFile.delete();
- }
- /**
- * 去除所有的整改类别(汉字)
- *
- * @return
- */
- @Override
- public List<String> getAllClassType(String adCode) {
- return bisInspPblmPlistDao.getAllClassType(adCode);
- }
- @Override
- public void insertFile(BisInspPblmPlist bisInspPblmPlist) {
- String uuid = UuidUtil.uuid(); // 生成uuid
- bisInspPblmPlist.setId(uuid);
- bisInspPblmPlist.setUptm(new Date());
- bisInspPblmPlist.setDataStat("0");
- BisInspAllRlationPers bisInspAllRlationPers = bisInspAllRlationPersService.getById(bisInspPblmPlist.getPersId());
- bisInspPblmPlist.setPersName(bisInspAllRlationPers.getPersName());
- bisInspPblmPlist.setPblmState("0");
- bisInspPblmPlist.setCrtState("0");
- bisInspPblmPlist.setIsStart("0");
- bisInspPblmPlist.setIsRect("0");
- this.bisInspPblmPlistDao.insert(bisInspPblmPlist);
- }
- void exportExcel(List<?> result, HttpServletResponse response, String fileName, String filePath, List<String> list, Class cla) throws NoSuchFieldException {
- if (list == null || list.size() == 0) {
- exportExcel(result, response, fileName);
- return;
- }
- List<Map<String, Object>> mapList = new ArrayList<>();
- result.forEach(worker -> mapList.add(transBean2Map(worker)));
- mapList.forEach(worker -> conventPblmPlist(worker));
- ExportAbstract export = new ExcelExport();
- if (StringUtils.isBlank(fileName)) {
- fileName = "结果列表";
- }
- export.setFileName(fileName);
- export.setExport_ps_export(true);
- export.setExport_ps_type(ExportAbstract.XLS);
- export.setExport_bzip(false);
- export.setTitle(fileName);
- ArrayList<Object> cols = new ArrayList<Object>();
- Field[] fields;
- if (cla == BisInspPblmPlist.class) {
- Class superClass = BaseBean.class;
- fields = new Field[25];
- fields[0] = superClass.getDeclaredField("province"); // 省
- fields[1] = cla.getDeclaredField("city"); // 市
- fields[2] = cla.getDeclaredField("county"); // 县
- fields[3] = cla.getDeclaredField("impSource"); // 数据来源
- fields[4] = cla.getDeclaredField("year"); // 检查年度
- fields[5] = cla.getDeclaredField("pblmNub"); // 印发文号
- fields[6] = cla.getDeclaredField("pblmNubName"); // 印发文件名
- fields[7] = cla.getDeclaredField("dutyName"); // 责任处室
- fields[8] = cla.getDeclaredField("pblmClassify"); // 督查类型
- fields[9] = cla.getDeclaredField("objName"); // 对象名称
- fields[10] = cla.getDeclaredField("pblmNameBz"); // 问题类型
- fields[11] = cla.getDeclaredField("checkPointBz"); // 检查项目
- fields[12] = cla.getDeclaredField("pblmDescBz");// 问题描述
- fields[13] = cla.getDeclaredField("inspPblmDesc");// 详细描述
- fields[14] = cla.getDeclaredField("inspPblmCate");// 严重程度
- fields[15] = cla.getDeclaredField("pblmTm");// 上报时间
- fields[16] = cla.getDeclaredField("pblmCrtm");// 整改时限
- fields[17] = cla.getDeclaredField("pblmReason");// 整改建议
- fields[18] = cla.getDeclaredField("isRect");// 是否反馈
- fields[19] = cla.getDeclaredField("pblmPltm");// 预计完成时间
- fields[20] = cla.getDeclaredField("pblmActm");// 实际完成整改时间
- fields[21] = cla.getDeclaredField("crtState");// 整改状态
- fields[22] = cla.getDeclaredField("crtInfo");// 整改措施
- fields[23] = cla.getDeclaredField("crtNote");// 问题整改备注
- fields[24] = cla.getDeclaredField("pblmOut");// 是否销号
- } else {
- fields = cla.getDeclaredFields();
- Class clazz = cla.getSuperclass();
- if (clazz != null && clazz != Objects.class) {
- fields = ArrayUtils.addAll(fields, clazz.getDeclaredFields());
- }
- }
- for (int j = 0; j <= fields.length - 1; j++) {
- //设置可访问
- Field field = fields[j];
- if (list.contains(field.getName())) {
- continue;
- }
- field.setAccessible(true);
- if (field.getAnnotation(ApiModelProperty.class) != null && field.getAnnotation(NotExport.class) == null) {
- cols.add(field.getName() + "[" + ExportUtil.fileFormat(field.getAnnotation(ApiModelProperty.class).value()) + "]");
- }
- }
- if (cols.size() < 1) {
- cols.add("name[名称]");
- cols.add("code[编码]");
- }
- export.setCols(cols);
- export.setGroupable(false);
- // 设置视图指标
- export.setLevel(1);
- export.setLocksize(0);
- try {
- export.Export(response);
- // 导出表头
- export.ExportHeadForCustom(response);
- export.ContinueExport(mapList);
- FileOutputStream output = new FileOutputStream(filePath + File.separator + fileName + ".xls");
- // 写入磁盘
- export.getWb().write(output);
- } catch (Exception e) {
- e.printStackTrace();
- }
- }
- void exportExcel(List<?> result, HttpServletResponse response, String fileName) {
- List<Map<String, Object>> mapList = new ArrayList<>();
- ExportAbstract export = new ExcelExport();
- if (StringUtils.isBlank(fileName)) {
- fileName = "结果列表";
- }
- export.setFileName(fileName);
- export.setExport_ps_export(true);
- export.setExport_ps_type(ExportAbstract.XLS);
- export.setExport_bzip(false);
- export.setTitle(fileName);
- ArrayList<Object> cols = new ArrayList<Object>();
- boolean flag = true;
- for (Object o : result) {
- mapList.add(transBean2Map(o));
- if (flag) {
- Field[] fields = o.getClass().getDeclaredFields();
- for (int j = 0; j <= fields.length - 1; j++) {
- //设置可访问
- Field field = fields[j];
- // if (list.contains(field.getName())) {
- // continue;
- // }
- field.setAccessible(true);
- if (field.getAnnotation(ApiModelProperty.class) != null) {
- cols.add(field.getName() + "[" + field.getAnnotation(ApiModelProperty.class).value() + "]");
- }
- }
- flag = false;
- }
- }
- if (cols.size() < 1) {
- cols.add("name[名称]");
- cols.add("code[编码]");
- cols.add("location[地址]");
- cols.add("adCode[行政区划编码]");
- }
- export.setCols(cols);
- export.setGroupable(false);
- // 设置视图指标
- export.setLevel(1);
- export.setLocksize(0);
- try {
- export.Export(response);
- //导出表头
- export.ExportHeadForCustom(response);
- export.ContinueExport(mapList);
- FileOutputStream output = new FileOutputStream(templatePath + File.separator + "整改问题_" + File.separator + fileName + ".xls");
- // 写入磁盘
- export.getWb().write(output);
- } catch (Exception e) {
- e.printStackTrace();
- }
- }
- /**
- * 添加问题的附件
- *
- * @param bisInspPblmPlist 整改问题
- */
- void addMkdir(BisInspPblmPlist bisInspPblmPlist, int number, String filePath) {
- /* 1. 获取附件信息 */
- List<GwComFile> gwComFileList = gwComFileService.findFileByBiz(bisInspPblmPlist.getId());
- // 问题没附件,退出
- if (gwComFileList == null || gwComFileList.size() == 0) {
- return;
- }
- // 创建附件文件夹
- String fujianFilePath = filePath + File.separator + number;
- createFile(fujianFilePath);
- gwComFileList.forEach(file -> {
- // 获取要复制的文件
- File oldfile = new File(uploadPath.replace("upload/", "") + file.getFilePath().replaceAll("\\\\", "/").replaceAll("//", "/"));
- //要生成的新文件(指定路径如果没有则创建)
- File newfile = new File(fujianFilePath + File.separator + file.getFileName());
- try {
- newfile.createNewFile();
- } catch (IOException e) {
- logger.error("整改问题导出-创建新文件失败!");
- e.printStackTrace();
- }
- try (//文件输入流,用于读取要复制的文件
- FileInputStream fileInputStream = new FileInputStream(oldfile);
- //新文件输出流
- FileOutputStream fileOutputStream = new FileOutputStream(newfile);) {
- byte[] buffer = new byte[1024];
- int len;
- // 将文件流信息读取文件缓存区,如果读取结果不为-1就代表文件没有读取完毕,反之已经读取完毕
- while ((len = fileInputStream.read(buffer)) != -1) {
- fileOutputStream.write(buffer, 0, len);
- fileOutputStream.flush();
- }
- } catch (IOException e) {
- logger.error("整改问题导出-复制文件失败!");
- e.printStackTrace();
- }
- });
- }
- private File createFile(String fileName) {
- File file = new File(fileName);
- // 如果文件夹不存在
- if (!file.exists()) {
- // 创建文件夹
- file.mkdirs();
- }
- return file;
- }
- void conventPblmPlist(Map<String, Object> map) {
- BisInspEnum bisInspEnum = BisInspEnum.getEnumByType(MapUtils.getString(map, "objType", ""));
- map.put("objType", bisInspEnum != null ? bisInspEnum.getDesc() : "");
- map.put("inspPblmCate", InspPblmUtils.plbmCateDesc(MapUtils.getString(map, "inspPblmCate", "")));
- map.put("pblmTm", map.get("pblmTm") != null ? DateUtils.Date2Str((Date) map.get("pblmTm")) : "");
- map.put("pblmCrtm", map.get("pblmCrtm") != null ? DateUtils.Date2Str((Date) map.get("pblmCrtm")) : "");
- map.put("pblmPltm", map.get("pblmPltm") != null ? DateUtils.Date2Str((Date) map.get("pblmPltm")) : "");
- map.put("pblmActm", map.get("pblmActm") != null ? DateUtils.Date2Str((Date) map.get("pblmActm")) : "");
- map.put("intm", map.get("intm") != null ? DateUtils.Date2Str((Date) map.get("intm")) : "");
- map.put("uptm", map.get("uptm") != null ? DateUtils.Date2Str((Date) map.get("uptm")) : "");
- map.put("isRect", BisInspPblmPlistConventUtil.isRect(MapUtils.getString(map, "isRect", "")));
- map.put("crtState", BisInspPblmPlistConventUtil.crtState(MapUtils.getString(map, "crtState", "")));
- map.put("dataStat", BisInspPblmPlistConventUtil.dataStat(MapUtils.getString(map, "dataStat", "")));
- map.put("isStart", BisInspPblmPlistConventUtil.isRect(MapUtils.getString(map, "isStart", "")));
- }
- /**
- * 市、县 自查 整改流程 处理
- *
- * @param bisInspPblmPlistParam
- * @return
- */
- @Override
- public void dealWithOptions(BisInspPblmPlistParam bisInspPblmPlistParam, LoginUser loginUser, String optOrgId) {
- // 获取当前操作人 行政区划
- String adCode = olBisInspOrgService.getDefaultOrg(optOrgId).getAdCode();
- // 获取当前操作人 行政级别
- AttAdBase attAdBase = attAdBaseService.getByAdcode(adCode);
- String adGrad = attAdBase.getAdGrad();
- // 获取当前操作 状态 同意1or驳回 2
- String isAgree = bisInspPblmPlistParam.getIsAgree();
- // 获取 当前操作 意见
- String comment = bisInspPblmPlistParam.getComment();
- // 获取当前 整改问题的处理状态 1 未下发 2 待整改反馈 3 待审核 4 待再次反馈 5 销号
- BisInspPblmPlist curBisInspPblmPlist = bisInspPblmPlistDao.get(bisInspPblmPlistParam.getId());
- String selfInspProcessState = curBisInspPblmPlist.getSelfInspProcessState();
- selfInspProcessState = cn.com.goldenwater.dcproj.utils.StringUtils.isEmpty(selfInspProcessState) ? "1" : selfInspProcessState;
- String nextState = null;
- String stataNote = "";
- String auditResult = "";
- bisInspPblmPlistParam.setIsStart(null);
- switch (selfInspProcessState) {
- case "1":
- // 下发 状态更新为 2
- nextState = "2";
- bisInspPblmPlistParam.setIsStart("1");
- if ("3".equals(adGrad)) {
- // 市级
- stataNote = "市级下发";
- } else if ("4".equals(adGrad)) {
- // 县级
- stataNote = "县级下发";
- } else {
- stataNote = "问题下发";
- }
- break;
- case "2":
- // 整改反馈 状态更新为3
- nextState = "3";
- if ("3".equals(adGrad)) {
- // 市级
- stataNote = "市级自查整改反馈";
- } else if ("4".equals(adGrad)) {
- // 县级
- stataNote = "县级整改反馈";
- // 判断 整改问题 是否属于县级
- String belongOrgId = curBisInspPblmPlist.getBelongOrgId();
- OlBisInspOrg belongInspOrg = olBisInspOrgService.get(belongOrgId);
- AttAdBase belongAdBase = attAdBaseService.getByAdcode(belongInspOrg.getAdCode());
- if ("4".equals(belongAdBase.getAdGrad())) {
- // 整改问题 属于县级 自查 反馈之后 直接销号
- nextState = "5";
- stataNote = "县级自查整改反馈";
- // 销号
- bisInspPblmPlistParam.setPblmOut("1");
- // 设置 流程默认 备注
- comment = "县级自查整改反馈自动销号";
- }
- } else {
- stataNote = "整改反馈";
- }
- break;
- case "3":
- if ("3".equals(adGrad)) {
- stataNote = "市级";
- } else if ("4".equals(adGrad)) {
- stataNote = "县级";
- } else {
- stataNote = "";
- }
- if ("1".equals(isAgree)) {
- // 审核通过 销号 状态更新为5
- nextState = "5";
- auditResult = "同意";
- stataNote += "审核通过";
- // 销号
- bisInspPblmPlistParam.setPblmOut("1");
- } else {
- // 审核不同过 待再次整改反馈 状态更新为4
- nextState = "4";
- auditResult = "驳回";
- stataNote += "审核驳回";
- }
- break;
- case "4":
- // 再次整改反馈 状态更新为3
- nextState = "3";
- if ("3".equals(adGrad)) {
- stataNote = "市级";
- } else if ("4".equals(adGrad)) {
- stataNote = "县级";
- } else {
- stataNote = "";
- }
- stataNote += "再次整改反馈";
- break;
- case "5":
- // 销号
- break;
- default:
- // 其它
- break;
- }
- if (null != nextState) {
- // 更新 整改问题 整改状态
- updateSelfInspProcessState(bisInspPblmPlistParam, nextState);
- // 增加 节点操作记录
- AddOptionLog(bisInspPblmPlistParam.getId(), selfInspProcessState, stataNote, auditResult, comment, loginUser.getPersId(), loginUser.getPersName(), optOrgId, attAdBase.getAdFullName());
- }
- }
- /**
- * 市、县自查 批量下发整改问题
- *
- * @param bisInspPblmPlistParamList
- * @param loginUser
- * @param optOrgId
- */
- @Override
- public void batchIssue(List<BisInspPblmPlistParam> bisInspPblmPlistParamList, LoginUser loginUser, String optOrgId) {
- // 批量下发 整改问题不为空
- if (cn.com.goldenwater.dcproj.utils.StringUtils.isNotEmpty(bisInspPblmPlistParamList)) {
- // 获取当前操作人 行政区划
- String adCode = olBisInspOrgService.getDefaultOrg(optOrgId).getAdCode();
- // 获取当前操作人 行政级别
- AttAdBase attAdBase = attAdBaseService.getByAdcode(adCode);
- String adGrad = attAdBase.getAdGrad();
- for (BisInspPblmPlistParam bisInspPblmPlistParam : bisInspPblmPlistParamList) {
- // 批量下发 整改问题id不为空
- String id = bisInspPblmPlistParam.getId();
- if (cn.com.goldenwater.dcproj.utils.StringUtils.isEmpty(id)) {
- continue;
- }
- // 获取当前 整改问题的处理状态 1 未下发 2 待整改反馈 3 待审核 4 待再次反馈 5 销号
- BisInspPblmPlist curBisInspPblmPlist = bisInspPblmPlistDao.get(id);
- String selfInspProcessState = curBisInspPblmPlist.getSelfInspProcessState();
- selfInspProcessState = cn.com.goldenwater.dcproj.utils.StringUtils.isEmpty(selfInspProcessState) ? "1" : selfInspProcessState;
- String nextState = null;
- String stataNote = "";
- // 当前是未下发状态
- if ("1".equals(selfInspProcessState)) {
- BisInspPblmPlistParam inspPblmPlistParamItem = new BisInspPblmPlistParam();
- inspPblmPlistParamItem.setId(id);
- // 下发 状态更新为 2
- nextState = "2";
- // 设置是否启动 为 已启动
- inspPblmPlistParamItem.setIsStart("1");
- if ("3".equals(adGrad)) {
- // 市级
- stataNote = "市级下发";
- } else if ("4".equals(adGrad)) {
- // 县级
- stataNote = "县级下发";
- } else {
- stataNote = "问题下发";
- }
- // 更新 整改问题 整改状态
- updateSelfInspProcessState(inspPblmPlistParamItem, nextState);
- // 增加 节点操作记录
- AddOptionLog(id, selfInspProcessState, stataNote, "", "", loginUser.getPersId(), loginUser.getPersName(), optOrgId, attAdBase.getAdFullName());
- }
- }
- }
- }
- private int AddOptionLog(String plistId, String crtState, String stataNote, String auditResult, String comment, String persId, String persname, String optOrgId, String optOrgName) {
- BisInspPblmPlistLog bisInspPblmPlistLog = new BisInspPblmPlistLog();
- bisInspPblmPlistLog.setId(UuidUtil.uuid());
- // 整改问题Id
- bisInspPblmPlistLog.setPblmClistId(plistId);
- // 流程状态 1 、2、3、4
- bisInspPblmPlistLog.setState(crtState);
- // 流程状态描述 问题下发 、整改反馈、审核、再次反馈
- bisInspPblmPlistLog.setStateNote(stataNote);
- // 审批结果
- bisInspPblmPlistLog.setAuditResult(auditResult);
- // 审批意见(备注)
- bisInspPblmPlistLog.setNote(comment);
- // 操作人所属机构
- bisInspPblmPlistLog.setOrgId(optOrgId);
- bisInspPblmPlistLog.setOrgNm(optOrgName);
- // 操作人
- bisInspPblmPlistLog.setPersId(persId);
- bisInspPblmPlistLog.setPersName(persname);
- bisInspPblmPlistLog.setDataStat("0");
- bisInspPblmPlistLog.setIntm(new Date());
- bisInspPblmPlistLog.setUptm(bisInspPblmPlistLog.getIntm());
- return bisInspPblmPlistLogDao.insert(bisInspPblmPlistLog);
- }
- private int updateSelfInspProcessState(BisInspPblmPlistParam bisInspPblmPlistParam, String nextState) {
- BisInspPblmPlistParam inspPblmPlistParamUpdate = new BisInspPblmPlistParam();
- inspPblmPlistParamUpdate.setId(bisInspPblmPlistParam.getId());
- inspPblmPlistParamUpdate.setSelfInspProcessState(nextState);
- // 是否启动
- inspPblmPlistParamUpdate.setIsStart(bisInspPblmPlistParam.getIsStart());
- // 是否反馈
- inspPblmPlistParamUpdate.setIsRect(bisInspPblmPlistParam.getIsRect());
- inspPblmPlistParamUpdate.setPblmPltm(bisInspPblmPlistParam.getPblmPltm());
- inspPblmPlistParamUpdate.setPblmActm(bisInspPblmPlistParam.getPblmActm());
- // 问题整改状态
- inspPblmPlistParamUpdate.setCrtState(bisInspPblmPlistParam.getCrtState());
- inspPblmPlistParamUpdate.setCrtInfo(bisInspPblmPlistParam.getCrtInfo());
- inspPblmPlistParamUpdate.setCrtNote(bisInspPblmPlistParam.getCrtNote());
- // 是否到现场复核
- inspPblmPlistParamUpdate.setIsSite(bisInspPblmPlistParam.getIsSite());
- inspPblmPlistParamUpdate.setChkDept(bisInspPblmPlistParam.getChkDept());
- inspPblmPlistParamUpdate.setDcBatch(bisInspPblmPlistParam.getDcBatch());
- inspPblmPlistParamUpdate.setPblmCrtm(bisInspPblmPlistParam.getPblmCrtm());
- inspPblmPlistParamUpdate.setPblmReason(bisInspPblmPlistParam.getPblmReason());
- inspPblmPlistParamUpdate.setPblmTm(bisInspPblmPlistParam.getPblmTm());
- // 是否销号
- inspPblmPlistParamUpdate.setPblmOut(bisInspPblmPlistParam.getPblmOut());
- inspPblmPlistParamUpdate.setUptm(new Date());
- return updateSelfInspStateById(inspPblmPlistParamUpdate);
- }
- /**
- * 市、县自查 更新 整改问题 的 问题状态
- *
- * @param bisInspPblmPlistParam
- * @return
- */
- @Override
- public int updateSelfInspStateById(BisInspPblmPlistParam bisInspPblmPlistParam) {
- return bisInspPblmPlistDao.updateSelfInspStateById(bisInspPblmPlistParam);
- }
- /**
- * 四川 水库大坝 按大坝注册登记号 查询整改问题列表
- *
- * @param inspPblmPlistParam
- * @return
- */
- @Override
- public List<BisInspPblmPlist> findListByDamRegCode(BisInspPblmPlistParam inspPblmPlistParam) {
- if (StringUtils.isBlank(inspPblmPlistParam.getDamRegCode())) {
- throw new CheckException("大坝注册登记号不能为空!");
- }
- List<BisInspPblmPlist> listByDamRegCode = this.bisInspPblmPlistDao.findListByDamRegCode(inspPblmPlistParam.getDamRegCode());
- // 设置 工作流信息
- if (null != listByDamRegCode && listByDamRegCode.size() > 0) {
- for (BisInspPblmPlist pblmPlist : listByDamRegCode) {
- // 查询
- logger.info("=======================================bisInspPblmPlistParam.getProvince():" + inspPblmPlistParam.getProvince() + "==============================================================");
- List<Map<String, String>> bpmDataIdList = bisInspPblmPlistDao.getBpmDataId(pblmPlist.getId(), inspPblmPlistParam.getOrgId(), inspPblmPlistParam.getProvince());
- if (CollectionUtils.isNotEmpty(bpmDataIdList)) {
- Map<String, String> bpmData = bpmDataIdList.get(0);
- pblmPlist.setTaskInstId(bpmData.get("taskInstId"));
- pblmPlist.setProcInstId(bpmData.get("procInstId"));
- pblmPlist.setProcTypeName("督查-" + bpmData.get("procTypeName"));
- }
- }
- }
- return listByDamRegCode;
- }
- }
|