jinlin
2024-01-23 52a302b11c08cbc564ff3931038ae57a305a95d6
modules/mainPart/src/main/java/com/zt/life/modules/configItemOutbound/service/ConfigItemOutboundService.java
@@ -1,36 +1,43 @@
package com.zt.life.modules.configItemOutbound.service;
import cn.hutool.core.convert.Convert;
import cn.hutool.core.date.DateUtil;
import com.alibaba.fastjson.JSONObject;
import com.zt.common.db.query.QueryFilter;
import com.zt.common.service.BaseService;
import com.zt.common.utils.UUIDUtil;
import com.zt.core.context.User;
import com.zt.core.context.UserContext;
import com.zt.life.export.dto.WordFile;
import com.zt.life.export.service.WordFileService;
import com.zt.life.modules.configItemOutbound.dao.ConfigItemOutboundDao;
import com.zt.life.modules.configItemOutbound.dto.ConfigItemOutboundDto;
import com.zt.life.modules.configItemOutbound.model.ConfigItemOutbound;
import com.zt.life.modules.configItemWarehouse.model.WarehouseCmAudit;
import com.zt.life.modules.configItemOutbound.model.OutboundConfigItem;
import com.zt.life.modules.configItemWarehouse.model.WarehouseConfigItem;
import com.zt.life.modules.configItemWarehouse.model.WarehouseQaAudit;
import com.zt.life.modules.configItemWarehouse.service.WarehouseCmAuditService;
import com.zt.life.modules.configItemWarehouse.service.WarehouseConfigItemService;
import com.zt.life.modules.configItemWarehouse.service.WarehouseQaAuditService;
import com.zt.life.modules.mainPart.utils.GetFilesPath;
import com.zt.life.modules.mainPart.utils.GetShowDictList;
import com.zt.life.util.ZipCipherUtil;
import com.zt.life.modules.project.service.ProjectService;
import com.zt.life.modules.testCheckOrder.model.TestCheckOrder;
import com.zt.life.modules.testCheckOrder.service.TestCheckOrderService;
import com.zt.life.sys.service.SysOssConfigService;
import com.zt.modules.coderule.service.SysCodeRuleService;
import com.zt.modules.oss.model.SysOss;
import com.zt.modules.oss.service.SysOssService;
import com.zt.modules.workflow.dto.FlowInfoDto;
import com.zt.modules.workflow.service.WorkflowService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.UnsupportedEncodingException;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@@ -59,14 +66,14 @@
    @Autowired
    private ProjectService projectService;
    @Autowired
    private WarehouseCmAuditService cmAuditService;
    @Autowired
    private WarehouseQaAuditService qaAuditService;
    @Value("${zt.oss.local-server}")
    private String localServer;
    @Autowired
    private WarehouseConfigItemService configItemService;
    @Autowired
    private OutboundConfigItemService outboundItemService;
    @Autowired
    private TestCheckOrderService testCheckOrderService;
@@ -80,6 +87,11 @@
    @Autowired
    private GetFilesPath getFilesPath;
    @Value("${data.sync-path}")
    private String syncPath;
    @Value("${data.key}")
    private String key;
    /**
     * 分页查询
@@ -88,6 +100,11 @@
     * @return
     */
    public List<ConfigItemOutbound> page(QueryFilter queryFilter) {
        User user = UserContext.getUser();
        Integer secretClass = user.getSecretClass();
        Long deptId = user.getDeptId();
        queryFilter.getQueryParams().put("secretClass",secretClass);
        queryFilter.getQueryParams().put("deptId",deptId);
        List<ConfigItemOutbound> list = baseDao.getList(queryFilter.getQueryParams());
        if (list.size() > 0) {
            workflowService.getRunFlow(list, "pzxck");
@@ -118,14 +135,15 @@
            OutboundId = configItemDto.getConfigItemOutbound().getId();
        }
        for (WarehouseConfigItem configItem : configItemDto.getConfigOutboundList()) {
            configItem.setWarehouseId(OutboundId);
        for (OutboundConfigItem configItem : configItemDto.getConfigOutboundList()) {
            configItem.setOutboundId(OutboundId);
            configItem.setWarehouseDetailId(configItem.getSelectId());
            if (configItem.getId() != null) {
                configItemService.update(configItem);
                outboundItemService.update(configItem);
            } else {
                configItem.setWarehouseId(OutboundId);
                configItem.setOutboundId(OutboundId);
                configItem.setProjectId(configItemDto.getConfigItemOutbound().getProjectId());
                configItemService.insert(configItem);
                outboundItemService.insert(configItem);
            }
            Long checkId = configItem.getCheckId();
            if (checkId != null) {
@@ -136,7 +154,6 @@
                    testCheckOrderService.update(testCheckOrder);
                }
            }
            sysOssConfigService.updateOss(configItem.getId(), configItem.getFiles());// 保存附件
        }
        Long bizId = configItemDto.getConfigItemOutbound().getId();
@@ -161,7 +178,7 @@
            if (projectId == null) {
                projectId = configItemOutbound.getProjectId();
            }
            List<WarehouseConfigItem> configOutboundList = configItemService.getList(OutboundId);
            List<OutboundConfigItem> configOutboundList = outboundItemService.getList(OutboundId);
            data.setConfigOutboundList(configOutboundList);
        } else {
@@ -188,7 +205,7 @@
            dataObj.getConfigItemOutbound().setLibraryType(libraryTypeStr);
            String ApprovalOpinionStr = getShowDictList.getShowDictList(dataObj.getConfigItemOutbound().getApprovalOpinions(), "is_agree", false);
            dataObj.getConfigItemOutbound().setApprovalOpinions(ApprovalOpinionStr);
            for (WarehouseConfigItem configItemList : dataObj.getConfigOutboundList()) {
            for (OutboundConfigItem configItemList : dataObj.getConfigOutboundList()) {
                String value = configItemList.getSecretClass();
                String secretClassStr = getShowDictList.getShowDictList(value, "secret_class", false);
                configItemList.setSecretClass(secretClassStr);
@@ -203,4 +220,10 @@
            e.printStackTrace();
        }
    }
    public void downloadFiles(HttpServletResponse response, HttpServletRequest request, Long id) {
        String projectName="出库文件";
        List<SysOss> list = baseDao.getFilesByBusiId(id);
        sysOssConfigService.downloadFilesByosList(request,response,list,projectName);
    }
}