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