| | |
| | | import com.alibaba.fastjson.JSONObject; |
| | | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
| | | import lombok.AllArgsConstructor; |
| | | import org.springblade.core.tool.utils.StringUtil; |
| | | import org.springblade.modules.evaluate.entity.EvaluateTaskEntity; |
| | | import org.springblade.modules.evaluate.entity.EvaluateTaskSetEntity; |
| | | import org.springblade.modules.evaluate.service.IEvaluateCandidateService; |
| | | import org.springblade.modules.evaluate.service.IEvaluateTaskSetService; |
| | | import org.springblade.modules.evaluate.vo.EvaluateTaskVO; |
| | | import org.springblade.modules.evaluate.excel.EvaluateTaskExcel; |
| | | import org.springblade.modules.evaluate.mapper.EvaluateTaskMapper; |
| | | import org.springblade.modules.evaluate.service.IEvaluateTaskService; |
| | | import org.springblade.modules.evaluate.wrapper.EvaluateCandidateWrapper; |
| | | import org.springblade.modules.evaluate.wrapper.EvaluateTaskWrapper; |
| | | import org.springblade.modules.system.entity.Dept; |
| | | import org.springblade.modules.system.entity.User; |
| | | import org.springblade.modules.system.service.IDeptService; |
| | |
| | | |
| | | private final IDeptService deptService; |
| | | |
| | | private final IEvaluateCandidateService evaluateCandidateService; |
| | | |
| | | @Override |
| | | @Transactional |
| | | public boolean save(EvaluateTaskVO vo) { |
| | | Boolean ret = super.save(EvaluateTaskWrapper.build().entityPO(vo)); |
| | | if (ret) { |
| | | ret = evaluateCandidateService.saveBatch(vo.getCandidateEntities()); |
| | | } |
| | | return ret; |
| | | } |
| | | |
| | | @Override |
| | | @Transactional |
| | | public boolean updateById(EvaluateTaskVO vo) { |
| | | if (null == vo.getId()) |
| | | return false; |
| | | |
| | | Boolean ret = super.updateById(EvaluateTaskWrapper.build().entityPO(vo)); |
| | | if (ret) { |
| | | ret = evaluateCandidateService.saveOrUpdateBatch(vo.getCandidateEntities()); |
| | | } |
| | | return ret; |
| | | } |
| | | |
| | | @Override |
| | | public IPage<EvaluateTaskVO> selectEvaluateTaskPage(IPage<EvaluateTaskVO> page, EvaluateTaskVO evaluateTask) { |
| | | return page.setRecords(baseMapper.selectEvaluateTaskPage(page, evaluateTask)); |
| | |
| | | return evaluateTaskList; |
| | | } |
| | | |
| | | @Override |
| | | @Transactional |
| | | public boolean saveOrUpdate(EvaluateTaskEntity evaluateTask) { |
| | | boolean ret = super.saveOrUpdate(evaluateTask); |
| | | if (null == evaluateTask.getType()) // |
| | | return ret; |
| | | if (ret) { |
| | | //先删除 |
| | | QueryWrapper<EvaluateTaskSetEntity> queryWrapper = new QueryWrapper<>(); |
| | | queryWrapper.eq("evaluate_task_id", evaluateTask.getId()); |
| | | evaluateTaskSetService.remove(queryWrapper); |
| | | |
| | | |
| | | if (evaluateTask.getType() == 0) { //个人评优处理 |
| | | //保存 |
| | | JSONArray jsonArray = JSONArray.parseArray(JSONObject.toJSONString(evaluateTask.getCandidateNum())); |
| | | for (int i = 0; i < jsonArray.size(); i++) { |
| | | JSONObject obj = jsonArray.getJSONObject(i);//{"deptId":"1737282385453543425","deptName":"中国铜业","val":3,"users":[{"id":"1737304543567310850","name":"张二瑶"} |
| | | Long deptId = obj.getLong("deptId"); |
| | | String deptName = obj.getString("deptName"); |
| | | String val = obj.getString("val"); |
| | | JSONArray userJson = JSONArray.parseArray(JSONObject.toJSONString(obj.get("users"))); |
| | | for (int j = 0; j < userJson.size(); j++) { |
| | | EvaluateTaskSetEntity entityPO = new EvaluateTaskSetEntity(); |
| | | entityPO.setEvaluateTaskId(evaluateTask.getId()); |
| | | entityPO.setDeptId(deptId); |
| | | entityPO.setDeptName(deptName); |
| | | entityPO.setUserId(userJson.getJSONObject(j).getLong("id")); |
| | | entityPO.setUserName(userJson.getJSONObject(j).getString("name")); |
| | | entityPO.setEvaluateTaskName(evaluateTask.getTaskName()); |
| | | evaluateTaskSetService.save(entityPO); |
| | | } |
| | | if (userJson.size() == 0) { |
| | | QueryWrapper<User> userQueryWrapper = new QueryWrapper<>(); |
| | | userQueryWrapper.eq("dept_id", deptId); |
| | | List<User> userList = userService.list(userQueryWrapper); |
| | | for (User po: userList) { |
| | | EvaluateTaskSetEntity entityPO = new EvaluateTaskSetEntity(); |
| | | entityPO.setEvaluateTaskId(evaluateTask.getId()); |
| | | entityPO.setDeptId(deptId); |
| | | entityPO.setDeptName(deptName); |
| | | entityPO.setUserId(po.getId()); |
| | | entityPO.setUserName(po.getName()); |
| | | entityPO.setEvaluateTaskName(evaluateTask.getTaskName()); |
| | | evaluateTaskSetService.save(entityPO); |
| | | } |
| | | } |
| | | } |
| | | } else if (evaluateTask.getType() == 1){ //部门评优 |
| | | //获取所有部门保存 |
| | | List<Dept> list = deptService.list(); |
| | | for (Dept dept: list) { |
| | | EvaluateTaskSetEntity entityPO = new EvaluateTaskSetEntity(); |
| | | entityPO.setEvaluateTaskId(evaluateTask.getId()); |
| | | entityPO.setDeptId(dept.getId()); |
| | | entityPO.setDeptName(dept.getDeptName()); |
| | | entityPO.setType(1); |
| | | entityPO.setEvaluateTaskName(evaluateTask.getTaskName()); |
| | | evaluateTaskSetService.save(entityPO); |
| | | } |
| | | } |
| | | |
| | | } |
| | | return ret; |
| | | } |
| | | // @Override |
| | | // @Transactional |
| | | // public boolean saveOrUpdate(EvaluateTaskEntity evaluateTask) { |
| | | // boolean ret = super.saveOrUpdate(evaluateTask); |
| | | // if (null == evaluateTask.getType()) // |
| | | // return ret; |
| | | // if (ret) { |
| | | // //先删除 |
| | | // QueryWrapper<EvaluateTaskSetEntity> queryWrapper = new QueryWrapper<>(); |
| | | // queryWrapper.eq("evaluate_task_id", evaluateTask.getId()); |
| | | // evaluateTaskSetService.remove(queryWrapper); |
| | | // |
| | | // |
| | | // if (evaluateTask.getType() == 0) { //个人评优处理 |
| | | // //保存 |
| | | // JSONArray jsonArray = JSONArray.parseArray(JSONObject.toJSONString(evaluateTask.getCandidateNum())); |
| | | // for (int i = 0; i < jsonArray.size(); i++) { |
| | | // JSONObject obj = jsonArray.getJSONObject(i);//{"deptId":"1737282385453543425","deptName":"中国铜业","val":3,"users":[{"id":"1737304543567310850","name":"张二瑶"} |
| | | // Long deptId = obj.getLong("deptId"); |
| | | // String deptName = obj.getString("deptName"); |
| | | // String val = obj.getString("val"); |
| | | // JSONArray userJson = JSONArray.parseArray(JSONObject.toJSONString(obj.get("users"))); |
| | | // for (int j = 0; j < userJson.size(); j++) { |
| | | // EvaluateTaskSetEntity entityPO = new EvaluateTaskSetEntity(); |
| | | // entityPO.setEvaluateTaskId(evaluateTask.getId()); |
| | | // entityPO.setDeptId(deptId); |
| | | // entityPO.setDeptName(deptName); |
| | | // entityPO.setUserId(userJson.getJSONObject(j).getLong("id")); |
| | | // entityPO.setUserName(userJson.getJSONObject(j).getString("name")); |
| | | // entityPO.setEvaluateTaskName(evaluateTask.getTaskName()); |
| | | // evaluateTaskSetService.save(entityPO); |
| | | // } |
| | | // if (userJson.size() == 0) { |
| | | // QueryWrapper<User> userQueryWrapper = new QueryWrapper<>(); |
| | | // userQueryWrapper.eq("dept_id", deptId); |
| | | // List<User> userList = userService.list(userQueryWrapper); |
| | | // for (User po: userList) { |
| | | // EvaluateTaskSetEntity entityPO = new EvaluateTaskSetEntity(); |
| | | // entityPO.setEvaluateTaskId(evaluateTask.getId()); |
| | | // entityPO.setDeptId(deptId); |
| | | // entityPO.setDeptName(deptName); |
| | | // entityPO.setUserId(po.getId()); |
| | | // entityPO.setUserName(po.getName()); |
| | | // entityPO.setEvaluateTaskName(evaluateTask.getTaskName()); |
| | | // evaluateTaskSetService.save(entityPO); |
| | | // } |
| | | // } |
| | | // } |
| | | // } else if (evaluateTask.getType() == 1){ //部门评优 |
| | | // //获取所有部门保存 |
| | | // List<Dept> list = deptService.list(); |
| | | // for (Dept dept: list) { |
| | | // EvaluateTaskSetEntity entityPO = new EvaluateTaskSetEntity(); |
| | | // entityPO.setEvaluateTaskId(evaluateTask.getId()); |
| | | // entityPO.setDeptId(dept.getId()); |
| | | // entityPO.setDeptName(dept.getDeptName()); |
| | | // entityPO.setType(1); |
| | | // entityPO.setEvaluateTaskName(evaluateTask.getTaskName()); |
| | | // evaluateTaskSetService.save(entityPO); |
| | | // } |
| | | // } |
| | | // |
| | | // } |
| | | // return ret; |
| | | // } |
| | | @Override |
| | | @Transactional |
| | | public boolean deleteLogic(List<Long> ids) { |