{"version":3,"sources":["webpack:///./src/components/public/brain/brain.vue?3d37","webpack:///./node_modules/dayjs/plugin/isLeapYear.js","webpack:///./src/views/test/test.vue?f63d","webpack:///./src/views/test/test.vue?5ea1","webpack:///./src/views/test/test.vue","webpack:///./src/views/test/test.vue?08b0","webpack:///./src/util/class/fjbDrug.ts","webpack:///./src/util/class/llDrug.ts","webpack:///./src/util/publicMethod.ts","webpack:///./src/util/contant.ts","webpack:///./node_modules/dayjs/locale/zh-cn.js","webpack:///./src/components/public/brain/brain.vue?575d","webpack:///./src/components/public/brain/brain.vue?4b59","webpack:///./src/components/public/brain/brain.vue","webpack:///./src/util/class/synDiffDrug.ts"],"names":["e","t","module","exports","this","prototype","isLeapYear","$y","_hoisted_1","class","_hoisted_2","ref","render","_ctx","_cache","$props","$setup","$data","$options","_component_brain","_resolveComponent","_openBlock","_createElementBlock","_createElementVNode","style","_normalizeStyle","width","isShowBrain","_createBlock","key","navList","pointList","onBrainClick","brainClick","_createCommentVNode","defineComponent","name","components","brain","props","setup","router","useRouter","reactive","img","text","isActive","info","count","unit","type","to","personCount","zzCount","brainBoxRef","getAnalysisSummary","data","num","_times","Date","getTime","then","dataStatisticsVms","forEach","item","quantity","disabledQuantity","value","temList","brainMapVms","dxName","alias","tem","bgcolor","color","level","rate","push","splice","length","nextTick","offsetWidth","offsetHeight","__exports__","FjbDrug","LlDrug","constructor","id","qty","llUsage","precautions","remark","factory","articleUpdate","articleTitle","llId","llCode","llName","llAlias","llmainCategory","llSmallCategory","stdLlId","stdLlCode","stdLlName","stdLlAlias","stdLlmainCategory","stdLlSmallCategory","pbFn","dayjs","extend","locale","phone","re","test","synDiffDrug","fjbDrug","drugId","drugName","checkRemind","defaultMethod","direction","fjbDrugId","fjbDrugName","major","number","pharmacology","specs","drugType","drugState","rxType","SynDiffDrug","attention","aliasName","customaryName","llDrug","drugUnit","drugUsage","incompatibility","attentions","stdDrugCode","stdDrugName","category","drugCode","synDiffDrugs","fjbDrugs","i","j","drug","Object","assign","drugList","temDrug","JSON","parse","stringify","synDiff","flag","msg","synDiffCode","mainPoints","tmpl","dxCode","el","content","weight","curdrugobj","pwjjList","fjDrug","len","taboo","pwjj","pwjjDrug","checkDrugName","indexOf","k","innerDrug","sbf","sbfDrug","sjw","sjwDrug","cdyl","map","code","list","changeNum","getWan","temp","strArr","toString","split","reverse","newNum","keyValue","parseInt","oKeyValue","overWan","Math","floor","noWan","array","result","hash","trim","arr1","arr2","arr3","label","times","date","years","getFullYear","month","getMonth","day","getDate","hour","getHours","minute","getMinutes","seconds","getSeconds","res","formatNumber","join","n","str","r","deg","x","round","sin","y","cos","left","top","start","end","differ","random","m","d","shif","arr","low","high","orderKey","tmp","timestamp","randomNum","randomNum2","recipeId","String","TreeNode","child","deep","PermutationSequence","treeRoot","solution","dataArray","constrator","makeTree","root","newNode","node","backtrack","sel","pop","Array","getSolution","element","offsetTop","offsetLeft","current","offsetParent","windowWidth","window","innerWidth","document","documentElement","clientWidth","body","ImgUrlFix","location","origin","pathname","replace","header","header2","effcollDateSelect","effcollType","directionType","charCodeArr","ALPHA","SEX","AGE","markReg","drugUeWayList","qidList","title","groupLabelList","EYE_VALUE","EYE_LIST","nameAlias","groupOfLabel","syndiffAlias","_","default","weekdays","weekdaysShort","weekdaysMin","months","monthsShort","ordinal","weekStart","yearStart","formats","LT","LTS","L","LL","LLL","LLLL","l","ll","lll","llll","relativeTime","future","past","s","mm","h","hh","dd","M","MM","yy","meridiem","_hoisted_3","_hoisted_4","_hoisted_5","_hoisted_6","_hoisted_7","_hoisted_8","_hoisted_9","_hoisted_10","_hoisted_11","_hoisted_12","_hoisted_13","_hoisted_14","_hoisted_15","_hoisted_16","_hoisted_17","_hoisted_18","_hoisted_19","_hoisted_20","_hoisted_21","_component_el_tooltip","_normalizeClass","hasNav","brainName","autoplay","loop","muted","src","poster","_Fragment","_renderList","poin","index","onClick","$event","brainClickHandle","_createVNode","effect","placement","_withCtx","_toDisplayString","backgroundColor","inner","idx","st","emits","emit","toRefs","brainRef","navBoxRef","pointListRef","poinSitionList","poinMaxW","poinH","reSetPoinStation","randomPoinStation","setTimeout","right","bottom","height","itemList","querySelectorAll","poinSition","getRandomInt","isInArray","maxWidth","maxHeight","setNavStation","brainWidt","degSt","radius","PI","getLocation","getX","display","watch","immediate","abs","isOverlap","rect1","rect2","l1","r1","l2","r2"],"mappings":"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","file":"js/chunk-10514555.06fd5f9b.js","sourcesContent":["export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./brain.vue?vue&type=style&index=0&id=4214f81b&lang=scss&scoped=true\"","!function(e,t){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=t():\"function\"==typeof define&&define.amd?define(t):(e=\"undefined\"!=typeof globalThis?globalThis:e||self).dayjs_plugin_isLeapYear=t()}(this,(function(){\"use strict\";return function(e,t){t.prototype.isLeapYear=function(){return this.$y%4==0&&this.$y%100!=0||this.$y%400==0}}}));","import { resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createElementVNode as _createElementVNode, normalizeStyle as _normalizeStyle, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-1f819c5e\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"CassHome\" }\nconst _hoisted_2 = {\n class: \"brainBox-con\",\n ref: \"brainBoxRef\"\n}\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n const _component_brain = _resolveComponent(\"brain\")!\n\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_1, [\n _createElementVNode(\"div\", {\n class: \"brainBox\",\n style: _normalizeStyle({ width: _ctx.width })\n }, [\n _createElementVNode(\"div\", _hoisted_2, [\n (_ctx.isShowBrain)\n ? (_openBlock(), _createBlock(_component_brain, {\n key: 0,\n navList: _ctx.navList,\n pointList: _ctx.pointList,\n onBrainClick: _ctx.brainClick\n }, null, 8, [\"navList\", \"pointList\", \"onBrainClick\"]))\n : _createCommentVNode(\"\", true)\n ], 512)\n ], 4)\n ]))\n}","\r\nimport { defineComponent, nextTick, reactive, ref } from 'vue';\r\nimport { useRouter } from 'vue-router';\r\n// 引入第三方工具\r\n\r\n// 引入第三方组件\r\n\r\n// 引入公共组件\r\nimport brain from '@c/public/brain/brain.vue'\r\n// 引入路由独有组件\r\n\r\n// 引入接口函数\r\nimport { getAnalysisSummary } from '@r/api/xingling'\r\n// 引入公共函数\r\n\r\n// 引入常量\r\n\r\n// 引入变量\r\n\r\nexport default defineComponent({\r\n name: \"CassHome\",\r\n components: {\r\n brain,\r\n },\r\n props: {\r\n\r\n },\r\n setup() {\r\n const router = useRouter();\r\n\r\n //导航\r\n const navList = reactive([\r\n {\r\n img: '/images/brain/b1.png',\r\n text: '个人模型',\r\n isActive: true,\r\n info: [\r\n {\r\n text: '启用中',\r\n count: '0',\r\n unit: '个'\r\n },\r\n {\r\n text: '禁用',\r\n count: '0',\r\n unit: '个'\r\n },\r\n ],\r\n type:'nav',\r\n to:'PersonalTemplate',\r\n },\r\n {\r\n img: '/images/brain/b2.png',\r\n text: '模型分析',\r\n isActive: false,\r\n count: '0',\r\n unit: '个',\r\n to:'datanalysis',\r\n type:'nav',\r\n info:[],\r\n },\r\n {\r\n img: '/images/brain/b3.png',\r\n text: '处方分析',\r\n isActive: false,\r\n count: '0',\r\n unit: '个',\r\n to:'prescriptanslysis',\r\n type:'nav',\r\n info:[],\r\n },\r\n {\r\n img: '/images/brain/b4.png',\r\n text: '个人模型',\r\n isActive: false,\r\n count: '0',\r\n unit: '个',\r\n to:'PersonalTemplate',\r\n type:'nav',\r\n info:[],\r\n },\r\n {\r\n img: '/images/brain/b5.png',\r\n text: '种子模型',\r\n isActive: false,\r\n count: '0',\r\n unit: '个',\r\n to:'templateImport',\r\n type:'nav',\r\n info:[],\r\n },\r\n {\r\n img: '/images/brain/b6.png',\r\n text: '模型演练',\r\n isActive: false,\r\n info: [],\r\n to:'modeldrill',\r\n type:'nav',\r\n },\r\n {\r\n img: '/images/brain/b7.png',\r\n text: '病案管理',\r\n isActive: false,\r\n info: [],\r\n to:'MedicalManage',\r\n type:'nav',\r\n },\r\n {\r\n img: '/images/brain/b8.png',\r\n text: '临床研讨',\r\n isActive: false,\r\n info: [],\r\n to:'discuss',\r\n type:'nav',\r\n },\r\n ])\r\n const pointList = reactive([]) //脑中点\r\n const personCount = ref(0) // 个人模板数量\r\n const zzCount = ref(0)// 种子模板数量\r\n\r\n const brainBoxRef:any = ref(null)\r\n const isShowBrain = ref(false)\r\n const width = ref('100%')\r\n\r\n\r\n\r\n \r\n getAnalysisSummary({\r\n data: {\r\n num: 10,\r\n _times: new Date().getTime()\r\n }\r\n }).then((data: any) => {\r\n\r\n data.dataStatisticsVms.forEach((item: any) => {\r\n if (item.type === 1) {\r\n //个人模型\r\n // @ts-ignore\r\n navList[0].info[0].count = item.quantity\r\n // @ts-ignore\r\n navList[0].info[1].count = item.disabledQuantity\r\n\r\n personCount.value = item.quantity + item.disabledQuantity\r\n\r\n navList[3].count = item.quantity + item.disabledQuantity\r\n } else if (item.type === 2) {\r\n //模型分析\r\n navList[1].count = item.quantity\r\n } else if (item.type === 3) {\r\n //处方分析\r\n navList[2].count = item.quantity\r\n } else if (item.type === 4) {\r\n //种子模型\r\n navList[4].count = item.quantity\r\n zzCount.value = item.quantity\r\n }\r\n })\r\n \r\n const temList:any[] = []\r\n data.brainMapVms.forEach((item:any) => {\r\n\r\n let text = item.dxName\r\n if(item.alias){\r\n text = text + '(' + item.alias +')'\r\n }\r\n\r\n const tem = {\r\n bgcolor: item.color, \r\n level: item.rate, \r\n text: text, \r\n isActive: false, \r\n }\r\n temList.push(tem)\r\n })\r\n\r\n\r\n // @ts-ignore\r\n pointList.splice(0, pointList.length, ...temList )\r\n\r\n })\r\n\r\n\r\n const brainClick = (data:any) => {\r\n if(data.type === 'nav'){\r\n router.push({ name: data.to })\r\n }\r\n }\r\n\r\n nextTick(() => {\r\n if( brainBoxRef.value.offsetWidth > brainBoxRef.value.offsetHeight ){\r\n width.value = brainBoxRef.value.offsetHeight + 50 + 'px'\r\n }\r\n isShowBrain.value = true\r\n })\r\n\r\n return {\r\n brainBoxRef,isShowBrain,\r\n personCount, zzCount,\r\n width,\r\n navList, pointList, brainClick\r\n }\r\n },\r\n})\r\n\r\n\r\n","import { render } from \"./test.vue?vue&type=template&id=1f819c5e&scoped=true&ts=true\"\nimport script from \"./test.vue?vue&type=script&lang=ts\"\nexport * from \"./test.vue?vue&type=script&lang=ts\"\n\nimport \"./test.vue?vue&type=style&index=0&id=1f819c5e&lang=scss&scoped=true\"\n\nimport exportComponent from \"D:\\\\公司项目\\\\T-CAS\\\\node_modules\\\\vue-loader-v16\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-1f819c5e\"]])\n\nexport default __exports__","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--1-1!./test.vue?vue&type=style&index=0&id=1f819c5e&lang=scss&scoped=true\"","export class FjbDrug {\r\n attention?: string\r\n checkRemind?: number\r\n chemicalName?: any\r\n customaryName?: string\r\n customaryNamePinyinCode?: string\r\n customaryNameWuBiCode?: string\r\n defaultMethod?: string\r\n dosageRange?: any\r\n drugName?: string\r\n drugType?: number\r\n fjbDrugId?: string\r\n fjbDrugName?: string\r\n healthcaremedicineName?: string\r\n id?: string\r\n drugId?: string\r\n major?: string\r\n maximumDosage?: number\r\n medicareNum?: string\r\n pharmacology?: string\r\n pinyinCode?: string\r\n price?: number\r\n qty?: number\r\n number?: number\r\n selfPrepared?: boolean\r\n specs?: string\r\n stockNum?: any\r\n unit?: string\r\n wubi?: string\r\n remark?: string\r\n factory?: string// 厂家\r\n\r\n\r\n\r\n drugState?:number\r\n}","export class LlDrug{\r\n id: string = '' // 特色诊疗数据id \r\n\t\r\n\tqty: number = 0 // 总量\r\n unit: string = '' // 单位\r\n llUsage: string = '' // 用法\r\n precautions: string = '' // 注意事项\r\n remark: string = '' // 备注说明\r\n factory:string = '' // 厂家\r\n articleUpdate:boolean = false //对应的文章是否更新\r\n articleTitle:string = '' //对应的文章的标题\r\n\r\n llId: string = '' // 机构特色诊疗id\r\n llCode: string = '' // 机构特色诊疗编号\r\n llName: string = ''// 机构特色诊疗名称\r\n llAlias: string = '' // 机构特色诊疗别名\r\n llmainCategory: string = '' // 特色诊疗大类\r\n llSmallCategory : string = '' // 特色诊疗小类\r\n\r\n stdLlId: string = '' // 标准特色诊疗id\r\n stdLlCode: string = ''// 标准特色诊疗编号\r\n stdLlName: string = '' // 标准特色诊疗名称\r\n stdLlAlias: string = '' // 标准特色诊疗别名\r\n stdLlmainCategory: string = ''// 标准特色诊疗大类\r\n stdLlSmallCategory: string = ''// 标准特色诊疗小类\r\n}","import { synDiff } from './class/synDiff';\r\nimport {SynDiffDrug} from \"@u/class/synDiffDrug\"\r\nimport {Tmpl} from './class/Tmpl'\r\nimport {FjbDrug} from './class/fjbDrug'\r\nimport {LlDrug} from './class/llDrug'\r\n\r\nimport dayjs from 'dayjs'\r\nimport isLeapYear from 'dayjs/plugin/isLeapYear' // import plugin\r\nimport 'dayjs/locale/zh-cn' // import locale\r\nimport { stringifyQuery } from 'vue-router';\r\ndayjs.extend(isLeapYear) // use plugin\r\ndayjs.locale('zh-cn') // use locale\r\n\r\nexport namespace pbFn{\r\n\r\n export const dateFormat = dayjs\r\n //检验手机号码是否合法\r\n export const checkPhoen = (phone:string):boolean=>{\r\n const re = /^(?:(?:\\+|00)86)?1\\d{10}$/\r\n return re.test(phone)\r\n }\r\n\r\n // cass药品转方剂宝药品\r\n export const diffDrugToFjbDrug = (synDiffDrug:SynDiffDrug) => {\r\n const fjbDrug = new FjbDrug()\r\n\r\n fjbDrug.id = synDiffDrug.drugId\r\n fjbDrug.drugId = synDiffDrug.drugId\r\n fjbDrug.drugName = synDiffDrug.drugName\r\n fjbDrug.checkRemind = synDiffDrug.checkRemind\r\n fjbDrug.defaultMethod = synDiffDrug.direction || ''\r\n fjbDrug.fjbDrugId = synDiffDrug.fjbDrugId\r\n fjbDrug.fjbDrugName = synDiffDrug.fjbDrugName\r\n fjbDrug.major = synDiffDrug.major || ''\r\n fjbDrug.number = synDiffDrug.qty\r\n fjbDrug.pharmacology = synDiffDrug.pharmacology || ''\r\n fjbDrug.remark = synDiffDrug.remark || ''\r\n fjbDrug.specs = synDiffDrug.specs || ''\r\n fjbDrug.unit = synDiffDrug.unit || ''\r\n fjbDrug.factory = synDiffDrug.factory || ''\r\n fjbDrug.drugType = synDiffDrug.drugType || 0\r\n\r\n fjbDrug.drugState = synDiffDrug.drugState || 0\r\n\r\n return fjbDrug;\r\n }\r\n\r\n //方剂宝药品转cass药品\r\n export const fjbDrugToDiffDrug = (fjbDrug:any, rxType:number=0)=>{\r\n if(rxType === 0){\r\n const synDiffDrug = new SynDiffDrug()\r\n\r\n synDiffDrug.drugId = fjbDrug.drugId || \"\"\r\n synDiffDrug.drugName = fjbDrug.drugName \r\n synDiffDrug.factory = fjbDrug.factory || ''\r\n synDiffDrug.fjbDrugId = fjbDrug.fjbDrugId \r\n synDiffDrug.fjbDrugName = fjbDrug.fjbDrugName \r\n synDiffDrug.unit = fjbDrug.unit \r\n synDiffDrug.specs = fjbDrug.specs \r\n synDiffDrug.qty = fjbDrug.qty || fjbDrug.number || 0\r\n synDiffDrug.drugType = fjbDrug.drugType|| 0\r\n synDiffDrug.direction =fjbDrug.direction || fjbDrug.defaultMethod\r\n synDiffDrug.remark = fjbDrug.attention || fjbDrug.remark\r\n synDiffDrug.aliasName = fjbDrug.customaryName || fjbDrug.aliasName || ''\r\n synDiffDrug.checkRemind = fjbDrug.checkRemind \r\n synDiffDrug.pharmacology = fjbDrug.pharmacology\r\n synDiffDrug.major = fjbDrug.major\r\n synDiffDrug.id = ''\r\n\r\n synDiffDrug.drugState = fjbDrug.drugState || 0\r\n \r\n return synDiffDrug\r\n }else {\r\n const synDiffDrug = new SynDiffDrug()\r\n return synDiffDrug\r\n }\r\n \r\n }\r\n //方剂宝药品转cass特色诊疗药品\r\n export const fjbDrugToDiffLLDrug = (fjbDrug:any) => {\r\n const llDrug = new LlDrug()\r\n \r\n llDrug.id= '' // 特色诊疗数据id\r\n llDrug.qty= 1 // 总量\r\n llDrug.unit= fjbDrug.drugUnit // 单位\r\n llDrug.factory= fjbDrug.factory || '' // 厂家\r\n llDrug.llUsage= fjbDrug.drugUsage // 用法\r\n llDrug.precautions= fjbDrug.incompatibility // 注意事项\r\n llDrug.remark= fjbDrug.attentions // 备注说明\r\n\r\n llDrug.stdLlId = fjbDrug.stdDrugCode // 标准特色诊疗id\r\n llDrug.stdLlCode= fjbDrug.stdDrugCode // 标准特色诊疗编号\r\n llDrug.stdLlName= fjbDrug.stdDrugName // 标准特色诊疗名称\r\n llDrug.stdLlAlias= fjbDrug.aliasName // 标准特色诊疗别名\r\n llDrug.stdLlmainCategory= fjbDrug.category // 标准特色诊疗大类\r\n llDrug.stdLlSmallCategory = '' // 标准特色诊疗小类\r\n\r\n llDrug.llId= fjbDrug.drugCode // his特色诊疗id\r\n llDrug.llCode= fjbDrug.drugCode // his特色诊疗编号\r\n llDrug.llName= fjbDrug.drugName // his特色诊疗名称\r\n llDrug.llAlias= fjbDrug.aliasName // his特色诊疗别名\r\n llDrug.llmainCategory= fjbDrug.category// his特色诊疗大类\r\n llDrug.llSmallCategory= '' // his特色诊疗小类\r\n\r\n return llDrug\r\n }\r\n\r\n // cass 药品数组增加属性\r\n export const cassDrugListAddAttribute = (synDiffDrugs:SynDiffDrug[], fjbDrugs:any[]) => {\r\n for(let i=0; i{\r\n const drug = new SynDiffDrug()\r\n Object.assign(drug, synDiffDrug)\r\n drug.pharmacology = fjbDrug.pharmacology\r\n drug.major = fjbDrug.major\r\n drug.factory = fjbDrug.factory || ''\r\n return drug\r\n }\r\n\r\n // 检查是否有相同的药品\r\n export const checkHasSameDrug = (drugList:any[], drug:any, rxType:number=0 ) => {\r\n\r\n let temDrug : any\r\n for(let i=0; i{\r\n //辨证名称和辨证要点必填\r\n const re = {\r\n flag:true,\r\n msg:''\r\n }\r\n if(!synDiff.synDiffCode){\r\n re.flag = false\r\n re.msg = \"请选择证型\"\r\n }else if(!synDiff.mainPoints){\r\n re.flag = false\r\n re.msg = \"请输入辨证要点\"\r\n }\r\n\r\n return re\r\n }\r\n\r\n //检查病种是否合法\r\n export const checkPplTmpl = (tmpl:Tmpl)=>{\r\n const re = {\r\n flag:true,\r\n msg:''\r\n }\r\n\r\n if(! tmpl.dxCode){\r\n re.flag = false\r\n re.msg = '请选择中医诊断'\r\n\r\n return re\r\n }\r\n\r\n if( ! tmpl.el[0].content){\r\n re.flag = false\r\n re.msg = '请填写第一诊断要素'\r\n return re\r\n }\r\n if( (tmpl.el[0].weight as number) < 1){\r\n re.flag = false\r\n re.msg = '第一诊断要素权重不能低于1'\r\n return re\r\n }\r\n\r\n if( tmpl.el[1].content!== '' && (tmpl.el[1].weight as number) < 1){\r\n re.flag = false\r\n re.msg = '第二诊断要素权重不能低于1'\r\n return re\r\n }\r\n\r\n if( tmpl.el[2].content!== '' && (tmpl.el[2].weight as number) < 1){\r\n re.flag = false\r\n re.msg = '第三诊断要素权重不能低于1'\r\n return re\r\n }\r\n\r\n\r\n if(tmpl.synDiff.length === 0){\r\n re.flag = false\r\n re.msg = '请添加证型'\r\n return re\r\n }\r\n\r\n for(let i=0; i< tmpl.synDiff.length; i++){\r\n const tem = checkSynDiff(tmpl.synDiff[i])\r\n if( !tem.flag){\r\n re.flag = tem.flag\r\n re.msg = `第${i+1}个证型:${tem.msg}`\r\n break;\r\n }\r\n }\r\n return re;\r\n\r\n }\r\n\r\n\r\n //检查gemodel病种是否合法\r\n export const checkgemodel = (tmpl:Tmpl)=>{\r\n const re = {\r\n flag:true,\r\n msg:''\r\n }\r\n\r\n if(! tmpl.dxCode){\r\n re.flag = false\r\n re.msg = '请选择中医诊断'\r\n\r\n return re\r\n }\r\n\r\n if( ! tmpl.el[0].content){\r\n re.flag = false\r\n re.msg = '请填写第一诊断要素'\r\n return re\r\n }\r\n if( (tmpl.el[0].weight as number) < 1){\r\n re.flag = false\r\n re.msg = '第一诊断要素权重不能低于1'\r\n return re\r\n }\r\n\r\n if( tmpl.el[1].content!== '' && (tmpl.el[1].weight as number) < 1){\r\n re.flag = false\r\n re.msg = '第二诊断要素权重不能低于1'\r\n return re\r\n }\r\n\r\n if( tmpl.el[2].content!== '' && (tmpl.el[2].weight as number) < 1){\r\n re.flag = false\r\n re.msg = '第三诊断要素权重不能低于1'\r\n return re\r\n }\r\n\r\n\r\n if(tmpl.synDiff.length === 0){\r\n re.flag = false\r\n re.msg = '请添加证型'\r\n return re\r\n }\r\n\r\n for(let i=0; i< tmpl.synDiff.length; i++){\r\n const tem = checkSynDiff(tmpl.synDiff[i])\r\n if( !tem.flag){\r\n re.flag = tem.flag\r\n re.msg = `${tem.msg}`\r\n break;\r\n }\r\n }\r\n return re;\r\n\r\n }\r\n\r\n\r\n\r\n //通过id找到药品\r\n export const findDrugById = (drugList:any[], drugId:String, rxType:number = 0)=>{\r\n if (!drugId){\r\n return null\r\n }\r\n let synDiffDrug : any\r\n if(rxType === 0){\r\n for(let i=0; i{\r\n let synDiffDrug : any\r\n \r\n for(let i=0; i{\r\n let synDiffDrug : any\r\n if(rxType === 0){\r\n for(let i=0; i{\r\n /*\r\n sbf 十八反\r\n sjw 十九畏\r\n sbfDrug 对应的十八反禁忌药\r\n sjwDrug 对应的十九畏禁忌药\r\n cdyl 超大用量\r\n */\r\n \r\n \r\n for (var i = 0, len = fjDrug.length; i < len; ++i) {\r\n var taboo = 0\r\n var drug = fjDrug[i]\r\n\r\n\r\n for (var j = 0; j < pwjjList.length; ++j) {\r\n const pwjj = pwjjList[j]\r\n let pwjjDrug = null;\r\n \r\n //如果药在配伍禁忌内,需要再循环判断对应禁忌药是不是也在处方中\r\n if (pwjj.checkDrugName.indexOf('|' + drug.fjbDrugName + '|') !== -1) {\r\n var flag = false\r\n for (var k = 0; k < fjDrug.length; ++k) {\r\n var innerDrug = fjDrug[k]\r\n \r\n if (pwjj.drugName.indexOf('|' + innerDrug.fjbDrugName + '|') !== -1) {\r\n flag = true\r\n pwjjDrug = JSON.parse(JSON.stringify(innerDrug))\r\n break;\r\n }\r\n }\r\n if (flag) {\r\n if (pwjj.type == 0) {\r\n fjDrug[i].sbf = true;\r\n fjDrug[i].sbfDrug = pwjjDrug\r\n taboo = taboo | 1\r\n } else {\r\n fjDrug[i].sjw = true;\r\n fjDrug[i].sjwDrug = pwjjDrug\r\n taboo = taboo | 2\r\n }\r\n break;\r\n } else {\r\n fjDrug[i].sbf = false;\r\n fjDrug[i].sjw = false;\r\n fjDrug[i].sbfDrug = null;\r\n fjDrug[i].sjwDrug = null;\r\n }\r\n \r\n } else if (pwjj.drugName.indexOf('|' + drug.fjbDrugName + '|') !== -1) {\r\n var flag = false\r\n \r\n for (var k = 0; k < fjDrug.length; ++k) {\r\n var innerDrug = fjDrug[k]\r\n if (pwjj.checkDrugName.indexOf('|' + innerDrug.fjbDrugName + '|') !== -1) {\r\n flag = true\r\n pwjjDrug = JSON.parse(JSON.stringify(innerDrug))\r\n pwjjDrug.sbfDrug = null;\r\n pwjjDrug.sjwDrug = null;\r\n break;\r\n }\r\n }\r\n if (flag) {\r\n if (pwjj.type == 0) {\r\n fjDrug[i].sbf = true;\r\n fjDrug[i].sbfDrug = pwjjDrug\r\n } else {\r\n fjDrug[i].sjw = true;\r\n fjDrug[i].sjwDrug = pwjjDrug\r\n }\r\n break;\r\n } else {\r\n fjDrug[i].sbf = false;\r\n fjDrug[i].sjw = false;\r\n fjDrug[i].sbfDrug = null;\r\n fjDrug[i].sjwDrug = null;\r\n }\r\n } else {\r\n fjDrug[i].sbf = false;\r\n fjDrug[i].sjw = false\r\n fjDrug[i].sbfDrug = null;\r\n fjDrug[i].sjwDrug = null;\r\n }\r\n }\r\n \r\n if (fjDrug[i].qty! >= 100) {\r\n fjDrug[i].cdyl = true\r\n taboo = taboo | 128\r\n } else {\r\n fjDrug[i].cdyl = false\r\n }\r\n fjDrug[i].taboo = taboo\r\n }\r\n\r\n return fjDrug;\r\n }\r\n\r\n //配伍禁忌第二版\r\n export const checkFjTaboo2 = (pwjjList:any[], fjDrug: SynDiffDrug[])=>{\r\n /*\r\n sbf 十八反\r\n sjw 十九畏\r\n sbfDrug 对应的十八反禁忌药\r\n sjwDrug 对应的十九畏禁忌药\r\n cdyl 超大用量\r\n */\r\n fjDrug.map((item:SynDiffDrug)=>{\r\n item.sbfDrug = []\r\n item.sjwDrug = []\r\n item.sbf = false \r\n item.sjw = false\r\n })\r\n \r\n \r\n for (var i = 0, len = fjDrug.length; i < len; ++i) {\r\n var taboo = 0\r\n var drug = fjDrug[i]\r\n\r\n\r\n for (var j = 0; j < pwjjList.length; ++j) {\r\n const pwjj = pwjjList[j]\r\n let pwjjDrug = null;\r\n \r\n //如果药在配伍禁忌内,需要再循环判断对应禁忌药是不是也在处方中\r\n if (pwjj.checkDrugName.indexOf('|' + drug.fjbDrugName + '|') !== -1) {\r\n \r\n for (var k = 0; k < fjDrug.length; ++k) {\r\n var flag = false\r\n var innerDrug = fjDrug[k]\r\n if (pwjj.drugName.indexOf('|' + innerDrug.fjbDrugName + '|') !== -1) {\r\n flag = true\r\n pwjjDrug = JSON.parse(JSON.stringify(innerDrug))\r\n pwjjDrug.sbfDrug = null;\r\n pwjjDrug.sjwDrug = null;\r\n }\r\n if (flag) {\r\n if (pwjj.type == 0) {\r\n fjDrug[i].sbf = true;\r\n (fjDrug[i].sbfDrug as SynDiffDrug[] ).push(pwjjDrug)\r\n taboo = taboo | 1\r\n } else {\r\n fjDrug[i].sjw = true;\r\n (fjDrug[i].sjwDrug as SynDiffDrug[]).push(pwjjDrug)\r\n taboo = taboo | 2\r\n }\r\n } \r\n }\r\n } else if (pwjj.drugName.indexOf('|' + drug.fjbDrugName + '|') !== -1) {\r\n for (var k = 0; k < fjDrug.length; ++k) {\r\n var flag = false\r\n var innerDrug = fjDrug[k]\r\n if (pwjj.checkDrugName.indexOf('|' + innerDrug.fjbDrugName + '|') !== -1) {\r\n flag = true\r\n pwjjDrug = JSON.parse(JSON.stringify(innerDrug))\r\n pwjjDrug.sbfDrug = null;\r\n pwjjDrug.sjwDrug = null;\r\n }\r\n if (flag) {\r\n if (pwjj.type == 0) {\r\n fjDrug[i].sbf = true;\r\n (fjDrug[i].sbfDrug as SynDiffDrug[]).push(pwjjDrug as unknown as SynDiffDrug)\r\n } else {\r\n fjDrug[i].sjw = true;\r\n (fjDrug[i].sjwDrug as SynDiffDrug[]).push(pwjjDrug as unknown as SynDiffDrug)\r\n }\r\n } \r\n }\r\n } \r\n }\r\n \r\n if (fjDrug[i].qty! >= 100) {\r\n fjDrug[i].cdyl = true\r\n taboo = taboo | 128\r\n } else {\r\n fjDrug[i].cdyl = false\r\n }\r\n fjDrug[i].taboo = taboo\r\n }\r\n\r\n return fjDrug;\r\n }\r\n\r\n //通过 id 找到名称 病种,辨证,治则治法\r\n export const findNameByCode = (code:string, list:any[])=>{\r\n for(let i=0; i< list.length; i++){\r\n if(code === list[i].code){\r\n return list[i].name\r\n }\r\n }\r\n\r\n return ''\r\n }\r\n //通过 名称找到code 病种,辨证,治则治法\r\n export const findCodeByName = (name:string, list:any[])=>{\r\n for(let i=0; i< list.length; i++){\r\n if(name === list[i].name){\r\n return list[i].code\r\n }\r\n }\r\n\r\n return ''\r\n }\r\n //数字转中文\r\n export const toChinesNum = (num: number): string => {\r\n let changeNum = ['零', '一', '二', '三', '四', '五', '六', '七', '八', '九'];\r\n let unit = [\"\", \"十\", \"百\", \"千\", \"万\"];\r\n let getWan = (temp: number | string) => {\r\n let strArr: string[] = temp.toString().split(\"\").reverse();\r\n let newNum = \"\";\r\n for (let i = 0; i < strArr.length; i++) {\r\n var keyValue = parseInt(strArr[i]);\r\n var oKeyValue = parseInt(strArr[i - 1]);\r\n newNum = (i === 0 && keyValue === 0 ? \"\" : (i > 0 && keyValue === 0 && oKeyValue === 0 ? \"\" : changeNum[keyValue] + (keyValue === 0 ? unit[0] : unit[i]))) + newNum;\r\n }\r\n return newNum;\r\n }\r\n let overWan: number = Math.floor(num / 10000);\r\n let noWan: string | number = num % 10000;\r\n if (noWan.toString().length < 4) {\r\n noWan = \"0\" + noWan;\r\n };\r\n return overWan ? getWan(overWan) + \"万\" + getWan(noWan) : getWan(num);\r\n };\r\n\r\n\r\n //数组去重\r\n export const simpleUnique = (array: any, type: string) => {\r\n var result: any[] = [];\r\n var hash: any = {};\r\n for (var i = 0; i < array.length; i++) {\r\n var key: string = (typeof array[i][type]) + array[i][type].trim();\r\n if (!hash[key]) {\r\n result.push(array[i]);\r\n hash[key] = true;\r\n }\r\n }\r\n return result;\r\n }\r\n //\r\n export const arrayComparedDelSame = (arr1: any, arr2: any) => {\r\n let arr3 = [];\r\n for (var i = 0; i < arr1.length; i++) {\r\n for (var j = 0; j < arr2.length; j++) {\r\n if (arr1[i].label == arr2[j]) {\r\n arr1[i] = \"\";\r\n break;\r\n }\r\n }\r\n }\r\n for (var i = 0; i < arr1.length; i++) {\r\n if (arr1[i] != \"\") {\r\n arr3.push(arr1[i])\r\n }\r\n }\r\n return arr3;\r\n }\r\n export const changeTimeToUse = (times: number, type = 'YYMMDDHHMMSS'): string => {\r\n const date = new Date(times);\r\n let years: number = date.getFullYear();\r\n let month: number = date.getMonth() + 1;\r\n let day: number = date.getDate();\r\n let hour: number = date.getHours();\r\n let minute: number = date.getMinutes();\r\n let seconds: number = date.getSeconds();\r\n let res = '';\r\n switch(type) {\r\n case 'YYMMDDHHMMSS':\r\n res = `${[years, month, day].map(formatNumber).join('-')} ${[hour, minute, seconds].map(formatNumber).join(':')}`\r\n break;\r\n }\r\n return res\r\n }\r\n const formatNumber = (n: number) => {\r\n const str = n.toString()\r\n return str[1] ? str : `0${n}`\r\n }\r\n\r\n // 根据半径和角度,获取坐标\r\n export const getLocation =function(r:any,deg:any){\r\n var x =Math.round(r*Math.sin(deg));\r\n var y =Math.round(r*Math.cos(deg));\r\n return{left:x,top:y};\r\n }\r\n\r\n // 生成指定范围随机数 [start, end)\r\n export const getRandomInt = (start:number, end:number) => {\r\n if(end <= start ){\r\n return start\r\n }\r\n\r\n let differ = end - start\r\n let random = Math.random()\r\n return Math.floor(start + differ * random)\r\n }\r\n\r\n\r\n // 根据时间戳生成固定格式 2022年03月01日\r\n\texport const renderTime = (data: number) =>{\r\n\t\tconst t = new Date(data);\r\n\t\tlet y = t.getFullYear().toString()\r\n\t\tlet m = t.getMonth() + 1\r\n\t\tlet d = t.getDate() \r\n\t\treturn y+'年'+m + '月' + d + '日'\r\n\t}\r\n\r\n\r\n //堆排序\r\n\tconst shif = (arr:any[], low:number, high:number, orderKey:string) => {\r\n\t\tlet i = low\r\n\t\tlet j = low*2+1\r\n\t\tlet tmp = arr[low]\r\n\t\twhile(j <= high){\r\n\t\t\tif( j+1 <= high && arr[j+1][orderKey] > arr[j][orderKey]){\r\n\t\t\t\tj = j+1\r\n\t\t\t}\r\n\t\t\tif (arr[j][orderKey] > tmp[orderKey]) {\r\n\t\t\t\tarr[i] = arr[j]\r\n\t\t\t\ti = j\r\n\t\t\t\tj = i * 2 + 1\r\n\t\t\t\tcontinue\r\n\t\t\t} else {\r\n\t\t\t\tarr[i] = tmp\r\n\t\t\t\tbreak;\r\n\t\t\t}\r\n\t\t}\r\n\t\tarr[i] = tmp\r\n\t}\r\n\texport const lee_sort = (arr:any[], orderKey:string)=>{\r\n\t\t// arr 需要排序的数组\r\n\t\t// orderKey 针对哪个属性进行排序\r\n\r\n\t\tlet len = arr.length;\r\n\t\tfor(let i=Math.floor((len - 1 - 1) /2); i >=0; i--){\r\n\t\t\tshif(arr, i, len-1, orderKey)\r\n\t\t}\r\n\t\tfor(let i = len-1; i>=0; i--){\r\n\t\t\tlet tem = arr[0]\r\n\t\t\tarr[0] = arr[i]\r\n\t\t\tarr[i] = tem\r\n\t\t\tshif(arr, 0, i - 1, orderKey)\r\n\t\t}\r\n\t}\r\n\t//魔改的堆排序结束\r\n\r\n\r\n // 生成一个独一无二的ID \r\n export const getID = (t:string='l') => {\r\n var timestamp=new Date().getTime()\r\n timestamp %= 10000000\r\n var randomNum = getRandomInt(1, 999999);\r\n var randomNum2 = getRandomInt(1, 999999);\r\n var recipeId = t + String(timestamp) + String(randomNum) + String(randomNum2)\r\n\r\n return recipeId;\r\n }\r\n\r\n class TreeNode {\r\n\t\tdata: T | undefined\r\n\t\tchild: TreeNode[] = []\r\n\t\tdeep: number = 0\r\n\t}\r\n\r\n\t/**\r\n\t * 全排列求解器,穷举\r\n\t * 使用方式:\r\n\t * let p = new PermutationSequence();\r\n\t * let result = p.getSolution([1,2],[3,4]);\r\n\t */\r\n\texport class PermutationSequence {\r\n constrator() {\r\n \r\n }\r\n\t\tprivate treeRoot: TreeNode = new TreeNode()\r\n\t\tprivate solution: T[][] = []\r\n\t\tprivate dataArray: T[][] = []\r\n // 生成tree结构\r\n\t\tprivate makeTree(root: TreeNode, deep: number = 0) {\r\n\t\t\tif (deep < this.dataArray.length) {\r\n\t\t\t\tfor (const data of this.dataArray[deep]) {\r\n\t\t\t\t\tconst newNode = new TreeNode()\r\n\t\t\t\t\tnewNode.data = data\r\n\t\t\t\t\tnewNode.deep = deep + 1\r\n\t\t\t\t\troot.child.push(newNode)\r\n\t\t\t\t}\r\n\t\t\t\tfor (const node of root.child) {\r\n\t\t\t\t\tthis.makeTree(node, deep + 1)\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t/**\r\n\t\t * 回溯算法:\r\n\t\t * result = []\r\n\t\t * def backtrack(路径, 选择列表):\r\n\t\t * if 满足结束条件:\r\n\t\t * result.add(路径)\r\n\t\t * return\r\n\t\t *\r\n\t\t * for 选择 in 选择列表:\r\n\t\t * backtrack(路径, 选择列表)\r\n\t\t * 撤销选择\r\n\t\t */\r\n\t\tprivate backtrack(sel: T[], node: TreeNode) {\r\n\t\t\tif (node.deep === this.dataArray.length) {\r\n\t\t\t\tthis.solution.push(new Array(...sel))\r\n\t\t\t\treturn\r\n\t\t\t}\r\n\t\t\tfor (const child of node.child) {\r\n\t\t\t\tif (child.data) {\r\n\t\t\t\t\tsel.push(child.data)\r\n\t\t\t\t}\r\n\t\t\t\tthis.backtrack(sel, child)\r\n\t\t\t\tsel.pop()\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t/**\r\n\t\t * 根据设置的数组获取全排列结果\r\n\t\t * @param dataArray 需要求解的数组\r\n\t\t */\r\n\t\tpublic getSolution(dataArray: T[][]) {\r\n\t\t\tthis.solution = []\r\n\t\t\tthis.dataArray = dataArray\r\n\t\t\tthis.makeTree(this.treeRoot)\r\n\t\t\tthis.backtrack([], this.treeRoot)\r\n\t\t\treturn this.solution\r\n\t\t}\r\n\t}\r\n\r\n\r\n export const getElementPosition = (element:any)=>{\r\n let top = element.offsetTop //这是获取元素距父元素顶部的距离\r\n let left = element.offsetLeft\r\n var current = element.offsetParent //这是获取父元素\r\n while (current !== null) {\r\n //当它上面有元素时就继续执行\r\n top += current.offsetTop //这是获取父元素距它的父元素顶部的距离累加起来\r\n left += current.offsetLeft\r\n current = current.offsetParent //继续找父元素\r\n }\r\n return {\r\n top,\r\n left,\r\n }\r\n }\r\n\r\n // 获取 window 的宽度\r\n export const getWindowWidth = () => {\r\n let windowWidth = 0;\r\n if (typeof(window.innerWidth) == 'number') {\r\n windowWidth = window.innerWidth;\r\n } else {\r\n if (document.documentElement && document.documentElement.clientWidth) {\r\n windowWidth = document.documentElement.clientWidth;\r\n } else {\r\n if (document.body && document.body.clientWidth) {\r\n windowWidth = document.body.clientWidth;\r\n }\r\n }\r\n }\r\n return windowWidth;\r\n }\r\n}\r\n\r\n\r\n\r\n","let ImgUrlFix :string = location.origin + location.pathname.replace('index.html', '')\r\n\r\nexport {\r\n ImgUrlFix,\r\n}\r\n\r\n//个人模型\r\nexport const header = [\r\n '证型名称',\r\n '辨证要点',\r\n '辨证分析',\r\n '治则治法',\r\n '方药',\r\n '组方',\r\n '特色诊疗',\r\n '第二处方',\r\n '随访',\r\n\r\n]\r\n\r\n//种子模型\r\nexport const header2 = [\r\n '证型名称',\r\n '辨证要点',\r\n '辨证分析',\r\n '治则治法',\r\n '方药',\r\n '组方',\r\n '特色诊疗',\r\n]\r\n\r\nexport const effcollDateSelect = [\r\n {\r\n value:1,\r\n label:'一天'\r\n },\r\n {\r\n value:2,\r\n label:'二天'\r\n },\r\n {\r\n value:3,\r\n label:'三天'\r\n },\r\n {\r\n value:4,\r\n label:'四天'\r\n },\r\n {\r\n value:5,\r\n label:'五天'\r\n },\r\n {\r\n value:6,\r\n label:'六天'\r\n },\r\n {\r\n value:7,\r\n label:'七天'\r\n },\r\n {\r\n value:8,\r\n label:'八天'\r\n },\r\n {\r\n value:9,\r\n label:'九天'\r\n },\r\n]\r\n\r\nexport const effcollType = [\r\n {\r\n value:0,\r\n label:'单选'\r\n },\r\n {\r\n value:1,\r\n label:'多选'\r\n },\r\n]\r\n\r\nexport const directionType = [\r\n {\r\n value:1,\r\n label:'口服'\r\n },\r\n {\r\n value:4,\r\n label:'外用'\r\n },\r\n\r\n]\r\n\r\nexport const defaultMethod = [\r\n {\r\n value:'先煎',\r\n label:'先煎'\r\n },\r\n {\r\n value:'冲服',\r\n label:'冲服'\r\n },\r\n {\r\n value:'包煎',\r\n label:'包煎'\r\n },\r\n {\r\n value:'另煎',\r\n label:'另煎'\r\n },\r\n {\r\n value:'后下',\r\n label:'后下'\r\n },\r\n {\r\n value:'烊化',\r\n label:'烊化'\r\n },\r\n {\r\n value:'焗服',\r\n label:'焗服'\r\n },\r\n]\r\nexport const caseTableHeader = [\r\n { title: '分类'},\r\n { title:'疗效'},\r\n { title:'第一诊断要素'},\r\n { title:'第二诊断要素'},\r\n { title:'第三诊断要素'},\r\n { title:'辨证要点'},\r\n { title: '未匹配词'},\r\n { title:'伴随证'},\r\n { title:'方药'},\r\n { title:'组方'},\r\n \r\n]\r\nexport const charCodeArr: string[] = [ 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z' ]\r\n\r\nexport const ALPHA = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' \r\n\r\nexport const SEX = [\r\n {\r\n value: -1,\r\n label:'不限'\r\n },\r\n {\r\n value: 0,\r\n label:'女'\r\n },\r\n {\r\n value: 1,\r\n label:'男'\r\n },\r\n]\r\n\r\nexport const AGE = [\r\n {\r\n value: '0-0',\r\n label:'不限'\r\n },\r\n {\r\n value: '0-14',\r\n label:'0-14'\r\n },\r\n]\r\n\r\n//标点符号, 不含 + 和 = \r\nexport const markReg = /([。?!,、:;“”()—…《》<>~/【】{}'’‘\"\",&$#@`?{}-])|(\\\\)|(\\[)|(\\])|(\\.)|(\\/)|(\\*)|(\\|)|(\\_)|(\\!)|(\\%)|(\\^)|(\\()|(\\))|(\\¥)/g\r\n\r\n// 药品煎煮法\r\nexport const drugUeWayList = [{\r\n name: '先煎',\r\n id: '001'\r\n},{\r\n name: '后下',\r\n id: '002'\r\n},{\r\n name: '冲服',\r\n id: '003'\r\n},{\r\n name: '包煎',\r\n id: '004'\r\n},{\r\n name: '焗服',\r\n id: '005'\r\n},{\r\n name: '烊化',\r\n id: '006'\r\n},{\r\n name: '另煎',\r\n id: '007'\r\n}]\r\nexport const qidList = [{ title: '每天一次(qd)', value: '11'}, \r\n{ title: '每天二次(bid)', value: '12'}, \r\n{ title: '每天三次(tid)', value: '13'}, \r\n{ title: '每天四次(qid)', value: '14'}, \r\n{ title: '每周一次(qw)', value: '21'}, \r\n{ title: '每周二次(biw)', value: '22' }, \r\n{ title: '每周三次(tiw)', value: '23' }, \r\n{ title: '每小时一次(qh)', value: '31' }, \r\n{ title: '每2小时一次(q2h)', value: '32' }, \r\n{ title: '每4小时一次(q4h)', value: '33' }, \r\n{ title: '每5小时一次(q5h)', value: '34' }, \r\n{ title: '每6小时一次(q6h)', value: '35' }, \r\n{ title: '每8小时一次(q8h)', value: '36' }, \r\n{ title: '每12小时一次(q12h)', value: '37' }, \r\n{ title: '每晚一次(qn)', value: '41' }, \r\n{ title: '隔天一次(qod)', value: '42' }, \r\n{ title: '五天一次(q5d)', value: '43' }, \r\n{ title: '十天一次(q10d)', value: '44' }, \r\n{ title: '12小时维持', value: '51' }, \r\n{ title: '24小时维持', value: '52' }, \r\n{ title: '立即(st)', value: '61' }, \r\n{ title: '必要时使用(prn)', value: '62' }]\r\n\r\n\r\nexport const groupLabelList = [\r\n {\r\n text:'险',\r\n value: '1',\r\n },\r\n {\r\n text:'重',\r\n value: '2',\r\n },\r\n {\r\n text:'针',\r\n value: '3',\r\n },\r\n {\r\n text:'灸',\r\n value: '4',\r\n },\r\n {\r\n text:'推',\r\n value: '5',\r\n },\r\n {\r\n text:'膳',\r\n value: '6',\r\n },\r\n {\r\n text:'试',\r\n value: '7',\r\n },\r\n {\r\n text:'随',\r\n value: '8',\r\n },\r\n {\r\n text:'颗',\r\n value: '9',\r\n },\r\n {\r\n text:'膏',\r\n value: '10',\r\n },\r\n {\r\n text:'贴',\r\n value: '11',\r\n },\r\n {\r\n text:'检',\r\n value: '12',\r\n },\r\n {\r\n text:'影',\r\n value: '13',\r\n },\r\n {\r\n text:'外',\r\n value: '14',\r\n },\r\n]\r\n\r\nexport enum EYE_VALUE {\r\n nameAlias = '病名别名',\r\n groupOfLabel = '证型标签',\r\n syndiffAlias = '证型别名'\r\n}\r\n\r\nexport const EYE_LIST = [\r\n {\r\n label:EYE_VALUE.nameAlias,\r\n },\r\n {\r\n label:EYE_VALUE.groupOfLabel,\r\n },\r\n {\r\n label:EYE_VALUE.syndiffAlias,\r\n },\r\n]\r\n\r\n","!function(e,_){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=_(require(\"dayjs\")):\"function\"==typeof define&&define.amd?define([\"dayjs\"],_):(e=\"undefined\"!=typeof globalThis?globalThis:e||self).dayjs_locale_zh_cn=_(e.dayjs)}(this,(function(e){\"use strict\";function _(e){return e&&\"object\"==typeof e&&\"default\"in e?e:{default:e}}var t=_(e),d={name:\"zh-cn\",weekdays:\"星期日_星期一_星期二_星期三_星期四_星期五_星期六\".split(\"_\"),weekdaysShort:\"周日_周一_周二_周三_周四_周五_周六\".split(\"_\"),weekdaysMin:\"日_一_二_三_四_五_六\".split(\"_\"),months:\"一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月\".split(\"_\"),monthsShort:\"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月\".split(\"_\"),ordinal:function(e,_){return\"W\"===_?e+\"周\":e+\"日\"},weekStart:1,yearStart:4,formats:{LT:\"HH:mm\",LTS:\"HH:mm:ss\",L:\"YYYY/MM/DD\",LL:\"YYYY年M月D日\",LLL:\"YYYY年M月D日Ah点mm分\",LLLL:\"YYYY年M月D日ddddAh点mm分\",l:\"YYYY/M/D\",ll:\"YYYY年M月D日\",lll:\"YYYY年M月D日 HH:mm\",llll:\"YYYY年M月D日dddd HH:mm\"},relativeTime:{future:\"%s内\",past:\"%s前\",s:\"几秒\",m:\"1 分钟\",mm:\"%d 分钟\",h:\"1 小时\",hh:\"%d 小时\",d:\"1 天\",dd:\"%d 天\",M:\"1 个月\",MM:\"%d 个月\",y:\"1 年\",yy:\"%d 年\"},meridiem:function(e,_){var t=100*e+_;return t<600?\"凌晨\":t<900?\"早上\":t<1100?\"上午\":t<1300?\"中午\":t<1800?\"下午\":\"晚上\"}};return t.default.locale(d,null,!0),d}));","import { createElementVNode as _createElementVNode, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, toDisplayString as _toDisplayString, normalizeClass as _normalizeClass, resolveComponent as _resolveComponent, withCtx as _withCtx, createVNode as _createVNode, normalizeStyle as _normalizeStyle, createCommentVNode as _createCommentVNode, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-4214f81b\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { class: \"circle\" }\nconst _hoisted_2 = [\"src\", \"poster\"]\nconst _hoisted_3 = [\"src\"]\nconst _hoisted_4 = {\n class: \"pointList\",\n ref: \"pointListRef\"\n}\nconst _hoisted_5 = [\"onClick\"]\nconst _hoisted_6 = {\n class: \"navBox\",\n ref: \"navBoxRef\"\n}\nconst _hoisted_7 = { class: \"nav\" }\nconst _hoisted_8 = { class: \"navItem\" }\nconst _hoisted_9 = [\"onClick\"]\nconst _hoisted_10 = { class: \"activeItemImgBox\" }\nconst _hoisted_11 = [\"src\"]\nconst _hoisted_12 = { class: \"activeItemContent\" }\nconst _hoisted_13 = { class: \"ml-25\" }\nconst _hoisted_14 = { class: \"mainColor\" }\nconst _hoisted_15 = {\n key: 1,\n class: \"ml-25\"\n}\nconst _hoisted_16 = { class: \"mainColor\" }\nconst _hoisted_17 = [\"onClick\"]\nconst _hoisted_18 = { class: \"commonItemImgBox\" }\nconst _hoisted_19 = [\"src\"]\nconst _hoisted_20 = { class: \"commonItemContent ml-10\" }\nconst _hoisted_21 = { class: \"mainColor\" }\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n const _component_el_tooltip = _resolveComponent(\"el-tooltip\")!\n\n return (_openBlock(), _createElementBlock(\"div\", {\n class: _normalizeClass([\"brain\", { hasNav: _ctx.brainName === 'brain2' }]),\n style: _normalizeStyle({ width: _ctx.width }),\n ref: \"brainRef\"\n }, [\n _createElementVNode(\"div\", _hoisted_1, [\n _createElementVNode(\"video\", {\n class: \"brainImg\",\n autoplay: \"\",\n loop: \"\",\n muted: \"\",\n src: _ctx.ImgUrlFix+ 'images/brain/'+ _ctx.brainName +'.mp4',\n poster: _ctx.ImgUrlFix+ 'images/brain/'+ _ctx.brainName +'.gif'\n }, [\n _createElementVNode(\"img\", {\n src: _ctx.ImgUrlFix + 'images/brain/'+ _ctx.brainName +'.jpg'\n }, null, 8, _hoisted_3)\n ], 8, _hoisted_2),\n _createElementVNode(\"div\", _hoisted_4, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.pointList, (poin, index) => {\n return (_openBlock(), _createElementBlock(\"div\", {\n class: \"poin\",\n onClick: ($event: any) => (_ctx.brainClickHandle(poin))\n }, [\n _createVNode(_component_el_tooltip, {\n class: \"box-item\",\n effect: \"dark\",\n content: poin.text,\n placement: \"top-start\"\n }, {\n default: _withCtx(() => [\n _createElementVNode(\"div\", {\n class: _normalizeClass([\"oneLine\", 'poinItemText' + poin.level])\n }, _toDisplayString(poin.text), 3)\n ]),\n _: 2\n }, 1032, [\"content\"]),\n _createElementVNode(\"div\", {\n class: _normalizeClass([poin.isActive ? 'poinItemActive' : '', 'poinItem' + poin.level])\n }, [\n _createElementVNode(\"div\", {\n class: \"poinItemCircle\",\n style: _normalizeStyle({ backgroundColor: poin.bgcolor })\n }, null, 4)\n ], 2)\n ], 8, _hoisted_5))\n }), 256))\n ], 512),\n _createElementVNode(\"div\", _hoisted_6, [\n _createElementVNode(\"div\", _hoisted_7, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.navList, (item, index) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_8, [\n (item.isActive && item.info.length > 0)\n ? (_openBlock(), _createElementBlock(\"div\", {\n key: 0,\n class: \"activeItem pr-15\",\n onClick: ($event: any) => (_ctx.brainClickHandle(item))\n }, [\n _createElementVNode(\"div\", _hoisted_10, [\n _createElementVNode(\"img\", {\n src: _ctx.ImgUrlFix + item.img\n }, null, 8, _hoisted_11)\n ]),\n _createElementVNode(\"div\", _hoisted_12, [\n _createElementVNode(\"strong\", null, _toDisplayString(item.text), 1),\n (item.info.length > 1)\n ? (_openBlock(true), _createElementBlock(_Fragment, { key: 0 }, _renderList(item.info, (inner, idx) => {\n return (_openBlock(), _createElementBlock(\"div\", _hoisted_13, [\n _createElementVNode(\"div\", null, _toDisplayString(inner.text), 1),\n _createElementVNode(\"div\", _hoisted_14, [\n _createElementVNode(\"span\", null, _toDisplayString(inner.count), 1),\n _createElementVNode(\"span\", null, _toDisplayString(inner.unit), 1)\n ])\n ]))\n }), 256))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_15, [\n _createElementVNode(\"div\", null, _toDisplayString(item.info[0].text), 1),\n _createElementVNode(\"div\", _hoisted_16, [\n _createElementVNode(\"span\", null, _toDisplayString(item.info[0].count), 1),\n _createElementVNode(\"span\", null, _toDisplayString(item.info[0].unit), 1)\n ])\n ]))\n ])\n ], 8, _hoisted_9))\n : (_openBlock(), _createElementBlock(\"div\", {\n key: 1,\n class: \"commonItem\",\n onClick: ($event: any) => (_ctx.brainClickHandle(item))\n }, [\n _createElementVNode(\"div\", _hoisted_18, [\n _createElementVNode(\"img\", {\n src: _ctx.ImgUrlFix + item.img\n }, null, 8, _hoisted_19)\n ]),\n _createElementVNode(\"div\", _hoisted_20, [\n _createElementVNode(\"div\", null, _toDisplayString(item.text), 1),\n _createElementVNode(\"div\", _hoisted_21, _toDisplayString(item.count) + \" \" + _toDisplayString(item.unit), 1)\n ])\n ], 8, _hoisted_17))\n ]))\n }), 256))\n ])\n ], 512)\n ])\n ], 6))\n}","\r\n\r\n/*\r\n\r\n使用方法\r\n\r\n*/\r\n\r\nimport { defineComponent, toRefs, ref, nextTick, watch } from 'vue';\r\nimport type {PropType} from \"vue\"\r\n\r\n// 引入公共函数\r\nimport { pbFn } from '@u/publicMethod'\r\n\r\n// 引入常量\r\nimport { ImgUrlFix } from '@u/contant'\r\n\r\nimport {IBrainPoint, IBrainNav} from '@u/interface/brain'\r\n\r\n// 引入变量\r\n\r\nconst st = 0.901639; // 比例缩小\r\n\r\n//位置坐标\r\ninterface IPoinStation {\r\n x: number,\r\n y: number,\r\n width?: number,\r\n height?: number,\r\n text?: string,\r\n}\r\n\r\nexport default defineComponent({\r\n name: \"brain\",\r\n components: {},\r\n emits: {\r\n 'brainClick': null\r\n },\r\n props: {\r\n navList: {\r\n //左边导航菜单\r\n type: Array as PropType,\r\n default: []\r\n },\r\n pointList: {\r\n //脑中的点\r\n type: Array as PropType,\r\n default: []\r\n },\r\n brainName:{\r\n type: String,\r\n default: 'brain1'\r\n },\r\n width: {\r\n type: String,\r\n default: '100%'\r\n },\r\n\r\n },\r\n setup(props, { emit }) {\r\n const { navList, pointList, width, brainName } = toRefs(props)\r\n\r\n const brainRef: any = ref(null)\r\n const navBoxRef: any = ref(null)\r\n const pointListRef: any = ref(null)\r\n\r\n let poinSitionList: IPoinStation[] = [];\r\n let poinMaxW = 0; // 脑点的最大宽度\r\n let poinH = 0; //脑点的高度\r\n\r\n\r\n //针对极端随机情况,xy都为0,的时候重设\r\n const reSetPoinStation = () => {\r\n let count = 0;\r\n poinSitionList.forEach((item)=>{\r\n if(item.x === 0){\r\n count++\r\n }\r\n })\r\n if(count >= 2){\r\n randomPoinStation()\r\n }\r\n }\r\n\r\n\r\n // 设置脑中点的位置\r\n const randomPoinStation = () => {\r\n poinSitionList = []\r\n setTimeout(() => {\r\n if (brainRef.value.offsetWidth < 40) {\r\n randomPoinStation()\r\n } else {\r\n if (brainName.value!=='brain1') {\r\n pointListRef.value.style.left = '31%';\r\n pointListRef.value.style.right = '22%';\r\n pointListRef.value.style.top = '20%';\r\n pointListRef.value.style.bottom = '31%';\r\n } else {\r\n pointListRef.value.style.left = '23%';\r\n pointListRef.value.style.right = '23%';\r\n pointListRef.value.style.top = '23%';\r\n pointListRef.value.style.bottom = '24%';\r\n }\r\n\r\n const width = pointListRef.value.offsetWidth - poinMaxW\r\n const height = pointListRef.value.offsetHeight - poinH\r\n const itemList = document.querySelectorAll('.pointList .poin')\r\n\r\n\r\n for (let i = 0; i < itemList.length; i++) {\r\n let poinSition: IPoinStation = {\r\n x: 0,\r\n y: 0,\r\n width: (itemList[i] as any).offsetWidth,\r\n height: (itemList[i] as any).offsetHeight\r\n }\r\n\r\n //限制次数,以免位置不够产生死循环\r\n let count = 0;\r\n\r\n\r\n do {\r\n poinSition.x = pbFn.getRandomInt(0, width);\r\n poinSition.y = pbFn.getRandomInt(0, height);\r\n count++\r\n if (count > 500) {\r\n break;\r\n }\r\n } while (isInArray(poinSition, poinSitionList))\r\n\r\n // poinSition.width = (itemList[i] as any).offsetWidth;\r\n // poinSition.height = (itemList[i] as any).offsetHeight;\r\n poinSitionList.push(poinSition);\r\n\r\n (itemList[i] as any).style.left = poinSition.x + \"px\";\r\n (itemList[i] as any).style.top = poinSition.y + \"px\";\r\n (itemList[i] as any).style.maxWidth = poinMaxW + \"px\";\r\n (itemList[i] as any).style.maxHeight = poinH + \"px\";\r\n }\r\n }\r\n\r\n reSetPoinStation()\r\n\r\n }, 100)\r\n }\r\n\r\n //设置导航位置\r\n const setNavStation = () => {\r\n if (brainRef.value.offsetWidth < 40) {\r\n setNavStation()\r\n } else {\r\n setTimeout(() => {\r\n const brainWidt = parseInt(brainRef.value.offsetWidth)\r\n let degSt = 12;\r\n if(brainWidt > 1200){\r\n degSt = 8;\r\n }else if (brainWidt > 1100){\r\n degSt = 9;\r\n }else if(brainWidt > 1000) {\r\n degSt = 10;\r\n }\r\n navBoxRef.value.style.top = (brainWidt * st) / 2 + 'px'\r\n navBoxRef.value.style.right = (brainWidt * st) / 2 + 'px'\r\n const radius = brainWidt / 2 - 20;\r\n const itemList = document.querySelectorAll('.navBox .navItem')\r\n for (let i = 0; i < itemList.length; i++) {\r\n const deg = i * degSt / 180 * Math.PI;\r\n\r\n if(i === 6){\r\n (itemList[i] as any).style.left = '-' + ((pbFn.getLocation(radius, deg + 0.75).left + getX(i, degSt)) + 15) + \"px\";\r\n\r\n }else if(i === 5) {\r\n (itemList[i] as any).style.left = '-' + ((pbFn.getLocation(radius, deg + 0.75).left + getX(i, degSt)) + 10) + \"px\";\r\n }else{\r\n (itemList[i] as any).style.left = '-' + (pbFn.getLocation(radius, deg + 0.75).left + getX(i, degSt)) + \"px\";\r\n\r\n }\r\n \r\n if(i===0){\r\n (itemList[i] as any).style.top = - (pbFn.getLocation(radius, deg + 0.75).top) + \"px\";\r\n }else{\r\n (itemList[i] as any).style.top = - ((pbFn.getLocation(radius, deg + 0.75).top) - 20) + \"px\";\r\n }\r\n \r\n }\r\n }, 100);\r\n }\r\n }\r\n\r\n //万物的开始\r\n const start = () =>{\r\n if (pointList.value.length < 6) {\r\n poinMaxW = 120\r\n poinH = 80\r\n } else {\r\n poinMaxW = 80\r\n poinH = 80\r\n }\r\n\r\n //设置脑中框和点的位置\r\n nextTick(() => {\r\n randomPoinStation();\r\n })\r\n\r\n //设置 导航的位置\r\n if (brainName.value!=='brain1') {\r\n nextTick(() => {\r\n navBoxRef.value.style.display = 'block';\r\n setNavStation();\r\n })\r\n }else{\r\n nextTick(() => {\r\n navBoxRef.value.style.display = 'none';\r\n })\r\n \r\n }\r\n }\r\n\r\n watch(()=>props.pointList, start, { immediate: true, deep: true })\r\n watch(()=>props.navList, start, { immediate: true, deep: true })\r\n\r\n\r\n const brainClickHandle = (item: any) => {\r\n emit('brainClick', item)\r\n }\r\n return {\r\n ImgUrlFix,\r\n brainRef, navBoxRef, pointListRef, brainName,\r\n navList, pointList, width,\r\n brainClickHandle,\r\n }\r\n\r\n\r\n // 获得导航的X坐标\r\n function getX(i: number, degSt:number=12) {\r\n if(degSt === 12){\r\n return (Math.abs(6 - i) * 4) + 25 + Math.abs(6 - i) * 6\r\n }else if(degSt === 8){\r\n return (Math.abs(6 - i) * 4) - 25 - i * 8\r\n }else if(degSt === 9){\r\n return (Math.abs(6 - i) * 4) + 25 + Math.abs(6 - i) * 8\r\n }else if(degSt === 10){\r\n return (Math.abs(6 - i) * 4) + 25 + Math.abs(6 - i) * 8\r\n }else{\r\n return (Math.abs(6 - i) * 4) + 25 + Math.abs(6 - i)\r\n }\r\n }\r\n\r\n // 检查脑点是否已经在坐标内\r\n function isOverlap(rect1: any, rect2: any) {\r\n const l1 = { x: rect1.x, y: rect1.y }\r\n const r1 = { x: rect1.x + rect1.width, y: rect1.y + rect1.height }\r\n const l2 = { x: rect2.x, y: rect2.y }\r\n const r2 = { x: rect2.x + rect2.width, y: rect2.y + rect2.height }\r\n if (\r\n l1.x > r2.x ||\r\n l2.x > r1.x ||\r\n l1.y > r2.y ||\r\n l2.y > r1.y\r\n ) return false\r\n return true\r\n }\r\n\r\n function isInArray(poinSition: IPoinStation, poinSitionList: IPoinStation[]) {\r\n let flag = false;\r\n poinSitionList.forEach((item) => {\r\n if (isOverlap(poinSition, item)) {\r\n flag = true\r\n }\r\n })\r\n return flag;\r\n }\r\n },\r\n})\r\n\r\n\r\n\r\n","import { render } from \"./brain.vue?vue&type=template&id=4214f81b&scoped=true&ts=true\"\nimport script from \"./brain.vue?vue&type=script&lang=ts\"\nexport * from \"./brain.vue?vue&type=script&lang=ts\"\n\nimport \"./brain.vue?vue&type=style&index=0&id=4214f81b&lang=scss&scoped=true\"\n\nimport exportComponent from \"D:\\\\公司项目\\\\T-CAS\\\\node_modules\\\\vue-loader-v16\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-4214f81b\"]])\n\nexport default __exports__","export class SynDiffDrug{\r\n drugId: string = '' //药品id\r\n drugName: string = '' //药品名称\r\n fjbDrugId:string = '' //方剂宝药品id\r\n fjbDrugName:string = '' //方剂宝药品名称\r\n aliasName:string = '' //药品别名\r\n unit:string = '' //药品单位\r\n specs: string = '' //规格\r\n qty: number = 0 //用量\r\n direction: string = '' //用法\r\n remark: string = '' //注意事项\r\n checkRemind:number = 0 //用药安全检查\r\n factory:string = '' // 厂家\r\n id:string = '' //后端有用,前端目前没用上\r\n drugType:number = 0 // 药品类型\r\n \r\n //前端需要用到,另外增加的属性\r\n drugState?: number // 加药,减药,改药\r\n bingzongIndex?:Number // 病种弹窗的位置\r\n pharmacology?:string //性味归经\r\n major?:string //功效主治\r\n cdyl?:Boolean //超大用量\r\n sbf?:Boolean //18反\r\n sjw?:Boolean //19畏\r\n sbfDrug?:SynDiffDrug|null|SynDiffDrug[] //18反药\r\n sjwDrug?:SynDiffDrug|null|SynDiffDrug[] //19畏药\r\n taboo?:Number //禁忌情况\r\n}"],"sourceRoot":""}