PublicityController.java 70 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616
  1. package com.ghsc.partybuild.controller;
  2. import com.fasterxml.jackson.core.JsonProcessingException;
  3. import com.fasterxml.jackson.core.type.TypeReference;
  4. import com.fasterxml.jackson.databind.ObjectMapper;
  5. import com.github.pagehelper.PageInfo;
  6. import com.ghsc.partybuild.controller.jsonmodel.RequsetData;
  7. import com.ghsc.partybuild.model.*;
  8. import com.ghsc.partybuild.service.*;
  9. import com.ghsc.partybuild.util.*;
  10. import com.ghsc.partybuild.vo.ImportUserDuesVo;
  11. import com.ghsc.partybuild.vo.PartyDuesPayVo;
  12. import com.ghsc.partybuild.vo.UserLeaderVo;
  13. import org.apache.poi.ss.util.CellRangeAddress;
  14. import org.springframework.beans.factory.annotation.Autowired;
  15. import org.springframework.format.annotation.DateTimeFormat;
  16. import org.springframework.web.bind.annotation.*;
  17. import javax.servlet.http.HttpServletResponse;
  18. import java.math.BigDecimal;
  19. import java.util.*;
  20. import java.util.stream.Collectors;
  21. /**
  22. * 宣传阵地、职工思想、领导5+3、党费
  23. *
  24. * @author pj
  25. */
  26. @RestController
  27. @RequestMapping(value = "/api/publicity")
  28. public class PublicityController {
  29. @Autowired
  30. private PublicityService publicityService;
  31. @Autowired
  32. private StringUtils stringUtils;
  33. @Autowired
  34. private DateUtils dateUtils;
  35. @Autowired
  36. private PartyService partyService;
  37. @Autowired
  38. private DictionaryService dictionaryService;
  39. @Autowired
  40. private MapUtils mapUtils;
  41. @Autowired
  42. private UserService userService;
  43. @Autowired
  44. private WordUtil wordUtil;
  45. @Autowired
  46. private PartyUserService partyUserService;
  47. //region 宣传阵地管理
  48. @ResponseBody
  49. @GetMapping("/getPublicityList")
  50. public RequsetData<PageInfo<HashMap<String, Object>>> getPublicityList(@RequestParam("pageindex") int pageIndex, @RequestParam("pagesize") int pageSize,
  51. @RequestParam(required = false) String partyCode,
  52. @RequestParam(required = false) String positionName, @RequestParam(required = false) List<Integer> positionType, @RequestParam(required = false) List<Integer> positionLevel, @RequestParam(required = false) String address, @RequestParam(required = false) String beginTime,
  53. @RequestParam(required = false) String endTime, @RequestParam(required = false) List<Integer> positionState, @RequestParam(required = false) String headUserName, @RequestParam(required = false) Integer zzfbType) {
  54. beginTime = dateUtils.strFormat_short(beginTime);
  55. endTime = dateUtils.strFormat_short(endTime);
  56. RequsetData<PageInfo<HashMap<String, Object>>> result = new RequsetData<>();
  57. result.setItem(publicityService.getPublicityList(pageIndex, pageSize, partyCode, positionName, positionType, positionLevel, address, beginTime, endTime, positionState, headUserName, zzfbType));
  58. return result;
  59. }
  60. @ResponseBody
  61. @RequestMapping("/getPublicityPositionById")
  62. public RequsetData<PubPublicityposition> getPublicityPositionById(@RequestParam("id") String id, @RequestParam(required = false) String dzzdm) {
  63. RequsetData<PubPublicityposition> res = new RequsetData<>();
  64. PubPublicityposition model = publicityService.getPublicityPositionById(id);
  65. if (model == null || (model != null && stringUtils.IsNullOrEmpty(model.getPublicitypositionid()))) {
  66. UUID uuid = UUID.randomUUID();
  67. model = new PubPublicityposition();
  68. model.setPublicitypositionid(uuid.toString());
  69. model.setPartycode(dzzdm);
  70. model.setPanelcycle(1);
  71. }
  72. if (!stringUtils.IsNullOrEmpty(model.getPartycode())) {
  73. ZzZzqkxx zzZzqkxx = partyService.getPartyByDm(model.getPartycode());
  74. if (zzZzqkxx != null && !stringUtils.IsNullOrEmpty(zzZzqkxx.getDzzdm())) {
  75. model.setPartyname(zzZzqkxx.getDzzmc());
  76. }
  77. }
  78. res.setItem(model);
  79. return res;
  80. }
  81. @ResponseBody
  82. @RequestMapping("/getPublicityPositionInfoById")
  83. public RequsetData<Map<String, Object>> getPublicityPositionInfoById(@RequestParam("id") String id) {
  84. RequsetData<Map<String, Object>> res = new RequsetData<>();
  85. PubPublicityposition model = publicityService.getPublicityPositionById(id);
  86. if (!stringUtils.IsNullOrEmpty(model.getPartycode())) {
  87. ZzZzqkxx zzZzqkxx = partyService.getPartyByDm(model.getPartycode());
  88. if (zzZzqkxx != null && !stringUtils.IsNullOrEmpty(zzZzqkxx.getDzzdm())) {
  89. model.setPartyname(zzZzqkxx.getDzzmc());
  90. }
  91. }
  92. List<CfDictionary> dicPositionType = dictionaryService.getDictionaryListByDicTypeKey("positionType");
  93. List<CfDictionary> dicPositionLevel = dictionaryService.getDictionaryListByDicTypeKey("psiLevel");
  94. List<CfDictionary> dicPositionState = dictionaryService.getDictionaryListByDicTypeKey("positionState");
  95. Map<String, Object> data = mapUtils.objectToMap(model);
  96. if (model.getPositiontype() != null) {
  97. data.put("positiontypename", dictionaryService.getDicByKey(model.getPositiontype(), dicPositionType).getDicvalue());
  98. }
  99. if (model.getPositionlevel() != null) {
  100. data.put("positionlevelname", dictionaryService.getDicByKey(model.getPositionlevel(), dicPositionLevel).getDicvalue());
  101. }
  102. if (model.getPositionstate() != null) {
  103. data.put("positionstatename", dictionaryService.getDicByKey(model.getPositionstate(), dicPositionState).getDicvalue());
  104. }
  105. res.setItem(data);
  106. return res;
  107. }
  108. @ResponseBody
  109. @RequestMapping("/savePublicityPosition")
  110. public RequsetData<String> savePublicityPosition(@RequestBody PubPublicityposition model) {
  111. RequsetData<String> res = new RequsetData<String>();
  112. int count = publicityService.savePublicityPosition(model, userService.getLoginUser().getUserid(), userService.getUserInfobyId(userService.getLoginUser().getUserid()).getName());
  113. if (count > 0) {
  114. res.setSuccess(true);
  115. res.setMsg("保存成功!");
  116. } else {
  117. res.setSuccess(false);
  118. res.setMsg("保存失败!");
  119. }
  120. return res;
  121. }
  122. @ResponseBody
  123. @GetMapping("/deletePublicityPositionById")
  124. public RequsetData<Integer> deletePublicityPositionById(@RequestParam("id") String id) {
  125. RequsetData<Integer> result = new RequsetData<>();
  126. int row = publicityService.deletePublicityPositionById(id);
  127. result.setItem(row);
  128. if (row == 0) {
  129. result.setSuccess(false);
  130. result.setMsg("删除失败!");
  131. } else {
  132. result.setMsg("删除成功!");
  133. }
  134. return result;
  135. }
  136. @ResponseBody
  137. @GetMapping("/deletePanel")
  138. public RequsetData<Integer> deletePanel(@RequestParam("id") String id) {
  139. RequsetData<Integer> result = new RequsetData<>();
  140. int row = publicityService.deletePanel(id);
  141. result.setItem(row);
  142. if (row == 0) {
  143. result.setSuccess(false);
  144. result.setMsg("删除失败!");
  145. } else {
  146. result.setMsg("删除成功!");
  147. }
  148. return result;
  149. }
  150. @RequestMapping(value = "/exportPublicityPosition", method = RequestMethod.GET)
  151. public void exportPublicityPosition(HttpServletResponse response,
  152. @RequestParam(required = false) String partyCode,
  153. @RequestParam(required = false) String positionName, @RequestParam(required = false) List<Integer> positionType, @RequestParam(required = false) List<Integer> positionLevel, @RequestParam(required = false) String address, @RequestParam(required = false) String beginTime,
  154. @RequestParam(required = false) String endTime, @RequestParam(required = false) List<Integer> positionState, @RequestParam(required = false) String headUserName, @RequestParam(required = false) Integer zzfbType) throws Exception {
  155. beginTime = dateUtils.strFormat_short(beginTime);
  156. endTime = dateUtils.strFormat_short(endTime);
  157. /**查询数据**/
  158. List<HashMap<String, Object>> dataList = publicityService.getPublicityList(1, 100000, partyCode, positionName, positionType, positionLevel, address, beginTime, endTime, positionState, headUserName, zzfbType).getList();
  159. ExcelHelper excelHelper = new ExcelHelper();
  160. ExcelHelper.ExcelData data = excelHelper.new ExcelData();
  161. //列名
  162. data.setName("宣传阵地信息");
  163. List<String> titles = new ArrayList();
  164. titles.add("阵地名称");
  165. titles.add("所在党组织");
  166. titles.add("阵地类别");
  167. titles.add("等级");
  168. titles.add("编号");
  169. titles.add("位置");
  170. titles.add("尺寸");
  171. titles.add("建设时间");
  172. titles.add("状态");
  173. titles.add("责任人");
  174. data.setTitles(titles);
  175. //数据
  176. List<List<Object>> rows = new ArrayList();
  177. for (HashMap<String, Object> item : dataList) {
  178. List<Object> row = new ArrayList();
  179. row.add(item.get("POSITIONNAME"));
  180. row.add(item.get("PARTYNAME"));
  181. row.add(item.get("POSITIONTYPENAME"));
  182. row.add(item.get("POSITIONLEVELNAME"));
  183. row.add(item.get("POSITIONCODE"));
  184. row.add(item.get("ADDRESS"));
  185. row.add(item.get("SIZES"));
  186. row.add(item.get("BUILDTIME"));
  187. row.add(item.get("POSITIONSTATENAME"));
  188. row.add(item.get("HEADUSERNAME"));
  189. rows.add(row);
  190. }
  191. data.setRows(rows);
  192. excelHelper.exportExcel(response, "宣传阵地信息.xlsx", data);
  193. }
  194. @ResponseBody
  195. @RequestMapping("/getPublicityPositionPanelById")
  196. public RequsetData<PubPublicitypositionPanel> getPublicityPositionPanelById(@RequestParam("id") String id, @RequestParam(required = false) String positionId) {
  197. RequsetData<PubPublicitypositionPanel> res = new RequsetData<>();
  198. PubPublicitypositionPanel model = publicityService.getPublicityPositionPanelById(id);
  199. if (model == null || (model != null && stringUtils.IsNullOrEmpty(model.getPanelid()))) {
  200. UUID uuid = UUID.randomUUID();
  201. model = new PubPublicitypositionPanel();
  202. model.setPanelid(uuid.toString());
  203. model.setPublicitypositionid(positionId);
  204. model.setPaneltime(new Date());
  205. }
  206. res.setItem(model);
  207. return res;
  208. }
  209. @ResponseBody
  210. @RequestMapping("/savePublicityPositionPanel")
  211. public RequsetData<String> savePublicityPositionPanel(@RequestBody PubPublicitypositionPanel model) {
  212. RequsetData<String> res = new RequsetData<String>();
  213. int count = publicityService.savePublicityPanel(model, userService.getLoginUser().getUserid(), userService.getUserInfobyId(userService.getLoginUser().getUserid()).getName());
  214. if (count > 0) {
  215. res.setSuccess(true);
  216. res.setMsg("保存成功!");
  217. } else {
  218. res.setSuccess(false);
  219. res.setMsg("保存失败!");
  220. }
  221. return res;
  222. }
  223. @ResponseBody
  224. @GetMapping("/getPublicityPanelRecordList")
  225. public RequsetData<PageInfo<HashMap<String, Object>>> getPublicityPanelRecordList(@RequestParam("pageindex") int pageIndex, @RequestParam("pagesize") int pageSize,
  226. @RequestParam(required = false) String publicityPositionId,
  227. @RequestParam(required = false) String partyCode) {
  228. RequsetData<PageInfo<HashMap<String, Object>>> result = new RequsetData<>();
  229. result.setItem(publicityService.getPublicityPanelRecordList(pageIndex, pageSize, publicityPositionId, partyCode));
  230. return result;
  231. }
  232. @ResponseBody
  233. @RequestMapping("/approvePanel")
  234. public RequsetData<String> approvePanel(@RequestBody Map<String, Object> reqMap) {
  235. RequsetData<String> res = new RequsetData<String>();
  236. int count = 0;
  237. String message = "";
  238. ObjectMapper mapper = new ObjectMapper();
  239. try {
  240. String panelId = reqMap.get("panelId").toString();
  241. Boolean isPass = Boolean.parseBoolean(reqMap.get("isPass").toString());
  242. count = publicityService.approvePanel(panelId, isPass, userService.getLoginUser().getUserid(), userService.getUserInfobyId(userService.getLoginUser().getUserid()).getName());
  243. } catch (Exception e) {
  244. e.printStackTrace();
  245. message = e.getMessage();
  246. }
  247. if (count > 0) {
  248. res.setSuccess(true);
  249. res.setMsg("操作成功!");
  250. } else {
  251. res.setSuccess(false);
  252. res.setMsg("操作失败!" + message);
  253. }
  254. return res;
  255. }
  256. @ResponseBody
  257. @GetMapping("/getPublicityPanelList")
  258. public RequsetData<PageInfo<HashMap<String, Object>>> getPublicityPanelList(@RequestParam("pageindex") int pageIndex, @RequestParam("pagesize") int pageSize,
  259. @RequestParam(required = false) String partyCode,
  260. @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,
  261. @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
  262. , @RequestParam(required = false) String updateTime_bt, @RequestParam(required = false) String updateTime_et) {
  263. beginTime = dateUtils.strFormat_short(beginTime);
  264. endTime = dateUtils.strFormat_short(endTime);
  265. updateTime_bt = dateUtils.strFormat_short(updateTime_bt);
  266. updateTime_et = dateUtils.strFormat_short(updateTime_et);
  267. RequsetData<PageInfo<HashMap<String, Object>>> result = new RequsetData<>();
  268. result.setItem(publicityService.getPublicityPanelList(pageIndex, pageSize, partyCode, positionName, positionType, positionLevel, address, beginTime, endTime, positionState, headUserName, panelState, isExpired, zzfbType, updateTime_bt, updateTime_et));
  269. return result;
  270. }
  271. @ResponseBody
  272. @GetMapping("/getPublicityPanelTotal")
  273. public HashMap<String, Object> getPublicityPanelTotal(@RequestParam("pageindex") int pageIndex, @RequestParam("pagesize") int pageSize,
  274. @RequestParam(required = false) String partyCode,
  275. @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,
  276. @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) {
  277. beginTime = dateUtils.strFormat_short(beginTime);
  278. endTime = dateUtils.strFormat_short(endTime);
  279. updateTime_bt = dateUtils.strFormat_short(updateTime_bt);
  280. updateTime_et = dateUtils.strFormat_short(updateTime_et);
  281. HashMap<String, Object> result = new HashMap<>();
  282. List<HashMap<String, Object>> list = publicityService.getPublicityPanelList(1, 1000000, partyCode, positionName, positionType, positionLevel, address, beginTime, endTime, positionState, headUserName, null, null, zzfbType, updateTime_bt, updateTime_et).getList();
  283. result.put("expired", list.stream().filter(it -> it.get("ISEXPIRED") != null && "1".equals(it.get("ISEXPIRED").toString())).count());
  284. result.put("notApprove", list.stream().filter(it -> it.get("PANELSTATE") != null && "0".equals(it.get("PANELSTATE").toString())).count());
  285. return result;
  286. }
  287. //endregion
  288. //region 职工思想动态分析
  289. @ResponseBody
  290. @GetMapping("/getUserThoughtList")
  291. public RequsetData<PageInfo<HashMap<String, Object>>> getUserThoughtList(@RequestParam("pageindex") int pageIndex, @RequestParam("pagesize") int pageSize,
  292. @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,
  293. @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) {
  294. beginTime = dateUtils.strFormat_short(beginTime);
  295. endTime = dateUtils.strFormat_short(endTime);
  296. RequsetData<PageInfo<HashMap<String, Object>>> result = new RequsetData<>();
  297. result.setItem(publicityService.getUserThoughtList(pageIndex, pageSize, partyCode, thoughtType, questionType, userName, beginTime, endTime, handleType, destroyType, handleState, zzfbType));
  298. return result;
  299. }
  300. @ResponseBody
  301. @GetMapping("/getThoughtTotal")
  302. public RequsetData<PageInfo<HashMap<String, Object>>> getThoughtTotal(@RequestParam("pageindex") int pageIndex, @RequestParam("pagesize") int pageSize,
  303. @RequestParam(required = false) String partyCode, @RequestParam(required = false) Integer year, @RequestParam(required = false) Integer month) {
  304. RequsetData<PageInfo<HashMap<String, Object>>> result = new RequsetData<>();
  305. result.setItem(publicityService.getThoughtTotal(pageIndex, pageSize, partyCode, year, month));
  306. return result;
  307. }
  308. @ResponseBody
  309. @GetMapping("/getThoughtSummary")
  310. public RequsetData<PageInfo<HashMap<String, Object>>> getThoughtSummary(@RequestParam("pageindex") int pageIndex, @RequestParam("pagesize") int pageSize,
  311. @RequestParam(required = false) String dzzdm, @RequestParam(required = false) Integer year) {
  312. RequsetData<PageInfo<HashMap<String, Object>>> result = new RequsetData<>();
  313. result.setItem(publicityService.getThoughtSummary(pageIndex, pageSize, dzzdm, year));
  314. return result;
  315. }
  316. @RequestMapping(value = "/exportThoughtSummaryt", method = RequestMethod.GET)
  317. public void exportThoughtSummaryt(HttpServletResponse response,
  318. @RequestParam(required = false) String dzzmc,
  319. @RequestParam(required = false) String dzzdm,
  320. @RequestParam(required = false) Integer year) throws Exception {
  321. /**查询数据**/
  322. List<HashMap<String, Object>> dataList = publicityService.getThoughtSummary(1, 100000, dzzdm, year).getList();
  323. ExcelHelper excelHelper = new ExcelHelper();
  324. ExcelHelper.ExcelData data = excelHelper.new ExcelData();
  325. //列名
  326. data.setName("职工思想动态统计信息");
  327. List<String> titles = new ArrayList();
  328. titles.add("所属党组织");
  329. titles.add("年度");
  330. titles.add("问题总数");
  331. titles.add("政策制度");
  332. titles.add("职工收入");
  333. titles.add("生产生活");
  334. titles.add("福利待遇");
  335. titles.add("工作相关");
  336. titles.add("其它诉求");
  337. titles.add("销号数量");
  338. data.setTitles(titles);
  339. //数据
  340. List<List<Object>> rows = new ArrayList();
  341. for (HashMap<String, Object> item : dataList) {
  342. List<Object> row = new ArrayList();
  343. row.add(item.get("DZZMC"));
  344. row.add(item.get("YEAR"));
  345. row.add(item.get("问题总数"));
  346. row.add(item.get("政策制度"));
  347. row.add(item.get("职工收入"));
  348. row.add(item.get("生产生活"));
  349. row.add(item.get("福利待遇"));
  350. row.add(item.get("工作相关"));
  351. row.add(item.get("其它诉求"));
  352. row.add(item.get("销号数量"));
  353. rows.add(row);
  354. }
  355. data.setRows(rows);
  356. excelHelper.exportExcel(response, "职工思想动态统计信息.xlsx", data);
  357. }
  358. @ResponseBody
  359. @RequestMapping("/getUserthoughtById")
  360. public RequsetData<UsUserthought> getUserthoughtById(@RequestParam("id") String id, @RequestParam(required = false) String dzzdm) {
  361. RequsetData<UsUserthought> res = new RequsetData<>();
  362. UsUserthought model = publicityService.getUserthoughtById(id);
  363. if (model == null || (model != null && stringUtils.IsNullOrEmpty(model.getUserthoughtid()))) {
  364. UUID uuid = UUID.randomUUID();
  365. model = new UsUserthought();
  366. model.setUserthoughtid(uuid.toString());
  367. model.setPartycode(dzzdm);
  368. }
  369. if (!stringUtils.IsNullOrEmpty(model.getPartycode())) {
  370. ZzZzqkxx zzZzqkxx = partyService.getPartyByDm(model.getPartycode());
  371. if (zzZzqkxx != null && !stringUtils.IsNullOrEmpty(zzZzqkxx.getDzzdm())) {
  372. model.setPartyname(zzZzqkxx.getDzzmc());
  373. }
  374. }
  375. res.setItem(model);
  376. return res;
  377. }
  378. @ResponseBody
  379. @RequestMapping("/saveUserthought")
  380. public RequsetData<String> saveUserthought(@RequestBody UsUserthought model) {
  381. RequsetData<String> res = new RequsetData<String>();
  382. int count = publicityService.saveUserthought(model, userService.getLoginUser().getUserid(), userService.getUserInfobyId(userService.getLoginUser().getUserid()).getName());
  383. if (count > 0) {
  384. res.setSuccess(true);
  385. res.setMsg("保存成功!");
  386. } else {
  387. res.setSuccess(false);
  388. res.setMsg("保存失败!");
  389. }
  390. return res;
  391. }
  392. @ResponseBody
  393. @GetMapping("/deleteUserthoughtById")
  394. public RequsetData<Integer> deleteUserthoughtById(@RequestParam("id") String id) {
  395. RequsetData<Integer> result = new RequsetData<>();
  396. int row = publicityService.deleteUserthoughtById(id);
  397. result.setItem(row);
  398. if (row == 0) {
  399. result.setSuccess(false);
  400. result.setMsg("删除失败!");
  401. } else {
  402. result.setMsg("删除成功!");
  403. }
  404. return result;
  405. }
  406. @ResponseBody
  407. @GetMapping("/getUserThoughtTotalList")
  408. public RequsetData<PageInfo<HashMap<String, Object>>> getUserThoughtTotalList(@RequestParam("pageindex") int pageIndex, @RequestParam("pagesize") int pageSize,
  409. @RequestParam(required = false) String partyCode, @RequestParam(required = false) Integer month, @RequestParam(required = false) String writeUser, @RequestParam(required = false) Integer zzfbType) {
  410. RequsetData<PageInfo<HashMap<String, Object>>> result = new RequsetData<>();
  411. result.setItem(publicityService.getUserThoughtTotalList(pageIndex, pageSize, partyCode, month, writeUser, zzfbType));
  412. return result;
  413. }
  414. @ResponseBody
  415. @RequestMapping("/getUserthoughtTotalById")
  416. public RequsetData<UsUserthoughttotal> getUserthoughtTotalById(@RequestParam("id") String id, @RequestParam(required = false) String dzzdm) {
  417. RequsetData<UsUserthoughttotal> res = new RequsetData<>();
  418. UsUserthoughttotal model = publicityService.getUserthoughtTotalById(id);
  419. if (model == null || (model != null && stringUtils.IsNullOrEmpty(model.getUserthoughttotalid()))) {
  420. UUID uuid = UUID.randomUUID();
  421. model = new UsUserthoughttotal();
  422. model.setUserthoughttotalid(uuid.toString());
  423. model.setWritetime(new Date());
  424. model.setWriteuser(userService.getUserInfobyId(userService.getLoginUser().getUserid()).getName());
  425. if (!stringUtils.IsNullOrEmpty(dzzdm)) {
  426. ZzZzqkxx zzZzqkxx = partyService.getPartyByDm(dzzdm);
  427. if (zzZzqkxx != null && !stringUtils.IsNullOrEmpty(zzZzqkxx.getDzzdm())) {
  428. model.setPartycode(dzzdm);
  429. model.setPartyname(zzZzqkxx.getDzzmc());
  430. }
  431. }
  432. }
  433. res.setItem(model);
  434. return res;
  435. }
  436. @ResponseBody
  437. @RequestMapping("/savetUserthoughtTotal")
  438. public RequsetData<String> savetUserthoughtTotal(@RequestBody UsUserthoughttotal model) {
  439. RequsetData<String> res = new RequsetData<String>();
  440. int count = publicityService.savetUserthoughtTotal(model, userService.getLoginUser().getUserid(), userService.getUserInfobyId(userService.getLoginUser().getUserid()).getName());
  441. if (count > 0) {
  442. res.setSuccess(true);
  443. res.setMsg("保存成功!");
  444. } else {
  445. res.setSuccess(false);
  446. res.setMsg("保存失败!");
  447. }
  448. return res;
  449. }
  450. @ResponseBody
  451. @GetMapping("/deletetUserthoughtTotalById")
  452. public RequsetData<Integer> deletetUserthoughtTotalById(@RequestParam("id") String id) {
  453. RequsetData<Integer> result = new RequsetData<>();
  454. int row = publicityService.deletetUserthoughtTotalById(id);
  455. result.setItem(row);
  456. if (row == 0) {
  457. result.setSuccess(false);
  458. result.setMsg("删除失败!");
  459. } else {
  460. result.setMsg("删除成功!");
  461. }
  462. return result;
  463. }
  464. @RequestMapping(value = "/exportUserthought", method = RequestMethod.GET)
  465. public void exportUserthought(HttpServletResponse response,
  466. @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,
  467. @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 {
  468. beginTime = dateUtils.strFormat_short(beginTime);
  469. endTime = dateUtils.strFormat_short(endTime);
  470. /**查询数据**/
  471. List<HashMap<String, Object>> dataList = publicityService.getUserThoughtList(1, 1000000, partyCode, thoughtType, questionType, userName, beginTime, endTime, handleType, destroyType, handleState, zzfbType).getList();
  472. ExcelHelper excelHelper = new ExcelHelper();
  473. ExcelHelper.ExcelData data = excelHelper.new ExcelData();
  474. //列名
  475. data.setName("职工思想动态分析信息");
  476. List<String> titles = new ArrayList();
  477. titles.add("职工姓名");
  478. titles.add("所在党组织");
  479. titles.add("类别");
  480. titles.add("问题类型");
  481. titles.add("反馈问题");
  482. titles.add("发现时间");
  483. titles.add("受理人");
  484. titles.add("处理情况");
  485. titles.add("销号情况");
  486. titles.add("销号日期");
  487. titles.add("状态");
  488. data.setTitles(titles);
  489. //数据
  490. List<List<Object>> rows = new ArrayList();
  491. for (HashMap<String, Object> item : dataList) {
  492. List<Object> row = new ArrayList();
  493. row.add(item.get("USERNAME"));
  494. row.add(item.get("PARTYNAME"));
  495. row.add(item.get("THOUGHTTYPENAME"));
  496. row.add(item.get("QUESTIONTYPENAME"));
  497. row.add(item.get("QUESTION"));
  498. row.add(item.get("FINDTIME"));
  499. row.add(item.get("ACCEPTUSER"));
  500. row.add(item.get("HANDLETYPENAME"));
  501. row.add(item.get("DESTROYTYPENAME"));
  502. row.add(item.get("DESTROYTIME"));
  503. row.add(item.get("HANDLESTATENAME"));
  504. rows.add(row);
  505. }
  506. data.setRows(rows);
  507. excelHelper.exportExcel(response, "职工思想动态分析信息.xlsx", data);
  508. }
  509. @RequestMapping(value = "/exportUserthoughtTotal", method = RequestMethod.GET)
  510. public void exportUserthoughtTotal(HttpServletResponse response,
  511. @RequestParam(required = false) String partyCode, @RequestParam(required = false) Integer month, @RequestParam(required = false) String writeUser, @RequestParam(required = false) Integer zzfbType) throws Exception {
  512. /**查询数据**/
  513. List<HashMap<String, Object>> dataList = publicityService.getUserThoughtTotalList(1, 100000, partyCode, month, writeUser, zzfbType).getList();
  514. ExcelHelper excelHelper = new ExcelHelper();
  515. ExcelHelper.ExcelData data = excelHelper.new ExcelData();
  516. //列名
  517. data.setName("职工思想动态分析统计信息");
  518. List<String> titles = new ArrayList();
  519. titles.add("所在党组织");
  520. titles.add("月度");
  521. titles.add("提交日期");
  522. titles.add("提交人");
  523. titles.add("审批人");
  524. data.setTitles(titles);
  525. //数据
  526. List<List<Object>> rows = new ArrayList();
  527. for (HashMap<String, Object> item : dataList) {
  528. List<Object> row = new ArrayList();
  529. row.add(item.get("PARTYNAME"));
  530. row.add(item.get("MONTH"));
  531. row.add(item.get("WRITETIME"));
  532. row.add(item.get("WRITEUSER"));
  533. row.add(item.get("APPROVEUSER"));
  534. rows.add(row);
  535. }
  536. data.setRows(rows);
  537. excelHelper.exportExcel(response, "职工思想动态分析统计信息.xlsx", data);
  538. }
  539. //endregion
  540. //region 领导人员5+3管理
  541. @ResponseBody
  542. @GetMapping("/getUserLeaderList")
  543. public RequsetData<PageInfo<HashMap<String, Object>>> getUserLeaderList(@RequestParam("pageindex") int pageIndex, @RequestParam("pagesize") int pageSize,
  544. @RequestParam(required = false) String partyCode, @RequestParam(required = false) String userName, @RequestParam(required = false)
  545. Integer leaderType, @RequestParam(required = false) String beginTime,
  546. @RequestParam(required = false) String endTime, @RequestParam(required = false) Integer zzfbType, @RequestParam(required = false) String rybm) {
  547. beginTime = dateUtils.strFormat_short(beginTime);
  548. endTime = dateUtils.strFormat_short(endTime);
  549. RequsetData<PageInfo<HashMap<String, Object>>> result = new RequsetData<>();
  550. result.setItem(publicityService.getUserLeaderList(pageIndex, pageSize, partyCode, userName, leaderType, beginTime, endTime, zzfbType, rybm));
  551. return result;
  552. }
  553. @ResponseBody
  554. @RequestMapping("/getUserLeaderById")
  555. public RequsetData<UsUserleader> getUserLeaderById(@RequestParam("id") String id, @RequestParam(required = false) String dzzdm) {
  556. RequsetData<UsUserleader> res = new RequsetData<>();
  557. UsUserleader model = publicityService.getUserLeaderById(id);
  558. if (model == null || (model != null && stringUtils.IsNullOrEmpty(model.getUserleaderid()))) {
  559. UUID uuid = UUID.randomUUID();
  560. model = new UsUserleader();
  561. model.setUserleaderid(uuid.toString());
  562. model.setPartycode(dzzdm);
  563. }
  564. if (!stringUtils.IsNullOrEmpty(model.getPartycode())) {
  565. ZzZzqkxx zzZzqkxx = partyService.getPartyByDm(model.getPartycode());
  566. if (zzZzqkxx != null && !stringUtils.IsNullOrEmpty(zzZzqkxx.getDzzdm())) {
  567. model.setPartyname(zzZzqkxx.getDzzmc());
  568. }
  569. }
  570. res.setItem(model);
  571. return res;
  572. }
  573. @ResponseBody
  574. @RequestMapping("/saveUserLeader")
  575. public RequsetData<String> saveUserLeader(@RequestBody Map<String, Object> reqMap) {
  576. RequsetData<String> res = new RequsetData<String>();
  577. ObjectMapper mapper = new ObjectMapper();
  578. String message = "";
  579. int count = 0;
  580. try {
  581. UsUserleader dataModel = mapper.readValue(mapper.writeValueAsString(reqMap.get("dataModel")).toString(), UsUserleader.class);
  582. List<UsUserleaderDetail> userList = JsonMapper.jsonToObject(reqMap.get("userList").toString(), new TypeReference<List<UsUserleaderDetail>>() {
  583. });
  584. count = publicityService.saveUserLeader(dataModel, userList, userService.getLoginUser().getUserid(), userService.getUserInfobyId(userService.getLoginUser().getUserid()).getName());
  585. } catch (JsonProcessingException e) {
  586. e.printStackTrace();
  587. message = e.getMessage();
  588. }
  589. if (count > 0) {
  590. res.setSuccess(true);
  591. res.setMsg("保存成功!");
  592. } else {
  593. res.setSuccess(false);
  594. res.setMsg("保存失败!" + message);
  595. }
  596. return res;
  597. }
  598. @ResponseBody
  599. @GetMapping("/getUserleaderDetailList")
  600. public RequsetData<List<HashMap<String, Object>>> getUserleaderDetailList(@RequestParam("leaderId") String leaderId) {
  601. RequsetData<List<HashMap<String, Object>>> result = new RequsetData<>();
  602. result.setItem(publicityService.getUserleaderDetailList(leaderId));
  603. return result;
  604. }
  605. @ResponseBody
  606. @GetMapping("/deleteUserLeaderById")
  607. public RequsetData<Integer> deleteUserLeaderById(@RequestParam("id") String id) {
  608. RequsetData<Integer> result = new RequsetData<>();
  609. int row = publicityService.deleteUserLeaderById(id);
  610. result.setItem(row);
  611. if (row == 0) {
  612. result.setSuccess(false);
  613. result.setMsg("删除失败!");
  614. } else {
  615. result.setMsg("删除成功!");
  616. }
  617. return result;
  618. }
  619. @RequestMapping(value = "/exportUserLeader", method = RequestMethod.GET)
  620. public void exportUserLeader(HttpServletResponse response,
  621. @RequestParam(required = false) String partyCode, @RequestParam(required = false) String userName, @RequestParam(required = false)
  622. Integer leaderType, @RequestParam(required = false) String beginTime,
  623. @RequestParam(required = false) String endTime, @RequestParam(required = false) Integer zzfbType, @RequestParam(required = false) String rybm) throws Exception {
  624. beginTime = dateUtils.strFormat_short(beginTime);
  625. endTime = dateUtils.strFormat_short(endTime);
  626. /**查询数据**/
  627. List<HashMap<String, Object>> dataList = publicityService.getUserLeaderList(1, 100000, partyCode, userName, leaderType, beginTime, endTime, zzfbType, rybm).getList();
  628. ExcelHelper excelHelper = new ExcelHelper();
  629. ExcelHelper.ExcelData data = excelHelper.new ExcelData();
  630. //列名
  631. data.setName("领导人员5+3信息");
  632. List<String> titles = new ArrayList();
  633. titles.add("姓名");
  634. titles.add("所属党委");
  635. titles.add("所在党支部");
  636. titles.add("党内职务");
  637. titles.add("时间");
  638. titles.add("地点");
  639. titles.add("类别");
  640. data.setTitles(titles);
  641. //数据
  642. List<List<Object>> rows = new ArrayList();
  643. for (HashMap<String, Object> item : dataList) {
  644. List<Object> row = new ArrayList();
  645. row.add(item.get("USERNAME"));
  646. row.add(item.get("PARTYNAME"));
  647. row.add(item.get("USERPARTYNAME"));
  648. row.add(item.get("DNZW"));
  649. row.add(item.get("LEADERTIME"));
  650. row.add(item.get("ADDRESS"));
  651. row.add(item.get("LEADERTYPENAME"));
  652. rows.add(row);
  653. }
  654. data.setRows(rows);
  655. excelHelper.exportExcel(response, "领导人员5+3信息.xlsx", data);
  656. }
  657. @ResponseBody
  658. @GetMapping("/getUserLeaderTotalList")
  659. public RequsetData<PageInfo<HashMap<String, Object>>> getUserLeaderTotalList(@RequestParam("pageindex") int pageIndex, @RequestParam("pagesize") int pageSize,
  660. @RequestParam(required = false) String partyCode, @RequestParam(required = false) String userName, @RequestParam(required = false) String beginTime,
  661. @RequestParam(required = false) String endTime) {
  662. beginTime = dateUtils.strFormat_short(beginTime);
  663. endTime = dateUtils.strFormat_short(endTime);
  664. RequsetData<PageInfo<HashMap<String, Object>>> result = new RequsetData<>();
  665. int partyLength = 12;
  666. if (!stringUtils.IsNullOrEmpty((partyCode))) {
  667. if (partyCode.length() > 12) {
  668. partyLength = partyCode.length();
  669. }
  670. }
  671. result.setItem(publicityService.getUserLeaderTotalList(pageIndex, pageSize, partyCode, userName, beginTime, endTime, partyLength));
  672. return result;
  673. }
  674. @ResponseBody
  675. @RequestMapping("/importUserLeader")
  676. public RequsetData<List<UserLeaderVo>> importUserLeader(@RequestBody Map<String, Object> reqMap) {
  677. RequsetData<List<UserLeaderVo>> res = new RequsetData<>();
  678. List<UserLeaderVo> errorInfo = new ArrayList<>();
  679. String message = "";
  680. try {
  681. List<UserLeaderVo> userList = JsonMapper.jsonToObject(reqMap.get("userList").toString(), new TypeReference<List<UserLeaderVo>>() {
  682. });
  683. userList = userList.stream().filter(it -> !stringUtils.IsNullOrEmpty(it.getUserName()) && !stringUtils.IsNullOrEmpty(it.getPartyName())).collect(Collectors.toList());
  684. errorInfo = publicityService.importUserLeader(userList, userService.getLoginUser().getUserid(), userService.getUserInfobyId(userService.getLoginUser().getUserid()).getName());
  685. } catch (Exception e) {
  686. e.printStackTrace();
  687. message = e.getMessage();
  688. }
  689. if (errorInfo.size() <= 0 && stringUtils.IsNullOrEmpty(message)) {
  690. res.setSuccess(true);
  691. res.setMsg("操作成功!");
  692. } else {
  693. res.setSuccess(false);
  694. res.setMsg("操作失败!" + message);
  695. res.setItem(errorInfo);
  696. }
  697. return res;
  698. }
  699. //endregion
  700. //region 党费管理
  701. @ResponseBody
  702. @RequestMapping("/getPartyDuesList")
  703. public RequsetData<List<HashMap<String, Object>>> getPartyDuesList(@RequestParam("pageindex") int pageIndex, @RequestParam("pagesize") int pageSize,
  704. @RequestParam(required = false) String partyCode, @RequestParam("year") Integer year, @RequestParam(required = false) String userName, @RequestParam(required = false) Integer zzfbType, @RequestParam(required = false) Integer isStudent) {
  705. RequsetData<List<HashMap<String, Object>>> result = new RequsetData<>();
  706. PageInfo<HashMap<String, Object>> resultList = publicityService.getPartyDuesList(pageIndex, pageSize, partyCode, year, userName, zzfbType, isStudent);
  707. result.setItem(resultList.getList());
  708. Map<String, Object> extData = new HashMap<>();
  709. extData.put("total", resultList.getTotal());
  710. /*Map<String, Object> totalData = new HashMap<>();
  711. totalData.put("totalMoney", publicityService.getPartyDuesTotalMoney(partyCode, year, userName, zzfbType));
  712. List<HashMap<String, Object>> totalList = publicityService.getPartyDuesTotal(partyCode, year, userName, zzfbType);
  713. for (HashMap<String, Object> item : totalList) {
  714. BigDecimal totalMoney = new BigDecimal(item.get("TOTALMONEY").toString());
  715. int month = Integer.parseInt(item.get("MONTH").toString());
  716. String keyName = "";
  717. switch (month) {
  718. case 1:
  719. keyName = "Jan";
  720. break;
  721. case 2:
  722. keyName = "Feb";
  723. break;
  724. case 3:
  725. keyName = "Mar";
  726. break;
  727. case 4:
  728. keyName = "Apr";
  729. break;
  730. case 5:
  731. keyName = "May";
  732. break;
  733. case 6:
  734. keyName = "Jun";
  735. break;
  736. case 7:
  737. keyName = "Jul";
  738. break;
  739. case 8:
  740. keyName = "Aug";
  741. break;
  742. case 9:
  743. keyName = "Sept";
  744. break;
  745. case 10:
  746. keyName = "Oct";
  747. break;
  748. case 11:
  749. keyName = "Nov";
  750. break;
  751. case 12:
  752. keyName = "Dec";
  753. }
  754. totalData.put(keyName, totalMoney);
  755. }
  756. extData.put("totalData", totalData);
  757. */
  758. result.setExtdata(extData);
  759. return result;
  760. }
  761. @RequestMapping(value = "/exportPartyDues", method = RequestMethod.GET)
  762. public void exportPartyDues(HttpServletResponse response,
  763. @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 {
  764. /**查询数据**/
  765. List<HashMap<String, Object>> dataList = publicityService.getPartyDuesList(1, 1000000, partyCode, year, userName, zzfbType, isStudent).getList();
  766. ExcelHelper excelHelper = new ExcelHelper();
  767. ExcelHelper.ExcelData data = excelHelper.new ExcelData();
  768. //列名
  769. data.setName("党员党费信息");
  770. List<String> titles = new ArrayList();
  771. titles.add("姓名");
  772. titles.add("所在党组织");
  773. titles.add("年度");
  774. titles.add("应交党费(元/月)");
  775. titles.add("是否学生身份");
  776. titles.add("1月");
  777. titles.add("2月");
  778. titles.add("3月");
  779. titles.add("4月");
  780. titles.add("5月");
  781. titles.add("6月");
  782. titles.add("7月");
  783. titles.add("8月");
  784. titles.add("9月");
  785. titles.add("10月");
  786. titles.add("11月");
  787. titles.add("12月");
  788. data.setTitles(titles);
  789. //数据
  790. List<List<Object>> rows = new ArrayList();
  791. for (HashMap<String, Object> item : dataList) {
  792. List<Object> row = new ArrayList();
  793. row.add(item.get("USERNAME"));
  794. row.add(item.get("DZZMC"));
  795. row.add(item.get("YEAR"));
  796. row.add(item.get("MONEY"));
  797. row.add(item.get("ISSTUDENTNAME"));
  798. row.add(item.get("Jan"));
  799. row.add(item.get("Feb"));
  800. row.add(item.get("Mar"));
  801. row.add(item.get("Apr"));
  802. row.add(item.get("May"));
  803. row.add(item.get("Jun"));
  804. row.add(item.get("Jul"));
  805. row.add(item.get("Aug"));
  806. row.add(item.get("Sept"));
  807. row.add(item.get("Oct"));
  808. row.add(item.get("Nov"));
  809. row.add(item.get("Dec"));
  810. rows.add(row);
  811. }
  812. List<Object> totalRow = new ArrayList();
  813. totalRow.add("合计:");
  814. totalRow.add("");
  815. totalRow.add("");
  816. /*totalRow.add(publicityService.getPartyDuesTotalMoney(partyCode, year, userName, zzfbType));
  817. List<HashMap<String, Object>> totalList = publicityService.getPartyDuesTotal(partyCode, year, userName, zzfbType);
  818. for (HashMap<String, Object> item : totalList) {
  819. totalRow.add(item.get("TOTALMONEY").toString());
  820. }*/
  821. /*rows.add(totalRow);*/
  822. data.setRows(rows);
  823. excelHelper.exportExcel(response, "党员党费信息.xlsx", data);
  824. }
  825. @ResponseBody
  826. @RequestMapping("/getPartyDuesDetailList")
  827. public RequsetData<List<HashMap<String, Object>>> getPartyDuesDetailList(@RequestParam("year") Integer year, @RequestParam(required = false) String partyCode, @RequestParam(required = false) Integer month, @RequestParam(required = false) String partyDuesId) {
  828. RequsetData<List<HashMap<String, Object>>> result = new RequsetData<>();
  829. result.setItem(publicityService.getPartyDuesDetailList(year, partyCode, month, partyDuesId));
  830. return result;
  831. }
  832. @ResponseBody
  833. @RequestMapping("/getPartyDuesUserList")
  834. public RequsetData<List<HashMap<String, Object>>> getPartyDuesUserList(@RequestParam("partyCode") String partyCode, @RequestParam("year") Integer year) {
  835. RequsetData<List<HashMap<String, Object>>> result = new RequsetData<>();
  836. result.setItem(publicityService.getPartyDuesUserList(partyCode, year));
  837. return result;
  838. }
  839. /**
  840. * 保存缴费基数
  841. * @param reqMap
  842. * @return
  843. */
  844. @ResponseBody
  845. @RequestMapping("/savePartyDuesUser")
  846. public RequsetData<String> savePartyDuesUser(@RequestBody Map<String, Object> reqMap) {
  847. RequsetData<String> res = new RequsetData<String>();
  848. int count = 0;
  849. String message = "";
  850. ObjectMapper mapper = new ObjectMapper();
  851. try {
  852. UsPartydues dataModel = mapper.readValue(mapper.writeValueAsString(reqMap.get("dataModel")).toString(), UsPartydues.class);
  853. /*List<UsPartyduesDetail> monthList = JsonMapper.jsonToObject(reqMap.get("monthList").toString(), new TypeReference<List<UsPartyduesDetail>>() {
  854. });*/
  855. count = publicityService.savePartyDuesUser(dataModel, userService.getLoginUser().getUserid(), userService.getUserInfobyId(userService.getLoginUser().getUserid()).getName());
  856. } catch (Exception e) {
  857. e.printStackTrace();
  858. message = e.getMessage();
  859. }
  860. if (count > 0) {
  861. res.setSuccess(true);
  862. res.setMsg("操作成功!");
  863. } else {
  864. res.setSuccess(false);
  865. res.setMsg("操作失败!" + message);
  866. }
  867. return res;
  868. }
  869. /**
  870. * 保存缴费基数(批量设置)
  871. * @param reqMap
  872. * @return
  873. */
  874. @ResponseBody
  875. @RequestMapping("/savePartyDues")
  876. public RequsetData<String> savePartyDues(@RequestBody Map<String, Object> reqMap) {
  877. RequsetData<String> res = new RequsetData<String>();
  878. int count = 0;
  879. String message = "";
  880. ObjectMapper mapper = new ObjectMapper();
  881. try {
  882. List<UsPartydues> userList = JsonMapper.jsonToObject(reqMap.get("userList").toString(), new TypeReference<List<UsPartydues>>() {
  883. });
  884. count = publicityService.savePartyDues(userList, userService.getLoginUser().getUserid(), userService.getUserInfobyId(userService.getLoginUser().getUserid()).getName());
  885. } catch (Exception e) {
  886. e.printStackTrace();
  887. message = e.getMessage();
  888. }
  889. if (count > 0) {
  890. res.setSuccess(true);
  891. res.setMsg("操作成功!");
  892. } else {
  893. res.setSuccess(false);
  894. res.setMsg("操作失败!" + message);
  895. }
  896. return res;
  897. }
  898. /**
  899. * 获取并初始化党员缴费基数(学生党员默认为0.2,一般不会去设置,需系统自动初始化,逻辑为:用户登录时进行检测,若未配置,则由系统初始化)
  900. * @param usercode
  901. * @param year
  902. * @return
  903. */
  904. @ResponseBody
  905. @RequestMapping("/getPartyDuesUserInfoById")
  906. public RequsetData<UsPartydues> getPartyDuesUserInfoById(@RequestParam("usercode") String usercode, @RequestParam("year") Integer year, @RequestParam(required = false) String partycode,
  907. @RequestParam("username") String username) {
  908. //返回信息
  909. RequsetData<UsPartydues> res = new RequsetData<>();
  910. HashMap<String, Object> extData = new HashMap<String, Object>();
  911. UsPartydues model = publicityService.defaultPartyduesByUserId(usercode, year, userService.getLoginUser().getUserid());
  912. List<HashMap<String, Object>> userMonthList = publicityService.getPartyDuesUserMonthList(year, usercode);
  913. extData.put("userMonthList", userMonthList);
  914. extData.put("usdzzdm", partyUserService.getUserDzzdm(model.getUsercode()));
  915. res.setExtdata(extData);
  916. res.setItem(model);
  917. return res;
  918. }
  919. @ResponseBody
  920. @RequestMapping("/updatePartyduesPayState")
  921. public RequsetData<Integer> updatePartyduesPayState(@RequestBody Map<String, Object> reqMap) {
  922. RequsetData<Integer> res = new RequsetData<>();
  923. int count = 0;
  924. String message = "";
  925. try {
  926. String detailId = reqMap.get("detailId") != null ? reqMap.get("detailId").toString() : null;
  927. String outTradeNo = reqMap.get("outTradeNo") != null ? reqMap.get("outTradeNo").toString() : null;
  928. count = publicityService.updatePartyduesPayState(detailId, outTradeNo, userService.getLoginUser().getUserid());
  929. } catch (Exception e) {
  930. e.printStackTrace();
  931. message = "Exception was: " + e.toString() + ",message was: " + e.getMessage();
  932. }
  933. if (count > 0) {
  934. res.setSuccess(true);
  935. res.setMsg("操作成功!");
  936. } else {
  937. res.setSuccess(false);
  938. res.setMsg(message);
  939. }
  940. return res;
  941. }
  942. @ResponseBody
  943. @RequestMapping("/getPartyDuesUserMonthList")
  944. public RequsetData<List<HashMap<String, Object>>> getPartyDuesUserMonthList(@RequestParam("year") Integer year, @RequestParam("userCode") String userCode) {
  945. RequsetData<List<HashMap<String, Object>>> result = new RequsetData<>();
  946. result.setItem(publicityService.getPartyDuesUserMonthList(year, userCode));
  947. return result;
  948. }
  949. @ResponseBody
  950. @GetMapping("/getPartyDuesUserListOfAddfee")
  951. public RequsetData<PageInfo<HashMap<String, Object>>> getPartyDuesUserListOfAddfee(@RequestParam("pageindex") int pageIndex, @RequestParam("pagesize") int pageSize,
  952. @RequestParam("year") Integer year, @RequestParam("month") Integer month, @RequestParam("partyCode") String partyCode, @RequestParam(required = false) String userName) {
  953. /*List<String> userIdList = new ArrayList<>();
  954. if (!stringUtils.IsNullOrEmpty(userIds)) {
  955. userIdList = Arrays.asList(userIds.split(","));
  956. }
  957. //需排除的人员id
  958. List<String> removeUserList = new ArrayList<>();
  959. if (!stringUtils.IsNullOrEmpty(removeUserId)) {
  960. removeUserList = Arrays.asList(removeUserId.split(","));
  961. }*/
  962. RequsetData<PageInfo<HashMap<String, Object>>> result = new RequsetData<>();
  963. result.setItem(publicityService.getPartyDuesUserListOfAddfee(pageIndex, pageSize, year, month, partyCode, userName));
  964. return result;
  965. }
  966. @ResponseBody
  967. @RequestMapping("/savePartyDuesMulti")
  968. public RequsetData<String> savePartyDuesMulti(@RequestBody Map<String, Object> reqMap) {
  969. RequsetData<String> res = new RequsetData<String>();
  970. int count = 0;
  971. String message = "";
  972. ObjectMapper mapper = new ObjectMapper();
  973. try {
  974. List<UsPartyduesDetail> userList = JsonMapper.jsonToObject(reqMap.get("userList").toString(), new TypeReference<List<UsPartyduesDetail>>() {
  975. });
  976. count = publicityService.savePartyDuesMulti(userList, userService.getLoginUser().getUserid(), userService.getUserInfobyId(userService.getLoginUser().getUserid()).getName());
  977. } catch (Exception e) {
  978. e.printStackTrace();
  979. message = e.getMessage();
  980. }
  981. if (count > 0) {
  982. res.setSuccess(true);
  983. res.setMsg("操作成功!");
  984. } else {
  985. res.setSuccess(false);
  986. res.setMsg("操作失败!" + message);
  987. }
  988. return res;
  989. }
  990. @ResponseBody
  991. @GetMapping("/getDuesPayTotal")
  992. public RequsetData<PageInfo<HashMap<String, Object>>> getDuesPayTotal(@RequestParam("pageindex") int pageIndex, @RequestParam("pagesize") int pageSize, @RequestParam("dzzdm") String dzzdm, @RequestParam(required = false) String ssdzzdm, @RequestParam(required = false) Integer year,
  993. @RequestParam("month") Integer month) {
  994. RequsetData<PageInfo<HashMap<String, Object>>> result = new RequsetData<>();
  995. result.setItem(publicityService.getDuesPayTotal(pageIndex, pageSize, dzzdm, ssdzzdm, year, month));
  996. return result;
  997. }
  998. @ResponseBody
  999. @GetMapping("/getSettingDuesUserList")
  1000. public RequsetData<PageInfo<HashMap<String, Object>>> getSettingDuesUserList(@RequestParam("pageindex") int pageIndex, @RequestParam("pagesize") int pageSize, @RequestParam(required = false) String dzzdm,
  1001. @RequestParam(required = false) Integer year
  1002. , @RequestParam(required = false) String rybm, @RequestParam(required = false) String xm, @RequestParam(required = false) String szdzb, @RequestParam(required = false) Integer isStudent) {
  1003. RequsetData<PageInfo<HashMap<String, Object>>> result = new RequsetData<>();
  1004. result.setItem(publicityService.getSettingDuesUserList(pageIndex, pageSize, year, dzzdm, rybm, xm, szdzb, isStudent));
  1005. return result;
  1006. }
  1007. @RequestMapping(value = "/exportSettingDuesUserList", method = RequestMethod.GET)
  1008. public void exportSettingDuesUserList(HttpServletResponse response,
  1009. @RequestParam(required = false) String dzzdm, @RequestParam(required = false) Integer year
  1010. , @RequestParam(required = false) String rybm, @RequestParam(required = false) String xm, @RequestParam(required = false) String szdzb, @RequestParam(required = false) Integer isStudent) throws Exception {
  1011. /**查询数据**/
  1012. List<HashMap<String, Object>> dataList = publicityService.getSettingDuesUserList(1, 10000, year, dzzdm, rybm, xm, szdzb, isStudent).getList();
  1013. ExcelHelper excelHelper = new ExcelHelper();
  1014. ExcelHelper.ExcelData data = excelHelper.new ExcelData();
  1015. //列名
  1016. data.setName("交费基准模板");
  1017. List<String> titles = new ArrayList();
  1018. titles.add("党员姓名");
  1019. titles.add("学号/工号");
  1020. titles.add("党员编码");
  1021. titles.add("交纳金额(元/月)");
  1022. data.setTitles(titles);
  1023. //数据
  1024. List<List<Object>> rows = new ArrayList();
  1025. for (HashMap<String, Object> item : dataList) {
  1026. List<Object> row = new ArrayList();
  1027. row.add(item.get("XM"));
  1028. row.add(item.get("USERNO"));
  1029. row.add(item.get("RYBM"));
  1030. row.add(item.get("MONEY"));
  1031. rows.add(row);
  1032. }
  1033. data.setRows(rows);
  1034. excelHelper.exportExcel(response, year.toString() + "年交费基准模板导出.xlsx", data);
  1035. }
  1036. @ResponseBody
  1037. @RequestMapping("/importSettingDues")
  1038. public RequsetData<List<ImportUserDuesVo>> importSettingDues(@RequestBody Map<String, Object> reqMap) {
  1039. RequsetData<List<ImportUserDuesVo>> res = new RequsetData<>();
  1040. List<ImportUserDuesVo> errorInfo = new ArrayList<>();
  1041. String message = "";
  1042. try {
  1043. List<ImportUserDuesVo> userList = JsonMapper.jsonToObject(reqMap.get("userList").toString(), new TypeReference<List<ImportUserDuesVo>>() {
  1044. });
  1045. errorInfo = publicityService.importSettingDues(userList, userService.getLoginUser().getUserid(), userService.getUserInfobyId(userService.getLoginUser().getUserid()).getName());
  1046. } catch (Exception e) {
  1047. e.printStackTrace();
  1048. message = e.toString();
  1049. }
  1050. if (errorInfo.size() <= 0 && stringUtils.IsNullOrEmpty(message)) {
  1051. res.setSuccess(true);
  1052. res.setMsg("操作成功!");
  1053. } else {
  1054. res.setSuccess(false);
  1055. res.setMsg("操作失败!" + message);
  1056. res.setItem(errorInfo);
  1057. }
  1058. return res;
  1059. }
  1060. //endregion
  1061. //region 党组织经费管理
  1062. @ResponseBody
  1063. @GetMapping("/getPartyOutlayList")
  1064. public RequsetData<PageInfo<HashMap<String, Object>>> getPartyOutlayList(@RequestParam("pageindex") int pageIndex, @RequestParam("pagesize") int pageSize,
  1065. @RequestParam(required = false) String partyCode, @RequestParam(required = false) String beginTime,
  1066. @RequestParam(required = false) String endTime, @RequestParam(required = false) Integer zzfbType, @RequestParam(required = false) Integer paytype) {
  1067. beginTime = dateUtils.strFormat_short(beginTime);
  1068. endTime = dateUtils.strFormat_short(endTime);
  1069. RequsetData<PageInfo<HashMap<String, Object>>> result = new RequsetData<>();
  1070. result.setItem(publicityService.getPartyOutlayList(pageIndex, pageSize, partyCode, beginTime, endTime, zzfbType, paytype, null));
  1071. return result;
  1072. }
  1073. @ResponseBody
  1074. @RequestMapping("/getPartyOutlayById")
  1075. public RequsetData<UsPartyoutlay> getPartyOutlayById(@RequestParam("id") String id, @RequestParam(required = false) String dzzdm) {
  1076. RequsetData<UsPartyoutlay> res = new RequsetData<>();
  1077. UsPartyoutlay model = publicityService.getPartyOutlayById(id);
  1078. if (model == null || (model != null && stringUtils.IsNullOrEmpty(model.getPartyoutlayid()))) {
  1079. UUID uuid = UUID.randomUUID();
  1080. model = new UsPartyoutlay();
  1081. model.setPartyoutlayid(uuid.toString());
  1082. model.setPartycode(dzzdm);
  1083. }
  1084. if (!stringUtils.IsNullOrEmpty(model.getPartycode())) {
  1085. ZzZzqkxx zzZzqkxx = partyService.getPartyByDm(model.getPartycode());
  1086. if (zzZzqkxx != null && !stringUtils.IsNullOrEmpty(zzZzqkxx.getDzzdm())) {
  1087. model.setPartyname(zzZzqkxx.getDzzmc());
  1088. }
  1089. }
  1090. res.setItem(model);
  1091. return res;
  1092. }
  1093. @ResponseBody
  1094. @RequestMapping("/savePartyOutlay")
  1095. public RequsetData<String> savePartyOutlay(@RequestBody UsPartyoutlay model) {
  1096. RequsetData<String> res = new RequsetData<String>();
  1097. int count = publicityService.savePartyOutlay(model, userService.getLoginUser().getUserid(), userService.getUserInfobyId(userService.getLoginUser().getUserid()).getName());
  1098. if (count > 0) {
  1099. res.setSuccess(true);
  1100. res.setMsg("保存成功!");
  1101. } else {
  1102. res.setSuccess(false);
  1103. res.setMsg("保存失败!");
  1104. }
  1105. return res;
  1106. }
  1107. @ResponseBody
  1108. @GetMapping("/deletePartyOutlayById")
  1109. public RequsetData<Integer> deletePartyOutlayById(@RequestParam("id") String id) {
  1110. RequsetData<Integer> result = new RequsetData<>();
  1111. int row = publicityService.deletePartyOutlayById(id);
  1112. result.setItem(row);
  1113. if (row == 0) {
  1114. result.setSuccess(false);
  1115. result.setMsg("删除失败!");
  1116. } else {
  1117. result.setMsg("删除成功!");
  1118. }
  1119. return result;
  1120. }
  1121. @RequestMapping(value = "/exportPartyOutlay", method = RequestMethod.GET)
  1122. public void exportPartyOutlay(HttpServletResponse response,
  1123. @RequestParam(required = false) String partyCode, @RequestParam(required = false) String userName, @RequestParam(required = false)
  1124. Integer leaderType, @RequestParam(required = false) String beginTime,
  1125. @RequestParam(required = false) String endTime, @RequestParam(required = false) Integer zzfbType, @RequestParam(required = false) Integer paytype) throws Exception {
  1126. beginTime = dateUtils.strFormat_short(beginTime);
  1127. endTime = dateUtils.strFormat_short(endTime);
  1128. /**查询数据**/
  1129. List<HashMap<String, Object>> dataList = publicityService.getPartyOutlayList(1, 1000000, partyCode, beginTime, endTime, zzfbType, paytype, null).getList();
  1130. ExcelHelper excelHelper = new ExcelHelper();
  1131. ExcelHelper.ExcelData data = excelHelper.new ExcelData();
  1132. //列名
  1133. data.setName("党组织经费信息");
  1134. List<String> titles = new ArrayList();
  1135. titles.add("组织名称");
  1136. titles.add("时间");
  1137. /* titles.add("事由");*/
  1138. titles.add("支出类型");
  1139. titles.add("金额(元)");
  1140. data.setTitles(titles);
  1141. //数据
  1142. List<List<Object>> rows = new ArrayList();
  1143. for (HashMap<String, Object> item : dataList) {
  1144. List<Object> row = new ArrayList();
  1145. row.add(item.get("PARTYNAME"));
  1146. row.add(item.get("USETIME"));
  1147. /*row.add(item.get("REASON"));*/
  1148. row.add(item.get("PAYTYPENAME"));
  1149. row.add(item.get("MONEY"));
  1150. rows.add(row);
  1151. }
  1152. data.setRows(rows);
  1153. excelHelper.exportExcel(response, "党组织经费信息.xlsx", data);
  1154. }
  1155. //endregion
  1156. @ResponseBody
  1157. @GetMapping("/getpublicityPositionSummary")
  1158. public RequsetData<PageInfo<HashMap<String, Object>>> getpublicityPositionSummary(@RequestParam("pageindex") int pageIndex, @RequestParam("pagesize") int pageSize,
  1159. @RequestParam(required = false) String dzzdm, @RequestParam(required = false) Integer year) {
  1160. RequsetData<PageInfo<HashMap<String, Object>>> result = new RequsetData<>();
  1161. result.setItem(publicityService.getpublicityPositionSummary(pageIndex, pageSize, dzzdm, year));
  1162. return result;
  1163. }
  1164. @RequestMapping(value = "/exportpublicityPositionSummary", method = RequestMethod.GET)
  1165. public void exportpublicityPositionSummary(HttpServletResponse response,
  1166. @RequestParam(required = false) String dzzmc,
  1167. @RequestParam(required = false) String dzzdm,
  1168. @RequestParam(required = false) Integer year) throws Exception {
  1169. /**查询数据**/
  1170. List<HashMap<String, Object>> dataList = publicityService.getpublicityPositionSummary(1, 100000, dzzdm, year).getList();
  1171. ExcelHelper excelHelper = new ExcelHelper();
  1172. ExcelHelper.ExcelData data = excelHelper.new ExcelData();
  1173. //列名
  1174. data.setName("宣传阵地统计信息");
  1175. List<String> titles = new ArrayList();
  1176. titles.add("所属党组织");
  1177. titles.add("宣传阵地数");
  1178. titles.add("横幅");
  1179. titles.add("展板");
  1180. titles.add("电子屏");
  1181. titles.add("宣传栏");
  1182. titles.add("今年更新次数");
  1183. titles.add("待更新阵地");
  1184. titles.add("更新待审核阵地");
  1185. data.setTitles(titles);
  1186. //数据
  1187. List<List<Object>> rows = new ArrayList();
  1188. for (HashMap<String, Object> item : dataList) {
  1189. List<Object> row = new ArrayList();
  1190. row.add(item.get("DZZMC"));
  1191. row.add(item.get("TOTAL"));
  1192. row.add(item.get("NUM_POSITIONTYPE1"));
  1193. row.add(item.get("NUM_POSITIONTYPE2"));
  1194. row.add(item.get("NUM_POSITIONTYPE3"));
  1195. row.add(item.get("NUM_POSITIONTYPE4"));
  1196. row.add(item.get("NUM_UPDATE"));
  1197. row.add(item.get("NUM"));
  1198. row.add(item.get("NUM_NOT_APPROVE"));
  1199. rows.add(row);
  1200. }
  1201. data.setRows(rows);
  1202. excelHelper.exportExcel(response, "宣传阵地统计信息.xlsx", data);
  1203. }
  1204. @ResponseBody
  1205. @RequestMapping("/getFundsIncome")
  1206. public RequsetData<DjFundsincome> getFundsIncome(@RequestParam("dzzdm") String dzzdm, @RequestParam(required = false) Integer year) {
  1207. RequsetData<DjFundsincome> res = new RequsetData<>();
  1208. DjFundsincome model = publicityService.getFundsIncome(dzzdm, year);
  1209. if (model == null) {
  1210. UUID uuid = UUID.randomUUID();
  1211. model = new DjFundsincome();
  1212. model.setFundsbudgetid(uuid.toString());
  1213. model.setPartycode(dzzdm);
  1214. model.setYear(year);
  1215. }
  1216. res.setItem(model);
  1217. return res;
  1218. }
  1219. @ResponseBody
  1220. @RequestMapping("/saveFundsIncome")
  1221. public RequsetData<String> saveFundsIncome(@RequestBody DjFundsincome model) {
  1222. RequsetData<String> res = new RequsetData<String>();
  1223. int count = publicityService.saveFundsIncome(model, userService.getLoginUser().getUserid(), userService.getUserInfobyId(userService.getLoginUser().getUserid()).getName());
  1224. if (count > 0) {
  1225. res.setSuccess(true);
  1226. res.setMsg("保存成功!");
  1227. } else {
  1228. res.setSuccess(false);
  1229. res.setMsg("保存失败!");
  1230. }
  1231. return res;
  1232. }
  1233. @ResponseBody
  1234. @GetMapping("/getFundsIncomeSummary")
  1235. public RequsetData<PageInfo<HashMap<String, Object>>> getFundsIncomeSummary(@RequestParam("pageindex") int pageIndex, @RequestParam("pagesize") int pageSize,
  1236. @RequestParam(required = false) String dzzdm, @RequestParam(required = false) Integer year) {
  1237. RequsetData<PageInfo<HashMap<String, Object>>> result = new RequsetData<>();
  1238. result.setItem(publicityService.getFundsIncomeSummary(pageIndex, pageSize, dzzdm, year));
  1239. return result;
  1240. }
  1241. @RequestMapping(value = "/exportFundsIncomeSummary", method = RequestMethod.GET)
  1242. public void exportFundsIncomeSummary(HttpServletResponse response,
  1243. @RequestParam(required = false) String dzzdm,
  1244. @RequestParam(required = false) Integer year) throws Exception {
  1245. /**查询数据**/
  1246. List<HashMap<String, Object>> dataList = publicityService.getFundsIncomeSummary(1, 100000, dzzdm, year).getList();
  1247. ExcelHelper excelHelper = new ExcelHelper();
  1248. ExcelHelper.ExcelData data = excelHelper.new ExcelData();
  1249. //列名
  1250. data.setName("党费收缴使用情况");
  1251. List<Map<String, CellRangeAddress>> colspanTitles = new ArrayList();
  1252. Map<String, CellRangeAddress> titles = new HashMap<>(5);
  1253. titles.put("单位", new CellRangeAddress(0, 1, 0, 0));
  1254. titles.put("预算收入", new CellRangeAddress(0, 1, 1, 1));
  1255. titles.put("预算支出", new CellRangeAddress(0, 1, 2, 2));
  1256. titles.put("实际收入", new CellRangeAddress(0, 0, 3, 6));
  1257. titles.put("实际支出", new CellRangeAddress(0, 0, 7, 16));
  1258. List<String> titles2 = new ArrayList();
  1259. titles2.add("");
  1260. titles2.add("");
  1261. titles2.add("");
  1262. titles2.add("总收入");
  1263. titles2.add("上级党组织拨付");
  1264. titles2.add("党员缴纳党费数");
  1265. titles2.add("党费利息");
  1266. titles2.add("总支出");
  1267. titles2.add("培训党员");
  1268. titles2.add("召开党内会议");
  1269. titles2.add("开展党内活动");
  1270. titles2.add("党员教育阵地建设");
  1271. titles2.add("表彰先进");
  1272. titles2.add("补助生活困难党员");
  1273. titles2.add("补助遭受严重自然灾害的党员和修缮因灾受损的基层党员教育设施支出");
  1274. titles2.add("党员日常教育、管理费用");
  1275. titles2.add("财务管理费用");
  1276. colspanTitles.add(titles);
  1277. data.setColspanTitles(colspanTitles);
  1278. data.setTitles(titles2);
  1279. //数据
  1280. List<List<Object>> rows = new ArrayList();
  1281. for (HashMap<String, Object> item : dataList) {
  1282. List<Object> row = new ArrayList();
  1283. row.add(item.get("DZZMC"));
  1284. row.add(item.get("预算收入"));
  1285. row.add(item.get("预算支出"));
  1286. row.add(item.get("总收入"));
  1287. row.add(item.get("上级党组织拨付"));
  1288. row.add(item.get("党员缴纳党费数"));
  1289. row.add(item.get("党费利息"));
  1290. row.add(item.get("总支出"));
  1291. row.add(item.get("培训党员"));
  1292. row.add(item.get("召开党内会议"));
  1293. row.add(item.get("开展党内活动"));
  1294. row.add(item.get("党员教育阵地建设"));
  1295. row.add(item.get("表彰先进"));
  1296. row.add(item.get("补助生活困难党员"));
  1297. row.add(item.get("基层党员教育设施支出"));
  1298. row.add(item.get("党员日常教育管理费用"));
  1299. row.add(item.get("财务管理费用"));
  1300. rows.add(row);
  1301. }
  1302. data.setRows(rows);
  1303. excelHelper.exportExcel(response, "党费收缴使用情况.xlsx", data);
  1304. }
  1305. @ResponseBody
  1306. @GetMapping("/getPartyDuesPayList")
  1307. public RequsetData<PageInfo<PartyDuesPayVo>> getPartyDuesPayList(@RequestParam("pageindex") int pageIndex, @RequestParam("pagesize") int pageSize,
  1308. @RequestParam(required = false) String partyCode, @RequestParam(required = false) String userName, @RequestParam(required = false) Integer payState,
  1309. @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) {
  1310. RequsetData<PageInfo<PartyDuesPayVo>> result = new RequsetData<>();
  1311. result.setItem(publicityService.getPartyDuesPayList(pageIndex, pageSize, partyCode, userName, payState, startDate, endDate, year, month));
  1312. return result;
  1313. }
  1314. }