Browse Source

三院需求

LAPTOP-KB9HII50\70708 2 years ago
parent
commit
58151eb587

+ 26 - 12
business/base-service/src/main/java/com/yihu/jw/knowledge/service/BaseKnowledgeQuestionService.java

@ -13,8 +13,10 @@ import org.apache.commons.lang3.StringUtils;
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.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@ -384,21 +386,33 @@ public class BaseKnowledgeQuestionService extends BaseJpaService<BaseKnowledgeQu
     * 关联设置
     * @param flowConfigurationRelations
     */
    public List<BaseKnowledgeFlowConfigurationRelation> setQuestionConfigurationRelation(List<BaseKnowledgeFlowConfigurationRelation> flowConfigurationRelations){
        for (BaseKnowledgeFlowConfigurationRelation flowConfigurationRelation:flowConfigurationRelations){
            flowConfigurationRelation.setCreateTime(new Date());
            flowConfigurationRelation.setUpdateTime(new Date());
            flowConfigurationRelationDao.save(flowConfigurationRelation);
        }
    @Transactional
    public List<BaseKnowledgeFlowConfigurationRelation> setQuestionConfigurationRelation(List<BaseKnowledgeFlowConfigurationRelation> flowConfigurationRelations
            ,String questionId,Integer status){
        if (flowConfigurationRelations!=null&&flowConfigurationRelations.size()!=0){
            BaseKnowledgeFlowConfigurationRelation configurationRelation = flowConfigurationRelations.get(0);
            if (configurationRelation.getStatus()==1){
                questionDao.updateFlagById(configurationRelation.getQuestionId(),1);
            }else {
                questionDao.updateFlagById(configurationRelation.getQuestionId(),0);
            }
            List<BaseKnowledgeFlowConfigurationRelation> list = flowConfigurationRelationDao.selectByQuestionId(questionId);
            //保存更新数据
            Map<String,String> map = new HashMap<>();
            for (BaseKnowledgeFlowConfigurationRelation flowConfigurationRelation:flowConfigurationRelations){
                flowConfigurationRelation.setCreateTime(new Date());
                flowConfigurationRelation.setUpdateTime(new Date());
                flowConfigurationRelation.setStatus(status);
                flowConfigurationRelationDao.save(flowConfigurationRelation);
                map.put(flowConfigurationRelation.getId(),"");
            }
            //删除旧数据
            for(BaseKnowledgeFlowConfigurationRelation relation:list){
                if(!map.containsKey(relation.getId())){
                    flowConfigurationRelationDao.delete(relation);
                }
            }
        }else {
            //删除旧数据
            flowConfigurationRelationDao.deleteByQuestionId(questionId);
        }
        questionDao.updateFlagById(questionId,status);
        return flowConfigurationRelations;
    }

+ 15 - 6
business/base-service/src/main/java/com/yihu/jw/knowledge/service/BaseSystemDialogSettingService.java

@ -1,17 +1,19 @@
package com.yihu.jw.knowledge.service;
import com.yihu.jw.entity.knowledge.BaseKnowledgeDict;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.yihu.jw.entity.hospital.consult.WlyyHospitalSysDictDO;
import com.yihu.jw.entity.knowledge.BaseKnowledgeQuestion;
import com.yihu.jw.entity.knowledge.BaseKnowledgeQuestions;
import com.yihu.jw.entity.knowledge.BaseSystemDialogSetting;
import com.yihu.jw.entity.vo.DictVO;
import com.yihu.jw.hospital.dict.WlyyHospitalSysDictDao;
import com.yihu.jw.knowledge.dao.BaseKnowledgeDictDao;
import com.yihu.jw.knowledge.dao.BaseKnowledgeQuestionDao;
import com.yihu.jw.knowledge.dao.BaseKnowledgeQuestionsDao;
import com.yihu.jw.knowledge.dao.BaseSystemDialogSettingDao;
import com.yihu.jw.mysql.query.BaseJpaService;
import com.ylzinfo.onepay.sdk.utils.StringUtil;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
@ -40,6 +42,8 @@ public class BaseSystemDialogSettingService extends BaseJpaService<BaseSystemDia
    private BaseKnowledgeQuestionsDao questionsDao;
    @Autowired
    private BaseKnowledgeDictDao dictDao;
    @Autowired
    private WlyyHospitalSysDictDao hospitalSysDictDao;
    /**
     * 新增和修改系统会话设置
@ -80,11 +84,15 @@ public class BaseSystemDialogSettingService extends BaseJpaService<BaseSystemDia
                    dialogSetting.setQuestions(questionList);
                }else  if (dialogSetting.getRelaitonCodeType()==2){
                    String dict[] = dialogSetting.getRelationCode().split(",");
                    List<BaseKnowledgeDict> dictList = new ArrayList<>();
                    WlyyHospitalSysDictDO dictDO = hospitalSysDictDao.findOneByDictNameAndDictCode("dictTypeDict","dictTypeDict");
                    JSONObject json = JSON.parseObject(dictDO.getDictValue());
                    List<DictVO> dictList = new ArrayList<>();
                    for (int i=0;i<=dict.length-1;i++){
                        String dictId = dict[i];
                        BaseKnowledgeDict knowledgeDict = dictDao.findById(dictId).get();
                        dictList.add(knowledgeDict);
                        DictVO dictVO = new DictVO();
                        dictVO.setCode(dictId);
                        dictVO.setName(json.getString(dictId));
                        dictList.add(dictVO);
                    }
                    dialogSetting.setDictList(dictList);
                }else if (dialogSetting.getRelaitonCodeType()==3){
@ -101,4 +109,5 @@ public class BaseSystemDialogSettingService extends BaseJpaService<BaseSystemDia
        }
        return systemDialogSettings;
    }
}

+ 53 - 6
business/base-service/src/main/java/com/yihu/jw/wlyy/service/WlyyBusinessService.java

@ -744,11 +744,58 @@ public class WlyyBusinessService {
        }
    }
    public static void main(String ag[]){
        String id = "350212198709121575";
        String salt = "dfgtr";
        String pw = id.substring(id.length() - 6);
        String  spw = MD5.md5Hex(pw + "{" + salt + "}");
        System.out.println(spw);
    //居民是否签约
    public JSONObject isSign(String idcard){
        JSONObject re = wlyyHttpService.sendWlyyMesGet("isSign","?idcard="+idcard);
        return re;
    }
    //获取医生信息
    public JSONObject doctorInfo(String code){
        JSONObject re = wlyyHttpService.sendWlyyMesGet("doctorInfo","?code="+code);
        return re;
    }
    //获取居民信息
    public JSONObject patientInfo(String code){
        JSONObject re = wlyyHttpService.sendWlyyMesGet("patientInfo","?code="+code);
        return re;
    }
    //获取团队列表
    public JSONObject getAdminTeamList(String teamName, String leadName, Integer page, Integer pageSize, String hospital) {
        String param = "?teamName="+nullToTransfor(teamName)+"&leadName="+nullToTransfor(leadName)+"&page="+page+"&pageSize="+pageSize+"&hospital="+nullToTransfor(hospital);
        JSONObject re = wlyyHttpService.sendWlyyMesGet("getAdminTeamList",param);
        return re;
    }
    //获取团队成员列表
    public JSONObject getAdminTeamMemberList(String teamId, String doctorName, Integer page, Integer pageSize, String mobile) {
        String param = "?teamId="+nullToTransfor(teamId)+"&doctorName="+nullToTransfor(doctorName)+"&page="+page+"&pageSize="+pageSize+"&mobile="+nullToTransfor(mobile);
        JSONObject re = wlyyHttpService.sendWlyyMesGet("getAdminTeamMemberList",param);
        return re;
    }
    //获取机构列表分页
    public JSONObject getHospitalList(String name, Integer page, Integer pageSize, String town) {
        String param = "?name="+nullToTransfor(name)+"&town="+nullToTransfor(town)+"&page="+page+"&pageSize="+pageSize;
        JSONObject re = wlyyHttpService.sendWlyyMesGet("getHospitalList",param);
        return re;
    }
    //获取签约列表分页(只查询有效的)
    public JSONObject getSignList(String name, Integer page, Integer pageSize, String town,String hospital,String adminTeamCode
            ,String doctor,String doctorName,String doctorHealthName,String hospitalName,String idcard,String address,String teamName,String leaderName) {
        String param = "?name="+nullToTransfor(name)+"&town="+nullToTransfor(town)+"&page="+page+"&pageSize="+pageSize+"&hospital="+nullToTransfor(hospital)+
                "&adminTeamCode="+nullToTransfor(adminTeamCode)+"&doctor="+nullToTransfor(doctor)+"&doctorName="+nullToTransfor(doctorName)+
                "&doctorHealthName="+nullToTransfor(doctorHealthName)+"&hospitalName="+nullToTransfor(hospitalName)+"&idcard="+nullToTransfor(idcard)+
                "&address="+nullToTransfor(address)+"&teamName="+nullToTransfor(teamName)+"&leaderName="+nullToTransfor(leaderName);
        JSONObject re = wlyyHttpService.sendWlyyMesGet("getSignList",param);
        return re;
    }
    private String nullToTransfor(String str){
        return StringUtils.isNotBlank(str)?"":str;
    }
}

+ 10 - 0
common/common-entity/src/db/2023.sql

@ -0,0 +1,10 @@
-- 2023-04-20
ALTER table base_team add COLUMN `intro` varchar(2000) DEFAULT NULL COMMENT '团队简介';
ALTER table base_team add COLUMN `recommend` varchar(1) DEFAULT NULL COMMENT '推荐 1是0否';
-- 2023-02-27
base_patient_doctor 暂时用来代替 wlyy_sign_family

common/common-entity/mysql关键字大全.sql → common/common-entity/src/db/mysql关键字大全.sql


common/common-entity/sql记录 → common/common-entity/src/db/sql记录


+ 19 - 1
common/common-entity/src/main/java/com/yihu/jw/entity/base/team/BaseTeamDO.java

@ -5,7 +5,6 @@ import com.yihu.jw.entity.UuidIdentityEntityWithOperator;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Table;
import java.util.Date;
/**
@ -52,6 +51,9 @@ public class BaseTeamDO extends UuidIdentityEntityWithOperator {
     */
    private String del;
    private String intro;//团队简介
    private String recommend;//推荐 1是0否
    @Column(name = "org_code")
    public String getOrgCode() {
        return orgCode;
@ -114,5 +116,21 @@ public class BaseTeamDO extends UuidIdentityEntityWithOperator {
        this.del = del;
    }
    @Column(name = "intro")
    public String getIntro() {
        return intro;
    }
    public void setIntro(String intro) {
        this.intro = intro;
    }
    @Column(name = "recommend")
    public String getRecommend() {
        return recommend;
    }
    public void setRecommend(String recommend) {
        this.recommend = recommend;
    }
}

+ 4 - 3
common/common-entity/src/main/java/com/yihu/jw/entity/knowledge/BaseSystemDialogSetting.java

@ -1,6 +1,7 @@
package com.yihu.jw.entity.knowledge;
import com.yihu.jw.entity.UuidIdentityEntityWithOperator;
import com.yihu.jw.entity.vo.DictVO;
import javax.persistence.Entity;
import javax.persistence.Table;
@ -30,7 +31,7 @@ public class BaseSystemDialogSetting extends UuidIdentityEntityWithOperator {
	private String timeUnit;//时间单位code(字典timeUnitDict)
	private List<BaseKnowledgeQuestion> questions;//问题列表
	private List<BaseKnowledgeQuestions> questionsList;//问题集列表
	private List<BaseKnowledgeDict> dictList;//字典列表
	private List<DictVO> dictList;//字典列表
	public String getTimeUnit() {
		return timeUnit;
@ -59,11 +60,11 @@ public class BaseSystemDialogSetting extends UuidIdentityEntityWithOperator {
	}
	@Transient
	public List<BaseKnowledgeDict> getDictList() {
	public List<DictVO> getDictList() {
		return dictList;
	}
	public void setDictList(List<BaseKnowledgeDict> dictList) {
	public void setDictList(List<DictVO> dictList) {
		this.dictList = dictList;
	}

+ 28 - 0
common/common-entity/src/main/java/com/yihu/jw/entity/vo/DictVO.java

@ -0,0 +1,28 @@
package com.yihu.jw.entity.vo;
import java.io.Serializable;
/**
 * Created by yeshijie on 2023/4/21.
 */
public class DictVO implements Serializable {
    private String code;
    private String name;
    public String getCode() {
        return code;
    }
    public void setCode(String code) {
        this.code = code;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
}

+ 7 - 12
svr/svr-internet-hospital-job/src/main/java/com/yihu/jw/service/channel/SyncWlyyHospitalService.java

@ -3,8 +3,6 @@ package com.yihu.jw.service.channel;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.jhlabs.image.WoodFilter;
import com.yihu.jw.entity.base.org.BaseOrgDO;
import com.yihu.jw.entity.hospital.DmHospitalDO;
import com.yihu.jw.entity.hospital.consult.WlyyHospitalSysDictDO;
import com.yihu.jw.entity.hospital.team.WlyyAdminTeamDO;
@ -13,18 +11,15 @@ import com.yihu.jw.hospital.HospitalDao;
import com.yihu.jw.hospital.dict.WlyyHospitalSysDictDao;
import com.yihu.jw.hospital.team.dao.WlyyAdminTeamDao;
import com.yihu.jw.hospital.team.dao.WlyyAdminTeamMemberDao;
import com.yihu.jw.utils.StringUtil;
import com.yihu.jw.wlyy.service.WlyyBusinessService;
import com.yihu.jw.wlyy.wlyyhttp.WlyyHttpService;
import org.apache.commons.collections.map.HashedMap;
import org.apache.commons.lang.time.DateFormatUtils;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.*;
import java.util.Date;
import java.util.List;
@Service
public class SyncWlyyHospitalService {
@ -111,7 +106,7 @@ public class SyncWlyyHospitalService {
                        h.put("available",0);
                    }
                    WlyyAdminTeamDO wlyyAdminTeam =JSON.toJavaObject(h,WlyyAdminTeamDO.class);
                    WlyyAdminTeamDO wlyyAdminTeamDO=wlyyAdminTeamDao.findOne(wlyyAdminTeam.getId());
                    WlyyAdminTeamDO wlyyAdminTeamDO=wlyyAdminTeamDao.findById(wlyyAdminTeam.getId()).orElse(null);
                    if(wlyyAdminTeamDO==null){
                        addCount++;
                    }else{
@ -128,7 +123,7 @@ public class SyncWlyyHospitalService {
    public void syncTeamMember(String teamId){
        List<WlyyAdminTeamDO> list=wlyyAdminTeamDao.findTeamAndAvailable();
        String wlyyDomainUrl="";
        WlyyHospitalSysDictDO wlyyHospitalSysDictDO = wlyyHospitalSysDictDao.findById("wlyyDomainUrl");
        WlyyHospitalSysDictDO wlyyHospitalSysDictDO = wlyyHospitalSysDictDao.findById("wlyyDomainUrl").orElse(null);
        if (wlyyHospitalSysDictDO!=null){
            wlyyDomainUrl=wlyyHospitalSysDictDO.getDictValue();
        }
@ -157,7 +152,7 @@ public class SyncWlyyHospitalService {
                        if (StringUtils.isNoneBlank(wlyyAdminTeamMember.getPhoto())&&wlyyAdminTeamMember.getPhoto().contains("group")){
                            wlyyAdminTeamMember.setPhoto(wlyyDomainUrl+wlyyAdminTeamMember.getPhoto());
                        }
                        WlyyAdminTeamMemberDO wlyyAdminTeamMemberDO=wlyyAdminTeamMemberDao.findOne(wlyyAdminTeamMember.getId());
                        WlyyAdminTeamMemberDO wlyyAdminTeamMemberDO=wlyyAdminTeamMemberDao.findById(wlyyAdminTeamMember.getId()).orElse(null);
                        if(wlyyAdminTeamMemberDO==null){
                            wlyyAdminTeamMember.setLastModified(new Date());
                            addCount++;
@ -181,7 +176,7 @@ public class SyncWlyyHospitalService {
        String param="?modifyTime="+nowTime;
        JSONObject re = wlyyHttpService.sendWlyyMesGet("findTeamMembersByModifyTime",param);
        String wlyyDomainUrl="";
        WlyyHospitalSysDictDO wlyyHospitalSysDictDO = wlyyHospitalSysDictDao.findById("wlyyDomainUrl");
        WlyyHospitalSysDictDO wlyyHospitalSysDictDO = wlyyHospitalSysDictDao.findById("wlyyDomainUrl").orElse(null);
        if (wlyyHospitalSysDictDO!=null){
            wlyyDomainUrl=wlyyHospitalSysDictDO.getDictValue();
        }
@ -202,7 +197,7 @@ public class SyncWlyyHospitalService {
                    if (StringUtils.isNoneBlank(wlyyAdminTeamMember.getPhoto())){
                        wlyyAdminTeamMember.setPhoto(wlyyDomainUrl+wlyyAdminTeamMember.getPhoto());
                    }
                    WlyyAdminTeamMemberDO wlyyAdminTeamMemberDO=wlyyAdminTeamMemberDao.findOne(wlyyAdminTeamMember.getId());
                    WlyyAdminTeamMemberDO wlyyAdminTeamMemberDO=wlyyAdminTeamMemberDao.findById(wlyyAdminTeamMember.getId()).orElse(null);
                    if(wlyyAdminTeamMemberDO==null){
                        addCount++;
                    }else{

+ 6 - 3
svr/svr-internet-hospital/src/main/java/com/yihu/jw/hospital/endpoint/knowledge/BaseKnowledgeQuestionController.java

@ -185,8 +185,11 @@ public class BaseKnowledgeQuestionController extends EnvelopRestEndpoint {
    @ApiOperation("问题流程关联配置")
    @PostMapping(value= BaseHospitalRequestMapping.BaseKnowledgeQuestion.setQuestionConfigurationRelation)
    public Envelop setQuestionConfigurationRelation(@ApiParam(name = "json", value = "问题关联配置JSON", required = true)
                                        @RequestParam(value = "json", required = true)String json){
                                                    @RequestParam(value = "json", required = true)String json,
                                                    @ApiParam(name = "questionId", value = "问题id", required = true)
                                                    @RequestParam(value = "questionId", required = true)String questionId,
                                                    @ApiParam(name = "status", value = "问题id", required = true)
                                                    @RequestParam(value = "status", required = true)Integer status){
        try {
            JSONArray array = JSONArray.parseArray(json);
            List<BaseKnowledgeFlowConfigurationRelation> flowConfigurationRelations = new ArrayList<>();
@ -194,7 +197,7 @@ public class BaseKnowledgeQuestionController extends EnvelopRestEndpoint {
                BaseKnowledgeFlowConfigurationRelation flowConfigurationRelation = toEntity(array.getJSONObject(i).toJSONString(),BaseKnowledgeFlowConfigurationRelation.class);
                flowConfigurationRelations.add(flowConfigurationRelation);
            }
            return success(questionService.setQuestionConfigurationRelation(flowConfigurationRelations));
            return success(questionService.setQuestionConfigurationRelation(flowConfigurationRelations,questionId,status));
        }catch (Exception e){
            return failedException(e);
        }