mirror of
http://192.168.1.205:9980/cf_devdept2/cf_imes_server.git
synced 2026-08-14 13:42:07 +08:00
工序名校验修改
This commit is contained in:
+2
-2
@@ -108,8 +108,8 @@ public class OrderController {
|
|||||||
@PutMapping("/restore")
|
@PutMapping("/restore")
|
||||||
@Operation(summary = "还原")
|
@Operation(summary = "还原")
|
||||||
@Parameter(name = "orderId", description = "生产单id", required = true, example = "1")
|
@Parameter(name = "orderId", description = "生产单id", required = true, example = "1")
|
||||||
@PreAuthorize("@ss.hasPermission('executor:order:restore')")
|
@PreAuthorize("@ss.hasPermission('executor:order:update')")
|
||||||
public CommonResult<Boolean> restoreOrder(@Valid @RequestBody Long orderId) {
|
public CommonResult<Boolean> restoreOrder(@RequestParam("orderId") Long orderId) {
|
||||||
orderService.restoreOrder(orderId);
|
orderService.restoreOrder(orderId);
|
||||||
return success(true);
|
return success(true);
|
||||||
}
|
}
|
||||||
|
|||||||
+1
-1
@@ -56,7 +56,7 @@ public interface OrderService {
|
|||||||
*
|
*
|
||||||
* @param orderId 编号组
|
* @param orderId 编号组
|
||||||
*/
|
*/
|
||||||
void restoreOrder(@Valid Long orderId);
|
void restoreOrder(Long orderId);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 获得生产单表 order_{N}
|
* 获得生产单表 order_{N}
|
||||||
|
|||||||
+18
-6
@@ -141,8 +141,7 @@ public class OrderServiceImpl implements OrderService {
|
|||||||
validatePhoneNumber(createReqVO.getPhoneNumber());
|
validatePhoneNumber(createReqVO.getPhoneNumber());
|
||||||
|
|
||||||
//验证自定义单号是否存在,业务员、拆单员是否存在
|
//验证自定义单号是否存在,业务员、拆单员是否存在
|
||||||
validateOrderImportForCreateOrUpdate(createReqVO.getCustomOrderNo(), createReqVO.getSalesman(), createReqVO.getSplitter());
|
validateCustomOrderNoExists(createReqVO.getCustomOrderNo());
|
||||||
|
|
||||||
LocalDateTime time = getAfterDate(createReqVO.getDeliveryDate());
|
LocalDateTime time = getAfterDate(createReqVO.getDeliveryDate());
|
||||||
createReqVO.setDeliveryDate(time);
|
createReqVO.setDeliveryDate(time);
|
||||||
// 插入
|
// 插入
|
||||||
@@ -161,8 +160,7 @@ public class OrderServiceImpl implements OrderService {
|
|||||||
validatePhoneNumber(updateReqVO.getPhoneNumber());
|
validatePhoneNumber(updateReqVO.getPhoneNumber());
|
||||||
|
|
||||||
//验证自定义单号是否存在,业务员、拆单员是否存在
|
//验证自定义单号是否存在,业务员、拆单员是否存在
|
||||||
validateOrderImportForCreateOrUpdate(updateReqVO.getCustomOrderNo(), updateReqVO.getSalesman(), updateReqVO.getSplitter());
|
validateCustomOrderNoExists(updateReqVO.getCustomOrderNo(), updateReqVO.getId());
|
||||||
|
|
||||||
// 更新
|
// 更新
|
||||||
OrderDO updateObj = BeanUtils.toBean(updateReqVO, OrderDO.class);
|
OrderDO updateObj = BeanUtils.toBean(updateReqVO, OrderDO.class);
|
||||||
orderMapper.updateById(updateObj);
|
orderMapper.updateById(updateObj);
|
||||||
@@ -421,6 +419,20 @@ public class OrderServiceImpl implements OrderService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// 验证自定义单号是否存在
|
// 验证自定义单号是否存在
|
||||||
|
private void validateCustomOrderNoExists(String customOrderNo, Long orderId) {
|
||||||
|
if (customOrderNo != null) {
|
||||||
|
if (!customOrderNo.isEmpty()) {
|
||||||
|
if (orderMapper.selectCount(new LambdaQueryWrapper<OrderDO>()
|
||||||
|
.ne(OrderDO::getId, orderId)
|
||||||
|
.eq(OrderDO::getCustomOrderNo, customOrderNo)
|
||||||
|
.eq(OrderDO::getDeleted, false)
|
||||||
|
.eq(OrderDO::getOrganId, OrganContextHolder.getOrganId())) > 0) {
|
||||||
|
throw exception(CUSTOM_ORDER_EXISTS);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
private void validateCustomOrderNoExists(String customOrderNo) {
|
private void validateCustomOrderNoExists(String customOrderNo) {
|
||||||
if (customOrderNo != null) {
|
if (customOrderNo != null) {
|
||||||
if (!customOrderNo.isEmpty()) {
|
if (!customOrderNo.isEmpty()) {
|
||||||
@@ -467,11 +479,11 @@ public class OrderServiceImpl implements OrderService {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void validateOrderImportForCreateOrUpdate(String customOrderNo, String salesman, String splitter) {
|
private void validateOrderImportForCreateOrUpdate(String customOrderNo, String salesman, String splitter, Long orderId) {
|
||||||
// 关闭数据权限,避免因为没有数据权限,查询不到数据,进而导致唯一校验不正确
|
// 关闭数据权限,避免因为没有数据权限,查询不到数据,进而导致唯一校验不正确
|
||||||
Long organId = SecurityFrameworkUtils.getLoginUser().getOrganId();
|
Long organId = SecurityFrameworkUtils.getLoginUser().getOrganId();
|
||||||
DataPermissionUtils.executeIgnore(() -> {
|
DataPermissionUtils.executeIgnore(() -> {
|
||||||
validateCustomOrderNoExists(customOrderNo);
|
validateCustomOrderNoExists(customOrderNo, orderId);
|
||||||
validateSalesmanOrderNoExists(salesman, organId);
|
validateSalesmanOrderNoExists(salesman, organId);
|
||||||
validateSplitterOrderNoExists(splitter, organId);
|
validateSplitterOrderNoExists(splitter, organId);
|
||||||
});
|
});
|
||||||
|
|||||||
+1
-1
@@ -6,7 +6,7 @@
|
|||||||
<select id="selectPlatesDetailByOrderId" resultType="com.cf.imes.module.executor.controller.admin.plate.vo.PlateRespVO">
|
<select id="selectPlatesDetailByOrderId" resultType="com.cf.imes.module.executor.controller.admin.plate.vo.PlateRespVO">
|
||||||
SELECT i.order_id, p.id, p.plate_no, g.material, p.name, p.area, p.seal_left, p.seal_down,
|
SELECT i.order_id, p.id, p.plate_no, g.material, p.name, p.area, p.seal_left, p.seal_down,
|
||||||
p.seal_right, p.seal_up, p.texture, p.is_special_shaped, p.is_sculpt, p.unregular_point_count, p.front_hole_count,
|
p.seal_right, p.seal_up, p.texture, p.is_special_shaped, p.is_sculpt, p.unregular_point_count, p.front_hole_count,
|
||||||
p.back_hole_count, p.side_hole_count,p.width,p.height,p.thickness
|
p.back_hole_count, p.side_hole_count,p.width,p.height,p.thickness,gp.name
|
||||||
FROM order_item i
|
FROM order_item i
|
||||||
RIGHT JOIN `order_plate` p ON i.plate_id = p.id
|
RIGHT JOIN `order_plate` p ON i.plate_id = p.id
|
||||||
LEFT JOIN `order_goods` g ON g.id = p.goods_id
|
LEFT JOIN `order_goods` g ON g.id = p.goods_id
|
||||||
|
|||||||
+2
@@ -182,10 +182,12 @@ public interface ErrorCodeConstants {
|
|||||||
ErrorCode PROCESS_IS_ENABLED = new ErrorCode(1_002_027_001, "工序已在工序组中启用,禁止关闭或删除");
|
ErrorCode PROCESS_IS_ENABLED = new ErrorCode(1_002_027_001, "工序已在工序组中启用,禁止关闭或删除");
|
||||||
ErrorCode PROCESS_ID_IS_NULL = new ErrorCode(1_002_027_002, "工序ID填写错误不存在");
|
ErrorCode PROCESS_ID_IS_NULL = new ErrorCode(1_002_027_002, "工序ID填写错误不存在");
|
||||||
ErrorCode PROCESS_STATUS_DISABLE = new ErrorCode(1_002_027_003, "工序状态以已禁用");
|
ErrorCode PROCESS_STATUS_DISABLE = new ErrorCode(1_002_027_003, "工序状态以已禁用");
|
||||||
|
ErrorCode PROCESS_NAME_EXISTS = new ErrorCode(1_002_027_004, "工序名称已存在");
|
||||||
|
|
||||||
//=========== 工序组信息 1-002-029-000 ============
|
//=========== 工序组信息 1-002-029-000 ============
|
||||||
ErrorCode PROCESS_GROUP_NOT_EXISTS = new ErrorCode(1_002_029_010, "工序组不存在");
|
ErrorCode PROCESS_GROUP_NOT_EXISTS = new ErrorCode(1_002_029_010, "工序组不存在");
|
||||||
ErrorCode PROCESS_GROUP_USED = new ErrorCode(1_002_029_011, "工序组已使用,禁止删除 ");
|
ErrorCode PROCESS_GROUP_USED = new ErrorCode(1_002_029_011, "工序组已使用,禁止删除 ");
|
||||||
|
ErrorCode PROCESS_GROUP_NAME_EXISTS = new ErrorCode(1_002_029_012, "工序名称已存在");
|
||||||
|
|
||||||
// ========== 机台 1-002-029-000 ==========
|
// ========== 机台 1-002-029-000 ==========
|
||||||
ErrorCode MACHINE_NOT_EXISTS = new ErrorCode(1_002_029_000, "机台不存在");
|
ErrorCode MACHINE_NOT_EXISTS = new ErrorCode(1_002_029_000, "机台不存在");
|
||||||
|
|||||||
+33
@@ -1,5 +1,6 @@
|
|||||||
package com.cf.imes.module.system.service.process;
|
package com.cf.imes.module.system.service.process;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
import com.cf.imes.framework.mybatis.core.query.LambdaQueryWrapperX;
|
import com.cf.imes.framework.mybatis.core.query.LambdaQueryWrapperX;
|
||||||
import com.cf.imes.framework.organ.core.context.OrganContextHolder;
|
import com.cf.imes.framework.organ.core.context.OrganContextHolder;
|
||||||
import com.cf.imes.module.executor.api.orderProcess.OrderProcessApi;
|
import com.cf.imes.module.executor.api.orderProcess.OrderProcessApi;
|
||||||
@@ -10,6 +11,7 @@ import com.cf.imes.module.system.controller.admin.process.vo.group.ProcessGroupS
|
|||||||
import com.cf.imes.module.system.controller.admin.process.vo.group.ProcessListSaveReqVO;
|
import com.cf.imes.module.system.controller.admin.process.vo.group.ProcessListSaveReqVO;
|
||||||
import com.cf.imes.module.system.controller.admin.process.vo.process.ProcessRespVO;
|
import com.cf.imes.module.system.controller.admin.process.vo.process.ProcessRespVO;
|
||||||
import com.cf.imes.module.system.dal.dataobject.organ.OrganizationDO;
|
import com.cf.imes.module.system.dal.dataobject.organ.OrganizationDO;
|
||||||
|
import com.cf.imes.module.system.dal.dataobject.process.ProcessDO;
|
||||||
import com.cf.imes.module.system.dal.mysql.process.ProcessMapper;
|
import com.cf.imes.module.system.dal.mysql.process.ProcessMapper;
|
||||||
import org.jetbrains.annotations.NotNull;
|
import org.jetbrains.annotations.NotNull;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
@@ -54,6 +56,8 @@ public class ProcessGroupServiceImpl implements ProcessGroupService {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Long createProcessGroup(ProcessGroupSaveReqVO createReqVO) {
|
public Long createProcessGroup(ProcessGroupSaveReqVO createReqVO) {
|
||||||
|
// 校验名称存在
|
||||||
|
validateProcessGroupNameUnique(createReqVO.getName());
|
||||||
// 插入
|
// 插入
|
||||||
ProcessGroupDO processGroup = BeanUtils.toBean(createReqVO, ProcessGroupDO.class);
|
ProcessGroupDO processGroup = BeanUtils.toBean(createReqVO, ProcessGroupDO.class);
|
||||||
processGroup.setItems(checkProcessGroupExists(createReqVO.getItems()));
|
processGroup.setItems(checkProcessGroupExists(createReqVO.getItems()));
|
||||||
@@ -65,10 +69,39 @@ public class ProcessGroupServiceImpl implements ProcessGroupService {
|
|||||||
return processGroup.getId();
|
return processGroup.getId();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void validateProcessGroupNameUnique(String name) {
|
||||||
|
if (name != null) {
|
||||||
|
if (!name.isEmpty()) {
|
||||||
|
if (processGroupMapper.selectCount(new LambdaQueryWrapper<ProcessGroupDO>()
|
||||||
|
.eq(ProcessGroupDO::getName, name)
|
||||||
|
.eq(ProcessGroupDO::getDeleted, false)
|
||||||
|
.eq(ProcessGroupDO::getOrganId, OrganContextHolder.getOrganId())) > 0) {
|
||||||
|
throw exception(PROCESS_GROUP_NAME_EXISTS);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void validateProcessGroupNameUnique(String name,Long id) {
|
||||||
|
if (name != null) {
|
||||||
|
if (!name.isEmpty()) {
|
||||||
|
if (processGroupMapper.selectCount(new LambdaQueryWrapper<ProcessGroupDO>()
|
||||||
|
.ne(ProcessGroupDO::getId, id)
|
||||||
|
.eq(ProcessGroupDO::getName, name)
|
||||||
|
.eq(ProcessGroupDO::getDeleted, false)
|
||||||
|
.eq(ProcessGroupDO::getOrganId, OrganContextHolder.getOrganId())) > 0) {
|
||||||
|
throw exception(PROCESS_GROUP_NAME_EXISTS);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void updateProcessGroup(ProcessGroupSaveReqVO updateReqVO) {
|
public void updateProcessGroup(ProcessGroupSaveReqVO updateReqVO) {
|
||||||
// 校验存在
|
// 校验存在
|
||||||
validateProcessGroupExists(updateReqVO.getId());
|
validateProcessGroupExists(updateReqVO.getId());
|
||||||
|
// 名称存在
|
||||||
|
validateProcessGroupNameUnique(updateReqVO.getName(),updateReqVO.getId());
|
||||||
// 更新
|
// 更新
|
||||||
ProcessGroupDO updateObj = BeanUtils.toBean(updateReqVO, ProcessGroupDO.class);
|
ProcessGroupDO updateObj = BeanUtils.toBean(updateReqVO, ProcessGroupDO.class);
|
||||||
updateObj.setItems(checkProcessGroupExists(updateReqVO.getItems()));
|
updateObj.setItems(checkProcessGroupExists(updateReqVO.getItems()));
|
||||||
|
|||||||
+33
-2
@@ -1,5 +1,6 @@
|
|||||||
package com.cf.imes.module.system.service.process;
|
package com.cf.imes.module.system.service.process;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||||
import com.baomidou.mybatisplus.extension.plugins.pagination.PageDTO;;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.PageDTO;;
|
||||||
import com.cf.imes.framework.common.exception.util.ServiceExceptionUtil;
|
import com.cf.imes.framework.common.exception.util.ServiceExceptionUtil;
|
||||||
@@ -28,6 +29,7 @@ import java.util.Objects;
|
|||||||
|
|
||||||
import static com.cf.imes.framework.common.exception.util.ServiceExceptionUtil.exception;
|
import static com.cf.imes.framework.common.exception.util.ServiceExceptionUtil.exception;
|
||||||
|
|
||||||
|
import static com.cf.imes.module.executor.enums.ErrorCodeConstants.CUSTOM_ORDER_EXISTS;
|
||||||
import static com.cf.imes.module.system.enums.ErrorCodeConstants.*;
|
import static com.cf.imes.module.system.enums.ErrorCodeConstants.*;
|
||||||
|
|
||||||
|
|
||||||
@@ -55,10 +57,10 @@ public class ProcessServiceImpl implements ProcessService {
|
|||||||
@Override
|
@Override
|
||||||
@Transactional(rollbackFor = Exception.class)
|
@Transactional(rollbackFor = Exception.class)
|
||||||
public Long createProcess(ProcessUserSaveReqVO createReqVO) {
|
public Long createProcess(ProcessUserSaveReqVO createReqVO) {
|
||||||
// 用户组织Id
|
|
||||||
// Long organId = OrganContextHolder.getOrganId();
|
|
||||||
// 插入
|
// 插入
|
||||||
ProcessDO process = BeanUtils.toBean(createReqVO, ProcessDO.class);
|
ProcessDO process = BeanUtils.toBean(createReqVO, ProcessDO.class);
|
||||||
|
// 名称相同判断
|
||||||
|
validateNameNoExists(process.getName());
|
||||||
processMapper.insert(process);
|
processMapper.insert(process);
|
||||||
if (createReqVO.getUsers() != "" && createReqVO.getUsers() != null) {
|
if (createReqVO.getUsers() != "" && createReqVO.getUsers() != null) {
|
||||||
Long processID = process.getId();
|
Long processID = process.getId();
|
||||||
@@ -83,6 +85,32 @@ public class ProcessServiceImpl implements ProcessService {
|
|||||||
return process.getId();
|
return process.getId();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void validateNameNoExists(String name) {
|
||||||
|
if (name != null) {
|
||||||
|
if (!name.isEmpty()) {
|
||||||
|
if (processMapper.selectCount(new LambdaQueryWrapper<ProcessDO>()
|
||||||
|
.eq(ProcessDO::getName, name)
|
||||||
|
.eq(ProcessDO::getDeleted, false)
|
||||||
|
.eq(ProcessDO::getOrganId, OrganContextHolder.getOrganId())) > 0) {
|
||||||
|
throw exception(PROCESS_NAME_EXISTS);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void validateNameNoExists(String name,Long id) {
|
||||||
|
if (name != null) {
|
||||||
|
if (!name.isEmpty()) {
|
||||||
|
if (processMapper.selectCount(new LambdaQueryWrapper<ProcessDO>()
|
||||||
|
.ne(ProcessDO::getId, id)
|
||||||
|
.eq(ProcessDO::getName, name)
|
||||||
|
.eq(ProcessDO::getDeleted, false)
|
||||||
|
.eq(ProcessDO::getOrganId, OrganContextHolder.getOrganId())) > 0) {
|
||||||
|
throw exception(PROCESS_NAME_EXISTS);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@Override
|
@Override
|
||||||
@Transactional(rollbackFor = Exception.class)
|
@Transactional(rollbackFor = Exception.class)
|
||||||
public void updateProcess(ProcessUserSaveReqVO updateReqVO) {
|
public void updateProcess(ProcessUserSaveReqVO updateReqVO) {
|
||||||
@@ -94,6 +122,9 @@ public class ProcessServiceImpl implements ProcessService {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 校验名称存在
|
||||||
|
validateNameNoExists(updateReqVO.getName(),updateReqVO.getId());
|
||||||
|
|
||||||
ProcessDO updateProcess = BeanUtils.toBean(updateReqVO, ProcessDO.class);
|
ProcessDO updateProcess = BeanUtils.toBean(updateReqVO, ProcessDO.class);
|
||||||
|
|
||||||
processUserService.deleteProcessUserByProcess(updateReqVO.getId());
|
processUserService.deleteProcessUserByProcess(updateReqVO.getId());
|
||||||
|
|||||||
Reference in New Issue
Block a user