板材库修改

This commit is contained in:
lym
2024-03-25 11:25:37 +08:00
parent dd49f8231f
commit 9a12f5010a
33 changed files with 468 additions and 65 deletions
@@ -1,6 +1,8 @@
package com.cf.imes.module.executor.controller.admin.order; package com.cf.imes.module.executor.controller.admin.order;
import com.cf.imes.module.executor.controller.admin.order.vo.order.*; import com.cf.imes.module.executor.controller.admin.order.vo.order.*;
import com.cf.imes.module.executor.controller.admin.plate.vo.PlateRespVO;
import com.cf.imes.module.executor.dal.dataobject.plate.PlateDO;
import io.swagger.v3.oas.annotations.Parameters; import io.swagger.v3.oas.annotations.Parameters;
import org.springframework.util.ResourceUtils; import org.springframework.util.ResourceUtils;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
@@ -74,10 +76,10 @@ public class OrderController {
@DeleteMapping("/delete") @DeleteMapping("/delete")
@Operation(summary = "删除生产单表 order_{N}") @Operation(summary = "删除生产单表 order_{N}")
@Parameter(name = "id", description = "编号", required = true) @Parameter(name = "orderIds", description = "生产单id组", required = true, example = "1,2")
@PreAuthorize("@ss.hasPermission('executor:order:delete')") @PreAuthorize("@ss.hasPermission('executor:order:delete')")
public CommonResult<Boolean> deleteOrder(@RequestParam("id") Long id) { public CommonResult<Boolean> deleteOrder(@RequestParam("postIds") Collection<Long> orderIds) {
orderService.deleteOrder(id); orderService.deleteOrder(orderIds);
return success(true); return success(true);
} }
@@ -154,28 +156,44 @@ public class OrderController {
@Operation(summary = "导入生产单新增") @Operation(summary = "导入生产单新增")
@Parameters({ @Parameters({
@Parameter(name = "file", description = "Excel 文件", required = true), @Parameter(name = "file", description = "Excel 文件", required = true),
@Parameter(name = "updateSupport", description = "是否支持更新,默认为 false", example = "true"), @Parameter(name = "isAddPlate", description = "是否为生产单新增板材", example = "false"),
@Parameter(name = "upload", description = "是否只上传表头,默认为只上传表头", example = "true") @Parameter(name = "upload", description = "是否只上传表头,默认为只上传表头", example = "true")
}) })
@PreAuthorize("@ss.hasPermission('executor:order:import')") @PreAuthorize("@ss.hasPermission('executor:order:import')")
public CommonResult<OrderImportRespVO> importExcel(@RequestPart("file") MultipartFile file, public CommonResult<OrderImportRespVO> importExcel(@RequestPart("file") MultipartFile file,
@RequestParam(value = "isAddPlate", required = false, defaultValue = "false") Boolean isAddPlate,
@RequestParam(value = "upload", required = false, defaultValue = "true") Boolean upload, @RequestParam(value = "upload", required = false, defaultValue = "true") Boolean upload,
@RequestPart("orderSaveReqVO") OrderSaveReqVO createReqVO) throws IOException { @RequestPart("orderSaveReqVO") OrderSaveReqVO createReqVO) throws IOException {
OrderImportRespVO orderImportRespVO = orderService.importOrderList(upload , file, createReqVO); OrderImportRespVO orderImportRespVO = orderService.importOrderList(upload, file, createReqVO, isAddPlate);
return success(orderImportRespVO); return success(orderImportRespVO);
} }
//生产单信息修改 // 清理生产单
@PostMapping("/addPlates") @DeleteMapping("/clean")
@Operation(summary = "生产单添加板材") @Operation(summary = "清理生产单")
@Parameters({ @Parameter(name = "orderId", description = "生产单编号", required = true, example = "1024")
@Parameter(name = "id", description = "编号", required = true, example = "1024") @PreAuthorize("@ss.hasPermission('executor:order:delete')")
}) public CommonResult<Boolean> cleanOrder(@RequestParam("orderId") Long orderId) {
@PreAuthorize("@ss.hasPermission('executor:order:update')") orderService.cleanOrder(orderId);
public CommonResult updateOrder(@RequestParam("id") Long id, return success(true);
@RequestPart("file") MultipartFile file){
// orderService.updateOrder(updateReq);
return null;
} }
// 获取当前条件下所有生产单信息
@GetMapping("/allOrder")
@Operation(summary = "条件选择获得生产单表")
@PreAuthorize("@ss.hasPermission('executor:order:query')")
public CommonResult<PageResult<OrderRespVO>> getAllOrder(@Valid OrderPageReqVO pageReqVO) {
PageResult<OrderDO> pageResult = orderService.getOrderPage(pageReqVO);
return success(BeanUtils.toBean(pageResult, OrderRespVO.class));
}
// 获得当前生产单的工序信息
// @GetMapping("/getOrderProcess")
// @Operation(summary = "生产单获取工序信息")
// @Parameter(name = "orderId", description = "生产单编号", required = true, example = "1024")
// @PreAuthorize("@ss.hasPermission('executor:order:query')")
// public CommonResult<List<OrderProcessRespVO>> getOrderProcess(@RequestParam("orderId")Long orderId) {
// return success(BeanUtils.toBean(orderService.getOrderProcess(orderId), OrderProcessRespVO.class));
// }
} }
@@ -67,4 +67,5 @@ public class OrderPageReqVO extends PageParam {
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] createTime; private LocalDateTime[] createTime;
private Boolean deleted;
} }
@@ -1,6 +1,12 @@
package com.cf.imes.module.executor.controller.admin.order.vo.order; package com.cf.imes.module.executor.controller.admin.order.vo.order;
import com.alibaba.excel.annotation.ExcelProperty; import com.alibaba.excel.annotation.ExcelProperty;
import com.cf.imes.framework.common.pojo.CommonResult;
import com.cf.imes.framework.excel.core.annotations.DictFormat;
import com.cf.imes.framework.excel.core.convert.DictConvert;
import com.cf.imes.module.system.api.dict.DictDataApi;
import com.cf.imes.module.system.api.dict.dto.DictDataRespDTO;
import com.cf.imes.module.system.enums.DictTypeConstants;
import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.ObjectMapper;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
@@ -9,7 +15,9 @@ import lombok.Data;
import lombok.NoArgsConstructor; import lombok.NoArgsConstructor;
import lombok.experimental.Accessors; import lombok.experimental.Accessors;
import javax.annotation.Resource;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.util.List;
/** /**
* 生产单 Excel 导入 VO * 生产单 Excel 导入 VO
@@ -20,6 +28,7 @@ import java.math.BigDecimal;
@NoArgsConstructor @NoArgsConstructor
@Accessors(chain = false) // 设置 chain = false,避免生产单导入有问 @Accessors(chain = false) // 设置 chain = false,避免生产单导入有问
public class OrderPlateImportExcelVO { public class OrderPlateImportExcelVO {
@ExcelProperty(value = "序号") @ExcelProperty(value = "序号")
@JsonIgnore @JsonIgnore
private int ordinal; private int ordinal;
@@ -130,14 +139,17 @@ public class OrderPlateImportExcelVO {
@ExcelProperty(value = "排版面") @ExcelProperty(value = "排版面")
@JsonIgnore @JsonIgnore
@DictFormat(DictTypeConstants.YPOGRAPHY_TYPE)
private int typographicFace; private int typographicFace;
@ExcelProperty(value = "纹路") @ExcelProperty(value = "纹路")
@JsonIgnore @JsonIgnore
// @DictFormat(DictTypeConstants.GRAIN_TYPE)
private int texture; private int texture;
@ExcelProperty(value = "开门方向") @ExcelProperty(value = "开门方向")
@JsonIgnore @JsonIgnore
// @DictFormat(DictTypeConstants.DOOR_OPENING_DIRECTIONS)
private int openDoorType; private int openDoorType;
@ExcelProperty(value = "备注1") @ExcelProperty(value = "备注1")
@@ -219,7 +231,6 @@ public class OrderPlateImportExcelVO {
public String remarkJSON(){ public String remarkJSON(){
ObjectMapper objectMapper = new ObjectMapper(); ObjectMapper objectMapper = new ObjectMapper();
// 设置实体类字段的值 // 设置实体类字段的值
try { try {
String json = objectMapper.writeValueAsString(this); String json = objectMapper.writeValueAsString(this);
return json; return json;
@@ -229,4 +240,17 @@ public class OrderPlateImportExcelVO {
} }
} }
// excel中字典转换
private int getDictValue(String dictType, int index) {
int value = 0;
if(index == 1){
// CommonResult<DictDataRespDTO> dictDataRespDTOCommonResult = dictDataApi.getDictData(dictType, label);
}else if(index == 2){
}else if(index == 3){
}
return value;
}
} }
@@ -83,4 +83,6 @@ public class OrderRespVO {
@ExcelProperty("创建时间") @ExcelProperty("创建时间")
private LocalDateTime createTime; private LocalDateTime createTime;
private Boolean deleted;
} }
@@ -76,4 +76,6 @@ public class OrderSaveReqVO {
@NotEmpty(message = "备注不能为空") @NotEmpty(message = "备注不能为空")
private String remark; private String remark;
private Boolean deleted;
} }
@@ -92,4 +92,13 @@ public class PlateController {
BeanUtils.toBean(list, PlateRespVO.class)); BeanUtils.toBean(list, PlateRespVO.class));
} }
// 批量删除小板
@DeleteMapping("deletePlenty")
@Operation(summary = "批量删除小板")
@PreAuthorize("@ss.hasPermission('executor:plate:deletePlenty')")
@Parameter(name = "id", description = "编号", required = true)
public CommonResult<Boolean> deletePlates(@RequestBody Set<Long> ids) {
plateService.deletePlates(ids);
return success(true);
}
} }
@@ -89,5 +89,8 @@ public class OrderDO extends OrganBaseDO {
* 备注 * 备注
*/ */
private String remark; private String remark;
/**
* 是否删除
*/
private Boolean deleted;
} }
@@ -1,7 +1,5 @@
package com.cf.imes.module.executor.dal.mysql.order; package com.cf.imes.module.executor.dal.mysql.order;
import java.util.*;
import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Constants; import com.baomidou.mybatisplus.core.toolkit.Constants;
@@ -11,9 +9,13 @@ import com.cf.imes.framework.mybatis.core.query.LambdaQueryWrapperX;
import com.cf.imes.module.executor.controller.admin.order.vo.order.OrderPageReqVO; import com.cf.imes.module.executor.controller.admin.order.vo.order.OrderPageReqVO;
import com.cf.imes.module.executor.controller.admin.plan.vo.OrderRespVO; import com.cf.imes.module.executor.controller.admin.plan.vo.OrderRespVO;
import com.cf.imes.module.executor.dal.dataobject.order.OrderDO; import com.cf.imes.module.executor.dal.dataobject.order.OrderDO;
import com.github.yulichang.wrapper.MPJLambdaWrapper;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
import java.util.ArrayList;
import java.util.Collections;
/** /**
* 生产单表 order_{N} Mapper * 生产单表 order_{N} Mapper
* *
@@ -39,10 +41,34 @@ public interface OrderMapper extends BaseMapperX<OrderDO> {
.eqIfPresent(OrderDO::getSalesman, reqVO.getSalesman()) .eqIfPresent(OrderDO::getSalesman, reqVO.getSalesman())
.eqIfPresent(OrderDO::getSplitter, reqVO.getSplitter()) .eqIfPresent(OrderDO::getSplitter, reqVO.getSplitter())
.eqIfPresent(OrderDO::getRemark, reqVO.getRemark()) .eqIfPresent(OrderDO::getRemark, reqVO.getRemark())
.eqIfPresent(OrderDO::getDeleted, reqVO.getDeleted())
.betweenIfPresent(OrderDO::getCreateTime, reqVO.getCreateTime()) .betweenIfPresent(OrderDO::getCreateTime, reqVO.getCreateTime())
.orderByDesc(OrderDO::getId)); .orderByDesc(OrderDO::getId));
} }
IPage<OrderRespVO> selectOrderPage(@Param("page") IPage page, @Param(Constants.WRAPPER) Wrapper<OrderDO> wrapper); IPage<OrderRespVO> selectOrderPage(@Param("page") IPage page, @Param(Constants.WRAPPER) Wrapper<OrderDO> wrapper);
default PageResult<OrderDO> selectOrderCheck(OrderPageReqVO reqVO) {
return selectPage(reqVO , null, new MPJLambdaWrapper<OrderDO>()
.eqIfExists(OrderDO::getParentNo, reqVO.getParentNo())
.between(OrderDO::getDeliveryDate, reqVO.getDeliveryDate()[0],reqVO.getDeliveryDate()[1])
.eqIfExists(OrderDO::getType, reqVO.getType())
.eqIfExists(OrderDO::getSort, reqVO.getSort())
.eqIfExists(OrderDO::getDataType, reqVO.getDataType())
.eqIfExists(OrderDO::getStatus, reqVO.getStatus())
.eqIfExists(OrderDO::getCustomOrderNo, reqVO.getCustomOrderNo())
.eqIfExists(OrderDO::getCustomer, reqVO.getCustomer())
.eqIfExists(OrderDO::getAddress, reqVO.getAddress())
.eqIfExists(OrderDO::getPhoneNumber, reqVO.getPhoneNumber())
.eqIfExists(OrderDO::getDealer, reqVO.getDealer())
.eqIfExists(OrderDO::getDealerPhoneNumber, reqVO.getDealerPhoneNumber())
.eqIfExists(OrderDO::getSalesman, reqVO.getSalesman())
.eqIfExists(OrderDO::getSplitter, reqVO.getSplitter())
.eqIfExists(OrderDO::getRemark, reqVO.getRemark())
.eqIfExists(OrderDO::getDeleted, reqVO.getDeleted())
.between(OrderDO::getDeliveryDate, reqVO.getDeliveryDate()[0],reqVO.getDeliveryDate()[1])
.orderByDesc(OrderDO::getId));
}
} }
@@ -3,6 +3,7 @@ package com.cf.imes.module.executor.framework.rpc.config;
import com.cf.imes.module.infra.api.file.FileApi; import com.cf.imes.module.infra.api.file.FileApi;
import com.cf.imes.module.system.api.machine.MachineApi; import com.cf.imes.module.system.api.machine.MachineApi;
import com.cf.imes.module.system.api.user.AdminUserApi; import com.cf.imes.module.system.api.user.AdminUserApi;
import com.cf.imes.module.system.api.dict.DictDataApi;
import org.springframework.cloud.openfeign.EnableFeignClients; import org.springframework.cloud.openfeign.EnableFeignClients;
import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Configuration;
@@ -10,6 +11,6 @@ import org.springframework.context.annotation.Configuration;
* @author there * @author there
*/ */
@Configuration(proxyBeanMethods = false) @Configuration(proxyBeanMethods = false)
@EnableFeignClients(clients = {AdminUserApi.class, MachineApi.class, FileApi.class}) @EnableFeignClients(clients = {AdminUserApi.class, MachineApi.class, DictDataApi.class, FileApi.class})
public class RpcConfiguration { public class RpcConfiguration {
} }
@@ -5,9 +5,13 @@ import javax.validation.*;
import com.cf.imes.module.executor.controller.admin.order.vo.order.*; import com.cf.imes.module.executor.controller.admin.order.vo.order.*;
import com.cf.imes.module.executor.dal.dataobject.order.OrderDO; import com.cf.imes.module.executor.dal.dataobject.order.OrderDO;
import com.cf.imes.framework.common.pojo.PageResult; import com.cf.imes.framework.common.pojo.PageResult;
import com.cf.imes.module.executor.dal.dataobject.plate.PlateDO;
import org.springframework.web.multipart.MultipartFile; import org.springframework.web.multipart.MultipartFile;
import java.io.IOException; import java.io.IOException;
import java.util.Collection;
import java.util.List;
import java.util.Set;
/** /**
* 生产单表 order_{N} Service 接口 * 生产单表 order_{N} Service 接口
@@ -34,9 +38,9 @@ public interface OrderService {
/** /**
* 删除生产单表 order_{N} * 删除生产单表 order_{N}
* *
* @param id 编号 * @param orderIds 编号
*/ */
void deleteOrder(Long id); void deleteOrder(Collection<Long> orderIds);
/** /**
* 获得生产单表 order_{N} * 获得生产单表 order_{N}
@@ -56,10 +60,25 @@ public interface OrderService {
/** /**
* 批量导入生产单 * 批量导入生产单
*
* @param upload 是否只上传表头,默认为只上传表头 * @param upload 是否只上传表头,默认为只上传表头
* @param file 文件内容 * @param file 文件内容
* @param createReqVO 生产单信息 * @param createReqVO 生产单信息
* @param isAddPlate 是否为生产单新增板材
* @return OrderImportRespVO * @return OrderImportRespVO
*/ */
OrderImportRespVO importOrderList(Boolean upload , MultipartFile file , OrderSaveReqVO createReqVO) throws IOException; OrderImportRespVO importOrderList(Boolean upload, MultipartFile file, OrderSaveReqVO createReqVO ,Boolean isAddPlate) throws IOException;
/**
* 清除生产单表 order_{N}
* 清除还没有清除生产单与工序相关、生产单与模块相关、生产单与包裹、余料、补板、相关
* @param orderId 编号
*/
void cleanOrder(Long orderId);
/**
* @param pageReqVO: 查询信息
* @return List<OrderDO>
*/
PageResult<OrderDO> getAllOrderCheck(OrderPageReqVO pageReqVO);
} }
@@ -1,5 +1,6 @@
package com.cf.imes.module.executor.service.order; package com.cf.imes.module.executor.service.order;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.cf.imes.framework.mybatis.core.generator.SnowFlakeGenerator; import com.cf.imes.framework.mybatis.core.generator.SnowFlakeGenerator;
import com.cf.imes.module.executor.controller.admin.order.vo.order.*; import com.cf.imes.module.executor.controller.admin.order.vo.order.*;
import com.cf.imes.framework.datapermission.core.util.DataPermissionUtils; import com.cf.imes.framework.datapermission.core.util.DataPermissionUtils;
@@ -10,6 +11,7 @@ import com.cf.imes.module.executor.dal.dataobject.orderGroup.OrderGroupDO;
import com.cf.imes.module.executor.dal.dataobject.orderItem.OrderItemDO; import com.cf.imes.module.executor.dal.dataobject.orderItem.OrderItemDO;
import com.cf.imes.module.executor.dal.dataobject.orderParts.OrderPartsDO; import com.cf.imes.module.executor.dal.dataobject.orderParts.OrderPartsDO;
import com.cf.imes.module.executor.dal.dataobject.plate.PlateDO; import com.cf.imes.module.executor.dal.dataobject.plate.PlateDO;
import com.cf.imes.module.executor.dal.dataobject.rawgoods.RawGoodsDO;
import com.cf.imes.module.executor.dal.mysql.orderBody.OrderBodyMapper; import com.cf.imes.module.executor.dal.mysql.orderBody.OrderBodyMapper;
import com.cf.imes.module.executor.dal.mysql.orderGroup.OrderGroupMapper; import com.cf.imes.module.executor.dal.mysql.orderGroup.OrderGroupMapper;
import com.cf.imes.module.executor.dal.mysql.orderItem.OrderItemMapper; import com.cf.imes.module.executor.dal.mysql.orderItem.OrderItemMapper;
@@ -47,6 +49,7 @@ import static com.cf.imes.framework.common.exception.util.ServiceExceptionUtil.e
import static com.cf.imes.module.executor.enums.ErrorCodeConstants.*; import static com.cf.imes.module.executor.enums.ErrorCodeConstants.*;
import com.cf.imes.framework.security.core.util.SecurityFrameworkUtils; import com.cf.imes.framework.security.core.util.SecurityFrameworkUtils;
/** /**
* 生产单表 order_{N} Service 实现类 * 生产单表 order_{N} Service 实现类
* *
@@ -85,7 +88,6 @@ public class OrderServiceImpl implements OrderService {
private static final int DEFAULT_DAYS_TO_ADD = 30; private static final int DEFAULT_DAYS_TO_ADD = 30;
// private Long organId = SecurityFrameworkUtils.getLoginUser().getOrganId();
@Override @Override
public Long createOrder(OrderSaveReqVO createReqVO) { public Long createOrder(OrderSaveReqVO createReqVO) {
@@ -114,11 +116,12 @@ public class OrderServiceImpl implements OrderService {
} }
@Override @Override
public void deleteOrder(Long id) { public void deleteOrder(Collection<Long> orderIds) {
// 校验存在 // 校验存在
validateOrderExists(id); if (orderMapper.selectBatchIds(orderIds).size() != orderIds.size())
throw exception(ORDER_NOT_EXISTS);
// 删除 // 删除
orderMapper.deleteById(id); orderMapper.deleteBatchIds(orderIds);
} }
private void validateOrderExists(Long id) { private void validateOrderExists(Long id) {
@@ -138,8 +141,8 @@ public class OrderServiceImpl implements OrderService {
} }
@Override @Override
@Transactional(rollbackFor = Exception.class) // 添加事务,异常则回滚所有导入 @Transactional(rollbackFor = Exception.class)
public OrderImportRespVO importOrderList(Boolean upload, MultipartFile file, OrderSaveReqVO createReqVO) throws IOException { public OrderImportRespVO importOrderList(Boolean upload, MultipartFile file, OrderSaveReqVO createReqVO, Boolean isAddPlate) throws IOException {
OrderImportRespVO orderImportRespVO = OrderImportRespVO.builder().createOrder(new ArrayList<>()) OrderImportRespVO orderImportRespVO = OrderImportRespVO.builder().createOrder(new ArrayList<>())
.updateOrder(new ArrayList<>()).failureOrder(new LinkedHashMap<>()).build(); .updateOrder(new ArrayList<>()).failureOrder(new LinkedHashMap<>()).build();
// 上传文件类型判断,抽出文件中的板件信息 // 上传文件类型判断,抽出文件中的板件信息
@@ -150,18 +153,27 @@ public class OrderServiceImpl implements OrderService {
return orderImportRespVO; return orderImportRespVO;
} else if (createReqVO.getDataType() == 3) {//Excel } else if (createReqVO.getDataType() == 3) {//Excel
//文件数据读取 //文件数据读取
list = OrderExcelUtil.read(file, OrderPlateImportExcelVO.class); list = OrderExcelUtil.read(file, OrderPlateImportExcelVO.class);//缺少数据转换
System.out.println("================== " +list);
if (list == null || list.size() == 0) { if (list == null || list.size() == 0) {
orderImportRespVO.getFailureOrder().put("生产单导入错误", String.valueOf(OrderExcelUtil.getValue())); orderImportRespVO.getFailureOrder().put("生产单导入错误", String.valueOf(OrderExcelUtil.getValue()));
return orderImportRespVO; return orderImportRespVO;
} }
} }
Long id;
// 判断是否为为生产单添加板材
if (!isAddPlate) {//只是添加板材
// 判断是否只新建生产单 // 判断是否只新建生产单
Long id = createOrder(createReqVO); id = createOrder(createReqVO);
if (upload) { if (upload) {
orderImportRespVO.getCreateOrder().add(String.valueOf(id)); orderImportRespVO.getCreateOrder().add(String.valueOf(id));
return orderImportRespVO; return orderImportRespVO;
} }
} else {
validateOrderExists(createReqVO.getId());
id = createReqVO.getId();
}
// 根据字段筛选出重复数据 // 根据字段筛选出重复数据
List<OrderPlateImportExcelVO> duplicateOrder = list.stream() List<OrderPlateImportExcelVO> duplicateOrder = list.stream()
.collect( .collect(
@@ -229,7 +241,7 @@ public class OrderServiceImpl implements OrderService {
if (plateOrParts.getGoodType().replaceAll(" ", "").equals("板材") || if (plateOrParts.getGoodType().replaceAll(" ", "").equals("板材") ||
plateOrParts.getGoodType().replaceAll(" ", "").equals("1")) {//板材 plateOrParts.getGoodType().replaceAll(" ", "").equals("1")) {//板材
for (int i = 0; i < plateOrParts.getGoodsNumber(); i++) { for (int i = 0; i < plateOrParts.getGoodsNumber(); i++) {
PlateDO plateDO = BeanUtils.toBean(plateOrParts, PlateDO.class); PlateDO plateDO = BeanUtils.toBean(plateOrParts, PlateDO.class).setOrderId(id).setGoodsId("");
plateMapper.insert(plateDO); plateMapper.insert(plateDO);
Long plateId = plateDO.getId(); Long plateId = plateDO.getId();
OrderItemDO orderItemDO = OrderItemDO.builder().orderId(id).type(1) OrderItemDO orderItemDO = OrderItemDO.builder().orderId(id).type(1)
@@ -262,12 +274,43 @@ public class OrderServiceImpl implements OrderService {
return orderImportRespVO; return orderImportRespVO;
} }
@Override
@Transactional(rollbackFor = Exception.class)
public void cleanOrder(Long orderId) {
// 校验存在
validateOrderExists(orderId);
// 清除
orderBodyMapper.delete(new LambdaQueryWrapper<OrderBodyDO>().eq(OrderBodyDO::getOrderId, orderId));
orderItemMapper.delete(new LambdaQueryWrapper<OrderItemDO>().eq(OrderItemDO::getOrderId, orderId));
orderGroupMapper.delete(new LambdaQueryWrapper<OrderGroupDO>().eq(OrderGroupDO::getOrderId, orderId));
rawGoodsMapper.delete(new LambdaQueryWrapper<RawGoodsDO>().eq(RawGoodsDO::getOrderId, orderId));
orderPartsMapper.delete(new LambdaQueryWrapper<OrderPartsDO>().eq(OrderPartsDO::getOrderId, orderId));
plateMapper.delete(new LambdaQueryWrapper<PlateDO>().eq(PlateDO::getOrderId, orderId));
}
@Override
public PageResult<OrderDO> getAllOrderCheck(OrderPageReqVO pageReqVO) {
return orderMapper.selectOrderCheck(pageReqVO);
}
// 板材信息收集 // 板材信息收集
private List<RawGoodsSaveReqVO> collectImportRawPlate(List<OrderPlateImportExcelVO> list, Long id) { private List<RawGoodsSaveReqVO> collectImportRawPlate(List<OrderPlateImportExcelVO> list, Long id) {
List<RawGoodsSaveReqVO> rawGoodsDOList = new ArrayList<>(); List<RawGoodsSaveReqVO> rawGoodsDOList = new ArrayList<>();
for (OrderPlateImportExcelVO orderPlateImportExcelVO : list) { for (OrderPlateImportExcelVO orderPlateImportExcelVO : list) {
RawGoodsSaveReqVO rawGoodsSaveReqVO = BeanUtils.toBean(orderPlateImportExcelVO, RawGoodsSaveReqVO.class); RawGoodsSaveReqVO rawGoodsSaveReqVO = BeanUtils.toBean(orderPlateImportExcelVO, RawGoodsSaveReqVO.class);
rawGoodsSaveReqVO.setOrderId(id); rawGoodsSaveReqVO.setOrderId(id);
rawGoodsSaveReqVO.setRawGoodsId(orderPlateImportExcelVO.getGoodsId());
// 创建 Pattern 对象
Pattern pattern = Pattern.compile(".*?[^\\d]+(\\d+).*");
Matcher matcher = pattern.matcher(orderPlateImportExcelVO.getSpec());
if (matcher.matches()) {
String number = matcher.group(1);
// 去除空格
number = number.trim();
rawGoodsSaveReqVO.setThickness(Double.valueOf(number));
}
rawGoodsDOList.add(rawGoodsSaveReqVO); rawGoodsDOList.add(rawGoodsSaveReqVO);
} }
return rawGoodsDOList; return rawGoodsDOList;
@@ -321,15 +364,15 @@ public class OrderServiceImpl implements OrderService {
} }
// 业务员是否存在 // 业务员是否存在
private void validateSalesmanOrderNoExists(String salesman , Long organId) { private void validateSalesmanOrderNoExists(String salesman, Long organId) {
if (adminUserApi.validateUser(salesman,organId) == null) { if (adminUserApi.validateUser(salesman, organId).getData() == null) {
throw exception(SALESMAN_ORDER_NOT_EXISTS); throw exception(SALESMAN_ORDER_NOT_EXISTS);
} }
} }
// 拆单员是否存在 // 拆单员是否存在
private void validateSplitterOrderNoExists(String splitter , Long organId) { private void validateSplitterOrderNoExists(String splitter, Long organId) {
if (adminUserApi.validateUser(splitter,organId) == null) { if (adminUserApi.validateUser(splitter, organId).getData() == null) {
throw exception(SPLITTER_ORDER_NOT_EXISTS); throw exception(SPLITTER_ORDER_NOT_EXISTS);
} }
} }
@@ -358,8 +401,9 @@ public class OrderServiceImpl implements OrderService {
Long organId = SecurityFrameworkUtils.getLoginUser().getOrganId(); Long organId = SecurityFrameworkUtils.getLoginUser().getOrganId();
DataPermissionUtils.executeIgnore(() -> { DataPermissionUtils.executeIgnore(() -> {
validateCustomOrderNoExists(customOrderNo); validateCustomOrderNoExists(customOrderNo);
validateSalesmanOrderNoExists(salesman , organId); validateSalesmanOrderNoExists(salesman, organId);
validateSplitterOrderNoExists(splitter , organId); validateSplitterOrderNoExists(splitter, organId);
}); });
} }
} }
@@ -2,6 +2,7 @@ package com.cf.imes.module.executor.service.plate;
import java.util.*; import java.util.*;
import javax.validation.*; import javax.validation.*;
import com.cf.imes.module.executor.controller.admin.plate.vo.*; import com.cf.imes.module.executor.controller.admin.plate.vo.*;
import com.cf.imes.module.executor.controller.admin.rawgoods.vo.RawGoodsImportRespVO; import com.cf.imes.module.executor.controller.admin.rawgoods.vo.RawGoodsImportRespVO;
import com.cf.imes.module.executor.controller.admin.rawgoods.vo.RawGoodsSaveReqVO; import com.cf.imes.module.executor.controller.admin.rawgoods.vo.RawGoodsSaveReqVO;
@@ -63,4 +64,17 @@ public interface PlateService {
*/ */
PlateImportRespVO importPlatesList(List<PlateSaveReqVO> importPlates, Long orderId); PlateImportRespVO importPlatesList(List<PlateSaveReqVO> importPlates, Long orderId);
/**
* @param ids: 待删除板件id集合
* @return void
*/
void deletePlates(Set<Long> ids);
/**
* 获得生产单所有板材
*
* @param orderId 生产单id
* @return List<PlateDO>
*/
List<PlateDO> getPlatesByOrderId(Long orderId);
} }
@@ -1,6 +1,7 @@
package com.cf.imes.module.executor.service.plate; package com.cf.imes.module.executor.service.plate;
import cn.hutool.core.collection.CollUtil; import cn.hutool.core.collection.CollUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.cf.imes.framework.common.exception.ServiceException; import com.cf.imes.framework.common.exception.ServiceException;
import com.cf.imes.framework.common.exception.util.ServiceExceptionUtil; import com.cf.imes.framework.common.exception.util.ServiceExceptionUtil;
import com.cf.imes.module.executor.controller.admin.rawgoods.vo.RawGoodsImportRespVO; import com.cf.imes.module.executor.controller.admin.rawgoods.vo.RawGoodsImportRespVO;
@@ -89,6 +90,7 @@ public class PlateServiceImpl implements PlateService {
.updatePlates(new ArrayList<>()).failurePlates(new LinkedHashMap<>()).build(); .updatePlates(new ArrayList<>()).failurePlates(new LinkedHashMap<>()).build();
importPlates.forEach(plateSaveReqVO -> { importPlates.forEach(plateSaveReqVO -> {
try { try {
// 改成plateMapper.insertBatch()
Long id = (long) plateMapper.insert(BeanUtils.toBean(plateSaveReqVO, PlateDO.class) Long id = (long) plateMapper.insert(BeanUtils.toBean(plateSaveReqVO, PlateDO.class)
.setOrderId(orderId)); .setOrderId(orderId));
respVO.getCreatePlates().add(plateSaveReqVO); respVO.getCreatePlates().add(plateSaveReqVO);
@@ -99,4 +101,16 @@ public class PlateServiceImpl implements PlateService {
return respVO; return respVO;
} }
@Override
public void deletePlates(Set<Long> ids) {
plateMapper.deleteBatchIds(ids);
}
@Override
public List<PlateDO> getPlatesByOrderId(Long orderId) {
List<PlateDO> plates = plateMapper.selectList(new LambdaQueryWrapper<PlateDO>().eq(PlateDO::getOrderId, orderId));
return plates;
}
} }
@@ -0,0 +1,23 @@
package com.cf.imes.module.executor.util.deviseData;
/**
* @projectName: cf_imes_server
* @author: 晨丰科技
* @date: 2024/3/22 16:58
*/
public class HoleDetail {
private Integer HoleID;
private Integer HoleType;// 请定义HoleType枚举类型
private Integer Face; // 请定义FaceType枚举类型
private Integer PointX;
private Integer PointY;
private Integer PointZ;
private Integer Radius;
private Integer Depth;
private Integer EndPoint;
private Integer PointX2;
private Integer PointY2;
private Integer Angle;
}
@@ -0,0 +1,14 @@
package com.cf.imes.module.executor.util.deviseData;
import java.awt.*;
import java.util.ArrayList;
/**
* @projectName: cf_imes_server
* @author: 晨丰科技
* @date: 2024/3/22 16:47
*/
public class IContourData {
private ArrayList<Point> pts;
private Integer[] buls;
}
@@ -0,0 +1,20 @@
package com.cf.imes.module.executor.util.deviseData;
import java.util.Dictionary;
/**
* @projectName: cf_imes_server
* @author: 晨丰科技
* @date: 2024/3/22 16:48
*/
public class IOriginModelingData {
private IContourData outline;
private Dictionary<String, IContourData> holes;
private Integer thickness;
private Integer dir; // 请定义FaceDirection枚举类型
private Integer knifeRadius;
private Integer addLen;
private Integer addWidth;
private Integer addDepth;
}
@@ -0,0 +1,21 @@
package com.cf.imes.module.executor.util.deviseData;
import java.util.List;
/**
* @projectName: cf_imes_server
* @author: 晨丰科技
* @date: 2024/3/22 16:53
*/
public class ModelDetail {
private Integer ModelID;
private Integer LineID;
private Integer Face;
private String KnifeName;
private Integer KnifeRadius;
private Integer Depth;
private IOriginModelingData OriginModeling;
private List<PointList> PointList;
private List<OffSetList> OffSetList;
}
@@ -0,0 +1,16 @@
package com.cf.imes.module.executor.util.deviseData;
/**
* @projectName: cf_imes_server
* @author: 晨丰科技
* @date: 2024/3/22 16:51
*/
public class OffSetList {
private String Name;
private Integer Face;// 请定义FaceType枚举类型
private Integer Value;
private Integer Radius;
private Integer Deep;
private Integer Angle;
}
@@ -0,0 +1,11 @@
package com.cf.imes.module.executor.util.deviseData;
/**
* @projectName: cf_imes_server
* @author: 晨丰科技
* @date: 2024/3/22 17:00
*/
public class OrgPointDetail
{
}
@@ -0,0 +1,14 @@
package com.cf.imes.module.executor.util.deviseData;
/**
* @projectName: cf_imes_server
* @author: 晨丰科技
* @date: 2024/3/22 16:57
*/
public class PointDetail {
private Integer PointID;
private Integer PointX;
private Integer PointY;
private Integer Curve;
private Integer SealSize;
}
@@ -0,0 +1,16 @@
package com.cf.imes.module.executor.util.deviseData;
/**
* @projectName: cf_imes_server
* @author: 晨丰科技
* @date: 2024/3/22 16:49
*/
public class PointList {
private Integer LineID;
private Integer PointID;
private Integer PointX;
private Integer PointY;
private Integer Radius;
private Integer Depth;
private Integer Curve;
}
@@ -0,0 +1,22 @@
package com.cf.imes.module.executor.util.deviseData;
/**
* @projectName: cf_imes_server
* @author: 晨丰科技
* @date: 2024/3/22 18:02
*/
public class SideHoleDetail {
private Integer HoleID;
private Integer HoleType; // 请定义HoleType枚举类型
private Integer Face; // 请定义FaceType枚举类型
private Integer PointX;
private Integer PointY;
private Integer PointZ;
private Integer Radius;
private Integer Depth;
private String EndPoint;
private Integer PointX2;
private Integer PointY2;
private Integer Angle;
}
@@ -0,0 +1,21 @@
package com.cf.imes.module.executor.util.deviseData;
import java.util.List;
/**
* @projectName: cf_imes_server
* @author: 晨丰科技
* @date: 2024/3/22 17:59
*/
public class SideModelDetail {
private Integer ModelID;
private Integer LineID;
private int Face;
private String KnifeName;
private Integer KnifeRadius;
private Integer Depth;
private IOriginModelingData OriginModeling;
private List<PointList> PointList;
private List<OffSetList> OffSetList;
}
@@ -0,0 +1,17 @@
package com.cf.imes.module.executor.util.deviseData;
/**
* @projectName: cf_imes_server
* @author: 晨丰科技
* @date: 2024/3/23 9:10
*/
public class detail {
private ModelDetail ModelDetail ;
private PointDetail PointDetail ;
private HoleDetail HoleDetail ;
private OrgPointDetail OrgPointDetail ;
private SideModelDetail SideModelDetail ;
private SideHoleDetail SideHoleDetail;
private String remark ;
}
@@ -64,7 +64,7 @@ public final class ExcelListener<T> extends AnalysisEventListener<T> {
excelDataConvertException.getColumnIndex(), excelDataConvertException.getCellData()); excelDataConvertException.getColumnIndex(), excelDataConvertException.getCellData());
value = String.valueOf(new RuntimeException("" + (excelDataConvertException.getRowIndex() + 1) + "" + value = String.valueOf(new RuntimeException("" + (excelDataConvertException.getRowIndex() + 1) + "" +
",第" + (excelDataConvertException.getColumnIndex() + 1) + "列读取错误")); ",第" + (excelDataConvertException.getColumnIndex() + 1) + "列读取错误"));
System.out.println();
} }
} }
@@ -16,7 +16,7 @@
"ModelDetail //模块明细": { "ModelDetail //模块明细": {
"ModelID": "number 模块ID", "ModelID": "number 模块ID",
"LineID": "number 纹路ID", "LineID": "number 纹路ID",
"Face": " 板面类型(0正面, 1反面, 2侧面)", "Face": " 板面类型(0正面, 1反面, 2侧面)//排版面",
"KnifeName": " 刀具名称", "KnifeName": " 刀具名称",
"KnifeRadius": "number 刀半径", "KnifeRadius": "number 刀半径",
"Depth": "number 深度", "Depth": "number 深度",
@@ -122,8 +122,7 @@ public class PlateController {
@RequestParam(value = "updateSupport", required = false, defaultValue = "false") Boolean updateSupport, @RequestParam(value = "updateSupport", required = false, defaultValue = "false") Boolean updateSupport,
@RequestParam(value = "organId") Long organId) throws Exception { @RequestParam(value = "organId") Long organId) throws Exception {
List<PlateImportExcelVO> list = ExcelUtils.read(file, PlateImportExcelVO.class); List<PlateImportExcelVO> list = ExcelUtils.read(file, PlateImportExcelVO.class);
return success(plateService.importPlateList(list, updateSupport)); return success(plateService.importPlateList(list, updateSupport , organId));
// return null;
} }
} }
@@ -74,4 +74,9 @@ public class PlateDO extends BaseDO {
*/ */
private String remark; private String remark;
/**
* 组织id
*/
private Long organId;
} }
@@ -15,8 +15,8 @@ import org.apache.ibatis.annotations.Mapper;
@Mapper @Mapper
public interface PlateMapper extends BaseMapperX<PlateDO> { public interface PlateMapper extends BaseMapperX<PlateDO> {
default PlateDO selectByGoodID(String goodId) { default PlateDO selectByGoodID(String goodId , Long organId) {
return selectOne(PlateDO::getGoodsId, goodId); return selectOne(PlateDO::getGoodsId, goodId, PlateDO::getOrganId, organId);
} }
default PageResult<PlateDO> selectPage(PlatePageReqVO reqVO) { default PageResult<PlateDO> selectPage(PlatePageReqVO reqVO) {
@@ -28,7 +28,7 @@ public interface PlateMapper extends BaseMapperX<PlateDO> {
.eqIfPresent(PlateDO::getWidth, reqVO.getWidth()) .eqIfPresent(PlateDO::getWidth, reqVO.getWidth())
.eqIfPresent(PlateDO::getHeight, reqVO.getHeight()) .eqIfPresent(PlateDO::getHeight, reqVO.getHeight())
.eqIfPresent(PlateDO::getThickness, reqVO.getThickness()) .eqIfPresent(PlateDO::getThickness, reqVO.getThickness())
// .eqIfPresent(PlateDO::getPrice, reqVO.getPrice()) .eqIfPresent(PlateDO::getOrganId, reqVO.getOrganId())
.eqIfPresent(PlateDO::getBrand, reqVO.getBrand()) .eqIfPresent(PlateDO::getBrand, reqVO.getBrand())
.eqIfPresent(PlateDO::getSpec, reqVO.getSpec()) .eqIfPresent(PlateDO::getSpec, reqVO.getSpec())
.eqIfPresent(PlateDO::getRemark, reqVO.getRemark()) .eqIfPresent(PlateDO::getRemark, reqVO.getRemark())
@@ -1,10 +1,11 @@
package com.cf.imes.module.manage.framework.rpc.config; package com.cf.imes.module.manage.framework.rpc.config;
import com.cf.imes.module.system.api.organ.OrganApi;
import com.cf.imes.module.system.api.user.AdminUserApi; import com.cf.imes.module.system.api.user.AdminUserApi;
import org.springframework.cloud.openfeign.EnableFeignClients; import org.springframework.cloud.openfeign.EnableFeignClients;
import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Configuration;
@Configuration(proxyBeanMethods = false) @Configuration(proxyBeanMethods = false)
@EnableFeignClients(clients = AdminUserApi.class) @EnableFeignClients(clients = {AdminUserApi.class, OrganApi.class})
public class RpcConfiguration { public class RpcConfiguration {
} }
@@ -63,6 +63,6 @@ public interface PlateService {
* @param isUpdateSupport 是否支持更新 * @param isUpdateSupport 是否支持更新
* @return 导入结果 * @return 导入结果
*/ */
PlateImportRespVO importPlateList(List<PlateImportExcelVO> importUsers, boolean isUpdateSupport); PlateImportRespVO importPlateList(List<PlateImportExcelVO> importUsers, boolean isUpdateSupport , Long organId);
} }
@@ -3,10 +3,14 @@ package com.cf.imes.module.manage.service.plate;
import cn.hutool.core.collection.CollUtil; import cn.hutool.core.collection.CollUtil;
import com.cf.imes.framework.common.exception.ServiceException; import com.cf.imes.framework.common.exception.ServiceException;
import com.cf.imes.framework.common.exception.util.ServiceExceptionUtil; import com.cf.imes.framework.common.exception.util.ServiceExceptionUtil;
import com.cf.imes.framework.common.pojo.CommonResult;
import com.cf.imes.framework.security.core.LoginUser;
import com.cf.imes.framework.security.core.util.SecurityFrameworkUtils;
import com.cf.imes.module.manage.controller.admin.plate.vo.plate.PlateImportExcelVO; import com.cf.imes.module.manage.controller.admin.plate.vo.plate.PlateImportExcelVO;
import com.cf.imes.module.manage.controller.admin.plate.vo.plate.PlateImportRespVO; import com.cf.imes.module.manage.controller.admin.plate.vo.plate.PlateImportRespVO;
import com.cf.imes.module.manage.controller.admin.plate.vo.plate.PlatePageReqVO; import com.cf.imes.module.manage.controller.admin.plate.vo.plate.PlatePageReqVO;
import com.cf.imes.module.manage.controller.admin.plate.vo.plate.PlateSaveReqVO; import com.cf.imes.module.manage.controller.admin.plate.vo.plate.PlateSaveReqVO;
import com.cf.imes.module.system.api.organ.OrganApi;
import com.cf.imes.module.system.enums.ErrorCodeConstants; import com.cf.imes.module.system.enums.ErrorCodeConstants;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
@@ -38,10 +42,17 @@ public class PlateServiceImpl implements PlateService {
@Resource @Resource
private PlateMapper plateMapper; private PlateMapper plateMapper;
@Resource
private OrganApi organApi;
@Override @Override
public Long createPlate(PlateSaveReqVO createReqVO) { public Long createPlate(PlateSaveReqVO createReqVO) {
// 插入
PlateDO plate = BeanUtils.toBean(createReqVO, PlateDO.class); PlateDO plate = BeanUtils.toBean(createReqVO, PlateDO.class);
if (createReqVO.getOrganId() != 0){
validateOrganExists(createReqVO.getOrganId());
validateGoodExists(createReqVO.getGoodsId(), createReqVO.getOrganId());
plate.setOrganId(createReqVO.getOrganId());
}
plateMapper.insert(plate); plateMapper.insert(plate);
// 返回 // 返回
return plate.getId(); return plate.getId();
@@ -51,7 +62,7 @@ public class PlateServiceImpl implements PlateService {
public void updatePlate(PlateSaveReqVO updateReqVO) { public void updatePlate(PlateSaveReqVO updateReqVO) {
// 校验存在 // 校验存在
validatePlateExists(updateReqVO.getId()); validatePlateExists(updateReqVO.getId());
// 更新 // 更新 判断是否有组织id
PlateDO updateObj = BeanUtils.toBean(updateReqVO, PlateDO.class); PlateDO updateObj = BeanUtils.toBean(updateReqVO, PlateDO.class);
plateMapper.updateById(updateObj); plateMapper.updateById(updateObj);
} }
@@ -90,10 +101,11 @@ public class PlateServiceImpl implements PlateService {
@Override @Override
@Transactional(rollbackFor = Exception.class) // 添加事务,异常则回滚所有导入 @Transactional(rollbackFor = Exception.class) // 添加事务,异常则回滚所有导入
public PlateImportRespVO importPlateList(List<PlateImportExcelVO> importPlates, boolean isUpdateSupport) { public PlateImportRespVO importPlateList(List<PlateImportExcelVO> importPlates, boolean isUpdateSupport , Long organId) {
if (CollUtil.isEmpty(importPlates)) { if (CollUtil.isEmpty(importPlates)) {
throw ServiceExceptionUtil.exception(ErrorCodeConstants.PLATE_IMPORT_LIST_IS_EMPTY); throw ServiceExceptionUtil.exception(ErrorCodeConstants.PLATE_IMPORT_LIST_IS_EMPTY);
} }
validateOrganExists(organId);
PlateImportRespVO respVO = PlateImportRespVO.builder().createPlateNames(new ArrayList<>()) PlateImportRespVO respVO = PlateImportRespVO.builder().createPlateNames(new ArrayList<>())
.updatePlateNames(new ArrayList<>()).failurePlateNames(new LinkedHashMap<>()).build(); .updatePlateNames(new ArrayList<>()).failurePlateNames(new LinkedHashMap<>()).build();
importPlates.forEach(importPlate -> { importPlates.forEach(importPlate -> {
@@ -105,7 +117,7 @@ public class PlateServiceImpl implements PlateService {
return; return;
} }
// 判断如果不存在,在进行插入 // 判断如果不存在,在进行插入
PlateDO existPlate = plateMapper.selectByGoodID(importPlate.getGoodsId()); PlateDO existPlate = plateMapper.selectByGoodID(importPlate.getGoodsId(), organId);
if (existPlate == null) { if (existPlate == null) {
plateMapper.insert(BeanUtils.toBean(importPlate, PlateDO.class)); plateMapper.insert(BeanUtils.toBean(importPlate, PlateDO.class));
respVO.getCreatePlateNames().add(importPlate.getGoodsName()); respVO.getCreatePlateNames().add(importPlate.getGoodsName());
@@ -116,15 +128,26 @@ public class PlateServiceImpl implements PlateService {
respVO.getFailurePlateNames().put(importPlate.getGoodsName(), ErrorCodeConstants.PLATE_EXISTS.getMsg()); respVO.getFailurePlateNames().put(importPlate.getGoodsName(), ErrorCodeConstants.PLATE_EXISTS.getMsg());
return; return;
} }
PlateDO updateUser = BeanUtils.toBean(importPlate, PlateDO.class); PlateDO plateDO = BeanUtils.toBean(importPlate, PlateDO.class);
updateUser.setId(existPlate.getId()); plateDO.setId(existPlate.getId());
plateMapper.updateById(updateUser); plateMapper.updateById(plateDO);
respVO.getUpdatePlateNames().add(importPlate.getGoodsName()); respVO.getUpdatePlateNames().add(importPlate.getGoodsName());
}); });
return respVO; return respVO;
} }
private void validateOrganExists(Long organId) {
CommonResult<Boolean> index = organApi.validOrgan(organId);
if (!index.isSuccess()) {
throw exception(ErrorCodeConstants.ORGAN_NOT_EXISTS);
}
}
// 当前组织中板材是否存在
private void validateGoodExists(String goodsId ,Long organId) {
if (plateMapper.selectByGoodID(goodsId ,organId) != null){
throw exception(ErrorCodeConstants.PLATE_EXISTS);
}
}
} }
@@ -26,4 +26,7 @@ public interface DictTypeConstants {
String SMS_SEND_STATUS = "system_sms_send_status"; // 短信发送状态 String SMS_SEND_STATUS = "system_sms_send_status"; // 短信发送状态
String SMS_RECEIVE_STATUS = "system_sms_receive_status"; // 短信接收状态 String SMS_RECEIVE_STATUS = "system_sms_receive_status"; // 短信接收状态
String YPOGRAPHY_TYPE = "ypographyType"; // 排版面
String GRAIN_TYPE = "grainType";//纹路类型
String DOOR_OPENING_DIRECTIONS = "doorOpeningDirections";//开门方向
} }