From b9faebb0ae35fb0317ae63d2ed94d27f7112c670 Mon Sep 17 00:00:00 2001
From: skyouc
Date: 星期二, 01 四月 2025 16:34:55 +0800
Subject: [PATCH] 新增历史质检上报记录 新增质检接口

---
 rsf-server/src/main/resources/mapper/manager/IsptHistoriesMapper.xml                               |    2 
 rsf-server/src/main/java/com/vincent/rsf/server/manager/service/IsptHistoriesService.java          |    8 
 rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/WaitPakinController.java        |   12 +
 rsf-server/src/main/java/com/vincent/rsf/server/api/service/MobileService.java                     |    2 
 rsf-server/src/main/java/com/vincent/rsf/server/api/controller/MobileController.java               |    9 +
 rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/IsptHistories.java                  |  202 ++++++++++++++++++++++
 rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/MobileServiceImpl.java            |   46 +++++
 rsf-server/src/main/java/com/vincent/rsf/server/manager/mapper/IsptHistoriesMapper.java            |   12 +
 rsf-server/src/main/java/com/vincent/rsf/server/api/entity/dto/InspectDetlDto.java                 |   26 ++
 rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/TaskItem.java                       |    4 
 rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/TaskServiceImpl.java          |   22 +
 /dev/null                                                                                          |    5 
 rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/QlyInspectController.java       |    7 
 rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/IsptHistoriesController.java    |  110 ++++++++++++
 rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/IsptHistoriesServiceImpl.java |   12 +
 rsf-server/src/main/java/com/vincent/rsf/server/api/entity/dto/ReceiptDetlsDto.java                |    3 
 rsf-server/src/main/java/com/vincent/rsf/server/manager/service/TaskService.java                   |    2 
 rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/TaskController.java             |    7 
 rsf-server/src/main/java/com/vincent/rsf/server/api/entity/dto/InspectItemDto.java                 |   31 +++
 19 files changed, 500 insertions(+), 22 deletions(-)

diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/api/controller/MobileController.java b/rsf-server/src/main/java/com/vincent/rsf/server/api/controller/MobileController.java
index bfa87a9..433b450 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/api/controller/MobileController.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/api/controller/MobileController.java
@@ -163,7 +163,16 @@
             return R.error("璺熻釜鐮佷笉鑳戒负绌猴紒锛�");
         }
         return R.ok(mobileService.unBind(param));
+    }
 
+    @ApiOperation("鎶ユ")
+    @GetMapping("/asnOrder/inspect/{code}")
+    @PreAuthorize("hasAuthority('manager:waitPakin:list')")
+    public R getAsnOdrers(@PathVariable String code) {
+        if (Objects.isNull(code)) {
+            throw new CoolException("鍙傛暟涓嶈兘涓虹┖锛侊紒");
+        }
+        return mobileService.inspect(code, getLoginUserId());
     }
 
 }
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/api/entity/dto/InspectDetlDto.java b/rsf-server/src/main/java/com/vincent/rsf/server/api/entity/dto/InspectDetlDto.java
new file mode 100644
index 0000000..6637d98
--- /dev/null
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/api/entity/dto/InspectDetlDto.java
@@ -0,0 +1,26 @@
+package com.vincent.rsf.server.api.entity.dto;
+
+import com.vincent.rsf.server.manager.entity.IsptHistories;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.experimental.Accessors;
+
+import java.util.List;
+
+@Data
+@Accessors(chain = true)
+@ApiModel(value = "InspectDetlDto", description = "涓婃姤鏄庣粏")
+public class InspectDetlDto {
+    @ApiModelProperty("鍗曞彿")
+    private String code;
+    @ApiModelProperty("PO鍗曞彿")
+    private String poCode;
+    @ApiModelProperty("鏄庣粏")
+    private List<InspectItemDto> items;
+    @ApiModelProperty("涓婃姤鍘嗗彶")
+    private List<IsptHistories> histories;
+}
+
+
+
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/api/entity/dto/InspectItemDto.java b/rsf-server/src/main/java/com/vincent/rsf/server/api/entity/dto/InspectItemDto.java
new file mode 100644
index 0000000..f164f33
--- /dev/null
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/api/entity/dto/InspectItemDto.java
@@ -0,0 +1,31 @@
+package com.vincent.rsf.server.api.entity.dto;
+
+
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.experimental.Accessors;
+
+@Data
+@Accessors(chain = true)
+@ApiModel(value = "InspectItemDto", description = "PDA鎶ユ鏄庣粏")
+public class InspectItemDto {
+
+    @ApiModelProperty("鐗╂枡鍚嶇О")
+    private String maktx;
+    @ApiModelProperty("鍒嗙粍缂栫爜")
+    private String groupCode;
+    @ApiModelProperty("鍒嗙粍鍚嶇О")
+    private String group;
+    @ApiModelProperty("鐗╂枡缂栫爜")
+    private String matnrCode;
+    @ApiModelProperty("閲囪喘鍗曚綅")
+    private String purUnit;
+    @ApiModelProperty("閲囪喘鏁伴噺")
+    private Double purQty;
+    @ApiModelProperty("渚涘簲鍟嗗悕绉�")
+    private String suplierName;
+    @ApiModelProperty("渚涘簲鍟嗙紪鐮�")
+    private String suplierCode;
+}
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/api/entity/dto/ReceiptDetlsDto.java b/rsf-server/src/main/java/com/vincent/rsf/server/api/entity/dto/ReceiptDetlsDto.java
index e5a383f..dbd980b 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/api/entity/dto/ReceiptDetlsDto.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/api/entity/dto/ReceiptDetlsDto.java
@@ -46,6 +46,9 @@
     @ApiModelProperty("鏈�澶у簱瀛�")
     private Double maxQty;
 
+    @ApiModelProperty("宸叉敹璐ф暟閲�")
+    private Double qty;
+
     @ApiModelProperty("骞冲彴琛屽彿")
     private String platformId;
 
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/api/service/MobileService.java b/rsf-server/src/main/java/com/vincent/rsf/server/api/service/MobileService.java
index 6475f1c..2b3058d 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/api/service/MobileService.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/api/service/MobileService.java
@@ -40,4 +40,6 @@
     WaitPakin mergeItems(WaitPakinParam waitPakin);
 
     WaitPakin unBind(WaitPakinParam param);
+
+    R inspect(String code, Long loginUserId);
 }
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/MobileServiceImpl.java b/rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/MobileServiceImpl.java
index a43f68a..f970056 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/MobileServiceImpl.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/MobileServiceImpl.java
@@ -6,6 +6,8 @@
 import com.vincent.rsf.framework.exception.CoolException;
 import com.vincent.rsf.server.api.controller.params.OtherReceiptParams;
 import com.vincent.rsf.server.api.controller.params.ReceiptParams;
+import com.vincent.rsf.server.api.entity.dto.InspectDetlDto;
+import com.vincent.rsf.server.api.entity.dto.InspectItemDto;
 import com.vincent.rsf.server.api.entity.dto.ReceiptDetlsDto;
 import com.vincent.rsf.server.api.entity.enums.OrderWorkType;
 import com.vincent.rsf.server.api.service.MobileService;
@@ -82,6 +84,8 @@
     private PurchaseItemMapper purchaseItemMapper;
     @Resource
     private FieldsMapper fieldsMapper;
+    @Autowired
+    private IsptHistoriesMapper isptHistoriesMapper;
 
     @Autowired
     private AsnOrderLogService asnOrderLogService;
@@ -421,6 +425,47 @@
     }
 
     /**
+     * 鎶ユ鍔熻兘
+     * @param code
+     * @param loginUserId
+     * @return
+     */
+    @Override
+    public R inspect(String code, Long loginUserId) {
+        AsnOrder asnOrders = asnOrderMapper.selectOne(new LambdaQueryWrapper<AsnOrder>().eq(AsnOrder::getCode, code));
+        if (Objects.isNull(asnOrders)) {
+            throw new CoolException("鍗曟嵁涓嶅瓨鍦紒锛�");
+        }
+        InspectDetlDto detlDto = new InspectDetlDto();
+        detlDto.setCode(asnOrders.getCode()).setPoCode(asnOrders.getPoCode());
+        List<AsnOrderItem> orderItems = asnOrderItemMapper.selectList(new LambdaQueryWrapper<AsnOrderItem>().eq(AsnOrderItem::getAsnCode, code));
+        if (orderItems.isEmpty()) {
+            detlDto.setItems(new ArrayList<>());
+        } else {
+            List<InspectItemDto> itemDtos = new ArrayList<>();
+            orderItems.forEach(dto -> {
+                InspectItemDto itemDto = new InspectItemDto();
+                if (!Objects.isNull(dto.getMatnrCode())) {
+                    Matnr matnr = matnrMapper.selectOne(new LambdaQueryWrapper<Matnr>().eq(Matnr::getCode, dto.getMatnrCode()));
+                    itemDto.setGroup(matnr.getGroupCode());
+                }
+                itemDto.setMaktx(dto.getMaktx())
+                        .setMatnrCode(dto.getMatnrCode())
+                        .setPurUnit(dto.getPurUnit())
+                        .setSuplierCode(dto.getSplrCode())
+                        .setSuplierName(dto.getSplrName())
+                        .setPurQty(dto.getPurQty());
+                itemDtos.add(itemDto);
+            });
+            detlDto.setItems(itemDtos);
+        }
+
+        List<IsptHistories> histories = isptHistoriesMapper.selectList(new LambdaQueryWrapper<IsptHistories>().eq(IsptHistories::getAsnId, asnOrders.getId()));
+        detlDto.setHistories(histories);
+        return R.ok(detlDto);
+    }
+
+    /**
      * 鑾峰彇ReceiptDetlsDtos
      */
     private R getAsnOrderItem(List<AsnOrderItem> items) {
@@ -431,6 +476,7 @@
             detlsDto.setAsnCode(asnOrderItem.getAsnCode())
                     .setMaktx(asnOrderItem.getMaktx())
                     .setBarcode(asnOrderItem.getTrackCode())
+                    .setQty(asnOrderItem.getQty())
                     .setPoCode(asnOrderItem.getPoCode())
                     .setAnfme(asnOrderItem.getAnfme())
                     .setPurQty(asnOrderItem.getPurQty())
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/IsptHistoriesController.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/IsptHistoriesController.java
new file mode 100644
index 0000000..d8ca91c
--- /dev/null
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/IsptHistoriesController.java
@@ -0,0 +1,110 @@
+package com.vincent.rsf.server.manager.controller;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.vincent.rsf.framework.common.Cools;
+import com.vincent.rsf.framework.common.R;
+import com.vincent.rsf.server.common.utils.ExcelUtil;
+import com.vincent.rsf.server.common.annotation.OperationLog;
+import com.vincent.rsf.server.common.domain.BaseParam;
+import com.vincent.rsf.server.common.domain.KeyValVo;
+import com.vincent.rsf.server.common.domain.PageParam;
+import com.vincent.rsf.server.manager.entity.IsptHistories;
+import com.vincent.rsf.server.manager.service.IsptHistoriesService;
+import com.vincent.rsf.server.system.controller.BaseController;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.web.bind.annotation.*;
+
+import javax.servlet.http.HttpServletResponse;
+import java.util.*;
+
+@RestController
+public class IsptHistoriesController extends BaseController {
+
+    @Autowired
+    private IsptHistoriesService isptHistoriesService;
+
+    @PreAuthorize("hasAuthority('manager:isptHistories:list')")
+    @PostMapping("/isptHistories/page")
+    public R page(@RequestBody Map<String, Object> map) {
+        BaseParam baseParam = buildParam(map, BaseParam.class);
+        PageParam<IsptHistories, BaseParam> pageParam = new PageParam<>(baseParam, IsptHistories.class);
+        return R.ok().add(isptHistoriesService.page(pageParam, pageParam.buildWrapper(true)));
+    }
+
+    @PreAuthorize("hasAuthority('manager:isptHistories:list')")
+    @PostMapping("/isptHistories/list")
+    public R list(@RequestBody Map<String, Object> map) {
+        return R.ok().add(isptHistoriesService.list());
+    }
+
+    @PreAuthorize("hasAuthority('manager:isptHistories:list')")
+    @PostMapping({"/isptHistories/many/{ids}", "/isptHistoriess/many/{ids}"})
+    public R many(@PathVariable Long[] ids) {
+        return R.ok().add(isptHistoriesService.listByIds(Arrays.asList(ids)));
+    }
+
+    @PreAuthorize("hasAuthority('manager:isptHistories:list')")
+    @GetMapping("/isptHistories/{id}")
+    public R get(@PathVariable("id") Long id) {
+        return R.ok().add(isptHistoriesService.getById(id));
+    }
+
+    @PreAuthorize("hasAuthority('manager:isptHistories:save')")
+    @OperationLog("Create 浠诲姟宸ヤ綔妗�")
+    @PostMapping("/isptHistories/save")
+    public R save(@RequestBody IsptHistories isptHistories) {
+        isptHistories.setCreateBy(getLoginUserId());
+        isptHistories.setCreateTime(new Date());
+        isptHistories.setUpdateBy(getLoginUserId());
+        isptHistories.setUpdateTime(new Date());
+        if (!isptHistoriesService.save(isptHistories)) {
+            return R.error("Save Fail");
+        }
+        return R.ok("Save Success").add(isptHistories);
+    }
+
+    @PreAuthorize("hasAuthority('manager:isptHistories:update')")
+    @OperationLog("Update 浠诲姟宸ヤ綔妗�")
+    @PostMapping("/isptHistories/update")
+    public R update(@RequestBody IsptHistories isptHistories) {
+        isptHistories.setUpdateBy(getLoginUserId());
+        isptHistories.setUpdateTime(new Date());
+        if (!isptHistoriesService.updateById(isptHistories)) {
+            return R.error("Update Fail");
+        }
+        return R.ok("Update Success").add(isptHistories);
+    }
+
+    @PreAuthorize("hasAuthority('manager:isptHistories:remove')")
+    @OperationLog("Delete 浠诲姟宸ヤ綔妗�")
+    @PostMapping("/isptHistories/remove/{ids}")
+    public R remove(@PathVariable Long[] ids) {
+        if (!isptHistoriesService.removeByIds(Arrays.asList(ids))) {
+            return R.error("Delete Fail");
+        }
+        return R.ok("Delete Success").add(ids);
+    }
+
+    @PreAuthorize("hasAuthority('manager:isptHistories:list')")
+    @PostMapping("/isptHistories/query")
+    public R query(@RequestParam(required = false) String condition) {
+        List<KeyValVo> vos = new ArrayList<>();
+        LambdaQueryWrapper<IsptHistories> wrapper = new LambdaQueryWrapper<>();
+        if (!Cools.isEmpty(condition)) {
+            wrapper.like(IsptHistories::getName, condition);
+        }
+        isptHistoriesService.page(new Page<>(1, 30), wrapper).getRecords().forEach(
+                item -> vos.add(new KeyValVo(item.getId(), item.getName()))
+        );
+        return R.ok().add(vos);
+    }
+
+    @PreAuthorize("hasAuthority('manager:isptHistories:list')")
+    @PostMapping("/isptHistories/export")
+    public void export(@RequestBody Map<String, Object> map, HttpServletResponse response) throws Exception {
+        ExcelUtil.build(ExcelUtil.create(isptHistoriesService.list(), IsptHistories.class), response);
+    }
+
+}
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/QlyInspectController.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/QlyInspectController.java
index bf03f2b..57d0e20 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/QlyInspectController.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/QlyInspectController.java
@@ -126,6 +126,13 @@
     @OperationLog("Delete 璐ㄦ淇℃伅")
     @PostMapping("/qlyInspect/remove/{ids}")
     public R remove(@PathVariable Long[] ids) {
+        if (Objects.isNull(ids) || ids.length < 1) {
+            return R.error("鑳芥暟涓嶈兘涓虹┖锛侊紒");
+        }
+        List<QlyInspect> qlyInspects = qlyInspectService.list(new LambdaQueryWrapper<QlyInspect>().in(QlyInspect::getId, ids));
+        if (!qlyInspects.isEmpty()) {
+            return R.error("鏈夋槑缁嗗垪琛ㄥ瓨鍦紒锛�");
+        }
         if (!qlyInspectService.removeByIds(Arrays.asList(ids))) {
             return R.error("Delete Fail");
         }
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/TaskController.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/TaskController.java
index a9fae5a..2805e07 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/TaskController.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/TaskController.java
@@ -91,11 +91,12 @@
         if (Objects.isNull(ids) || ids.length < 1) {
             return R.error("鍙傛暟涓嶈兘涓虹┖锛侊紒");
         }
+        List<TaskItem> list = taskItemService.list(new LambdaQueryWrapper<TaskItem>().in(TaskItem::getTaskId, ids));
+        if (!list.isEmpty()) {
+            return R.error("鏈夋槑缁嗗垪琛ㄥ瓨鍦� 锛侊紒");
+        }
         if (!taskService.removeByIds(Arrays.asList(ids))) {
             return R.error("Delete Fail");
-        }
-        if (!taskItemService.remove(new LambdaQueryWrapper<TaskItem>().in(TaskItem::getTaskId, ids))) {
-            return R.error("鍒犻櫎澶辫触锛侊紒");
         }
         return R.ok("Delete Success").add(ids);
     }
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/WaitPakinController.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/WaitPakinController.java
index 9bc3c5d..0c29bfe 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/WaitPakinController.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/WaitPakinController.java
@@ -12,7 +12,9 @@
 import com.vincent.rsf.server.common.domain.PageParam;
 import com.vincent.rsf.server.manager.controller.params.WaitPakinParam;
 import com.vincent.rsf.server.manager.entity.WaitPakin;
+import com.vincent.rsf.server.manager.entity.WaitPakinItem;
 import com.vincent.rsf.server.manager.service.TaskService;
+import com.vincent.rsf.server.manager.service.WaitPakinItemService;
 import com.vincent.rsf.server.manager.service.WaitPakinService;
 import com.vincent.rsf.server.system.controller.BaseController;
 import io.swagger.annotations.Api;
@@ -31,6 +33,9 @@
 
     @Autowired
     private WaitPakinService waitPakinService;
+
+    @Autowired
+    private WaitPakinItemService waitPakinItemService;
 
     @Autowired
     private TaskService taskService;
@@ -96,6 +101,11 @@
     @OperationLog("Delete 缁勬嫋妗�")
     @PostMapping("/waitPakin/remove/{ids}")
     public R remove(@PathVariable Long[] ids) {
+        List<WaitPakinItem> pakinItems = waitPakinItemService.list(new LambdaQueryWrapper<WaitPakinItem>()
+                .in(WaitPakinItem::getPakinId, ids));
+        if (!pakinItems.isEmpty()) {
+            return R.error("缁勬嫋妗f湁鏄庣粏浠诲姟");
+        }
         if (!waitPakinService.removeByIds(Arrays.asList(ids))) {
             return R.error("Delete Fail");
         }
@@ -130,7 +140,7 @@
         if (Objects.isNull(waitPakin) || waitPakin.isEmpty()) {
             throw new CoolException("鍙傛暟涓嶈兘涓虹┖锛侊紒");
         }
-        return  taskService.generateTasks(waitPakin);
+        return  taskService.generateTasks(waitPakin, getLoginUserId());
     }
 
 }
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/IsptHistories.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/IsptHistories.java
new file mode 100644
index 0000000..950d111
--- /dev/null
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/IsptHistories.java
@@ -0,0 +1,202 @@
+package com.vincent.rsf.server.manager.entity;
+
+import com.baomidou.mybatisplus.annotation.TableLogic;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+import org.springframework.format.annotation.DateTimeFormat;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableLogic;
+import com.baomidou.mybatisplus.annotation.TableName;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import com.vincent.rsf.framework.common.Cools;
+import com.vincent.rsf.framework.common.SpringUtils;
+import com.vincent.rsf.server.system.service.UserService;
+import com.vincent.rsf.server.system.entity.User;
+import java.io.Serializable;
+import java.util.Date;
+
+@Data
+@TableName("man_ispt_histories")
+public class IsptHistories implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * ID
+     */
+    @ApiModelProperty(value= "ID")
+    @TableId(value = "id", type = IdType.AUTO)
+    private Long id;
+
+    /**
+     * 鍗曞彿
+     */
+    @ApiModelProperty(value= "鍗曞彿")
+    private String code;
+
+    /**
+     * 涓婃姤浜哄憳
+     */
+    @ApiModelProperty(value= "涓婃姤浜哄憳")
+    private String operator;
+
+    /**
+     * 鍗曟嵁ID
+     */
+    @ApiModelProperty(value= "鍗曟嵁ID")
+    private Long asnId;
+
+    /**
+     * 鍚嶇О
+     */
+    @ApiModelProperty(value= "鍚嶇О")
+    private String name;
+
+    /**
+     * 鐘舵�� 1: 姝e父  0: 鍐荤粨  
+     */
+    @ApiModelProperty(value= "鐘舵�� 1: 姝e父  0: 鍐荤粨  ")
+    private Integer status;
+
+    /**
+     * 鏄惁鍒犻櫎 1: 鏄�  0: 鍚�  
+     */
+    @ApiModelProperty(value= "鏄惁鍒犻櫎 1: 鏄�  0: 鍚�  ")
+    @TableLogic
+    private Integer deleted;
+
+    /**
+     * 绉熸埛
+     */
+    @ApiModelProperty(value= "绉熸埛")
+    private Integer tenantId;
+
+    /**
+     * 娣诲姞浜哄憳
+     */
+    @ApiModelProperty(value= "娣诲姞浜哄憳")
+    private Long createBy;
+
+    /**
+     * 娣诲姞鏃堕棿
+     */
+    @ApiModelProperty(value= "娣诲姞鏃堕棿")
+    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+    private Date createTime;
+
+    /**
+     * 淇敼浜哄憳
+     */
+    @ApiModelProperty(value= "淇敼浜哄憳")
+    private Long updateBy;
+
+    /**
+     * 淇敼鏃堕棿
+     */
+    @ApiModelProperty(value= "淇敼鏃堕棿")
+    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+    private Date updateTime;
+
+    /**
+     * 澶囨敞
+     */
+    @ApiModelProperty(value= "澶囨敞")
+    private String memo;
+
+    public IsptHistories() {}
+
+    public IsptHistories(String code,String operator,Long asnId,String name,Integer status,Integer deleted,Integer tenantId,Long createBy,Date createTime,Long updateBy,Date updateTime,String memo) {
+        this.code = code;
+        this.operator = operator;
+        this.asnId = asnId;
+        this.name = name;
+        this.status = status;
+        this.deleted = deleted;
+        this.tenantId = tenantId;
+        this.createBy = createBy;
+        this.createTime = createTime;
+        this.updateBy = updateBy;
+        this.updateTime = updateTime;
+        this.memo = memo;
+    }
+
+//    IsptHistories isptHistories = new IsptHistories(
+//            null,    // 鍗曞彿
+//            null,    // 涓婃姤浜哄憳
+//            null,    // 鍗曟嵁ID
+//            null,    // 鍚嶇О
+//            null,    // 鐘舵�乕闈炵┖]
+//            null,    // 鏄惁鍒犻櫎[闈炵┖]
+//            null,    // 绉熸埛
+//            null,    // 娣诲姞浜哄憳
+//            null,    // 娣诲姞鏃堕棿[闈炵┖]
+//            null,    // 淇敼浜哄憳
+//            null,    // 淇敼鏃堕棿[闈炵┖]
+//            null    // 澶囨敞
+//    );
+
+    public String getStatus$(){
+        if (null == this.status){ return null; }
+        switch (this.status){
+            case 1:
+                return "姝e父";
+            case 0:
+                return "鍐荤粨";
+            default:
+                return String.valueOf(this.status);
+        }
+    }
+
+    public String getCreateBy$(){
+        UserService service = SpringUtils.getBean(UserService.class);
+        User user = service.getById(this.createBy);
+        if (!Cools.isEmpty(user)){
+            return String.valueOf(user.getNickname());
+        }
+        return null;
+    }
+
+    public String getCreateTime$(){
+        if (Cools.isEmpty(this.createTime)){
+            return "";
+        }
+        return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.createTime);
+    }
+
+    public String getUpdateBy$(){
+        UserService service = SpringUtils.getBean(UserService.class);
+        User user = service.getById(this.updateBy);
+        if (!Cools.isEmpty(user)){
+            return String.valueOf(user.getNickname());
+        }
+        return null;
+    }
+
+    public String getUpdateTime$(){
+        if (Cools.isEmpty(this.updateTime)){
+            return "";
+        }
+        return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.updateTime);
+    }
+
+
+
+    public Boolean getStatusBool(){
+        if (null == this.status){ return null; }
+        switch (this.status){
+            case 1:
+                return true;
+            case 0:
+                return false;
+            default:
+                return null;
+        }
+    }
+
+}
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/TaskItem.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/TaskItem.java
index 87aeffc..5e36040 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/TaskItem.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/TaskItem.java
@@ -55,9 +55,8 @@
     @ApiModelProperty(value= "鐗╂枡鍚嶇О")
     private String maktx;
 
-
     @ApiModelProperty("婧愮紪鐮�")
-    private String sourceCode;
+    private Long source;
 
     @ApiModelProperty("鍗曟嵁ID")
     private Long orderId;
@@ -119,7 +118,6 @@
      * 鏄惁鍒犻櫎 1: 鏄�  0: 鍚�  
      */
     @ApiModelProperty(value= "鏄惁鍒犻櫎 1: 鏄�  0: 鍚�  ")
-    @TableLogic
     private Integer deleted;
 
     /**
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/mapper/IsptHistoriesMapper.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/mapper/IsptHistoriesMapper.java
new file mode 100644
index 0000000..4309713
--- /dev/null
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/mapper/IsptHistoriesMapper.java
@@ -0,0 +1,12 @@
+package com.vincent.rsf.server.manager.mapper;
+
+import com.vincent.rsf.server.manager.entity.IsptHistories;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Mapper;
+import org.springframework.stereotype.Repository;
+
+@Mapper
+@Repository
+public interface IsptHistoriesMapper extends BaseMapper<IsptHistories> {
+
+}
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/IsptHistoriesService.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/IsptHistoriesService.java
new file mode 100644
index 0000000..1c58150
--- /dev/null
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/IsptHistoriesService.java
@@ -0,0 +1,8 @@
+package com.vincent.rsf.server.manager.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.vincent.rsf.server.manager.entity.IsptHistories;
+
+public interface IsptHistoriesService extends IService<IsptHistories> {
+
+}
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/TaskService.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/TaskService.java
index c48d0e6..8051c06 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/TaskService.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/TaskService.java
@@ -9,5 +9,5 @@
 
 public interface TaskService extends IService<Task> {
 
-    R generateTasks(List<WaitPakin> waitPakin);
+    R generateTasks(List<WaitPakin> waitPakin, Long loginUserId);
 }
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/IsptHistoriesServiceImpl.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/IsptHistoriesServiceImpl.java
new file mode 100644
index 0000000..f16c760
--- /dev/null
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/IsptHistoriesServiceImpl.java
@@ -0,0 +1,12 @@
+package com.vincent.rsf.server.manager.service.impl;
+
+import com.vincent.rsf.server.manager.mapper.IsptHistoriesMapper;
+import com.vincent.rsf.server.manager.entity.IsptHistories;
+import com.vincent.rsf.server.manager.service.IsptHistoriesService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.stereotype.Service;
+
+@Service("isptHistoriesService")
+public class IsptHistoriesServiceImpl extends ServiceImpl<IsptHistoriesMapper, IsptHistories> implements IsptHistoriesService {
+
+}
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/TaskServiceImpl.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/TaskServiceImpl.java
index 1d9dab4..cd40c71 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/TaskServiceImpl.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/TaskServiceImpl.java
@@ -1,7 +1,6 @@
 package com.vincent.rsf.server.manager.service.impl;
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
-import com.vincent.rsf.framework.common.SpringUtils;
 import com.vincent.rsf.server.api.entity.enums.OrderType;
 import com.vincent.rsf.server.api.entity.enums.TaskStsType;
 import com.vincent.rsf.framework.common.R;
@@ -13,7 +12,6 @@
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.vincent.rsf.server.manager.utils.LocManageUtil;
 import com.vincent.rsf.server.system.constant.SerialRuleCode;
-import com.vincent.rsf.server.system.enums.LocStsType;
 import com.vincent.rsf.server.system.utils.SerialRuleUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.BeanUtils;
@@ -30,22 +28,23 @@
 
     @Autowired
     private WaitPakinService waitPakinService;
-
     @Autowired
     private TaskItemService taskItemService;
-
     @Autowired
     private WaitPakinItemService waitPakinItemService;
 
+
+
     /**
+     * @param
+     * @param loginUserId
+     * @return
      * @author Ryan
      * @description 鐢熸垚浠诲姟鍒楄〃
-     * @param
-     * @return
      * @time 2025/3/29 15:59
      */
     @Override
-    public R generateTasks(List<WaitPakin> waitPakin) {
+    public R generateTasks(List<WaitPakin> waitPakin, Long loginUserId) {
         if (Objects.isNull(waitPakin) || waitPakin.isEmpty()) {
             throw new CoolException("鍙傛暟涓嶈兘涓虹┖锛侊紒");
         }
@@ -67,6 +66,8 @@
                     .setTaskType(TaskType.TASK_TYPE_IN.type.shortValue())
                     .setTargLoc(LocManageUtil.getTargetLoc())
                     .setBarcode(pakin.getBarcode())
+                    .setCreateBy(loginUserId)
+                    .setUpdateBy(loginUserId)
                     .setTargSite(LocManageUtil.getTargetSite());
 
             if (!this.save(task)) {
@@ -82,7 +83,9 @@
                 BeanUtils.copyProperties(item, taskItem);
                 taskItem.setTaskId(task.getId())
                         .setOrderType(OrderType.ORDER_RECEIPT.type)
-                        .setSourceCode(item.getAsnCode())
+                        .setSource(item.getId())
+                        .setCreateBy(loginUserId)
+                        .setUpdateBy(loginUserId)
                         .setOrderId(item.getAsnId())
                         .setOrderItemId(item.getAsnItemId());
                 taskItems.add(taskItem);
@@ -90,6 +93,9 @@
             if (!taskItemService.saveBatch(taskItems)) {
                 throw new CoolException("浠诲姟鏄庣粏淇濆瓨澶辫触锛侊紒");
             }
+
+
+
         });
         //TODO 浠诲姟鐢熸垚瀹屾垚闇�淇敼浠诲姟ASN璁㈠崟鐘舵�佷负鎵ц涓紝缁勬嫋鍒犻櫎闇�鍒ゆ柇鏄惁鏈夊瓙浠诲姟鍦ㄦ墽琛�
 
diff --git a/rsf-server/src/main/resources/mapper/test/LocAreaMatMapper.xml b/rsf-server/src/main/resources/mapper/manager/IsptHistoriesMapper.xml
similarity index 66%
rename from rsf-server/src/main/resources/mapper/test/LocAreaMatMapper.xml
rename to rsf-server/src/main/resources/mapper/manager/IsptHistoriesMapper.xml
index 086c947..04366fd 100644
--- a/rsf-server/src/main/resources/mapper/test/LocAreaMatMapper.xml
+++ b/rsf-server/src/main/resources/mapper/manager/IsptHistoriesMapper.xml
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="com.vincent.rsf.server.test.mapper.LocAreaMatMapper">
+<mapper namespace="com.vincent.rsf.server.manager.mapper.IsptHistoriesMapper">
 
 </mapper>
diff --git a/rsf-server/src/main/resources/mapper/test/LocAreaMatRelaMapper.xml b/rsf-server/src/main/resources/mapper/test/LocAreaMatRelaMapper.xml
deleted file mode 100644
index 577aba2..0000000
--- a/rsf-server/src/main/resources/mapper/test/LocAreaMatRelaMapper.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="com.vincent.rsf.server.test.mapper.LocAreaMatRelaMapper">
-
-</mapper>
diff --git a/rsf-server/src/main/resources/mapper/test/LocMapper.xml b/rsf-server/src/main/resources/mapper/test/LocMapper.xml
deleted file mode 100644
index 638ae43..0000000
--- a/rsf-server/src/main/resources/mapper/test/LocMapper.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="com.vincent.rsf.server.test.mapper.LocMapper">
-
-</mapper>
diff --git a/rsf-server/src/main/resources/mapper/test/QlyInspectMapper.xml b/rsf-server/src/main/resources/mapper/test/QlyInspectMapper.xml
deleted file mode 100644
index c40f619..0000000
--- a/rsf-server/src/main/resources/mapper/test/QlyInspectMapper.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="com.vincent.rsf.server.test.mapper.QlyInspectMapper">
-
-</mapper>

--
Gitblit v1.9.1