|
|
@@ -1,15 +1,584 @@
|
|
|
<template>
|
|
|
<div class="insuranceAccount">
|
|
|
- <el-form :model="insuranceForm" ref="InsuranceRefs" label-width="100">
|
|
|
-
|
|
|
+ <el-form :model="insuranceForm" ref="InsuranceFormRefs" label-width="70">
|
|
|
+ <el-row :gutter="29">
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="账号信息">
|
|
|
+ <el-input v-model="insuranceForm.username" placeholder="输入用户名,简称查找" clearable></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="保险公司">
|
|
|
+ <el-select v-model="insuranceForm.insCompanyId" placeholder="请选择" clearable>
|
|
|
+ <el-option v-for="item in bankOption" :key="item.companyCode" :value="item.companyCode" :label="item.name"></el-option>
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="归属">
|
|
|
+ <el-cascader
|
|
|
+ style="width: 100%"
|
|
|
+ v-model="insuranceForm.userDept"
|
|
|
+ placeholder="请选择"
|
|
|
+ :options="deptOption"
|
|
|
+ :props="cascaderProps"
|
|
|
+ clearable
|
|
|
+ ></el-cascader>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ </el-row>
|
|
|
+ <el-row :gutter="20">
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="可用状态">
|
|
|
+ <el-select v-model="insuranceForm.useStatus" placeholder="请选择" clearable>
|
|
|
+ <el-option key="0" label="正常" value="0"></el-option>
|
|
|
+ <el-option key="1" label="不可用" value="1"></el-option>
|
|
|
+ <el-option key="2" label="未知" value="2"></el-option>
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8">
|
|
|
+ <el-form-item label="报价状态">
|
|
|
+ <el-select v-model="insuranceForm.quoteStatus" placeholder="请选择" clearable>
|
|
|
+ <el-option key="0" label="启用" value="0"></el-option>
|
|
|
+ <el-option key="1" label="禁用" value="1"></el-option>
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="8">
|
|
|
+ <div style="display: flex; justify-content: flex-end">
|
|
|
+ <el-button type="primary" @click="search">查询</el-button>
|
|
|
+ <el-button plain @click="reset">重置</el-button>
|
|
|
+ </div>
|
|
|
+ </el-col>
|
|
|
+ </el-row>
|
|
|
</el-form>
|
|
|
+ <div class="btns">
|
|
|
+ <el-button type="primary" icon="plus" @click="addInsuranceAccount">添加账号</el-button>
|
|
|
+ <el-dropdown @command="batchCommand">
|
|
|
+ <el-button plain>批量管理</el-button>
|
|
|
+ <template #dropdown>
|
|
|
+ <el-dropdown-menu>
|
|
|
+ <el-dropdown-item command="删除">删除</el-dropdown-item>
|
|
|
+ <el-dropdown-item command="启用">启用</el-dropdown-item>
|
|
|
+ <el-dropdown-item command="禁用">禁用</el-dropdown-item>
|
|
|
+ <el-dropdown-item command="账号授权">账号授权</el-dropdown-item>
|
|
|
+ </el-dropdown-menu>
|
|
|
+ </template>
|
|
|
+ </el-dropdown>
|
|
|
+ </div>
|
|
|
+ <el-table
|
|
|
+ :data="tableData"
|
|
|
+ ref="insuranceDataRefs"
|
|
|
+ @selectionChange="tableSelectChange"
|
|
|
+ height="520"
|
|
|
+ >
|
|
|
+ <el-table-column type="selection" width="80"></el-table-column>
|
|
|
+ <el-table-column prop="username" label="账号信息" width="300">
|
|
|
+ <template #default="scope">
|
|
|
+ <div>用户名:{{ scope.row.username }}</div>
|
|
|
+ <div>简称:{{ scope.row.userAbbr }}</div>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column prop="insCompanyName" label="保险公司"></el-table-column>
|
|
|
+ <el-table-column prop="url" label="账号登录地址"></el-table-column>
|
|
|
+ <el-table-column prop="deptName" label="归属"></el-table-column>
|
|
|
+ <el-table-column prop="useStatus">
|
|
|
+ <template #header>
|
|
|
+ <div style="display: flex; align-items: center">
|
|
|
+ 可用状态
|
|
|
+ <el-tooltip
|
|
|
+ class="box-item"
|
|
|
+ effect="dark"
|
|
|
+ content="<span>使用该账号报价后,保司返回的账号可用结果</br>
|
|
|
+ 正常:说明该账号可使用</br>
|
|
|
+ 不可用:说明该账号在最近1次的报价时,保司返回的账号状态</br>
|
|
|
+ 未知:超过7天未使用该账号报价出单</span>"
|
|
|
+ placement="top-start"
|
|
|
+ raw-content
|
|
|
+ >
|
|
|
+ <el-icon size="14"><QuestionFilled /></el-icon>
|
|
|
+ </el-tooltip>
|
|
|
+ </div>
|
|
|
+ </template>
|
|
|
+ <template #default="scope">
|
|
|
+ <div class="tableState">
|
|
|
+ <span :class="{'state-use': scope.row.useStatus==='0','state-noUse': scope.row.useStatus==='1','state-noKnow': scope.row.useStatus==='2', }"></span>{{ scope.row.useStatus==='0'?'正常':scope.row.useStatus==='1'?'不可用':scope.row.useStatus==='2'?'未知':'' }}
|
|
|
+ </div>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column prop="quoteStatus" label="报价状态">
|
|
|
+ <template #default="scope">
|
|
|
+ <div class="tableState">
|
|
|
+ <span :class="{'state-use': scope.row.quoteStatus==='0','state-noUse': scope.row.quoteStatus==='1'}"></span>{{ scope.row.quoteStatus==='0'?'启用':scope.row.quoteStatus==='1'?'禁用':'' }}
|
|
|
+ </div>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column prop="userDesc" label="账号描述"></el-table-column>
|
|
|
+ <el-table-column label="操作">
|
|
|
+ <template #default="scope">
|
|
|
+ <div style="display: flex; align-items: center">
|
|
|
+ <el-button link type="primary" @click="editInsuranceAccount(scope.row)">编辑</el-button>
|
|
|
+ <el-dropdown @command="tableDataCommand(scope, $event)">
|
|
|
+ <el-button link type="primary">更多</el-button>
|
|
|
+ <template #dropdown>
|
|
|
+ <el-dropdown-item command="删除">删除</el-dropdown-item>
|
|
|
+ <el-dropdown-item command="启用">启用</el-dropdown-item>
|
|
|
+ <el-dropdown-item command="禁用">禁用</el-dropdown-item>
|
|
|
+ <el-dropdown-item command="账号授权">账号授权</el-dropdown-item>
|
|
|
+ </template>
|
|
|
+ </el-dropdown>
|
|
|
+ </div>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ </el-table>
|
|
|
+ <div class="paginationBox">
|
|
|
+ <el-pagination
|
|
|
+ v-model:current-page="currentPage"
|
|
|
+ v-model:page-size="pageSize"
|
|
|
+ :page-sizes="[10, 20, 30, 40]"
|
|
|
+ layout="total, sizes, prev, pager, next, jumper"
|
|
|
+ :total="total"
|
|
|
+ @size-change="handleSizeChange"
|
|
|
+ @current-change="handleCurrentChange"
|
|
|
+ ></el-pagination>
|
|
|
+ </div>
|
|
|
+ <el-drawer
|
|
|
+ v-model="accreditDrawer"
|
|
|
+ title="账号授权"
|
|
|
+ :size="800"
|
|
|
+ >
|
|
|
+ <el-row :gutter="10" style="height: 100%;">
|
|
|
+ <el-col :span="8" style="height: 100%;">
|
|
|
+ <el-input prefix-icon="search" @keyup.enter="searchInsurance"></el-input>
|
|
|
+ <div class="insuranceItem" v-for="item in insuranceList" :key="item.id">{{ item.name }}</div>
|
|
|
+ </el-col>
|
|
|
+ <el-divider direction="vertical" style="height: 100%;"></el-divider>
|
|
|
+ <el-col :span="15" style="height: 100%;">
|
|
|
+ <el-checkbox @change="insuranceSelectAll">全选</el-checkbox>
|
|
|
+ <el-tree
|
|
|
+ ref="insuranceTreeRefs"
|
|
|
+ :data="insuranceTree"
|
|
|
+ show-checkbox
|
|
|
+ default-expand-all
|
|
|
+ node-key="id"
|
|
|
+ />
|
|
|
+ </el-col>
|
|
|
+ </el-row>
|
|
|
+ </el-drawer>
|
|
|
</div>
|
|
|
</template>
|
|
|
|
|
|
<script setup lang="ts">
|
|
|
+import { ElMessage, ElMessageBox } from "element-plus";
|
|
|
+import { useRouter } from 'vue-router'
|
|
|
+import api from '@/api'
|
|
|
+
|
|
|
+const myRouter = useRouter()
|
|
|
+
|
|
|
+let insuranceForm = ref({})
|
|
|
+
|
|
|
+// 列表数据
|
|
|
+let tableData = ref([
|
|
|
+ {
|
|
|
+ id: '111'
|
|
|
+ }
|
|
|
+])
|
|
|
+// 查询
|
|
|
+const search = () => {
|
|
|
+ initData()
|
|
|
+}
|
|
|
+// 重置
|
|
|
+const reset = () => {
|
|
|
+ insuranceForm.value = {}
|
|
|
+ initData()
|
|
|
+}
|
|
|
+// 新增账号
|
|
|
+const addInsuranceAccount = () => {
|
|
|
+ myRouter.push({
|
|
|
+ path: '/quoteConfig/agreement/insuranceCompanyAccount/insuranceAccountAdd',
|
|
|
+ })
|
|
|
+}
|
|
|
+// 编辑账号
|
|
|
+const editInsuranceAccount = (row) => {
|
|
|
+ myRouter.push({
|
|
|
+ path: '/quoteConfig/agreement/insuranceCompanyAccount/insuranceAccountAdd',
|
|
|
+ query: {
|
|
|
+ id: row.id
|
|
|
+ }
|
|
|
+ })
|
|
|
+}
|
|
|
+// 批量操作
|
|
|
+const batchCommand = (e) => {
|
|
|
+ if(selectRows.value.length == 0) {
|
|
|
+ ElMessage({
|
|
|
+ message: '请选择需要操作的数据!',
|
|
|
+ type: 'warning'
|
|
|
+ })
|
|
|
+ return
|
|
|
+ }
|
|
|
+ switch (e) {
|
|
|
+ case '删除':
|
|
|
+ ElMessageBox({
|
|
|
+ title: '确定删除保司账号吗?',
|
|
|
+ message: '保司账号删除后不可恢复,请谨慎操作',
|
|
|
+ type: 'warning',
|
|
|
+ showCancelButton: true,
|
|
|
+ confirmButtonText: '确定删除',
|
|
|
+ cancelButtonText: '取消',
|
|
|
+ }).then(( action ) => {
|
|
|
+ if(action === 'confirm') {
|
|
|
+ api.insuranceApi.deleteAgreementAttribution({ ids: [...selectRows.value] }).then(res => {
|
|
|
+ if(res.code == 200) {
|
|
|
+ initData()
|
|
|
+ ElMessage({
|
|
|
+ message: res.msg,
|
|
|
+ type: 'success'
|
|
|
+ })
|
|
|
+ } else {
|
|
|
+ ElMessage({
|
|
|
+ message: res.msg,
|
|
|
+ type: 'warning'
|
|
|
+ })
|
|
|
+ }
|
|
|
+ })
|
|
|
+ }
|
|
|
+ })
|
|
|
+ break;
|
|
|
+ case '禁用':
|
|
|
+ ElMessageBox({
|
|
|
+ title: '禁用账号',
|
|
|
+ message: '确定要禁用该保司账号吗,禁用后当前租户/机构无法正常使用此账号报价出单',
|
|
|
+ type: 'warning',
|
|
|
+ showCancelButton: true,
|
|
|
+ confirmButtonText: '确定禁用',
|
|
|
+ cancelButtonText: '取消',
|
|
|
+ }).then(( action ) => {
|
|
|
+ if(action === 'confirm') {
|
|
|
+ api.insuranceApi.disableAgreementAttribution({ ids: [...selectRows.value] }).then(res => {
|
|
|
+ if(res.code == 200) {
|
|
|
+ initData()
|
|
|
+ ElMessage({
|
|
|
+ message: res.msg,
|
|
|
+ type: 'success'
|
|
|
+ })
|
|
|
+ } else {
|
|
|
+ ElMessage({
|
|
|
+ message: res.msg,
|
|
|
+ type: 'warning'
|
|
|
+ })
|
|
|
+ }
|
|
|
+ })
|
|
|
+ }
|
|
|
+ })
|
|
|
+ break;
|
|
|
+ case '启用':
|
|
|
+ // 启用的逻辑
|
|
|
+ api.insuranceApi.enableAgreementAttribution({ ids: [...selectRows.value] }).then(res => {
|
|
|
+ if(res.code == 200) {
|
|
|
+ initData()
|
|
|
+ ElMessage({
|
|
|
+ message: res.msg,
|
|
|
+ type: 'success'
|
|
|
+ })
|
|
|
+ } else {
|
|
|
+ ElMessage({
|
|
|
+ message: res.msg,
|
|
|
+ type: 'warning'
|
|
|
+ })
|
|
|
+ }
|
|
|
+ })
|
|
|
+ break;
|
|
|
+ case '账号授权':
|
|
|
+ // 账号授权的逻辑
|
|
|
+ accreditDrawer.value = true
|
|
|
+ break;
|
|
|
+ }
|
|
|
+}
|
|
|
+// 单条数据操作
|
|
|
+const tableDataCommand = (scope, e) => {
|
|
|
+ switch (e) {
|
|
|
+ case '删除':
|
|
|
+ ElMessageBox({
|
|
|
+ title: '确定删除保司账号吗?',
|
|
|
+ message: '保司账号删除后不可恢复,请谨慎操作',
|
|
|
+ type: 'warning',
|
|
|
+ showCancelButton: true,
|
|
|
+ confirmButtonText: '确定删除',
|
|
|
+ cancelButtonText: '取消',
|
|
|
+ }).then(( action ) => {
|
|
|
+ if(action === 'confirm') {
|
|
|
+ api.insuranceApi.deleteAgreementAttribution({ ids: [scope.row.id] }).then(res => {
|
|
|
+ if(res.code == 200) {
|
|
|
+ initData()
|
|
|
+ ElMessage({
|
|
|
+ message: res.msg,
|
|
|
+ type: 'success'
|
|
|
+ })
|
|
|
+ } else {
|
|
|
+ ElMessage({
|
|
|
+ message: res.msg,
|
|
|
+ type: 'warning'
|
|
|
+ })
|
|
|
+ }
|
|
|
+ })
|
|
|
+ }
|
|
|
+ })
|
|
|
+ break;
|
|
|
+ case '禁用':
|
|
|
+ ElMessageBox({
|
|
|
+ title: '禁用账号',
|
|
|
+ message: '确定要禁用该保司账号吗,禁用后当前租户/机构无法正常使用此账号报价出单',
|
|
|
+ type: 'warning',
|
|
|
+ showCancelButton: true,
|
|
|
+ confirmButtonText: '确定禁用',
|
|
|
+ cancelButtonText: '取消',
|
|
|
+ }).then(( action ) => {
|
|
|
+ if(action === 'confirm') {
|
|
|
+ api.insuranceApi.disableAgreementAttribution({ ids: [scope.row.id] }).then(res => {
|
|
|
+ if(res.code == 200) {
|
|
|
+ initData()
|
|
|
+ ElMessage({
|
|
|
+ message: res.msg,
|
|
|
+ type: 'success'
|
|
|
+ })
|
|
|
+ } else {
|
|
|
+ ElMessage({
|
|
|
+ message: res.msg,
|
|
|
+ type: 'warning'
|
|
|
+ })
|
|
|
+ }
|
|
|
+ })
|
|
|
+ }
|
|
|
+ })
|
|
|
+ break;
|
|
|
+ case '启用':
|
|
|
+ api.insuranceApi.enableAgreementAttribution({ ids: [scope.row.id] }).then(res => {
|
|
|
+ if(res.code == 200) {
|
|
|
+ initData()
|
|
|
+ ElMessage({
|
|
|
+ message: res.msg,
|
|
|
+ type: 'success'
|
|
|
+ })
|
|
|
+ } else {
|
|
|
+ ElMessage({
|
|
|
+ message: res.msg,
|
|
|
+ type: 'warning'
|
|
|
+ })
|
|
|
+ }
|
|
|
+ })
|
|
|
+ break;
|
|
|
+ case '账号授权':
|
|
|
+ // 账号授权的逻辑
|
|
|
+ accreditDrawer.value = true
|
|
|
+ break;
|
|
|
+ }
|
|
|
+}
|
|
|
+// 表格多选
|
|
|
+let selectRows = ref([])
|
|
|
+const tableSelectChange = (rows) => {
|
|
|
+ selectRows.value = []
|
|
|
+ if(rows.length>0) {
|
|
|
+ rows.forEach(item => {
|
|
|
+ selectRows.value.push(item.id)
|
|
|
+ })
|
|
|
+ }
|
|
|
+}
|
|
|
+// 分页功能
|
|
|
+let currentPage = ref(0)
|
|
|
+let pageSize = ref(10)
|
|
|
+let total = ref(0)
|
|
|
+
|
|
|
+const handleSizeChange = (size) => {
|
|
|
+ pageSize.value = size
|
|
|
+ initData()
|
|
|
+}
|
|
|
+const handleCurrentChange = (page) => {
|
|
|
+ currentPage.value = page
|
|
|
+ initData()
|
|
|
+}
|
|
|
+
|
|
|
+// 授权
|
|
|
+let accreditDrawer = ref(false)
|
|
|
+let insuranceList = ref([
|
|
|
+ {
|
|
|
+ name: '保司1',
|
|
|
+ id: '1'
|
|
|
+ },{
|
|
|
+ name: '保司2',
|
|
|
+ id: '2'
|
|
|
+ }
|
|
|
+])
|
|
|
+let insuranceTree = ref([
|
|
|
+ {
|
|
|
+ id: 1,
|
|
|
+ label: 'Level one 1',
|
|
|
+ children: [
|
|
|
+ {
|
|
|
+ id: 4,
|
|
|
+ label: 'Level two 1-1',
|
|
|
+ children: [
|
|
|
+ {
|
|
|
+ id: 9,
|
|
|
+ label: 'Level three 1-1-1',
|
|
|
+ },
|
|
|
+ {
|
|
|
+ id: 10,
|
|
|
+ label: 'Level three 1-1-2',
|
|
|
+ },
|
|
|
+ ],
|
|
|
+ },
|
|
|
+ ],
|
|
|
+ },
|
|
|
+ {
|
|
|
+ id: 2,
|
|
|
+ label: 'Level one 2',
|
|
|
+ children: [
|
|
|
+ {
|
|
|
+ id: 5,
|
|
|
+ label: 'Level two 2-1',
|
|
|
+ },
|
|
|
+ {
|
|
|
+ id: 6,
|
|
|
+ label: 'Level two 2-2',
|
|
|
+ },
|
|
|
+ ],
|
|
|
+ },
|
|
|
+ {
|
|
|
+ id: 3,
|
|
|
+ label: 'Level one 3',
|
|
|
+ children: [
|
|
|
+ {
|
|
|
+ id: 7,
|
|
|
+ label: 'Level two 3-1',
|
|
|
+ },
|
|
|
+ {
|
|
|
+ id: 8,
|
|
|
+ label: 'Level two 3-2',
|
|
|
+ },
|
|
|
+ ],
|
|
|
+ }
|
|
|
+])
|
|
|
+const treeProps = {
|
|
|
+
|
|
|
+}
|
|
|
+const searchInsurance = () => {
|
|
|
+
|
|
|
+}
|
|
|
+const insuranceSelectAll = (e) => {
|
|
|
+
|
|
|
+}
|
|
|
+
|
|
|
+// 列表数据初始化
|
|
|
+const initData = () => {
|
|
|
+ api.insuranceApi.getAgreementAttributionList({
|
|
|
+ ...insuranceForm.value,
|
|
|
+ pages: currentPage.value,
|
|
|
+ size: pageSize.value
|
|
|
+ }).then(res => {
|
|
|
+ if(res.code == 200) {
|
|
|
+ tableData.value = res.data.records
|
|
|
+ total.value = res.data.total
|
|
|
+ } else {
|
|
|
+ ElMessage({
|
|
|
+ message: res.msg,
|
|
|
+ type: 'warning'
|
|
|
+ })
|
|
|
+ }
|
|
|
+ })
|
|
|
+}
|
|
|
+// 保险公司列表
|
|
|
+let bankOption = ref([])
|
|
|
+const initCompany = () => {
|
|
|
+ api.insuranceApi.leftList('').then(res => {
|
|
|
+ if(res.code == 200) {
|
|
|
+ bankOption.value = res.data
|
|
|
+ } else {
|
|
|
+ ElMessage({
|
|
|
+ message: res.msg,
|
|
|
+ type: 'warning'
|
|
|
+ })
|
|
|
+ }
|
|
|
+ })
|
|
|
+}
|
|
|
+
|
|
|
+// 归属
|
|
|
+let deptOption = ref([])
|
|
|
+const cascaderProps = {
|
|
|
+ value: 'id',
|
|
|
+ label: 'name',
|
|
|
+ children: 'children',
|
|
|
+ checkStrictly: true,
|
|
|
+}
|
|
|
+const initDept = () => {
|
|
|
+ api.insuranceApi.getDeptTree({ sysCode: localStorage.getItem('sysCode')}).then(res => {
|
|
|
+ if(res.code == 200) {
|
|
|
+ deptOption.value = res.data
|
|
|
+ } else {
|
|
|
+ ElMessage({
|
|
|
+ message: res.msg,
|
|
|
+ type: 'warning'
|
|
|
+ })
|
|
|
+ }
|
|
|
+ })
|
|
|
+}
|
|
|
+
|
|
|
+onMounted(() => {
|
|
|
+ initData()
|
|
|
+ initCompany()
|
|
|
+ initDept()
|
|
|
+})
|
|
|
|
|
|
</script>
|
|
|
|
|
|
<style scoped lang="scss">
|
|
|
-
|
|
|
+.insuranceAccount{
|
|
|
+ width: 100%;
|
|
|
+ height: 100%;
|
|
|
+ background: white;
|
|
|
+ padding: 20px;
|
|
|
+ .btns{
|
|
|
+ margin: 10px 0 20px;
|
|
|
+ }
|
|
|
+ .paginationBox{
|
|
|
+ display: flex;
|
|
|
+ justify-content: center;
|
|
|
+ margin-top: 20px;
|
|
|
+ }
|
|
|
+ .insuranceItem{
|
|
|
+ padding: 5px 10px;
|
|
|
+ border-radius: 5px;
|
|
|
+ cursor: pointer;
|
|
|
+ margin: 10px 0;
|
|
|
+ &:hover{
|
|
|
+ background: #00a3ec;
|
|
|
+ color: white;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ .tableState{
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+ .state-use{
|
|
|
+ width: 6px;
|
|
|
+ height: 6px;
|
|
|
+ background: #00a3ec;
|
|
|
+ border-radius: 50%;
|
|
|
+ margin-right: 10px;
|
|
|
+ }
|
|
|
+ .state-noUse{
|
|
|
+ width: 6px;
|
|
|
+ height: 6px;
|
|
|
+ background: red;
|
|
|
+ border-radius: 50%;
|
|
|
+ margin-right: 10px;
|
|
|
+ }
|
|
|
+ .state-noKnow{
|
|
|
+ width: 6px;
|
|
|
+ height: 6px;
|
|
|
+ background: orange;
|
|
|
+ border-radius: 50%;
|
|
|
+ margin-right: 10px;
|
|
|
+ }
|
|
|
+ }
|
|
|
+}
|
|
|
</style>
|