zouyu
2026-01-30 5bd1e846de7587f39d3edacfed58bfa8325c8758
不合格管理:重新提交oa功能调整2
已修改3个文件
93 ■■■■■ 文件已修改
inspect-server/src/main/java/com/ruoyi/inspect/controller/InsUnqualifiedHandlerController.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
inspect-server/src/main/java/com/ruoyi/inspect/service/impl/InsUnqualifiedHandlerServiceImpl.java 24 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
inspect-server/src/main/resources/mapper/InsUnqualifiedHandlerMapper.xml 61 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
inspect-server/src/main/java/com/ruoyi/inspect/controller/InsUnqualifiedHandlerController.java
@@ -21,7 +21,6 @@
import javax.servlet.http.HttpServletResponse;
import java.util.HashMap;
import java.util.Map;
@RestController
@Api("不合格处理管理")
@@ -35,15 +34,11 @@
    private static final String REQUESTID = "requestId";
    private static final String CHECKRESULT = "CHECKRESULT";
    @ApiOperation(value = "提交OA")
    @PostMapping("/pushOA")
    public Result pushOA(@RequestBody PushOADto pushOADto){
        return unqualifiedHandlerService.pushOA(pushOADto);
    }
    @ApiOperation(value = "查询")
    @GetMapping("/page")
@@ -51,14 +46,11 @@
        return Result.success(unqualifiedHandlerService.pageList(page, unqualifiedHandlerDto));
    }
    @ApiOperation(value = "附件上传")
    @PostMapping("/uploadFileByUnqualified")
    public Result<?> uploadFileByUnqualified(Long handlerId, MultipartFile file) {
        return Result.success(unqualifiedHandlerFileService.uploadFile(handlerId, file));
    }
    @Anonymous
    @ApiOperation(value = "不合格处理OA回调")
inspect-server/src/main/java/com/ruoyi/inspect/service/impl/InsUnqualifiedHandlerServiceImpl.java
@@ -1,7 +1,6 @@
package com.ruoyi.inspect.service.impl;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.io.IoUtil;
import com.alibaba.excel.EasyExcel;
import com.alibaba.excel.support.ExcelTypeEnum;
import com.alibaba.excel.write.style.column.LongestMatchColumnWidthStyleStrategy;
@@ -34,23 +33,17 @@
import com.ruoyi.inspect.service.InsUnqualifiedHandlerFileService;
import com.ruoyi.inspect.service.InsUnqualifiedHandlerService;
import com.ruoyi.inspect.vo.UnqualifiedHandlerVO;
import com.ruoyi.system.mapper.UserMapper;
import com.ruoyi.system.service.ISysDictDataService;
import com.ruoyi.system.service.ISysDictTypeService;
import com.ruoyi.system.service.UserService;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Isolation;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletResponse;
import java.io.InputStream;
import java.net.URLEncoder;
import java.nio.charset.StandardCharsets;
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
import java.util.ArrayList;
import java.util.HashMap;
@@ -94,23 +87,17 @@
        response.reset();
        try{
            //查询字典
            List<SysDictData> materialPropType = sysDictTypeService.selectDictDataByType("material_prop_type");
            List<SysDictData> materialPropType = sysDictTypeService.selectDictDataByType("material_prop_type");//物料属性
            List<SysDictData> categoriesNoConformities = sysDictTypeService.selectDictDataByType("categories_no_conformities");//不合格分类
            List<SysDictData> attributionNoConformities = sysDictTypeService.selectDictDataByType("attribution_no_conformities");// 不合格归属
            //查询不合格处理记录
            IPage<UnqualifiedHandlerVO> pageList = pageList(new Page<>(-1, -1), unqualifiedHandlerDto);
            List<InsUnqualifiedHandlerExcelData> records = pageList.getRecords().stream().map(m->{
                InsUnqualifiedHandlerExcelData handlerExcelData = new InsUnqualifiedHandlerExcelData();
                BeanUtil.copyProperties(m,handlerExcelData);
                handlerExcelData.setMaterialProp(materialPropType.stream().filter(f-> StringUtils.equals(f.getDictValue(),handlerExcelData.getMaterialProp())).findFirst().orElse(new SysDictData()).getDictLabel());
                if(StringUtils.equals(handlerExcelData.getClassification(),"0")){
                    handlerExcelData.setClassification("一类不合格");
                }else if(StringUtils.equals(handlerExcelData.getClassification(),"1")){
                    handlerExcelData.setClassification("二类不合格");
                }
                if(StringUtils.equals(handlerExcelData.getOffGradeAscription(),"0")){
                    handlerExcelData.setOffGradeAscription("生产反馈不合格");
                }else if(StringUtils.equals(handlerExcelData.getOffGradeAscription(),"1")){
                    handlerExcelData.setOffGradeAscription("检测不合格");
                }
                handlerExcelData.setClassification(categoriesNoConformities.stream().filter(f-> StringUtils.equals(f.getDictValue(),handlerExcelData.getClassification())).findFirst().orElse(new SysDictData()).getDictLabel());
                handlerExcelData.setOffGradeAscription(attributionNoConformities.stream().filter(f-> StringUtils.equals(f.getDictValue(),handlerExcelData.getOffGradeAscription())).findFirst().orElse(new SysDictData()).getDictLabel());
                return handlerExcelData;
            }).collect(Collectors.toList());
            //设置response
@@ -138,7 +125,6 @@
        //获取不合格处理记录
        UnqualifiedHandlerVO vo = baseMapper.findById(pushOADto.getHandlerId());
        System.out.println(vo);
//        if (vo.getRequestId() != null) {
//            throw new ErrorException("该不合格处理已提交过OA");
//        }
inspect-server/src/main/resources/mapper/InsUnqualifiedHandlerMapper.xml
@@ -16,7 +16,66 @@
            *
        from (
            select
                iiq.*,
                iiq.contract,
                iiq.order_no,
                iiq.order_type,
                iiq.material_prop,
                iiq.line_no,
                iiq.release_no,
                iiq.receipt_no,
                iiq.part_no,
                iiq.part_desc,
                iiq.status,
                iiq.status_db,
                iiq.qty_arrived,
                iiq.qty_inspected,
                iiq.qty_to_inspect,
                iiq.supplier_id,
                iiq.supplier_name,
                iiq.inv_qty_in_store,
                iiq.pur_qty_in_store,
                iiq.configuration_id,
                iiq.lot_batch_no,
                iiq.waiv_dev_rej_no,
                iiq.activity_seq,
                iiq.serial_no,
                iiq.location_no,
                iiq.eng_chg_level,
                iiq.receiver,
                iiq.receiver_name,
                iiq.buyer_code,
                iiq.buyer_name,
                iiq.arrive_date,
                iiq.delivery_date,
                iiq.product_date,
                iiq.invalid_date,
                iiq.approved_date,
                iiq.req_ceater,
                iiq.req_ceater_name,
                iiq.line_remarks,
                iiq.buy_unit_meas,
                iiq.is_source,
                iiq.number,
                iiq.state,
                iiq.receiver_date,
                iiq.is_first,
                iiq.to_location,
                iiq.is_inspect,
                iiq.declare_user,
                iiq.declare_user_id,
                iiq.part_unit,
                iiq.industry_chain,
                iiq.declare_date,
                iiq.is_quarter,
                iiq.is_copper,
                iiq.update_batch_no,
                iiq.is_finish,
                iiq.inspect_status,
                iiq.is_register,
                iiq.is_update_batch,
                iiq.is_expire,
                iiq.is_split_order,
                iuh.id,
                iuh.id as handler_id,
                iuh.no,
                iuh.material_name,