dev
This commit is contained in:
parent
9edee03ccf
commit
af01d2d0ef
|
|
@ -31,11 +31,11 @@
|
||||||
<el-tooltip
|
<el-tooltip
|
||||||
class="box-item"
|
class="box-item"
|
||||||
effect="dark"
|
effect="dark"
|
||||||
:content="formatTime(item.createTime)||'-'"
|
:content="formatListTime(item.createTime)||'-'"
|
||||||
placement="bottom-start"
|
placement="bottom-start"
|
||||||
>
|
>
|
||||||
<span class="item_time">
|
<span class="item_time">
|
||||||
{{ formatTime(item.createTime) || '-' }}
|
{{ formatListTime(item.createTime) || '-' }}
|
||||||
</span>
|
</span>
|
||||||
</el-tooltip>
|
</el-tooltip>
|
||||||
<span :class="[item.status == 0 ?'status-active':'']">{{ item.status == 0 ? '未收' : '已收' }}</span>
|
<span :class="[item.status == 0 ?'status-active':'']">{{ item.status == 0 ? '未收' : '已收' }}</span>
|
||||||
|
|
@ -53,7 +53,7 @@
|
||||||
import {onMounted, ref} from "vue";
|
import {onMounted, ref} from "vue";
|
||||||
import {post} from "@/utils/request.ts";
|
import {post} from "@/utils/request.ts";
|
||||||
import Panel from "@/components/common/Panel.vue";
|
import Panel from "@/components/common/Panel.vue";
|
||||||
import {formatTime} from "@/utils/dateUtils.ts";
|
import {formatListTime} from "@/utils/dateUtils.ts";
|
||||||
|
|
||||||
const curItem = ref<any>({});
|
const curItem = ref<any>({});
|
||||||
const emit = defineEmits(['clickItem'])
|
const emit = defineEmits(['clickItem'])
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,8 @@
|
||||||
<template>
|
<template>
|
||||||
<Mask :width="600" :height="500" :is-show="show" @close="show=false" :title="id?'患者编辑':'患者建档'">
|
<Mask :width="650" :height="580" :is-show="show" @close="show=false" :title="id?'患者编辑':'患者建档'"
|
||||||
|
:show-footer="true">
|
||||||
|
<template #default>
|
||||||
|
<el-scrollbar>
|
||||||
<div class="content">
|
<div class="content">
|
||||||
<el-form
|
<el-form
|
||||||
:model="ruleForm"
|
:model="ruleForm"
|
||||||
|
|
@ -8,11 +11,6 @@
|
||||||
ref="ruleFormRef"
|
ref="ruleFormRef"
|
||||||
>
|
>
|
||||||
<el-row>
|
<el-row>
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="号码" prop="phone">
|
|
||||||
<el-input v-model="ruleForm.phone" placeholder="输入电话号码"></el-input>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
<el-form-item label="姓名" prop="name">
|
<el-form-item label="姓名" prop="name">
|
||||||
<el-input v-model="ruleForm.name" placeholder="输入真实姓名"></el-input>
|
<el-input v-model="ruleForm.name" placeholder="输入真实姓名"></el-input>
|
||||||
|
|
@ -27,6 +25,42 @@
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
|
<el-row>
|
||||||
|
<el-col :span="12">
|
||||||
|
<el-form-item label="年龄" prop="age">
|
||||||
|
<el-input v-model="ruleForm.age"></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="12">
|
||||||
|
<el-form-item label="手机号" prop="phone">
|
||||||
|
<el-input v-model="ruleForm.phone" placeholder="输入电话号码"></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
<el-row>
|
||||||
|
<el-col :span="12">
|
||||||
|
<el-form-item label="证件类型" prop="">
|
||||||
|
<el-select
|
||||||
|
v-model="ruleForm.certType"
|
||||||
|
placeholder="证件类型选择"
|
||||||
|
size="default"
|
||||||
|
style="width: 100%"
|
||||||
|
>
|
||||||
|
<el-option
|
||||||
|
v-for="item in options"
|
||||||
|
:key="item.value"
|
||||||
|
:label="item.label"
|
||||||
|
:value="item.value"
|
||||||
|
/>
|
||||||
|
</el-select>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="12">
|
||||||
|
<el-form-item label="证件号码" prop="certNo">
|
||||||
|
<el-input v-model="ruleForm.certNo"></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
<el-row>
|
<el-row>
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
<el-form-item label="生日" prop="birthday">
|
<el-form-item label="生日" prop="birthday">
|
||||||
|
|
@ -41,11 +75,6 @@
|
||||||
</el-col>
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
<el-row>
|
<el-row>
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="证件号码" prop="certNo">
|
|
||||||
<el-input v-model="ruleForm.certNo"></el-input>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
<el-form-item label="来源" prop="source">
|
<el-form-item label="来源" prop="source">
|
||||||
<el-select
|
<el-select
|
||||||
|
|
@ -73,14 +102,24 @@
|
||||||
<el-form-item label="备注" prop="remark">
|
<el-form-item label="备注" prop="remark">
|
||||||
<el-input v-model="ruleForm.remark"></el-input>
|
<el-input v-model="ruleForm.remark"></el-input>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<div class="dialog-footer">
|
<el-form-item label="既往史" prop="pastHistory">
|
||||||
|
<el-input v-model="ruleForm.pastHistory"></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="过敏史" prop="allergyHistory">
|
||||||
|
<el-input v-model="ruleForm.allergyHistory"></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
</el-form>
|
||||||
|
</div>
|
||||||
|
</el-scrollbar>
|
||||||
|
</template>
|
||||||
|
<template #footer>
|
||||||
|
<div class="bottom">
|
||||||
<el-button @click="close">取消</el-button>
|
<el-button @click="close">取消</el-button>
|
||||||
<el-button type="primary" @click="submitForm">
|
<el-button type="primary" @click="submitForm">
|
||||||
保存
|
保存
|
||||||
</el-button>
|
</el-button>
|
||||||
</div>
|
</div>
|
||||||
</el-form>
|
</template>
|
||||||
</div>
|
|
||||||
</Mask>
|
</Mask>
|
||||||
</template>
|
</template>
|
||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
|
|
@ -90,6 +129,7 @@ import SelectArea from "@/components/SelectArea.vue";
|
||||||
import {post} from "@/utils/request.ts";
|
import {post} from "@/utils/request.ts";
|
||||||
import Mask from "@/components/common/Mask.vue";
|
import Mask from "@/components/common/Mask.vue";
|
||||||
import CloseBtn from "@/components/CloseBtn.vue";
|
import CloseBtn from "@/components/CloseBtn.vue";
|
||||||
|
|
||||||
const ruleFormRef = ref<FormInstance>()
|
const ruleFormRef = ref<FormInstance>()
|
||||||
const id = ref<any>(null)
|
const id = ref<any>(null)
|
||||||
const show = ref<boolean>(false)
|
const show = ref<boolean>(false)
|
||||||
|
|
@ -116,6 +156,7 @@ interface RuleForm {
|
||||||
address: string
|
address: string
|
||||||
remark: string
|
remark: string
|
||||||
}
|
}
|
||||||
|
|
||||||
let ruleForm = ref<any>({
|
let ruleForm = ref<any>({
|
||||||
exp: 0,
|
exp: 0,
|
||||||
phone: '',
|
phone: '',
|
||||||
|
|
@ -156,15 +197,15 @@ const options1 = [
|
||||||
const submitForm = async () => {
|
const submitForm = async () => {
|
||||||
let formEl = ruleFormRef.value
|
let formEl = ruleFormRef.value
|
||||||
if (!formEl) return
|
if (!formEl) return
|
||||||
await formEl.validate((valid:any, fields:any) => {
|
await formEl.validate((valid: any, fields: any) => {
|
||||||
if (valid) {
|
if (valid) {
|
||||||
console.log(ruleForm.value)
|
console.log(ruleForm.value)
|
||||||
if (ruleForm.value.id){
|
if (ruleForm.value.id) {
|
||||||
post("vip/vip/update", {vipInfo:ruleForm.value}).then((res: any) => {
|
post("vip/vip/update", {vipInfo: ruleForm.value}).then((res: any) => {
|
||||||
close()
|
close()
|
||||||
})
|
})
|
||||||
}else {
|
} else {
|
||||||
post("vip/vip/create", {vipInfo:ruleForm.value}).then((res: any) => {
|
post("vip/vip/create", {vipInfo: ruleForm.value}).then((res: any) => {
|
||||||
close()
|
close()
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
@ -197,7 +238,7 @@ const init = (_id: any) => {
|
||||||
id.value = _id
|
id.value = _id
|
||||||
levelName.value = ''
|
levelName.value = ''
|
||||||
show.value = true
|
show.value = true
|
||||||
if (!id.value){
|
if (!id.value) {
|
||||||
ruleForm.value = {}
|
ruleForm.value = {}
|
||||||
return
|
return
|
||||||
} else {
|
} else {
|
||||||
|
|
@ -205,7 +246,7 @@ const init = (_id: any) => {
|
||||||
ruleForm.value = res
|
ruleForm.value = res
|
||||||
ruleForm.value.area = JSON.parse(ruleForm.value.area)
|
ruleForm.value.area = JSON.parse(ruleForm.value.area)
|
||||||
if (!res.levelId) return
|
if (!res.levelId) return
|
||||||
post("vip/vipLevel/get", {levelId: res.levelId}).then((res:any) => {
|
post("vip/vipLevel/get", {levelId: res.levelId}).then((res: any) => {
|
||||||
levelName.value = res.name
|
levelName.value = res.name
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
|
|
@ -213,8 +254,8 @@ const init = (_id: any) => {
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
const getLevelConfig = ()=>{
|
const getLevelConfig = () => {
|
||||||
post("vip/vipLevel/list").then((res:any) => {
|
post("vip/vipLevel/list").then((res: any) => {
|
||||||
options.value = res
|
options.value = res
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
@ -226,7 +267,6 @@ defineExpose({init})
|
||||||
<style scoped lang="scss">
|
<style scoped lang="scss">
|
||||||
.content {
|
.content {
|
||||||
padding: 20px;
|
padding: 20px;
|
||||||
margin-top: 30px;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.dialog-footer {
|
.dialog-footer {
|
||||||
|
|
@ -234,4 +274,12 @@ defineExpose({init})
|
||||||
justify-content: flex-end;
|
justify-content: flex-end;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.bottom {
|
||||||
|
height: 100%;
|
||||||
|
display: flex;
|
||||||
|
justify-content: flex-end;
|
||||||
|
padding: 20px;
|
||||||
|
align-items: center;
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|
@ -21,17 +21,9 @@
|
||||||
</span>
|
</span>
|
||||||
<span class="item_name">{{ item.name }}</span>
|
<span class="item_name">{{ item.name }}</span>
|
||||||
<span>{{ item.gender }}</span>
|
<span>{{ item.gender }}</span>
|
||||||
<el-tooltip
|
|
||||||
class="box-item"
|
|
||||||
effect="dark"
|
|
||||||
:content="formatTime(item.createDatetime)||'-'"
|
|
||||||
placement="bottom-start"
|
|
||||||
>
|
|
||||||
<span class="item_time">
|
<span class="item_time">
|
||||||
{{ formatTime(item.createDatetime) || '-' }}
|
{{ formatListTime(item.createDatetime) || '-' }}
|
||||||
</span>
|
</span>
|
||||||
</el-tooltip>
|
|
||||||
<span>01-01</span>
|
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
</el-scrollbar>
|
</el-scrollbar>
|
||||||
|
|
@ -42,7 +34,7 @@
|
||||||
import {onMounted, ref, watch} from "vue";
|
import {onMounted, ref, watch} from "vue";
|
||||||
import Panel from "@/components/common/Panel.vue";
|
import Panel from "@/components/common/Panel.vue";
|
||||||
import {post} from "@/utils/request.ts";
|
import {post} from "@/utils/request.ts";
|
||||||
import {formatTime} from "@/utils/dateUtils.ts";
|
import {formatListTime} from "@/utils/dateUtils.ts";
|
||||||
import {apiConfig} from "@/assets/config/apiConfig.ts";
|
import {apiConfig} from "@/assets/config/apiConfig.ts";
|
||||||
import {ElMessageBox} from "element-plus";
|
import {ElMessageBox} from "element-plus";
|
||||||
|
|
||||||
|
|
@ -83,7 +75,7 @@ const statusList = ref<any>([
|
||||||
num: 0
|
num: 0
|
||||||
}
|
}
|
||||||
])
|
])
|
||||||
const itemId=defineModel()
|
const itemId = defineModel()
|
||||||
onMounted(() => {
|
onMounted(() => {
|
||||||
curItem.value = itemId
|
curItem.value = itemId
|
||||||
initStatusList()
|
initStatusList()
|
||||||
|
|
|
||||||
|
|
@ -18,7 +18,8 @@
|
||||||
<div style="font-size: 18px;font-weight: 500;color: #000">{{ itemInfo.name }}[{{ chrgitm_lv[itemInfo.chrgitmLv as keyof typeof chrgitm_lv || '-'] || '-' }}]</div>
|
<div style="font-size: 18px;font-weight: 500;color: #000">{{ itemInfo.name }}[{{ chrgitm_lv[itemInfo.chrgitmLv as keyof typeof chrgitm_lv || '-'] || '-' }}]</div>
|
||||||
<div>¥{{ item.unitPrice }}/{{item.unit }}</div>
|
<div>¥{{ item.unitPrice }}/{{item.unit }}</div>
|
||||||
</div>
|
</div>
|
||||||
<div>
|
<div style="display: flex;justify-content: space-between">
|
||||||
|
<div>限制条件:{{ itemInfo.lmtUsedFlag == 0 ? '否' : itemInfo.lmtUsedFlag == 1 ? '是' : '-'}}</div>
|
||||||
<div> 医保码:{{item.itemSocialCode||'-'}}</div>
|
<div> 医保码:{{item.itemSocialCode||'-'}}</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
||||||
|
|
@ -13,17 +13,17 @@ export const formatDate = (date: Date|string): any => {
|
||||||
return '-';
|
return '-';
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
const year = dateDetail.getFullYear();
|
const year = dateDetail.getFullYear();
|
||||||
const month = String(dateDetail.getMonth() + 1).padStart(2, '0');
|
const month = String(dateDetail.getMonth() + 1).padStart(2, '0');
|
||||||
const day = String(dateDetail.getDate()).padStart(2, '0');
|
const day = String(dateDetail.getDate()).padStart(2, '0');
|
||||||
|
|
||||||
const hours = String(dateDetail.getHours()).padStart(2, '0');
|
const hours = String(dateDetail.getHours()).padStart(2, '0');
|
||||||
const minutes = String(dateDetail.getMinutes()).padStart(2, '0');
|
const minutes = String(dateDetail.getMinutes()).padStart(2, '0');
|
||||||
const seconds = String(dateDetail.getSeconds()).padStart(2, '0');
|
const seconds = String(dateDetail.getSeconds()).padStart(2, '0');
|
||||||
|
|
||||||
return `${year}-${month}-${day} ${hours}:${minutes}:${seconds}`;
|
return `${year}-${month}-${day} ${hours}:${minutes}:${seconds}`;
|
||||||
};
|
};
|
||||||
export const formatTime = (date: any) => {
|
export const formatListTime = (date: any) => {
|
||||||
let dateDetail: Date;
|
let dateDetail: Date;
|
||||||
if (date instanceof Date) {
|
if (date instanceof Date) {
|
||||||
dateDetail = date;
|
dateDetail = date;
|
||||||
|
|
@ -37,13 +37,23 @@ export const formatTime = (date: any) => {
|
||||||
console.error(`Invalid date type: ${typeof date}`);
|
console.error(`Invalid date type: ${typeof date}`);
|
||||||
return '-';
|
return '-';
|
||||||
}
|
}
|
||||||
|
const year = dateDetail.getFullYear();
|
||||||
|
const month = String(dateDetail.getMonth() + 1).padStart(2, '0');
|
||||||
|
const day = String(dateDetail.getDate()).padStart(2, '0');
|
||||||
const hours = dateDetail.getHours();
|
const hours = dateDetail.getHours();
|
||||||
const minutes = String(dateDetail.getMinutes()).padStart(2, '0');
|
const minutes = String(dateDetail.getMinutes()).padStart(2, '0');
|
||||||
const seconds = String(dateDetail.getSeconds()).padStart(2, '0');
|
const seconds = String(dateDetail.getSeconds()).padStart(2, '0');// 将24小时制转换为12小时制
|
||||||
const period = hours >= 12 ? '下午' : '上午';
|
//如果不是今年 返回年
|
||||||
const formattedHours = String(hours % 12 || 12).padStart(2, '0'); // 将24小时制转换为12小时制
|
if (dateDetail.getFullYear() !== new Date().getFullYear()) {
|
||||||
|
return `${year}`;
|
||||||
|
}
|
||||||
|
//如果是今天,返回时和分,如果不是今天,返回月和日
|
||||||
|
|
||||||
return `${period} ${formattedHours}:${minutes}:${seconds}`;
|
if (dateDetail.toDateString() === new Date().toDateString()) {
|
||||||
|
return `${hours}:${minutes}`;
|
||||||
|
} else {
|
||||||
|
return `${month}-${day}`;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -95,3 +105,4 @@ export const getDaysBetweenDates = (startDateStr: string, endDateStr: string): s
|
||||||
|
|
||||||
return days;
|
return days;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
<template>
|
<template>
|
||||||
<div class="container-wrapper">
|
<div class="container-wrapper">
|
||||||
<div class="left">
|
<div class="left">
|
||||||
<Panel title="患者列表">
|
<Panel title="患者列表" style="height: 100%">
|
||||||
<div class="search">
|
<div class="search">
|
||||||
<div class="input">
|
<div class="input">
|
||||||
<el-input v-model="input3" style="width:100%;height: 100%" placeholder="搜索患者"
|
<el-input v-model="input3" style="width:100%;height: 100%" placeholder="搜索患者"
|
||||||
|
|
@ -15,34 +15,19 @@
|
||||||
</div>
|
</div>
|
||||||
<span class="btn" @click="openEdit(null)">患者建档</span>
|
<span class="btn" @click="openEdit(null)">患者建档</span>
|
||||||
</div>
|
</div>
|
||||||
<el-scrollbar @scroll="handleScroll" style="padding: 0 24px">
|
<div class="total">共{{ totalCount || 0 }}条</div>
|
||||||
<ul class="content" style="overflow: hidden">
|
<ul class="content">
|
||||||
|
<el-scrollbar style="padding: 0 24px;height: 100%">
|
||||||
<li v-for="(item,i) in list" :key="item.id" :class="index==i?'active':''" @click="btn(item,i)">
|
<li v-for="(item,i) in list" :key="item.id" :class="index==i?'active':''" @click="btn(item,i)">
|
||||||
<img class="image"
|
<img class="image"
|
||||||
:src="'/static/images/member/' + (item.sex === '男' ? 'man' : 'women') + '.png'"
|
:src="'/static/images/member/' + (item.sex === 1 ? 'man' : 'women') + '.png'"
|
||||||
alt=""/>
|
alt=""/>
|
||||||
<div class="name">{{ item.name || '-' }}</div>
|
<div class="name">{{ item.name || '-' }}</div>
|
||||||
<span class="age">{{ item.age ? item.age + '岁' : '-' }}</span>
|
|
||||||
<el-tooltip
|
|
||||||
class="box-item"
|
|
||||||
effect="dark"
|
|
||||||
:content="item.levelName"
|
|
||||||
placement="bottom-start"
|
|
||||||
>
|
|
||||||
<span class="level">{{ item.levelName || "-" }}</span>
|
<span class="level">{{ item.levelName || "-" }}</span>
|
||||||
</el-tooltip>
|
<span class="time">{{ formatListTime(item.createDatetime) }}</span>
|
||||||
<el-tooltip
|
|
||||||
class="box-item"
|
|
||||||
effect="dark"
|
|
||||||
:content="item.createDatetime"
|
|
||||||
placement="bottom-start"
|
|
||||||
>
|
|
||||||
<span class="time" :class="index==i? 'time_active':''">{{ item.createDatetime || '-' }}</span>
|
|
||||||
</el-tooltip>
|
|
||||||
|
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
|
||||||
</el-scrollbar>
|
</el-scrollbar>
|
||||||
|
</ul>
|
||||||
</Panel>
|
</Panel>
|
||||||
</div>
|
</div>
|
||||||
<div class="right">
|
<div class="right">
|
||||||
|
|
@ -161,7 +146,6 @@
|
||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import {ref, onMounted, nextTick} from 'vue'
|
import {ref, onMounted, nextTick} from 'vue'
|
||||||
import {Search} from "@element-plus/icons-vue";
|
import {Search} from "@element-plus/icons-vue";
|
||||||
import {ElRow, ElCol, ElButton} from 'element-plus'
|
|
||||||
import {post} from "@/utils/request.ts";
|
import {post} from "@/utils/request.ts";
|
||||||
import Mask from "@/components/common/Mask.vue";
|
import Mask from "@/components/common/Mask.vue";
|
||||||
import Grant from "@/components/member/memberProfile/Grant.vue";
|
import Grant from "@/components/member/memberProfile/Grant.vue";
|
||||||
|
|
@ -171,6 +155,7 @@ import OrderDetail from "@/components/retail/OrderDetail.vue";
|
||||||
import VipEdit from "@/components/member/memberProfile/VipEdit.vue";
|
import VipEdit from "@/components/member/memberProfile/VipEdit.vue";
|
||||||
import VipLevelEdit from "@/components/member/memberProfile/VipLevelEdit.vue";
|
import VipLevelEdit from "@/components/member/memberProfile/VipLevelEdit.vue";
|
||||||
import Panel from "@/components/common/Panel.vue";
|
import Panel from "@/components/common/Panel.vue";
|
||||||
|
import {formatListTime} from "@/utils/dateUtils.ts";
|
||||||
|
|
||||||
|
|
||||||
const isGrant = ref(false)
|
const isGrant = ref(false)
|
||||||
|
|
@ -207,6 +192,7 @@ const openEdit = (id: any) => {
|
||||||
}
|
}
|
||||||
|
|
||||||
const list = ref<any>([]);
|
const list = ref<any>([]);
|
||||||
|
const totalCount = ref(0)
|
||||||
|
|
||||||
onMounted(() => {
|
onMounted(() => {
|
||||||
init()
|
init()
|
||||||
|
|
@ -219,6 +205,7 @@ const init = () => {
|
||||||
};
|
};
|
||||||
post("vip/vip/list", query).then((res: any) => {
|
post("vip/vip/list", query).then((res: any) => {
|
||||||
list.value = res.list;
|
list.value = res.list;
|
||||||
|
totalCount.value = res.total_count
|
||||||
listItem.value = res.list[0];
|
listItem.value = res.list[0];
|
||||||
// 向每个对象添加新的属性
|
// 向每个对象添加新的属性
|
||||||
list.value.forEach((item: any) => {
|
list.value.forEach((item: any) => {
|
||||||
|
|
@ -340,15 +327,14 @@ const openLevelEdit = (vip: any) => {
|
||||||
display: flex;
|
display: flex;
|
||||||
background: none;
|
background: none;
|
||||||
padding: 0 24px;
|
padding: 0 24px;
|
||||||
|
height: 100%;
|
||||||
|
|
||||||
.left {
|
.left {
|
||||||
height: 100%;
|
height: 100%;
|
||||||
width: 430px;
|
width: 430px;
|
||||||
margin-right: 24px;
|
margin-right: 24px;
|
||||||
|
|
||||||
|
|
||||||
.search {
|
.search {
|
||||||
height: 66px;
|
height: 56px;
|
||||||
display: flex;
|
display: flex;
|
||||||
padding: 0 24px;
|
padding: 0 24px;
|
||||||
|
|
||||||
|
|
@ -376,12 +362,20 @@ const openLevelEdit = (vip: any) => {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.total {
|
||||||
|
margin-left: 24px;
|
||||||
|
height: 40px;
|
||||||
|
border-top: 1px solid #EBEEF5;
|
||||||
|
border-bottom: 1px solid #EBEEF5;
|
||||||
|
line-height: 40px;
|
||||||
|
margin-bottom: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
.content {
|
.content {
|
||||||
flex: 1;
|
flex: 1;
|
||||||
min-height: 0;
|
min-height: 0;
|
||||||
border-radius: 8px;
|
border-radius: 8px;
|
||||||
border: 1px solid #EAEAEC;
|
border: 1px solid #EAEAEC;
|
||||||
|
|
||||||
li {
|
li {
|
||||||
display: flex;
|
display: flex;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
|
|
@ -390,6 +384,18 @@ const openLevelEdit = (vip: any) => {
|
||||||
padding: 0 24px;
|
padding: 0 24px;
|
||||||
color: #000000;
|
color: #000000;
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
|
&:first-child {
|
||||||
|
border-top-left-radius: 8px;
|
||||||
|
border-top-right-radius: 8px;
|
||||||
|
}
|
||||||
|
&:last-child {
|
||||||
|
border-bottom-left-radius: 8px;
|
||||||
|
border-bottom-right-radius: 8px;
|
||||||
|
}
|
||||||
|
|
||||||
|
&:hover {
|
||||||
|
background: rgba(#4D6DE4, 0.5);
|
||||||
|
}
|
||||||
|
|
||||||
.image {
|
.image {
|
||||||
width: 20px;
|
width: 20px;
|
||||||
|
|
@ -401,11 +407,6 @@ const openLevelEdit = (vip: any) => {
|
||||||
flex: 2;
|
flex: 2;
|
||||||
}
|
}
|
||||||
|
|
||||||
.age {
|
|
||||||
flex: 1;
|
|
||||||
margin-right: 10px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.level {
|
.level {
|
||||||
flex: 2;
|
flex: 2;
|
||||||
margin-right: 20px;
|
margin-right: 20px;
|
||||||
|
|
@ -422,6 +423,24 @@ const openLevelEdit = (vip: any) => {
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
text-overflow: ellipsis;
|
text-overflow: ellipsis;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
.active {
|
||||||
|
background: #4D6DE4;
|
||||||
|
color: #fff;
|
||||||
|
|
||||||
|
.name {
|
||||||
|
color: #fff;
|
||||||
|
}
|
||||||
|
|
||||||
|
.level {
|
||||||
|
color: #fff;
|
||||||
|
}
|
||||||
|
|
||||||
|
.time {
|
||||||
|
color: #fff;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -493,7 +512,6 @@ const openLevelEdit = (vip: any) => {
|
||||||
font-style: normal;
|
font-style: normal;
|
||||||
margin-left: 24px;
|
margin-left: 24px;
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
|
|
||||||
&:hover {
|
&:hover {
|
||||||
color: #FFFFFF;
|
color: #FFFFFF;
|
||||||
background: #4D6DE4;
|
background: #4D6DE4;
|
||||||
|
|
@ -552,15 +570,6 @@ const openLevelEdit = (vip: any) => {
|
||||||
padding: 0;
|
padding: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
.active {
|
|
||||||
color: #fff;
|
|
||||||
@include base.background-color
|
|
||||||
}
|
|
||||||
|
|
||||||
.time_active {
|
|
||||||
color: #000000 !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
.col {
|
.col {
|
||||||
margin: 20px 0;
|
margin: 20px 0;
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue