Commit ff9757fd by tangyufeng

医嘱

parent b42671fb
...@@ -38,7 +38,7 @@ ...@@ -38,7 +38,7 @@
</div> </div>
</div> </div>
<div class="outClinicalpathway_top_time"> <div class="outClinicalpathway_top_time">
<el-timeline style="display: flex; width: 25%; padding: 0 10px"> <el-timeline style="display: flex; padding: 0 10px">
<el-timeline-item <el-timeline-item
:class="timeindex == activity.inhosdays ? 'outClinicalpathway_top_time_timespan' : 'outClinicalpathway_top_time_timespan2'" :class="timeindex == activity.inhosdays ? 'outClinicalpathway_top_time_timespan' : 'outClinicalpathway_top_time_timespan2'"
v-for="(activity, index) in activities" v-for="(activity, index) in activities"
...@@ -49,7 +49,10 @@ ...@@ -49,7 +49,10 @@
:hollow="activity.hollow" :hollow="activity.hollow"
:timestamp="activity.timestamp" :timestamp="activity.timestamp"
> >
<span @click="timeclick(activity)">{{ activity.inhosdays }}</span> <el-tooltip class="item" effect="dark" :content="activity.inhosdays" placement="top-start" v-if="activity.inhosdays.length > 7">
<span @click="timeclick(activity)">{{ activity.inhosdays }}</span>
</el-tooltip>
<span v-else @click="timeclick(activity)">{{ activity.inhosdays }}</span>
</el-timeline-item> </el-timeline-item>
</el-timeline> </el-timeline>
</div> </div>
...@@ -136,7 +139,7 @@ ...@@ -136,7 +139,7 @@
<span v-else>{{ scope.row.medicalPurpose }}</span> <span v-else>{{ scope.row.medicalPurpose }}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="medicUseQuantity" label="用量" width="75"> <el-table-column prop="medicUseQuantity" label="用量" width="60">
<template #default="scope"> <template #default="scope">
<el-input <el-input
v-if="scope.row.advice_name == null && scope.row.ischeck == 1" v-if="scope.row.advice_name == null && scope.row.ischeck == 1"
...@@ -149,7 +152,13 @@ ...@@ -149,7 +152,13 @@
<el-table-column show-overflow-tooltip property="medicUseUnit" label="单位" width="50" /> <el-table-column show-overflow-tooltip property="medicUseUnit" label="单位" width="50" />
<el-table-column show-overflow-tooltip property="medicUseMode" label="途径" width="110"> <el-table-column show-overflow-tooltip property="medicUseMode" label="途径" width="110">
<template #default="scope"> <template #default="scope">
<el-select v-if="scope.row.advice_name == null && scope.row.ischeck == 1" size="mini" v-model="scope.row.medicUseMode"> <el-select
v-if="scope.row.advice_name == null && scope.row.ischeck == 1"
size="mini"
v-model="scope.row.medicUseMode"
filterable
:filter-method="remoteMethod"
>
<el-option v-for="item in medicUseModeoptions" :key="item.id" :label="item.describe" :value="item.describe"> </el-option> <el-option v-for="item in medicUseModeoptions" :key="item.id" :label="item.describe" :value="item.describe"> </el-option>
</el-select> </el-select>
<span v-else>{{ scope.row.medicUseMode }}</span> <span v-else>{{ scope.row.medicUseMode }}</span>
...@@ -163,14 +172,19 @@ ...@@ -163,14 +172,19 @@
<span v-else>{{ scope.row.medicUsePlan }}</span> <span v-else>{{ scope.row.medicUsePlan }}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="dropNumber" label="滴数" width="60">
<template #default="scope">
<el-input v-if="scope.row.advice_name == null && scope.row.ischeck == 1" v-model="scope.row.dropNumber" size="mini"></el-input>
<span v-else>{{ scope.row.dropNumber }}</span>
</template>
</el-table-column>
<el-table-column prop="medicQuantity" label="用药总量" width="80"> <el-table-column prop="medicQuantity" label="用药总量" width="80">
<template #default="scope"> <template #default="scope">
<el-input v-if="scope.row.advice_name == null && scope.row.ischeck == 1" v-model="scope.row.medicQuantity" size="mini"></el-input> <el-input v-if="scope.row.advice_name == null && scope.row.ischeck == 1" v-model="scope.row.medicQuantity" size="mini"></el-input>
<span v-else>{{ scope.row.medicQuantity }}</span> <span v-else>{{ scope.row.medicQuantity }}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column show-overflow-tooltip property="medicUnit" label="单位" width="50" /> <el-table-column show-overflow-tooltip property="medicUnit" label="单位" width="60" />
<el-table-column show-overflow-tooltip property="remark" label="嘱托" width="150'"> <el-table-column show-overflow-tooltip property="remark" label="嘱托" width="150'">
<template #default="scope"> <template #default="scope">
<el-input <el-input
...@@ -304,7 +318,7 @@ ...@@ -304,7 +318,7 @@
</div> </div>
</div> </div>
<!-- 更多弹框开始 --> <!-- 更多弹框开始 -->
<el-dialog :visible.sync="goSeeScoredialogFormVisible" width="30%"> <el-dialog :visible.sync="goSeeScoredialogFormVisible" width="30%" @close="goSeecolse">
<el-form ref="goSeefromRef" :model="goSeeform" :label-position="labelPosition" label-width="100px"> <el-form ref="goSeefromRef" :model="goSeeform" :label-position="labelPosition" label-width="100px">
<el-form-item label="主诉:"> <el-form-item label="主诉:">
<el-input v-model="goSeeform.chiefComplaint" :autosize="{ minRows: 2 }" type="textarea" placeholder="请输入内容" /> <el-input v-model="goSeeform.chiefComplaint" :autosize="{ minRows: 2 }" type="textarea" placeholder="请输入内容" />
...@@ -324,8 +338,8 @@ ...@@ -324,8 +338,8 @@
</el-form> </el-form>
<template #footer> <template #footer>
<span class="dialog-footer"> <span class="dialog-footer">
<el-button size="mini" @click="goSeecolse()">取消</el-button> <el-button size="mini" @click="goSeecolse">取消</el-button>
<el-button size="mini" @click="goSeeok()">确定 </el-button> <el-button size="mini" @click="goSeeok">确定 </el-button>
</span> </span>
</template> </template>
</el-dialog> </el-dialog>
...@@ -421,6 +435,7 @@ export default { ...@@ -421,6 +435,7 @@ export default {
tempRow: {}, //储存正在编辑的行 tempRow: {}, //储存正在编辑的行
tempRowChildren: [], tempRowChildren: [],
medicUseModeoptions: [], //途径 medicUseModeoptions: [], //途径
medicUseModeoptionsLise: [],
medicUsePlanoptions: [], //频率 medicUsePlanoptions: [], //频率
medicalPurposeoptions: [], //用药目的 medicalPurposeoptions: [], //用药目的
radio: 1, radio: 1,
...@@ -448,7 +463,7 @@ export default { ...@@ -448,7 +463,7 @@ export default {
} }
}; };
//表格当前行样式 //表格当前行样式
const rowClass = ({ row, index }) => { const rowClass = ({ row, rowIndex }) => {
if (row.isClass) { if (row.isClass) {
return "rowStyleclass"; return "rowStyleclass";
} else { } else {
...@@ -458,47 +473,74 @@ export default { ...@@ -458,47 +473,74 @@ export default {
//更多 //更多
const goSeeScore = (row) => { const goSeeScore = (row) => {
console.log("state.tableData", state.tableData);
console.log("row", row);
state.distype = row.type; state.distype = row.type;
state.goSeeScoredialogFormVisible = true;
state.oldRowObj = { ...row }; state.oldRowObj = { ...row };
state.goSeeform = { ...row }; state.goSeeform = row;
state.tableData.forEach((item, index) => { state.goSeeScoredialogFormVisible = true;
let childIndex = item.children.findIndex((v) => v.id == row.id); // state.tableData.forEach((item, index) => {
if (childIndex !== -1) { // let childIndex = item.children.findIndex((v) => v.id == row.id);
state.goSeeIndexPid = index; // console.log(childIndex);
state.goSeeIndex = childIndex; // if (childIndex !== -1) {
} // state.goSeeIndexPid = index;
}); // state.goSeeIndex = childIndex;
// }
// });
}; };
//更多-取消 //更多-取消
const goSeecolse = () => { const goSeecolse = () => {
state.goSeeform = {}; state.goSeeform = {};
let childrenList = [...state.tableData[state.goSeeIndexPid].children]; // let childrenList = [...state.tableData[state.goSeeIndexPid].children];
childrenList.splice(state.goSeeIndex, 1, state.oldRowObj); // childrenList.splice(state.goSeeIndex, 1, state.oldRowObj);
state.tableData[state.goSeeIndexPid].children = childrenList; // state.tableData[state.goSeeIndexPid].children = childrenList;
state.goSeeScoredialogFormVisible = false; state.goSeeScoredialogFormVisible = false;
toggleSelection(state.oldRowObj, true);
}; };
//更多--确定 //更多--确定
const goSeeok = () => { const goSeeok = () => {
let childrenList = [...state.tableData[state.goSeeIndexPid].children]; // let childrenList = [...state.tableData[state.goSeeIndexPid].children];
childrenList.splice(state.goSeeIndex, 1, state.goSeeform); // childrenList.splice(state.goSeeIndex, 1, state.goSeeform);
state.tableData[state.goSeeIndexPid].children = childrenList; // state.tableData[state.goSeeIndexPid].children = childrenList;
console.log(state.tableData, 999); // console.log(state.tableData, 999);
// state.tableData.forEach((item) => {
// let childIndex = item.children.findIndex((v) => v.id == state.goSeeform.id);
// console.log(childIndex);
// if (childIndex !== -1) {
// item.children[childIndex] = state.goSeeform;
// }
// });
console.log(state.tableData);
if (state.radio == 1) {
state.multipleSelection[0] = state.goSeeform;
} else {
state.multipleSelection1[0] = state.goSeeform;
}
console.log(state.tableData);
console.log(state.multipleSelection);
console.log(state.multipleSelection1);
// toggleSelection(state.multipleSelection[0], true);
state.goSeeScoredialogFormVisible = false; state.goSeeScoredialogFormVisible = false;
toggleSelection(state.goSeeform, true);
}; };
//获取途径,频率的下拉数据 //获取途径,频率的下拉数据
const gemedicUseModeoptions = () => { const gemedicUseModeoptions = () => {
http.post(`/ClinicalRoute/ClinicalRoute/GetStaCRParametersByType?type=1`, {}) http.post(`/ClinicalRoute/ClinicalRoute/GetStaCRParametersByType?type=1`, {})
.then((data) => { .then((data) => {
state.medicUseModeoptions = data; state.medicUseModeoptions = data;
state.medicUseModeoptionsLise = data;
}) })
.catch((error) => {}); .catch((error) => {});
}; };
const remoteMethod = (query) => {
if (query) {
state.medicUseModeoptions = state.medicUseModeoptions.filter((item) => {
return item.describe.toLowerCase().indexOf(query.toLowerCase()) > -1 || item.pinyin.toLowerCase().indexOf(query.toLowerCase()) > -1;
});
// setTimeout(() => {}, 200);
} else {
state.medicUseModeoptions = state.medicUseModeoptionsLise;
}
console.log(state.medicUseModeoptions);
};
//获取频率,频率的下拉数据 //获取频率,频率的下拉数据
const gemedicUsePlanoptions = () => { const gemedicUsePlanoptions = () => {
http.post(`/ClinicalRoute/ClinicalRoute/GetStaCRParametersByType?type=2`, {}) http.post(`/ClinicalRoute/ClinicalRoute/GetStaCRParametersByType?type=2`, {})
...@@ -539,16 +581,8 @@ export default { ...@@ -539,16 +581,8 @@ export default {
// 选中父节点时,子节点一起选中取消 // 选中父节点时,子节点一起选中取消
const select = (selection, row) => { const select = (selection, row) => {
console.log("row--父节点", row, selection);
console.log(selection.filter((item) => !item.children));
row.tickTime = transformTimestampnow(); row.tickTime = transformTimestampnow();
// 选中 // 选中
console.log(
selection.some((el) => {
return row.id === el.id;
})
);
if ( if (
selection.some((el) => { selection.some((el) => {
return row.id === el.id; return row.id === el.id;
...@@ -556,7 +590,6 @@ export default { ...@@ -556,7 +590,6 @@ export default {
) { ) {
row.ischeck = 1; row.ischeck = 1;
if (row.children) { if (row.children) {
console.log(row.children.filter((item) => item.isForbidden));
row.children row.children
.filter((item) => item.isForbidden) .filter((item) => item.isForbidden)
.map((j) => { .map((j) => {
...@@ -565,10 +598,15 @@ export default { ...@@ -565,10 +598,15 @@ export default {
console.log(j.type); console.log(j.type);
toggleSelection(j, true); toggleSelection(j, true);
}); });
} else {
selection.map((v) => {
toggleSelection(v, true);
});
} }
//取消 //取消
} else { } else {
console.log(row);
if (row.children) { if (row.children) {
row.children.map((p) => { row.children.map((p) => {
p.ischeck = 2; p.ischeck = 2;
...@@ -584,6 +622,7 @@ export default { ...@@ -584,6 +622,7 @@ export default {
// 控制选框是否被选中 // 控制选框是否被选中
const toggleSelection = (row, select) => { const toggleSelection = (row, select) => {
if (row) { if (row) {
console.log(row);
nextTick(() => { nextTick(() => {
multipleTable.value && multipleTable.value.toggleRowSelection(row, select); multipleTable.value && multipleTable.value.toggleRowSelection(row, select);
}); });
...@@ -633,10 +672,12 @@ export default { ...@@ -633,10 +672,12 @@ export default {
//当选择项发生变化时会触发该事件 //当选择项发生变化时会触发该事件
const SelectionChange = (val) => { const SelectionChange = (val) => {
// state.multipleSelection = val; // state.multipleSelection = val;
console.log(val.length + "选中的数据");
console.log(val.pop());
if (state.radio == 1) { if (state.radio == 1) {
state.multipleSelection = val.filter((item) => !item.children); state.multipleSelection = val.filter((item) => !item.children).sort((a, b) => a.sort - b.sort);
} else { } else {
state.multipleSelection1 = val.filter((item) => !item.children); state.multipleSelection1 = val.filter((item) => !item.children).sort((a, b) => a.sort - b.sort);
} }
if (state.multipleSelection.length) { if (state.multipleSelection.length) {
state.multipleSelection state.multipleSelection
...@@ -698,6 +739,21 @@ export default { ...@@ -698,6 +739,21 @@ export default {
{} {}
) )
.then((data) => { .then((data) => {
data.route1.forEach((element) => {
if (element.children) {
element.children.map((el, i) => {
el.sort = i++;
});
}
});
data.route2.forEach((element) => {
if (element.children) {
element.children.map((el, i) => {
el.sort = i++;
});
}
});
state.newtable1 = data.route1; state.newtable1 = data.route1;
state.newtable2 = data.route2; state.newtable2 = data.route2;
if (state.radio == 1) { if (state.radio == 1) {
...@@ -807,125 +863,34 @@ export default { ...@@ -807,125 +863,34 @@ export default {
} }
} }
}; };
const msg = (s, m) => {
Message({
message: m,
type: s,
});
};
const saveSetPatientRoutes = () => { const saveSetPatientRoutes = () => {
state.objtable.route1 = state.multipleSelection; state.objtable.route1 = state.multipleSelection;
state.objtable.route2 = state.multipleSelection1; state.objtable.route2 = state.multipleSelection1;
http.post(`/ClinicalRoute/ClinicalRoute/SetPatientRoutes?pid=${route.value.query.pid}`, state.objtable) http.post(`/ClinicalRoute/ClinicalRoute/SetPatientRoutes?pid=${route.value.query.pid}`, state.objtable)
.then(async (data) => { .then(async (data) => {
// console.log("data.hisUrl", data.hisUrl); data.map((item) => {
// state.hisUrl = data.hisUrl.split("api/")[2]; if (item.code == "0") {
state.hisUrl = data.hisUrl; setTimeout(() => {
console.log(state.hisUrl); msg("success", item.msg);
// console.log("state.hisUrl", state.hisUrl); }, 300);
//临时西药 } else {
state.tempMedicalDrug = data.tempMedicalDrug; setTimeout(() => {
//临时检查 msg("error", item.msg);
state.tempMedicalcheck = data.tempMedicalcheck; }, 300);
//临时检验 }
state.tempMedicalCheckout = data.tempMedicalCheckout; });
//长期西药
state.longMedical = data.longMedical;
await posttempMedicalDrug();
await posttempMedicalcheck();
await posttempMedicalCheckout();
await postlongMedical();
})
.catch((error) => {});
};
// 调用his接口 临时西药
const posttempMedicalDrug = () => {
http.postFn(state.hisUrl, {
method: "tempMedical",
type: 1,
data: state.tempMedicalDrug,
})
.then((res) => {
//重新获取左侧时间线数据
getlefttime(); getlefttime();
if (res.code == "0") {
Message({
message: res.msg,
type: "success",
});
} else {
Message({
message: res.msg,
type: "error",
});
}
})
.catch((error) => {
console.log(error);
});
};
// 调用his接口 临时检查
const posttempMedicalcheck = () => {
http.postFn(state.hisUrl, {
method: "tempMedical",
type: 3,
data: state.tempMedicalcheck,
})
.then((res) => {
if (res.code == "0") {
Message({
message: res.msg,
type: "success",
});
} else {
Message({
message: res.msg,
type: "error",
});
}
})
.catch((error) => {});
};
// 调用his接口 临时检验
const posttempMedicalCheckout = () => {
http.postFn(state.hisUrl, {
method: "tempMedical",
type: 4,
data: state.tempMedicalCheckout,
})
.then((res) => {
if (res.code == "0") {
Message({
message: res.msg,
type: "success",
});
} else {
Message({
message: res.msg,
type: "error",
});
}
})
.catch((error) => {});
};
// 调用his接口 长期西药
const postlongMedical = () => {
http.postFn(state.hisUrl, {
method: "longMedical",
type: 1,
data: state.longMedical,
})
.then((res) => {
if (res.code == "0") {
Message({
message: res.msg,
type: "success",
});
} else {
Message({
message: res.msg,
type: "error",
});
}
}) })
.catch((error) => {}); .catch((error) => {});
}; };
//获取病情变异--变异原因下拉框 //获取病情变异--变异原因下拉框
const getreasonoptions = () => { const getreasonoptions = () => {
http.post(`/ClinicalRoute/ClinicalRoute/GetStandardByType?crid=${state.crid}`, {}) http.post(`/ClinicalRoute/ClinicalRoute/GetStandardByType?crid=${state.crid}`, {})
...@@ -1030,6 +995,7 @@ export default { ...@@ -1030,6 +995,7 @@ export default {
goSeecolse, goSeecolse,
selectEnable, selectEnable,
rowClass, rowClass,
remoteMethod,
}; };
}, },
}; };
...@@ -1058,6 +1024,14 @@ export default { ...@@ -1058,6 +1024,14 @@ export default {
top: 3px !important; top: 3px !important;
display: flex !important; display: flex !important;
align-items: end !important; align-items: end !important;
.el-timeline-item__content {
display: -webkit-box;
overflow: hidden;
-webkit-box-orient: vertical;
-webkit-line-clamp: 1;
text-overflow: ellipsis;
}
} }
::v-deep .el-timeline-item__node--normal { ::v-deep .el-timeline-item__node--normal {
margin-left: 15px !important; margin-left: 15px !important;
...@@ -1257,9 +1231,10 @@ export default { ...@@ -1257,9 +1231,10 @@ export default {
padding-left: 20px; padding-left: 20px;
display: flex; display: flex;
align-items: center; align-items: center;
&_timespan { &_timespan {
width: 100%; max-width: 200px;
height: 20px; /* height: 20px; */
display: flex; display: flex;
background-color: #0283bb; background-color: #0283bb;
border-radius: 20px; border-radius: 20px;
...@@ -1269,8 +1244,8 @@ export default { ...@@ -1269,8 +1244,8 @@ export default {
} }
} }
&_timespan2 { &_timespan2 {
width: 100%; max-width: 200px;
height: 20px; /* height: 20px; */
display: flex; display: flex;
} }
} }
......
...@@ -99,16 +99,16 @@ ...@@ -99,16 +99,16 @@
></span ></span
> >
</div> </div>
<!-- <div class="outpatientDetails_fenqu_di_bb_div3"> <div class="outpatientDetails_fenqu_di_bb_div3">
<span class="outpatientDetails_fenqu_di_bb_div3_span1" :style="{ width: lowwidth + '%' }"> 0 </span> <span class="outpatientDetails_fenqu_di_bb_div3_span1" :style="{ width: lowwidth + '%' }"> 0 </span>
<span class="outpatientDetails_fenqu_di_bb_div3_span2" :style="{ width: contentwidth + '%' }"> <span class="outpatientDetails_fenqu_di_bb_div3_span2" :style="{ width: contentwidth + '%' }">
{{ Math.round(lowMagnification) }} {{ Math.round(lowMagnification) }}
</span> </span>
<span class="outpatientDetails_fenqu_di_bb_div3_span3" :style="{ width: heightwidth + '%' }"> <span class="outpatientDetails_fenqu_di_bb_div3_span3" :style="{ width: heightwidth + '%' }">
<span class="outpatientDetails_fenqu_di_bb_div3_span2_nmm1">{{ Math.round(highMagnification) }}</span> <span class="outpatientDetails_fenqu_di_bb_div3_span2_nmm1">{{ Math.round(highMagnification) }}</span>
<span class="outpatientDetails_fenqu_di_bb_div3_span2_nmm2">{{ Math.round(heightnum) }}</span> <!-- <span class="outpatientDetails_fenqu_di_bb_div3_span2_nmm2">{{ Math.round(heightnum) }}</span> -->
</span> </span>
</div> --> </div>
</div> </div>
</div> </div>
</div> </div>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment