|
@@ -0,0 +1,130 @@
|
|
|
+package com.sd.business.service.order.impl;
|
|
|
+
|
|
|
+import cn.hutool.core.util.StrUtil;
|
|
|
+import com.ruoyi.common.utils.SecurityUtils;
|
|
|
+import com.sd.business.entity.bom.po.BomSpec;
|
|
|
+import com.sd.business.entity.order.dto.OrderSkuArtworkMakeDto;
|
|
|
+import com.sd.business.entity.order.enums.ArtworkLogTypeEnum;
|
|
|
+import com.sd.business.entity.order.po.OrderInfo;
|
|
|
+import com.sd.business.entity.order.po.OrderSku;
|
|
|
+import com.sd.business.entity.order.po.OrderSkuArtworkLog;
|
|
|
+import com.sd.business.entity.order.po.OrderSkuArtworkMake;
|
|
|
+import com.sd.business.entity.sku.po.SkuUser;
|
|
|
+import com.sd.business.mapper.order.OrderSkuArtworkMakeMapper;
|
|
|
+import com.sd.business.service.order.OrderSkuArtworkLogService;
|
|
|
+import com.sd.business.service.order.OrderSkuArtworkMakeService;
|
|
|
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
|
+import com.sd.business.entity.order.vo.OrderSkuArtworkMakeVo;
|
|
|
+import com.sd.business.entity.order.dto.OrderSkuArtworkMakeSelectDto;
|
|
|
+import com.sd.framework.util.sql.Sql;
|
|
|
+import com.sd.framework.util.Assert;
|
|
|
+import org.springframework.beans.factory.annotation.Autowired;
|
|
|
+import org.springframework.stereotype.Service;
|
|
|
+
|
|
|
+import java.util.ArrayList;
|
|
|
+import java.util.List;
|
|
|
+import java.util.Objects;
|
|
|
+
|
|
|
+
|
|
|
+/**
|
|
|
+ * <p>
|
|
|
+ * 订单sku图稿制作 服务实现类
|
|
|
+ * </p>
|
|
|
+ *
|
|
|
+ * @author
|
|
|
+ * @since 2023-12-07
|
|
|
+ */
|
|
|
+@Service
|
|
|
+public class OrderSkuArtworkMakeServiceImpl extends ServiceImpl<OrderSkuArtworkMakeMapper, OrderSkuArtworkMake> implements OrderSkuArtworkMakeService {
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private OrderSkuArtworkLogService orderSkuArtworkLogService;
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public Page<OrderSkuArtworkMakeVo> getPage(OrderSkuArtworkMakeSelectDto dto) {
|
|
|
+
|
|
|
+ Page<OrderSkuArtworkMakeVo> page = Sql.create(OrderSkuArtworkMakeVo.class)
|
|
|
+ .selectAll(OrderSkuArtworkMake.class)
|
|
|
+ .selectAs(OrderInfo::getCode, OrderSkuArtworkMakeVo::getOrderCode)
|
|
|
+ .selectAs(SkuUser::getCode, OrderSkuArtworkMakeVo::getSkuCode)
|
|
|
+ .selectAs(BomSpec::getCode, OrderSkuArtworkMakeVo::getBomSpecCode)
|
|
|
+ .from(OrderSkuArtworkMake.class)
|
|
|
+ .innerJoin(OrderInfo.class, OrderInfo::getId, OrderSkuArtworkMake::getOrderId)
|
|
|
+ .innerJoin(OrderSku.class, OrderSku::getId, OrderSkuArtworkMake::getOrderSkuId)
|
|
|
+ .leftJoin(BomSpec.class, BomSpec::getId, OrderSku::getBomSpecId)
|
|
|
+ .leftJoin(SkuUser.class, SkuUser::getId, OrderSku::getSkuUserId)
|
|
|
+ .eq(OrderSkuArtworkMake::getStatus, dto.getStatus())
|
|
|
+ .like(OrderInfo::getCode, dto.getOrderCode())
|
|
|
+ .like(SkuUser::getCode, dto.getSkuCode())
|
|
|
+ .like(BomSpec::getCode, dto.getBomSpecCode())
|
|
|
+ .orderByDesc(OrderSkuArtworkMake::getId)
|
|
|
+ .page(dto);
|
|
|
+
|
|
|
+ return page;
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public OrderSkuArtworkMakeVo detail(Long id) {
|
|
|
+
|
|
|
+ OrderSkuArtworkMakeVo vo = Sql.create(OrderSkuArtworkMakeVo.class)
|
|
|
+ .selectAll(OrderSkuArtworkMake.class)
|
|
|
+ .selectAs(OrderInfo::getCode, OrderSkuArtworkMakeVo::getOrderCode)
|
|
|
+ .selectAs(SkuUser::getCode, OrderSkuArtworkMakeVo::getSkuCode)
|
|
|
+ .selectAs(BomSpec::getCode, OrderSkuArtworkMakeVo::getBomSpecCode)
|
|
|
+ .selectAs(BomSpec::getName, OrderSkuArtworkMakeVo::getBomSpecName)
|
|
|
+ .select(BomSpec::getLength)
|
|
|
+ .select(BomSpec::getWidth)
|
|
|
+ .select(BomSpec::getHeight)
|
|
|
+ .from(OrderSkuArtworkMake.class)
|
|
|
+ .innerJoin(OrderInfo.class, OrderInfo::getId, OrderSkuArtworkMake::getOrderId)
|
|
|
+ .innerJoin(OrderSku.class, OrderSku::getId, OrderSkuArtworkMake::getOrderSkuId)
|
|
|
+ .leftJoin(BomSpec.class, BomSpec::getId, OrderSku::getBomSpecId)
|
|
|
+ .leftJoin(SkuUser.class, SkuUser::getId, OrderSku::getSkuUserId)
|
|
|
+ .eq(OrderSkuArtworkMake::getId, id)
|
|
|
+ .one();
|
|
|
+
|
|
|
+ Assert.notNull(vo, "未知数据");
|
|
|
+
|
|
|
+ return vo;
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void edit(OrderSkuArtworkMakeDto orderSkuArtworkMakeDto) {
|
|
|
+ OrderSkuArtworkMake orderSkuArtworkMake = this.getById(orderSkuArtworkMakeDto.getId());
|
|
|
+ Assert.notNull(orderSkuArtworkMake, "未知数据");
|
|
|
+
|
|
|
+ List<OrderSkuArtworkLog> orderSkuArtworkLogList = new ArrayList<>();
|
|
|
+
|
|
|
+ if (StrUtil.isNotBlank(orderSkuArtworkMakeDto.getProofingImg())
|
|
|
+ && !Objects.equals(orderSkuArtworkMake.getProofingImg(), orderSkuArtworkMakeDto.getProofingImg())) {
|
|
|
+ // 新增图稿日志 上传打样图
|
|
|
+ OrderSkuArtworkLog orderSkuArtworkLog = new OrderSkuArtworkLog();
|
|
|
+ orderSkuArtworkLog.setOrderId(orderSkuArtworkMakeDto.getOrderId());
|
|
|
+ orderSkuArtworkLog.setOrderSkuId(orderSkuArtworkMakeDto.getOrderSkuId());
|
|
|
+ orderSkuArtworkLog.setType(ArtworkLogTypeEnum.UPLOAD_PROOFING_IMG.getKey());
|
|
|
+ orderSkuArtworkLog.setOperator(SecurityUtils.getLoginUser().getUser().getNickName());
|
|
|
+ orderSkuArtworkLogList.add(orderSkuArtworkLog);
|
|
|
+ // 打样图有调整时,状态不为已确认,都修改为待确认
|
|
|
+ if (!Objects.equals(orderSkuArtworkMake.getStatus(), 3)) {
|
|
|
+ orderSkuArtworkMakeDto.setStatus(1);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if (StrUtil.isNotBlank(orderSkuArtworkMakeDto.getProductionDocument())
|
|
|
+ && !Objects.equals(orderSkuArtworkMake.getProductionDocument(), orderSkuArtworkMakeDto.getProductionDocument())) {
|
|
|
+ // 新增图稿日志 上传设计图稿
|
|
|
+ OrderSkuArtworkLog orderSkuArtworkLog = new OrderSkuArtworkLog();
|
|
|
+ orderSkuArtworkLog.setOrderId(orderSkuArtworkMakeDto.getOrderId());
|
|
|
+ orderSkuArtworkLog.setOrderSkuId(orderSkuArtworkMakeDto.getOrderSkuId());
|
|
|
+ orderSkuArtworkLog.setType(ArtworkLogTypeEnum.UPLOAD_PRODUCTION_DOCUMENT.getKey());
|
|
|
+ orderSkuArtworkLog.setOperator(SecurityUtils.getLoginUser().getUser().getNickName());
|
|
|
+ orderSkuArtworkLogList.add(orderSkuArtworkLog);
|
|
|
+ }
|
|
|
+
|
|
|
+ this.updateById(orderSkuArtworkMakeDto);
|
|
|
+ if (!orderSkuArtworkLogList.isEmpty()) {
|
|
|
+ orderSkuArtworkLogService.saveBatch(orderSkuArtworkLogList);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+}
|