入库检验修改

master
zhaoxiaolin 1 year ago
parent f110febe1c
commit d9022031db

@ -3,6 +3,7 @@ package com.op.quality.controller;
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.op.common.core.utils.DateUtils;
@ -29,6 +30,8 @@ import com.op.common.core.web.controller.BaseController;
import com.op.common.core.web.domain.AjaxResult;
import com.op.common.core.utils.poi.ExcelUtil;
import com.op.common.core.web.page.TableDataInfo;
import org.springframework.web.context.request.RequestContextHolder;
import org.springframework.web.context.request.ServletRequestAttributes;
/**
* Controller
@ -99,6 +102,9 @@ public class QcCheckTaskWarehousingController extends BaseController {
@Log(title = "成品入库检验任务", businessType = BusinessType.INSERT)
@PostMapping
public AjaxResult add(@RequestBody QcCheckTaskWarehousing qcCheckTaskWarehousing) {
HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
String key = "#header.poolName";
qcCheckTaskWarehousing.setFactoryCode(request.getHeader(key.substring(8)).replace("ds_",""));
int r = qcCheckTaskWarehousingService.insertQcCheckTaskWarehousing(qcCheckTaskWarehousing);
if(r>0){
return toAjax(r);
@ -109,7 +115,7 @@ public class QcCheckTaskWarehousingController extends BaseController {
@PostMapping("/createProductTask")
public AjaxResult createProductTask(@RequestBody QcCheckTaskWarehousingDTO qcCheckTaskWarehousingDTO) {
QcCheckTaskWarehousing qcCheckTaskIncome = new QcCheckTaskWarehousing();
BeanUtils.copyProperties(qcCheckTaskIncome,qcCheckTaskWarehousingDTO);
BeanUtils.copyProperties(qcCheckTaskWarehousingDTO,qcCheckTaskIncome);
int r = qcCheckTaskWarehousingService.insertQcCheckTaskWarehousing(qcCheckTaskIncome);
if(r>0){
return toAjax(r);

@ -96,6 +96,24 @@ public class QcCheckTaskDetail extends BaseEntity {
private String typeProjectId;
private String defectCode;
private String checkType;
private String fileListStr;
private List<BaseFile> files;
public List<BaseFile> getFiles() {
return files;
}
public void setFiles(List<BaseFile> files) {
this.files = files;
}
public String getFileListStr() {
return fileListStr;
}
public void setFileListStr(String fileListStr) {
this.fileListStr = fileListStr;
}
public String getCheckType() {
return checkType;

@ -137,6 +137,16 @@ public class QcCheckTaskIncome extends BaseEntity {
private BigDecimal bNoOkquality;
private BigDecimal cNoOkquality;
private String fileList;
public String getFileList() {
return fileList;
}
public void setFileList(String fileList) {
this.fileList = fileList;
}
public String getOrderType() {
return orderType;
}

@ -0,0 +1,22 @@
package com.op.quality.mapper;
import com.op.common.core.domain.BaseFileData;
import com.op.quality.domain.BaseFile;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* Mapper
*
* @author Open Platform
* @date 2023-07-10
*/
@Mapper
public interface QMSFileMapper {
int insertBaseFileBatch(@Param("baseFiles") List<BaseFileData> baseFiles);
List<BaseFile> getBaseFileBatch(String recordId);
}

@ -6,6 +6,7 @@ import com.alibaba.fastjson2.JSONObject;
import com.alibaba.fastjson2.JSONArray;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.baomidou.dynamic.datasource.toolkit.DynamicDataSourceContextHolder;
import com.op.common.core.domain.BaseFileData;
import com.op.common.core.utils.DateUtils;
import com.op.common.core.utils.StringUtils;
import com.op.common.core.utils.uuid.IdUtils;
@ -66,6 +67,9 @@ public class QcCheckTaskIncomeServiceImpl implements IQcCheckTaskIncomeService {
@Autowired
private RemoteOpenService remoteOpenService;
@Autowired
private QMSFileMapper qmsFileMapper;
/**
*
*
@ -539,6 +543,25 @@ public class QcCheckTaskIncomeServiceImpl implements IQcCheckTaskIncomeService {
/**更新qc_check_task_detail**/
for(QcCheckTaskDetail detail:details){
detail.setUpdateTime(nowTime);
//上传附件
if (StringUtils.isNotEmpty(detail.getFileListStr())) {
String[] ids = detail.getFileListStr().split(",");
List<BaseFileData> files = new ArrayList<>();
BaseFileData file = null;
for (String id : ids) {
file = new BaseFileData();
file.setFileId(IdUtils.fastSimpleUUID());
file.setFileName(id.split("&fileName=")[1]);
file.setFileAddress(id);
file.setSourceId(detail.getRecordId());
file.setCreateBy(SecurityUtils.getUsername());
file.setCreateTime(nowTime);
files.add(file);
}
/**base_file**/
n = qmsFileMapper.insertBaseFileBatch(files);
System.out.println("base_file:"+n);
}
}
n= qcCheckTaskIncomeMapper.updateQcCheckTaskDetails(details);
logger.info("更新qc_check_task_detail:"+n);

@ -100,10 +100,8 @@ public class QcCheckTaskWarehousingServiceImpl implements IQcCheckTaskWarehousin
String createBy = SecurityUtils.getUsername();
Date nowDate= DateUtils.getNowDate();
//获取当前所选工厂
HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
String key = "#header.poolName";
String factoryCode = request.getHeader(key.substring(8)).replace("ds_","");
String factoryCode = qcCheckTaskWarehousing.getFactoryCode();
qcCheckTaskWarehousing.setCheckNo(bpDD+liushuiStr);

@ -10,6 +10,7 @@ import com.op.common.core.utils.StringUtils;
import com.op.common.core.utils.uuid.IdUtils;
import com.op.common.security.utils.SecurityUtils;
import com.op.quality.domain.*;
import com.op.quality.mapper.QMSFileMapper;
import com.op.quality.mapper.QcCheckTaskIncomeMapper;
import com.op.quality.mapper.QcProCheckMapper;
import com.op.quality.service.QcProCheckService;
@ -36,6 +37,9 @@ public class QcProCheckServiceImpl implements QcProCheckService {
@Autowired
private QcCheckTaskIncomeMapper qcCheckTaskIncomeMapper;
@Autowired
private QMSFileMapper qmsFileMapper;
@Override
public R<Boolean> saveQcProCheck(QcProCheck qcProCheck) {
DynamicDataSourceContextHolder.push("ds_" + qcProCheck.getFactoryCode());
@ -133,6 +137,13 @@ public class QcProCheckServiceImpl implements QcProCheckService {
defects =qcCheckTaskIncomeMapper.getDefectType(qcCheckTaskDetail);
}
dto.setDefects(defects);
for(QcCheckTaskDetail qcd:qcCheckTaskDetails){
List<BaseFile> files = qmsFileMapper.getBaseFileBatch(qcd.getRecordId());
if (CollectionUtils.isEmpty(files)) {
qcd.setFiles(files);
}
}
return dto;
}

@ -0,0 +1,47 @@
<?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.op.quality.mapper.QMSFileMapper">
<resultMap type="BaseFile" id="BaseFileResult">
<result property="fileId" column="file_id" />
<result property="fileName" column="file_name" />
<result property="fileAddress" column="file_address" />
<result property="sourceId" column="source_id" />
<result property="remark" column="remark" />
<result property="attr1" column="attr1" />
<result property="attr2" column="attr2" />
<result property="attr3" column="attr3" />
<result property="attr4" column="attr4" />
<result property="createBy" column="create_by" />
<result property="createTime" column="create_time" />
<result property="updateBy" column="update_by" />
<result property="updateTime" column="update_time" />
</resultMap>
<sql id="selectBaseFileVo">
select file_id, file_name, file_address, source_id, remark, attr1,
attr2, attr3, attr4, create_by, create_time, update_by,
update_time from base_file
</sql>
<insert id="insertBaseFileBatch">
INSERT INTO base_file(file_id, file_name, file_address, source_id, remark, create_by, create_time)
VALUES
<foreach collection="baseFiles" index="" item="baseFile" separator=",">
(
#{baseFile.fileId},
#{baseFile.fileName},
#{baseFile.fileAddress},
#{baseFile.sourceId},
#{baseFile.remark},
#{baseFile.createBy},
#{baseFile.createTime}
)
</foreach>
</insert>
<select id="getBaseFileBatch" resultMap="BaseFileResult">
<include refid="selectBaseFileVo"/>
where source_id = #{recordId}
</select>
</mapper>
Loading…
Cancel
Save