diff --git a/src/main/java/com/bonus/gzcar/business/backstage/controller/CarDriverController.java b/src/main/java/com/bonus/gzcar/business/backstage/controller/CarDriverController.java index b6a9147..5778ead 100644 --- a/src/main/java/com/bonus/gzcar/business/backstage/controller/CarDriverController.java +++ b/src/main/java/com/bonus/gzcar/business/backstage/controller/CarDriverController.java @@ -6,6 +6,7 @@ import cn.afterturn.easypoi.excel.entity.enmus.ExcelType; import com.bonus.gzcar.business.backstage.entity.CarCarVo; import com.bonus.gzcar.business.backstage.entity.CarContractSupCarExportVo; import com.bonus.gzcar.business.backstage.entity.CarDriverVo; +import com.bonus.gzcar.business.backstage.entity.CarNeedPlanVo; import com.bonus.gzcar.business.backstage.service.CarDriverService; import com.bonus.gzcar.business.utils.ExportExcelUtil; import com.bonus.gzcar.manager.annotation.DecryptAndVerify; @@ -66,6 +67,19 @@ public class CarDriverController { return pageInfo; } + /** + * 驾驶员关联需求计划 + * @param dto + * @return + */ + @GetMapping("getRePlan") + @DecryptAndVerify(decryptedClass = CarNeedPlanVo.class) + public PageInfo getRePlan(EncryptedReq dto) { + PageHelper.startPage(dto.getPageNum(),dto.getPageSize()); + List list = service.getRePlan(dto.getData());; + return new PageInfo<>(list); + } + /** * 导出需求计划 * @param diff --git a/src/main/java/com/bonus/gzcar/business/backstage/entity/CarDriverVo.java b/src/main/java/com/bonus/gzcar/business/backstage/entity/CarDriverVo.java index c8dec8f..1e72657 100644 --- a/src/main/java/com/bonus/gzcar/business/backstage/entity/CarDriverVo.java +++ b/src/main/java/com/bonus/gzcar/business/backstage/entity/CarDriverVo.java @@ -67,4 +67,9 @@ public class CarDriverVo extends ParentVo { */ private String delTypes; + /** + * 数量 + */ + private int num; + } diff --git a/src/main/java/com/bonus/gzcar/business/backstage/mapper/CarDriverMapper.java b/src/main/java/com/bonus/gzcar/business/backstage/mapper/CarDriverMapper.java index a66f8a6..52964b5 100644 --- a/src/main/java/com/bonus/gzcar/business/backstage/mapper/CarDriverMapper.java +++ b/src/main/java/com/bonus/gzcar/business/backstage/mapper/CarDriverMapper.java @@ -1,6 +1,7 @@ package com.bonus.gzcar.business.backstage.mapper; import com.bonus.gzcar.business.backstage.entity.CarDriverVo; +import com.bonus.gzcar.business.backstage.entity.CarNeedPlanVo; import org.springframework.stereotype.Repository; import java.util.List; @@ -59,4 +60,10 @@ public interface CarDriverMapper { */ List getDriverListBySup(CarDriverVo data); + /** + * 驾驶员关联需求计划 + * @param data + * @return + */ + List getRePlan(CarNeedPlanVo data); } diff --git a/src/main/java/com/bonus/gzcar/business/backstage/mapper/DispatchCarMapper.java b/src/main/java/com/bonus/gzcar/business/backstage/mapper/DispatchCarMapper.java index f905f52..f2cb9f9 100644 --- a/src/main/java/com/bonus/gzcar/business/backstage/mapper/DispatchCarMapper.java +++ b/src/main/java/com/bonus/gzcar/business/backstage/mapper/DispatchCarMapper.java @@ -164,4 +164,11 @@ public interface DispatchCarMapper { * @param data */ void updatePlanData(CarNeedPlanVo data); + + /** + * 查询审核记录 + * @param data + * @return + */ + List getAuditListNew(CarPlanOutVo data); } diff --git a/src/main/java/com/bonus/gzcar/business/backstage/service/CarDriverService.java b/src/main/java/com/bonus/gzcar/business/backstage/service/CarDriverService.java index 75e398c..2eaf78c 100644 --- a/src/main/java/com/bonus/gzcar/business/backstage/service/CarDriverService.java +++ b/src/main/java/com/bonus/gzcar/business/backstage/service/CarDriverService.java @@ -2,6 +2,7 @@ package com.bonus.gzcar.business.backstage.service; import com.bonus.gzcar.business.backstage.entity.CarDriverVo; +import com.bonus.gzcar.business.backstage.entity.CarNeedPlanVo; import com.bonus.gzcar.manager.webResult.ServerResponse; import org.springframework.web.multipart.MultipartFile; @@ -70,4 +71,10 @@ public interface CarDriverService { */ ServerResponse getDriverImageList(CarDriverVo data); + /** + * 驾驶员关联需求计划 + * @param data + * @return + */ + List getRePlan(CarNeedPlanVo data); } diff --git a/src/main/java/com/bonus/gzcar/business/backstage/service/CarDriverServiceImpl.java b/src/main/java/com/bonus/gzcar/business/backstage/service/CarDriverServiceImpl.java index 7c690a3..8aa1d72 100644 --- a/src/main/java/com/bonus/gzcar/business/backstage/service/CarDriverServiceImpl.java +++ b/src/main/java/com/bonus/gzcar/business/backstage/service/CarDriverServiceImpl.java @@ -4,6 +4,7 @@ import cn.afterturn.easypoi.cache.manager.IFileLoader; import com.alibaba.fastjson.JSON; import com.bonus.gzcar.business.backstage.entity.CarCarVo; import com.bonus.gzcar.business.backstage.entity.CarDriverVo; +import com.bonus.gzcar.business.backstage.entity.CarNeedPlanVo; import com.bonus.gzcar.business.backstage.mapper.CarDriverMapper; import com.bonus.gzcar.business.system.entity.FileUploadVo; import com.bonus.gzcar.business.system.service.FileUploadService; @@ -362,5 +363,15 @@ public class CarDriverServiceImpl implements CarDriverService{ return ServerResponse.createSuccess(list); } + @Override + public List getRePlan(CarNeedPlanVo data) { + try{ + return mapper.getRePlan(data); + }catch (Exception e){ + log.error(e.toString(),e); + } + return new ArrayList<>(); + } + } diff --git a/src/main/java/com/bonus/gzcar/business/backstage/service/DispatchCarServiceImpl.java b/src/main/java/com/bonus/gzcar/business/backstage/service/DispatchCarServiceImpl.java index ea9bc44..ab5d413 100644 --- a/src/main/java/com/bonus/gzcar/business/backstage/service/DispatchCarServiceImpl.java +++ b/src/main/java/com/bonus/gzcar/business/backstage/service/DispatchCarServiceImpl.java @@ -11,6 +11,8 @@ import com.bonus.gzcar.business.utils.ListHelpUtil; import com.bonus.gzcar.manager.common.util.DateTimeHelper; import com.bonus.gzcar.manager.common.util.RedisService; import com.bonus.gzcar.manager.common.util.StringHelper; +import com.bonus.gzcar.manager.common.util.UserUtil; +import com.bonus.gzcar.manager.security.entity.SelfUserEntity; import com.bonus.gzcar.manager.webResult.ServerResponse; import com.google.common.collect.Maps; import lombok.extern.slf4j.Slf4j; @@ -239,54 +241,83 @@ public class DispatchCarServiceImpl implements DispatchCarService{ * 车辆配送=-审核 * @param data * @return + * 2025-05-16增加分管领导审核 */ @Override public ServerResponse dispatchAudit(CarPlanOutVo data) { - try{ - String status=data.getStatus(); - String remark=data.getRemark(); - CarPlanOutVo vo=mapper.getCarPlanOut(data); - if(!"0".equals(vo.getStatus())){ - return ServerResponse.createErroe("该计划已被审核,请刷新后重试"); - - } - CarNeedPlanVo carNeedPlanVo=mapper.getPlanInfo(data); - //审核驳回 - if("2".equals(status)){ - int num= mapper.updateDispatchData(data); - if(num>0){ - List list=mapper.getAuditList(data); - if(ListHelpUtil.isEmpty(list)){ - carNeedPlanVo.setStatus(2); - }else{ - carNeedPlanVo.setStatus(0); + try { + //获取用户信息 + SelfUserEntity loginUser = UserUtil.getLoginUser(); + String status = data.getStatus(); + String remark = data.getRemark(); + CarPlanOutVo vo = mapper.getCarPlanOut(data); + CarNeedPlanVo carNeedPlanVo = mapper.getPlanInfo(data); + if ("娄强".equals(loginUser.getRoleName())) { + if (!"3".equals(vo.getStatus())) { + return ServerResponse.createErroe("还未到您审核,请刷新后重试"); + } else { + if ("2".equals(status)) { + //驳回 + int num = mapper.updateDispatchData(data); + if (num > 0) { + List list = mapper.getAuditList(data); + if (ListHelpUtil.isEmpty(list)) { + carNeedPlanVo.setStatus(2); + } else { + carNeedPlanVo.setStatus(0); + } + //更新计划状态 + mapper.updatePlanInfo(carNeedPlanVo); + } + } else { + //通过 + int num = mapper.updateDispatchData(data); + if (num > 0) { + List list = mapper.getAuditList(data); + int dispatchNum = carNeedPlanVo.getDispatchNum(); + carNeedPlanVo.setDispatchDay(DateTimeHelper.getNowDay()); + carNeedPlanVo.setDispatchNum(dispatchNum + vo.getDispatchNum()); + if (ListHelpUtil.isEmpty(list)) { + carNeedPlanVo.setStatus(1); + } else { + carNeedPlanVo.setStatus(2); + } + //更新计划信息 + mapper.updateCarPlanInfo(carNeedPlanVo); + } } - //更新计划状态 - mapper.updatePlanInfo(carNeedPlanVo); } - }else{ - int num= mapper.updateDispatchData(data); - if(num>0){ - List list=mapper.getAuditList(data); - int dispatchNum=carNeedPlanVo.getDispatchNum(); - carNeedPlanVo.setDispatchDay(DateTimeHelper.getNowDay()); - carNeedPlanVo.setDispatchNum(dispatchNum+vo.getDispatchNum()); - if(ListHelpUtil.isEmpty(list)){ - carNeedPlanVo.setStatus(1); - }else{ - carNeedPlanVo.setStatus(2); + } else { + if (!"0".equals(vo.getStatus())) { + return ServerResponse.createErroe("待分管领导审核,请刷新后重试"); + } else { + if ("2".equals(status)) { + //驳回 + int num = mapper.updateDispatchData(data); + if (num > 0) { + List list = mapper.getAuditList(data); + if (ListHelpUtil.isEmpty(list)) { + carNeedPlanVo.setStatus(2); + } else { + carNeedPlanVo.setStatus(0); + } + //更新计划状态 + mapper.updatePlanInfo(carNeedPlanVo); + } + } else { + //通过,只修改状态 + data.setStatus("3"); + int num = mapper.updateDispatchData(data); } - //更新计划信息 - mapper.updateCarPlanInfo(carNeedPlanVo); } } - String uptime=recordService.getUpTimes("out-"+data.getId(),Integer.parseInt(status)); - recordService.addRecord("out-"+data.getId(),status,"2","3",remark,uptime); - return ServerResponse.createBySuccessMsg("审核成功"); - }catch (Exception e){ - log.error(e.toString(),e); + String uptime = recordService.getUpTimes("out-" + data.getId(), Integer.parseInt(status)); + recordService.addRecord("out-" + data.getId(), status, "2", "3", remark, uptime); + return ServerResponse.createBySuccessMsg("审核成功"); + } catch (Exception e) { + log.error(e.toString(), e); } - return ServerResponse.createErroe("审核失败,请稍后重试"); + return ServerResponse.createErroe("审核失败,请稍后重试"); } @@ -297,7 +328,7 @@ public class DispatchCarServiceImpl implements DispatchCarService{ @Override public ServerResponse getAuditList(CarPlanOutVo data) { try{ - List list=mapper.getAuditList(data); + List list=mapper.getAuditListNew(data); return ServerResponse.createSuccess(list); }catch (Exception e){ log.error(e.toString(),e); diff --git a/src/main/java/com/bonus/gzcar/manager/core/entity/SysUserEntity.java b/src/main/java/com/bonus/gzcar/manager/core/entity/SysUserEntity.java index 97b2f57..f8d1e46 100644 --- a/src/main/java/com/bonus/gzcar/manager/core/entity/SysUserEntity.java +++ b/src/main/java/com/bonus/gzcar/manager/core/entity/SysUserEntity.java @@ -43,6 +43,11 @@ public class SysUserEntity implements Serializable { */ private String roleId; + /** + * 角色名 + */ + private String roleName; + private String companyId; private String salt; diff --git a/src/main/java/com/bonus/gzcar/manager/core/entity/UserVo.java b/src/main/java/com/bonus/gzcar/manager/core/entity/UserVo.java index a8696b4..4aef66e 100644 --- a/src/main/java/com/bonus/gzcar/manager/core/entity/UserVo.java +++ b/src/main/java/com/bonus/gzcar/manager/core/entity/UserVo.java @@ -37,6 +37,11 @@ public class UserVo { */ private String roleId; + /** + * 角色名 + */ + private String roleName; + /** * 是否首次登录 */ diff --git a/src/main/java/com/bonus/gzcar/manager/security/entity/SelfUserEntity.java b/src/main/java/com/bonus/gzcar/manager/security/entity/SelfUserEntity.java index 15ada0d..d738410 100644 --- a/src/main/java/com/bonus/gzcar/manager/security/entity/SelfUserEntity.java +++ b/src/main/java/com/bonus/gzcar/manager/security/entity/SelfUserEntity.java @@ -45,6 +45,11 @@ public class SelfUserEntity implements Serializable, UserDetails { */ private String roleId; + /** + * 角色名 + */ + private String roleName; + /** * 状态:NORMAL正常 PROHIBIT禁用 */ diff --git a/src/main/java/com/bonus/gzcar/manager/security/handler/UserLoginSuccessHandler.java b/src/main/java/com/bonus/gzcar/manager/security/handler/UserLoginSuccessHandler.java index 0aa8837..b1293f3 100644 --- a/src/main/java/com/bonus/gzcar/manager/security/handler/UserLoginSuccessHandler.java +++ b/src/main/java/com/bonus/gzcar/manager/security/handler/UserLoginSuccessHandler.java @@ -41,6 +41,7 @@ public class UserLoginSuccessHandler implements AuthenticationSuccessHandler { BeanUtils.copyProperties(loginUser, userVo); userVo.setId(loginUser.getUserId()); userVo.setRoleId(loginUser.getRoleId()); + userVo.setRoleName(loginUser.getRoleName()); userVo.setOrgId(loginUser.getOrgId()); userVo.setCompanyId(loginUser.getCompanyId()); Map map = new HashMap<>(2); diff --git a/src/main/resources/mappers/business/backstage/CarDriverMapper.xml b/src/main/resources/mappers/business/backstage/CarDriverMapper.xml index b830813..f9a7068 100644 --- a/src/main/resources/mappers/business/backstage/CarDriverMapper.xml +++ b/src/main/resources/mappers/business/backstage/CarDriverMapper.xml @@ -47,32 +47,41 @@ ORDER BY cdi.create_time desc + + \ No newline at end of file diff --git a/src/main/resources/mappers/business/backstage/DispatchCarMapper.xml b/src/main/resources/mappers/business/backstage/DispatchCarMapper.xml index 96473af..a8e1444 100644 --- a/src/main/resources/mappers/business/backstage/DispatchCarMapper.xml +++ b/src/main/resources/mappers/business/backstage/DispatchCarMapper.xml @@ -170,6 +170,11 @@ FROM car_plan_out WHERE status=0 AND apply_id=#{planId} + - \ No newline at end of file diff --git a/src/main/resources/mappers/user/SysUserMapper.xml b/src/main/resources/mappers/user/SysUserMapper.xml index 058c218..1cc835e 100644 --- a/src/main/resources/mappers/user/SysUserMapper.xml +++ b/src/main/resources/mappers/user/SysUserMapper.xml @@ -4,14 +4,18 @@ \ No newline at end of file