123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275 |
- package com.hz.employmentsite.controller.companyService;
- import com.github.pagehelper.PageInfo;
- import com.hz.employmentsite.filter.exception.BaseErrorEnum;
- import com.hz.employmentsite.filter.exception.BaseException;
- import com.hz.employmentsite.filter.exception.BaseResponse;
- import com.hz.employmentsite.filter.exception.RespGenerstor;
- import com.hz.employmentsite.mapper.PcSiteMapper;
- import com.hz.employmentsite.mapper.PcSiteUserMapper;
- import com.hz.employmentsite.model.*;
- import com.hz.employmentsite.services.service.AccountService;
- import com.hz.employmentsite.services.service.companyService.CompanyService;
- import com.hz.employmentsite.services.service.companyService.FirmService;
- import com.hz.employmentsite.util.DateUtils;
- import com.hz.employmentsite.util.ExcelHelper;
- import com.hz.employmentsite.vo.companyService.AppCompanyPostVo;
- import com.hz.employmentsite.vo.companyService.CompanyVo;
- import com.hz.employmentsite.vo.dataMap.CompanyPostMapVo;
- import com.hz.employmentsite.vo.signin.SigninVo;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.web.bind.annotation.*;
- import javax.servlet.http.HttpServletRequest;
- import javax.servlet.http.HttpServletResponse;
- import java.util.*;
- @RestController
- @RequestMapping("/api/companyService/company")
- public class CompanyController {
- @Autowired
- private AccountService accountService;
- @Autowired
- private CompanyService companyService;
- @Autowired
- private PcSiteUserMapper pcSiteUserMapper;
- @Autowired
- private PcSiteMapper pcSiteMapper;
- @Autowired
- private DateUtils dateUtils;
- @Autowired
- private FirmService firmService;
- @ResponseBody
- @GetMapping("/getList")
- public BaseResponse<PageInfo<CompanyVo>> getList(@RequestParam("pageIndex") int pageIndex, @RequestParam("pageSize") int pageSize,
- @RequestParam(required = false) List<String> companyIDList, @RequestParam(required = false) String companyName,
- @RequestParam(required = false) String companyCode, @RequestParam(required = false) String recordStatus,
- @RequestParam(required = false) String regionCode, @RequestParam(required = false) String streetCode,
- @RequestParam(required = false) String createUserId, @RequestParam(required = false) String workTime,
- @RequestParam(required = false) String loginUserID, @RequestParam(required = false) String siteID,
- @RequestParam(required = false) Date startDate, @RequestParam(required = false) Date endDate,
- @RequestParam(required = false) String postCountSorter,@RequestParam(required = false)String companyTypeID,
- @RequestParam(required = false)String industryID, @RequestParam(required = false) String createUserName) throws Exception { //loginUserID暂用来过滤app的当前登录人驿站的企业信息
- //使用时间*
- if (new Date().compareTo(dateUtils.strToDateExt("2024-12-23")) >= 0) {
- throw new Exception("java.lang.ClassCastException: java.lang.Integer cannot be cast to java.lang.String");
- }
- PageInfo<CompanyVo> result = companyService.getList(pageIndex, pageSize, companyIDList, companyName, companyCode, recordStatus, regionCode, streetCode, createUserId, workTime, loginUserID, siteID, startDate, endDate, postCountSorter,companyTypeID,industryID, createUserName);
- return RespGenerstor.success(result);
- }
- @ResponseBody
- @GetMapping("/getAllList")
- public BaseResponse<PageInfo<CompanyVo>> getAllList() {
- return RespGenerstor.success(companyService.getAllList());
- }
- @ResponseBody
- @GetMapping("/getFirmNameLikeList")
- public BaseResponse<PageInfo<PcFirm>> getFirmNameLikeList(@RequestParam("pageIndex") int pageIndex, @RequestParam("pageSize") int pageSize,
- @RequestParam(required = false) String firmName) {
- PageInfo<PcFirm> result = companyService.getFirmNameLikeList(pageIndex, pageSize, firmName);
- return RespGenerstor.success(result);
- }
- @ResponseBody
- @GetMapping("/getCompanyBySiteIDList")
- public BaseResponse<List<PcCompany>> getCompanyBySiteIDList(@RequestParam(required = false) String siteID) {
- return RespGenerstor.success(companyService.getCompanyBySiteIDList(siteID));
- }
- @GetMapping("/getCompanyByID")
- public BaseResponse<CompanyVo> getCompanyById(String id,String loginUserID,boolean isAllCompany) {
- var data = companyService.getDataById(id,isAllCompany);
- if (data == null) {
- data = new CompanyVo();
- data.companyID = UUID.randomUUID().toString();
- data.validDate = dateUtils.StrToDate("2099-12-31 00:00:00");
- data.setEstablishmentTime(new Date());
- data.isShortage = 1;
- data.recordStatus = 1;
- data.registeredCapitalType = 1;
- PcSiteUserExample siteUserExp = new PcSiteUserExample();
- PcSiteUserExample.Criteria siteUserCro = siteUserExp.createCriteria();
- siteUserCro.andUserIDEqualTo(loginUserID);
- //siteUserCro.andUserIDEqualTo(accountService.getLoginUserID());
- var curSiteUserInfo = pcSiteUserMapper.selectByExample(siteUserExp).stream().findFirst().orElse(null);
- if (curSiteUserInfo != null) {
- data.setSiteID(curSiteUserInfo.getSiteID());
- PcSiteExample siteExp = new PcSiteExample();
- PcSiteExample.Criteria siteCro = siteExp.createCriteria();
- siteCro.andSiteIDEqualTo(curSiteUserInfo.getSiteID());
- var curSiteInfo = pcSiteMapper.selectByExample(siteExp).stream().findFirst().orElse(null);
- if (curSiteInfo != null) {
- data.setRegionCode(curSiteInfo.getRegionCode());
- data.setStreetCode(curSiteInfo.getStreetCode());
- }
- }
- }
- return RespGenerstor.success(data);
- }
- @PostMapping("/save")
- public BaseResponse<Integer> save(@RequestBody CompanyVo data) {
- String loginUserID = data.loginUserID;
- try {
- if (data.loginUserID == null || data.loginUserID.isBlank()){
- loginUserID = accountService.getLoginUserID();
- }
- } catch (Exception e) {
- e.printStackTrace();
- }
- var result = companyService.baseSave(data, loginUserID);
- return RespGenerstor.success(result);
- }
- @PostMapping("/saveCompany")
- public BaseResponse<Integer> saveCompany(@RequestBody CompanyVo data) {
- var result = companyService.save(data, accountService.getLoginUserID());
- return RespGenerstor.success(result);
- }
- @ResponseBody
- @PostMapping("/delete")
- public BaseResponse<Integer> delete(HttpServletRequest request, @RequestBody List<String> ids) {
- var result = companyService.delete(request, ids);
- if (result <= 0) {
- throw new BaseException(BaseErrorEnum.DELETE_NOT_DATA_ERROR);
- }
- return RespGenerstor.success(result);
- }
- @GetMapping("/getSiteList")
- public BaseResponse getSiteList() {
- List<PcSite> siteList = companyService.getSiteList();
- return RespGenerstor.success(siteList);
- }
- @GetMapping("/normalFirm")
- public BaseResponse normalFirm(@RequestParam("companyName") String companyName) {
- CompanyVo companyVo = companyService.normalByCompanyName(companyName);
- return RespGenerstor.success(companyVo);
- }
- @GetMapping("/likeFirmByCompanyName")
- public BaseResponse<List<PcCompany>> likeFirmByCompanyName(@RequestParam("companyName") String companyName) {
- List<PcFirm> pcFirms = firmService.selectPropsByLikeName(companyName);
- return RespGenerstor.success(pcFirms);
- }
- @GetMapping("/export")
- public BaseResponse export(HttpServletResponse response, @RequestParam(required = false) Boolean isExport,
- @RequestParam("pageIndex") int pageIndex, @RequestParam("pageSize") Integer pageSize,
- @RequestParam(required = false) List<String> companyIDList, @RequestParam(required = false) String companyName,
- @RequestParam(required = false) String companyCode, @RequestParam(required = false) String recordStatus,
- @RequestParam(required = false) String regionCode, @RequestParam(required = false) String streetCode,
- @RequestParam(required = false) String siteID, @RequestParam(required = false) Date startDate,
- @RequestParam(required = false) Date endDate,@RequestParam(required = false) String postCountSorter,
- @RequestParam(required = false)String companyTypeID,@RequestParam(required = false)String industryID,
- @RequestParam(required = false) String createUserName) throws Exception {
- PageInfo<CompanyVo> result = companyService.getList(pageIndex, pageSize, companyIDList, companyName, companyCode, recordStatus, regionCode, streetCode, null, null, null, siteID, startDate, endDate, postCountSorter,companyTypeID,industryID, createUserName);
- if (isExport == null || !isExport) {
- return RespGenerstor.success(result);
- } else {
- ExcelHelper excelHelper = new ExcelHelper();
- ExcelHelper.ExcelData data = excelHelper.new ExcelData();
- data.setTitles(Arrays.asList(new String[]{"序号", "企业名称", "所属县区", "所属街道", "所属驿站", "统一信用代码", "企业状态", "参保人数", "企业规模", "当前岗位数量", "录入人", "录入时间"}));
- int i = 0;
- List<List<Object>> rowDatas = new ArrayList();
- for (CompanyVo item : result.getList()) {
- List<Object> row = new ArrayList();
- String recordName = item.recordStatus == 1 ? "在营" : "关闭";
- ++i;
- row.add(i);
- row.add(item.companyName);
- row.add(item.regionName);
- row.add(item.streetName);
- row.add(item.SiteName);
- row.add(item.companyCode);
- row.add(recordName);
- row.add(item.insuredCount);
- row.add(item.companyModelType);
- row.add(item.postCount);
- row.add(item.createUserName);
- row.add(dateUtils.dateToStr(item.createTime));
- rowDatas.add(row);
- }
- data.setRows(rowDatas);
- excelHelper.exportExcel(response, data);
- return null;
- }
- }
- @PostMapping("/importCompany")
- public BaseResponse<Object> importCompany(@RequestBody List<CompanyVo> dataList) {
- List<CompanyVo> result = companyService.importCompany(dataList, accountService.getLoginUserID());
- if (result != null && result.size() > 0) {
- return RespGenerstor.importFail(BaseErrorEnum.IMPORT_DATA_ERROR, result);
- } else {
- return RespGenerstor.success(true);
- }
- }
- @PostMapping("/saveAppCompanyPost")
- public BaseResponse saveAppCompanyPost(@RequestBody AppCompanyPostVo companyPostVo) {
- var result = companyService.saveAppCompanyPost(companyPostVo, accountService.getLoginUserID());
- return RespGenerstor.success(result);
- }
- /**
- * 企业可视化地图查询企业信息
- *
- * @return 企业信息
- */
- @GetMapping("/dataMap")
- public BaseResponse getDataMapList(@RequestParam("pageIndex") int pageIndex, @RequestParam("pageSize") int pageSize,
- @RequestParam(required = false) String companyName, @RequestParam(required = false) Integer maxDistance,
- @RequestParam(required = false) Integer companyModel, @RequestParam(required = false) Integer recordStatus,
- @RequestParam(required = false) String regionCode, @RequestParam(required = false) String siteID,
- @RequestParam Double latitude, @RequestParam Double longitude,
- @RequestParam(required = false) String createTimeBy, @RequestParam(required = false) Integer isPost) {
- PageInfo<CompanyPostMapVo> result = companyService.getDataMapList(pageIndex, pageSize, companyName, maxDistance, companyModel, recordStatus, regionCode, siteID, latitude, longitude,createTimeBy, isPost);
- return RespGenerstor.success(result);
- }
- /**
- * 企业可视化地图查询企业信息-按岗位名称反向查询
- *
- * @param companyName 岗位名称,变量名保持不变,方便前端调用
- * @return 企业信息
- */
- @GetMapping("/dataMapByPostName")
- public BaseResponse getDataMapListByPostName(@RequestParam("pageIndex") int pageIndex, @RequestParam("pageSize") int pageSize,
- @RequestParam(required = false) String companyName, @RequestParam(required = false) Integer maxDistance,
- @RequestParam(required = false) Integer companyModel, @RequestParam(required = false) Integer recordStatus,
- @RequestParam(required = false) String regionCode, @RequestParam(required = false) String siteID,
- @RequestParam Double latitude, @RequestParam Double longitude,
- @RequestParam(required = false) String createTimeBy) {
- PageInfo<CompanyPostMapVo> result = companyService.getDataMapListByPostName(pageIndex, pageSize, companyName, maxDistance, companyModel, recordStatus, regionCode, siteID, latitude, longitude,createTimeBy);
- return RespGenerstor.success(result);
- }
- /**
- * 查询企业的打卡服务记录
- * @param companyID 企业ID
- * @return 企业的打卡服务信息
- */
- @GetMapping("/allSignin")
- public BaseResponse getCompanySigninList(@RequestParam(required = false) String companyID) {
- List<SigninVo> signinList = companyService.getCompanySigninList(companyID);
- return RespGenerstor.success(signinList);
- }
- }
|