|
@@ -8,7 +8,12 @@
|
|
<van-icon name="chat-o" />
|
|
<van-icon name="chat-o" />
|
|
<span>{{ schoolName }}</span>
|
|
<span>{{ schoolName }}</span>
|
|
</div>
|
|
</div>
|
|
- <div class="status-bar status-bar--warning">
|
|
|
|
|
|
+
|
|
|
|
+ <!-- TODO: 审核样式 -->
|
|
|
|
+ <div :class="[
|
|
|
|
+ 'status-bar',
|
|
|
|
+ renderStatusBarClass
|
|
|
|
+ ]">
|
|
<span>{{ approveStatusMap }}</span>
|
|
<span>{{ approveStatusMap }}</span>
|
|
</div>
|
|
</div>
|
|
|
|
|
|
@@ -18,38 +23,23 @@
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
|
|
-
|
|
|
|
<!-- 各种审批内容组件 -->
|
|
<!-- 各种审批内容组件 -->
|
|
<div class="examine-detail__main">
|
|
<div class="examine-detail__main">
|
|
- <detail-rows
|
|
|
|
- class="detail-row"
|
|
|
|
- v-for="(row, idx) in datalist"
|
|
|
|
- :key="idx"
|
|
|
|
- v-bind="row"
|
|
|
|
- />
|
|
|
|
-
|
|
|
|
|
|
+ <detail-rows class="detail-row" v-for="(row, idx) in datalist" :key="idx" v-bind="row" />
|
|
</div>
|
|
</div>
|
|
|
|
|
|
<!-- 流程组件 -->
|
|
<!-- 流程组件 -->
|
|
<!-- @Description 流程化 用到的地方很多 -->
|
|
<!-- @Description 流程化 用到的地方很多 -->
|
|
<!-- ApproveFlowPath -->
|
|
<!-- ApproveFlowPath -->
|
|
<div class="approve-flow-path-box">
|
|
<div class="approve-flow-path-box">
|
|
- <approve-flow-path
|
|
|
|
- :approve-list="approveList"
|
|
|
|
- :copys="approveCopyList"
|
|
|
|
- />
|
|
|
|
|
|
+ <approve-flow-path :create="createUser" :approve-list="approveList" :copys="approveCopyList" />
|
|
</div>
|
|
</div>
|
|
|
|
|
|
|
|
|
|
<!-- operate. 操作台 -->
|
|
<!-- operate. 操作台 -->
|
|
<!-- 集成 提醒, 修改, 下载, 拒绝,同意 5种 -->
|
|
<!-- 集成 提醒, 修改, 下载, 拒绝,同意 5种 -->
|
|
<div class="approve-control">
|
|
<div class="approve-control">
|
|
- <approve-control
|
|
|
|
- :id="id"
|
|
|
|
- :module="module"
|
|
|
|
- :flag="pageType"
|
|
|
|
- :flag-state="dataDetailStatus"
|
|
|
|
- />
|
|
|
|
|
|
+ <approve-control :id="id" :module="module" :flag="pageType" :flag-state="dataDetailStatusComputed" />
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</template>
|
|
</template>
|
|
@@ -66,10 +56,14 @@ import DetailRows from './components/DetailRows.vue'
|
|
import ApproveFlowPath from './components/ApproveFlowPath.vue'
|
|
import ApproveFlowPath from './components/ApproveFlowPath.vue'
|
|
import ApproveControl from './components/ApproveControl.vue'
|
|
import ApproveControl from './components/ApproveControl.vue'
|
|
|
|
|
|
-import * as ApproveInfoApi from '@/api/approveinfo'
|
|
|
|
|
|
+import * as approveInfoApi from '@/api/approveinfo'
|
|
|
|
+import * as approveApi from '@/api/approve'
|
|
|
|
|
|
import { mapState } from 'vuex'
|
|
import { mapState } from 'vuex'
|
|
|
|
|
|
|
|
+
|
|
|
|
+import { formatApplyforRows } from '@/utils/applyfor-item'
|
|
|
|
+
|
|
export default {
|
|
export default {
|
|
name: 'ExamineDetail',
|
|
name: 'ExamineDetail',
|
|
components: {
|
|
components: {
|
|
@@ -78,129 +72,164 @@ export default {
|
|
ApproveControl
|
|
ApproveControl
|
|
},
|
|
},
|
|
computed: {
|
|
computed: {
|
|
|
|
+ dataDetailStatusComputed() {
|
|
|
|
+ let status = this.dataDetailStatus
|
|
|
|
+ let from = this.pageFrom
|
|
|
|
+ switch (from) {
|
|
|
|
+ case 'approve_3':
|
|
|
|
+ return 4 // 审批详情。 我收到的 没有任何操作权限
|
|
|
|
+ default:
|
|
|
|
+ return status
|
|
|
|
+ }
|
|
|
|
+ },
|
|
|
|
+
|
|
|
|
+ // 渲染审核状态样式
|
|
|
|
+ renderStatusBarClass() {
|
|
|
|
+ if (!this.dataDetail) return 'status-bar--warning'
|
|
|
|
+ const { status } = this.dataDetail
|
|
|
|
+ let className = ''
|
|
|
|
+ switch (status) {
|
|
|
|
+ case 3:
|
|
|
|
+ className = 'status-bar--success'
|
|
|
|
+ break
|
|
|
|
+ case 4:
|
|
|
|
+ className = 'status-bar--danger'
|
|
|
|
+ break
|
|
|
|
+ default:
|
|
|
|
+ className = 'status-bar--warning'
|
|
|
|
+ }
|
|
|
|
+ return className
|
|
|
|
+ },
|
|
|
|
+
|
|
|
|
+ title() {
|
|
|
|
+ if (!this.dataDetail) return ''
|
|
|
|
+ const { create_user } = this.dataDetail
|
|
|
|
+ return `${create_user.name}提交的申请单`
|
|
|
|
+ },
|
|
...mapState('enum', [
|
|
...mapState('enum', [
|
|
'evectionTypeList',
|
|
'evectionTypeList',
|
|
]),
|
|
]),
|
|
- approveStatusMap () {
|
|
|
|
|
|
+ ...mapState('user', [
|
|
|
|
+ 'schoolName'
|
|
|
|
+ ]),
|
|
|
|
+ approveStatusMap() {
|
|
if (!this.dataDetail) return ''
|
|
if (!this.dataDetail) return ''
|
|
let status = this.dataDetail.status
|
|
let status = this.dataDetail.status
|
|
return this.$store.getters['enum/getApproveFlowPathEnum'](status)
|
|
return this.$store.getters['enum/getApproveFlowPathEnum'](status)
|
|
}
|
|
}
|
|
},
|
|
},
|
|
- data () {
|
|
|
|
|
|
+ data() {
|
|
return {
|
|
return {
|
|
dataDetail: null,
|
|
dataDetail: null,
|
|
isAndroid: checkPlatform() === 'android',
|
|
isAndroid: checkPlatform() === 'android',
|
|
isiOS: checkPlatform() === 'iOS',
|
|
isiOS: checkPlatform() === 'iOS',
|
|
|
|
|
|
- // TODO: 标识标题、学校名称如何获取
|
|
|
|
- title: '刘辉提交的申请单',
|
|
|
|
- schoolName: '深圳市第二特殊教育学校',
|
|
|
|
-
|
|
|
|
- datalist: [
|
|
|
|
- {
|
|
|
|
- title: '审批编号',
|
|
|
|
- value: '20222110741458005442684',
|
|
|
|
- },
|
|
|
|
- {
|
|
|
|
- title: '合同编号',
|
|
|
|
- value: '20222110741458005442684',
|
|
|
|
- type: 'link' // 代表它是一个链接
|
|
|
|
- },
|
|
|
|
- {
|
|
|
|
- title: '所在部门',
|
|
|
|
- value: '深圳市第二特殊教育学校-教师部'
|
|
|
|
- },
|
|
|
|
- {
|
|
|
|
- title: '申请日期',
|
|
|
|
- value: '2022-11-07',
|
|
|
|
- type: 'date' // 代表返回的是unixtime 时间戳需要自己转义`dayjs`
|
|
|
|
- },
|
|
|
|
- {
|
|
|
|
- title: '申请人',
|
|
|
|
- value: '刘辉'
|
|
|
|
- },
|
|
|
|
- {
|
|
|
|
- title: '申请事由',
|
|
|
|
- value: '学生生活用品购买'
|
|
|
|
- },
|
|
|
|
- {
|
|
|
|
- title: '申购类型',
|
|
|
|
- value: '货物申购',
|
|
|
|
- type: 'type' // 类型字段意味着这是枚举需要自己配置
|
|
|
|
- },
|
|
|
|
- {
|
|
|
|
- type: 'projects',
|
|
|
|
- title: '申购明细',
|
|
|
|
- value: [
|
|
|
|
- {
|
|
|
|
- projectName: '学生冬季校服',
|
|
|
|
- count: 20,
|
|
|
|
- tags: ['蓝色', '165cm'],
|
|
|
|
- money: 56025
|
|
|
|
- },
|
|
|
|
- {
|
|
|
|
- projectName: '学生冬季校服',
|
|
|
|
- count: 30,
|
|
|
|
- tags: ['蓝色', '175cm'],
|
|
|
|
- money: 65025
|
|
|
|
- }
|
|
|
|
- ]
|
|
|
|
- },
|
|
|
|
- {
|
|
|
|
- title: '总金额',
|
|
|
|
- value: '100000'
|
|
|
|
- },
|
|
|
|
- {
|
|
|
|
- title: '预计申购完成日期',
|
|
|
|
- value: '2022-11-08'
|
|
|
|
- },
|
|
|
|
- {
|
|
|
|
- type: 'files', // 代表当前是 上传的文件
|
|
|
|
- title: '附件材料',
|
|
|
|
- value: [
|
|
|
|
- {
|
|
|
|
- type: 'pdf',
|
|
|
|
- name: '采购说明.pdf',
|
|
|
|
- size: '264.45KB'
|
|
|
|
- }
|
|
|
|
- ]
|
|
|
|
- },
|
|
|
|
- {
|
|
|
|
- type: 'images', // 代表当前是图片组
|
|
|
|
- title: '图片',
|
|
|
|
- value: [
|
|
|
|
- {
|
|
|
|
- url: 'http://xxxxx'
|
|
|
|
- },
|
|
|
|
- {
|
|
|
|
- url: 'http://xxxxx'
|
|
|
|
- },
|
|
|
|
- {
|
|
|
|
- url: 'http://xxxxx'
|
|
|
|
- }
|
|
|
|
- ]
|
|
|
|
- },
|
|
|
|
- {
|
|
|
|
- title: '支付方式',
|
|
|
|
- value: '银行转账' // NOTE: 转账方式理论上来讲也是一套枚举
|
|
|
|
- }
|
|
|
|
- ],
|
|
|
|
|
|
+ datalist: [],
|
|
|
|
+ // datalist: [
|
|
|
|
+ // {
|
|
|
|
+ // title: '审批编号',
|
|
|
|
+ // value: '20222110741458005442684',
|
|
|
|
+ // },
|
|
|
|
+ // {
|
|
|
|
+ // title: '合同编号',
|
|
|
|
+ // value: '20222110741458005442684',
|
|
|
|
+ // type: 'link' // 代表它是一个链接
|
|
|
|
+ // },
|
|
|
|
+ // {
|
|
|
|
+ // title: '所在部门',
|
|
|
|
+ // value: '深圳市第二特殊教育学校-教师部'
|
|
|
|
+ // },
|
|
|
|
+ // {
|
|
|
|
+ // title: '申请日期',
|
|
|
|
+ // value: '2022-11-07',
|
|
|
|
+ // type: 'date' // 代表返回的是unixtime 时间戳需要自己转义`dayjs`
|
|
|
|
+ // },
|
|
|
|
+ // {
|
|
|
|
+ // title: '申请人',
|
|
|
|
+ // value: '刘辉'
|
|
|
|
+ // },
|
|
|
|
+ // {
|
|
|
|
+ // title: '申请事由',
|
|
|
|
+ // value: '学生生活用品购买'
|
|
|
|
+ // },
|
|
|
|
+ // {
|
|
|
|
+ // title: '申购类型',
|
|
|
|
+ // value: '货物申购',
|
|
|
|
+ // type: 'type' // 类型字段意味着这是枚举需要自己配置
|
|
|
|
+ // },
|
|
|
|
+ // {
|
|
|
|
+ // type: 'projects',
|
|
|
|
+ // title: '申购明细',
|
|
|
|
+ // value: [
|
|
|
|
+ // {
|
|
|
|
+ // projectName: '学生冬季校服',
|
|
|
|
+ // count: 20,
|
|
|
|
+ // tags: ['蓝色', '165cm'],
|
|
|
|
+ // money: 56025
|
|
|
|
+ // },
|
|
|
|
+ // {
|
|
|
|
+ // projectName: '学生冬季校服',
|
|
|
|
+ // count: 30,
|
|
|
|
+ // tags: ['蓝色', '175cm'],
|
|
|
|
+ // money: 65025
|
|
|
|
+ // }
|
|
|
|
+ // ]
|
|
|
|
+ // },
|
|
|
|
+ // {
|
|
|
|
+ // title: '总金额',
|
|
|
|
+ // value: '100000'
|
|
|
|
+ // },
|
|
|
|
+ // {
|
|
|
|
+ // title: '预计申购完成日期',
|
|
|
|
+ // value: '2022-11-08'
|
|
|
|
+ // },
|
|
|
|
+ // {
|
|
|
|
+ // type: 'files', // 代表当前是 上传的文件
|
|
|
|
+ // title: '附件材料',
|
|
|
|
+ // value: [
|
|
|
|
+ // {
|
|
|
|
+ // type: 'pdf',
|
|
|
|
+ // name: '采购说明.pdf',
|
|
|
|
+ // size: '264.45KB'
|
|
|
|
+ // }
|
|
|
|
+ // ]
|
|
|
|
+ // },
|
|
|
|
+ // {
|
|
|
|
+ // type: 'images', // 代表当前是图片组
|
|
|
|
+ // title: '图片',
|
|
|
|
+ // value: [
|
|
|
|
+ // {
|
|
|
|
+ // url: 'http://xxxxx'
|
|
|
|
+ // },
|
|
|
|
+ // {
|
|
|
|
+ // url: 'http://xxxxx'
|
|
|
|
+ // },
|
|
|
|
+ // {
|
|
|
|
+ // url: 'http://xxxxx'
|
|
|
|
+ // }
|
|
|
|
+ // ]
|
|
|
|
+ // },
|
|
|
|
+ // {
|
|
|
|
+ // title: '支付方式',
|
|
|
|
+ // value: '银行转账' // NOTE: 转账方式理论上来讲也是一套枚举
|
|
|
|
+ // }
|
|
|
|
+ // ],
|
|
|
|
|
|
pageType: '', // 页面类型 info and approve
|
|
pageType: '', // 页面类型 info and approve
|
|
|
|
+ pageFrom: '',
|
|
apiFunc: null, // 接口函数
|
|
apiFunc: null, // 接口函数
|
|
id: '', // NOTE: 当前页面的(申请/审核)id
|
|
id: '', // NOTE: 当前页面的(申请/审核)id
|
|
|
|
|
|
-
|
|
|
|
|
|
+ createUser: null,
|
|
approveList: [],
|
|
approveList: [],
|
|
approveCopyList: [],
|
|
approveCopyList: [],
|
|
dataDetailStatus: -1,
|
|
dataDetailStatus: -1,
|
|
module: undefined,
|
|
module: undefined,
|
|
}
|
|
}
|
|
},
|
|
},
|
|
- created () {
|
|
|
|
|
|
+ created() {
|
|
const that = this
|
|
const that = this
|
|
-
|
|
|
|
|
|
+
|
|
setTitle({
|
|
setTitle({
|
|
title: '详情'
|
|
title: '详情'
|
|
})
|
|
})
|
|
@@ -222,35 +251,39 @@ export default {
|
|
},
|
|
},
|
|
methods: {
|
|
methods: {
|
|
// NOTE: 页面初始化的模块
|
|
// NOTE: 页面初始化的模块
|
|
- __init__ () {
|
|
|
|
- let { id, type } = this.$route.query
|
|
|
|
- this.id = id
|
|
|
|
|
|
+ __init__() {
|
|
|
|
+ let { id, type, from } = this.$route.query
|
|
|
|
+ this.id = Number(id)
|
|
this.pageType = type
|
|
this.pageType = type
|
|
|
|
+ this.pageFrom = from
|
|
|
|
|
|
|
|
+ // let paramsId = this.flag === 'info' ? 'id' : 'approve_id'
|
|
// TODO: 请求接口&整合数据给予`datalist`字段
|
|
// TODO: 请求接口&整合数据给予`datalist`字段
|
|
- this.apiFunc = type === 'info' ? ApproveInfoApi.getDetail : () => {}
|
|
|
|
|
|
+ this.apiFunc = type === 'info' ? approveInfoApi.getDetail : approveApi.getDetail
|
|
|
|
|
|
this.$nextTick(() => {
|
|
this.$nextTick(() => {
|
|
this.__detail__()
|
|
this.__detail__()
|
|
})
|
|
})
|
|
},
|
|
},
|
|
|
|
|
|
-
|
|
|
|
- async __detail__ () {
|
|
|
|
|
|
+ async __detail__() {
|
|
try {
|
|
try {
|
|
|
|
+ let paramsId = this.pageType === 'info' ? 'id' : 'approve_id'
|
|
|
|
+
|
|
const params = {
|
|
const params = {
|
|
- id: this.id
|
|
|
|
|
|
+ [paramsId]: this.id
|
|
}
|
|
}
|
|
const res = await this.apiFunc(params)
|
|
const res = await this.apiFunc(params)
|
|
if (res.code === 1) {
|
|
if (res.code === 1) {
|
|
this.dataDetail = res.data
|
|
this.dataDetail = res.data
|
|
console.log(res.data);
|
|
console.log(res.data);
|
|
- const { status, module, approve, approve_copy } = res.data
|
|
|
|
|
|
+ const { status, module, create_user, approve, approve_copy } = res.data
|
|
this.module = module
|
|
this.module = module
|
|
this.dataDetailStatus = status
|
|
this.dataDetailStatus = status
|
|
|
|
+ this.createUser = create_user
|
|
this.approveList = approve
|
|
this.approveList = approve
|
|
this.approveCopyList = approve_copy
|
|
this.approveCopyList = approve_copy
|
|
- this.datalist = await this.formatModuleInfoData(res.data)
|
|
|
|
|
|
+ this.datalist = formatApplyforRows(res.data)
|
|
|
|
|
|
}
|
|
}
|
|
} catch (e) {
|
|
} catch (e) {
|
|
@@ -265,21 +298,20 @@ export default {
|
|
},
|
|
},
|
|
|
|
|
|
// NOTE: 渲染`module_info`字段函数; 让其更好的渲染
|
|
// NOTE: 渲染`module_info`字段函数; 让其更好的渲染
|
|
- async formatModuleInfoData (data) {
|
|
|
|
|
|
+ async formatModuleInfoData(data) {
|
|
const { module, order_no, module_info, department_data } = data
|
|
const { module, order_no, module_info, department_data } = data
|
|
let evectionTypeMap = this.evectionTypeList
|
|
let evectionTypeMap = this.evectionTypeList
|
|
if (module === 5 && evectionTypeMap) {
|
|
if (module === 5 && evectionTypeMap) {
|
|
let vops = evectionTypeMap.filter(option => (option.id === module_info.type))[0]
|
|
let vops = evectionTypeMap.filter(option => (option.id === module_info.type))[0]
|
|
module_info.type_text = vops.name
|
|
module_info.type_text = vops.name
|
|
}
|
|
}
|
|
-
|
|
|
|
let temporaryList = [
|
|
let temporaryList = [
|
|
{
|
|
{
|
|
title: '审批编号',
|
|
title: '审批编号',
|
|
value: order_no
|
|
value: order_no
|
|
}
|
|
}
|
|
]
|
|
]
|
|
- switch(module) {
|
|
|
|
|
|
+ switch (module) {
|
|
case 5:
|
|
case 5:
|
|
temporaryList.push(...[
|
|
temporaryList.push(...[
|
|
{
|
|
{
|
|
@@ -300,11 +332,12 @@ export default {
|
|
{ title: '出差开始时间', value: module_info.start_time },
|
|
{ title: '出差开始时间', value: module_info.start_time },
|
|
{ title: '出差结束时间', value: module_info.end_time },
|
|
{ title: '出差结束时间', value: module_info.end_time },
|
|
|
|
|
|
- module_info.document_text.length ? { title: '附件材料',
|
|
|
|
|
|
+ module_info.document_text.length ? {
|
|
|
|
+ title: '附件材料',
|
|
type: 'files',
|
|
type: 'files',
|
|
value: module_info.document_text
|
|
value: module_info.document_text
|
|
} : undefined,
|
|
} : undefined,
|
|
-
|
|
|
|
|
|
+
|
|
module_info.images_text.length ? {
|
|
module_info.images_text.length ? {
|
|
type: 'images',
|
|
type: 'images',
|
|
title: '图片',
|
|
title: '图片',
|
|
@@ -324,7 +357,7 @@ export default {
|
|
value: module_info.remark
|
|
value: module_info.remark
|
|
}
|
|
}
|
|
])
|
|
])
|
|
- break
|
|
|
|
|
|
+ break
|
|
}
|
|
}
|
|
// NOTE: 过滤undefined的数组值
|
|
// NOTE: 过滤undefined的数组值
|
|
temporaryList = temporaryList.filter(row => row)
|
|
temporaryList = temporaryList.filter(row => row)
|
|
@@ -332,13 +365,13 @@ export default {
|
|
return Promise.resolve(temporaryList)
|
|
return Promise.resolve(temporaryList)
|
|
}
|
|
}
|
|
},
|
|
},
|
|
- beforeDestroy () {
|
|
|
|
|
|
+ beforeDestroy() {
|
|
if (this.isAndroid) {
|
|
if (this.isAndroid) {
|
|
// 安卓移除回调
|
|
// 安卓移除回调
|
|
dd.off('leftBtnClick', this.handleBackEvent)
|
|
dd.off('leftBtnClick', this.handleBackEvent)
|
|
}
|
|
}
|
|
},
|
|
},
|
|
-
|
|
|
|
|
|
+
|
|
}
|
|
}
|
|
</script>
|
|
</script>
|
|
|
|
|
|
@@ -351,11 +384,13 @@ export default {
|
|
margin-bottom: 10px;
|
|
margin-bottom: 10px;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
+
|
|
&__header {
|
|
&__header {
|
|
position: relative;
|
|
position: relative;
|
|
padding: 10px 12px;
|
|
padding: 10px 12px;
|
|
background-color: @white;
|
|
background-color: @white;
|
|
margin-bottom: 6px;
|
|
margin-bottom: 6px;
|
|
|
|
+
|
|
.float-status {
|
|
.float-status {
|
|
position: absolute;
|
|
position: absolute;
|
|
right: 12px;
|
|
right: 12px;
|
|
@@ -366,6 +401,7 @@ export default {
|
|
border-radius: 80px;
|
|
border-radius: 80px;
|
|
overflow: hidden;
|
|
overflow: hidden;
|
|
}
|
|
}
|
|
|
|
+
|
|
.title {
|
|
.title {
|
|
font-size: 16px;
|
|
font-size: 16px;
|
|
font-family: PingFangSC-Medium, PingFang SC;
|
|
font-family: PingFangSC-Medium, PingFang SC;
|
|
@@ -373,6 +409,7 @@ export default {
|
|
color: #191A1E;
|
|
color: #191A1E;
|
|
line-height: 24px;
|
|
line-height: 24px;
|
|
}
|
|
}
|
|
|
|
+
|
|
.location {
|
|
.location {
|
|
span {
|
|
span {
|
|
width: 137px;
|
|
width: 137px;
|
|
@@ -385,24 +422,29 @@ export default {
|
|
margin-left: 6px;
|
|
margin-left: 6px;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
+
|
|
.status-bar {
|
|
.status-bar {
|
|
span {
|
|
span {
|
|
font-size: @font-size-third;
|
|
font-size: @font-size-third;
|
|
font-weight: 500;
|
|
font-weight: 500;
|
|
line-height: 18px;
|
|
line-height: 18px;
|
|
}
|
|
}
|
|
|
|
+
|
|
&--success {
|
|
&--success {
|
|
color: @status-success-color;
|
|
color: @status-success-color;
|
|
}
|
|
}
|
|
|
|
+
|
|
&--warning {
|
|
&--warning {
|
|
color: @status-warning-color;
|
|
color: @status-warning-color;
|
|
}
|
|
}
|
|
|
|
+
|
|
&--danger {
|
|
&--danger {
|
|
color: @status-danger-color;
|
|
color: @status-danger-color;
|
|
}
|
|
}
|
|
|
|
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
+
|
|
&__main {
|
|
&__main {
|
|
padding: 14px 12px;
|
|
padding: 14px 12px;
|
|
background-color: @white;
|
|
background-color: @white;
|