|
|
|
@ -1,5 +1,5 @@ |
|
|
|
|
<template> |
|
|
|
|
<!-- <a-card :bordered="false">--> |
|
|
|
|
<!-- <a-card :bordered="false">--> |
|
|
|
|
<a-modal |
|
|
|
|
width="70%" |
|
|
|
|
title="" |
|
|
|
@ -22,8 +22,9 @@ |
|
|
|
|
</a-col> |
|
|
|
|
|
|
|
|
|
<a-col :xl="6" :lg="7" :md="8" :sm="24"> |
|
|
|
|
<a-form-item label="工序" > |
|
|
|
|
<j-dict-select-tag v-model="queryParam.processId" dictCode="zy_process,process_name,id" placeholder="请选择工序" /> |
|
|
|
|
<a-form-item label="工序"> |
|
|
|
|
<j-dict-select-tag v-model="queryParam.processId" dictCode="zy_process,process_name,id" |
|
|
|
|
placeholder="请选择工序"/> |
|
|
|
|
</a-form-item> |
|
|
|
|
</a-col> |
|
|
|
|
|
|
|
|
@ -41,24 +42,30 @@ |
|
|
|
|
<!-- 操作按钮区域 --> |
|
|
|
|
<div class="table-operator"> |
|
|
|
|
<a-button @click="handleAdd1(componentId1)" type="primary" icon="plus">新增</a-button> |
|
|
|
|
<!-- <a-button type="primary" icon="download" @click="handleExportXls('zy_process_component')">导出</a-button>--> |
|
|
|
|
<!-- <a-upload name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl" @change="handleImportExcel">--> |
|
|
|
|
<!-- <a-button type="primary" icon="import">导入</a-button>--> |
|
|
|
|
<!-- </a-upload>--> |
|
|
|
|
<!-- <a-button type="primary" icon="download" @click="handleExportXls('zy_process_component')">导出</a-button>--> |
|
|
|
|
<!-- <a-upload name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl" @change="handleImportExcel">--> |
|
|
|
|
<!-- <a-button type="primary" icon="import">导入</a-button>--> |
|
|
|
|
<!-- </a-upload>--> |
|
|
|
|
<!-- 高级查询区域 --> |
|
|
|
|
<!-- <j-super-query :fieldList="superFieldList" ref="superQueryModal" @handleSuperQuery="handleSuperQuery"></j-super-query>--> |
|
|
|
|
<!-- <j-super-query :fieldList="superFieldList" ref="superQueryModal" @handleSuperQuery="handleSuperQuery"></j-super-query>--> |
|
|
|
|
<a-dropdown v-if="selectedRowKeys.length > 0"> |
|
|
|
|
<a-menu slot="overlay"> |
|
|
|
|
<a-menu-item key="1" @click="batchDel"><a-icon type="delete"/>删除</a-menu-item> |
|
|
|
|
<a-menu-item key="1" @click="batchDel"> |
|
|
|
|
<a-icon type="delete"/> |
|
|
|
|
删除 |
|
|
|
|
</a-menu-item> |
|
|
|
|
</a-menu> |
|
|
|
|
<a-button style="margin-left: 8px"> 批量操作 <a-icon type="down" /></a-button> |
|
|
|
|
<a-button style="margin-left: 8px"> 批量操作 |
|
|
|
|
<a-icon type="down"/> |
|
|
|
|
</a-button> |
|
|
|
|
</a-dropdown> |
|
|
|
|
</div> |
|
|
|
|
|
|
|
|
|
<!-- table区域-begin --> |
|
|
|
|
<div> |
|
|
|
|
<div class="ant-alert ant-alert-info" style="margin-bottom: 16px;"> |
|
|
|
|
<i class="anticon anticon-info-circle ant-alert-icon"></i> 已选择 <a style="font-weight: 600">{{ selectedRowKeys.length }}</a>项 |
|
|
|
|
<i class="anticon anticon-info-circle ant-alert-icon"></i> 已选择 <a |
|
|
|
|
style="font-weight: 600">{{ selectedRowKeys.length }}</a>项 |
|
|
|
|
<a style="margin-left: 24px" @click="onClearSelected">清空</a> |
|
|
|
|
</div> |
|
|
|
|
|
|
|
|
@ -81,7 +88,8 @@ |
|
|
|
|
</template> |
|
|
|
|
<template slot="imgSlot" slot-scope="text"> |
|
|
|
|
<span v-if="!text" style="font-size: 12px;font-style: italic;">无图片</span> |
|
|
|
|
<img v-else :src="getImgView(text)" height="25px" alt="" style="max-width:80px;font-size: 12px;font-style: italic;"/> |
|
|
|
|
<img v-else :src="getImgView(text)" height="25px" alt="" |
|
|
|
|
style="max-width:80px;font-size: 12px;font-style: italic;"/> |
|
|
|
|
</template> |
|
|
|
|
<template slot="fileSlot" slot-scope="text"> |
|
|
|
|
<span v-if="!text" style="font-size: 12px;font-style: italic;">无文件</span> |
|
|
|
@ -98,9 +106,9 @@ |
|
|
|
|
|
|
|
|
|
<span slot="action" slot-scope="text, record"> |
|
|
|
|
<!-- <a @click="handleEdit(record)">编辑</a>--> |
|
|
|
|
|
|
|
|
|
<!-- <a-divider type="vertical" />--> |
|
|
|
|
<a @click="handleDetail(record.id)">详情</a> |
|
|
|
|
<!-- <a-divider type="vertical" />--> |
|
|
|
|
<!-- <a @click="handleDetail(record.id)">详情</a>--> |
|
|
|
|
<a @click="openDetail(record.processId)">详情</a> |
|
|
|
|
<a-divider type="vertical"/> |
|
|
|
|
<a-popconfirm title="确定删除吗?" @confirm="() => handleDelete(record.id)"> |
|
|
|
|
<a>删除</a> |
|
|
|
@ -110,199 +118,212 @@ |
|
|
|
|
</a-table> |
|
|
|
|
</div> |
|
|
|
|
|
|
|
|
|
<zy-process-component-modal @valueChange="valueChange" ref="modalForm" @ok="modalFormOk"></zy-process-component-modal> |
|
|
|
|
<zy-process-component-modal @valueChange="valueChange" ref="modalForm" |
|
|
|
|
@ok="modalFormOk"></zy-process-component-modal> |
|
|
|
|
<ZyProcessComponentFormDetail ref="ZyProcessComponentFormDetail"></ZyProcessComponentFormDetail> |
|
|
|
|
<ZyProcessDetail ref="zyProcessDetail"></ZyProcessDetail> |
|
|
|
|
</a-modal> |
|
|
|
|
</template> |
|
|
|
|
|
|
|
|
|
<script> |
|
|
|
|
|
|
|
|
|
import '@/assets/less/TableExpand.less' |
|
|
|
|
import { mixinDevice } from '@/utils/mixin' |
|
|
|
|
import { JeecgListMixin } from '@/mixins/JeecgListMixin' |
|
|
|
|
import ZyProcessComponentModal from './modules/ZyProcessComponentModal' |
|
|
|
|
import ZyProcessComponentFormDetail from './modules/ZyProcessComponentFormDetail' |
|
|
|
|
import {filterMultiDictText} from '@/components/dict/JDictSelectUtil' |
|
|
|
|
import {filterObj} from "@/utils/util"; |
|
|
|
|
import {getAction} from "@api/manage"; |
|
|
|
|
import ZyProcessDetail from '@views/process/modules/ZyProcessDetail' |
|
|
|
|
import '@/assets/less/TableExpand.less' |
|
|
|
|
import {mixinDevice} from '@/utils/mixin' |
|
|
|
|
import {JeecgListMixin} from '@/mixins/JeecgListMixin' |
|
|
|
|
import ZyProcessComponentModal from './modules/ZyProcessComponentModal' |
|
|
|
|
import ZyProcessComponentFormDetail from './modules/ZyProcessComponentFormDetail' |
|
|
|
|
import {filterMultiDictText} from '@/components/dict/JDictSelectUtil' |
|
|
|
|
import {filterObj} from "@/utils/util"; |
|
|
|
|
import {getAction} from "@api/manage"; |
|
|
|
|
|
|
|
|
|
export default { |
|
|
|
|
name: 'ZyProcessComponentList', |
|
|
|
|
mixins:[JeecgListMixin, mixinDevice], |
|
|
|
|
components: { |
|
|
|
|
ZyProcessComponentModal, |
|
|
|
|
ZyProcessComponentFormDetail |
|
|
|
|
}, |
|
|
|
|
data () { |
|
|
|
|
return { |
|
|
|
|
description: 'zy_process_component管理页面', |
|
|
|
|
visible: false, |
|
|
|
|
confirmLoading: false, |
|
|
|
|
componentId1:'', |
|
|
|
|
// 表头 |
|
|
|
|
columns: [ |
|
|
|
|
{ |
|
|
|
|
title: '#', |
|
|
|
|
dataIndex: '', |
|
|
|
|
key:'rowIndex', |
|
|
|
|
width:60, |
|
|
|
|
align:"center", |
|
|
|
|
customRender:function (t,r,index) { |
|
|
|
|
return parseInt(index)+1; |
|
|
|
|
} |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
title:'部件名称', |
|
|
|
|
align:"center", |
|
|
|
|
dataIndex: 'componentId_dictText' |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
title:'工序代码', |
|
|
|
|
align:"center", |
|
|
|
|
dataIndex: 'processCode' |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
title:'工序', |
|
|
|
|
align:"center", |
|
|
|
|
dataIndex: 'processId_dictText' |
|
|
|
|
}, |
|
|
|
|
// { |
|
|
|
|
// title:'是否瓶颈工序', |
|
|
|
|
// align:"center", |
|
|
|
|
// dataIndex: 'bottleneck_dictText' |
|
|
|
|
// }, |
|
|
|
|
{ |
|
|
|
|
title:'创建时间', |
|
|
|
|
align:"center", |
|
|
|
|
dataIndex: 'createTime' |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
title: '操作', |
|
|
|
|
dataIndex: 'action', |
|
|
|
|
align:"center", |
|
|
|
|
fixed:"right", |
|
|
|
|
width:147, |
|
|
|
|
scopedSlots: { customRender: 'action' } |
|
|
|
|
export default { |
|
|
|
|
name: 'ZyProcessComponentList', |
|
|
|
|
mixins: [JeecgListMixin, mixinDevice], |
|
|
|
|
components: { |
|
|
|
|
ZyProcessDetail, |
|
|
|
|
ZyProcessComponentModal, |
|
|
|
|
ZyProcessComponentFormDetail |
|
|
|
|
}, |
|
|
|
|
data() { |
|
|
|
|
return { |
|
|
|
|
description: 'zy_process_component管理页面', |
|
|
|
|
visible: false, |
|
|
|
|
confirmLoading: false, |
|
|
|
|
componentId1: '', |
|
|
|
|
// 表头 |
|
|
|
|
columns: [ |
|
|
|
|
{ |
|
|
|
|
title: '#', |
|
|
|
|
dataIndex: '', |
|
|
|
|
key: 'rowIndex', |
|
|
|
|
width: 60, |
|
|
|
|
align: "center", |
|
|
|
|
customRender: function (t, r, index) { |
|
|
|
|
return parseInt(index) + 1; |
|
|
|
|
} |
|
|
|
|
], |
|
|
|
|
url: { |
|
|
|
|
list: "/pro/zyProcessComponent/list", |
|
|
|
|
delete: "/pro/zyProcessComponent/delete", |
|
|
|
|
deleteBatch: "/pro/zyProcessComponent/deleteBatch", |
|
|
|
|
exportXlsUrl: "/pro/zyProcessComponent/exportXls", |
|
|
|
|
importExcelUrl: "pro/zyProcessComponent/importExcel", |
|
|
|
|
|
|
|
|
|
}, |
|
|
|
|
//参数 |
|
|
|
|
loadRouteType: false, |
|
|
|
|
biaoTi: '', |
|
|
|
|
dictOptions:{}, |
|
|
|
|
superFieldList:[], |
|
|
|
|
} |
|
|
|
|
}, |
|
|
|
|
created() { |
|
|
|
|
{ |
|
|
|
|
title: '部件名称', |
|
|
|
|
align: "center", |
|
|
|
|
dataIndex: 'componentId_dictText' |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
title: '工序代码', |
|
|
|
|
align: "center", |
|
|
|
|
dataIndex: 'processCode' |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
title: '工序', |
|
|
|
|
align: "center", |
|
|
|
|
dataIndex: 'processId_dictText' |
|
|
|
|
}, |
|
|
|
|
// { |
|
|
|
|
// title:'是否瓶颈工序', |
|
|
|
|
// align:"center", |
|
|
|
|
// dataIndex: 'bottleneck_dictText' |
|
|
|
|
// }, |
|
|
|
|
{ |
|
|
|
|
title: '创建时间', |
|
|
|
|
align: "center", |
|
|
|
|
dataIndex: 'createTime' |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
title: '操作', |
|
|
|
|
dataIndex: 'action', |
|
|
|
|
align: "center", |
|
|
|
|
fixed: "right", |
|
|
|
|
width: 147, |
|
|
|
|
scopedSlots: {customRender: 'action'} |
|
|
|
|
} |
|
|
|
|
], |
|
|
|
|
url: { |
|
|
|
|
list: "/pro/zyProcessComponent/list", |
|
|
|
|
delete: "/pro/zyProcessComponent/delete", |
|
|
|
|
deleteBatch: "/pro/zyProcessComponent/deleteBatch", |
|
|
|
|
exportXlsUrl: "/pro/zyProcessComponent/exportXls", |
|
|
|
|
importExcelUrl: "pro/zyProcessComponent/importExcel", |
|
|
|
|
|
|
|
|
|
}, |
|
|
|
|
//参数 |
|
|
|
|
loadRouteType: false, |
|
|
|
|
biaoTi: '', |
|
|
|
|
dictOptions: {}, |
|
|
|
|
superFieldList: [], |
|
|
|
|
} |
|
|
|
|
}, |
|
|
|
|
created() { |
|
|
|
|
this.getSuperFieldList(); |
|
|
|
|
}, |
|
|
|
|
computed: { |
|
|
|
|
importExcelUrl: function () { |
|
|
|
|
return `${window._CONFIG['domianURL']}/${this.url.importExcelUrl}`; |
|
|
|
|
}, |
|
|
|
|
computed: { |
|
|
|
|
importExcelUrl: function(){ |
|
|
|
|
return `${window._CONFIG['domianURL']}/${this.url.importExcelUrl}`; |
|
|
|
|
}, |
|
|
|
|
}, |
|
|
|
|
methods: { |
|
|
|
|
edit2(record) { |
|
|
|
|
this.model = Object.assign({}, record); |
|
|
|
|
this.componentId1 = this.model.id; |
|
|
|
|
this.biaoTi = this.model.partsName; |
|
|
|
|
//console.log(topicid); |
|
|
|
|
this.queryParam.componentId = this.model.id; |
|
|
|
|
//console.log( this.queryParam.topicid); |
|
|
|
|
this.loadData(); |
|
|
|
|
this.visible = true; |
|
|
|
|
}, |
|
|
|
|
methods: { |
|
|
|
|
edit2(record) { |
|
|
|
|
this.model = Object.assign({}, record); |
|
|
|
|
this.componentId1 = this.model.id; |
|
|
|
|
this.biaoTi = this.model.partsName; |
|
|
|
|
//console.log(topicid); |
|
|
|
|
this.queryParam.componentId = this.model.id; |
|
|
|
|
//console.log( this.queryParam.topicid); |
|
|
|
|
this.loadData(); |
|
|
|
|
this.visible = true; |
|
|
|
|
}, |
|
|
|
|
valueChange(value) { |
|
|
|
|
if (value) this.loadData() |
|
|
|
|
}, |
|
|
|
|
//加载传递参数 |
|
|
|
|
loadParameter() { |
|
|
|
|
if (this.loadRouteType === false) { |
|
|
|
|
this.loadRouteType = true; |
|
|
|
|
} |
|
|
|
|
}, |
|
|
|
|
loadData(arg) { |
|
|
|
|
if (!this.url.list) { |
|
|
|
|
this.$message.error("请设置url.list属性!"); |
|
|
|
|
return |
|
|
|
|
} |
|
|
|
|
//加载数据 若传入参数1则加载第一页的内容 |
|
|
|
|
if (arg === 1) { |
|
|
|
|
this.ipagination.current = 1; |
|
|
|
|
} |
|
|
|
|
this.loadParameter(); |
|
|
|
|
const params = this.getQueryParams();//查询条件 |
|
|
|
|
this.loading = true; |
|
|
|
|
getAction(this.url.list, params).then((res) => { |
|
|
|
|
if (res.success) { |
|
|
|
|
//update-begin---author:zhangyafei Date:20201118 for:适配不分页的数据列表------------ |
|
|
|
|
this.dataSource = res.result.records || res.result; |
|
|
|
|
if (res.result.total) { |
|
|
|
|
this.ipagination.total = res.result.total; |
|
|
|
|
} else { |
|
|
|
|
this.ipagination.total = 0; |
|
|
|
|
} |
|
|
|
|
//update-end---author:zhangyafei Date:20201118 for:适配不分页的数据列表------------ |
|
|
|
|
valueChange(value) { |
|
|
|
|
if (value) this.loadData() |
|
|
|
|
}, |
|
|
|
|
//加载传递参数 |
|
|
|
|
loadParameter() { |
|
|
|
|
if (this.loadRouteType === false) { |
|
|
|
|
this.loadRouteType = true; |
|
|
|
|
} |
|
|
|
|
}, |
|
|
|
|
loadData(arg) { |
|
|
|
|
if (!this.url.list) { |
|
|
|
|
this.$message.error("请设置url.list属性!"); |
|
|
|
|
return |
|
|
|
|
} |
|
|
|
|
//加载数据 若传入参数1则加载第一页的内容 |
|
|
|
|
if (arg === 1) { |
|
|
|
|
this.ipagination.current = 1; |
|
|
|
|
} |
|
|
|
|
this.loadParameter(); |
|
|
|
|
const params = this.getQueryParams();//查询条件 |
|
|
|
|
this.loading = true; |
|
|
|
|
getAction(this.url.list, params).then((res) => { |
|
|
|
|
if (res.success) { |
|
|
|
|
//update-begin---author:zhangyafei Date:20201118 for:适配不分页的数据列表------------ |
|
|
|
|
this.dataSource = res.result.records || res.result; |
|
|
|
|
if (res.result.total) { |
|
|
|
|
this.ipagination.total = res.result.total; |
|
|
|
|
} else { |
|
|
|
|
this.$message.warning(res.message) |
|
|
|
|
this.ipagination.total = 0; |
|
|
|
|
} |
|
|
|
|
}).finally(() => { |
|
|
|
|
this.loading = false |
|
|
|
|
}) |
|
|
|
|
}, |
|
|
|
|
getQueryParams() { |
|
|
|
|
//获取查询条件 |
|
|
|
|
let sqp = {} |
|
|
|
|
if (this.superQueryParams) { |
|
|
|
|
sqp['superQueryParams'] = encodeURI(this.superQueryParams) |
|
|
|
|
sqp['superQueryMatchType'] = this.superQueryMatchType |
|
|
|
|
//update-end---author:zhangyafei Date:20201118 for:适配不分页的数据列表------------ |
|
|
|
|
} else { |
|
|
|
|
this.$message.warning(res.message) |
|
|
|
|
} |
|
|
|
|
const param = Object.assign(sqp, this.queryParam, this.isorter, this.filters); |
|
|
|
|
param.field = this.getQueryField(); |
|
|
|
|
param.pageNo = this.ipagination.current; |
|
|
|
|
param.pageSize = this.ipagination.pageSize; |
|
|
|
|
//param.id=this.id; |
|
|
|
|
param.componentId = this.componentId1; |
|
|
|
|
return filterObj(param); |
|
|
|
|
}, |
|
|
|
|
showModal2() { |
|
|
|
|
this.visible = true; |
|
|
|
|
}, |
|
|
|
|
handleOk(e) { |
|
|
|
|
this.ModalText = 'The modal will be closed after two seconds'; |
|
|
|
|
this.confirmLoading = true; |
|
|
|
|
setTimeout(() => { |
|
|
|
|
this.visible = false; |
|
|
|
|
this.confirmLoading = false; |
|
|
|
|
}, 2000); |
|
|
|
|
}, |
|
|
|
|
handleCancel(e) { |
|
|
|
|
console.log('Clicked cancel button'); |
|
|
|
|
this.visible = false; |
|
|
|
|
}, |
|
|
|
|
initDictConfig(){ |
|
|
|
|
}, |
|
|
|
|
getSuperFieldList(){ |
|
|
|
|
let fieldList=[]; |
|
|
|
|
fieldList.push({type:'string',value:'componentId',text:'部件',dictCode:'zy_cloths_component,parts_name,nums'}) |
|
|
|
|
fieldList.push({type:'string',value:'processId',text:'工艺',dictCode:'zy_process,process_name,id'}) |
|
|
|
|
this.superFieldList = fieldList |
|
|
|
|
}, |
|
|
|
|
handleDetail(id){ |
|
|
|
|
//id = this.model.id; |
|
|
|
|
console.log("this。model.id +++++"+id); |
|
|
|
|
this.$refs.ZyProcessComponentFormDetail.showModal(id); |
|
|
|
|
}).finally(() => { |
|
|
|
|
this.loading = false |
|
|
|
|
}) |
|
|
|
|
}, |
|
|
|
|
getQueryParams() { |
|
|
|
|
//获取查询条件 |
|
|
|
|
let sqp = {} |
|
|
|
|
if (this.superQueryParams) { |
|
|
|
|
sqp['superQueryParams'] = encodeURI(this.superQueryParams) |
|
|
|
|
sqp['superQueryMatchType'] = this.superQueryMatchType |
|
|
|
|
} |
|
|
|
|
const param = Object.assign(sqp, this.queryParam, this.isorter, this.filters); |
|
|
|
|
param.field = this.getQueryField(); |
|
|
|
|
param.pageNo = this.ipagination.current; |
|
|
|
|
param.pageSize = this.ipagination.pageSize; |
|
|
|
|
//param.id=this.id; |
|
|
|
|
param.componentId = this.componentId1; |
|
|
|
|
return filterObj(param); |
|
|
|
|
}, |
|
|
|
|
showModal2() { |
|
|
|
|
this.visible = true; |
|
|
|
|
}, |
|
|
|
|
handleOk(e) { |
|
|
|
|
this.ModalText = 'The modal will be closed after two seconds'; |
|
|
|
|
this.confirmLoading = true; |
|
|
|
|
setTimeout(() => { |
|
|
|
|
this.visible = false; |
|
|
|
|
this.confirmLoading = false; |
|
|
|
|
}, 2000); |
|
|
|
|
}, |
|
|
|
|
handleCancel(e) { |
|
|
|
|
console.log('Clicked cancel button'); |
|
|
|
|
this.visible = false; |
|
|
|
|
}, |
|
|
|
|
initDictConfig() { |
|
|
|
|
}, |
|
|
|
|
getSuperFieldList() { |
|
|
|
|
let fieldList = []; |
|
|
|
|
fieldList.push({ |
|
|
|
|
type: 'string', |
|
|
|
|
value: 'componentId', |
|
|
|
|
text: '部件', |
|
|
|
|
dictCode: 'zy_cloths_component,parts_name,nums' |
|
|
|
|
}) |
|
|
|
|
fieldList.push({type: 'string', value: 'processId', text: '工艺', dictCode: 'zy_process,process_name,id'}) |
|
|
|
|
this.superFieldList = fieldList |
|
|
|
|
}, |
|
|
|
|
// handleDetail(id) { |
|
|
|
|
// //id = this.model.id; |
|
|
|
|
// console.log("this。model.id +++++" + id); |
|
|
|
|
// this.$refs.ZyProcessComponentFormDetail.showModal(id); |
|
|
|
|
// } |
|
|
|
|
openDetail(id) { |
|
|
|
|
this.$refs.zyProcessDetail.showModal(id) |
|
|
|
|
// this.$children[0].showModal(id) |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
</script> |
|
|
|
|
<style scoped> |
|
|
|
|
@import '~@assets/less/common.less'; |
|
|
|
|
@import '~@assets/less/common.less'; |
|
|
|
|
</style> |
|
|
|
|