diff --git a/src/main/java/com/zhgd/xmgl/modules/worker/controller/ProjectWorkerApiController.java b/src/main/java/com/zhgd/xmgl/modules/worker/controller/ProjectWorkerApiController.java index 0c4ba5a00..1a530dc1c 100644 --- a/src/main/java/com/zhgd/xmgl/modules/worker/controller/ProjectWorkerApiController.java +++ b/src/main/java/com/zhgd/xmgl/modules/worker/controller/ProjectWorkerApiController.java @@ -511,14 +511,14 @@ public class ProjectWorkerApiController { @PostMapping(value = "/delGroup") public Map delGroup(@RequestBody Map map) { log.info("delGroup:{}",JSON.toJSONString(map)); - Map resultMap = new HashMap<>(); try { + teamInfoService.delGroup(map); resultMap.put("msg", "操作成功"); resultMap.put("status", "1"); } catch (Exception e) { - e.printStackTrace(); - resultMap.put("msg", "操作失败"); + log.info("err:", e); + resultMap.put("msg", e.getMessage()); resultMap.put("status", "0"); } return resultMap; @@ -574,14 +574,14 @@ public class ProjectWorkerApiController { @PostMapping(value = "/delCompany") public Map delCompany(@RequestBody Map map) { log.info("delCompany:{}",JSON.toJSONString(map)); - Map resultMap = new HashMap<>(); try { + enterpriseInfoService.delCompany(map); resultMap.put("msg", "操作成功"); resultMap.put("status", "1"); } catch (Exception e) { - e.printStackTrace(); - resultMap.put("msg", "操作失败"); + log.info("err:", e); + resultMap.put("msg", e.getMessage()); resultMap.put("status", "0"); } return resultMap; diff --git a/src/main/java/com/zhgd/xmgl/modules/worker/service/IEnterpriseInfoService.java b/src/main/java/com/zhgd/xmgl/modules/worker/service/IEnterpriseInfoService.java index f79c244d5..6051826d3 100644 --- a/src/main/java/com/zhgd/xmgl/modules/worker/service/IEnterpriseInfoService.java +++ b/src/main/java/com/zhgd/xmgl/modules/worker/service/IEnterpriseInfoService.java @@ -46,4 +46,6 @@ public interface IEnterpriseInfoService extends IService { Result deleteSj(SjEnterpriseInfo enterpriseInfo); IPage getEnterpriseInfoPage(Map map); + + void delCompany(Map map); } diff --git a/src/main/java/com/zhgd/xmgl/modules/worker/service/ITeamInfoService.java b/src/main/java/com/zhgd/xmgl/modules/worker/service/ITeamInfoService.java index 524109197..d7dc19716 100644 --- a/src/main/java/com/zhgd/xmgl/modules/worker/service/ITeamInfoService.java +++ b/src/main/java/com/zhgd/xmgl/modules/worker/service/ITeamInfoService.java @@ -35,4 +35,6 @@ public interface ITeamInfoService extends IService { Map getGroup(Map map); Map modGroup(ModGroupDto dto); + + void delGroup(Map map); } diff --git a/src/main/java/com/zhgd/xmgl/modules/worker/service/impl/EnterpriseInfoServiceImpl.java b/src/main/java/com/zhgd/xmgl/modules/worker/service/impl/EnterpriseInfoServiceImpl.java index 2ec40697c..855f2914a 100644 --- a/src/main/java/com/zhgd/xmgl/modules/worker/service/impl/EnterpriseInfoServiceImpl.java +++ b/src/main/java/com/zhgd/xmgl/modules/worker/service/impl/EnterpriseInfoServiceImpl.java @@ -277,6 +277,31 @@ public class EnterpriseInfoServiceImpl extends ServiceImpl map) { + EnterpriseInfo enterpriseInfo = enterpriseInfoMapper.selectOne(new LambdaQueryWrapper() + .eq(EnterpriseInfo::getSocialCode, MapUtils.getString(map, "socialCode"))); + if (enterpriseInfo == null) { + return; + } + QueryWrapper wrapper = new QueryWrapper<>(); + Long enterpriseId = enterpriseInfo.getId(); + wrapper.lambda().eq(TeamInfo::getEnterpriseId, enterpriseId); + int count = teamInfoMapper.selectCount(wrapper); + if (count > 0) { + throw new OpenAlertException(MessageUtil.get("notDeleteEnterpriseErr")); + } + + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.lambda().eq(ProjectEnterprise::getEnterpriseId, enterpriseId); + List projectEnterprises = projectEnterpriseMapper.selectList(queryWrapper); + for (ProjectEnterprise projectEnterprise : projectEnterprises) { + //projectEnterpriseMapper.delete(queryWrapper); + projectEnterpriseMapper.deleteById(projectEnterprise.getId()); + asyncWorker.removeEnterpriseInfo(projectEnterprise); + } + } + private EnterpriseInfo getEnterpriseInfo(SjEnterpriseInfo e, String projectSn) { EnterpriseInfo enterpriseInfo = new EnterpriseInfo(); enterpriseInfo.setId(e.getId()); diff --git a/src/main/java/com/zhgd/xmgl/modules/worker/service/impl/TeamInfoServiceImpl.java b/src/main/java/com/zhgd/xmgl/modules/worker/service/impl/TeamInfoServiceImpl.java index 93b73b9b9..612648b83 100644 --- a/src/main/java/com/zhgd/xmgl/modules/worker/service/impl/TeamInfoServiceImpl.java +++ b/src/main/java/com/zhgd/xmgl/modules/worker/service/impl/TeamInfoServiceImpl.java @@ -18,6 +18,7 @@ import com.zhgd.xmgl.modules.worker.mapper.TeamInfoMapper; import com.zhgd.xmgl.modules.worker.mapper.WorkerInfoMapper; import com.zhgd.xmgl.modules.worker.service.ITeamInfoService; import com.zhgd.xmgl.util.MessageUtil; +import org.apache.commons.collections.MapUtils; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -214,4 +215,24 @@ socialCode 班组所属的劳务公司统一社会信用代码 string 是 } return resultMap; } + + @Override + public void delGroup(Map map) { + String projectCode = MapUtils.getString(map, "projectCode"); + String groupName = MapUtils.getString(map, "groupName"); + TeamInfo teamInfo = teamInfoMapper.selectOne(new LambdaQueryWrapper() + .eq(TeamInfo::getProjectSn, projectCode) + .eq(TeamInfo::getTeamName, groupName)); + if (teamInfo == null) { + throw new OpenAlertException(MessageUtil.get("notFindErr")); + } + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.lambda().eq(WorkerInfo::getProjectSn, teamInfo.getProjectSn()) + .eq(WorkerInfo::getTeamId, teamInfo.getId()); + int count = workerInfoMapper.selectCount(queryWrapper); + if (count > 0) { + throw new OpenAlertException(MessageUtil.get("notDeleteTeamErr")); + } + teamInfoMapper.deleteById(teamInfo.getId()); + } }