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