Commit 1acdeb63 by ghxdhr

Merge branch 'master' of git.patzn.com:wangweidong/patzn-cloud-service-hmhj

parents 30719670 55bc6396
......@@ -104,6 +104,7 @@ public class EntrustController extends ServiceController {
EntrustStatusEnum.TEST,
EntrustStatusEnum.QUALITY_CHECK
));
entrust.setUid(getAccount().getUserId());
return success(entrustService.pageVO(getPage(), entrust));
}
......
......@@ -58,7 +58,7 @@ public class OriginalRecordController extends ServiceController {
@PostMapping("/pageVO")
public RestResult<Page<OriginalRecordVO>> getPageVO(OriginalRecordVO originalRecordVO) {
// 数据检测只能当前人看
if(StringUtils.isNotBlank(originalRecordVO.getSource()) && "test".equalsIgnoreCase(originalRecordVO.getSource())) {
if("TEST".equalsIgnoreCase(originalRecordVO.getSource())) {
originalRecordVO.setTesterId(getAccount().getUserId());
}
return success(originalRecordService.pageVO(getPage(), originalRecordVO));
......
......@@ -4,9 +4,7 @@ import com.baomidou.mybatisplus.mapper.Condition;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
import com.baomidou.mybatisplus.plugins.Page;
import com.baomidou.mybatisplus.toolkit.ArrayUtils;
import com.baomidou.mybatisplus.toolkit.CollectionUtils;
import com.baomidou.mybatisplus.toolkit.StringUtils;
import com.patzn.cloud.commons.api.RestAssert;
import com.patzn.cloud.commons.controller.Account;
import com.patzn.cloud.commons.service.impl.BaseServiceImpl;
......@@ -227,31 +225,47 @@ public class EntrustReportServiceImpl extends BaseServiceImpl<EntrustReportMappe
}
}
// 若提交至 -> 质量判定,那么需要更改委托状态
if (toFlowStatus == EntrustFlowEnum.QUALITY_JUDGE) {
entrust.setStatus(EntrustStatusEnum.QUALITY_CHECK);
// 若不需要质量判定,直接进入电子档案流程
if (!entrustSampleService.isRequireJudgeGrading(entrust.getId())) {
entrustSampleService.updateJudgeStatus(entrust.getId(), 2);
}
// 更改样品编码显示形式,由三级变为一级
entrustSampleService.updateSampleCodeByEntrustId(entrust.getId(), 1);
}
// 此处只转换报告相关的状态
EntrustSampleStatusEnum sampleStatusEnum = EntrustFlowUtils.getSampleStatus(toFlowStatus);
EntrustReportStatusEnum reportStatusEnum = EntrustFlowUtils.getReportStatus(toFlowStatus);
// 若从批准往后提交,则生成报告
if (fromFlowStatus == EntrustFlowEnum.REPORT_ALLOW) {
//转化PDF
executor1.execute(() -> changeExcelReportToPdf(ids));
}
EntrustReport entrustReport = new EntrustReport();
entrustReport.setStatus(reportStatusEnum);
entrustReport.setProgress(reportStatusEnum);
if (toFlowStatus == EntrustFlowEnum.REPORT_ALLOW) {
entrustReport.setReportChecker(account.getUserName()).setReportCheckerId(account.getUserId()).setReportCheckTime(new Date());
} else if (toFlowStatus == EntrustFlowEnum.REPORT_ISSUE || toFlowStatus == EntrustFlowEnum.REPORT_SEND) {
entrust.setTestTimeE(new Date());
entrustService.updateById(entrust);
entrustReport.setReportAllower(account.getUserName()).setReportAllowerId(account.getUserId()).setReportAllowTime(new Date());
// 若从批准往后提交,则生成报告
// 转化PDF
executor1.execute(() -> changeExcelReportToPdf(ids));
} else if (toFlowStatus == EntrustFlowEnum.QUALITY_JUDGE || toFlowStatus == EntrustFlowEnum.ARCHIVES) {
// 归档前置条件为已判定
entrust.setStatus(EntrustStatusEnum.QUALITY_CHECK);
// 更改样品编码显示形式,由三级变为一级
entrustSampleService.updateSampleCodeByEntrustId(entrust.getId(), 1);
//
if (fromFlowStatus == EntrustFlowEnum.REPORT_ISSUE) {
entrustReport.setReportIssuer(account.getUserName()).setReportIssuerId(account.getUserId()).setReportIssueTime(new Date());
} else if (fromFlowStatus == EntrustFlowEnum.REPORT_SEND) {
entrustReport.setReportSender(account.getUserName()).setReportSenderId(account.getUserId()).setReportSendTime(new Date());
}
// 若提交至 -> 质量判定,那么需要更改委托状态
if (toFlowStatus == EntrustFlowEnum.QUALITY_JUDGE) {
// 若不需要质量判定,直接进入电子档案流程
if (!entrustSampleService.isRequireJudgeGrading(entrust.getId())) {
entrustSampleService.updateJudgeStatus(entrust.getId(), 2);
}
} else {
// == 若为归档,可以直接设置已归档
entrustSampleService.updateJudgeStatus(entrust.getId(), 2);
}
}
// 更新对应样品的状态
updateReportRelSamples(ids, toFlowStatus);
......@@ -326,6 +340,7 @@ public class EntrustReportServiceImpl extends BaseServiceImpl<EntrustReportMappe
EntrustSampleStatusEnum sampleStatusEnum = null;
EntrustReportStatusEnum reportStatusEnum = null;
EntrustReportStatusEnum reportProgress = null;
EntrustReport entrustReport = new EntrustReport();
if (fromFlowStatus == EntrustFlowEnum.REPORT_SEND) {
reportProgress = EntrustReportStatusEnum.BACK_SEND;
......@@ -341,17 +356,27 @@ public class EntrustReportServiceImpl extends BaseServiceImpl<EntrustReportMappe
sampleStatusEnum = EntrustSampleStatusEnum.REPORT_MAKE;
reportStatusEnum = EntrustReportStatusEnum.MAKING;
entrust.setTestTimeE(null);
entrustReport.setReportSender(null).setReportSenderId(null).setReportSendTime(null);
entrustReport.setReportIssuer(null).setReportIssuerId(null).setReportIssueTime(null);
entrustReport.setReportAllower(null).setReportAllowerId(null).setReportAllowTime(null);
entrustReport.setReportChecker(null).setReportCheckerId(null).setReportCheckTime(null);
} else if (EntrustFlowEnum.REPORT_CHECK == toFlowStatus) {
sampleStatusEnum = EntrustSampleStatusEnum.REPORT_CHECK;
reportStatusEnum = EntrustReportStatusEnum.CHECK;
entrust.setTestTimeE(null);
entrustReport.setReportSender(null).setReportSenderId(null).setReportSendTime(null);
entrustReport.setReportIssuer(null).setReportIssuerId(null).setReportIssueTime(null);
entrustReport.setReportAllower(null).setReportAllowerId(null).setReportAllowTime(null);
} else if (EntrustFlowEnum.REPORT_ALLOW == toFlowStatus) {
sampleStatusEnum = EntrustSampleStatusEnum.REPORT_ALLOW;
reportStatusEnum = EntrustReportStatusEnum.ALLOW;
entrust.setTestTimeE(null);
entrustReport.setReportSender(null).setReportSenderId(null).setReportSendTime(null);
entrustReport.setReportIssuer(null).setReportIssuerId(null).setReportIssueTime(null);
} else if (EntrustFlowEnum.REPORT_ISSUE == toFlowStatus) {
sampleStatusEnum = EntrustSampleStatusEnum.REPORT_ISSUE;
reportStatusEnum = EntrustReportStatusEnum.ISSUE;
entrustReport.setReportSender(null).setReportSenderId(null).setReportSendTime(null);
}
EntrustSampleStatusEnum finalSampleStatusEnum = sampleStatusEnum;
......@@ -376,7 +401,6 @@ public class EntrustReportServiceImpl extends BaseServiceImpl<EntrustReportMappe
executor1.execute(() -> deleteReportPdf(ids));
}
EntrustReport entrustReport = new EntrustReport();
entrustReport.setStatus(reportStatusEnum);
entrustReport.setProgress(reportProgress);
......
......@@ -139,8 +139,8 @@ public class EntrustServiceImpl extends BaseServiceImpl<EntrustMapper, Entrust>
public void initSampleCode(EntrustSample sample) {
// 样品类型
String category = sample.getCategory();
// 样品类型\名称
String category = sample.getCategory(), sampleName = sample.getName();
RestAssert.fail(StringUtils.isBlank(category), "样品类型不能为空");
String parentCategory = "";
if (StringUtils.isNotBlank(category)) {
......@@ -149,6 +149,11 @@ public class EntrustServiceImpl extends BaseServiceImpl<EntrustMapper, Entrust>
parentCategory = chemicalCategory.getName();
}
// 判断槽号不能为空
if ("散样".equals(parentCategory)) {
RestAssert.fail(StringUtils.isBlank(sample.getSlotNo()), "样品槽号为空");
}
Account account = LoginHelper.getAccount();
int codeTypeNo = 0;
List<SysOrg> orgList = sysOrgClient.getListByUserId(account.getUserId()).getData();
......@@ -170,7 +175,13 @@ public class EntrustServiceImpl extends BaseServiceImpl<EntrustMapper, Entrust>
codeType = CodeTypeEnum.SAMPLE_YFL_CODE;
break;
case "散样":
codeType = CodeTypeEnum.BULK_SAMPLE_CODE;
if ("原铝散样".equals(sampleName)) {
codeType = CodeTypeEnum.AL_BULK_SAMPLE_CODE;
} else if ("原铝重取".equals(sampleName)) {
codeType = CodeTypeEnum.AL_RETAKE_SAMPLE_CODE;
} else if ("电解质散样".equals(sampleName)) {
codeType = CodeTypeEnum.ELECT_BULK_SAMPLE_CODE;
}
break;
default:
codeType = CodeTypeEnum.SAMPLE_CODE;
......@@ -179,6 +190,7 @@ public class EntrustServiceImpl extends BaseServiceImpl<EntrustMapper, Entrust>
String sampleCode = null;
String replaceStr = "XX", inspectNo = "", secondCode = "", thirdCode = "";
// ==
if ("已有编码物资".equals(parentCategory)) {
sampleCode = sample.getCode();
} else {
......@@ -207,10 +219,9 @@ public class EntrustServiceImpl extends BaseServiceImpl<EntrustMapper, Entrust>
thirdCode = sampleCode.replace("A", "C").replace(replaceStr, "HY");
sampleCode = sampleCode.replace(replaceStr, inspectNo);
}
// 散样样品编号处理
else if (CodeTypeEnum.BULK_SAMPLE_CODE == codeType) {
// 原铝散样样品编号处理
else if (CodeTypeEnum.AL_BULK_SAMPLE_CODE == codeType) {
// 替换槽号CH
RestAssert.fail(StringUtils.isBlank(sample.getSlotNo()), "样品槽号为空");
sampleCode = sampleCode.replace("CH", sample.getSlotNo());
// 根据当前系统时间获取班次
LocalTime now = LocalTime.now();
......@@ -228,6 +239,16 @@ public class EntrustServiceImpl extends BaseServiceImpl<EntrustMapper, Entrust>
// 替换班次BC
sampleCode = sampleCode.replace("BC", clazz);
}
// 电解质散样样品编号处理
else if (CodeTypeEnum.ELECT_BULK_SAMPLE_CODE == codeType) {
// 替换槽号CH
sampleCode = sampleCode.replace("CH", sample.getSlotNo());
}
//原铝重取样品编号处理
else if (CodeTypeEnum.AL_RETAKE_SAMPLE_CODE == codeType) {
// 替换槽号CH
sampleCode = sampleCode.replace("CH", sample.getSlotNo());
}
}
if (StringUtils.isNotBlank(sampleCode)) {
......@@ -246,6 +267,12 @@ public class EntrustServiceImpl extends BaseServiceImpl<EntrustMapper, Entrust>
}
}
}
// 验证样品非空字段
private void judgeSampleFields(EntrustSample sample) {
RestAssert.fail(StringUtils.isBlank(sample.getCode()), "样品编号不能为空");
RestAssert.fail(StringUtils.isBlank(sample.getName()), "样品名称(物资名称)不能为空");
RestAssert.fail(StringUtils.isBlank(sample.getSampleFrom()), "样品来源不能为空");
}
@Transactional(rollbackFor = Exception.class)
@Override
......@@ -277,6 +304,7 @@ public class EntrustServiceImpl extends BaseServiceImpl<EntrustMapper, Entrust>
sample.setEntrustId(entrust.getId());
//生成样品编号
initSampleCode(sample);
judgeSampleFields(sample);
sample.setId(IdWorker.getId());
sample.setOrderBy(incNum);
saveSampleList.add(sample);
......@@ -440,6 +468,7 @@ public class EntrustServiceImpl extends BaseServiceImpl<EntrustMapper, Entrust>
@Override
@Transactional(rollbackFor = Exception.class)
public boolean editEntrust(EntrustDTO entrustDTO, Account account) {
if (null == entrustDTO.getId()) {
return false;
......@@ -474,6 +503,8 @@ public class EntrustServiceImpl extends BaseServiceImpl<EntrustMapper, Entrust>
saveSampleList.add(sample);
}
judgeSampleFields(sample);
List<EntrustSampleItem> viewItemList = dto.getItemList();
if (CollectionUtils.isNotEmpty(viewItemList)) {
for (EntrustSampleItem item : viewItemList) {
......@@ -995,6 +1026,7 @@ public class EntrustServiceImpl extends BaseServiceImpl<EntrustMapper, Entrust>
sample.setCode(null);
//生成样品编号,可能存在为空的情况
initSampleCode(sample);
judgeSampleFields(sample);
sample.setEntrustId(entrust.getId()).setOrderBy(sampleIndex).setStatus(EntrustSampleStatusEnum.DRAFT).setProgress(EntrustSampleStatusEnum.DRAFT)
.setOrderBy(sampleIndex).setOkJudge(null).setJudgerId(null).setJudgeProgress(null).setJudger(null).setJudgeStatus(null).setJudgeCheckTime(null)
.setJudgeCheckerId(null).setAppearanceResult(null).setSurplusSampleLimit(null).setReceiver(null).setReceiverId(null).setReceiveTime(null)
......
......@@ -19,6 +19,9 @@
<if test="null!=vo.flowStatus">
AND e.flow_status = #{vo.flowStatus}
</if>
<if test="null != vo.uid">
AND e.uid = #{vo.uid}
</if>
<if test="null != vo.groupNameList">
AND e.test_side IN
<foreach collection="vo.groupNameList" index="index" item="groupName" open="(" separator="," close=")">
......@@ -44,7 +47,7 @@
FROM entrust_sample
WHERE deleted = 0
AND entrust_id = #{entrustId}
ORDER BY code DESC
ORDER BY order_by asc
</select>
<select id="selectEntrustSampleReceive" resultType="com.patzn.cloud.service.hmhj.vo.EntrustVO">
......@@ -123,10 +126,7 @@
)
</if>
<if test="null != vo.uid">
AND e.uid = #{vo.uid}
</if>
order by e.entrust_time desc
order by e.ctime DESC
</select>
<!--查询委托历史数据-->
......
ALTER TABLE "public"."entrust_report"
ADD COLUMN "report_allower" varchar(64) COLLATE "pg_catalog"."default",
ADD COLUMN "report_allower_id" int8,
ADD COLUMN "report_allow_time" timestamp(6),
ADD COLUMN "report_sender" varchar(64) COLLATE "pg_catalog"."default",
ADD COLUMN "report_sender_id" int8,
ADD COLUMN "report_send_time" timestamp(6);
COMMENT ON COLUMN "public"."entrust_report"."report_allower" IS '批准人';
COMMENT ON COLUMN "public"."entrust_report"."report_allower_id" IS '批准人Id';
COMMENT ON COLUMN "public"."entrust_report"."report_allow_time" IS '批准时间';
COMMENT ON COLUMN "public"."entrust_report"."report_sender" IS '发放人';
COMMENT ON COLUMN "public"."entrust_report"."report_sender_id" IS '发放人Id';
COMMENT ON COLUMN "public"."entrust_report"."report_send_time" IS '发放时间';
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment