123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163 |
- import {post,json} from '@utils/ajax.js';
- import {SETINITDATA,MODI_LOADING,GET_ASSIST_LIST,GET_INSPECT_LIST,SETALLMODULES} from '@store/types/homePage.js';
- import {SET_CURRENT} from '@store/types/currentIll';
- import {SET_MAINSUIT} from '@store/types/mainSuit';
- import config from '@config/index.js';
- import {formatContinueDots,getUrlArgObject,storageLocal,fullfillText,checkFullfillText} from '@utils/tools';
- import {getOtherHisRecord,getInitData} from '@store/async-actions/fetchModules.js';
- import {initHistoryDetails} from '@store/async-actions/patInfo';
- const api = {
- getModules:'/moduleInfo/getAll',
- clickCount:'/buriedSomeStatistical/saveBuriedSomeStatisticals', //埋点统计
- getChronic:'/disType/getDisType', //慢病列表
- getQuestionUsual:'/questionUsual/getQuestionUsual', //化验常用标签
- getSystemConfig:'/sysSet/getSysSetInfoDatas', //获取系统配置
- };
- //获取系统配置
- export const getSystemConfig = ()=>{
- const code = getUrlArgObject('hospitalId');
- // return json(api.getSystemConfig,{hospitalCode:code});
- };
- function modulesParseJson(data){
- let json = {},obj={},saveTextJson={},moduleName={};
- data.map((it)=>{
- moduleName[config.moduleCP[it.type]] = it.name;//添加病情变化/病程变化子模板需要使用模板名称
- obj = it.type==4?checkFullfillText(it.moduleDetailDTOList):fullfillText(it.moduleDetailDTOList);
- json[config.moduleCP[it.type]] = formatContinueDots(obj.newArr);
- saveTextJson[config.moduleCP[it.type]] = obj.saveText;
- });
- return {json,saveTextJson,moduleName};
- }
- export const getInitModules= (dispatch,getStore)=>{
- const state = getStore();
- const {message} = state.patInfo;
- const {allModules} = state.homePage;
- const chronicMagItem = state.diagnosticList.chronicMagItem;//诊断入口
- // const chronicId = chronicMagItem?chronicMagItem.id:'';
- const chronicDesease = state.mainSuit.chronicDesease; //主诉入口
- const chronicId = chronicDesease&&chronicDesease.conceptId||chronicMagItem&&chronicMagItem.conceptId||'';
- const param = {
- age:message.patientAge,
- sexType:message.sex,
- mouduleType:chronicId?2:(message.selfDeptId?1:0),//慢病2 科室1 其他0
- // relationId:chronicId?chronicId:(message.hospitalDeptId?message.hospitalDeptId:0), //慢病id 科室id 其他0
- relationId:chronicId?chronicId:(message.selfDeptId?message.selfDeptId:0), //慢病id 科室id 其他0
- }
- // return json(api.getModules,{age:message.patientAge,sexType:message.sex}).then((res) => {
- return json(api.getModules,param).then((res) => {
- if (res.data.code == '0') {
- const newObj = modulesParseJson(res.data.data);
- const initData = newObj.json;
- const initSaveText = newObj.saveTextJson;
- const initModuleName = newObj.moduleName;
- // 将所有模板缓存,方便根据id取子模板
- dispatch({
- type: SETALLMODULES,
- data: res.data.data,
- });
- dispatch({
- type: SETINITDATA,
- data: initData
- });
- if(!chronicId){//普通病
- dispatch({
- type:SET_MAINSUIT,
- data:fullfillText(initData.mainSuit).newArr,
- addSymptom:fullfillText(initData.addSymptom).newArr,
- save:initSaveText.mainSuit
- });
- dispatch({
- type:SET_CURRENT,
- data:formatContinueDots(initData.current),
- save:initSaveText.current,
- processModule:formatContinueDots(initData.process),//病程变化
- saveProcess:initSaveText.process,
- emptyData:formatContinueDots(initData.currentEmpty),//现病史空模板
- currentEmptySon:formatContinueDots(initData.currentEmptySon),//现病史空模板-子模板
- saveEmpty:initSaveText.currentEmpty,
- });
- }else{//慢病--没有主诉模板
- dispatch({
- type:SET_CURRENT,
- data:formatContinueDots(initData.current),
- save:initSaveText.current,
- processModule:formatContinueDots(initData.process),//病程变化
- // saveProcess:initSaveText.process,
- // 慢病现病史没有空模板
- });
- }
- dispatch(getOtherHisRecord()); //获取其他史最近记录
- }
- })
- };
- // 埋点事件,点击保存时调用
- export const saveClickNum = (dispatch,getState)=>{
- const state = getState();
- const patientInfo = state.patInfo.message;
- const data = state.homePage.clickData;//所有点击事件储存
- const params = {
- "doctorId": patientInfo.doctorId, //医生id
- "hospitalDeptId":patientInfo.hospitalDeptId , //部门ID
- "hospitalId": patientInfo.hospitalId, //医院id
- "inquiryCode": patientInfo.recordId,//门诊号
- "patientId": patientInfo.patientId, //病人ID
- "taggeds": data
- }
- return json(api.clickCount,params).then((res) => {
- if (res.data.code == '0') {
- console.log("埋点请求成功");
- // 重置clickData
- }else{
- console.log("埋点请求失败",res);
- }
- })
- }
- // 请求慢病列表
- export const getChronic = (dispatch,getState)=>{
- return json(api.getChronic,{}).then((res) => {
- const result = res.data;
- if (result.code == '0') {
- const chronic = JSON.stringify(result.data.chronic);
- storageLocal.set('chronic',chronic);
- }else{
- console.log("请求失败",res);
- }
- })
- }
- // 请求化验辅检常用标签
- export const getCommonList = (val)=>{
- return (dispatch,getState) => {
- const state = getState();
- const patientInfo = state.patInfo.message;
- const params = {
- "age":patientInfo.patientAge , //年龄
- "deptName": patientInfo.hospitalDeptName, //科室名称
- "sexType": patientInfo.sex, //性别
- "type": val
- }
- json(api.getQuestionUsual,params).then((res) => {
- const result = res.data;
- if (result.code == '0') {
- if(val == 5){
- dispatch({
- type:GET_INSPECT_LIST,
- data:result.data
- })
- }else{
- dispatch({
- type:GET_ASSIST_LIST,
- data:result.data
- })
- }
- }else{
- console.log("请求失败",res);
- }
- })
- }
- }
|