| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514 |
- package cn.com.goldenwater.dcproj.controller.mend;
- import cn.com.goldenwater.core.web.BaseController;
- import cn.com.goldenwater.core.web.BaseResponse;
- import cn.com.goldenwater.dcproj.dto.LoginUser;
- import cn.com.goldenwater.dcproj.model.*;
- import cn.com.goldenwater.dcproj.param.BisInspPblmPlistLogParam;
- import cn.com.goldenwater.dcproj.param.BisInspPblmPlistParam;
- import cn.com.goldenwater.dcproj.param.DictTypeParam;
- import cn.com.goldenwater.dcproj.param.GwComFileParam;
- import cn.com.goldenwater.dcproj.service.*;
- import cn.com.goldenwater.dcproj.util.ReadExcelUtil;
- import cn.com.goldenwater.dcproj.util.StringUtil;
- import cn.com.goldenwater.dcproj.utils.AdLevelUtil;
- import cn.com.goldenwater.dcproj.utils.Builder;
- import cn.com.goldenwater.dcproj.utils.impexcel.ExpAndImpUtil;
- import cn.com.goldenwater.id.util.UuidUtil;
- import com.github.pagehelper.PageInfo;
- import io.swagger.annotations.Api;
- import io.swagger.annotations.ApiOperation;
- import io.swagger.annotations.ApiParam;
- import org.apache.commons.lang3.StringUtils;
- import org.apache.poi.openxml4j.exceptions.InvalidFormatException;
- 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.util.Assert;
- import org.springframework.web.bind.annotation.*;
- import org.springframework.web.multipart.MultipartFile;
- import javax.servlet.http.HttpServletResponse;
- import java.io.File;
- import java.io.IOException;
- import java.nio.file.Paths;
- import java.text.SimpleDateFormat;
- import java.util.*;
- /**
- * @author lhc
- * @date 2020-11-4
- */
- @Api(value = "问题整改管理", tags = "问题整改管理")
- @RestController
- @RequestMapping("/bis/insp/pblm/plist")
- public class BisInspPblmPlistController extends BaseController {
- private Logger logger = LoggerFactory.getLogger(getClass());
- @Autowired
- private BisInspPblmPlistService bisInspPblmPlistService;
- @Autowired
- private OlBisInspOrgService olBisInspOrgService;
- @Autowired
- private BisInspPblmPlistLogService bisInspPblmPlistLogService;
- @Autowired
- private RelOrgInspTypeService relOrgInspTypeService;
- @Autowired
- private AttAdBaseService attAdBaseService;
- @Value("${export.templatePath}")
- private String templatePath;
- private final SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
- @Autowired
- private DictTypeService dictTypeService;
- @Autowired
- private BisInspPblmService bisInspPblmService;
- @Autowired
- private GwComFileService gwComFileService;
- @ApiOperation(value = "添加/修改 问题整改")
- @RequestMapping(value = "/", method = RequestMethod.POST)
- public BaseResponse<BisInspPblmPlist> insert(@ApiParam(name = "bisInspPblmPlist", value = "BisInspPblmPlist", required = true) @RequestBody BisInspPblmPlist bisInspPblmPlist) {
- //获取通用问题对应字典选项
- List<DictType> dictTypes = dictTypeService.findList(Builder.of(DictTypeParam::new).with(DictTypeParam::setOwnerSystem, "gnrl").build());
- bisInspPblmPlist.setPersId(getCurrentPersId());
- if (StringUtils.isBlank(bisInspPblmPlist.getId())) {
- bisInspPblmPlist.setSendOrgId(getCurrentOrgId());
- bisInspPblmPlist.setSendOrgName(olBisInspOrgService.getDefaultOrg(getCurrentOrgId()).getOrgNm());
- //如果是通用类型111 单独处理下,用通用类型里的督查问题
- if (StringUtils.isNotBlank(bisInspPblmPlist.getObjType())) {
- if ("111".equals(bisInspPblmPlist.getObjType())) {
- //获取问题对应的类型代码,存储再cws_code里 ,根据code来解析对应的汉字
- if (StringUtils.isNotBlank(bisInspPblmPlist.getPblmId())) {
- BisInspPblm bisInspPblm = bisInspPblmService.get(bisInspPblmPlist.getPblmId());
- //根据字典设置对应的 类型和督查类型描述
- for (DictType dicType : dictTypes) {
- if (dicType.getDictTypeCd().equals(bisInspPblm.getCwsCode())) {
- bisInspPblmPlist.setPblmClassify(dicType.getDictTypeDesc());
- bisInspPblmPlist.setObjType(dicType.getDictTypeCd());
- }
- }
- }
- }
- }
- bisInspPblmPlistService.insert(bisInspPblmPlist);
- } else {
- bisInspPblmPlistService.update(bisInspPblmPlist);
- }
- return buildSuccessResponse(bisInspPblmPlist);
- }
- @ApiOperation(value = "督查填报整改台账问题复核")
- @RequestMapping(value = "/review", method = RequestMethod.POST)
- public BaseResponse<BisInspPblmPlist> reviewUpdate(@ApiParam(name = "bisInspPblmPlist", value = "BisInspPblmPlist", required = true) @RequestBody BisInspPblmPlist bisInspPblmPlist) {
- bisInspPblmPlist.setPersId(getCurrentPersId());
- if (StringUtils.isBlank(bisInspPblmPlist.getId())) {
- return buildFailResponse("整改台账Id不能为空!");
- } else {
- if (StringUtils.isBlank(bisInspPblmPlist.getReviewResult())) {
- return buildFailResponse("复核结果不能为空!");
- }
- // 设置复核状态 为已复核
- bisInspPblmPlist.setReviewStat("1");
- bisInspPblmPlist.setReviewTm(new Date());
- bisInspPblmPlistService.update(bisInspPblmPlist);
- }
- return buildSuccessResponse(bisInspPblmPlist);
- }
- @ApiOperation(value = "下载模板的接口")
- @RequestMapping(value = "/download", method = {RequestMethod.GET, RequestMethod.POST})
- public BaseResponse<String> downloadTemplate(HttpServletResponse response) {
- try {
- bisInspPblmPlistService.downloadTemplate(response);
- } catch (Exception e) {
- e.printStackTrace();
- return buildSuccessResponse("N");
- }
- return buildSuccessResponse("Y");
- }
- @ApiOperation(value = "上传接口")
- @RequestMapping(value = "/upload", method = {RequestMethod.GET, RequestMethod.POST})
- public BaseResponse<String> uploadTemplate(@ApiParam("数据流") @RequestParam() MultipartFile[] file) {
- // 返回[存储路径]
- return buildSuccessResponse(bisInspPblmPlistService.uploadFile(file));
- }
- @ApiOperation(value = "批量添加添加/修改 问题整改")
- @RequestMapping(value = "/insertList", method = RequestMethod.POST)
- public BaseResponse<List<BisInspPblmPlist>> insertList(@ApiParam(name = "bisInspPblmPlist", value = "BisInspPblmPlist", required = true) @RequestBody List<BisInspPblmPlist> bisInspPblmPlists) {
- //获取通用问题对应字典选项
- List<DictType> dictTypes = dictTypeService.findList(Builder.of(DictTypeParam::new).with(DictTypeParam::setOwnerSystem, "gnrl").build());
- for (BisInspPblmPlist bisInspPblmPlist : bisInspPblmPlists) {
- bisInspPblmPlist.setPersId(getCurrentPersId());
- if (StringUtils.isBlank(bisInspPblmPlist.getId())) {
- bisInspPblmPlist.setSendOrgId(getCurrentOrgId());
- bisInspPblmPlist.setSendOrgName(olBisInspOrgService.getDefaultOrg(getCurrentOrgId()).getOrgNm());
- //如果是通用类型111 单独处理下,用通用类型里的督查问题
- if (StringUtils.isNotBlank(bisInspPblmPlist.getObjType())) {
- if ("111".equals(bisInspPblmPlist.getObjType())) {
- //获取问题对应的类型代码,存储再cws_code里 ,根据code来解析对应的汉字
- if (StringUtils.isNotBlank(bisInspPblmPlist.getPblmId())) {
- BisInspPblm bisInspPblm = bisInspPblmService.get(bisInspPblmPlist.getPblmId());
- //根据字典设置对应的 类型和督查类型描述
- for (DictType dicType : dictTypes) {
- if (dicType.getDictTypeCd().equals(bisInspPblm.getCwsCode())) {
- bisInspPblmPlist.setPblmClassify(dicType.getDictTypeDesc());
- bisInspPblmPlist.setObjType(dicType.getDictTypeCd());
- break;
- }
- }
- }
- }
- }
- bisInspPblmPlistService.insert(bisInspPblmPlist);
- } else {
- bisInspPblmPlistService.update(bisInspPblmPlist);
- }
- }
- return buildSuccessResponse(bisInspPblmPlists);
- }
- @ApiOperation(value = "根据ID删除问题整改")
- @RequestMapping(value = "delete/{id}", method = RequestMethod.POST)
- public BaseResponse delete(@ApiParam(name = "id", value = "id", required = true) @PathVariable String id) {
- int ret = bisInspPblmPlistService.delete(id);
- return buildSuccessResponse();
- }
- @ApiOperation(value = "批量更新问题整改信息")
- @RequestMapping(value = "/updateList", method = RequestMethod.POST)
- public BaseResponse<List<BisInspPblmPlist>> update(@ApiParam(name = "bisInspPblmPlist", value = "BisInspPblmPlist", required = true) @RequestBody List<BisInspPblmPlist> bisInspPblmPlists) {
- for (BisInspPblmPlist bisInspPblmPlist : bisInspPblmPlists) {
- bisInspPblmPlist.setPersId(getCurrentPersId());
- int ret = bisInspPblmPlistService.update(bisInspPblmPlist);
- }
- return buildSuccessResponse(bisInspPblmPlists);
- }
- @ApiOperation(value = "批量删除问题整改信息")
- @RequestMapping(value = "/batch/delete", method = RequestMethod.POST)
- public void batchDelete(@ApiParam(name = "bisInspPblmPlist", value = "BisInspPblmPlist", required = true) @RequestBody List<BisInspPblmPlist> bisInspPblmPlists) {
- for (BisInspPblmPlist bisInspPblmPlist : bisInspPblmPlists) {
- delete(bisInspPblmPlist.getId());
- }
- }
- @ApiOperation(value = "更新问题整改信息")
- @RequestMapping(value = "/update", method = RequestMethod.POST)
- public BaseResponse<BisInspPblmPlist> update(@ApiParam(name = "bisInspPblmPlist", value = "BisInspPblmPlist", required = true) @RequestBody BisInspPblmPlist bisInspPblmPlist) {
- Assert.notNull(bisInspPblmPlist.getId(), "主键id为必填参数");
- bisInspPblmPlist.setPersId(getCurrentPersId());
- int ret = bisInspPblmPlistService.update(bisInspPblmPlist);
- return buildSuccessResponse(bisInspPblmPlist);
- }
- @ApiOperation(value = "根据ID获取问题整改(单表)")
- @RequestMapping(value = "/{id}", method = RequestMethod.GET)
- public BaseResponse<BisInspPblmPlist> get(@ApiParam(name = "id", value = "id", required = true) @PathVariable String id) {
- BisInspPblmPlist bisInspPblmPlist = bisInspPblmPlistService.get(id);
- BisInspPblmPlistLogParam bisInspPblmPlistLogParam = new BisInspPblmPlistLogParam();
- bisInspPblmPlistLogParam.setPblmClistId(id);
- return buildSuccessResponse(bisInspPblmPlist);
- }
- @ApiOperation(value = "根据ID获取问题整改对象和附件")
- @RequestMapping(value = "/getObj/{id}", method = RequestMethod.GET)
- public BaseResponse<BisInspPblmPlist> getObj(@ApiParam(name = "id", value = "id", required = true) @PathVariable String id) {
- BisInspPblmPlist bisInspPblmPlist = bisInspPblmPlistService.get(id);
- if (bisInspPblmPlist != null) {
- GwComFileParam gwComFileParam = new GwComFileParam();
- gwComFileParam.setBizId(id);
- List<GwComFile> gwComFiles = gwComFileService.findAllFile(gwComFileParam);
- bisInspPblmPlist.setGwComFiles(gwComFiles);
- }
- return buildSuccessResponse(bisInspPblmPlist);
- }
- @ApiOperation(value = "监督处获取所有业务处室提交问题清单")
- @RequestMapping(value = "/getList", method = RequestMethod.POST)
- public BaseResponse<PageInfo<BisInspPblmPlist>> getList(@ApiParam(name = "bisInspPblmPlistParam", value = "BisInspPblmPlistParam", required = true) @RequestBody BisInspPblmPlistParam bisInspPblmPlistParam) {
- PageInfo<BisInspPblmPlist> pblmPlistPageInfo = bisInspPblmPlistService.getList(bisInspPblmPlistParam);
- return buildSuccessResponse(pblmPlistPageInfo);
- }
- @ApiOperation(value = "四川省小水库督查填报根据大坝注册登记号查询整改台账列表")
- @RequestMapping(value = "/getPblmPlistByDamRegCode", method = RequestMethod.POST)
- public BaseResponse<List<BisInspPblmPlist>> queryPblmPlistListByDamRegCode(@ApiParam(name = "bisInspPblmPlistParam", value = "BisInspPblmPlistParam", required = true) @RequestBody BisInspPblmPlistParam bisInspPblmPlistParam) {
- bisInspPblmPlistParam.setProvince(AdLevelUtil.getAddvcd(olBisInspOrgService.getRlProvince(getCurrentOrgId())));
- bisInspPblmPlistParam.setOrgId(getCurrentOrgId());
- List<BisInspPblmPlist> pblmPlistList = bisInspPblmPlistService.findListByDamRegCode(bisInspPblmPlistParam);
- return buildSuccessResponse(pblmPlistList);
- }
- /**
- * 问题整改台账查询
- */
- @ApiOperation(value = "业务处室获取自己提交的问题清单")
- @RequestMapping(value = "/sendOrgGetList", method = RequestMethod.POST)
- public BaseResponse<PageInfo<BisInspPblmPlist>> sendOrgGetList(@ApiParam(name = "bisInspPblmPlistParam", value = "BisInspPblmPlistParam", required = true) @RequestBody BisInspPblmPlistParam bisInspPblmPlistParam) {
- String adCode = olBisInspOrgService.getDefaultOrg(getCurrentOrgId()).getAdCode();
- boolean provincialLevel = adCode.replace("0", "").length() > 2 ? false : true;
- if (!provincialLevel) {
- bisInspPblmPlistParam.setProvincialLevel("2");
- }
- bisInspPblmPlistParam.setProvince(AdLevelUtil.getAddvcd(olBisInspOrgService.getRlProvince(getCurrentOrgId())));
- bisInspPblmPlistParam.setOrgId(getCurrentOrgId());
- bisInspPblmPlistParam.setBelongOrgId(bisInspPblmPlistParam.getOrgId());
- bisInspPblmPlistParam.setPersId(getCurrentPersId());
- if (StringUtils.isBlank(bisInspPblmPlistParam.getObjAdCode()) && StringUtils.isNotBlank(bisInspPblmPlistParam.getAdCode())) {
- bisInspPblmPlistParam.setObjAdCode(bisInspPblmPlistParam.getAdCode());
- }
- PageInfo<BisInspPblmPlist> pblmPlistPageInfo = bisInspPblmPlistService.sendOrgGetList(bisInspPblmPlistParam, adCode);
- return buildSuccessResponse(pblmPlistPageInfo);
- }
- /**
- * 市、县 自查 问题整改审批
- * 下发、整改反馈、审核
- */
- @ApiOperation(value = "业务处室获取自己提交的问题清单")
- @RequestMapping(value = "/option", method = RequestMethod.POST)
- public BaseResponse cityAndCountySelfInspectionOption(@ApiParam(name = "bisInspPblmPlistParam", value = "BisInspPblmPlistParam", required = true) @RequestBody BisInspPblmPlistParam bisInspPblmPlistParam) {
- LoginUser loginUser = getCurrentLoginUser();
- // 市、县自查 问题整改操作流程: 下发、整改反馈、审核。
- bisInspPblmPlistService.dealWithOptions(bisInspPblmPlistParam, loginUser, getCurrentOrgId());
- return buildSuccessResponse();
- }
- /**
- * 市、县 自查 问题整改审批
- * 下发、整改反馈、审核
- */
- @ApiOperation(value = "市、县自查整改问题批量下发")
- @RequestMapping(value = "/option/batch/send", method = RequestMethod.POST)
- public BaseResponse cityAndCountySelfInspectionBatchIssue(@ApiParam(name = "bisInspPblmPlistParamList", value = "bisInspPblmPlistParamList", required = true) @RequestBody List<BisInspPblmPlistParam> bisInspPblmPlistParamList) {
- LoginUser loginUser = getCurrentLoginUser();
- // 市、县自查 问题整改操作流程: 下发、整改反馈、审核。
- bisInspPblmPlistService.batchIssue(bisInspPblmPlistParamList, loginUser, getCurrentOrgId());
- return buildSuccessResponse();
- }
- @ApiOperation(value = "市获取下发给自己的问题清单")
- @RequestMapping(value = "/recvGetList", method = RequestMethod.POST)
- public BaseResponse<PageInfo<BisInspPblmPlist>> recvGetList(@ApiParam(name = "bisInspPblmPlistParam", value = "BisInspPblmPlistParam", required = true) @RequestBody BisInspPblmPlistParam bisInspPblmPlistParam) {
- PageInfo<BisInspPblmPlist> pblmPlistPageInfo = bisInspPblmPlistService.recvGetList(bisInspPblmPlistParam);
- return buildSuccessResponse(pblmPlistPageInfo);
- }
- @ApiOperation(value = "县获取下发给自己或者市转发给自己的问题清单")
- @RequestMapping(value = "/recvCountyGetList", method = RequestMethod.POST)
- public BaseResponse<PageInfo<BisInspPblmPlist>> recvCountyGetList(@ApiParam(name = "bisInspPblmPlistParam", value = "BisInspPblmPlistParam", required = true) @RequestBody BisInspPblmPlistParam bisInspPblmPlistParam) {
- bisInspPblmPlistParam.setProvince(AdLevelUtil.getAddvcd(olBisInspOrgService.getProvince(getCurrentOrgId())));
- PageInfo<BisInspPblmPlist> pblmPlistPageInfo = bisInspPblmPlistService.recvCountyGetList(bisInspPblmPlistParam);
- return buildSuccessResponse(pblmPlistPageInfo);
- }
- @ApiOperation(value = "待办任务提醒,获取当前人员所在省,市,县,提醒反馈需要范围水库数量和问题数量")
- @GetMapping("/getHandWarn")
- public BaseResponse<String> getHandWarn() {
- BisInspPblmPlistParam bisInspPblmPlistParam=new BisInspPblmPlistParam();
- bisInspPblmPlistParam.setProvince(AdLevelUtil.getAddvcd(olBisInspOrgService.getProvince(getCurrentOrgId())));
- bisInspPblmPlistParam.setObjAdCode(AdLevelUtil.getAddvcd(olBisInspOrgService.getRlProvince(getCurrentOrgId())));
- logger.info(bisInspPblmPlistParam.toString());
- logger.info("objAdcode"+bisInspPblmPlistParam.getObjAdCode());
- String result = bisInspPblmPlistService.getHandWarn(bisInspPblmPlistParam);
- return buildSuccessResponse(result);
- }
- @ApiOperation(value = "监督处导出问题清单列表")
- @RequestMapping(value = "/export", method = RequestMethod.POST)
- public void exportList(@ApiParam(name = "bisInspPblmPlistParam", value = "BisInspPblmPlistParam", required = true)
- @RequestBody BisInspPblmPlistParam bisInspPblmPlistParam,
- HttpServletResponse response) throws IOException {
- String adCode = olBisInspOrgService.getDefaultOrg(getCurrentOrgId()).getAdCode();
- boolean provincialLevel = adCode.replace("0", "").length() > 2 ? false : true;
- if (!provincialLevel) {
- bisInspPblmPlistParam.setProvincialLevel("2");
- }
- bisInspPblmPlistParam.setProvince(AdLevelUtil.getAddvcd(olBisInspOrgService.getRlProvince(getCurrentOrgId())));
- bisInspPblmPlistParam.setOrgId(getCurrentOrgId());
- bisInspPblmPlistParam.setBelongOrgId(bisInspPblmPlistParam.getOrgId());
- bisInspPblmPlistParam.setPersId(getCurrentPersId());
- if (StringUtils.isBlank(bisInspPblmPlistParam.getObjAdCode()) && StringUtils.isNotBlank(bisInspPblmPlistParam.getAdCode())) {
- bisInspPblmPlistParam.setObjAdCode(bisInspPblmPlistParam.getAdCode());
- }
- bisInspPblmPlistService.export(bisInspPblmPlistParam, adCode, response);
- }
- @ApiOperation(value = "监督处导出问题清单列表")
- @RequestMapping(value = "/exportExcel", method = RequestMethod.POST)
- public void exportListExcel(@ApiParam(name = "bisInspPblmPlistParam", value = "BisInspPblmPlistParam", required = true)
- @RequestBody BisInspPblmPlistParam bisInspPblmPlistParam,
- HttpServletResponse response) throws IOException {
- String adCode = olBisInspOrgService.getDefaultOrg(getCurrentOrgId()).getAdCode();
- boolean provincialLevel = adCode.replace("0", "").length() > 2 ? false : true;
- if (!provincialLevel) {
- bisInspPblmPlistParam.setProvincialLevel("2");
- }
- bisInspPblmPlistParam.setProvince(AdLevelUtil.getAddvcd(olBisInspOrgService.getRlProvince(getCurrentOrgId())));
- bisInspPblmPlistParam.setOrgId(getCurrentOrgId());
- bisInspPblmPlistParam.setBelongOrgId(bisInspPblmPlistParam.getOrgId());
- bisInspPblmPlistParam.setPersId(getCurrentPersId());
- if (StringUtils.isBlank(bisInspPblmPlistParam.getObjAdCode()) && StringUtils.isNotBlank(bisInspPblmPlistParam.getAdCode())) {
- bisInspPblmPlistParam.setObjAdCode(bisInspPblmPlistParam.getAdCode());
- }
- bisInspPblmPlistService.exportListExcel(bisInspPblmPlistParam, adCode, response);
- }
- /* @ApiOperation(value = "只导出excel监督处导出问题清单列表")
- @RequestMapping(value = "/exportExcel", method = RequestMethod.POST)
- public void exportExcel(@ApiParam(name = "bisInspPblmPlistParam", value = "BisInspPblmPlistParam", required = true)
- @RequestBody BisInspPblmPlistParam bisInspPblmPlistParam,
- HttpServletResponse response) throws IOException {
- bisInspPblmPlistParam.setPersId(getCurrentPersId());
- bisInspPblmPlistParam.setProvince(AdLevelUtil.getAddvcd(olBisInspOrgService.getRlProvince(getCurrentOrgId())));
- bisInspPblmPlistService.exportExcel(bisInspPblmPlistParam, response);
- }
- */
- @ApiOperation(value = "获取所有的类型")
- @RequestMapping(value = "/getAllClassType", method = RequestMethod.GET)
- public BaseResponse<List<String>> getAllClassType() {
- String adCode = AdLevelUtil.getAddvcd(olBisInspOrgService.getProvince(getCurrentOrgId()));
- List<String> bisInspPblmPlist = bisInspPblmPlistService.getAllClassType(adCode);
- return buildSuccessResponse(bisInspPblmPlist);
- }
- @ApiOperation("获取导入模板")
- @GetMapping(value = "/getExl")
- public BaseResponse getExl(HttpServletResponse response) {
- String path = templatePath + File.separator + "mendPblmTem.xls";
- try {
- ExpAndImpUtil.downloadFile(response, path, "整改问题模板");
- } catch (Exception e) {
- logger.error(e.getMessage(), e);
- }
- return buildSuccessResponse();
- }
- @ApiOperation("上传 xls 导入数据")
- @RequestMapping(value = "/impExl", method = RequestMethod.POST)
- public BaseResponse<List<String>> impExl(@RequestParam("file") MultipartFile multfile) throws IOException, InvalidFormatException {
- // List<RelOrgInspType> relOrgInspTypes = relOrgInspTypeService.getInspTypeAll();
- // 获取文件名
- String fileName = multfile.getOriginalFilename();
- // 获取文件后缀
- String prefix = fileName.substring(fileName.lastIndexOf("."));
- // 用uuid作为文件名,防止生成的临时文件重复
- String uuid = UuidUtil.uuid();
- File file = File.createTempFile(uuid, prefix);
- // MultipartFile to File
- multfile.transferTo(Paths.get(file.getPath()));
- List<String> list = new ArrayList<>();
- String[][] data = ReadExcelUtil.getDataAll(file, 1, 0);
- logger.info("-------------------------fill data size " + data.length + "--------------------------------------------------");
- // 获取当前当前用户机构和行政区划
- String curOrgId = getCurrentOrgId();
- String curAdCode = olBisInspOrgService.getDefaultOrg(curOrgId).getAdCode();
- String curAdGrad = attAdBaseService.getByAdcode(curAdCode).getAdGrad();
- try {
- if (data != null && data.length > 0) {
- for (int i = 0; i < data.length; i++) {
- BisInspPblmPlist bisInspPblmPlist = new BisInspPblmPlist();
- if (StringUtils.isBlank(data[i][1])) {
- continue;
- }
- String adCode = data[i][1].substring(0, 12);
- bisInspPblmPlist.setObjAdCode(adCode);
- bisInspPblmPlist.setPblmAdName(attAdBaseService.getByAdcode(adCode) == null ? "" : attAdBaseService.getByAdcode(adCode).getAdFullName());
- if (StringUtils.isBlank(bisInspPblmPlist.getPblmAdName())) {
- String addvNameStr = "";
- if (StringUtils.isNotBlank(data[i][2])) {
- addvNameStr = data[i][2];
- }
- if (StringUtils.isNotBlank(data[i][3])) {
- addvNameStr += "-" + data[i][3];
- }
- if (StringUtils.isNotBlank(data[i][4])) {
- addvNameStr += "-" + data[i][4];
- }
- bisInspPblmPlist.setPblmAdName(addvNameStr);
- }
- bisInspPblmPlist.setImpSource("非系统");
- bisInspPblmPlist.setIntm(simpleDateFormat.parse(data[i][6]));
- bisInspPblmPlist.setPblmNub(data[i][7]);
- bisInspPblmPlist.setPblmNubName(data[i][8]);
- bisInspPblmPlist.setDutyName(data[i][9]);
- // int finalI = i;
- // relOrgInspTypes.forEach(item->{
- // if(StringUtils.isNotBlank(data[finalI][10]) && (item.getInspName().indexOf(data[finalI][10])>-1 || data[finalI][10].indexOf(item.getInspName())>-1)){
- // bisInspPblmPlist.setPblmClassify(item.getInspName());
- // bisInspPblmPlist.setObjType(item.getInspType());
- // }else{
- // bisInspPblmPlist.setPblmClassify(data[finalI][10]);
- // }
- // });
- bisInspPblmPlist.setPblmClassify(data[i][10]);
- bisInspPblmPlist.setObjName(data[i][11]);
- bisInspPblmPlist.setPblmNameBz(data[i][12]);
- bisInspPblmPlist.setCheckPointBz(data[i][13]);
- bisInspPblmPlist.setPblmDescBz(data[i][14]);
- bisInspPblmPlist.setInspPblmDesc(data[i][15]);
- bisInspPblmPlist.setInspPblmCate("一般".equals(data[i][16]) ? "0" : "较重".equals(data[i][16]) ? "1" : "严重".equals(data[i][16]) ? "2" : "特别严重".equals(data[i][16]) ? "3" : "");
- bisInspPblmPlist.setPblmCrtm("".equals(data[i][17]) ? null : simpleDateFormat.parse(data[i][17]));
- bisInspPblmPlist.setPblmReason(data[i][18]);
- // 增加data[i][19]为是否销号(1表示销号)
- bisInspPblmPlist.setPblmOut("是".equals(data[i][19]) ? "1" : "0");
- if (data[i].length > 20) {
- // 增加data[i][20]督查对象是否省属(1是2否)
- bisInspPblmPlist.setProvincial("是".equals(data[i][20]) ? "1" : "否".equals(data[i][20]) ? "2" : null);
- }
- bisInspPblmPlist.setPersId(getCurrentPersId());
- bisInspPblmPlist.setSendOrgId(getCurrentOrgId());
- bisInspPblmPlist.setSendOrgName(olBisInspOrgService.getDefaultOrg(getCurrentOrgId()).getOrgNm());
- // if (verifyEmpty(bisInspPblmPlist)) {continue;}
- // 增加导入问题的 问题归属
- bisInspPblmPlist.setBelongOrgId(curOrgId);
- bisInspPblmPlist.setBelongAdCode(curAdCode);
- logger.debug("curAdGrad: " + curAdGrad);
- if ("3".equals(curAdGrad)) {
- // 市级
- bisInspPblmPlist.setSelfInspProcessState("1");
- } else if ("4".equals(curAdGrad)) {
- // 区、县
- bisInspPblmPlist.setSelfInspProcessState("2");
- }
- bisInspPblmPlistService.insertFile(bisInspPblmPlist);
- }
- }
- } catch (Exception e) {
- logger.error(e.getMessage(), e);
- }
- return buildSuccessResponse();
- }
- /**
- * 校验必填字段
- *
- * @param p
- * @return
- */
- public static boolean verifyEmpty(BisInspPblmPlist p) {
- if (
- p.getObjAdCode() == null || "".equals(p.getObjAdCode()) ||
- p.getIntm() == null || "".equals(p.getIntm()) ||
- p.getPblmClassify() == null || "".equals(p.getPblmClassify()) ||
- p.getObjName() == null || "".equals(p.getObjName()) ||
- p.getPblmDescBz() == null || "".equals(p.getPblmDescBz()) ||
- p.getInspPblmDesc() == null || "".equals(p.getInspPblmDesc())
- ) {
- return true;
- } else {
- return false;
- }
- }
- }
|