|
@ -17,8 +17,7 @@ import org.springframework.jdbc.core.JdbcTemplate;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
|
import javax.transaction.Transactional;
|
|
|
import java.util.ArrayList;
|
|
|
import java.util.List;
|
|
|
import java.util.*;
|
|
|
|
|
|
/**
|
|
|
* @author wangzhinan
|
|
@ -93,33 +92,69 @@ public class SpecialistHospitalServiceItemService extends EnvelopRestEndpoint {
|
|
|
public MixEnvelop<JSONArray,JSONArray> selectByHospital1(String hospital,String docHospital,String serviceItemName){
|
|
|
MixEnvelop<JSONArray,JSONArray> envelop = new MixEnvelop<>();
|
|
|
String sqlUtil = "";
|
|
|
if (StringUtils.isNoneBlank(serviceItemName)){
|
|
|
if (StringUtils.isNoneBlank(serviceItemName)||serviceItemName != null){
|
|
|
sqlUtil="and service_item_name = '"+serviceItemName+"'";
|
|
|
}
|
|
|
String sql = "select * from wlyy_hospital_service_item where 1=1 AND hospital = '"+hospital+"' "+sqlUtil;
|
|
|
List<HospitalServiceItemDO> hospitalServiceItemDOS = jdbcTemplate.query(sql,new BeanPropertyRowMapper(HospitalServiceItemDO.class));
|
|
|
String sql1 = "select * from wlyy_hospital_service_item where 1=1 AND hospital = '"+docHospital+"' "+sqlUtil;
|
|
|
List<HospitalServiceItemDO> hospitalServiceItemDOList = jdbcTemplate.query(sql1,new BeanPropertyRowMapper(HospitalServiceItemDO.class));
|
|
|
List<HospitalServiceItemDO> hospitalServiceItemDOS1 = new ArrayList<>();
|
|
|
for (HospitalServiceItemDO hospitalServiceItemDO:hospitalServiceItemDOS){
|
|
|
boolean flag = false;
|
|
|
for (HospitalServiceItemDO hospitalServiceItemDO1 :hospitalServiceItemDOList){
|
|
|
if (hospitalServiceItemDO.getHospital().equals(hospitalServiceItemDO1.getHospital())){
|
|
|
hospitalServiceItemDO1.setFlag(3);
|
|
|
hospitalServiceItemDOS1.add(hospitalServiceItemDO1);
|
|
|
flag = true;
|
|
|
hospitalServiceItemDOList.remove(hospitalServiceItemDO1);
|
|
|
break;
|
|
|
}else{
|
|
|
hospitalServiceItemDO1.setFlag(2);
|
|
|
hospitalServiceItemDOS1.add(hospitalServiceItemDO1);
|
|
|
flag = false;
|
|
|
}
|
|
|
if (StringUtils.isNoneBlank(hospital)&&hospital.equals(docHospital)){
|
|
|
String sql1 = "select * from wlyy_hospital_service_item where 1=1 AND hospital = '"+docHospital+"' "+sqlUtil;
|
|
|
List<HospitalServiceItemDO> hospitalServiceItemDOList = jdbcTemplate.query(sql1,new BeanPropertyRowMapper(HospitalServiceItemDO.class));
|
|
|
for (HospitalServiceItemDO hospitalServiceItemDO:hospitalServiceItemDOList){
|
|
|
hospitalServiceItemDO.setFlag(3);
|
|
|
hospitalServiceItemDOS1.add(hospitalServiceItemDO);
|
|
|
}
|
|
|
if (flag==false){
|
|
|
hospitalServiceItemDO.setFlag(1);
|
|
|
}else if (hospital == null || hospital == ""){
|
|
|
String sql1 = "select * from wlyy_hospital_service_item where 1=1 AND hospital = '"+docHospital+"' "+sqlUtil;
|
|
|
List<HospitalServiceItemDO> hospitalServiceItemDOList = jdbcTemplate.query(sql1,new BeanPropertyRowMapper(HospitalServiceItemDO.class));
|
|
|
for (HospitalServiceItemDO hospitalServiceItemDO:hospitalServiceItemDOList){
|
|
|
hospitalServiceItemDO.setFlag(2);
|
|
|
hospitalServiceItemDOS1.add(hospitalServiceItemDO);
|
|
|
}
|
|
|
}else{
|
|
|
String sql = "select * from wlyy_hospital_service_item where 1=1 AND hospital = '"+hospital+"' "+sqlUtil;
|
|
|
List<HospitalServiceItemDO> hospitalServiceItemDOS = jdbcTemplate.query(sql,new BeanPropertyRowMapper(HospitalServiceItemDO.class));
|
|
|
String sql1 = "select * from wlyy_hospital_service_item where 1=1 AND hospital = '"+docHospital+"' "+sqlUtil;
|
|
|
List<HospitalServiceItemDO> hospitalServiceItemDOList = jdbcTemplate.query(sql1,new BeanPropertyRowMapper(HospitalServiceItemDO.class));
|
|
|
for (HospitalServiceItemDO hospitalServiceItemDO:hospitalServiceItemDOList){
|
|
|
boolean flag = false;
|
|
|
for (HospitalServiceItemDO hospitalServiceItemDO1 :hospitalServiceItemDOS){
|
|
|
boolean isTrue = false;
|
|
|
if (hospitalServiceItemDOS1 != null && hospitalServiceItemDOS1.size() != 0){
|
|
|
for (HospitalServiceItemDO hospitalServiceItemDO2:hospitalServiceItemDOS1){
|
|
|
if (hospitalServiceItemDO1.getServiceItemId().equals(hospitalServiceItemDO2.getServiceItemId())){
|
|
|
isTrue = true;
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
if (hospitalServiceItemDO.getServiceItemId().equals(hospitalServiceItemDO1.getServiceItemId())){
|
|
|
if (isTrue==false){
|
|
|
hospitalServiceItemDO1.setFlag(3);
|
|
|
hospitalServiceItemDOS1.add(hospitalServiceItemDO);
|
|
|
flag = true;
|
|
|
break;
|
|
|
}
|
|
|
}else{
|
|
|
if (isTrue == false){
|
|
|
hospitalServiceItemDO1.setFlag(2);
|
|
|
hospitalServiceItemDOS1.add(hospitalServiceItemDO1);
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
if (flag==false){
|
|
|
boolean isTure1 = false;
|
|
|
if (hospitalServiceItemDOS1 != null && hospitalServiceItemDOS1.size() != 0){
|
|
|
for (HospitalServiceItemDO hospitalServiceItemDO2:hospitalServiceItemDOS1){
|
|
|
if (hospitalServiceItemDO.getServiceItemId().equals(hospitalServiceItemDO2.getServiceItemId())){
|
|
|
isTure1 = true;
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
if (isTure1 == false){
|
|
|
hospitalServiceItemDO.setFlag(1);
|
|
|
hospitalServiceItemDOS1.add(hospitalServiceItemDO);
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
for (HospitalServiceItemDO hospitalServiceItemDO:hospitalServiceItemDOS1){
|
|
|
SpecialistServiceItemDO specialistServiceItemDO = specialistServiceItemDao.findOne(hospitalServiceItemDO.getServiceItemId());
|
|
@ -131,7 +166,7 @@ public class SpecialistHospitalServiceItemService extends EnvelopRestEndpoint {
|
|
|
SpecialistServiceItemDO specialistServiceItemDO = hospitalServiceItemDO.getSpecialistServiceItemDO();
|
|
|
if (itemType != null && itemType.size() != 0){
|
|
|
for (int i=0;i<itemType.size();i++){
|
|
|
if (!itemType.get(i).equals(specialistServiceItemDO.getItemType())){
|
|
|
if (!itemType.contains(specialistServiceItemDO.getItemType())){
|
|
|
itemType.add(specialistServiceItemDO.getItemType());
|
|
|
}
|
|
|
}
|
|
@ -145,9 +180,9 @@ public class SpecialistHospitalServiceItemService extends EnvelopRestEndpoint {
|
|
|
for (int j = 0;j<hospitalServiceItemDOS1.size();j++){
|
|
|
SpecialistServiceItemDO specialistServiceItemDO = hospitalServiceItemDOS1.get(j).getSpecialistServiceItemDO();
|
|
|
if (itemType.get(i).equals(specialistServiceItemDO.getItemType())){
|
|
|
type.add(specialistServiceItemDO.getDiseaseItem());
|
|
|
}
|
|
|
}
|
|
|
type.add(specialistServiceItemDO.getDiseaseItem());
|
|
|
}
|
|
|
}
|
|
|
JSONArray itemArray = new JSONArray();
|
|
|
if (type != null && type.size() != 0){
|
|
|
for (int z =0 ;z<type.size();z++){
|
|
@ -210,34 +245,53 @@ public class SpecialistHospitalServiceItemService extends EnvelopRestEndpoint {
|
|
|
* @param hospitals 医院code集合
|
|
|
* @return
|
|
|
*/
|
|
|
public MixEnvelop<HospitalServiceItemDO,HospitalServiceItemDO> selectByCondition(String serviceItemName,List<String> hospitals){
|
|
|
MixEnvelop<HospitalServiceItemDO,HospitalServiceItemDO> envelop = new MixEnvelop<>();
|
|
|
if (StringUtils.isNoneBlank(serviceItemName)){
|
|
|
public MixEnvelop<JSONArray,JSONArray> selectByCondition(String serviceItemName,List<String> hospitals){
|
|
|
MixEnvelop<JSONArray,JSONArray> envelop = new MixEnvelop<>();
|
|
|
/*if (StringUtils.isNoneBlank(serviceItemName)||serviceItemName != null){
|
|
|
String sql = "select * from wlyy_hospital_service_item where service_item_name = '"+serviceItemName+"' and status=1";
|
|
|
List<HospitalServiceItemDO> hospitalServiceItemDOS = jdbcTemplate.query(sql,new BeanPropertyRowMapper(HospitalServiceItemDO.class));
|
|
|
for (HospitalServiceItemDO hospitalServiceItemDO:hospitalServiceItemDOS){
|
|
|
SpecialistServiceItemDO specialistServiceItemDO = specialistServiceItemDao.findOne(hospitalServiceItemDO.getServiceItemId());
|
|
|
hospitalServiceItemDO.setSpecialistServiceItemDO(specialistServiceItemDO);
|
|
|
}
|
|
|
envelop.setDetailModelList(hospitalServiceItemDOS);
|
|
|
}else {
|
|
|
StringBuffer buffer = new StringBuffer();
|
|
|
if(hospitals != null && hospitals.size()!=0){
|
|
|
buffer.append(" and hospital in (");
|
|
|
for (int i =0 ;i<hospitals.size();i++){
|
|
|
buffer.append("'"+hospitals.get(i)+"',");
|
|
|
}
|
|
|
buffer.deleteCharAt(buffer.length()-1);
|
|
|
buffer.append(")");
|
|
|
JSONArray array = new JSONArray();
|
|
|
for (int i =0 ;i<hospitalServiceItemDOS.size();i++){
|
|
|
SpecialistServiceItemDO specialistServiceItemDO = hospitalServiceItemDOS.get(i).getSpecialistServiceItemDO();
|
|
|
JSONObject object = new JSONObject();
|
|
|
object.put("itemName",specialistServiceItemDO.getItemType());
|
|
|
object.put("hospitalServiceItem",hospitalServiceItemDOS.get(i));
|
|
|
array.add(object);
|
|
|
}
|
|
|
String sql = "select * from wlyy_hospital_service_item where 1=1 "+buffer;
|
|
|
List<HospitalServiceItemDO> hospitalServiceItemDOS = jdbcTemplate.query(sql,new BeanPropertyRowMapper(HospitalServiceItemDO.class));
|
|
|
for (HospitalServiceItemDO hospitalServiceItemDO:hospitalServiceItemDOS){
|
|
|
SpecialistServiceItemDO specialistServiceItemDO = specialistServiceItemDao.findOne(hospitalServiceItemDO.getServiceItemId());
|
|
|
hospitalServiceItemDO.setSpecialistServiceItemDO(specialistServiceItemDO);
|
|
|
List<JSONArray> list = new ArrayList<>();
|
|
|
list.add(array);
|
|
|
envelop.setDetailModelList(list);
|
|
|
}else {*/
|
|
|
StringBuffer buffer = new StringBuffer();
|
|
|
if(hospitals != null && hospitals.size()!=0){
|
|
|
buffer.append(" and hospital in (");
|
|
|
for (int i =0 ;i<hospitals.size();i++){
|
|
|
buffer.append("'"+hospitals.get(i)+"',");
|
|
|
}
|
|
|
envelop.setDetailModelList(hospitalServiceItemDOS);
|
|
|
buffer.deleteCharAt(buffer.length()-1);
|
|
|
buffer.append(")");
|
|
|
}
|
|
|
String sql = "select * from wlyy_hospital_service_item where 1=1 AND status=1"+buffer;
|
|
|
List<HospitalServiceItemDO> hospitalServiceItemDOS = jdbcTemplate.query(sql,new BeanPropertyRowMapper(HospitalServiceItemDO.class));
|
|
|
for (HospitalServiceItemDO hospitalServiceItemDO:hospitalServiceItemDOS){
|
|
|
SpecialistServiceItemDO specialistServiceItemDO = specialistServiceItemDao.findOne(hospitalServiceItemDO.getServiceItemId());
|
|
|
hospitalServiceItemDO.setSpecialistServiceItemDO(specialistServiceItemDO);
|
|
|
}
|
|
|
JSONArray array = new JSONArray();
|
|
|
for (int i =0 ;i<hospitalServiceItemDOS.size();i++){
|
|
|
SpecialistServiceItemDO specialistServiceItemDO = hospitalServiceItemDOS.get(i).getSpecialistServiceItemDO();
|
|
|
JSONObject object = new JSONObject();
|
|
|
object.put("itemName",specialistServiceItemDO.getItemType());
|
|
|
object.put("hospitalServiceItem",hospitalServiceItemDOS.get(i));
|
|
|
array.add(object);
|
|
|
}
|
|
|
List<JSONArray> list = new ArrayList<>();
|
|
|
list.add(array);
|
|
|
envelop.setDetailModelList(list);
|
|
|
return envelop;
|
|
|
}
|
|
|
|
|
@ -263,4 +317,28 @@ public class SpecialistHospitalServiceItemService extends EnvelopRestEndpoint {
|
|
|
}
|
|
|
|
|
|
|
|
|
/**
|
|
|
* 机构服务项目数据添加
|
|
|
*
|
|
|
* @param hospitalServiceItemDOS
|
|
|
* @return
|
|
|
*/
|
|
|
public MixEnvelop<Boolean,Boolean> importData(List<HospitalServiceItemDO> hospitalServiceItemDOS) {
|
|
|
MixEnvelop<Boolean,Boolean> envelop = new MixEnvelop<>();
|
|
|
if (hospitalServiceItemDOS != null && hospitalServiceItemDOS.size()!=0){
|
|
|
for (HospitalServiceItemDO hospitalServiceItemDO:hospitalServiceItemDOS){
|
|
|
List<HospitalServiceItemDO> hospitalServiceItemDOList = specialistHospitalServiceItemDao.findByHospitalAndServiceItemId(hospitalServiceItemDO.getHospital(),hospitalServiceItemDO.getServiceItemId());
|
|
|
if (hospitalServiceItemDOList == null && hospitalServiceItemDOList.size() ==0){
|
|
|
continue;
|
|
|
}else {
|
|
|
hospitalServiceItemDO.setStatus(1);
|
|
|
hospitalServiceItemDO.setId(UUID.randomUUID().toString());
|
|
|
specialistHospitalServiceItemDao.save(hospitalServiceItemDO);
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
envelop.setObj(true);
|
|
|
return envelop;
|
|
|
}
|
|
|
|
|
|
}
|