| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701 |
- <template>
- <div>
- <a-button @click="addClass" :disabled="props.disabled" type="primary" size="samll" class="mr-10">新建</a-button>
- <a-drawer
- ref="drawer"
- v-model:open="modeVisible"
- rootClassName="customNotiveClass"
- placement="right"
- :width="'90%'"
- :closable="false"
- title="新建装备资源"
-
- >
- <div class="detail__panel" v-if="modeVisible">
- <a-row :gutter="16">
- <a-col :span="10">
- <a-row>
- <a-card title="设置装备资源" :bordered="false" style="margin-bottom: 10px;">
- <a-form ref="formRef" :model="from" layout="vertical">
- <a-col :span="24">
- <a-form-item label="标题" name="title" :rules="[{ required: true, message: '请输入标题'}]">
- <a-input v-model:value="from.title"></a-input>
- </a-form-item>
- </a-col>
- <a-col :span="24">
- <a-form-item label="分类" name="sat_sharematerial_classids" :rules="[{ required: true, message: '请选择分类'}]">
- <a-cascader
- v-model:value="from.sat_sharematerial_classids"
- :options="classList()"
- :fieldNames="{label:'classname',value:'sat_sharematerial_classid',children:'children'}"
- placeholder="选择分类"
- change-on-select
- :multiple="true"
- :show-checked-strategy="Cascader.SHOW_CHILD"
- />
- </a-form-item>
- </a-col>
- <a-col :span="24">
- <a-form-item label="类型" name="type" :rules="[{ required: true, message: '请选择类型',trigger:'change'}]">
- <a-radio-group v-model:value="from.type">
- <a-radio :value="1">图片</a-radio>
- <a-radio :value="2">视频</a-radio>
- <a-radio :value="4">文档</a-radio>
- </a-radio-group>
- </a-form-item>
- </a-col>
- <a-col :span="24">
- <a-form-item label="排序" name="sequence">
- <a-input v-model:value="from.sequence"></a-input>
- </a-form-item>
- </a-col>
- <a-col :span="24">
- <a-form-item label="封面图" name="attinfos">
- <Upload
- :bindData="{ownerid:from.sat_sharematerialid,ownertable:'sat_sharematerial',usetype:'avatar'}"
- @fileChange="from.attinfos='1'"
- :multiple="false"
- accept="image/png, image/jpeg"
- ref="upload"
- ></Upload>
-
- </a-form-item>
- </a-col>
- <a-col :span="24" v-if="from.type==1">
- <a-form-item label="是否画册">
- <a-radio-group v-model:value="from.ispicture">
- <a-radio :value="1">是</a-radio>
- <a-radio :value="0">否</a-radio>
- </a-radio-group>
- </a-form-item>
- </a-col>
- <a-col :span="24" v-if="from.type != '1'">
- <a-form-item label="是否可下载">
- <a-radio-group v-model:value="from.candownload">
- <a-radio :value="1">是</a-radio>
- <a-radio :value="0">否</a-radio>
- </a-radio-group>
- </a-form-item>
- </a-col>
- <!-- <a-col :span="24" v-if="from.type == '1'">
- <a-form-item label="是否二维码">
- <a-radio-group v-model:value="from.isqrcode">
- <a-radio :value="1">有二维码</a-radio>
- <a-radio :value="0">无二维码</a-radio>
- </a-radio-group>
- </a-form-item>
- </a-col> -->
- <a-col :span="24" v-if="from.isqrcode && from.type == '1'">
- <a-form-item label="扫码地址" name="qrcodecontent" :rules="[{ required: true, message: '请输入地址',trigger:'change'}]">
- <a-input-group compact>
- <a-input v-model:value="from.qrcodecontent" style="width: calc(100% - 116px)" />
- <a-button type="primary" @click="$refs.selectProduct.modeVisible=true">从产品添加</a-button>
- </a-input-group>
- </a-form-item>
- <SelectModel
- wdith="90%"
- ref="selectProduct"
- rowKey="itemid"
- :param="selectProductParam"
- :columns="utils.TBLayout('productList')" title="添加扫码地址"
- :isSelect="false"
- :custom="true"
- >
- <template #titleLeft>
- <div style="display: flex;align-items: center;">
- <span style="width:50px">类型:</span>
- <a-select
- style="width: 150px;"
- ref="select"
- v-model:value="selectProductParam.content.type"
- @change="$refs.selectProduct.list.listData()"
- >
- <a-select-option :value="3">单品</a-select-option>
- <a-select-option :value="1">效果图</a-select-option>
- <a-select-option :value="2">设计实景</a-select-option>
- </a-select>
- </div>
-
- </template>
- <template #custom="{data}">
- <template v-if="data.column.dataIndex == 'attinfos'">
- <a-image v-if="data.record.attinfos.length" :src=" data.record.attinfos[0].url" style="width:100px"></a-image>
- </template>
- <template v-else-if="data.column.dataIndex == 'operation'">
- <CustomButton type="link" @click="selectProductFun(data)">选择</CustomButton>
- </template>
- <template v-else>{{ data.record[data.column.dataIndex] }}</template>
- </template>
- <template v-slot:slot1>
-
- </template>
- </SelectModel>
- </a-col>
- <!-- <a-col :span="24">
- <a-form-item label="推荐">
- <a-checkbox-group v-model:value="from.candownloadArr" style="width: 100%">
- <a-checkbox value="canshared_c">支持对外</a-checkbox>
- <a-checkbox value="candownload_c">支持对外下载</a-checkbox>
- </a-checkbox-group>
- </a-form-item>
- </a-col> -->
- <a-col :span="24">
- <a-form-item label="状态">
- <a-radio-group v-model:value="from.status">
- <a-radio value="新建">新建</a-radio>
- <a-radio value="发布">发布</a-radio>
- </a-radio-group>
- </a-form-item>
- </a-col>
- </a-form>
- </a-card>
- </a-row>
- </a-col>
- <a-col :span="14" style="margin-bottom:60px">
- <a-card title="权限设置" :bordered="false">
- <a-row>
- <a-col :span="24" style="margin-bottom:20px">
- <div class="flex-center">
- <span style="width:100px" class="redlitt">权限类型:</span>
- <a-select v-model:value="from.authtype" placeholder="请选择权限类型">
- <a-select-option :value="1">选中显示</a-select-option>
- <a-select-option :value="0">选中不显示</a-select-option>
- </a-select>
- </div>
- </a-col>
- <span style="width:240px" class="redlitt">浏览权限:(至少选择一个范围)</span>
- <a-col :span="24" style="margin:20px 0 20px 20px">
- <div class="flex-center">
- <span style="width:50px">角色:</span>
- <a-select v-model:value="from.role" placeholder="请选择角色" mode="tags">
- <a-select-option v-for="item in roleObject.roleArr" :key="item.roleid"
- :value="item.roleid">
- {{ item.rolename + '-' + item. remarks}}
- </a-select-option>
- </a-select>
- </div>
- </a-col>
- <a-col :span="24" style="margin:0 0 20px 20px;padding-right: 20px">
- <div class="flex-center mt-10">
- <span style="width:50px">部门:</span>
- <a-popover trigger="click" placement="bottom" :open="clicked">
- <template #content>
- <a-tree
- style="width:500px"
- :tree-data="roleObject.depArr"
- :field-names="fieldNames"
- defaultExpandAll
- >
- <template #title="node">
- <div class="custom-tree-node">
- <span>{{ node.depname }}</span>
- <a-button type="link" size="small" @click="addData('departmentids',[node],() =>{$refs.depTable.listData()})">选择</a-button>
- </div>
- </template>
- </a-tree>
- </template>
- <a-button type="primary" size="samll">添加</a-button>
- </a-popover>
- </div>
- <normalTable :is-select="false" ref="depTable" style="width:100%" size="small" :columns="utils.TBLayout('depTable')" :param="{id:20240402101602,content:{ownertable:'sat_sharematerial',ownerid:from.sat_sharematerialid,pageNumber:1,pageSize:20,where:{}}}">
- <template #tb_cell="{data}">
- <template v-if="data.column.dataIndex === 'operation'">
- <a-popconfirm
- title="确认删除当前部门吗?"
- ok-text="确认"
- cancel-text="取消"
- @confirm="delData('departmentids',data,() =>{$refs.depTable.listData()})"
- >
- <a-button type="link" size="samll">删除</a-button>
- </a-popconfirm>
- </template>
- </template>
- </normalTable>
- </a-col>
- <a-col :span="24" style="margin:0 0 20px 20px;padding-right: 20px">
- <div class="flex-center mt-10">
- <span style="width:50px">人员:</span>
- <SelectModel
- ref="selectHrid"
- @selectRowData="$event => addData('hrids',$event,() =>{$refs.hridTable.listData()})"
- rowKey="hrid"
- :param="{id:20240312145602,content:{pageNumber:1,pageSize:20,where:{}}}"
- :columns="utils.TBLayout('staffTable').splice(0,utils.TBLayout('staffTable').length - 1)" title="选择人员"
- >
- <template #slot1>
- <a-button size="middle" type="primary" @click="$refs.selectHrid.modeVisible=true">添加</a-button>
- </template>
- <template #titleLeft="{data}">
- <uploadAllData
- dataType="人员"
- :total="data.total"
- @handlePullApi="hridHandlePullApi"
- @handleUploadApi="hridHandleUploadApi"
- @onSuccess="$refs.hridTable.listData()"
- ></uploadAllData>
- </template>
- </SelectModel>
- </div>
- <normalTable :is-select="false" ref="hridTable" style="width:100%" size="small" :columns="utils.TBLayout('staffTable')" :param="{id:20240402101702,content:{ownertable:'sat_sharematerial',ownerid:from.sat_sharematerialid,pageNumber:1,pageSize:20,where:{}}}">
- <template #tb_cell="{data}">
- <template v-if="data.column.dataIndex === 'operation'">
- <a-popconfirm
- title="确认删除当前人员吗?"
- ok-text="确认"
- cancel-text="取消"
- @confirm="delData('hrids',data,() =>{$refs.hridTable.listData()})"
- >
- <a-button type="link" size="samll">删除</a-button>
- </a-popconfirm>
- </template>
- </template>
- </normalTable>
- </a-col>
- <a-col :span="24" style="margin:0 0 20px 20px;padding-right: 20px">
- <div class="flex-center mt-10">
- <span style="width:50px">区域:</span>
- <SelectModel
- ref="selectArea"
- @selectRowData="$event => addData('sa_saleareaids',$event,() =>{$refs.areaTable.listData()})"
- rowKey="sa_saleareaid"
- :param="{'classname': 'webmanage.sale.salearea.salearea',method:'query_area',content:{pageNumber:1,pageSize:20,where:{}}}"
- :columns="utils.TBLayout('areaTable').splice(0,utils.TBLayout('areaTable').length - 1)" title="选择区域"
- >
- <template v-slot:slot1>
- <a-button size="middle" type="primary" @click="$refs.selectArea.modeVisible=true">添加</a-button>
- </template>
- <template #titleLeft="{data}">
- <uploadAllData
- dataType="区域"
- :total="data.total"
- @handlePullApi="areaHandlePullApi"
- @handleUploadApi="areaHandleUploadApi"
- @onSuccess="$refs.areaTable.listData()"
- ></uploadAllData>
- </template>
- </SelectModel>
- </div>
- <normalTable :is-select="false" ref="areaTable" style="width:100%" size="small" :columns="utils.TBLayout('areaTable')" :param="{id:20240402101802,content:{ownertable:'sat_sharematerial',ownerid:from.sat_sharematerialid,pageNumber:1,pageSize:20,where:{}}}">
- <template #tb_cell="{data}">
- <template v-if="data.column.dataIndex === 'operation'">
- <a-popconfirm
- title="确认删除当前区域吗?"
- ok-text="确认"
- cancel-text="取消"
- @confirm="delData('sa_saleareaids',data,() =>{$refs.areaTable.listData()})"
- >
- <a-button type="link" size="samll">删除</a-button>
- </a-popconfirm>
- </template>
- </template>
- </normalTable>
- </a-col>
- <a-col :span="24" style="margin:0 0 20px 20px;padding-right: 20px">
- <div class="flex-center mt-10">
- <span style="width:80px">经销商:</span>
- <SelectModel
- ref="selectEnterprise"
- @selectRowData="$event => addData('sys_enterpriseids',$event,() =>{$refs.enterpriseTable.listData()})"
- rowKey="sys_enterpriseid"
- :param="{id:20240312151602,content:{pageNumber:1,pageSize:20,where:{}}}"
- :columns="utils.TBLayout('enterpriseTable').splice(0,utils.TBLayout('enterpriseTable').length - 1)" title="选择经销商"
- >
- <template v-slot:slot1>
- <a-button size="middle" type="primary" @click="$refs.selectEnterprise.modeVisible=true">添加</a-button>
- </template>
- <template #titleLeft="{data}">
- <uploadAllData
- dataType="经销商"
- :total="data.total"
- @handlePullApi="enterpriseHandlePullApi"
- @handleUploadApi="enterpriseHandleUploadApi"
- @onSuccess="$refs.enterpriseTable.listData()"
- ></uploadAllData>
- </template>
- </SelectModel>
- </div>
- <normalTable :is-select="false" ref="enterpriseTable" style="width:100%" size="small" :columns="utils.TBLayout('enterpriseTable')" :param="{id:20240402101902,content:{ownertable:'sat_sharematerial',ownerid:from.sat_sharematerialid,pageNumber:1,pageSize:20,where:{}}}">
- <template #tb_cell="{data}">
- <template v-if="data.column.dataIndex === 'operation'">
- <a-popconfirm
- title="确认删除当前经销商吗?"
- ok-text="确认"
- cancel-text="取消"
- @confirm="delData('sys_enterpriseids',data,() =>{$refs.enterpriseTable.listData()})"
- >
- <a-button type="link" size="samll">删除</a-button>
- </a-popconfirm>
- </template>
- </template>
- </normalTable>
- </a-col>
- </a-row>
- </a-card>
- </a-col>
- </a-row>
- <div class="fixed__btn__panel">
- <CustomButton type="primary" size="samll" @click="submit" style="margin-right: 10px">保 存</CustomButton>
- <a-button @click="modeVisible=false" size="samll" class="mr-10">取 消</a-button>
- </div>
- </div>
- </a-drawer>
- </div>
-
-
- </template>
- <script setup>
- import {ref, defineProps, defineEmits,watch, nextTick, onMounted, inject} from 'vue'
- import Api from '@/api/api'
- import utils from '@/utils/utils'
- import { message, Modal } from 'ant-design-vue';
- import { useRouter } from "vue-router";
- import Upload from '@/MAR/assetsStore/detail/fileUpload.vue'
- import normalTable from '@/template/MARnormalTable/index.vue'
- import SelectModel from '@/components/selectModel/index2.vue'
- import { useAuthStore } from '@/stores/modules/auth'
- import uploadAllData from '@/components/uploadAllData/index.vue'
- import previewImage from '@/components/previewImage/index.vue'
- import {Cascader} from 'ant-design-vue'
- const router = useRouter()
- let emit = defineEmits(['back','onSuccess'])
- let props = defineProps(['disabled', 'selectedClass'])
- let formRef = ref()
- let classList = inject('classList')
- let modeVisible = ref(false)
- let from = ref({
- "sat_sharematerialid": 0,
- "title":"",
- "sat_sharematerial_classids":[],
- "type":1,//1:图片;2:视频;3:图文
- "sequence":'',
- "isqrcode":0,
- "qrcodecontent":"",
- "canshared_c":1,//支持对外
- "candownload":1,//是否可下载
- "candownload_c":1,//支持对外下载
- 'candownloadArr':[],
- "status":'',
- "role":[],
- "authtype":1,
- "ispicture":0
- })
- let fieldNames = {
- children: 'subdep',
- title: 'depname',
- key:'departmentid'
- }
- watch(() => modeVisible.value,(val) => {
- if (!val) {
- emit('back',from.value.sat_sharematerialid,save.value)
- save.value = false
- }
- })
- let selectProductParam = ref({
- "id": 20240420095702,
- "content": {
- "type": 1, //1,效果图,2:设计实景,3:单品
- "pageNumber": 1,
- "pageSize": 20,
- "where": {
- "condition": ""
- }
- },
- })
- let selectProduct = ref()
- const selectProductFun = (data) => {
- from.value.qrcodecontent = data.record.appleturl
- selectProduct.value.modeVisible = false
- formRef.value.validateFields()
- }
- //新建
- const addClass = async () => {
- // 计算分类路径
- const categoryPath = props.selectedClass && props.selectedClass.sat_sharematerial_classid
- ? findCategoryPath(classList(), props.selectedClass.sat_sharematerial_classid)
- : [useAuthStore().nowAccount.userid+'999'];
- const res = await Api.requested({
- "id": "20240407094502",
- "content": {
- "sat_sharematerialid": 0,
- "title":'',
- "sat_sharematerial_classids": [categoryPath],
- "type":1,//1:图片;2:视频;3:图文
- "sequence":'',
- "isqrcode":0,
- "qrcodecontent":"",
- "canshared_c":0,//支持对外
- "candownload":1,//是否可下载
- "candownload_c":0,//支持对外下载
- }
- })
- selectAllTable()
- // 先加载完整数据再展示抽屉,避免 queryNoticeMain 异步返回时覆盖用户在级联选择器中的操作
- await queryNoticeMain(res.data.sat_sharematerialid)
- modeVisible.value = true
- }
- //封面上传成功
- const uploadSuccess = async (res) => {
- from.value.cover = JSON.parse(res.attinfos).data
- }
- // 查找分类节点的完整路径(用于级联选择器)
- const findCategoryPath = (categories, targetId, path = []) => {
- for (let category of categories) {
- if (category.sat_sharematerial_classid === targetId) {
- return [...path, targetId];
- }
- if (category.children && category.children.length > 0) {
- const foundPath = findCategoryPath(category.children, targetId, [...path, category.sat_sharematerial_classid]);
- if (foundPath.length > 0) {
- return foundPath;
- }
- }
- }
- return [];
- }
- //通告详情
- const queryNoticeMain = async (id) => {
- const res = await Api.requested({
- "id": "20240407094602",
- "content": {
- "sat_sharematerialid": id
- }
- })
- console.log(id);
- from.value = Object.assign({}, from.value, res.data)
- // 如果有选中的分类,则保留选中的分类,否则使用默认值
- if (props.selectedClass && props.selectedClass.sat_sharematerial_classid) {
- // 查找完整的分类路径,确保级联选择器能正确显示
- const categoryPath = findCategoryPath(classList(), props.selectedClass.sat_sharematerial_classid);
- from.value.sat_sharematerial_classids = [categoryPath];
- }
- console.log(from.value,'form');
- }
- //保存
- let save = ref(false)
- let depTable = ref()
- let editor = ref()
- let hridTable = ref()
- let areaTable = ref()
- let enterpriseTable = ref()
- const submit = async () => {
- if (!from.value.role.length && !depTable.value.data.length && !hridTable.value.data.length && !areaTable.value.data.length && !enterpriseTable.value.data.length) {
- return message.warning('浏览权限至少选择一项!!')
- }
- const values = await formRef.value.validateFields()
- if (from.value.candownloadArr.indexOf('canshared_c') != -1) from.value.canshared_c = 1
- if (from.value.candownloadArr.indexOf('candownload_c') != -1) from.value.candownload_c = 1
- if (from.value.type == 2 || from.value.type == 4) from.value.ispicture = 0
- from.value.sat_sharematerial_classid = from.value.sat_sharematerial_classids[from.value.sat_sharematerial_classids.length - 1]
- const res = await Api.requested({
- "id": "20240407094502",
- "content": from.value
- })
- utils.message(res,'保存成功',async () => {
- const res2 = await Api.requested({
- "id": "20240402101402",
- "content": {
- "authtype":from.value.authtype,
- "ownertable": "sat_sharematerial",
- "ownerid": from.value.sat_sharematerialid,
- "roleids": from.value.role
- }
- })
- if (from.value.status == '发布') {
- const res2 = await Api.requested({
- "id": "20240329131702",
- "content": {
- "sat_sharematerialids": [from.value.sat_sharematerialid],
- "status":1
- }
- })
- }
- formRef.value.resetFields()
- save.value = true
- modeVisible.value = false
- })
- }
- let roleObject = ref({
- roleArr:[],
- depArr:[],
- hridArr:[],
- areaArr:[],
- enterpriseArr:[],
- })
- //权限下拉数据
- const selectAllTable = async () => {
-
- Api.requested({
- "classname": "sysmanage.develop.optiontype.optiontype",
- "method": "optiontypeselect",
- "content": {
- "pageNumber": 1,
- "pageSize": 1000,
- "typename": "role",
- "parameter": {}
- },
- }).then(res => {
- roleObject.value.roleArr = res.data
- })
- Api.requested({
- "classname": "webmanage.department.department",
- "method": "querydepartment",
- "content": {},
- "accesstoken": "aa8ff16868041aacfd9c768d879d655e"
- }).then(res => {
- roleObject.value.depArr = res.data
-
- })
- }
- const addData = async (key,data,callback) => {
- let ids = data.map(item => item[key.slice(0,key.length - 1)])
- const res = await Api.requested({
- "id": "20240402101402",
- "content": {
- "ownertable": "sat_sharematerial",
- "ownerid": from.value.sat_sharematerialid,
- [key]:ids
- }
- })
- if (res.code) {
- callback && callback()
- }
- }
- //删除数据
- const delData = async (key,data,callback) => {
- const res = await Api.requested({
- "id": "20240402101502",
- "content": {
- "ownertable": "sat_sharematerial",
- "ownerid": from.value.sat_sharematerialid,
- [key]:[data.record[key.slice(0,key.length - 1)]]
- }
- })
- utils.message(res,'删除成功',() => {
- callback && callback()
- })
- }
- //人员全选
- const hridHandlePullApi = async (pullApi) => {
- pullApi.content = {pageNumber:1,pageSize:20,where:{}}
- pullApi.id = 20240312145602
- }
- const hridHandleUploadApi = async (uploadApi,data) => {
- uploadApi.id = 20240402101402
- uploadApi.content = {
- "ownertable": "sat_sharematerial",
- "ownerid": from.value.sat_sharematerialid,
- "hrids": data.map(e=>e.hrid)
- }
- }
- //区域全选
- const areaHandlePullApi = async (pullApi) => {
- pullApi.content = {pageNumber:1,pageSize:20,where:{}}
- pullApi.classname = 'webmanage.sale.salearea.salearea'
- pullApi.method = 'query_area'
- }
- const areaHandleUploadApi = async (uploadApi,data) => {
- uploadApi.id = 20240402101402
- uploadApi.content = {
- "ownertable": "sat_sharematerial",
- "ownerid": from.value.sat_sharematerialid,
- "sa_saleareaids": data.map(e=>e.sa_saleareaid)
- }
- }
- //经销商全选
- const enterpriseHandlePullApi = async (pullApi) => {
- pullApi.content = {pageNumber:1,pageSize:20,where:{}}
- pullApi.id = 20240312151602
- }
- const enterpriseHandleUploadApi = async (uploadApi,data) => {
- uploadApi.id = 20240402101402
- uploadApi.content = {
- "ownertable": "sat_sharematerial",
- "ownerid": from.value.sat_sharematerialid,
- "sys_enterpriseids": data.map(e=>e.sys_enterpriseid)
- }
- }
- // 暴露 addClass 方法
- defineExpose({
- addClass
- })
- onMounted(() => {
- })
- </script>
- <style scoped>
- .ant-select {
- width:100%;
- }
- .flex-center {
- display:flex;
- align-items: center;
- }
- .custom-tree-node {
- flex: 1;
- display: flex;
- align-items: center;
- justify-content: space-between;
- font-size: 14px;
- padding-right: 8px;
- background: none;
- }
- .redlitt::before {
- display: inline-block;
- margin-inline-end: 4px;
- color: #ff4d4f;
- font-size: 14px;
- font-family: SimSun,sans-serif;
- line-height: 1;
- content: "*";
- }
- </style>
- <style>
- .customNotiveClass .ant-drawer-header {
- display: none !important;
- }
- .customNotiveClass .ant-drawer-content {
- background: #F1F2F3 !important;
- }
- .customNotiveClass .ant-drawer-body {
- padding: 0 !important;
- }
- .customNotiveClass .ant-form {
- width: 100%;
- }
- .detail__panel .ant-card {
- width: 100%;
- }
- .ant-tree-treenode {
- width:100% !important;
- }
- .ant-tree-node-content-wrapper {
- width:100% !important;
- }
- .timeClass .ant-form-item {
- margin-bottom:0px !important;
- }
- .detail__panel .ant-card-head {
- min-height:35px !important;
- }
- </style>
|