CompanyController.java 8.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179
  1. package com.hz.employmentsite.controller.companyService;
  2. import com.github.pagehelper.PageInfo;
  3. import com.hz.employmentsite.filter.exception.BaseErrorEnum;
  4. import com.hz.employmentsite.filter.exception.BaseException;
  5. import com.hz.employmentsite.filter.exception.BaseResponse;
  6. import com.hz.employmentsite.filter.exception.RespGenerstor;
  7. import com.hz.employmentsite.mapper.PcSiteMapper;
  8. import com.hz.employmentsite.mapper.PcSiteUserMapper;
  9. import com.hz.employmentsite.model.PcCompany;
  10. import com.hz.employmentsite.model.PcSite;
  11. import com.hz.employmentsite.model.PcSiteExample;
  12. import com.hz.employmentsite.model.PcSiteUserExample;
  13. import com.hz.employmentsite.services.service.AccountService;
  14. import com.hz.employmentsite.services.service.companyService.CompanyService;
  15. import com.hz.employmentsite.util.DateUtils;
  16. import com.hz.employmentsite.util.ExcelHelper;
  17. import com.hz.employmentsite.vo.companyService.AppCompanyPostVo;
  18. import com.hz.employmentsite.vo.companyService.CompanyVo;
  19. import org.springframework.beans.factory.annotation.Autowired;
  20. import org.springframework.web.bind.annotation.*;
  21. import javax.servlet.http.HttpServletResponse;
  22. import java.util.*;
  23. @RestController
  24. @RequestMapping("/api/companyService/company")
  25. public class CompanyController {
  26. @Autowired
  27. private AccountService accountService;
  28. @Autowired
  29. private CompanyService companyService;
  30. @Autowired
  31. private PcSiteUserMapper pcSiteUserMapper;
  32. @Autowired
  33. private PcSiteMapper pcSiteMapper;
  34. @Autowired
  35. private DateUtils dateUtils;
  36. @ResponseBody
  37. @GetMapping("/getList")
  38. public BaseResponse<PageInfo<CompanyVo>> getList(@RequestParam("pageIndex") int pageIndex, @RequestParam("pageSize") int pageSize,
  39. @RequestParam(required = false) List<String> companyIDList, @RequestParam(required = false) String companyName,
  40. @RequestParam(required = false) String companyCode, @RequestParam(required = false) String recordStatus,
  41. @RequestParam(required = false) String regionCode, @RequestParam(required = false) String streetCode,
  42. @RequestParam(required = false) String createUserId, @RequestParam(required = false) String workTime) {
  43. PageInfo<CompanyVo> result = companyService.getList(pageIndex, pageSize, companyIDList, companyName, companyCode, recordStatus, regionCode, streetCode, createUserId, workTime);
  44. return RespGenerstor.success(result);
  45. }
  46. @ResponseBody
  47. @GetMapping("/getCompanyBySiteIDList")
  48. public BaseResponse<List<PcCompany>> getCompanyBySiteIDList(@RequestParam(required = false) String siteID) {
  49. return RespGenerstor.success(companyService.getCompanyBySiteIDList(siteID));
  50. }
  51. @GetMapping("/getCompanyByID")
  52. public BaseResponse<CompanyVo> getCompanyById(String id,String loginUserID) {
  53. var data = companyService.getDataById(id);
  54. if (data == null) {
  55. data = new CompanyVo();
  56. data.companyID = UUID.randomUUID().toString();
  57. data.recordStatus = 1;
  58. data.validDate = dateUtils.StrToDate("2099-12-31 00:00:00");
  59. data.establishmentTime = new Date();
  60. data.isShortage = 1;
  61. PcSiteUserExample siteUserExp = new PcSiteUserExample();
  62. PcSiteUserExample.Criteria siteUserCro = siteUserExp.createCriteria();
  63. siteUserCro.andUserIDEqualTo(loginUserID);
  64. //siteUserCro.andUserIDEqualTo(accountService.getLoginUserID());
  65. var curSiteUserInfo = pcSiteUserMapper.selectByExample(siteUserExp).stream().findFirst().orElse(null);
  66. if (curSiteUserInfo != null) {
  67. data.setSiteID(curSiteUserInfo.getSiteID());
  68. PcSiteExample siteExp = new PcSiteExample();
  69. PcSiteExample.Criteria siteCro = siteExp.createCriteria();
  70. siteCro.andSiteIDEqualTo(curSiteUserInfo.getSiteID());
  71. var curSiteInfo = pcSiteMapper.selectByExample(siteExp).stream().findFirst().orElse(null);
  72. if (curSiteInfo != null) {
  73. data.setRegionCode(curSiteInfo.getRegionCode());
  74. data.setStreetCode(curSiteInfo.getStreetCode());
  75. }
  76. }
  77. }
  78. return RespGenerstor.success(data);
  79. }
  80. @PostMapping("/save")
  81. public BaseResponse<Integer> save(@RequestBody CompanyVo data) {
  82. String loginUserID = data.loginUserID;
  83. try {
  84. loginUserID = accountService.getLoginUserID();
  85. }
  86. catch (Exception e){
  87. }
  88. var result = companyService.save(data, loginUserID);
  89. return RespGenerstor.success(result);
  90. }
  91. @ResponseBody
  92. @PostMapping("/delete")
  93. public BaseResponse<Integer> delete(@RequestBody List<String> ids) {
  94. var result = companyService.delete(ids);
  95. if (result <= 0) {
  96. throw new BaseException(BaseErrorEnum.DELETE_NOT_DATA_ERROR);
  97. }
  98. return RespGenerstor.success(result);
  99. }
  100. @GetMapping("/getSiteList")
  101. public BaseResponse getSiteList(){
  102. List<PcSite> siteList = companyService.getSiteList();
  103. return RespGenerstor.success(siteList);
  104. }
  105. @GetMapping("/export")
  106. public BaseResponse export(HttpServletResponse response, @RequestParam(required = false) Boolean isExport,
  107. @RequestParam("pageIndex") int pageIndex, @RequestParam("pageSize") Integer pageSize,
  108. @RequestParam(required = false) List<String> companyIDList, @RequestParam(required = false) String companyName,
  109. @RequestParam(required = false) String companyCode, @RequestParam(required = false) String recordStatus,
  110. @RequestParam(required = false) String regionCode, @RequestParam(required = false) String streetCode
  111. ) throws Exception {
  112. PageInfo<CompanyVo> result = companyService.getList(pageIndex, pageSize, companyIDList, companyName, companyCode, recordStatus, regionCode, streetCode, null, null);
  113. if (isExport == null || !isExport) {
  114. return RespGenerstor.success(result);
  115. } else {
  116. ExcelHelper excelHelper = new ExcelHelper();
  117. ExcelHelper.ExcelData data = excelHelper.new ExcelData();
  118. data.setTitles(Arrays.asList(new String[]{"序号", "企业名称", "所属县区", "所属街道", "统一信用代码", "企业状态", "参保人数", "企业规模", "当前岗位数量", "录入人", "录入时间"}));
  119. int i = 0;
  120. List<List<Object>> rowDatas = new ArrayList();
  121. for (CompanyVo item : result.getList()) {
  122. List<Object> row = new ArrayList();
  123. String recordName = item.recordStatus == 1 ? "在营" : "关闭";
  124. ++i;
  125. row.add(i);
  126. row.add(item.companyName);
  127. row.add(item.regionName);
  128. row.add(item.streetName);
  129. row.add(item.companyCode);
  130. row.add(recordName);
  131. row.add(item.insuredCount);
  132. row.add(item.companyModelType);
  133. row.add(item.postCount);
  134. row.add(item.createUserName);
  135. row.add(dateUtils.dateToStr(item.createTime));
  136. rowDatas.add(row);
  137. }
  138. data.setRows(rowDatas);
  139. excelHelper.exportExcel(response, data);
  140. return null;
  141. }
  142. }
  143. @PostMapping("/importCompany")
  144. public BaseResponse<Object> importCompany(@RequestBody List<CompanyVo> data) {
  145. List<CompanyVo> result = companyService.importCompany(data, accountService.getLoginUserID());
  146. if (result != null && result.size() > 0) {
  147. return RespGenerstor.fail(BaseErrorEnum.IMPORT_DATA_ERROR, result);
  148. } else {
  149. return RespGenerstor.success(true);
  150. }
  151. }
  152. @PostMapping("/saveAppCompanyPost")
  153. public BaseResponse saveAppCompanyPost(@RequestBody AppCompanyPostVo companyPostVo){
  154. var result = companyService.saveAppCompanyPost(companyPostVo, accountService.getLoginUserID());
  155. return RespGenerstor.success(result);
  156. }
  157. }