|
@@ -1,33 +1,88 @@
|
|
<template>
|
|
<template>
|
|
- <BasicTable @register="registerTable">
|
|
|
|
- <template #toolbar>
|
|
|
|
- <!-- <a-button type="primary" @click="exportExcel"> 导出1</a-button> -->
|
|
|
|
- </template>
|
|
|
|
- <template #action="{ record }">
|
|
|
|
- <TableAction
|
|
|
|
- stopButtonPropagation
|
|
|
|
- :actions="[
|
|
|
|
- {
|
|
|
|
- label: '同屏',
|
|
|
|
- icon: 'akar-icons:double-check',
|
|
|
|
- },
|
|
|
|
- {
|
|
|
|
- label: '删除',
|
|
|
|
- icon: 'ic:outline-delete-outline',
|
|
|
|
- color: 'error',
|
|
|
|
- popConfirm: {
|
|
|
|
- title: '是否删除?',
|
|
|
|
- confirm: handleDelete.bind(null, record),
|
|
|
|
- placement: 'topLeft',
|
|
|
|
- },
|
|
|
|
- },
|
|
|
|
- ]"
|
|
|
|
- />
|
|
|
|
- </template>
|
|
|
|
- </BasicTable>
|
|
|
|
|
|
+ <PageWrapper contentBackground>
|
|
|
|
+ <!-- <template #footer>
|
|
|
|
+ <a-tabs v-model:activeKey="tableType" @change="changeTable">
|
|
|
|
+ <a-tab-pane :key="0" tab="四维看看" />
|
|
|
|
+ <a-tab-pane :key="1" tab="四维看见" />
|
|
|
|
+ <a-tab-pane :key="2" tab="四维双目深时" />
|
|
|
|
+ <a-tab-pane :key="3" tab="四维双目Lite" /> </a-tabs
|
|
|
|
+ ></template> -->
|
|
|
|
+ <div class="desc-wrap-BasicTable">
|
|
|
|
+ <BasicTable @register="registerTable">
|
|
|
|
+ <template #toolbar>
|
|
|
|
+ <a-button type="primary" @click="back">返回</a-button>
|
|
|
|
+ </template>
|
|
|
|
+
|
|
|
|
+ <template #action="{ record }">
|
|
|
|
+ <TableAction
|
|
|
|
+ stopButtonPropagation
|
|
|
|
+ :actions="[
|
|
|
|
+ {
|
|
|
|
+ label: '迁移',
|
|
|
|
+ //icon: 'bx:move-horizontal',
|
|
|
|
+
|
|
|
|
+ onClick: handleMove.bind(null, record),
|
|
|
|
+ },
|
|
|
|
+ {
|
|
|
|
+ label: '下载',
|
|
|
|
+ disabled:
|
|
|
|
+ (record.payStatus - 0 != 1 && record.status - 0 == 0) ||
|
|
|
|
+ (record.payStatus - 0 != 1 && record.status - 0 == -1),
|
|
|
|
+ //icon: 'carbon:download',
|
|
|
|
+ onClick: handleDownload.bind(null, record),
|
|
|
|
+ },
|
|
|
|
+ {
|
|
|
|
+ label: '重算',
|
|
|
|
+ disabled: record.payStatus != 1 && record.status - 0 == 0,
|
|
|
|
+ //icon: 'bx:reset',
|
|
|
|
+ popConfirm: {
|
|
|
|
+ title: '是否重算?',
|
|
|
|
+ confirm: handleReset.bind(null, record),
|
|
|
|
+ },
|
|
|
|
+ },
|
|
|
|
+ {
|
|
|
|
+ label: '复制',
|
|
|
|
+ disabled:
|
|
|
|
+ (record.payStatus != 1 && record.status - 0 == 0) ||
|
|
|
|
+ (record.payStatus != 1 && record.status - 0 == -1),
|
|
|
|
+ //icon: 'akar-icons:copy',
|
|
|
|
+ //onClick: handleCopy.bind(null, record),
|
|
|
|
+ popConfirm: {
|
|
|
|
+ title: '是否复制?',
|
|
|
|
+ confirm: handleCopy.bind(null, record),
|
|
|
|
+ },
|
|
|
|
+ },
|
|
|
|
+ {
|
|
|
|
+ label: '删除',
|
|
|
|
+ //icon: 'ic:outline-delete-outline',
|
|
|
|
+ color: 'error',
|
|
|
|
+ //onClick: handleDelete.bind(null, record),
|
|
|
|
+ popConfirm: {
|
|
|
|
+ title: '是否删除?',
|
|
|
|
+ confirm: handleDelete.bind(null, record),
|
|
|
|
+ placement: 'topRight',
|
|
|
|
+ },
|
|
|
|
+ },
|
|
|
|
+ ]"
|
|
|
|
+ />
|
|
|
|
+ </template>
|
|
|
|
+ </BasicTable>
|
|
|
|
+ </div>
|
|
|
|
+ <DownLoadModal
|
|
|
|
+ :downloadOption="downloadOption"
|
|
|
|
+ @cancel="afterClose"
|
|
|
|
+ @register="registerDownModal"
|
|
|
|
+ @update="reload"
|
|
|
|
+ cancelText="取消下载"
|
|
|
|
+ okText="下载"
|
|
|
|
+ @cancelDownload="cancelDownload"
|
|
|
|
+ :okButtonProps="{ disabled: canDownload }"
|
|
|
|
+ />
|
|
|
|
+ <MoveModal @register="registerMoveModal" />
|
|
|
|
+ </PageWrapper>
|
|
</template>
|
|
</template>
|
|
<script lang="ts">
|
|
<script lang="ts">
|
|
- import { defineComponent, h, reactive, toRefs } from 'vue';
|
|
|
|
|
|
+ import { defineComponent, h, reactive, toRefs, ref } from 'vue';
|
|
import {
|
|
import {
|
|
BasicTable,
|
|
BasicTable,
|
|
useTable,
|
|
useTable,
|
|
@@ -37,33 +92,47 @@
|
|
FormProps,
|
|
FormProps,
|
|
} from '/@/components/Table';
|
|
} from '/@/components/Table';
|
|
import { PageWrapper } from '/@/components/Page';
|
|
import { PageWrapper } from '/@/components/Page';
|
|
|
|
+ import DownLoadModal from './modal/DownLoadModal.vue';
|
|
|
|
+ import MoveModal from './modal/MoveModal.vue';
|
|
import { Time } from '/@/components/Time';
|
|
import { Time } from '/@/components/Time';
|
|
- import { Descriptions } from 'ant-design-vue';
|
|
|
|
|
|
+ import { Descriptions, Tabs, Progress } from 'ant-design-vue';
|
|
import { useI18n } from '/@/hooks/web/useI18n';
|
|
import { useI18n } from '/@/hooks/web/useI18n';
|
|
import { useMessage } from '/@/hooks/web/useMessage';
|
|
import { useMessage } from '/@/hooks/web/useMessage';
|
|
- import { Switch } from 'ant-design-vue';
|
|
|
|
|
|
+ import { useModal } from '/@/components/Modal';
|
|
|
|
+ import { useRouter } from 'vue-router';
|
|
import {
|
|
import {
|
|
operateSceneList,
|
|
operateSceneList,
|
|
sceneMove,
|
|
sceneMove,
|
|
sceneDelete,
|
|
sceneDelete,
|
|
sceneReset,
|
|
sceneReset,
|
|
sceneDownload,
|
|
sceneDownload,
|
|
|
|
+ checkDownLoad,
|
|
|
|
+ downloadProcess,
|
|
sceneCopy,
|
|
sceneCopy,
|
|
|
|
+ rebuildScene,
|
|
} from '/@/api/operate';
|
|
} from '/@/api/operate';
|
|
import { message } from 'ant-design-vue';
|
|
import { message } from 'ant-design-vue';
|
|
|
|
+ import { func } from 'vue-types';
|
|
export default defineComponent({
|
|
export default defineComponent({
|
|
components: {
|
|
components: {
|
|
|
|
+ DownLoadModal,
|
|
|
|
+ MoveModal,
|
|
BasicTable,
|
|
BasicTable,
|
|
TableAction,
|
|
TableAction,
|
|
PageWrapper,
|
|
PageWrapper,
|
|
- TableImg,
|
|
|
|
[Descriptions.name]: Descriptions,
|
|
[Descriptions.name]: Descriptions,
|
|
[Descriptions.Item.name]: Descriptions.Item,
|
|
[Descriptions.Item.name]: Descriptions.Item,
|
|
|
|
+
|
|
|
|
+ [Tabs.name]: Tabs,
|
|
|
|
+ [Tabs.TabPane.name]: Tabs.TabPane,
|
|
},
|
|
},
|
|
setup() {
|
|
setup() {
|
|
const { t } = useI18n();
|
|
const { t } = useI18n();
|
|
|
|
+ const router = useRouter();
|
|
|
|
+ const companyId: Number = router.currentRoute.value.params.id - 0;
|
|
const { createMessage, createConfirm } = useMessage();
|
|
const { createMessage, createConfirm } = useMessage();
|
|
-
|
|
|
|
|
|
+ const tableType = ref<Recordable>(0); //0看看 、1看见、2深时
|
|
|
|
+ const tabList = ref<Array>(['四维看看', '四维看见', '四维双目深时', '四维双目Lite']);
|
|
const columns: BasicColumn[] = [
|
|
const columns: BasicColumn[] = [
|
|
{
|
|
{
|
|
title: '场景标题',
|
|
title: '场景标题',
|
|
@@ -76,45 +145,61 @@
|
|
ellipsis: false,
|
|
ellipsis: false,
|
|
width: 80,
|
|
width: 80,
|
|
},
|
|
},
|
|
-
|
|
|
|
{
|
|
{
|
|
- title: 'sn码',
|
|
|
|
- dataIndex: 'snCode',
|
|
|
|
|
|
+ title: '拍摄时间',
|
|
|
|
+ dataIndex: 'createTime',
|
|
width: 180,
|
|
width: 180,
|
|
|
|
+ customRender: ({ record }) => {
|
|
|
|
+ return (
|
|
|
|
+ record.createTime &&
|
|
|
|
+ h(Time, {
|
|
|
|
+ value: record.createTime,
|
|
|
|
+ mode: 'datetime',
|
|
|
|
+ })
|
|
|
|
+ );
|
|
|
|
+ },
|
|
},
|
|
},
|
|
{
|
|
{
|
|
- title: '方案标题',
|
|
|
|
- dataIndex: 'sceneSize',
|
|
|
|
- width: 80,
|
|
|
|
|
|
+ title: '计算完成时间',
|
|
|
|
+ dataIndex: 'amount',
|
|
|
|
+ width: 180,
|
|
|
|
+ customRender: ({ record }) => {
|
|
|
|
+ return (
|
|
|
|
+ record.createTime &&
|
|
|
|
+ h(Time, {
|
|
|
|
+ value: record.createTime,
|
|
|
|
+ mode: 'datetime',
|
|
|
|
+ })
|
|
|
|
+ );
|
|
|
|
+ },
|
|
},
|
|
},
|
|
{
|
|
{
|
|
- title: '发布状态',
|
|
|
|
- dataIndex: 'sceneSize',
|
|
|
|
- width: 80,
|
|
|
|
|
|
+ title: 'sn码',
|
|
|
|
+ dataIndex: 'snCode',
|
|
|
|
+ width: 180,
|
|
},
|
|
},
|
|
{
|
|
{
|
|
- title: '是否精品',
|
|
|
|
- dataIndex: 'isCopy',
|
|
|
|
|
|
+ title: '场景大小',
|
|
|
|
+ dataIndex: 'sceneSize',
|
|
width: 80,
|
|
width: 80,
|
|
customRender: ({ record }) => {
|
|
customRender: ({ record }) => {
|
|
- return record.isCopy ? '是' : '否';
|
|
|
|
|
|
+ return h(
|
|
|
|
+ 'span',
|
|
|
|
+ { class: 'sceneSize' },
|
|
|
|
+ Math.ceil(record.sceneSize / 1024 / 1024) + 'M',
|
|
|
|
+ );
|
|
},
|
|
},
|
|
},
|
|
},
|
|
{
|
|
{
|
|
- title: '创建时间',
|
|
|
|
- dataIndex: 'copyTime',
|
|
|
|
- width: 180,
|
|
|
|
|
|
+ title: '是否复制',
|
|
|
|
+ dataIndex: 'isCopy',
|
|
|
|
+ width: 80,
|
|
customRender: ({ record }) => {
|
|
customRender: ({ record }) => {
|
|
- return record.copyTime
|
|
|
|
- ? h(Time, {
|
|
|
|
- value: record.copyTime,
|
|
|
|
- mode: 'datetime',
|
|
|
|
- })
|
|
|
|
- : '-';
|
|
|
|
|
|
+ return record.isCopy ? '是' : '否';
|
|
},
|
|
},
|
|
},
|
|
},
|
|
{
|
|
{
|
|
- title: '最新编辑时间',
|
|
|
|
|
|
+ title: '复制时间',
|
|
dataIndex: 'copyTime',
|
|
dataIndex: 'copyTime',
|
|
width: 180,
|
|
width: 180,
|
|
customRender: ({ record }) => {
|
|
customRender: ({ record }) => {
|
|
@@ -127,18 +212,46 @@
|
|
},
|
|
},
|
|
},
|
|
},
|
|
{
|
|
{
|
|
- title: '用户账号',
|
|
|
|
|
|
+ title: '绑定账号',
|
|
dataIndex: 'userName',
|
|
dataIndex: 'userName',
|
|
width: 100,
|
|
width: 100,
|
|
},
|
|
},
|
|
-
|
|
|
|
|
|
+ {
|
|
|
|
+ title: '浏览量',
|
|
|
|
+ dataIndex: 'viewCount',
|
|
|
|
+ width: 80,
|
|
|
|
+ },
|
|
|
|
+ {
|
|
|
|
+ title: '状态',
|
|
|
|
+ dataIndex: 'statusString',
|
|
|
|
+ width: 80,
|
|
|
|
+ customRender: ({ record }) => {
|
|
|
|
+ let str;
|
|
|
|
+ switch (record.status - 0) {
|
|
|
|
+ case 0:
|
|
|
|
+ str = '计算中';
|
|
|
|
+ break;
|
|
|
|
+ case 1:
|
|
|
|
+ str = '计算成功';
|
|
|
|
+ break;
|
|
|
|
+ case -2:
|
|
|
|
+ str = '计算成功';
|
|
|
|
+ break;
|
|
|
|
+ case -1:
|
|
|
|
+ str = '计算失败';
|
|
|
|
+ break;
|
|
|
|
+ }
|
|
|
|
+ return record.payStatus == 1 ? '封存' : str;
|
|
|
|
+ },
|
|
|
|
+ },
|
|
{
|
|
{
|
|
title: '操作',
|
|
title: '操作',
|
|
dataIndex: 'action',
|
|
dataIndex: 'action',
|
|
slots: { customRender: 'action' },
|
|
slots: { customRender: 'action' },
|
|
ifShow: true,
|
|
ifShow: true,
|
|
fixed: 'right',
|
|
fixed: 'right',
|
|
- width: 110,
|
|
|
|
|
|
+ flag: 'ACTION',
|
|
|
|
+ width: 250,
|
|
},
|
|
},
|
|
];
|
|
];
|
|
const searchForm: Partial<FormProps> = {
|
|
const searchForm: Partial<FormProps> = {
|
|
@@ -158,7 +271,7 @@
|
|
},
|
|
},
|
|
{
|
|
{
|
|
field: 'snCode',
|
|
field: 'snCode',
|
|
- label: '方案名称',
|
|
|
|
|
|
+ label: 'sn码',
|
|
component: 'Input',
|
|
component: 'Input',
|
|
componentProps: {
|
|
componentProps: {
|
|
maxLength: 100,
|
|
maxLength: 100,
|
|
@@ -170,7 +283,7 @@
|
|
},
|
|
},
|
|
{
|
|
{
|
|
field: 'userName',
|
|
field: 'userName',
|
|
- label: '用户账号',
|
|
|
|
|
|
+ label: '绑定账号',
|
|
component: 'Input',
|
|
component: 'Input',
|
|
componentProps: {
|
|
componentProps: {
|
|
maxLength: 100,
|
|
maxLength: 100,
|
|
@@ -182,12 +295,17 @@
|
|
},
|
|
},
|
|
],
|
|
],
|
|
};
|
|
};
|
|
|
|
+ function cancelDownload() {
|
|
|
|
+ downloadOption.value = {};
|
|
|
|
+ }
|
|
|
|
+ const [registerDownModal, { openModal: openDownModal }] = useModal();
|
|
|
|
+ const [registerMoveModal, { openModal: openMoveModal }] = useModal();
|
|
const [registerTable, { reload }] = useTable({
|
|
const [registerTable, { reload }] = useTable({
|
|
api: operateSceneList,
|
|
api: operateSceneList,
|
|
- title: '四维深时场景列表',
|
|
|
|
|
|
+ // title: `场景列表`,
|
|
// titleHelpMessage: ['已启用expandRowByClick', '已启用stopButtonPropagation'],
|
|
// titleHelpMessage: ['已启用expandRowByClick', '已启用stopButtonPropagation'],
|
|
columns: columns,
|
|
columns: columns,
|
|
- searchInfo: { type: 1 },
|
|
|
|
|
|
+ searchInfo: { companyId },
|
|
useSearchForm: true,
|
|
useSearchForm: true,
|
|
formConfig: searchForm,
|
|
formConfig: searchForm,
|
|
showTableSetting: true,
|
|
showTableSetting: true,
|
|
@@ -200,9 +318,35 @@
|
|
},
|
|
},
|
|
canResize: false,
|
|
canResize: false,
|
|
});
|
|
});
|
|
|
|
+ function changeTable(val: string) {
|
|
|
|
+ tableType.value = val;
|
|
|
|
+ reload();
|
|
|
|
+ }
|
|
|
|
+ async function handleCopy(record: Recordable) {
|
|
|
|
+ createConfirm({
|
|
|
|
+ title: '复制场景',
|
|
|
|
+ content: '复制场景,场景归属在原相机下。<br/>确定要复制场景吗?',
|
|
|
|
+ onOk: async () => {
|
|
|
|
+ sceneCopy({ num: record.num })
|
|
|
|
+ .then(() => {
|
|
|
|
+ message.success({
|
|
|
|
+ content: '删除成功',
|
|
|
|
+ });
|
|
|
|
+ })
|
|
|
|
+ .catch(() => {
|
|
|
|
+ message.success({
|
|
|
|
+ content: '删除失败',
|
|
|
|
+ });
|
|
|
|
+ });
|
|
|
|
+ },
|
|
|
|
+ });
|
|
|
|
+ }
|
|
async function handleDelete(record: Recordable) {
|
|
async function handleDelete(record: Recordable) {
|
|
console.log('handleDelete', record);
|
|
console.log('handleDelete', record);
|
|
-
|
|
|
|
|
|
+ // createConfirm({
|
|
|
|
+ // title: '删除',
|
|
|
|
+ // content: '确定要删除场景吗?',
|
|
|
|
+ // onOk: async () => {
|
|
sceneDelete({ num: record.num })
|
|
sceneDelete({ num: record.num })
|
|
.then(() => {
|
|
.then(() => {
|
|
message.success({
|
|
message.success({
|
|
@@ -216,43 +360,122 @@
|
|
content: '删除失败',
|
|
content: '删除失败',
|
|
});
|
|
});
|
|
});
|
|
});
|
|
|
|
+ // },
|
|
|
|
+ // });
|
|
}
|
|
}
|
|
async function handleMove(record: Recordable) {
|
|
async function handleMove(record: Recordable) {
|
|
- sceneMove({ snCode: record.snCode, num: record.num })
|
|
|
|
- .then(() => {
|
|
|
|
- message.success({
|
|
|
|
- content: '迁移成功',
|
|
|
|
- });
|
|
|
|
- })
|
|
|
|
- .catch(() => {
|
|
|
|
- message.success({
|
|
|
|
- content: '迁移失败',
|
|
|
|
- });
|
|
|
|
- });
|
|
|
|
|
|
+ openMoveModal(true, {
|
|
|
|
+ ...record,
|
|
|
|
+ });
|
|
|
|
+ // sceneMove({ snCode: record.snCode, num: record.num })
|
|
|
|
+ // .then(() => {
|
|
|
|
+ // message.success({
|
|
|
|
+ // content: '迁移成功',
|
|
|
|
+ // });
|
|
|
|
+ // })
|
|
|
|
+ // .catch(() => {
|
|
|
|
+ // message.success({
|
|
|
|
+ // content: '迁移失败',
|
|
|
|
+ // });
|
|
|
|
+ // });
|
|
}
|
|
}
|
|
|
|
+ let timer: null = ref(null);
|
|
|
|
+ const downloadOption = ref<Object>({});
|
|
|
|
+ const canDownload = ref<boolean>(true);
|
|
function handleDownload(record: Recordable) {
|
|
function handleDownload(record: Recordable) {
|
|
console.log('handleDownload', record);
|
|
console.log('handleDownload', record);
|
|
|
|
+
|
|
|
|
+ checkDownLoad({ num: record.num }).then((res) => {
|
|
|
|
+ console.log(res);
|
|
|
|
+ if (res.downloadStatus == 0) {
|
|
|
|
+ // 未下载过,需要打包
|
|
|
|
+ sceneDownload({ num: record.num }).then((res) => {
|
|
|
|
+ console.log(res);
|
|
|
|
+ openDownModal(true, {
|
|
|
|
+ ...record,
|
|
|
|
+ });
|
|
|
|
+ if (res.downloadStatus == 1) {
|
|
|
|
+ if (timer.value) {
|
|
|
|
+ afterClose();
|
|
|
|
+ }
|
|
|
|
+ timer.value = setInterval(() => {
|
|
|
|
+ downloadProcess({ num: record.num }).then((res) => {
|
|
|
|
+ if (res.percent >= 100) {
|
|
|
|
+ canDownload.value = false;
|
|
|
|
+ afterClose();
|
|
|
|
+ }
|
|
|
|
+ downloadOption.value = res;
|
|
|
|
+ console.log(res);
|
|
|
|
+ });
|
|
|
|
+ }, 1000);
|
|
|
|
+ }
|
|
|
|
+ });
|
|
|
|
+ } else {
|
|
|
|
+ }
|
|
|
|
+ });
|
|
|
|
+ }
|
|
|
|
+ function afterClose() {
|
|
|
|
+ clearInterval(timer.value);
|
|
|
|
+ timer.value = null;
|
|
}
|
|
}
|
|
function handleReset(record: Recordable) {
|
|
function handleReset(record: Recordable) {
|
|
console.log('handleReset', record);
|
|
console.log('handleReset', record);
|
|
|
|
+ rebuildScene({ num: record.num })
|
|
|
|
+ .then(() => {
|
|
|
|
+ message.success({
|
|
|
|
+ content: '操作成功',
|
|
|
|
+ });
|
|
|
|
+ reload();
|
|
|
|
+ })
|
|
|
|
+ .catch(() => {});
|
|
|
|
+ }
|
|
|
|
+ function back() {
|
|
|
|
+ router.push('/customer/index');
|
|
}
|
|
}
|
|
- // function exportExcel() {
|
|
|
|
- // createConfirm({
|
|
|
|
- // iconType: 'warning',
|
|
|
|
- // title: () => h('span', '温馨提示'),
|
|
|
|
- // content: () => h('span', '确定当前标签下的订单记录?'),
|
|
|
|
- // onOk: async () => {
|
|
|
|
- // // await DownExport();
|
|
|
|
- // },
|
|
|
|
- // });
|
|
|
|
- // }
|
|
|
|
return {
|
|
return {
|
|
registerTable,
|
|
registerTable,
|
|
handleDelete,
|
|
handleDelete,
|
|
|
|
+ handleCopy,
|
|
handleMove,
|
|
handleMove,
|
|
handleDownload,
|
|
handleDownload,
|
|
handleReset,
|
|
handleReset,
|
|
|
|
+ tableType,
|
|
|
|
+ changeTable,
|
|
|
|
+ t,
|
|
|
|
+ openDownModal,
|
|
|
|
+ registerDownModal,
|
|
|
|
+ registerMoveModal,
|
|
|
|
+ afterClose,
|
|
|
|
+ timer,
|
|
|
|
+ canDownload,
|
|
|
|
+ downloadOption,
|
|
|
|
+ cancelDownload,
|
|
|
|
+ back,
|
|
};
|
|
};
|
|
},
|
|
},
|
|
});
|
|
});
|
|
</script>
|
|
</script>
|
|
|
|
+<style lang="less" scoped>
|
|
|
|
+ // .tableHeader {
|
|
|
|
+ // height: 50px;
|
|
|
|
+ // display: flex;
|
|
|
|
+ // align-items: center;
|
|
|
|
+
|
|
|
|
+ // .item {
|
|
|
|
+ // font-size: 14px;
|
|
|
|
+ // color: #666;
|
|
|
|
+ // margin-right: 10px;
|
|
|
|
+ // cursor: pointer;
|
|
|
|
+ // &.active {
|
|
|
|
+ // font-weight: bold;
|
|
|
|
+ // color: #222;
|
|
|
|
+ // }
|
|
|
|
+ // }
|
|
|
|
+ // }
|
|
|
|
+ .desc-wrap-BasicTable {
|
|
|
|
+ background-color: #f0f2f5;
|
|
|
|
+ .vben-basic-table-form-container {
|
|
|
|
+ padding: 0;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+</style>
|