| 
					
				 | 
			
			
				@ -6,6 +6,7 @@ import org.apache.commons.collections.map.HashedMap; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import org.apache.commons.lang3.StringUtils; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import org.slf4j.LoggerFactory; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import org.springframework.beans.factory.annotation.Autowired; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import org.springframework.beans.factory.annotation.Value; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import org.springframework.jdbc.core.JdbcTemplate; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import org.springframework.stereotype.Service; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import org.springframework.transaction.annotation.Transactional; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -25,7 +26,8 @@ public class ServerPackageService  { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    @Autowired 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    private JdbcTemplate jdbcTemplate; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    @Value("${wechat.id}") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    private String wxId; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    /** 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -85,30 +87,45 @@ public class ServerPackageService  { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//            HospitalMapping hospitalMapping = hospitalMappingDao.findByCode(hospital); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//            buffer.append(" and ziocad.org_code = '"+hospitalMapping.getMappingCode()+"'"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String sql ="SELECT " + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                "ziocad.org_code AS hospital," + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                "zicd.clinic_code AS diagnosis_code," + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                "zicd.clinic_code AS code," + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                "zicd.clinic_name AS title," + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                "zicd.clinic_spec AS spec," + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                "zicd.clinic_unit AS unit," + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                "ziccad.allot_quantity AS quantity," + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                "zicd.subject_class AS subjectClass," + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                "ziccad.item_code AS itemCode," + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                " SUBSTR(zicd.subject_class, 1, 4) AS subjectCatagory," + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                " (CASE WHEN ISNULL(ziocd.price) THEN 0 ELSE ziocd.price END) as expense " + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                " FROM zy_iv_org_clinic_allot_dict ziocad " + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                " LEFT JOIN zy_iv_clinic_charge_allot_dict ziccad ON ziccad.clinic_code = ziocad.clinic_code AND ziccad.org_code = ziocad.org_code" + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                " LEFT JOIN zy_iv_clinic_dict zicd ON zicd.clinic_code = ziocad.clinic_code" + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                " LEFT JOIN zy_iv_org_charge_allot_dict ziocd ON ziocd.charge_code = ziccad.item_code and ziocd.org_code = ziccad.org_code  " ; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if("used".equals(type)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            sql += " LEFT JOIN wlyy_door_order_item i on i.code = zicd.clinic_code and (i.patient = '"+patient+"' or i.doctor='"+doctor+"') "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            sql += " WHERE SUBSTR(zicd.subject_class, 1, 4) = '"+type+"' "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        }else{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            sql += " WHERE SUBSTR(zicd.subject_class, 1, 4) = '"+type+"' "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String sql = ""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if("sd_tnzyy_wx".equals(wxId)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            sql = "SELECT a.FYXH code,a.FYMC title,a.FYDW unit,a.FYDJ expense from gy_ylsf a "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if("used".equals(type)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                sql += " JOIN wlyy_door_order_item i on i.code = a.FYXH and (i.patient = '"+patient+"' or i.doctor='"+doctor+"') "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            }else if("other".equals(type)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                sql = " where a.FYGB not in (SELECT code from base_system_dict_entry WHERE dict_code = 'door_service_subject_class_dict')"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            }else{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                sql += " WHERE a.FYGB ="+type; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        }else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            sql ="SELECT " + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    "ziocad.org_code AS hospital," + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    "zicd.clinic_code AS diagnosis_code," + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    "zicd.clinic_code AS code," + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    "zicd.clinic_name AS title," + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    "zicd.clinic_spec AS spec," + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    "zicd.clinic_unit AS unit," + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    "ziccad.allot_quantity AS quantity," + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    "zicd.subject_class AS subjectClass," + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    "ziccad.item_code AS itemCode," + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    " SUBSTR(zicd.subject_class, 1, 4) AS subjectCatagory," + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    " (CASE WHEN ISNULL(ziocd.price) THEN 0 ELSE ziocd.price END) as expense " + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    " FROM zy_iv_org_clinic_allot_dict ziocad " + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    " LEFT JOIN zy_iv_clinic_charge_allot_dict ziccad ON ziccad.clinic_code = ziocad.clinic_code AND ziccad.org_code = ziocad.org_code" + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    " LEFT JOIN zy_iv_clinic_dict zicd ON zicd.clinic_code = ziocad.clinic_code" + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    " LEFT JOIN zy_iv_org_charge_allot_dict ziocd ON ziocd.charge_code = ziccad.item_code and ziocd.org_code = ziccad.org_code  " ; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if("used".equals(type)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                sql += " LEFT JOIN wlyy_door_order_item i on i.code = zicd.clinic_code and (i.patient = '"+patient+"' or i.doctor='"+doctor+"') "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                sql += " WHERE SUBSTR(zicd.subject_class, 1, 4) = '"+type+"' "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            }else{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                sql += " WHERE SUBSTR(zicd.subject_class, 1, 4) = '"+type+"' "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            sql += buffer; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        sql += buffer; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        List<Map<String,Object>> mapList = jdbcTemplate.queryForList(sql); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return mapList; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -116,7 +133,7 @@ public class ServerPackageService  { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public List<Map<String,Object>> selectTypes(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String sql = "SELECT code,value type from base_system_dict_entry WHERE dict_code = 'PROFESSIONAL_STATE' ORDER BY sort"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String sql = "SELECT code,value type from base_system_dict_entry WHERE dict_code = 'door_service_subject_class_dict' ORDER BY sort"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        List<Map<String,Object>> mapList1 = jdbcTemplate.queryForList(sql); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        Map<String,Object> map1 = new HashedMap(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        map1.put("code","used"); 
			 |