| 
					
				 | 
			
			
				@ -0,0 +1,98 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				package com.yihu.jw.base.service.a3service; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.alibaba.fastjson.JSONArray; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.alibaba.fastjson.JSONObject; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.yihu.jw.base.dao.a2dao.MediicinedrugsDao; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.yihu.jw.base.dao.a2dao.MediicineorderDao; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.yihu.jw.entity.a1entity.Mediicinedrugs; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.yihu.jw.entity.a1entity.Mediicineorder; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import org.apache.commons.lang.StringUtils; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import org.slf4j.Logger; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import org.slf4j.LoggerFactory; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import org.springframework.beans.factory.annotation.Autowired; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import org.springframework.stereotype.Service; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import org.springframework.transaction.annotation.Transactional;; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import java.util.HashMap; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import java.util.Map; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				@Transactional 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				@Service 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				public class MedOrderService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    private static Logger logger = LoggerFactory.getLogger(MedOrderService.class); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    @Autowired 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    MediicineorderDao mediicineorderDao; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    @Autowired 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    MediicinedrugsDao mediicinedrugsDao; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * 获取续方订单及药方 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public Map<String,Object> saveOrder(String jsonData){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        Map<String,Object>result=new HashMap<>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNotBlank(jsonData)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            JSONObject params=JSONObject.parseObject(jsonData); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            String order=params.getString("realOrder"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            Mediicineorder mediicineorder=new Mediicineorder(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (mediicineorderDao.findByOrderNum(order)==null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                mediicineorder.setOrderNum(order); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            }else{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                result.put("failed","订单号已存在"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                return result; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            String sex=params.getString("rx_patient_sex"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            mediicineorder.setSex(sex); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            String equNum=params.getString("device_no"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            mediicineorder.setEquNum(equNum); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            String name=params.getString(" rx_patient_name"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            mediicineorder.setName(name); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            String age=params.getString(" rx_patient_age"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            mediicineorder.setAge(age); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            mediicineorder.setUserId(params.getString("user_id")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            mediicineorder.setShopNo(params.getString("shop_no")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            mediicineorder.setAddress(params.getString(" rx_patient_address")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            mediicineorder.setContact(params.getString(" rx_patient_phone")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            mediicineorder.setIdNum(params.getString(" rx_patient_identity")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            mediicineorder.setOrderType(params.getString(" rx_type")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            mediicineorder.setOrderState(params.getString("rx_state")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            mediicineorder.setAttr(params.getString(" rx_attr")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            mediicineorder.setIdNum(params.getString("rx_patient_identity")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            mediicineorder.setPrescribeTime(params.getDate("rx_time")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            mediicineorder.setBirth(params.getDate("rx_patient_birth")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            mediicineorder.setInfo(params.getString("rx_diagnosis_info")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            mediicineorder.setHospitalInfo(params.getString(" rx_hospital_info")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            mediicineorder.setDeptNum(params.getString(" rx_department_no")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            mediicineorder.setDeptName(params.getString(" rx_department_name")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            mediicineorder.setDoctorNum(params.getString("rx_doctor_no")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            mediicineorder.setDeptName(params.getString("rx_doctor_name")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            mediicineorder.setDoctorAdvice(params.getString(" rx_doctoradvice")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            mediicineorder.setAllergyInfo(params.getString(" rx_allergy_info")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            JSONArray jsonArray=params.getJSONArray("rx_drugs"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            Mediicinedrugs mediicinedrugs=new Mediicinedrugs(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            for (int i = 0; i <jsonArray.size() ; i++) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                JSONObject jsonObject=jsonArray.getJSONObject(i); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                mediicinedrugs.setId(jsonObject.getString("drug_id")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                mediicinedrugs.setDrugSku(jsonObject.getString("drug_sku ")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                mediicinedrugs.setDrugCode(jsonObject.getString("drug_code")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                mediicinedrugs.setDrugName(jsonObject.getString("drug_name")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                mediicinedrugs.setSpecif(jsonObject.getString("drug_specs")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                mediicinedrugs.setDrugNum(jsonObject.getFloat("drug_num")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                mediicinedrugs.setPrice(jsonObject.getFloat("drug_price")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                mediicinedrugs.setUseNum(jsonObject.getFloat("drug_use_num")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                mediicinedrugs.setUseWay(jsonObject.getString(" drug_use_way")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                mediicinedrugs.setUseRate(jsonObject.getString(" drug_use_rate")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                mediicinedrugs.setUseDose(jsonObject.getString(" drug_use_dose")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                mediicinedrugs.setUnit(jsonObject.getString("drug_use_unit")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                mediicinedrugs.setUseWayAdd(jsonObject.getString("drug_use_way_add")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                mediicinedrugs.setManufactor(jsonObject.getString(" drug_firm_name")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            Mediicineorder ord=mediicineorderDao.save(mediicineorder); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            Mediicinedrugs drugs=mediicinedrugsDao.save(mediicinedrugs); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            result.put("order",ord); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            result.put("drugs",drugs); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            return result; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return null; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				} 
			 |