| 
						
						
							
								
							
						
						
					 | 
				
				 | 
				 | 
				
					@ -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; | 
				
			
			
		
	
	
		
			
				
					| 
						
							
								
							
						
						
						
					 | 
				
				 | 
				 | 
				
					
  |