提交 7917de8f 编写于 作者: zhaosheng.zhang's avatar zhaosheng.zhang

feat: 问诊列表及详情增加字段

上级 343297e9
......@@ -29,7 +29,8 @@
:label="item.label"
:show-overflow-tooltip="item.showtooltip"
:sortable="
item.prop == 'appointBeginTime' || item.prop == 'assistantBeginTime'
item.prop == 'appointBeginTime' || item.prop == 'assistantBeginTime' ||
item.prop == 'assistantTime' || item.prop == 'receptionTime'
? 'custom'
: false
"
......@@ -50,6 +51,26 @@
<p>{{ scope.row.receptionBeginTime }}</p>
<p>{{ scope.row.receptionEndTime }}</p>
</div>
<div v-else-if="scope.column.property == 'assistantTime'">
<div :style="{ color: isAssistantTime(scope) ? 'red' : ''}">
<p v-if="isAssistantTime(scope)">
距自动取消还剩
</p>
<p>{{ goTime(scope.row.assistantTime) }}</p>
</div>
</div>
<div v-else-if="scope.column.property == 'receptionTime'">
<div
:style="{
color: scope.row.diagnoseChannel === 3 && scope.row.status === 3 ? 'red' : ''
}"
>
<p v-if="scope.row.diagnoseChannel === 3 && scope.row.status === 3">
距自动取消还剩
</p>
<p>{{ goTime(scope.row.receptionTime) }}</p>
</div>
</div>
<div v-else>
<p>{{ scope.row[scope.column.property] }}</p>
</div>
......@@ -252,6 +273,9 @@
<script>
import { DIAGNOS_LIST_NEW } from '@/utils/GeneralData/diagnosis-list-new';
import TabSet from '@/components/common/tab-set';
import dayjs from 'dayjs';
import duration from 'dayjs/plugin/duration';
dayjs.extend(duration);
export default {
components: {
TabSet,
......@@ -422,6 +446,17 @@
},
callAssistant(row) {
this.$emit('callAssistant', row);
},
// 转成时分秒
goTime(time) {
return dayjs.duration(time, 'seconds').format('HH:mm:ss');
},
isAssistantTime(scope) {
if (scope.row.diagnoseChannel === 3
&& (scope.row.status === 2 || scope.row.status === 21 || scope.row.status === 22
|| scope.row.status === 23 || scope.row.status === 24 || scope.row.status === 25
|| scope.row.status === 26)
) return true;
}
},
};
......
......@@ -109,6 +109,16 @@ export const DIAGNOS_LIST_NEW = [
label: '稍后跟进状态',
showtooltip: false,
},
{
prop: 'assistantTime',
label: '问诊时长',
showtooltip: false,
},
{
prop: 'receptionTime',
label: '接诊时长',
showtooltip: false,
},
{
prop: 'operateUserId',
label: '运营人员ID',
......
......@@ -663,3 +663,18 @@ export const TABLE_COLUMN = [
showtooltip: true,
},
];
export const DIAGNOSE_CHANNEL = [
{
label: 'app问诊',
value: 1,
},
{
label: '线下问诊',
value: 2,
},
{
label: '小程序问诊',
value: 3,
},
];
......@@ -81,6 +81,18 @@
value-format="yyyy-MM-dd HH:mm:ss"
/>
</el-form-item>
<el-form-item
label="订单金额"
prop="orderTotalPrice"
>
<el-input
v-model="formData.orderTotalPrice"
placeholder="请输入问诊价格"
disabled
class="set-width"
/>
(单位元)
</el-form-item>
<el-form-item
label="问诊价格"
prop="price"
......@@ -93,6 +105,32 @@
/>
(单位元)
</el-form-item>
<el-form-item
label="诊疗费"
prop="additionPrice"
>
<el-input
v-model="formData.additionPrice"
placeholder="请输入诊疗费"
disabled
class="set-width"
/>
(单位元)
</el-form-item>
<el-form-item label="问诊方式">
<el-select
v-model="formData.diagnoseChannel"
placeholder="请选择问诊方式"
class="set-width"
>
<el-option
v-for="item of diagnoseChannelList"
:key="item.value"
:label="item.label"
:value="item.value"
/>
</el-select>
</el-form-item>
<el-form-item label="支付方式">
<el-select
v-model="formData.payType"
......@@ -1006,6 +1044,7 @@ import {
SOURCE_LIST,
STATUS_LIST,
TYPE_LIST,
DIAGNOSE_CHANNEL
} from '@/utils/constants';
import { getBirth } from '@/utils/index';
......@@ -1115,9 +1154,13 @@ export default {
name: '',
url: '',
},
additionPrice: null, // 诊疗费
orderTotalPrice: null,
diagnoseChannel: null
},
tyleList: TYPE_LIST,
payList: PAY_LIST,
diagnoseChannelList: DIAGNOSE_CHANNEL,
sourceList: SOURCE_LIST,
statusList: STATUS_LIST,
carList: CAR_LIST,
......@@ -1281,6 +1324,11 @@ export default {
if (res.code == '000000') {
this.formData = res.data;
this.formData.price = this.priceFilter(this.formData.price);
this.formData.additionPrice = this.priceFilter(this.formData.additionPrice);
console.log('问诊价格=====', this.formData.price);
console.log('诊疗费价格=====', this.formData.additionPrice);
this.formData.orderTotalPrice = this.formData.price + this.formData.additionPrice;
console.log('订单总金额=====', this.formData.additionPrice);
this.formData.serviceFee = this.priceFilter(
this.formData.serviceFee
);
......
......@@ -364,6 +364,26 @@
</el-select>
</el-form-item>
</div>
<div>
<el-form-item
label="问诊方式"
class="t-b"
>
<el-select
v-model="searchParam.diagnoseChannel"
placeholder="请选择问诊方式"
clearable
style="width: 220px"
>
<el-option
v-for="item of diagnoseChannelList"
:key="item.value"
:label="item.label"
:value="item.value"
/>
</el-select>
</el-form-item>
</div>
</div>
<div class="form-btn">
<div class="form-btn-li">
......@@ -603,6 +623,7 @@ import {
SOURCE_LIST,
TRIAGE_TAB_LIST,
TYPE_LIST,
DIAGNOSE_CHANNEL
} from '@/utils/constants';
import { outbounNote } from '../../../api/diagnosis';
import { callAssistantDoctor, updateDiagnosis } from '../../../utils/diagnosis';
......@@ -681,6 +702,7 @@ export default {
orderPlacer: '',
matchingWay: null,
consultRoadList: [],
diagnoseChannel: null,
patientName: null,
},
noteList: [],
......@@ -704,6 +726,7 @@ export default {
value: 2,
},
],
diagnoseChannelList: DIAGNOSE_CHANNEL,
nextPersonList: [
{
label: '基层医生',
......@@ -1177,7 +1200,9 @@ export default {
inNewTimeObj: {},
consultRoadList: [],
patientName: null,
diagnoseChannel: null
});
this.getsearch();
},
// 导出
download() {
......
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册