工序接口修改

This commit is contained in:
lym
2024-03-07 18:32:53 +08:00
parent 3c96aa94f8
commit cb576a6651
13 changed files with 289 additions and 53 deletions
@@ -201,5 +201,7 @@ public interface ErrorCodeConstants {
//=========== 板材信息 1-002-033-000 ============
ErrorCode REMAIN_PLATE_NOT_EXISTS = new ErrorCode(1_002_032_002, "板材不存在");
//=========== 板材信息 1-002-034-000 ============
ErrorCode PROCESS_USER_NOT_EXISTS = new ErrorCode(1_002_032_002, "工序用户不存在");
}
@@ -51,7 +51,7 @@ public class ProcessController {
@PutMapping("/update")
@Operation(summary = "更新工序信息")
@PreAuthorize("@ss.hasPermission('system:process:update')")
public CommonResult<Boolean> updateProcess(@Valid @RequestBody ProcessSaveReqVO updateReqVO) {
public CommonResult<Boolean> updateProcess(@Valid @RequestBody ProcessUserSaveReqVO updateReqVO) {
processService.updateProcess(updateReqVO);
return success(true);
}
@@ -69,9 +69,9 @@ public class ProcessController {
@Operation(summary = "获得工序信息")
@Parameter(name = "id", description = "编号", required = true, example = "1024")
@PreAuthorize("@ss.hasPermission('system:process:query')")
public CommonResult<ProcessRespVO> getProcess(@RequestParam("id") Long id) {
ProcessDO process = processService.getProcess(id);
return success(BeanUtils.toBean(process, ProcessRespVO.class));
public CommonResult<ProcessUserRespVO> getProcess(@RequestParam("id") Long id) {
ProcessUserRespVO processUser = processService.getProcess(id);
return success(BeanUtils.toBean(processUser, ProcessUserRespVO.class));
}
@GetMapping("/page")
@@ -0,0 +1,80 @@
package com.cf.imes.module.system.controller.admin.process.vo.process;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.time.LocalDateTime;
/**
* @projectName: cf_imes_server
* @author: 晨丰科技
* @date: 2024/3/7 11:39
*/
@Schema(description = "管理后台 - 工序信息表 process Response VO")
@Data
@ExcelIgnoreUnannotated
public class ProcessUserRespVO {
@Schema(description = "工序 ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "20453")
@ExcelProperty("工序 ID")
private Long id;
@Schema(description = "工序名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "张三")
@ExcelProperty("工序名称")
private String name;
@Schema(description = "计件工资", requiredMode = Schema.RequiredMode.REQUIRED)
@ExcelProperty("计件工资")
private Double pieceRate;
@Schema(description = "计件类型:1 数量 2 长度 3 平方 4 宽 5 高 6 体积 7 生产单金额百分比", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
@ExcelProperty("计件类型:1 数量 2 长度 3 平方 4 宽 5 高 6 体积 7 生产单金额百分比")
private Integer pieceType;
@Schema(description = "工序类型:0 全部加工 1 开料 2 部件加工 3 异形封边 4 分堆 5 打包 6 出库 7 组件加工 8 板材", requiredMode = Schema.RequiredMode.REQUIRED, example = "2")
@ExcelProperty("工序类型:0 全部加工 1 开料 2 部件加工 3 异形封边 4 分堆 5 打包 6 出库 7 组件加工 8 板材")
private Integer type;
@Schema(description = "是否推送终端客户:0 否 1 是", requiredMode = Schema.RequiredMode.REQUIRED)
@ExcelProperty("是否推送终端客户:0 否 1 是")
private Boolean isCustom;
@Schema(description = "是否推送经销商:0 否 1 是", requiredMode = Schema.RequiredMode.REQUIRED)
@ExcelProperty("是否推送经销商:0 否 1 是")
private Boolean isDealer;
@Schema(description = "排序优先级", requiredMode = Schema.RequiredMode.REQUIRED)
@ExcelProperty("排序优先级")
private Short sort;
@Schema(description = "小时产量", requiredMode = Schema.RequiredMode.REQUIRED)
@ExcelProperty("小时产量")
private Double hourCapacity;
@Schema(description = "单位", requiredMode = Schema.RequiredMode.REQUIRED)
@ExcelProperty("单位")
private String unit;
@Schema(description = "是否启用:0 否 1 是", requiredMode = Schema.RequiredMode.REQUIRED)
@ExcelProperty("是否启用:0 否 1 是")
private Boolean isEnabled;
@Schema(description = "准备时间", requiredMode = Schema.RequiredMode.REQUIRED)
@ExcelProperty("准备时间")
private Double prepareTime;
@Schema(description = "描述", requiredMode = Schema.RequiredMode.REQUIRED, example = "随便")
@ExcelProperty("描述")
private String description;
@Schema(description = "用户ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "12,13")
@ExcelProperty("用户ID")
private String Users;
@Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED)
@ExcelProperty("创建时间")
private LocalDateTime createTime;
}
@@ -62,8 +62,7 @@ public class ProcessUserSaveReqVO {
@NotEmpty(message = "描述不能为空")
private String description;
@Schema(description = "用户ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "你说的对")
@NotEmpty(message = "用户ID不能为空")
@Schema(description = "用户ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "12,13")
private String Users;
}
@@ -4,17 +4,23 @@ import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import com.alibaba.excel.annotation.*;
import java.time.LocalDateTime;
@Schema(description = "管理后台 - 工序用户表 process_user Response VO")
@Data
@ExcelIgnoreUnannotated
public class ProcessUserRespVO {
public class ProcessAndUserRespVO {
@Schema(description = "工序 ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "22658")
@Schema(description = "工序 ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "9416")
@ExcelProperty("工序 ID")
private Long processId;
@Schema(description = "用户 ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "11525")
@Schema(description = "用户 ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "24517")
@ExcelProperty("用户 ID")
private Long userId;
@Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED)
@ExcelProperty("创建时间")
private LocalDateTime createTime;
}
@@ -2,18 +2,18 @@ package com.cf.imes.module.system.controller.admin.process.vo.processUser;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import javax.validation.constraints.NotNull;
@Schema(description = "管理后台 - 工序用户表 process_user新增/修改 Request VO")
@Data
public class ProcessUserSaveReqVO {
public class ProcessAndUserSaveReqVO {
@Schema(description = "组织 ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "24616")
private Long organId;
@Schema(description = "工序 ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "22658")
@Schema(description = "工序 ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "9416")
@NotNull(message = "工序 ID不能为空")
private Long processId;
@Schema(description = "用户 ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "11525")
@Schema(description = "用户 ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "24517")
@NotNull(message = "用户 ID不能为空")
private Long userId;
}
@@ -1,13 +0,0 @@
package com.cf.imes.module.system.controller.admin.process.vo.processUser;
import lombok.*;
import io.swagger.v3.oas.annotations.media.Schema;
import com.cf.imes.framework.common.pojo.PageParam;
@Schema(description = "管理后台 - 工序用户表 process_user分页 Request VO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class ProcessUserPageReqVO extends PageParam {
}
@@ -13,22 +13,20 @@ import com.cf.imes.framework.mybatis.core.dataobject.BaseDO;
@TableName("process_user")
@KeySequence("process_user_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。
@Data
@EqualsAndHashCode(callSuper = false)
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class ProcessUserDO {
public class ProcessUserDO extends BaseDO {
/**
* 工序 ID
*/
// @TableId
private Long processId;
/**
* 用户 ID
*/
// @TableId
private Long userId;
}
@@ -4,6 +4,8 @@ import com.cf.imes.framework.mybatis.core.mapper.BaseMapperX;
import com.cf.imes.module.system.dal.dataobject.process.ProcessUserDO;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
/**
* 工序用户表 process_user Mapper
*
@@ -12,9 +14,15 @@ import org.apache.ibatis.annotations.Mapper;
@Mapper
public interface ProcessUserMapper extends BaseMapperX<ProcessUserDO> {
// default PageResult<ProcessUserDO> selectPage(ProcessUserPageReqVO reqVO) {
// return selectPage(reqVO, new LambdaQueryWrapperX<ProcessUserDO>()
// .orderByDesc(ProcessUserDO::getId));
// }
default List<ProcessUserDO> selectByProcessId(Long processId) {
return selectList(ProcessUserDO::getProcessId, processId);
}
default ProcessUserDO selectUserByProcessId(Long processId) {
return selectOne(ProcessUserDO::getProcessId, processId);
}
default int deleteUserByProcessId(Long processId) {
return delete(ProcessUserDO::getProcessId, processId);
}
}
@@ -2,6 +2,7 @@ package com.cf.imes.module.system.service.process;
import com.cf.imes.module.system.controller.admin.process.vo.process.ProcessPageReqVO;
import com.cf.imes.module.system.controller.admin.process.vo.process.ProcessSaveReqVO;
import com.cf.imes.module.system.controller.admin.process.vo.process.ProcessUserRespVO;
import com.cf.imes.module.system.controller.admin.process.vo.process.ProcessUserSaveReqVO;
import com.cf.imes.module.system.dal.dataobject.process.ProcessDO;
import com.cf.imes.framework.common.pojo.PageResult;
@@ -28,7 +29,7 @@ public interface ProcessService {
*
* @param updateReqVO 更新信息
*/
void updateProcess(@Valid ProcessSaveReqVO updateReqVO);
void updateProcess(@Valid ProcessUserSaveReqVO updateReqVO);
/**
* 删除工序信息表 process
@@ -43,7 +44,7 @@ public interface ProcessService {
* @param id 编号
* @return 工序信息表 process
*/
ProcessDO getProcess(Long id);
ProcessUserRespVO getProcess(Long id);
/**
* 获得工序信息表 process分页
@@ -2,9 +2,12 @@ package com.cf.imes.module.system.service.process;
import com.cf.imes.module.system.controller.admin.process.vo.process.ProcessPageReqVO;
import com.cf.imes.module.system.controller.admin.process.vo.process.ProcessSaveReqVO;
import com.cf.imes.module.system.controller.admin.process.vo.process.ProcessUserRespVO;
import com.cf.imes.module.system.controller.admin.process.vo.process.ProcessUserSaveReqVO;
import com.cf.imes.module.system.controller.admin.process.vo.processUser.ProcessAndUserSaveReqVO;
import com.cf.imes.module.system.dal.dataobject.process.ProcessUserDO;
import com.cf.imes.module.system.dal.mysql.process.ProcessUserMapper;
import com.cf.imes.module.system.service.user.AdminUserService;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
@@ -17,6 +20,9 @@ import com.cf.imes.framework.common.util.object.BeanUtils;
import com.cf.imes.module.system.dal.mysql.process.ProcessMapper;
import java.util.Arrays;
import java.util.List;
import static com.cf.imes.framework.common.exception.util.ServiceExceptionUtil.exception;
import static com.cf.imes.module.system.enums.ErrorCodeConstants.*;
@@ -35,7 +41,10 @@ public class ProcessServiceImpl implements ProcessService {
private ProcessMapper processMapper;
@Resource
private ProcessUserMapper processUserMapper;
private ProcessUserService processUserService;
@Resource
private AdminUserService adminUserService;
@Override
@Transactional(rollbackFor = Exception.class)
@@ -43,26 +52,42 @@ public class ProcessServiceImpl implements ProcessService {
// 插入
ProcessDO process = BeanUtils.toBean(createReqVO, ProcessDO.class);
processMapper.insert(process);
Long processID = process.getId();
String[] usersID = createReqVO.getUsers().split(",");
for (String user : usersID) {
System.out.println(user);
ProcessUserDO processUserDO = new ProcessUserDO();
processUserDO.setProcessId(processID);
processUserDO.setUserId(Long.parseLong(user));
processUserMapper.insert(processUserDO);
if (createReqVO.getUsers() != "") {
Long processID = process.getId();
String[] usersId = createReqVO.getUsers().split(",");
for (String user : usersId) {
ProcessAndUserSaveReqVO processAndUserSaveReqVO = new ProcessAndUserSaveReqVO();
// if (adminUserService.getUser(Long.parseLong(user)) != null){
processAndUserSaveReqVO.setProcessId(processID);
processAndUserSaveReqVO.setUserId(Long.parseLong(user));
processUserService.createProcessUser(processAndUserSaveReqVO);
// }
}
}
// 返回
return process.getId();
}
@Override
public void updateProcess(ProcessSaveReqVO updateReqVO) {
@Transactional(rollbackFor = Exception.class)
public void updateProcess(ProcessUserSaveReqVO updateReqVO) {
// 校验存在
validateProcessExists(updateReqVO.getId());
// 更新
ProcessDO updateObj = BeanUtils.toBean(updateReqVO, ProcessDO.class);
processMapper.updateById(updateObj);
ProcessDO updateProcess = BeanUtils.toBean(updateReqVO, ProcessDO.class);
System.out.println("pppppppppppppppppppp" + updateProcess);
// 更新工序信息
int updateProcessObj = processMapper.updateById(updateProcess);
processUserService.deleteProcessUserByProcess(updateReqVO.getId());
// if(updateReqVO.getUsers() != null){
// String[] usersId = updateReqVO.getUsers().split(",");
// for (String user : usersId) {
// ProcessAndUserSaveReqVO processAndUserSaveReqVO = new ProcessAndUserSaveReqVO();
// processAndUserSaveReqVO.setProcessId(updateReqVO.getId());
// processAndUserSaveReqVO.setUserId(Long.parseLong(user));
// processUserService.createProcessUser(processAndUserSaveReqVO);
// }
// }
processMapper.updateById(updateProcess);
}
@Override
@@ -80,8 +105,22 @@ public class ProcessServiceImpl implements ProcessService {
}
@Override
public ProcessDO getProcess(Long id) {
return processMapper.selectById(id);
public ProcessUserRespVO getProcess(Long id) {
ProcessDO process = processMapper.selectById(id);
List<ProcessUserDO> userIdListsByProcessId = processUserService.getProcessUser(id);
StringBuilder userIdBuilder = new StringBuilder();
if (userIdListsByProcessId != null) {
for (ProcessUserDO processUser : userIdListsByProcessId) {
if (processUser != null && processUser.getUserId() != null) {
if (adminUserService.getUser(processUser.getUserId()) != null)
userIdBuilder.append(",").append(processUser.getUserId());
}
}
}
String userId = userIdBuilder.length() > 0 ? userIdBuilder.substring(1) : "";
ProcessUserRespVO processUserRespVO = BeanUtils.toBean(process, ProcessUserRespVO.class);
processUserRespVO.setUsers(userId);
return processUserRespVO;
}
@Override
@@ -0,0 +1,48 @@
package com.cf.imes.module.system.service.process;
import javax.validation.*;
import com.cf.imes.module.system.controller.admin.process.vo.processUser.ProcessAndUserSaveReqVO;
import com.cf.imes.module.system.dal.dataobject.process.ProcessUserDO;
import java.util.List;
/**
* 工序用户表 process_user Service 接口
*
* @author 晨丰科技
*/
public interface ProcessUserService {
/**
* 创建工序用户表 process_user
*
* @param createReqVO 创建信息
* @return 编号
*/
Long createProcessUser(@Valid ProcessAndUserSaveReqVO createReqVO);
/**
* 更新工序用户表 process_user
*
* @param updateReqVO 更新信息
*/
void updateProcessUser(@Valid ProcessAndUserSaveReqVO updateReqVO);
/**
* 删除工序用户表 process_user
*
* @param processId 编号
*/
void deleteProcessUserByProcess(Long processId);
/**
* 获得工序用户表 process_user
*
* @param processId 工序Id
* @return 工序用户表 process_user
*/
List<ProcessUserDO> getProcessUser(Long processId);
}
@@ -0,0 +1,68 @@
package com.cf.imes.module.system.service.process;
import com.cf.imes.module.system.controller.admin.process.vo.processUser.ProcessAndUserSaveReqVO;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import org.springframework.validation.annotation.Validated;
import com.cf.imes.module.system.dal.dataobject.process.ProcessUserDO;
import com.cf.imes.framework.common.util.object.BeanUtils;
import com.cf.imes.module.system.dal.mysql.process.ProcessUserMapper;
import java.util.List;
import static com.cf.imes.framework.common.exception.util.ServiceExceptionUtil.exception;
import static com.cf.imes.module.system.enums.ErrorCodeConstants.PROCESS_USER_NOT_EXISTS;
/**
* 工序用户表 process_user Service 实现类
*
* @author 晨丰科技
*/
@Service
@Validated
public class ProcessUserServiceImpl implements ProcessUserService {
@Resource
private ProcessUserMapper processUserMapper;
@Override
public Long createProcessUser(ProcessAndUserSaveReqVO createReqVO) {
// 插入
ProcessUserDO processUser = BeanUtils.toBean(createReqVO, ProcessUserDO.class);
processUserMapper.insert(processUser);
// 返回
return processUser.getProcessId();
}
@Override
public void updateProcessUser(ProcessAndUserSaveReqVO updateReqVO) {
// 校验存在
validateProcessUserExists(updateReqVO.getProcessId());
// 更新
ProcessUserDO updateObj = BeanUtils.toBean(updateReqVO, ProcessUserDO.class);
processUserMapper.updateById(updateObj);
}
@Override
public void deleteProcessUserByProcess(Long processId) {
// 校验存在
validateProcessUserExists(processId);
// 删除
processUserMapper.deleteUserByProcessId(processId);
}
private void validateProcessUserExists(Long id) {
if (processUserMapper.selectByProcessId(id).size() == 0) {
throw exception(PROCESS_USER_NOT_EXISTS);
}
}
@Override
public List<ProcessUserDO> getProcessUser(Long id) {
return processUserMapper.selectByProcessId(id);
}
}