20241215 更新

1.更新贵阳需求文档
2.添加鉴定事项确认书需要委托单位打印,也就是委托单位需要在审核完成并委托送件后,同时能够打印委托书与确认书
This commit is contained in:
2024-12-23 11:19:07 +08:00
parent c26e75a6e7
commit fb3fc4d14f
4 changed files with 45 additions and 20 deletions

View File

@@ -440,17 +440,22 @@ public class EntrustmentServiceImpl extends ServiceImpl<EntrustmentMapper, Entru
@Override
public Boolean generateIdentifyItemsBook(String entrustId) {
Entrustment entrustment = this.getOne(Wrappers.<Entrustment>query()
.eq("id", entrustId));
List<EntrustmentIdentificationMaterial> materialList = entrustmentIdentificationMaterialService.list(Wrappers.<EntrustmentIdentificationMaterial>query()
.eq("entrustment_id", entrustId)
.orderByAsc("accept_no"));
Collections.sort(materialList, new Comparator<EntrustmentIdentificationMaterial>() {
@Override
public int compare(EntrustmentIdentificationMaterial o1, EntrustmentIdentificationMaterial o2) {
return Integer.parseInt(o1.getAcceptNo().split("-")[2]) - Integer.parseInt(o2.getAcceptNo().split("-")[2]);
}
});
Entrustment entrustment = this.getOne(Wrappers.<Entrustment>query().eq("id", entrustId));
// 标记该委托是否已经受理
int isAccepted = entrustment.getStatus().compareTo(EntrustmentStatusConstants.ENTRUSTMENT_STATUS_ACCEPTED.getStatus());
List<EntrustmentIdentificationMaterial> materialList = entrustmentIdentificationMaterialService.list(Wrappers.<EntrustmentIdentificationMaterial>lambdaQuery()
.eq(EntrustmentIdentificationMaterial::getEntrustmentId, entrustId)
.orderByAsc(isAccepted != -1, EntrustmentIdentificationMaterial::getAcceptNo)
.orderByAsc(isAccepted == -1, EntrustmentIdentificationMaterial::getImNo));
if (isAccepted != -1) {
// 受理过的才进行排序,否则采用检材编号排序
Collections.sort(materialList, new Comparator<EntrustmentIdentificationMaterial>() {
@Override
public int compare(EntrustmentIdentificationMaterial o1, EntrustmentIdentificationMaterial o2) {
return Integer.parseInt(o1.getAcceptNo().split("-")[2]) - Integer.parseInt(o2.getAcceptNo().split("-")[2]);
}
});
}
CaseEvent caseEvent = caseEventService.getOne(Wrappers.<CaseEvent>query()
.eq("id", entrustment.getCaseId()));
String templatePath = OSSDirectoryConstants.IDENTIFY_BOOK_DIRECTORY + "/" + entrustment.getId() + "/" + "鉴定事项确认书-" + entrustment.getAcceptNo();
@@ -465,7 +470,7 @@ public class EntrustmentServiceImpl extends ServiceImpl<EntrustmentMapper, Entru
listNameCollection.add("materialRList");
//把筛查物列表转为一行字符串
entrustmentIdentificationMaterialService.conformityDrugs(materialList);
Map<String, Object> data = generateIdentifyItemsData(caseEvent, entrustment, materialList);
Map<String, Object> data = generateIdentifyItemsData(caseEvent, entrustment, materialList, isAccepted);
R ret = remoteGenerateWordService.generateWord(templateName, originalFilename, templatePath, fileType, QRContent, listNameCollection, false, data);
if (ret.getCode() == 0) {
System.out.println("鉴定事项书生成完毕...........................");
@@ -482,11 +487,10 @@ public class EntrustmentServiceImpl extends ServiceImpl<EntrustmentMapper, Entru
* @param caseEvent
* @param entrustment
* @param materialList
* @param isAccepted -1 未受理0 1 受理之后的状态
* @return
*/
private Map<String, Object> generateIdentifyItemsData(CaseEvent caseEvent, Entrustment entrustment, List<EntrustmentIdentificationMaterial> materialList) {
R<SysUser> sysUserR = remoteUserService.innerGetById(entrustment.getAcceptUser());
String acceptName = sysUserR.getData().getName();
private Map<String, Object> generateIdentifyItemsData(CaseEvent caseEvent, Entrustment entrustment, List<EntrustmentIdentificationMaterial> materialList, int isAccepted) {
Map<String, Object> dm = new HashMap<>();
//构建案件部分需要的参数值
dm.put("caseName", caseEvent.getCaseName());
@@ -506,8 +510,6 @@ public class EntrustmentServiceImpl extends ServiceImpl<EntrustmentMapper, Entru
dm.put("deliverStatement", "本人及所属委托鉴定单位忠于案(事)件事实,保证检材及相关资料真实、合法,如有虚假,由本人及所属委托鉴定单位承担相关法律责任。");//送检人声明
dm.put("sendDate", LocalDateTimeUtil.format(entrustment.getDeliverTime(), "yyyy年MM月dd日"));//送检日期
dm.put("identityStatement", "本鉴定机构工作遵循公正独立、程序规范、方法科学、结论准确的原则,严格履行质量承诺。");//鉴定机构声明
dm.put("acceptDate", LocalDateTimeUtil.format(entrustment.getAcceptTime(), "yyyy年MM月dd日"));//受理日期
dm.put("acceptName", acceptName);
dm.put("materialList", getMaterialBookVoList(materialList));//检材列表
//设置取样方法
dm.put("samplingMethod", getSamplingMethod(materialList));
@@ -534,9 +536,16 @@ public class EntrustmentServiceImpl extends ServiceImpl<EntrustmentMapper, Entru
dm.put("materialMount", getAllMaterialMount(materialList, "A"));//检材总的质量-分析样
dm.put("materialMount1", getAllMaterialMount(materialList, "R"));//检材总的质量-留存样
dm.put("ac_yy", entrustment.getAcceptTime().getYear());//受理年
dm.put("ac_mm", entrustment.getAcceptTime().getMonthValue());//受理月
dm.put("ac_day", entrustment.getAcceptTime().getDayOfMonth());//受理日
// 填充受理数据
if (isAccepted != -1) {
R<SysUser> sysUserR = remoteUserService.innerGetById(entrustment.getAcceptUser());
String acceptName = sysUserR.getData().getName();
dm.put("acceptDate", LocalDateTimeUtil.format(entrustment.getAcceptTime(), "yyyy年MM月dd日"));//受理日期
dm.put("acceptName", acceptName);
dm.put("ac_yy", entrustment.getAcceptTime().getYear());//受理年
dm.put("ac_mm", entrustment.getAcceptTime().getMonthValue());//受理月
dm.put("ac_day", entrustment.getAcceptTime().getDayOfMonth());//受理日
}
dm.put("value1", "");//受理日
//条形码 因为调用feign接口的原因图片传输过程中会受影响这里改为在生成的地方再生成
return dm;