package com.ghsc.partybuild.controller; import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.core.type.TypeReference; import com.fasterxml.jackson.databind.ObjectMapper; import com.github.pagehelper.PageInfo; import com.ghsc.partybuild.controller.jsonmodel.RequsetData; import com.ghsc.partybuild.model.*; import com.ghsc.partybuild.service.*; import com.ghsc.partybuild.util.*; import com.ghsc.partybuild.vo.ImportUserDuesVo; import com.ghsc.partybuild.vo.PartyDuesPayVo; import com.ghsc.partybuild.vo.UserLeaderVo; import org.apache.poi.ss.util.CellRangeAddress; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.format.annotation.DateTimeFormat; import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletResponse; import java.math.BigDecimal; import java.util.*; import java.util.stream.Collectors; /** * 宣传阵地、职工思想、领导5+3、党费 * * @author pj */ @RestController @RequestMapping(value = "/api/publicity") public class PublicityController { @Autowired private PublicityService publicityService; @Autowired private StringUtils stringUtils; @Autowired private DateUtils dateUtils; @Autowired private PartyService partyService; @Autowired private DictionaryService dictionaryService; @Autowired private MapUtils mapUtils; @Autowired private UserService userService; @Autowired private WordUtil wordUtil; @Autowired private PartyUserService partyUserService; //region 宣传阵地管理 @ResponseBody @GetMapping("/getPublicityList") public RequsetData>> getPublicityList(@RequestParam("pageindex") int pageIndex, @RequestParam("pagesize") int pageSize, @RequestParam(required = false) String partyCode, @RequestParam(required = false) String positionName, @RequestParam(required = false) List positionType, @RequestParam(required = false) List positionLevel, @RequestParam(required = false) String address, @RequestParam(required = false) String beginTime, @RequestParam(required = false) String endTime, @RequestParam(required = false) List positionState, @RequestParam(required = false) String headUserName, @RequestParam(required = false) Integer zzfbType) { beginTime = dateUtils.strFormat_short(beginTime); endTime = dateUtils.strFormat_short(endTime); RequsetData>> result = new RequsetData<>(); result.setItem(publicityService.getPublicityList(pageIndex, pageSize, partyCode, positionName, positionType, positionLevel, address, beginTime, endTime, positionState, headUserName, zzfbType)); return result; } @ResponseBody @RequestMapping("/getPublicityPositionById") public RequsetData getPublicityPositionById(@RequestParam("id") String id, @RequestParam(required = false) String dzzdm) { RequsetData res = new RequsetData<>(); PubPublicityposition model = publicityService.getPublicityPositionById(id); if (model == null || (model != null && stringUtils.IsNullOrEmpty(model.getPublicitypositionid()))) { UUID uuid = UUID.randomUUID(); model = new PubPublicityposition(); model.setPublicitypositionid(uuid.toString()); model.setPartycode(dzzdm); model.setPanelcycle(1); } if (!stringUtils.IsNullOrEmpty(model.getPartycode())) { ZzZzqkxx zzZzqkxx = partyService.getPartyByDm(model.getPartycode()); if (zzZzqkxx != null && !stringUtils.IsNullOrEmpty(zzZzqkxx.getDzzdm())) { model.setPartyname(zzZzqkxx.getDzzmc()); } } res.setItem(model); return res; } @ResponseBody @RequestMapping("/getPublicityPositionInfoById") public RequsetData> getPublicityPositionInfoById(@RequestParam("id") String id) { RequsetData> res = new RequsetData<>(); PubPublicityposition model = publicityService.getPublicityPositionById(id); if (!stringUtils.IsNullOrEmpty(model.getPartycode())) { ZzZzqkxx zzZzqkxx = partyService.getPartyByDm(model.getPartycode()); if (zzZzqkxx != null && !stringUtils.IsNullOrEmpty(zzZzqkxx.getDzzdm())) { model.setPartyname(zzZzqkxx.getDzzmc()); } } List dicPositionType = dictionaryService.getDictionaryListByDicTypeKey("positionType"); List dicPositionLevel = dictionaryService.getDictionaryListByDicTypeKey("psiLevel"); List dicPositionState = dictionaryService.getDictionaryListByDicTypeKey("positionState"); Map data = mapUtils.objectToMap(model); if (model.getPositiontype() != null) { data.put("positiontypename", dictionaryService.getDicByKey(model.getPositiontype(), dicPositionType).getDicvalue()); } if (model.getPositionlevel() != null) { data.put("positionlevelname", dictionaryService.getDicByKey(model.getPositionlevel(), dicPositionLevel).getDicvalue()); } if (model.getPositionstate() != null) { data.put("positionstatename", dictionaryService.getDicByKey(model.getPositionstate(), dicPositionState).getDicvalue()); } res.setItem(data); return res; } @ResponseBody @RequestMapping("/savePublicityPosition") public RequsetData savePublicityPosition(@RequestBody PubPublicityposition model) { RequsetData res = new RequsetData(); int count = publicityService.savePublicityPosition(model, userService.getLoginUser().getUserid(), userService.getUserInfobyId(userService.getLoginUser().getUserid()).getName()); if (count > 0) { res.setSuccess(true); res.setMsg("保存成功!"); } else { res.setSuccess(false); res.setMsg("保存失败!"); } return res; } @ResponseBody @GetMapping("/deletePublicityPositionById") public RequsetData deletePublicityPositionById(@RequestParam("id") String id) { RequsetData result = new RequsetData<>(); int row = publicityService.deletePublicityPositionById(id); result.setItem(row); if (row == 0) { result.setSuccess(false); result.setMsg("删除失败!"); } else { result.setMsg("删除成功!"); } return result; } @ResponseBody @GetMapping("/deletePanel") public RequsetData deletePanel(@RequestParam("id") String id) { RequsetData result = new RequsetData<>(); int row = publicityService.deletePanel(id); result.setItem(row); if (row == 0) { result.setSuccess(false); result.setMsg("删除失败!"); } else { result.setMsg("删除成功!"); } return result; } @RequestMapping(value = "/exportPublicityPosition", method = RequestMethod.GET) public void exportPublicityPosition(HttpServletResponse response, @RequestParam(required = false) String partyCode, @RequestParam(required = false) String positionName, @RequestParam(required = false) List positionType, @RequestParam(required = false) List positionLevel, @RequestParam(required = false) String address, @RequestParam(required = false) String beginTime, @RequestParam(required = false) String endTime, @RequestParam(required = false) List positionState, @RequestParam(required = false) String headUserName, @RequestParam(required = false) Integer zzfbType) throws Exception { beginTime = dateUtils.strFormat_short(beginTime); endTime = dateUtils.strFormat_short(endTime); /**查询数据**/ List> dataList = publicityService.getPublicityList(1, 100000, partyCode, positionName, positionType, positionLevel, address, beginTime, endTime, positionState, headUserName, zzfbType).getList(); ExcelHelper excelHelper = new ExcelHelper(); ExcelHelper.ExcelData data = excelHelper.new ExcelData(); //列名 data.setName("宣传阵地信息"); List titles = new ArrayList(); titles.add("阵地名称"); titles.add("所在党组织"); titles.add("阵地类别"); titles.add("等级"); titles.add("编号"); titles.add("位置"); titles.add("尺寸"); titles.add("建设时间"); titles.add("状态"); titles.add("责任人"); data.setTitles(titles); //数据 List> rows = new ArrayList(); for (HashMap item : dataList) { List row = new ArrayList(); row.add(item.get("POSITIONNAME")); row.add(item.get("PARTYNAME")); row.add(item.get("POSITIONTYPENAME")); row.add(item.get("POSITIONLEVELNAME")); row.add(item.get("POSITIONCODE")); row.add(item.get("ADDRESS")); row.add(item.get("SIZES")); row.add(item.get("BUILDTIME")); row.add(item.get("POSITIONSTATENAME")); row.add(item.get("HEADUSERNAME")); rows.add(row); } data.setRows(rows); excelHelper.exportExcel(response, "宣传阵地信息.xlsx", data); } @ResponseBody @RequestMapping("/getPublicityPositionPanelById") public RequsetData getPublicityPositionPanelById(@RequestParam("id") String id, @RequestParam(required = false) String positionId) { RequsetData res = new RequsetData<>(); PubPublicitypositionPanel model = publicityService.getPublicityPositionPanelById(id); if (model == null || (model != null && stringUtils.IsNullOrEmpty(model.getPanelid()))) { UUID uuid = UUID.randomUUID(); model = new PubPublicitypositionPanel(); model.setPanelid(uuid.toString()); model.setPublicitypositionid(positionId); model.setPaneltime(new Date()); } res.setItem(model); return res; } @ResponseBody @RequestMapping("/savePublicityPositionPanel") public RequsetData savePublicityPositionPanel(@RequestBody PubPublicitypositionPanel model) { RequsetData res = new RequsetData(); int count = publicityService.savePublicityPanel(model, userService.getLoginUser().getUserid(), userService.getUserInfobyId(userService.getLoginUser().getUserid()).getName()); if (count > 0) { res.setSuccess(true); res.setMsg("保存成功!"); } else { res.setSuccess(false); res.setMsg("保存失败!"); } return res; } @ResponseBody @GetMapping("/getPublicityPanelRecordList") public RequsetData>> getPublicityPanelRecordList(@RequestParam("pageindex") int pageIndex, @RequestParam("pagesize") int pageSize, @RequestParam(required = false) String publicityPositionId, @RequestParam(required = false) String partyCode) { RequsetData>> result = new RequsetData<>(); result.setItem(publicityService.getPublicityPanelRecordList(pageIndex, pageSize, publicityPositionId, partyCode)); return result; } @ResponseBody @RequestMapping("/approvePanel") public RequsetData approvePanel(@RequestBody Map reqMap) { RequsetData res = new RequsetData(); int count = 0; String message = ""; ObjectMapper mapper = new ObjectMapper(); try { String panelId = reqMap.get("panelId").toString(); Boolean isPass = Boolean.parseBoolean(reqMap.get("isPass").toString()); count = publicityService.approvePanel(panelId, isPass, userService.getLoginUser().getUserid(), userService.getUserInfobyId(userService.getLoginUser().getUserid()).getName()); } catch (Exception e) { e.printStackTrace(); message = e.getMessage(); } if (count > 0) { res.setSuccess(true); res.setMsg("操作成功!"); } else { res.setSuccess(false); res.setMsg("操作失败!" + message); } return res; } @ResponseBody @GetMapping("/getPublicityPanelList") public RequsetData>> getPublicityPanelList(@RequestParam("pageindex") int pageIndex, @RequestParam("pagesize") int pageSize, @RequestParam(required = false) String partyCode, @RequestParam(required = false) String positionName, @RequestParam(required = false) Integer positionType, @RequestParam(required = false) Integer positionLevel, @RequestParam(required = false) String address, @RequestParam(required = false) String beginTime, @RequestParam(required = false) String endTime, @RequestParam(required = false) Integer positionState, @RequestParam(required = false) String headUserName, @RequestParam(required = false) Integer panelState, @RequestParam(required = false) Integer isExpired, @RequestParam(required = false) Integer zzfbType , @RequestParam(required = false) String updateTime_bt, @RequestParam(required = false) String updateTime_et) { beginTime = dateUtils.strFormat_short(beginTime); endTime = dateUtils.strFormat_short(endTime); updateTime_bt = dateUtils.strFormat_short(updateTime_bt); updateTime_et = dateUtils.strFormat_short(updateTime_et); RequsetData>> result = new RequsetData<>(); result.setItem(publicityService.getPublicityPanelList(pageIndex, pageSize, partyCode, positionName, positionType, positionLevel, address, beginTime, endTime, positionState, headUserName, panelState, isExpired, zzfbType, updateTime_bt, updateTime_et)); return result; } @ResponseBody @GetMapping("/getPublicityPanelTotal") public HashMap getPublicityPanelTotal(@RequestParam("pageindex") int pageIndex, @RequestParam("pagesize") int pageSize, @RequestParam(required = false) String partyCode, @RequestParam(required = false) String positionName, @RequestParam(required = false) Integer positionType, @RequestParam(required = false) Integer positionLevel, @RequestParam(required = false) String address, @RequestParam(required = false) String beginTime, @RequestParam(required = false) String endTime, @RequestParam(required = false) Integer positionState, @RequestParam(required = false) String headUserName, @RequestParam(required = false) Integer zzfbType, @RequestParam(required = false) String updateTime_bt, @RequestParam(required = false) String updateTime_et) { beginTime = dateUtils.strFormat_short(beginTime); endTime = dateUtils.strFormat_short(endTime); updateTime_bt = dateUtils.strFormat_short(updateTime_bt); updateTime_et = dateUtils.strFormat_short(updateTime_et); HashMap result = new HashMap<>(); List> list = publicityService.getPublicityPanelList(1, 1000000, partyCode, positionName, positionType, positionLevel, address, beginTime, endTime, positionState, headUserName, null, null, zzfbType, updateTime_bt, updateTime_et).getList(); result.put("expired", list.stream().filter(it -> it.get("ISEXPIRED") != null && "1".equals(it.get("ISEXPIRED").toString())).count()); result.put("notApprove", list.stream().filter(it -> it.get("PANELSTATE") != null && "0".equals(it.get("PANELSTATE").toString())).count()); return result; } //endregion //region 职工思想动态分析 @ResponseBody @GetMapping("/getUserThoughtList") public RequsetData>> getUserThoughtList(@RequestParam("pageindex") int pageIndex, @RequestParam("pagesize") int pageSize, @RequestParam(required = false) String partyCode, @RequestParam(required = false) Integer thoughtType, @RequestParam(required = false) Integer questionType, @RequestParam(required = false) String userName, @RequestParam(required = false) String beginTime, @RequestParam(required = false) String endTime, @RequestParam(required = false) Integer handleType, @RequestParam(required = false) Integer destroyType, @RequestParam(required = false) Integer handleState, @RequestParam(required = false) Integer zzfbType) { beginTime = dateUtils.strFormat_short(beginTime); endTime = dateUtils.strFormat_short(endTime); RequsetData>> result = new RequsetData<>(); result.setItem(publicityService.getUserThoughtList(pageIndex, pageSize, partyCode, thoughtType, questionType, userName, beginTime, endTime, handleType, destroyType, handleState, zzfbType)); return result; } @ResponseBody @GetMapping("/getThoughtTotal") public RequsetData>> getThoughtTotal(@RequestParam("pageindex") int pageIndex, @RequestParam("pagesize") int pageSize, @RequestParam(required = false) String partyCode, @RequestParam(required = false) Integer year, @RequestParam(required = false) Integer month) { RequsetData>> result = new RequsetData<>(); result.setItem(publicityService.getThoughtTotal(pageIndex, pageSize, partyCode, year, month)); return result; } @ResponseBody @GetMapping("/getThoughtSummary") public RequsetData>> getThoughtSummary(@RequestParam("pageindex") int pageIndex, @RequestParam("pagesize") int pageSize, @RequestParam(required = false) String dzzdm, @RequestParam(required = false) Integer year) { RequsetData>> result = new RequsetData<>(); result.setItem(publicityService.getThoughtSummary(pageIndex, pageSize, dzzdm, year)); return result; } @RequestMapping(value = "/exportThoughtSummaryt", method = RequestMethod.GET) public void exportThoughtSummaryt(HttpServletResponse response, @RequestParam(required = false) String dzzmc, @RequestParam(required = false) String dzzdm, @RequestParam(required = false) Integer year) throws Exception { /**查询数据**/ List> dataList = publicityService.getThoughtSummary(1, 100000, dzzdm, year).getList(); ExcelHelper excelHelper = new ExcelHelper(); ExcelHelper.ExcelData data = excelHelper.new ExcelData(); //列名 data.setName("职工思想动态统计信息"); List titles = new ArrayList(); titles.add("所属党组织"); titles.add("年度"); titles.add("问题总数"); titles.add("政策制度"); titles.add("职工收入"); titles.add("生产生活"); titles.add("福利待遇"); titles.add("工作相关"); titles.add("其它诉求"); titles.add("销号数量"); data.setTitles(titles); //数据 List> rows = new ArrayList(); for (HashMap item : dataList) { List row = new ArrayList(); row.add(item.get("DZZMC")); row.add(item.get("YEAR")); row.add(item.get("问题总数")); row.add(item.get("政策制度")); row.add(item.get("职工收入")); row.add(item.get("生产生活")); row.add(item.get("福利待遇")); row.add(item.get("工作相关")); row.add(item.get("其它诉求")); row.add(item.get("销号数量")); rows.add(row); } data.setRows(rows); excelHelper.exportExcel(response, "职工思想动态统计信息.xlsx", data); } @ResponseBody @RequestMapping("/getUserthoughtById") public RequsetData getUserthoughtById(@RequestParam("id") String id, @RequestParam(required = false) String dzzdm) { RequsetData res = new RequsetData<>(); UsUserthought model = publicityService.getUserthoughtById(id); if (model == null || (model != null && stringUtils.IsNullOrEmpty(model.getUserthoughtid()))) { UUID uuid = UUID.randomUUID(); model = new UsUserthought(); model.setUserthoughtid(uuid.toString()); model.setPartycode(dzzdm); } if (!stringUtils.IsNullOrEmpty(model.getPartycode())) { ZzZzqkxx zzZzqkxx = partyService.getPartyByDm(model.getPartycode()); if (zzZzqkxx != null && !stringUtils.IsNullOrEmpty(zzZzqkxx.getDzzdm())) { model.setPartyname(zzZzqkxx.getDzzmc()); } } res.setItem(model); return res; } @ResponseBody @RequestMapping("/saveUserthought") public RequsetData saveUserthought(@RequestBody UsUserthought model) { RequsetData res = new RequsetData(); int count = publicityService.saveUserthought(model, userService.getLoginUser().getUserid(), userService.getUserInfobyId(userService.getLoginUser().getUserid()).getName()); if (count > 0) { res.setSuccess(true); res.setMsg("保存成功!"); } else { res.setSuccess(false); res.setMsg("保存失败!"); } return res; } @ResponseBody @GetMapping("/deleteUserthoughtById") public RequsetData deleteUserthoughtById(@RequestParam("id") String id) { RequsetData result = new RequsetData<>(); int row = publicityService.deleteUserthoughtById(id); result.setItem(row); if (row == 0) { result.setSuccess(false); result.setMsg("删除失败!"); } else { result.setMsg("删除成功!"); } return result; } @ResponseBody @GetMapping("/getUserThoughtTotalList") public RequsetData>> getUserThoughtTotalList(@RequestParam("pageindex") int pageIndex, @RequestParam("pagesize") int pageSize, @RequestParam(required = false) String partyCode, @RequestParam(required = false) Integer month, @RequestParam(required = false) String writeUser, @RequestParam(required = false) Integer zzfbType) { RequsetData>> result = new RequsetData<>(); result.setItem(publicityService.getUserThoughtTotalList(pageIndex, pageSize, partyCode, month, writeUser, zzfbType)); return result; } @ResponseBody @RequestMapping("/getUserthoughtTotalById") public RequsetData getUserthoughtTotalById(@RequestParam("id") String id, @RequestParam(required = false) String dzzdm) { RequsetData res = new RequsetData<>(); UsUserthoughttotal model = publicityService.getUserthoughtTotalById(id); if (model == null || (model != null && stringUtils.IsNullOrEmpty(model.getUserthoughttotalid()))) { UUID uuid = UUID.randomUUID(); model = new UsUserthoughttotal(); model.setUserthoughttotalid(uuid.toString()); model.setWritetime(new Date()); model.setWriteuser(userService.getUserInfobyId(userService.getLoginUser().getUserid()).getName()); if (!stringUtils.IsNullOrEmpty(dzzdm)) { ZzZzqkxx zzZzqkxx = partyService.getPartyByDm(dzzdm); if (zzZzqkxx != null && !stringUtils.IsNullOrEmpty(zzZzqkxx.getDzzdm())) { model.setPartycode(dzzdm); model.setPartyname(zzZzqkxx.getDzzmc()); } } } res.setItem(model); return res; } @ResponseBody @RequestMapping("/savetUserthoughtTotal") public RequsetData savetUserthoughtTotal(@RequestBody UsUserthoughttotal model) { RequsetData res = new RequsetData(); int count = publicityService.savetUserthoughtTotal(model, userService.getLoginUser().getUserid(), userService.getUserInfobyId(userService.getLoginUser().getUserid()).getName()); if (count > 0) { res.setSuccess(true); res.setMsg("保存成功!"); } else { res.setSuccess(false); res.setMsg("保存失败!"); } return res; } @ResponseBody @GetMapping("/deletetUserthoughtTotalById") public RequsetData deletetUserthoughtTotalById(@RequestParam("id") String id) { RequsetData result = new RequsetData<>(); int row = publicityService.deletetUserthoughtTotalById(id); result.setItem(row); if (row == 0) { result.setSuccess(false); result.setMsg("删除失败!"); } else { result.setMsg("删除成功!"); } return result; } @RequestMapping(value = "/exportUserthought", method = RequestMethod.GET) public void exportUserthought(HttpServletResponse response, @RequestParam(required = false) String partyCode, @RequestParam(required = false) Integer thoughtType, @RequestParam(required = false) Integer questionType, @RequestParam(required = false) String userName, @RequestParam(required = false) String beginTime, @RequestParam(required = false) String endTime, @RequestParam(required = false) Integer handleType, @RequestParam(required = false) Integer destroyType, @RequestParam(required = false) Integer handleState, @RequestParam(required = false) Integer zzfbType) throws Exception { beginTime = dateUtils.strFormat_short(beginTime); endTime = dateUtils.strFormat_short(endTime); /**查询数据**/ List> dataList = publicityService.getUserThoughtList(1, 1000000, partyCode, thoughtType, questionType, userName, beginTime, endTime, handleType, destroyType, handleState, zzfbType).getList(); ExcelHelper excelHelper = new ExcelHelper(); ExcelHelper.ExcelData data = excelHelper.new ExcelData(); //列名 data.setName("职工思想动态分析信息"); List titles = new ArrayList(); titles.add("职工姓名"); titles.add("所在党组织"); titles.add("类别"); titles.add("问题类型"); titles.add("反馈问题"); titles.add("发现时间"); titles.add("受理人"); titles.add("处理情况"); titles.add("销号情况"); titles.add("销号日期"); titles.add("状态"); data.setTitles(titles); //数据 List> rows = new ArrayList(); for (HashMap item : dataList) { List row = new ArrayList(); row.add(item.get("USERNAME")); row.add(item.get("PARTYNAME")); row.add(item.get("THOUGHTTYPENAME")); row.add(item.get("QUESTIONTYPENAME")); row.add(item.get("QUESTION")); row.add(item.get("FINDTIME")); row.add(item.get("ACCEPTUSER")); row.add(item.get("HANDLETYPENAME")); row.add(item.get("DESTROYTYPENAME")); row.add(item.get("DESTROYTIME")); row.add(item.get("HANDLESTATENAME")); rows.add(row); } data.setRows(rows); excelHelper.exportExcel(response, "职工思想动态分析信息.xlsx", data); } @RequestMapping(value = "/exportUserthoughtTotal", method = RequestMethod.GET) public void exportUserthoughtTotal(HttpServletResponse response, @RequestParam(required = false) String partyCode, @RequestParam(required = false) Integer month, @RequestParam(required = false) String writeUser, @RequestParam(required = false) Integer zzfbType) throws Exception { /**查询数据**/ List> dataList = publicityService.getUserThoughtTotalList(1, 100000, partyCode, month, writeUser, zzfbType).getList(); ExcelHelper excelHelper = new ExcelHelper(); ExcelHelper.ExcelData data = excelHelper.new ExcelData(); //列名 data.setName("职工思想动态分析统计信息"); List titles = new ArrayList(); titles.add("所在党组织"); titles.add("月度"); titles.add("提交日期"); titles.add("提交人"); titles.add("审批人"); data.setTitles(titles); //数据 List> rows = new ArrayList(); for (HashMap item : dataList) { List row = new ArrayList(); row.add(item.get("PARTYNAME")); row.add(item.get("MONTH")); row.add(item.get("WRITETIME")); row.add(item.get("WRITEUSER")); row.add(item.get("APPROVEUSER")); rows.add(row); } data.setRows(rows); excelHelper.exportExcel(response, "职工思想动态分析统计信息.xlsx", data); } //endregion //region 领导人员5+3管理 @ResponseBody @GetMapping("/getUserLeaderList") public RequsetData>> getUserLeaderList(@RequestParam("pageindex") int pageIndex, @RequestParam("pagesize") int pageSize, @RequestParam(required = false) String partyCode, @RequestParam(required = false) String userName, @RequestParam(required = false) Integer leaderType, @RequestParam(required = false) String beginTime, @RequestParam(required = false) String endTime, @RequestParam(required = false) Integer zzfbType, @RequestParam(required = false) String rybm) { beginTime = dateUtils.strFormat_short(beginTime); endTime = dateUtils.strFormat_short(endTime); RequsetData>> result = new RequsetData<>(); result.setItem(publicityService.getUserLeaderList(pageIndex, pageSize, partyCode, userName, leaderType, beginTime, endTime, zzfbType, rybm)); return result; } @ResponseBody @RequestMapping("/getUserLeaderById") public RequsetData getUserLeaderById(@RequestParam("id") String id, @RequestParam(required = false) String dzzdm) { RequsetData res = new RequsetData<>(); UsUserleader model = publicityService.getUserLeaderById(id); if (model == null || (model != null && stringUtils.IsNullOrEmpty(model.getUserleaderid()))) { UUID uuid = UUID.randomUUID(); model = new UsUserleader(); model.setUserleaderid(uuid.toString()); model.setPartycode(dzzdm); } if (!stringUtils.IsNullOrEmpty(model.getPartycode())) { ZzZzqkxx zzZzqkxx = partyService.getPartyByDm(model.getPartycode()); if (zzZzqkxx != null && !stringUtils.IsNullOrEmpty(zzZzqkxx.getDzzdm())) { model.setPartyname(zzZzqkxx.getDzzmc()); } } res.setItem(model); return res; } @ResponseBody @RequestMapping("/saveUserLeader") public RequsetData saveUserLeader(@RequestBody Map reqMap) { RequsetData res = new RequsetData(); ObjectMapper mapper = new ObjectMapper(); String message = ""; int count = 0; try { UsUserleader dataModel = mapper.readValue(mapper.writeValueAsString(reqMap.get("dataModel")).toString(), UsUserleader.class); List userList = JsonMapper.jsonToObject(reqMap.get("userList").toString(), new TypeReference>() { }); count = publicityService.saveUserLeader(dataModel, userList, userService.getLoginUser().getUserid(), userService.getUserInfobyId(userService.getLoginUser().getUserid()).getName()); } catch (JsonProcessingException e) { e.printStackTrace(); message = e.getMessage(); } if (count > 0) { res.setSuccess(true); res.setMsg("保存成功!"); } else { res.setSuccess(false); res.setMsg("保存失败!" + message); } return res; } @ResponseBody @GetMapping("/getUserleaderDetailList") public RequsetData>> getUserleaderDetailList(@RequestParam("leaderId") String leaderId) { RequsetData>> result = new RequsetData<>(); result.setItem(publicityService.getUserleaderDetailList(leaderId)); return result; } @ResponseBody @GetMapping("/deleteUserLeaderById") public RequsetData deleteUserLeaderById(@RequestParam("id") String id) { RequsetData result = new RequsetData<>(); int row = publicityService.deleteUserLeaderById(id); result.setItem(row); if (row == 0) { result.setSuccess(false); result.setMsg("删除失败!"); } else { result.setMsg("删除成功!"); } return result; } @RequestMapping(value = "/exportUserLeader", method = RequestMethod.GET) public void exportUserLeader(HttpServletResponse response, @RequestParam(required = false) String partyCode, @RequestParam(required = false) String userName, @RequestParam(required = false) Integer leaderType, @RequestParam(required = false) String beginTime, @RequestParam(required = false) String endTime, @RequestParam(required = false) Integer zzfbType, @RequestParam(required = false) String rybm) throws Exception { beginTime = dateUtils.strFormat_short(beginTime); endTime = dateUtils.strFormat_short(endTime); /**查询数据**/ List> dataList = publicityService.getUserLeaderList(1, 100000, partyCode, userName, leaderType, beginTime, endTime, zzfbType, rybm).getList(); ExcelHelper excelHelper = new ExcelHelper(); ExcelHelper.ExcelData data = excelHelper.new ExcelData(); //列名 data.setName("领导人员5+3信息"); List titles = new ArrayList(); titles.add("姓名"); titles.add("所属党委"); titles.add("所在党支部"); titles.add("党内职务"); titles.add("时间"); titles.add("地点"); titles.add("类别"); data.setTitles(titles); //数据 List> rows = new ArrayList(); for (HashMap item : dataList) { List row = new ArrayList(); row.add(item.get("USERNAME")); row.add(item.get("PARTYNAME")); row.add(item.get("USERPARTYNAME")); row.add(item.get("DNZW")); row.add(item.get("LEADERTIME")); row.add(item.get("ADDRESS")); row.add(item.get("LEADERTYPENAME")); rows.add(row); } data.setRows(rows); excelHelper.exportExcel(response, "领导人员5+3信息.xlsx", data); } @ResponseBody @GetMapping("/getUserLeaderTotalList") public RequsetData>> getUserLeaderTotalList(@RequestParam("pageindex") int pageIndex, @RequestParam("pagesize") int pageSize, @RequestParam(required = false) String partyCode, @RequestParam(required = false) String userName, @RequestParam(required = false) String beginTime, @RequestParam(required = false) String endTime) { beginTime = dateUtils.strFormat_short(beginTime); endTime = dateUtils.strFormat_short(endTime); RequsetData>> result = new RequsetData<>(); int partyLength = 12; if (!stringUtils.IsNullOrEmpty((partyCode))) { if (partyCode.length() > 12) { partyLength = partyCode.length(); } } result.setItem(publicityService.getUserLeaderTotalList(pageIndex, pageSize, partyCode, userName, beginTime, endTime, partyLength)); return result; } @ResponseBody @RequestMapping("/importUserLeader") public RequsetData> importUserLeader(@RequestBody Map reqMap) { RequsetData> res = new RequsetData<>(); List errorInfo = new ArrayList<>(); String message = ""; try { List userList = JsonMapper.jsonToObject(reqMap.get("userList").toString(), new TypeReference>() { }); userList = userList.stream().filter(it -> !stringUtils.IsNullOrEmpty(it.getUserName()) && !stringUtils.IsNullOrEmpty(it.getPartyName())).collect(Collectors.toList()); errorInfo = publicityService.importUserLeader(userList, userService.getLoginUser().getUserid(), userService.getUserInfobyId(userService.getLoginUser().getUserid()).getName()); } catch (Exception e) { e.printStackTrace(); message = e.getMessage(); } if (errorInfo.size() <= 0 && stringUtils.IsNullOrEmpty(message)) { res.setSuccess(true); res.setMsg("操作成功!"); } else { res.setSuccess(false); res.setMsg("操作失败!" + message); res.setItem(errorInfo); } return res; } //endregion //region 党费管理 @ResponseBody @RequestMapping("/getPartyDuesList") public RequsetData>> getPartyDuesList(@RequestParam("pageindex") int pageIndex, @RequestParam("pagesize") int pageSize, @RequestParam(required = false) String partyCode, @RequestParam("year") Integer year, @RequestParam(required = false) String userName, @RequestParam(required = false) Integer zzfbType, @RequestParam(required = false) Integer isStudent) { RequsetData>> result = new RequsetData<>(); PageInfo> resultList = publicityService.getPartyDuesList(pageIndex, pageSize, partyCode, year, userName, zzfbType, isStudent); result.setItem(resultList.getList()); Map extData = new HashMap<>(); extData.put("total", resultList.getTotal()); /*Map totalData = new HashMap<>(); totalData.put("totalMoney", publicityService.getPartyDuesTotalMoney(partyCode, year, userName, zzfbType)); List> totalList = publicityService.getPartyDuesTotal(partyCode, year, userName, zzfbType); for (HashMap item : totalList) { BigDecimal totalMoney = new BigDecimal(item.get("TOTALMONEY").toString()); int month = Integer.parseInt(item.get("MONTH").toString()); String keyName = ""; switch (month) { case 1: keyName = "Jan"; break; case 2: keyName = "Feb"; break; case 3: keyName = "Mar"; break; case 4: keyName = "Apr"; break; case 5: keyName = "May"; break; case 6: keyName = "Jun"; break; case 7: keyName = "Jul"; break; case 8: keyName = "Aug"; break; case 9: keyName = "Sept"; break; case 10: keyName = "Oct"; break; case 11: keyName = "Nov"; break; case 12: keyName = "Dec"; } totalData.put(keyName, totalMoney); } extData.put("totalData", totalData); */ result.setExtdata(extData); return result; } @RequestMapping(value = "/exportPartyDues", method = RequestMethod.GET) public void exportPartyDues(HttpServletResponse response, @RequestParam(required = false) String partyCode, @RequestParam("year") Integer year, @RequestParam(required = false) String userName, @RequestParam(required = false) Integer zzfbType, @RequestParam(required = false) Integer isStudent) throws Exception { /**查询数据**/ List> dataList = publicityService.getPartyDuesList(1, 1000000, partyCode, year, userName, zzfbType, isStudent).getList(); ExcelHelper excelHelper = new ExcelHelper(); ExcelHelper.ExcelData data = excelHelper.new ExcelData(); //列名 data.setName("党员党费信息"); List titles = new ArrayList(); titles.add("姓名"); titles.add("所在党组织"); titles.add("年度"); titles.add("应交党费(元/月)"); titles.add("是否学生身份"); titles.add("1月"); titles.add("2月"); titles.add("3月"); titles.add("4月"); titles.add("5月"); titles.add("6月"); titles.add("7月"); titles.add("8月"); titles.add("9月"); titles.add("10月"); titles.add("11月"); titles.add("12月"); data.setTitles(titles); //数据 List> rows = new ArrayList(); for (HashMap item : dataList) { List row = new ArrayList(); row.add(item.get("USERNAME")); row.add(item.get("DZZMC")); row.add(item.get("YEAR")); row.add(item.get("MONEY")); row.add(item.get("ISSTUDENTNAME")); row.add(item.get("Jan")); row.add(item.get("Feb")); row.add(item.get("Mar")); row.add(item.get("Apr")); row.add(item.get("May")); row.add(item.get("Jun")); row.add(item.get("Jul")); row.add(item.get("Aug")); row.add(item.get("Sept")); row.add(item.get("Oct")); row.add(item.get("Nov")); row.add(item.get("Dec")); rows.add(row); } List totalRow = new ArrayList(); totalRow.add("合计:"); totalRow.add(""); totalRow.add(""); /*totalRow.add(publicityService.getPartyDuesTotalMoney(partyCode, year, userName, zzfbType)); List> totalList = publicityService.getPartyDuesTotal(partyCode, year, userName, zzfbType); for (HashMap item : totalList) { totalRow.add(item.get("TOTALMONEY").toString()); }*/ /*rows.add(totalRow);*/ data.setRows(rows); excelHelper.exportExcel(response, "党员党费信息.xlsx", data); } @ResponseBody @RequestMapping("/getPartyDuesDetailList") public RequsetData>> getPartyDuesDetailList(@RequestParam("year") Integer year, @RequestParam(required = false) String partyCode, @RequestParam(required = false) Integer month, @RequestParam(required = false) String partyDuesId) { RequsetData>> result = new RequsetData<>(); result.setItem(publicityService.getPartyDuesDetailList(year, partyCode, month, partyDuesId)); return result; } @ResponseBody @RequestMapping("/getPartyDuesUserList") public RequsetData>> getPartyDuesUserList(@RequestParam("partyCode") String partyCode, @RequestParam("year") Integer year) { RequsetData>> result = new RequsetData<>(); result.setItem(publicityService.getPartyDuesUserList(partyCode, year)); return result; } /** * 保存缴费基数 * @param reqMap * @return */ @ResponseBody @RequestMapping("/savePartyDuesUser") public RequsetData savePartyDuesUser(@RequestBody Map reqMap) { RequsetData res = new RequsetData(); int count = 0; String message = ""; ObjectMapper mapper = new ObjectMapper(); try { UsPartydues dataModel = mapper.readValue(mapper.writeValueAsString(reqMap.get("dataModel")).toString(), UsPartydues.class); /*List monthList = JsonMapper.jsonToObject(reqMap.get("monthList").toString(), new TypeReference>() { });*/ count = publicityService.savePartyDuesUser(dataModel, userService.getLoginUser().getUserid(), userService.getUserInfobyId(userService.getLoginUser().getUserid()).getName()); } catch (Exception e) { e.printStackTrace(); message = e.getMessage(); } if (count > 0) { res.setSuccess(true); res.setMsg("操作成功!"); } else { res.setSuccess(false); res.setMsg("操作失败!" + message); } return res; } /** * 保存缴费基数(批量设置) * @param reqMap * @return */ @ResponseBody @RequestMapping("/savePartyDues") public RequsetData savePartyDues(@RequestBody Map reqMap) { RequsetData res = new RequsetData(); int count = 0; String message = ""; ObjectMapper mapper = new ObjectMapper(); try { List userList = JsonMapper.jsonToObject(reqMap.get("userList").toString(), new TypeReference>() { }); count = publicityService.savePartyDues(userList, userService.getLoginUser().getUserid(), userService.getUserInfobyId(userService.getLoginUser().getUserid()).getName()); } catch (Exception e) { e.printStackTrace(); message = e.getMessage(); } if (count > 0) { res.setSuccess(true); res.setMsg("操作成功!"); } else { res.setSuccess(false); res.setMsg("操作失败!" + message); } return res; } /** * 获取并初始化党员缴费基数(学生党员默认为0.2,一般不会去设置,需系统自动初始化,逻辑为:用户登录时进行检测,若未配置,则由系统初始化) * @param usercode * @param year * @return */ @ResponseBody @RequestMapping("/getPartyDuesUserInfoById") public RequsetData getPartyDuesUserInfoById(@RequestParam("usercode") String usercode, @RequestParam("year") Integer year, @RequestParam(required = false) String partycode, @RequestParam("username") String username) { //返回信息 RequsetData res = new RequsetData<>(); HashMap extData = new HashMap(); UsPartydues model = publicityService.defaultPartyduesByUserId(usercode, year, userService.getLoginUser().getUserid()); List> userMonthList = publicityService.getPartyDuesUserMonthList(year, usercode); extData.put("userMonthList", userMonthList); extData.put("usdzzdm", partyUserService.getUserDzzdm(model.getUsercode())); res.setExtdata(extData); res.setItem(model); return res; } @ResponseBody @RequestMapping("/updatePartyduesPayState") public RequsetData updatePartyduesPayState(@RequestBody Map reqMap) { RequsetData res = new RequsetData<>(); int count = 0; String message = ""; try { String detailId = reqMap.get("detailId") != null ? reqMap.get("detailId").toString() : null; String outTradeNo = reqMap.get("outTradeNo") != null ? reqMap.get("outTradeNo").toString() : null; count = publicityService.updatePartyduesPayState(detailId, outTradeNo, userService.getLoginUser().getUserid()); } catch (Exception e) { e.printStackTrace(); message = "Exception was: " + e.toString() + ",message was: " + e.getMessage(); } if (count > 0) { res.setSuccess(true); res.setMsg("操作成功!"); } else { res.setSuccess(false); res.setMsg(message); } return res; } @ResponseBody @RequestMapping("/getPartyDuesUserMonthList") public RequsetData>> getPartyDuesUserMonthList(@RequestParam("year") Integer year, @RequestParam("userCode") String userCode) { RequsetData>> result = new RequsetData<>(); result.setItem(publicityService.getPartyDuesUserMonthList(year, userCode)); return result; } @ResponseBody @GetMapping("/getPartyDuesUserListOfAddfee") public RequsetData>> getPartyDuesUserListOfAddfee(@RequestParam("pageindex") int pageIndex, @RequestParam("pagesize") int pageSize, @RequestParam("year") Integer year, @RequestParam("month") Integer month, @RequestParam("partyCode") String partyCode, @RequestParam(required = false) String userName) { /*List userIdList = new ArrayList<>(); if (!stringUtils.IsNullOrEmpty(userIds)) { userIdList = Arrays.asList(userIds.split(",")); } //需排除的人员id List removeUserList = new ArrayList<>(); if (!stringUtils.IsNullOrEmpty(removeUserId)) { removeUserList = Arrays.asList(removeUserId.split(",")); }*/ RequsetData>> result = new RequsetData<>(); result.setItem(publicityService.getPartyDuesUserListOfAddfee(pageIndex, pageSize, year, month, partyCode, userName)); return result; } @ResponseBody @RequestMapping("/savePartyDuesMulti") public RequsetData savePartyDuesMulti(@RequestBody Map reqMap) { RequsetData res = new RequsetData(); int count = 0; String message = ""; ObjectMapper mapper = new ObjectMapper(); try { List userList = JsonMapper.jsonToObject(reqMap.get("userList").toString(), new TypeReference>() { }); count = publicityService.savePartyDuesMulti(userList, userService.getLoginUser().getUserid(), userService.getUserInfobyId(userService.getLoginUser().getUserid()).getName()); } catch (Exception e) { e.printStackTrace(); message = e.getMessage(); } if (count > 0) { res.setSuccess(true); res.setMsg("操作成功!"); } else { res.setSuccess(false); res.setMsg("操作失败!" + message); } return res; } @ResponseBody @GetMapping("/getDuesPayTotal") public RequsetData>> getDuesPayTotal(@RequestParam("pageindex") int pageIndex, @RequestParam("pagesize") int pageSize, @RequestParam("dzzdm") String dzzdm, @RequestParam(required = false) String ssdzzdm, @RequestParam(required = false) Integer year, @RequestParam("month") Integer month) { RequsetData>> result = new RequsetData<>(); result.setItem(publicityService.getDuesPayTotal(pageIndex, pageSize, dzzdm, ssdzzdm, year, month)); return result; } @ResponseBody @GetMapping("/getSettingDuesUserList") public RequsetData>> getSettingDuesUserList(@RequestParam("pageindex") int pageIndex, @RequestParam("pagesize") int pageSize, @RequestParam(required = false) String dzzdm, @RequestParam(required = false) Integer year , @RequestParam(required = false) String rybm, @RequestParam(required = false) String xm, @RequestParam(required = false) String szdzb, @RequestParam(required = false) Integer isStudent) { RequsetData>> result = new RequsetData<>(); result.setItem(publicityService.getSettingDuesUserList(pageIndex, pageSize, year, dzzdm, rybm, xm, szdzb, isStudent)); return result; } @RequestMapping(value = "/exportSettingDuesUserList", method = RequestMethod.GET) public void exportSettingDuesUserList(HttpServletResponse response, @RequestParam(required = false) String dzzdm, @RequestParam(required = false) Integer year , @RequestParam(required = false) String rybm, @RequestParam(required = false) String xm, @RequestParam(required = false) String szdzb, @RequestParam(required = false) Integer isStudent) throws Exception { /**查询数据**/ List> dataList = publicityService.getSettingDuesUserList(1, 10000, year, dzzdm, rybm, xm, szdzb, isStudent).getList(); ExcelHelper excelHelper = new ExcelHelper(); ExcelHelper.ExcelData data = excelHelper.new ExcelData(); //列名 data.setName("交费基准模板"); List titles = new ArrayList(); titles.add("党员姓名"); titles.add("学号/工号"); titles.add("党员编码"); titles.add("交纳金额(元/月)"); data.setTitles(titles); //数据 List> rows = new ArrayList(); for (HashMap item : dataList) { List row = new ArrayList(); row.add(item.get("XM")); row.add(item.get("USERNO")); row.add(item.get("RYBM")); row.add(item.get("MONEY")); rows.add(row); } data.setRows(rows); excelHelper.exportExcel(response, year.toString() + "年交费基准模板导出.xlsx", data); } @ResponseBody @RequestMapping("/importSettingDues") public RequsetData> importSettingDues(@RequestBody Map reqMap) { RequsetData> res = new RequsetData<>(); List errorInfo = new ArrayList<>(); String message = ""; try { List userList = JsonMapper.jsonToObject(reqMap.get("userList").toString(), new TypeReference>() { }); errorInfo = publicityService.importSettingDues(userList, userService.getLoginUser().getUserid(), userService.getUserInfobyId(userService.getLoginUser().getUserid()).getName()); } catch (Exception e) { e.printStackTrace(); message = e.toString(); } if (errorInfo.size() <= 0 && stringUtils.IsNullOrEmpty(message)) { res.setSuccess(true); res.setMsg("操作成功!"); } else { res.setSuccess(false); res.setMsg("操作失败!" + message); res.setItem(errorInfo); } return res; } //endregion //region 党组织经费管理 @ResponseBody @GetMapping("/getPartyOutlayList") public RequsetData>> getPartyOutlayList(@RequestParam("pageindex") int pageIndex, @RequestParam("pagesize") int pageSize, @RequestParam(required = false) String partyCode, @RequestParam(required = false) String beginTime, @RequestParam(required = false) String endTime, @RequestParam(required = false) Integer zzfbType, @RequestParam(required = false) Integer paytype) { beginTime = dateUtils.strFormat_short(beginTime); endTime = dateUtils.strFormat_short(endTime); RequsetData>> result = new RequsetData<>(); result.setItem(publicityService.getPartyOutlayList(pageIndex, pageSize, partyCode, beginTime, endTime, zzfbType, paytype, null)); return result; } @ResponseBody @RequestMapping("/getPartyOutlayById") public RequsetData getPartyOutlayById(@RequestParam("id") String id, @RequestParam(required = false) String dzzdm) { RequsetData res = new RequsetData<>(); UsPartyoutlay model = publicityService.getPartyOutlayById(id); if (model == null || (model != null && stringUtils.IsNullOrEmpty(model.getPartyoutlayid()))) { UUID uuid = UUID.randomUUID(); model = new UsPartyoutlay(); model.setPartyoutlayid(uuid.toString()); model.setPartycode(dzzdm); } if (!stringUtils.IsNullOrEmpty(model.getPartycode())) { ZzZzqkxx zzZzqkxx = partyService.getPartyByDm(model.getPartycode()); if (zzZzqkxx != null && !stringUtils.IsNullOrEmpty(zzZzqkxx.getDzzdm())) { model.setPartyname(zzZzqkxx.getDzzmc()); } } res.setItem(model); return res; } @ResponseBody @RequestMapping("/savePartyOutlay") public RequsetData savePartyOutlay(@RequestBody UsPartyoutlay model) { RequsetData res = new RequsetData(); int count = publicityService.savePartyOutlay(model, userService.getLoginUser().getUserid(), userService.getUserInfobyId(userService.getLoginUser().getUserid()).getName()); if (count > 0) { res.setSuccess(true); res.setMsg("保存成功!"); } else { res.setSuccess(false); res.setMsg("保存失败!"); } return res; } @ResponseBody @GetMapping("/deletePartyOutlayById") public RequsetData deletePartyOutlayById(@RequestParam("id") String id) { RequsetData result = new RequsetData<>(); int row = publicityService.deletePartyOutlayById(id); result.setItem(row); if (row == 0) { result.setSuccess(false); result.setMsg("删除失败!"); } else { result.setMsg("删除成功!"); } return result; } @RequestMapping(value = "/exportPartyOutlay", method = RequestMethod.GET) public void exportPartyOutlay(HttpServletResponse response, @RequestParam(required = false) String partyCode, @RequestParam(required = false) String userName, @RequestParam(required = false) Integer leaderType, @RequestParam(required = false) String beginTime, @RequestParam(required = false) String endTime, @RequestParam(required = false) Integer zzfbType, @RequestParam(required = false) Integer paytype) throws Exception { beginTime = dateUtils.strFormat_short(beginTime); endTime = dateUtils.strFormat_short(endTime); /**查询数据**/ List> dataList = publicityService.getPartyOutlayList(1, 1000000, partyCode, beginTime, endTime, zzfbType, paytype, null).getList(); ExcelHelper excelHelper = new ExcelHelper(); ExcelHelper.ExcelData data = excelHelper.new ExcelData(); //列名 data.setName("党组织经费信息"); List titles = new ArrayList(); titles.add("组织名称"); titles.add("时间"); /* titles.add("事由");*/ titles.add("支出类型"); titles.add("金额(元)"); data.setTitles(titles); //数据 List> rows = new ArrayList(); for (HashMap item : dataList) { List row = new ArrayList(); row.add(item.get("PARTYNAME")); row.add(item.get("USETIME")); /*row.add(item.get("REASON"));*/ row.add(item.get("PAYTYPENAME")); row.add(item.get("MONEY")); rows.add(row); } data.setRows(rows); excelHelper.exportExcel(response, "党组织经费信息.xlsx", data); } //endregion @ResponseBody @GetMapping("/getpublicityPositionSummary") public RequsetData>> getpublicityPositionSummary(@RequestParam("pageindex") int pageIndex, @RequestParam("pagesize") int pageSize, @RequestParam(required = false) String dzzdm, @RequestParam(required = false) Integer year) { RequsetData>> result = new RequsetData<>(); result.setItem(publicityService.getpublicityPositionSummary(pageIndex, pageSize, dzzdm, year)); return result; } @RequestMapping(value = "/exportpublicityPositionSummary", method = RequestMethod.GET) public void exportpublicityPositionSummary(HttpServletResponse response, @RequestParam(required = false) String dzzmc, @RequestParam(required = false) String dzzdm, @RequestParam(required = false) Integer year) throws Exception { /**查询数据**/ List> dataList = publicityService.getpublicityPositionSummary(1, 100000, dzzdm, year).getList(); ExcelHelper excelHelper = new ExcelHelper(); ExcelHelper.ExcelData data = excelHelper.new ExcelData(); //列名 data.setName("宣传阵地统计信息"); List titles = new ArrayList(); titles.add("所属党组织"); titles.add("宣传阵地数"); titles.add("横幅"); titles.add("展板"); titles.add("电子屏"); titles.add("宣传栏"); titles.add("今年更新次数"); titles.add("待更新阵地"); titles.add("更新待审核阵地"); data.setTitles(titles); //数据 List> rows = new ArrayList(); for (HashMap item : dataList) { List row = new ArrayList(); row.add(item.get("DZZMC")); row.add(item.get("TOTAL")); row.add(item.get("NUM_POSITIONTYPE1")); row.add(item.get("NUM_POSITIONTYPE2")); row.add(item.get("NUM_POSITIONTYPE3")); row.add(item.get("NUM_POSITIONTYPE4")); row.add(item.get("NUM_UPDATE")); row.add(item.get("NUM")); row.add(item.get("NUM_NOT_APPROVE")); rows.add(row); } data.setRows(rows); excelHelper.exportExcel(response, "宣传阵地统计信息.xlsx", data); } @ResponseBody @RequestMapping("/getFundsIncome") public RequsetData getFundsIncome(@RequestParam("dzzdm") String dzzdm, @RequestParam(required = false) Integer year) { RequsetData res = new RequsetData<>(); DjFundsincome model = publicityService.getFundsIncome(dzzdm, year); if (model == null) { UUID uuid = UUID.randomUUID(); model = new DjFundsincome(); model.setFundsbudgetid(uuid.toString()); model.setPartycode(dzzdm); model.setYear(year); } res.setItem(model); return res; } @ResponseBody @RequestMapping("/saveFundsIncome") public RequsetData saveFundsIncome(@RequestBody DjFundsincome model) { RequsetData res = new RequsetData(); int count = publicityService.saveFundsIncome(model, userService.getLoginUser().getUserid(), userService.getUserInfobyId(userService.getLoginUser().getUserid()).getName()); if (count > 0) { res.setSuccess(true); res.setMsg("保存成功!"); } else { res.setSuccess(false); res.setMsg("保存失败!"); } return res; } @ResponseBody @GetMapping("/getFundsIncomeSummary") public RequsetData>> getFundsIncomeSummary(@RequestParam("pageindex") int pageIndex, @RequestParam("pagesize") int pageSize, @RequestParam(required = false) String dzzdm, @RequestParam(required = false) Integer year) { RequsetData>> result = new RequsetData<>(); result.setItem(publicityService.getFundsIncomeSummary(pageIndex, pageSize, dzzdm, year)); return result; } @RequestMapping(value = "/exportFundsIncomeSummary", method = RequestMethod.GET) public void exportFundsIncomeSummary(HttpServletResponse response, @RequestParam(required = false) String dzzdm, @RequestParam(required = false) Integer year) throws Exception { /**查询数据**/ List> dataList = publicityService.getFundsIncomeSummary(1, 100000, dzzdm, year).getList(); ExcelHelper excelHelper = new ExcelHelper(); ExcelHelper.ExcelData data = excelHelper.new ExcelData(); //列名 data.setName("党费收缴使用情况"); List> colspanTitles = new ArrayList(); Map titles = new HashMap<>(5); titles.put("单位", new CellRangeAddress(0, 1, 0, 0)); titles.put("预算收入", new CellRangeAddress(0, 1, 1, 1)); titles.put("预算支出", new CellRangeAddress(0, 1, 2, 2)); titles.put("实际收入", new CellRangeAddress(0, 0, 3, 6)); titles.put("实际支出", new CellRangeAddress(0, 0, 7, 16)); List titles2 = new ArrayList(); titles2.add(""); titles2.add(""); titles2.add(""); titles2.add("总收入"); titles2.add("上级党组织拨付"); titles2.add("党员缴纳党费数"); titles2.add("党费利息"); titles2.add("总支出"); titles2.add("培训党员"); titles2.add("召开党内会议"); titles2.add("开展党内活动"); titles2.add("党员教育阵地建设"); titles2.add("表彰先进"); titles2.add("补助生活困难党员"); titles2.add("补助遭受严重自然灾害的党员和修缮因灾受损的基层党员教育设施支出"); titles2.add("党员日常教育、管理费用"); titles2.add("财务管理费用"); colspanTitles.add(titles); data.setColspanTitles(colspanTitles); data.setTitles(titles2); //数据 List> rows = new ArrayList(); for (HashMap item : dataList) { List row = new ArrayList(); row.add(item.get("DZZMC")); row.add(item.get("预算收入")); row.add(item.get("预算支出")); row.add(item.get("总收入")); row.add(item.get("上级党组织拨付")); row.add(item.get("党员缴纳党费数")); row.add(item.get("党费利息")); row.add(item.get("总支出")); row.add(item.get("培训党员")); row.add(item.get("召开党内会议")); row.add(item.get("开展党内活动")); row.add(item.get("党员教育阵地建设")); row.add(item.get("表彰先进")); row.add(item.get("补助生活困难党员")); row.add(item.get("基层党员教育设施支出")); row.add(item.get("党员日常教育管理费用")); row.add(item.get("财务管理费用")); rows.add(row); } data.setRows(rows); excelHelper.exportExcel(response, "党费收缴使用情况.xlsx", data); } @ResponseBody @GetMapping("/getPartyDuesPayList") public RequsetData> getPartyDuesPayList(@RequestParam("pageindex") int pageIndex, @RequestParam("pagesize") int pageSize, @RequestParam(required = false) String partyCode, @RequestParam(required = false) String userName, @RequestParam(required = false) Integer payState, @RequestParam(required = false) @DateTimeFormat(pattern = "yyyy-MM-dd") Date startDate, @RequestParam(required = false) @DateTimeFormat(pattern = "yyyy-MM-dd") Date endDate, @RequestParam(required = false) Integer year, @RequestParam(required = false) Integer month) { RequsetData> result = new RequsetData<>(); result.setItem(publicityService.getPartyDuesPayList(pageIndex, pageSize, partyCode, userName, payState, startDate, endDate, year, month)); return result; } }