zouyu
2025-10-23 d425460023114e81caedc7a0430f9246ed3bb839
inspect-server/src/main/java/com/ruoyi/inspect/controller/RawMaterialOrderController.java
@@ -1,11 +1,16 @@
package com.ruoyi.inspect.controller;
import com.alibaba.excel.EasyExcel;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.basic.dto.*;
import com.ruoyi.basic.pojo.IfsInventoryQuantity;
import com.ruoyi.common.annotation.PersonalScope;
import com.ruoyi.common.enums.OrderType;
import com.ruoyi.framework.exception.ErrorException;
import com.ruoyi.inspect.dto.InsPlaceOrderDto;
import com.ruoyi.inspect.dto.OrderSplitDTO;
import com.ruoyi.inspect.dto.SampleProductDto;
import com.ruoyi.inspect.pojo.InsOrder;
import com.ruoyi.inspect.pojo.RawMaterialOrderTemplate;
@@ -19,12 +24,16 @@
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.AllArgsConstructor;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.File;
import java.util.List;
import java.util.Map;
import java.util.Objects;
/**
 * @Author zhuo
@@ -43,7 +52,7 @@
    @ApiOperation(value = "更具零件号获取标准树")
    @GetMapping("/selectStandardTreeListByPartNo")
    public Result selectStandardTreeListByPartNo(String partNo) {
        return Result.success(rawMaterialOrderService.selectStandardTreeListByPartNo(partNo));
        return rawMaterialOrderService.selectStandardTreeListByPartNo(partNo);
    }
    @ApiOperation(value = "原材料检验查询代下单")
@@ -54,12 +63,16 @@
    @ApiOperation(value = "原材料检验查询检验中")
    @GetMapping("/getIfsByStateOne")
    @PreAuthorize("@ss.hasPermi('business:order')")
    @PersonalScope(permsName = "business:order", objectName = IfsInventoryQuantityDto.class, paramName = "createUser")
    public Result getIfsByStateOne(Page page, IfsInventoryQuantityDto ifsInventoryQuantityDto){
        return Result.success(rawMaterialOrderService.getIfsByStateOne(page, ifsInventoryQuantityDto));
    }
    @ApiOperation(value = "原材料检验查询已检验")
    @GetMapping("/getIfsByOver")
    @PreAuthorize("@ss.hasPermi('business:order')")
    @PersonalScope(permsName = "business:order", objectName = IfsInventoryQuantitySupplierDto.class, paramName = "createUser")
    public Result getIfsByOver(Page page, IfsInventoryQuantitySupplierDto ifsInventoryQuantityDto){
        return Result.success(rawMaterialOrderService.getIfsByOver(page, ifsInventoryQuantityDto));
    }
@@ -78,7 +91,7 @@
    @ApiOperation(value = "通过原材料检验单模板id获取检验单模板内容")
    @GetMapping("/selectRawMaterOrderTemplateById")
    public Result<?> selectRawMaterOrderTemplateById(Integer id) {
        return Result.success("成功", rawMaterialOrderTemplateService.selectRawMaterOrderTemplateById(id));
        return Result.success(rawMaterialOrderTemplateService.selectRawMaterOrderTemplateById(id));
    }
    @ApiOperation(value = "删除原材料检验单模板")
@@ -86,7 +99,6 @@
    public Result<?> delRawMaterOrderTemplate(Integer id) {
        return Result.success(rawMaterialOrderTemplateService.delRawMaterOrderTemplate(id));
    }
    /**
     * 报检批量
@@ -96,8 +108,12 @@
    @ApiOperation(value = "报检批量")
    @PostMapping("/inspectionReport")
    public Result<?> inspectionReport(@RequestBody Map<String, Object> param) {
        List<Integer> ids = (List<Integer>) param.get("ids");
        return Result.success(rawMaterialOrderService.inspectionReport(ids));
        List<Long> ids = (List<Long>) param.get("ids");
        String orderType = Objects.nonNull(param.get("ids"))?param.get("ids").toString():"";
        if(!OrderType.validateValue(orderType)){
            throw new ErrorException("批量报检失败,非法的销售订单分类枚举");
        }
        return Result.success(rawMaterialOrderService.inspectionReport(ids,orderType));
    }
    /**
@@ -108,7 +124,7 @@
    @ApiOperation(value = "撤销报检")
    @PostMapping("/revokeInspectionReport")
    public Result<?> revokeInspectionReport(@RequestBody Map<String, Object> param) {
        Integer id = (Integer) param.get("id");
        Long id = Long.parseLong(param.get("id").toString());
        return Result.success(rawMaterialOrderService.revokeInspectionReport(id));
    }
@@ -132,7 +148,6 @@
    @ApiOperation(value = "报检")
    @PostMapping("/inspectionReportOne")
    public Result<?> inspectionReportOne(@RequestBody IfsInventoryQuantity ifsInventoryQuantity) {
        return Result.success(rawMaterialOrderService.inspectionReportOne(ifsInventoryQuantity));
    }
@@ -144,7 +159,7 @@
    @ApiOperation(value = "获取铜产业链检测数据")
    @GetMapping("/getIndustryChain")
    public Result<?> getIndustryChain(Integer id) {
        return Result.success("成功", rawMaterialOrderService.getIndustryChain(id));
        return Result.success(rawMaterialOrderService.getIndustryChain(id));
    }
    /**
@@ -155,7 +170,7 @@
    @ApiOperation(value = "原材料撤销下单")
    @GetMapping("/repealRawOrder")
    public Result<?> repealRawOrder(@RequestBody Map<String, Object> param){
        Integer ifsInventoryId = (Integer) param.get("ifsInventoryId");
        Long ifsInventoryId = Long.parseLong(param.get("ifsInventoryId").toString());
        return Result.success(rawMaterialOrderService.repealRawOrder(ifsInventoryId));
    }
@@ -192,7 +207,7 @@
    @ApiOperation(value = "原材料下单放行免检")
    @PostMapping("/rawOrderRelease")
    public Result<?> rawOrderRelease(@RequestBody Map<String, Object> param){
        Integer ifsInventoryId = (Integer) param.get("ifsInventoryId");
        Long ifsInventoryId = Long.parseLong(param.get("ifsInventoryId").toString());
        String partDetail = (String) param.get("partDetail");
        return Result.success(rawMaterialOrderService.rawOrderRelease(ifsInventoryId, partDetail));
    }
@@ -204,14 +219,16 @@
     */
    @ApiOperation(value = "原材料下单通知免检或者多次检验")
    @GetMapping("/notificationRawOrder")
    public Result<?> notificationRawOrder(Integer ifsInventoryId){
    public Result<?> notificationRawOrder(Long ifsInventoryId){
        return Result.success(rawMaterialOrderService.notificationRawOrder(ifsInventoryId));
    }
    @ApiOperation(value = "原材料报检查询全部")
    @PreAuthorize("@ss.hasPermi('get:Ifs:ByAll')")
    @GetMapping("/getIfsByAll")
    public Result getIfsByAll(Page page, IfsInventoryQuantitySupplierDto ifsInventoryQuantityDto){
        ifsInventoryQuantityDto.setOrderType(OrderType.RAW.getValue());
        return Result.success(rawMaterialOrderService.getIfsByOver(page, ifsInventoryQuantityDto));
    }
@@ -227,6 +244,7 @@
    @GetMapping("/getIfsByFinish")
    public Result getIfsByFinish(Page page, IfsInventoryQuantitySupplierDto ifsInventoryQuantityDto) throws Exception {
        ifsInventoryQuantityDto.setIsFinish(1);
        ifsInventoryQuantityDto.setOrderType(OrderType.RAW.getValue());
        return Result.success(rawMaterialOrderService.getIfsByOver(page, ifsInventoryQuantityDto));
    }
@@ -259,7 +277,7 @@
    @ApiOperation(value = "让步放行")
    @PostMapping("/concessionRelease")
    public Result<?> concessionRelease(@RequestBody Map<String, Object> param){
        Integer ifsInventoryId = (Integer) param.get("ifsInventoryId");
        Long ifsInventoryId = Long.parseLong(param.get("ifsInventoryId").toString());
        return Result.success(rawMaterialOrderService.concessionRelease(ifsInventoryId));
    }
@@ -295,6 +313,8 @@
    @ApiOperation(value = "原材料检验查询季度检验")
    @GetMapping("/getIfsByQuarter")
    @PreAuthorize("@ss.hasPermi('business:order')")
    @PersonalScope(permsName = "business:order", objectName = IfsInventoryQuantitySupplierDto.class, paramName = "createUser")
    public Result getIfsByQuarter(Page page, IfsInventoryQuantitySupplierDto ifsInventoryQuantityDto){
        return Result.success(rawMaterialOrderService.getIfsByQuarter(page, ifsInventoryQuantityDto));
    }
@@ -307,8 +327,35 @@
    @ApiOperation(value = "提前入库")
    @PostMapping("/advancedGodown")
    public Result<?> advancedGodown(@RequestBody Map<String, Object> param){
        Integer ifsInventoryId = (Integer) param.get("ifsInventoryId");
        Long ifsInventoryId = Long.parseLong(param.get("ifsInventoryId").toString());
        return Result.success(rawMaterialOrderService.advancedGodown(ifsInventoryId));
    }
    /**
     * 下载订单拆分导入模板
     */
    @ApiOperation(value = "下载订单拆分导入模板")
    @GetMapping("/downloadTemplate")
    public void downloadTemplate(HttpServletResponse response){
        rawMaterialOrderService.downloadTemplate(response);
    }
    /**
     * 下载订单拆分导入模板
     */
    @ApiOperation(value = "导入订单拆分数据")
    @PostMapping("/importSplitOrderData")
    public Result importSplitOrderData(@RequestParam(value = "file") MultipartFile file,@RequestParam("ifsId") Long ifsId, HttpServletRequest request){
        return rawMaterialOrderService.importSplitOrderData(file,ifsId,request);
    }
    /**
     * 确认拆分订单
     */
    @ApiOperation(value = "确认拆分订单")
    @PostMapping("/confirmSplitOrder")
    public Result confirmSplitOrder(@RequestBody OrderSplitDTO orderSplitDTO){
        return Result.success(rawMaterialOrderService.confirmSplitOrder(orderSplitDTO));
    }
}