feat(global): 移除无用功能及路由
This commit is contained in:
parent
21c8cb7d4a
commit
da928a121d
|
@ -2057,33 +2057,6 @@ export const constantRoutes = [
|
||||||
name: 'Activity',
|
name: 'Activity',
|
||||||
meta: { title: '营销管理', icon: 'yx', icon1: 'yxSel' },
|
meta: { title: '营销管理', icon: 'yx', icon1: 'yxSel' },
|
||||||
children: [
|
children: [
|
||||||
{
|
|
||||||
path: 'superStudioAdmin',
|
|
||||||
name: 'superStudioAdmin',
|
|
||||||
component: ParentView,
|
|
||||||
children: [
|
|
||||||
// {
|
|
||||||
// path: 'superStudioGift',
|
|
||||||
// name: 'superStudioGift',
|
|
||||||
// component: () => import('@/views/marketing/superStudioGift/index'),
|
|
||||||
// meta: { title: '超级工作室赠送' },
|
|
||||||
// },
|
|
||||||
{
|
|
||||||
path: 'superStudioMessage',
|
|
||||||
name: 'superStudioMessage',
|
|
||||||
component: () => import('@/views/marketing/superStudioGift/message'),
|
|
||||||
meta: { title: '基本信息' },
|
|
||||||
hidden: true
|
|
||||||
},
|
|
||||||
{
|
|
||||||
path: 'superStudioRule',
|
|
||||||
name: 'superStudioRule',
|
|
||||||
component: () => import('@/views/marketing/superStudioGift/rule'),
|
|
||||||
meta: { title: '规则设置' },
|
|
||||||
hidden: true
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
path: 'giftGoods',
|
path: 'giftGoods',
|
||||||
name: 'GiftGoods',
|
name: 'GiftGoods',
|
||||||
|
@ -2186,73 +2159,6 @@ export const constantRoutes = [
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
// {
|
|
||||||
// path: 'seaBean',
|
|
||||||
// name: 'SeaBean',
|
|
||||||
// component: ParentView,
|
|
||||||
// children: [
|
|
||||||
// {
|
|
||||||
// path: 'seaBeanList',
|
|
||||||
// name: 'SeaBeanList',
|
|
||||||
// component: () => import('@/views/marketing/seaBean/index'),
|
|
||||||
// meta: { title: '海豆赠送' }
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// path: 'addConsumptionInfo',
|
|
||||||
// name: 'AddConsumptionInfo',
|
|
||||||
// component: () => import('@/views/marketing/seaBean/addConsumptionInfo'),
|
|
||||||
// meta: { title: '基本信息' },
|
|
||||||
// hidden: true
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// path: 'seaBeanZxqc',
|
|
||||||
// name: 'seaBeanZxqc',
|
|
||||||
// component: () => import('@/views/marketing/seaBean/zxqc'),
|
|
||||||
// meta: { title: '在线签呈' },
|
|
||||||
// hidden: true
|
|
||||||
// }
|
|
||||||
// ]
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// path: 'plantCommonweal',
|
|
||||||
// name: 'PlantCommonweal',
|
|
||||||
// component: ParentView,
|
|
||||||
// children: [
|
|
||||||
// {
|
|
||||||
// path: 'plantCommonwealList',
|
|
||||||
// name: 'PlantCommonwealList',
|
|
||||||
// component: () => import('@/views/marketing/plantCommonweal/index'),
|
|
||||||
// meta: { title: '种植公益配置' }
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// path: 'addPlantCommonwealList',
|
|
||||||
// name: 'AddPlantCommonwealList',
|
|
||||||
// component: () => import('@/views/marketing/plantCommonweal/addCommonWeal.vue'),
|
|
||||||
// meta: { title: '基本信息' },
|
|
||||||
// hidden: true
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// path: 'plantZxqc',
|
|
||||||
// name: 'plantZxqc',
|
|
||||||
// component: () => import('@/views/marketing/plantCommonweal/plantZxqc'),
|
|
||||||
// meta: { title: '在线签呈' },
|
|
||||||
// hidden: true
|
|
||||||
// }
|
|
||||||
// ]
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// path: 'plantDetail',
|
|
||||||
// name: 'PlantDetail',
|
|
||||||
// component: ParentView,
|
|
||||||
// children: [
|
|
||||||
// {
|
|
||||||
// path: 'plantDetailList',
|
|
||||||
// name: 'PlantDetailList',
|
|
||||||
// component: () => import('@/views/marketing/plantDetail/index'),
|
|
||||||
// meta: { title: '种植公益明细' }
|
|
||||||
// }
|
|
||||||
// ]
|
|
||||||
// },
|
|
||||||
{
|
{
|
||||||
path: 'winningRecord',
|
path: 'winningRecord',
|
||||||
name: 'WinningRecord',
|
name: 'WinningRecord',
|
||||||
|
@ -2327,19 +2233,6 @@ export const constantRoutes = [
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
// {
|
|
||||||
// path: 'redbao',
|
|
||||||
// name: 'Redbao',
|
|
||||||
// component: ParentView,
|
|
||||||
// children: [
|
|
||||||
// {
|
|
||||||
// path: 'redbaoList',
|
|
||||||
// name: 'RedbaoList',
|
|
||||||
// component: () => import('@/views/marketing/redbao/index'),
|
|
||||||
// meta: { title: '红包配置' }
|
|
||||||
// }
|
|
||||||
// ]
|
|
||||||
// },
|
|
||||||
{
|
{
|
||||||
path: 'lottery',
|
path: 'lottery',
|
||||||
name: 'Lottery',
|
name: 'Lottery',
|
||||||
|
@ -2381,54 +2274,7 @@ export const constantRoutes = [
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
// {
|
|
||||||
// path: 'newcomerGift',
|
|
||||||
// name: 'NewcomerGift',
|
|
||||||
// component: ParentView,
|
|
||||||
// redirect: 'newcomerGiftList/index',
|
|
||||||
// children: [
|
|
||||||
// {
|
|
||||||
// path: 'newcomerGiftList',
|
|
||||||
// name: 'NewcomerGiftList',
|
|
||||||
// component: () => import('@/views/marketing/newcomerGift/index'),
|
|
||||||
// meta: { title: '新人礼包' }
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// path: 'newgiftInfo',
|
|
||||||
// name: 'NewgiftInfo',
|
|
||||||
// component: () => import('@/views/marketing/newcomerGift/newgiftInfo'),
|
|
||||||
// meta: { title: '基本信息' },
|
|
||||||
// hidden: true
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// path: 'newgiftRules',
|
|
||||||
// name: 'NewgiftRules',
|
|
||||||
// component: () => import('@/views/marketing/newcomerGift/newgiftRules'),
|
|
||||||
// meta: { title: '规则设置' },
|
|
||||||
// hidden: true
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// path: 'newgiftZxqc',
|
|
||||||
// name: 'NewgiftZxqc',
|
|
||||||
// component: () => import('@/views/marketing/newcomerGift/newgiftZxqc'),
|
|
||||||
// meta: { title: '在线签呈' },
|
|
||||||
// hidden: true
|
|
||||||
// }
|
|
||||||
// ]
|
|
||||||
// },
|
|
||||||
{
|
|
||||||
path: 'festivalGifts',
|
|
||||||
name: 'FestivalGifts',
|
|
||||||
component: ParentView,
|
|
||||||
children: [
|
|
||||||
{
|
|
||||||
path: 'festivalGiftsList',
|
|
||||||
name: 'FestivalGiftsList',
|
|
||||||
component: () => import('@/views/marketing/festivalGifts/index'),
|
|
||||||
meta: { title: '节日赠送' }
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
path: 'directGifts',
|
path: 'directGifts',
|
||||||
name: 'DirectGifts',
|
name: 'DirectGifts',
|
||||||
|
|
|
@ -1,19 +0,0 @@
|
||||||
<!--
|
|
||||||
* @Descripttion:
|
|
||||||
* @version:
|
|
||||||
* @Author: kBank
|
|
||||||
* @Date: 2023-04-24 09:04:03
|
|
||||||
-->
|
|
||||||
<template>
|
|
||||||
<div>节日赠送</div>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
export default {
|
|
||||||
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<style>
|
|
||||||
|
|
||||||
</style>
|
|
|
@ -1,352 +0,0 @@
|
||||||
<template>
|
|
||||||
<div class="page">
|
|
||||||
<topBar
|
|
||||||
v-if="topList.length > 0"
|
|
||||||
:topList="topList"
|
|
||||||
:moren="moren"
|
|
||||||
></topBar>
|
|
||||||
<div class="thetopbox">
|
|
||||||
<el-form ref="queryParams" :model="queryParams" label-width="100px">
|
|
||||||
<el-row>
|
|
||||||
<el-col :span="4">
|
|
||||||
<el-form-item :label="'活动名称'" prop="actName" class="el-inputs">
|
|
||||||
<el-input clearable v-model="queryParams.actName"></el-input>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="4">
|
|
||||||
<el-form-item
|
|
||||||
:label="'活动状态'"
|
|
||||||
prop="activityStatus"
|
|
||||||
class="el-inputs"
|
|
||||||
>
|
|
||||||
<el-select clearable v-model="queryParams.activityStatus">
|
|
||||||
<el-option
|
|
||||||
v-for="item in stateList"
|
|
||||||
:key="item.value"
|
|
||||||
:label="item.label"
|
|
||||||
:value="item.value"
|
|
||||||
></el-option>
|
|
||||||
</el-select>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="8">
|
|
||||||
<el-form-item :label="'开始日期'" prop="enableState">
|
|
||||||
<el-date-picker
|
|
||||||
@change="changeTime"
|
|
||||||
type="datetimerange"
|
|
||||||
range-separator="——"
|
|
||||||
:start-placeholder="'开始日期'"
|
|
||||||
:end-placeholder="'结束日期'"
|
|
||||||
value-format="yyyy-MM-dd HH:mm:ss"
|
|
||||||
:unlink-panels="true"
|
|
||||||
v-model="actTime1"
|
|
||||||
>
|
|
||||||
</el-date-picker>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="8">
|
|
||||||
<el-form-item :label="'结束日期'" prop="enableState">
|
|
||||||
<el-date-picker
|
|
||||||
@change="changeTime2"
|
|
||||||
type="datetimerange"
|
|
||||||
range-separator="——"
|
|
||||||
:start-placeholder="'开始日期'"
|
|
||||||
:end-placeholder="'结束日期'"
|
|
||||||
value-format="yyyy-MM-dd HH:mm:ss"
|
|
||||||
:unlink-panels="true"
|
|
||||||
v-model="actTime2"
|
|
||||||
>
|
|
||||||
</el-date-picker>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
<el-row>
|
|
||||||
<el-col :span="8">
|
|
||||||
<el-form-item :label="'创建日期'" prop="enableState">
|
|
||||||
<el-date-picker
|
|
||||||
@change="changeTime3"
|
|
||||||
type="datetimerange"
|
|
||||||
range-separator="——"
|
|
||||||
:start-placeholder="'开始日期'"
|
|
||||||
:end-placeholder="'结束日期'"
|
|
||||||
value-format="yyyy-MM-dd HH:mm:ss"
|
|
||||||
:unlink-panels="true"
|
|
||||||
v-model="actTime3"
|
|
||||||
>
|
|
||||||
</el-date-picker>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="4" style="margin-left: 30px">
|
|
||||||
<div class="searchbox">
|
|
||||||
<el-button class="my_search" @click="reSearch"> {{ '搜索' }}</el-button>
|
|
||||||
<el-button class="my_reset" @click="reChongzhi"> {{ '重置' }}</el-button>
|
|
||||||
</div>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
</el-form>
|
|
||||||
</div>
|
|
||||||
<div class="main">
|
|
||||||
<div class="maintop">
|
|
||||||
<div class="mainbtn">
|
|
||||||
<el-button size="mini" class="thebtn1"
|
|
||||||
v-hasButtons="['newAdd']" @click="adddate()"
|
|
||||||
>{{'添加'}}</el-button
|
|
||||||
>
|
|
||||||
<el-button size="mini"
|
|
||||||
v-hasButtons="['newExport']"
|
|
||||||
@click="handleExport"
|
|
||||||
class="exportBtn"> {{ '导出' }}</el-button>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="maintable">
|
|
||||||
<el-table
|
|
||||||
:data="tableData"
|
|
||||||
v-loading="loading"
|
|
||||||
style="width: 100%"
|
|
||||||
height="680px"
|
|
||||||
:header-cell-style="{ background: '#EEEEEE' }"
|
|
||||||
:row-class-name="tableRowClassName"
|
|
||||||
@selection-change="handleSelectionChange"
|
|
||||||
>
|
|
||||||
<el-table-column type="selection" width="55"> </el-table-column>
|
|
||||||
|
|
||||||
<el-table-column align="center" prop="actName" :label="'活动名称'">
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column align="center" prop="actStartDate" :label="'开始日期'">
|
|
||||||
</el-table-column>
|
|
||||||
|
|
||||||
<el-table-column align="center" prop="actEndDate" :label="'结束日期'">
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column
|
|
||||||
align="center"
|
|
||||||
prop="status"
|
|
||||||
:label="'活动状态'"
|
|
||||||
>
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column align="center" prop="creationTime" :label="'创建日期'">
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column
|
|
||||||
align="center"
|
|
||||||
prop="time"
|
|
||||||
:label="'操作'"
|
|
||||||
fixed="right"
|
|
||||||
>
|
|
||||||
<template slot-scope="scope">
|
|
||||||
<el-button
|
|
||||||
class="button-s"
|
|
||||||
style="color: #e70dec"
|
|
||||||
@click.native.prevent="toFixed(scope.row.pkId, 4)"
|
|
||||||
type="text"
|
|
||||||
v-hasButtons="['newSee']"
|
|
||||||
size="small"
|
|
||||||
>
|
|
||||||
{{ '查看' }}
|
|
||||||
</el-button>
|
|
||||||
<el-button
|
|
||||||
class="button-s"
|
|
||||||
style="color: #48b2fd"
|
|
||||||
@click.native.prevent="toFixed(scope.row.pkId, 2)"
|
|
||||||
type="text"
|
|
||||||
v-hasButtons="['newUpdata']"
|
|
||||||
size="small"
|
|
||||||
>
|
|
||||||
{{'修改'}}
|
|
||||||
</el-button>
|
|
||||||
|
|
||||||
<el-button
|
|
||||||
class="button-s"
|
|
||||||
@click.native.prevent="toFixed(scope.row.pkId, 3)"
|
|
||||||
type="text"
|
|
||||||
size="small"
|
|
||||||
v-hasButtons="['newDel']"
|
|
||||||
style="color: #c73030"
|
|
||||||
>
|
|
||||||
{{ '删除' }}
|
|
||||||
</el-button>
|
|
||||||
</template>
|
|
||||||
</el-table-column>
|
|
||||||
</el-table>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<pagination
|
|
||||||
v-show="total > 0"
|
|
||||||
:total="total"
|
|
||||||
:page.sync="queryParams.pageNum"
|
|
||||||
:limit.sync="queryParams.pageSize"
|
|
||||||
@pagination="reSearch"
|
|
||||||
/>
|
|
||||||
</div>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
import topBar from "@/components/topBar";
|
|
||||||
import * as api from "@/api/newgift";
|
|
||||||
export default {
|
|
||||||
name: "NewcomerGiftList",
|
|
||||||
components: {
|
|
||||||
topBar,
|
|
||||||
},
|
|
||||||
data() {
|
|
||||||
return {
|
|
||||||
moren: "newcomerGiftList",
|
|
||||||
topList: [
|
|
||||||
{
|
|
||||||
name: '新人礼包',
|
|
||||||
path: "newcomerGiftList",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
total: 0,
|
|
||||||
tableData: [],
|
|
||||||
loading:false,
|
|
||||||
queryParams: {
|
|
||||||
pageNum: 1,
|
|
||||||
pageSize: 50,
|
|
||||||
actType: 16,
|
|
||||||
},
|
|
||||||
multipleSelection: [],
|
|
||||||
stateList: [],
|
|
||||||
actTime1:"",
|
|
||||||
actTime2:"",
|
|
||||||
actTime3:""
|
|
||||||
};
|
|
||||||
},
|
|
||||||
created() {
|
|
||||||
this.reSearch();
|
|
||||||
this.getOther();
|
|
||||||
},
|
|
||||||
methods: {
|
|
||||||
reChongzhi() {
|
|
||||||
this.queryParams = {
|
|
||||||
pageNum: 1,
|
|
||||||
pageSize: 50,
|
|
||||||
actType: 16,
|
|
||||||
};
|
|
||||||
this.reSearch()
|
|
||||||
},
|
|
||||||
getOther() {
|
|
||||||
api.getActiveStatus().then((res) => {
|
|
||||||
this.stateList = res.data;
|
|
||||||
});
|
|
||||||
},
|
|
||||||
reSearch() {
|
|
||||||
this.loading = true
|
|
||||||
api.getNewPeopleList(this.queryParams).then((res) => {
|
|
||||||
this.tableData = res.rows;
|
|
||||||
this.total = res.total;
|
|
||||||
this.loading = false
|
|
||||||
});
|
|
||||||
},
|
|
||||||
adddate() {
|
|
||||||
this.$router.push({
|
|
||||||
path: "newgiftInfo",
|
|
||||||
query:{
|
|
||||||
controlType:1
|
|
||||||
}
|
|
||||||
});
|
|
||||||
},
|
|
||||||
// 点击修改
|
|
||||||
toFixed(id, index) {
|
|
||||||
this.$router.push({
|
|
||||||
path: "newgiftInfo",
|
|
||||||
query: {
|
|
||||||
pkId: id,
|
|
||||||
controlType: index,
|
|
||||||
},
|
|
||||||
});
|
|
||||||
},
|
|
||||||
handleSelectionChange(val) {
|
|
||||||
this.multipleSelection = val;
|
|
||||||
},
|
|
||||||
/** 导出按钮操作 */
|
|
||||||
handleExport() {
|
|
||||||
this.$confirm( '是否确认导出所有数据项?', '警告', {
|
|
||||||
confirmButtonText: '确定',
|
|
||||||
cancelButtonText: '取消',
|
|
||||||
type: 'warning',
|
|
||||||
}).then((_) => {
|
|
||||||
this.download(
|
|
||||||
'activity/manage/people-service/export',
|
|
||||||
Object.assign({},{actType:12}, this.queryParams, this.select),
|
|
||||||
`${'新人礼包'}${new Date().getTime()}.xlsx`
|
|
||||||
)
|
|
||||||
})
|
|
||||||
},
|
|
||||||
tableRowClassName({ row, rowIndex }) {
|
|
||||||
if (rowIndex % 2 == 1) {
|
|
||||||
return "warning-row";
|
|
||||||
} else if (rowIndex % 2 == 0) {
|
|
||||||
return "success-row";
|
|
||||||
}
|
|
||||||
return "";
|
|
||||||
},
|
|
||||||
changeTime(val) {
|
|
||||||
this.queryParams.startActStartDate = val?val[0]:''
|
|
||||||
this.queryParams.endActStartDate = val?val[1]:''
|
|
||||||
},
|
|
||||||
changeTime2(val) {
|
|
||||||
this.queryParams.startActEndDate = val?val[0]:''
|
|
||||||
this.queryParams.endActEndDate = val?val[1]:''
|
|
||||||
},
|
|
||||||
changeTime3(val) {
|
|
||||||
this.queryParams.startCreationTime = val?val[0]:''
|
|
||||||
this.queryParams.endCreationTime = val?val[1]:''
|
|
||||||
},
|
|
||||||
},
|
|
||||||
};
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
|
||||||
::v-deep .el-range-editor.el-input__inner {
|
|
||||||
width: 100%;
|
|
||||||
}
|
|
||||||
::v-deep .el-table .warning-row {
|
|
||||||
background: #f9f9f9;
|
|
||||||
}
|
|
||||||
|
|
||||||
::v-deep .el-table .success-row {
|
|
||||||
background: #ffffff;
|
|
||||||
}
|
|
||||||
::v-deep .el-table thead {
|
|
||||||
color: #000000;
|
|
||||||
}
|
|
||||||
.page {
|
|
||||||
padding: 10px 20px;
|
|
||||||
background: #f9f9f9;
|
|
||||||
font-size: 14px;
|
|
||||||
.thetopbox {
|
|
||||||
padding: 20px 20px 20px;
|
|
||||||
background: #ffffff;
|
|
||||||
border-radius: 8px;
|
|
||||||
.searchbox {
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
.searchtitle {
|
|
||||||
margin-right: 10px;
|
|
||||||
}
|
|
||||||
.searchbtn {
|
|
||||||
background: #c8161d;
|
|
||||||
color: #ffffff;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
.main {
|
|
||||||
background: #f9f9f9;
|
|
||||||
.maintop {
|
|
||||||
display: flex;
|
|
||||||
// padding: 10px 0;
|
|
||||||
justify-content: space-between;
|
|
||||||
align-items: center;
|
|
||||||
.mainbtn {
|
|
||||||
.thebtn1 {
|
|
||||||
background: #4391fd;
|
|
||||||
color: #ffffff;
|
|
||||||
}
|
|
||||||
.thebtn2 {
|
|
||||||
background: #ffad41;
|
|
||||||
color: #ffffff;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
</style>
|
|
|
@ -1,576 +0,0 @@
|
||||||
<template>
|
|
||||||
<div class="page">
|
|
||||||
<!-- <topBar v-if="topList.length > 0"
|
|
||||||
:topList="topList"
|
|
||||||
:moren="moren"></topBar> -->
|
|
||||||
<div class="topbox">
|
|
||||||
<div
|
|
||||||
v-for="(item, index) in topList"
|
|
||||||
:key="index"
|
|
||||||
class="levelList_i"
|
|
||||||
:class="tabActive == item.id ? 'act' : ''"
|
|
||||||
@click.prevent="handleLink(item.id)"
|
|
||||||
>
|
|
||||||
{{ item.name }}
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="main">
|
|
||||||
<div v-show="tabActive == 0">
|
|
||||||
<div class="tit">{{ '基本信息' }}</div>
|
|
||||||
<div class="xian" />
|
|
||||||
<el-form
|
|
||||||
ref="ruleForm"
|
|
||||||
:model="ruleForm"
|
|
||||||
:rules="rules"
|
|
||||||
label-width="auto"
|
|
||||||
class="demo-ruleForm"
|
|
||||||
>
|
|
||||||
<el-row>
|
|
||||||
<el-col :span="8">
|
|
||||||
<el-form-item :label="'活动名称'" required prop="actName">
|
|
||||||
<el-input
|
|
||||||
v-model="ruleForm.actName"
|
|
||||||
clearable
|
|
||||||
:disabled="lookOver"
|
|
||||||
/>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
<el-row>
|
|
||||||
<el-col :span="16">
|
|
||||||
<el-form-item :label="'活动说明'" required prop="actExplain">
|
|
||||||
<!-- <el-input
|
|
||||||
clearable
|
|
||||||
type="textarea"
|
|
||||||
v-model="ruleForm.actExplain"
|
|
||||||
:disabled="lookOver"
|
|
||||||
></el-input> -->
|
|
||||||
<editor
|
|
||||||
ref="sptwEditor"
|
|
||||||
v-model="ruleForm.actExplain"
|
|
||||||
:read-only="lookOver"
|
|
||||||
:min-height="196"
|
|
||||||
:upload-url="uploadImgUrl"
|
|
||||||
/>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
<el-row>
|
|
||||||
<el-col :span="8">
|
|
||||||
<el-form-item :label="'活动封面'" prop="actCover">
|
|
||||||
<imageUpload v-model="ruleForm.actCover" />
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
<el-row>
|
|
||||||
<el-col :span="24">
|
|
||||||
<el-form-item :label="'目标用户群体'" required>
|
|
||||||
<div class="flexed">
|
|
||||||
<el-checkbox
|
|
||||||
v-model="ruleForm.checked1"
|
|
||||||
class="flexed_l"
|
|
||||||
@change="getCheckTit($event, 1)"
|
|
||||||
>{{ '注册等级' }}</el-checkbox>
|
|
||||||
<el-checkbox-group
|
|
||||||
v-model="ruleForm.levelList"
|
|
||||||
@change="getCheck"
|
|
||||||
>
|
|
||||||
<el-checkbox
|
|
||||||
v-for="item in gradeList"
|
|
||||||
:key="item.pkId"
|
|
||||||
:label="item.pkId"
|
|
||||||
>{{ item.gradeName }}</el-checkbox>
|
|
||||||
</el-checkbox-group>
|
|
||||||
</div>
|
|
||||||
<div class="flexed">
|
|
||||||
<el-checkbox
|
|
||||||
v-model="ruleForm.checked2"
|
|
||||||
class="flexed_l"
|
|
||||||
@change="getCheckTit($event, 2)"
|
|
||||||
>{{ '荣誉奖衔' }}</el-checkbox>
|
|
||||||
<el-checkbox-group
|
|
||||||
v-model="ruleForm.realList"
|
|
||||||
@change="getCheck"
|
|
||||||
>
|
|
||||||
<el-checkbox
|
|
||||||
v-for="item in awardsList"
|
|
||||||
:key="item.pkId"
|
|
||||||
:label="item.pkId"
|
|
||||||
>{{ item.awardsName }}</el-checkbox>
|
|
||||||
</el-checkbox-group>
|
|
||||||
</div>
|
|
||||||
<div class="flexed">
|
|
||||||
<el-checkbox
|
|
||||||
v-model="ruleForm.checked3"
|
|
||||||
class="flexed_l"
|
|
||||||
@change="getCheckTit($event, 3)"
|
|
||||||
>{{ '权限中心' }}</el-checkbox>
|
|
||||||
<el-checkbox-group
|
|
||||||
v-model="ruleForm.centerList"
|
|
||||||
@change="getCheck"
|
|
||||||
>
|
|
||||||
<el-checkbox
|
|
||||||
v-for="item in registList"
|
|
||||||
:key="item.value"
|
|
||||||
:label="item.value"
|
|
||||||
>{{ item.label }}</el-checkbox>
|
|
||||||
</el-checkbox-group>
|
|
||||||
</div>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
<el-row>
|
|
||||||
<el-col :span="8">
|
|
||||||
<el-form-item required :label="'活动时间'" prop="ruleFormTime">
|
|
||||||
<el-date-picker
|
|
||||||
v-model="ruleForm.ruleFormTime"
|
|
||||||
:disabled="lookOver"
|
|
||||||
value-format="yyyy-MM-dd HH:mm:ss"
|
|
||||||
type="datetimerange"
|
|
||||||
:range-separator="'至'"
|
|
||||||
:start-placeholder="'开始日期'"
|
|
||||||
:end-placeholder="'结束日期'"
|
|
||||||
@change="changeTime"
|
|
||||||
/>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
<el-row>
|
|
||||||
<el-col :span="8">
|
|
||||||
<el-form-item required :label="'展示时间'" prop="ruleFormTime1">
|
|
||||||
<el-date-picker
|
|
||||||
v-model="ruleForm.ruleFormTime1"
|
|
||||||
:disabled="lookOver"
|
|
||||||
value-format="yyyy-MM-dd HH:mm:ss"
|
|
||||||
type="datetimerange"
|
|
||||||
:range-separator="'至'"
|
|
||||||
:start-placeholder="'开始日期'"
|
|
||||||
:end-placeholder="'结束日期'"
|
|
||||||
@change="changeTime1"
|
|
||||||
/>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
</el-form>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<newgiftRules v-show="tabActive == 1" ref="newgiftRules" :look-over="lookOver" />
|
|
||||||
</div>
|
|
||||||
<div class="footer">
|
|
||||||
<el-button size="small" class="cancelBtn"> {{ '取消' }}</el-button>
|
|
||||||
<el-button
|
|
||||||
size="small"
|
|
||||||
class="sureBtn"
|
|
||||||
@click="submit('ruleForm')"
|
|
||||||
> {{ '确认' }}</el-button>
|
|
||||||
</div>
|
|
||||||
<!-- </div> -->
|
|
||||||
</div>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
import Editor from '@/components/Editor'
|
|
||||||
|
|
||||||
import * as api from '@/api/giftGoods.js'
|
|
||||||
import * as gif from '@/api/newgift.js'
|
|
||||||
import topBar from '@/components/topBar'
|
|
||||||
import ImageUpload from '@/components/ImageUpload'
|
|
||||||
import newgiftRules from '@/views/marketing/newcomerGift/newgiftRules'
|
|
||||||
export default {
|
|
||||||
name: 'NewgiftInfo',
|
|
||||||
components: {
|
|
||||||
topBar,
|
|
||||||
ImageUpload,
|
|
||||||
newgiftRules,
|
|
||||||
Editor
|
|
||||||
},
|
|
||||||
data() {
|
|
||||||
return {
|
|
||||||
uploadImgUrl: process.env.VUE_APP_BASE_API + '/system/upload',
|
|
||||||
// moren: "newgiftInfo",
|
|
||||||
topList: [
|
|
||||||
{
|
|
||||||
name: '基本信息',
|
|
||||||
id: 0
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: '规则设置',
|
|
||||||
id: 1
|
|
||||||
}
|
|
||||||
],
|
|
||||||
ruleForm: {
|
|
||||||
checked1: false,
|
|
||||||
checked2: false,
|
|
||||||
checked3: false,
|
|
||||||
levelList: [],
|
|
||||||
realList: [],
|
|
||||||
centerList: [],
|
|
||||||
goalMemberConfigList: []
|
|
||||||
},
|
|
||||||
rules: {
|
|
||||||
actName: [
|
|
||||||
{ required: true, message: '请输入活动名称', trigger: 'blur' }
|
|
||||||
],
|
|
||||||
actExplain: [
|
|
||||||
{ required: true, message: '请输入活动说明', trigger: 'blur' }
|
|
||||||
],
|
|
||||||
actCover: [
|
|
||||||
{ required: true, message: '请上传活动封面', trigger: 'change' }
|
|
||||||
],
|
|
||||||
goalMemberConfigList: [
|
|
||||||
{ required: true, message: '请选择目标用户群体', trigger: 'change' }
|
|
||||||
],
|
|
||||||
ruleFormTime: [
|
|
||||||
{ required: true, message: '请选择活动时间', trigger: 'change' }
|
|
||||||
],
|
|
||||||
ruleFormTime1: [
|
|
||||||
{ required: true, message: '请选择展示时间', trigger: 'change' }
|
|
||||||
]
|
|
||||||
},
|
|
||||||
lookOver: false,
|
|
||||||
gradeList: [],
|
|
||||||
awardsList: [],
|
|
||||||
registList: [],
|
|
||||||
pkId: '',
|
|
||||||
waresConfigParam: [],
|
|
||||||
tabActive: 0,
|
|
||||||
controlType: ''
|
|
||||||
}
|
|
||||||
},
|
|
||||||
mounted() {
|
|
||||||
this.getData()
|
|
||||||
// (1=新增,2=修改,3=删除)4查看
|
|
||||||
if (
|
|
||||||
this.$route.query.controlType == 4 ||
|
|
||||||
this.$route.query.controlType == 3
|
|
||||||
) {
|
|
||||||
this.lookOver = true
|
|
||||||
} else {
|
|
||||||
this.lookOver = false
|
|
||||||
}
|
|
||||||
this.controlType = this.$route.query.controlType
|
|
||||||
this.pkId = this.$route.query.pkId || ''
|
|
||||||
if (this.pkId) {
|
|
||||||
this.getDetails()
|
|
||||||
}
|
|
||||||
if (this.$route.query.data) {
|
|
||||||
this.waresConfigParam = JSON.parse(this.$route.query.data)
|
|
||||||
// console.log(
|
|
||||||
// "%c [ this.waresConfigParam ]-260",
|
|
||||||
// "font-size:13px; background:#d492d6; color:#ffd6ff;",
|
|
||||||
// this.waresConfigParam
|
|
||||||
// );
|
|
||||||
this.getDetails1()
|
|
||||||
}
|
|
||||||
},
|
|
||||||
methods: {
|
|
||||||
getDetails1() {
|
|
||||||
this.$set(
|
|
||||||
this.ruleForm,
|
|
||||||
'actName',
|
|
||||||
this.waresConfigParam.activityParam.actName
|
|
||||||
)
|
|
||||||
this.$set(
|
|
||||||
this.ruleForm,
|
|
||||||
'actExplain',
|
|
||||||
this.waresConfigParam.activityParam.actExplain
|
|
||||||
)
|
|
||||||
this.$set(
|
|
||||||
this.ruleForm,
|
|
||||||
'actCover',
|
|
||||||
this.waresConfigParam.activityParam.actCover
|
|
||||||
)
|
|
||||||
this.$set(this.ruleForm, 'ruleFormTime', [
|
|
||||||
this.waresConfigParam.activityParam.actStartDate,
|
|
||||||
this.waresConfigParam.activityParam.actEndDate
|
|
||||||
])
|
|
||||||
this.$set(this.ruleForm, 'ruleFormTime1', [
|
|
||||||
this.waresConfigParam.activityParam.disStartDate,
|
|
||||||
this.waresConfigParam.activityParam.disEndDate
|
|
||||||
])
|
|
||||||
const arr1 = []
|
|
||||||
const arr2 = []
|
|
||||||
const arr3 = []
|
|
||||||
this.waresConfigParam.activityParam.goalMemberConfigList.forEach(
|
|
||||||
(item) => {
|
|
||||||
if (item.memberType == 1) {
|
|
||||||
arr1.push(item.pkLevel)
|
|
||||||
} else if (item.memberType == 2) {
|
|
||||||
arr2.push(item.pkLevel)
|
|
||||||
} else if (item.memberType == 3) {
|
|
||||||
arr3.push(item.pkLevel)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
)
|
|
||||||
this.$set(this.ruleForm, 'levelList', arr1)
|
|
||||||
this.$set(this.ruleForm, 'realList', arr2)
|
|
||||||
this.$set(this.ruleForm, 'centerList', arr3)
|
|
||||||
|
|
||||||
this.$refs.newgiftRules.getPage(
|
|
||||||
this.waresConfigParam.anpList || ''
|
|
||||||
)
|
|
||||||
|
|
||||||
const that = this
|
|
||||||
setTimeout(() => {
|
|
||||||
that.getCheck()
|
|
||||||
}, 500)
|
|
||||||
},
|
|
||||||
// 切换tab
|
|
||||||
handleLink(id) {
|
|
||||||
this.tabActive = id
|
|
||||||
if (this.pkId) {
|
|
||||||
this.$refs.newgiftRules.getPage(this.waresConfigParam)
|
|
||||||
}
|
|
||||||
},
|
|
||||||
getDetails() {
|
|
||||||
gif
|
|
||||||
.getNewPeopleDetails({
|
|
||||||
pkId: this.pkId
|
|
||||||
})
|
|
||||||
.then((res) => {
|
|
||||||
this.waresConfigParam = res.data.anpList
|
|
||||||
this.$set(this.ruleForm, 'actName', res.data.actName)
|
|
||||||
this.$set(this.ruleForm, 'actExplain', res.data.actExplain)
|
|
||||||
this.$set(this.ruleForm, 'actCover', res.data.actCover)
|
|
||||||
this.ruleForm.pkId = res.data.pkId
|
|
||||||
this.ruleForm.actStartDate = res.data.actStartDate
|
|
||||||
this.ruleForm.actEndDate = res.data.actEndDate
|
|
||||||
this.ruleForm.disStartDate = res.data.disStartDate
|
|
||||||
this.ruleForm.disEndDate = res.data.disEndDate
|
|
||||||
this.$set(this.ruleForm, 'ruleFormTime', [
|
|
||||||
res.data.actStartDate,
|
|
||||||
res.data.actEndDate
|
|
||||||
])
|
|
||||||
this.$set(this.ruleForm, 'ruleFormTime1', [
|
|
||||||
res.data.disStartDate,
|
|
||||||
res.data.disEndDate
|
|
||||||
])
|
|
||||||
const arr1 = []
|
|
||||||
const arr2 = []
|
|
||||||
const arr3 = []
|
|
||||||
res.data.goalMemberConfigList.forEach((item) => {
|
|
||||||
if (item.memberType == 1) {
|
|
||||||
arr1.push(item.pkLevel)
|
|
||||||
} else if (item.memberType == 2) {
|
|
||||||
arr2.push(item.pkLevel)
|
|
||||||
} else if (item.memberType == 3) {
|
|
||||||
arr3.push(item.pkLevel)
|
|
||||||
}
|
|
||||||
})
|
|
||||||
this.$set(this.ruleForm, 'levelList', arr1)
|
|
||||||
this.$set(this.ruleForm, 'realList', arr2)
|
|
||||||
this.$set(this.ruleForm, 'centerList', arr3)
|
|
||||||
const that = this
|
|
||||||
setTimeout(() => {
|
|
||||||
that.getCheck()
|
|
||||||
}, 50)
|
|
||||||
})
|
|
||||||
},
|
|
||||||
// 单选
|
|
||||||
getCheck() {
|
|
||||||
const arr1 = []
|
|
||||||
const arr2 = []
|
|
||||||
const arr3 = []
|
|
||||||
// 等级
|
|
||||||
this.ruleForm.levelList.forEach((item) => {
|
|
||||||
arr1.push({
|
|
||||||
memberType: 1,
|
|
||||||
pkLevel: item
|
|
||||||
})
|
|
||||||
})
|
|
||||||
// 奖衔
|
|
||||||
this.ruleForm.realList.forEach((item) => {
|
|
||||||
arr2.push({
|
|
||||||
memberType: 2,
|
|
||||||
pkLevel: item
|
|
||||||
})
|
|
||||||
})
|
|
||||||
// 权限
|
|
||||||
this.ruleForm.centerList.forEach((item) => {
|
|
||||||
arr3.push({
|
|
||||||
memberType: 3,
|
|
||||||
pkLevel: item
|
|
||||||
})
|
|
||||||
})
|
|
||||||
this.ruleForm.goalMemberConfigList = [...arr1, ...arr2, ...arr3]
|
|
||||||
|
|
||||||
// 单选全选全取消
|
|
||||||
if (this.ruleForm.levelList.length == this.gradeList.length) {
|
|
||||||
this.ruleForm.checked1 = true
|
|
||||||
} else {
|
|
||||||
this.ruleForm.checked1 = false
|
|
||||||
}
|
|
||||||
if (this.ruleForm.realList.length == this.awardsList.length) {
|
|
||||||
this.ruleForm.checked2 = true
|
|
||||||
} else {
|
|
||||||
this.ruleForm.checked2 = false
|
|
||||||
}
|
|
||||||
if (this.ruleForm.centerList.length == this.registList.length) {
|
|
||||||
this.ruleForm.checked3 = true
|
|
||||||
} else {
|
|
||||||
this.ruleForm.checked3 = false
|
|
||||||
}
|
|
||||||
},
|
|
||||||
// 全选
|
|
||||||
getCheckTit(val, index) {
|
|
||||||
// 等级
|
|
||||||
if (index == 1 && val) {
|
|
||||||
this.ruleForm.levelList = this.gradeList.map((item) => {
|
|
||||||
return item.pkId
|
|
||||||
})
|
|
||||||
} else if (index == 1 && !val) {
|
|
||||||
this.ruleForm.levelList = []
|
|
||||||
}
|
|
||||||
// 奖衔
|
|
||||||
if (index == 2 && val) {
|
|
||||||
this.ruleForm.realList = this.awardsList.map((item) => {
|
|
||||||
return item.pkId
|
|
||||||
})
|
|
||||||
} else if (index == 2 && !val) {
|
|
||||||
this.ruleForm.realList = []
|
|
||||||
}
|
|
||||||
// 权限
|
|
||||||
if (index == 3 && val) {
|
|
||||||
this.ruleForm.centerList = this.registList.map((item) => {
|
|
||||||
return item.value
|
|
||||||
})
|
|
||||||
} else if (index == 3 && !val) {
|
|
||||||
this.ruleForm.centerList = []
|
|
||||||
}
|
|
||||||
this.getCheck()
|
|
||||||
},
|
|
||||||
changeTime(val) {
|
|
||||||
this.ruleForm.actStartDate = val[0]
|
|
||||||
this.ruleForm.actEndDate = val[1]
|
|
||||||
},
|
|
||||||
changeTime1(val) {
|
|
||||||
this.ruleForm.disStartDate = val[0]
|
|
||||||
this.ruleForm.disEndDate = val[1]
|
|
||||||
},
|
|
||||||
getData() {
|
|
||||||
api.awardsList().then((res) => {
|
|
||||||
this.awardsList = res.rows
|
|
||||||
})
|
|
||||||
api.gradeList().then((res) => {
|
|
||||||
this.gradeList = res.rows
|
|
||||||
})
|
|
||||||
api.registerPowerState().then((res) => {
|
|
||||||
this.registList = res.data
|
|
||||||
})
|
|
||||||
},
|
|
||||||
submit() {
|
|
||||||
this.$refs['ruleForm'].validate((valid) => {
|
|
||||||
if (valid && this.controlType != 4) {
|
|
||||||
const obj = Object.assign(
|
|
||||||
{},
|
|
||||||
{
|
|
||||||
controlType: this.controlType,
|
|
||||||
activityParam: this.ruleForm,
|
|
||||||
anpList: this.$refs.newgiftRules.recommendUpgradeList
|
|
||||||
}
|
|
||||||
)
|
|
||||||
this.$router.push({
|
|
||||||
path: 'newgiftZxqc',
|
|
||||||
query: {
|
|
||||||
data: JSON.stringify(obj),
|
|
||||||
approvalBusiness: 713
|
|
||||||
}
|
|
||||||
})
|
|
||||||
}
|
|
||||||
})
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
|
||||||
.page {
|
|
||||||
padding: 20px;
|
|
||||||
background: #f9f9f9;
|
|
||||||
font-size: 14px;
|
|
||||||
.main_a {
|
|
||||||
height: calc(100vh - 144px);
|
|
||||||
display: flex;
|
|
||||||
flex-direction: column;
|
|
||||||
}
|
|
||||||
.main {
|
|
||||||
background: #ffffff;
|
|
||||||
border-radius: 8px;
|
|
||||||
// height: calc(100vh - 124px);
|
|
||||||
box-shadow: 0px 2px 20px 0px rgba(238, 238, 238, 0.5);
|
|
||||||
}
|
|
||||||
::v-deep .el-select {
|
|
||||||
width: 100%;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
.footer {
|
|
||||||
height: 68px;
|
|
||||||
background: #ffffff;
|
|
||||||
box-shadow: 0px -3px 20px 0px rgba(204, 204, 204, 0.5);
|
|
||||||
// margin: 0 20px;
|
|
||||||
display: flex;
|
|
||||||
justify-content: center;
|
|
||||||
align-items: center;
|
|
||||||
.thebtn1 {
|
|
||||||
background: #3181e5;
|
|
||||||
color: #ffffff;
|
|
||||||
padding: 9px 45px;
|
|
||||||
}
|
|
||||||
.thebtn2 {
|
|
||||||
background: #cccccc;
|
|
||||||
color: #ffffff;
|
|
||||||
padding: 9px 45px;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
.tit {
|
|
||||||
font-size: 14px;
|
|
||||||
font-weight: bold;
|
|
||||||
color: #333333;
|
|
||||||
padding: 0 20px;
|
|
||||||
border-left: 5px solid #c8161d;
|
|
||||||
margin: 20px 0 10px 0;
|
|
||||||
}
|
|
||||||
.xian {
|
|
||||||
height: 1px;
|
|
||||||
background: rgba(0, 0, 0, 0.1);
|
|
||||||
}
|
|
||||||
.demo-ruleForm {
|
|
||||||
padding: 20px 0;
|
|
||||||
}
|
|
||||||
::v-deep .el-date-editor--datetimerange {
|
|
||||||
width: auto !important;
|
|
||||||
}
|
|
||||||
.flexed {
|
|
||||||
display: flex;
|
|
||||||
}
|
|
||||||
.flexed_l {
|
|
||||||
margin-right: 20px;
|
|
||||||
}
|
|
||||||
.topbox {
|
|
||||||
align-items: center;
|
|
||||||
padding: 0px 0 3px 0;
|
|
||||||
display: flex;
|
|
||||||
// background: skyblue;
|
|
||||||
.levelList_i {
|
|
||||||
margin-left: 20px;
|
|
||||||
position: relative;
|
|
||||||
cursor: pointer;
|
|
||||||
padding: 4px 15px;
|
|
||||||
// width: 88px;
|
|
||||||
// height: 34px;
|
|
||||||
border-radius: 17px;
|
|
||||||
border: 1px solid #cccccc;
|
|
||||||
font-size: 12px;
|
|
||||||
font-family: MicrosoftYaHei;
|
|
||||||
text-align: center;
|
|
||||||
// line-height: 34px;
|
|
||||||
}
|
|
||||||
.act {
|
|
||||||
color: #ffffff;
|
|
||||||
background: #c8161d;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
::v-deep .el-form-item {
|
|
||||||
margin-bottom: 20px!important;
|
|
||||||
}
|
|
||||||
</style>
|
|
|
@ -1,892 +0,0 @@
|
||||||
<template>
|
|
||||||
<div class="page">
|
|
||||||
<div>
|
|
||||||
<div class="tit">{{ '规则设置' }}</div>
|
|
||||||
<div class="xian"></div>
|
|
||||||
<div class="table">
|
|
||||||
<!-- 批量操作 -->
|
|
||||||
<table>
|
|
||||||
<tr>
|
|
||||||
<th colspan="1" class="tableLeft">
|
|
||||||
<el-button
|
|
||||||
type="primary"
|
|
||||||
:disabled="lookOver"
|
|
||||||
@click="addNewGoods"
|
|
||||||
size="mini"
|
|
||||||
>{{ '添加' }}
|
|
||||||
</el-button>
|
|
||||||
</th>
|
|
||||||
<th colspan="2" style="padding-bottom: 0; border: 0">
|
|
||||||
<div class="tableFlex">
|
|
||||||
<div class="tableFlex_i">
|
|
||||||
<el-select
|
|
||||||
v-model="plcz.pkGrade"
|
|
||||||
size="medium"
|
|
||||||
:placeholder="'注册等级'"
|
|
||||||
:disabled="lookOver"
|
|
||||||
>
|
|
||||||
<el-option
|
|
||||||
v-for="item in gradeList"
|
|
||||||
:key="item.pkId"
|
|
||||||
:label="item.gradeName"
|
|
||||||
:value="item.pkId"
|
|
||||||
>
|
|
||||||
</el-option>
|
|
||||||
</el-select>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</th>
|
|
||||||
<th colspan="6" style="padding-bottom: 0; border: 0">
|
|
||||||
<div class="tableFlex">
|
|
||||||
<div class="tableFlex_i">
|
|
||||||
<el-input
|
|
||||||
:placeholder="'方案'"
|
|
||||||
size="medium"
|
|
||||||
v-model="plcz.plan"
|
|
||||||
:disabled="lookOver"
|
|
||||||
></el-input>
|
|
||||||
</div>
|
|
||||||
<div class="tableFlex_i">
|
|
||||||
<el-input
|
|
||||||
:placeholder="'价格'"
|
|
||||||
size="medium"
|
|
||||||
v-model="plcz.price"
|
|
||||||
:disabled="lookOver"
|
|
||||||
></el-input>
|
|
||||||
</div>
|
|
||||||
<div class="tableFlex_i">
|
|
||||||
<el-input
|
|
||||||
:placeholder="'有限期'"
|
|
||||||
size="medium"
|
|
||||||
v-model="plcz.term"
|
|
||||||
:disabled="lookOver"
|
|
||||||
></el-input>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</th>
|
|
||||||
<th colspan="4"></th>
|
|
||||||
|
|
||||||
<th colspan="7" style="padding-bottom: 0; border-left: 0">
|
|
||||||
<div class="tableFlex">
|
|
||||||
<div class="tableFlex_i"></div>
|
|
||||||
<div class="tableFlex_i"></div>
|
|
||||||
<div class="tableFlex_i">
|
|
||||||
<el-input
|
|
||||||
:placeholder="'产品价格'"
|
|
||||||
size="medium"
|
|
||||||
v-model="plcz.price2"
|
|
||||||
:disabled="lookOver"
|
|
||||||
></el-input>
|
|
||||||
</div>
|
|
||||||
<div class="tableFlex_i">
|
|
||||||
<el-input
|
|
||||||
:placeholder="'赠送数量'"
|
|
||||||
size="medium"
|
|
||||||
v-model="plcz.quantity"
|
|
||||||
:disabled="lookOver"
|
|
||||||
></el-input>
|
|
||||||
</div>
|
|
||||||
<div class="tableAdd"></div>
|
|
||||||
</div>
|
|
||||||
</th>
|
|
||||||
<th colspan="2" style="padding-bottom: 0">
|
|
||||||
<div class="tableFlex">
|
|
||||||
<div class="tableFlex_i">
|
|
||||||
<el-button
|
|
||||||
type="primary"
|
|
||||||
:disabled="lookOver"
|
|
||||||
@click="toPlcz"
|
|
||||||
size="mini"
|
|
||||||
>{{ '批量操作' }}</el-button
|
|
||||||
>
|
|
||||||
</div>
|
|
||||||
<div class="tableFlex_i">
|
|
||||||
<el-button size="mini" :disabled="lookOver" @click="reset">
|
|
||||||
{{ '重置' }}</el-button
|
|
||||||
>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</th>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<table class="table_b">
|
|
||||||
<tr style="border-top: 0">
|
|
||||||
<td colspan="1" style="border: 0"></td>
|
|
||||||
<td colspan="2">{{ '注册等级' }}</td>
|
|
||||||
<td colspan="6" style="padding-bottom: 0">
|
|
||||||
<div class="tableFlex">
|
|
||||||
<!-- <div class="tableFlex_i">结算等级</div> -->
|
|
||||||
<div class="tableFlex_i">{{ '方案' }}</div>
|
|
||||||
<div class="tableFlex_i">{{ '价格' }}</div>
|
|
||||||
<div class="tableFlex_i">{{ '有限期' }}</div>
|
|
||||||
</div>
|
|
||||||
</td>
|
|
||||||
<td colspan="2">{{ '必选商品' }}</td>
|
|
||||||
<td colspan="2">{{ '屏蔽商品' }}</td>
|
|
||||||
<td colspan="7" style="padding-bottom: 0">
|
|
||||||
<div class="tableFlex">
|
|
||||||
<div class="tableFlex_i">{{ '赠送产品' }}</div>
|
|
||||||
<div class="tableFlex_i">{{ '产品规格' }}</div>
|
|
||||||
<div class="tableFlex_i">{{ '产品价格' }}</div>
|
|
||||||
<div class="tableFlex_i">{{ '赠送数量' }}</div>
|
|
||||||
<div class="tableAdd"></div>
|
|
||||||
</div>
|
|
||||||
</td>
|
|
||||||
<td colspan="2" style="border: 0"></td>
|
|
||||||
</tr>
|
|
||||||
<tr v-for="(item, index) in recommendUpgradeList" :key="index">
|
|
||||||
<td style="border: 0"></td>
|
|
||||||
<td colspan="2" style="padding-bottom: 0">
|
|
||||||
<div class="tableFlex">
|
|
||||||
<div class="tableFlex_i">
|
|
||||||
<el-select
|
|
||||||
v-model="item.pkGrade"
|
|
||||||
size="medium"
|
|
||||||
:placeholder="'注册等级'"
|
|
||||||
:disabled="lookOver"
|
|
||||||
>
|
|
||||||
<el-option
|
|
||||||
v-for="item in gradeList"
|
|
||||||
:key="item.pkId"
|
|
||||||
:label="item.gradeName"
|
|
||||||
:value="item.pkId"
|
|
||||||
>
|
|
||||||
</el-option>
|
|
||||||
</el-select>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</td>
|
|
||||||
<td colspan="6" style="padding-bottom: 0">
|
|
||||||
<div class="tableFlex">
|
|
||||||
<div class="tableFlex_i">
|
|
||||||
<el-input
|
|
||||||
:placeholder="'方案'"
|
|
||||||
size="medium"
|
|
||||||
v-model="item.plan"
|
|
||||||
:disabled="lookOver"
|
|
||||||
></el-input>
|
|
||||||
</div>
|
|
||||||
<div class="tableFlex_i">
|
|
||||||
<el-input
|
|
||||||
:placeholder="'价格'"
|
|
||||||
size="medium"
|
|
||||||
v-model="item.price"
|
|
||||||
:disabled="lookOver"
|
|
||||||
></el-input>
|
|
||||||
</div>
|
|
||||||
<div class="tableFlex_i">
|
|
||||||
<el-input
|
|
||||||
:placeholder="'有限期'"
|
|
||||||
size="medium"
|
|
||||||
v-model="item.term"
|
|
||||||
:disabled="lookOver"
|
|
||||||
></el-input>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</td>
|
|
||||||
<td colspan="2" style="padding-bottom: 0">
|
|
||||||
<div class="tableFlex">
|
|
||||||
<div class="tableFlex_i">
|
|
||||||
<el-select
|
|
||||||
v-model="item.mustWares"
|
|
||||||
size="medium"
|
|
||||||
filterable
|
|
||||||
:placeholder="'请选择'"
|
|
||||||
:disabled="lookOver"
|
|
||||||
>
|
|
||||||
<el-option
|
|
||||||
v-for="citem in allGoods"
|
|
||||||
:key="citem.pkId"
|
|
||||||
:label="citem.waresName"
|
|
||||||
:value="citem.pkId"
|
|
||||||
>
|
|
||||||
<span style="float: left">{{ citem.waresName }}</span>
|
|
||||||
<span
|
|
||||||
style="float: right; color: #8492a6; font-size: 13px"
|
|
||||||
>{{ citem.waresCode }}</span
|
|
||||||
>
|
|
||||||
</el-option>
|
|
||||||
</el-select>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</td>
|
|
||||||
<td colspan="2" style="padding-bottom: 0">
|
|
||||||
<div class="tableFlex">
|
|
||||||
<div class="tableFlex_i">
|
|
||||||
<el-select
|
|
||||||
v-model="item.shieldWares"
|
|
||||||
size="medium"
|
|
||||||
filterable
|
|
||||||
:placeholder="'请选择'"
|
|
||||||
:disabled="lookOver"
|
|
||||||
>
|
|
||||||
<el-option
|
|
||||||
v-for="citem in allGoods"
|
|
||||||
:key="citem.pkId"
|
|
||||||
:label="citem.waresName"
|
|
||||||
:value="citem.pkId"
|
|
||||||
>
|
|
||||||
<span style="float: left">{{ citem.waresName }}</span>
|
|
||||||
<span
|
|
||||||
style="float: right; color: #8492a6; font-size: 13px"
|
|
||||||
>{{ citem.waresCode }}</span
|
|
||||||
>
|
|
||||||
</el-option>
|
|
||||||
</el-select>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</td>
|
|
||||||
<td colspan="7" style="padding-bottom: 0">
|
|
||||||
<div
|
|
||||||
class="tableFlex"
|
|
||||||
v-for="(ctem, cndex) in item.agcList"
|
|
||||||
:key="cndex"
|
|
||||||
>
|
|
||||||
<div class="tableFlex_i">
|
|
||||||
<el-input
|
|
||||||
:placeholder="'请选择赠送产品'"
|
|
||||||
v-model="ctem.productName"
|
|
||||||
:disabled="lookOver"
|
|
||||||
@focus="getProduct(index, cndex)"
|
|
||||||
></el-input>
|
|
||||||
</div>
|
|
||||||
<div class="tableFlex_i">
|
|
||||||
<el-input
|
|
||||||
disabled
|
|
||||||
size="medium"
|
|
||||||
v-model="ctem.specsName"
|
|
||||||
></el-input>
|
|
||||||
</div>
|
|
||||||
<div class="tableFlex_i">
|
|
||||||
<el-input
|
|
||||||
size="medium"
|
|
||||||
:disabled="lookOver"
|
|
||||||
v-model="ctem.price"
|
|
||||||
></el-input>
|
|
||||||
</div>
|
|
||||||
<div class="tableFlex_i">
|
|
||||||
<el-input
|
|
||||||
size="medium"
|
|
||||||
:disabled="lookOver"
|
|
||||||
v-model="ctem.quantity"
|
|
||||||
></el-input>
|
|
||||||
</div>
|
|
||||||
<div class="tableAdd">
|
|
||||||
<img
|
|
||||||
src="@/assets/images/iconpop.png"
|
|
||||||
@click="reduceProduct(index, cndex)"
|
|
||||||
alt=""
|
|
||||||
/>
|
|
||||||
<img
|
|
||||||
v-if="cndex == item.agcList.length - 1"
|
|
||||||
src="@/assets/images/iconadd.png"
|
|
||||||
@click="addProduct(index, cndex)"
|
|
||||||
alt=""
|
|
||||||
/>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="tableAddPro" v-show="item.agcList.length == 0">
|
|
||||||
{{ '添加产品' }}
|
|
||||||
<img
|
|
||||||
src="@/assets/images/iconadd.png"
|
|
||||||
@click="addProduct(index, cndex)"
|
|
||||||
alt=""
|
|
||||||
/>
|
|
||||||
</div>
|
|
||||||
</td>
|
|
||||||
<td colspan="2" style="border: 0"></td>
|
|
||||||
</tr>
|
|
||||||
<tr v-if="recommendUpgradeList.length > 0">
|
|
||||||
<td colspan="1"></td>
|
|
||||||
<td colspan="19">
|
|
||||||
<div class="tableAdd" style="margin: 0 auto">
|
|
||||||
<img
|
|
||||||
style="cursor: pointer"
|
|
||||||
src="@/assets/images/iconpop.png"
|
|
||||||
@click="reduceNewGoods()"
|
|
||||||
alt=""
|
|
||||||
/>
|
|
||||||
</div>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<!-- <div class="footer">
|
|
||||||
<el-button size="small"
|
|
||||||
class="thebtn2"> {{ '取消' }}</el-button>
|
|
||||||
<el-button size="small"
|
|
||||||
@click="submit"
|
|
||||||
class="thebtn1"> {{ '确认' }}</el-button>
|
|
||||||
</div> -->
|
|
||||||
<el-dialog
|
|
||||||
:title="'添加'"
|
|
||||||
:visible.sync="dialogVisible"
|
|
||||||
:close-on-click-modal="false"
|
|
||||||
width="40%"
|
|
||||||
center
|
|
||||||
:before-close="handleClose"
|
|
||||||
>
|
|
||||||
<div class="cpHeight">
|
|
||||||
<el-row>
|
|
||||||
<el-col :span="22">
|
|
||||||
<el-input
|
|
||||||
v-model="select.queryInfo"
|
|
||||||
clearable
|
|
||||||
:placeholder="'请输入'"
|
|
||||||
@keyup.enter.native="getDataList"
|
|
||||||
prefix-icon="el-icon-search"
|
|
||||||
></el-input>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="2">
|
|
||||||
<el-button type="primary" size="small" @click="getDataList">
|
|
||||||
{{ '搜索' }}</el-button
|
|
||||||
>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
<div style="height: 10px"></div>
|
|
||||||
<el-table
|
|
||||||
:data="dialogList"
|
|
||||||
ref="multipleTable"
|
|
||||||
style="width: 100%"
|
|
||||||
@select-all="onSelectAll"
|
|
||||||
@select="selected"
|
|
||||||
:header-cell-style="{ background: '#EEEEEE' }"
|
|
||||||
:row-class-name="tableRowClassName"
|
|
||||||
>
|
|
||||||
<el-table-column type="selection" width="55"> </el-table-column>
|
|
||||||
<el-table-column
|
|
||||||
align="center"
|
|
||||||
prop="productName"
|
|
||||||
:label="'产品名称'"
|
|
||||||
>
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column
|
|
||||||
align="center"
|
|
||||||
prop="productCode"
|
|
||||||
:label="'产品编号'"
|
|
||||||
>
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column
|
|
||||||
align="center"
|
|
||||||
prop="productName"
|
|
||||||
:label="'规格'"
|
|
||||||
>
|
|
||||||
<template slot-scope="scope">
|
|
||||||
<div
|
|
||||||
class="blueCor"
|
|
||||||
v-show="
|
|
||||||
scope.row.selSkuNameList == '' ||
|
|
||||||
scope.row.selSkuNameList == undefined
|
|
||||||
"
|
|
||||||
@click="selSku(scope.row.pkId, scope.$index)"
|
|
||||||
>
|
|
||||||
{{ '选择规格' }}
|
|
||||||
</div>
|
|
||||||
<div
|
|
||||||
class="blueCor"
|
|
||||||
v-show="
|
|
||||||
scope.row.selSkuNameList != '' &&
|
|
||||||
scope.row.selSkuNameList != undefined
|
|
||||||
"
|
|
||||||
@click="selSku(scope.row.pkId, scope.$index)"
|
|
||||||
>
|
|
||||||
{{ scope.row.selSkuNameList }}
|
|
||||||
</div>
|
|
||||||
</template>
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column
|
|
||||||
align="center"
|
|
||||||
prop="productName"
|
|
||||||
:label="'商品数量'"
|
|
||||||
>
|
|
||||||
<template slot-scope="scope">
|
|
||||||
<el-input-number
|
|
||||||
size="mini"
|
|
||||||
v-model="scope.row.quantity"
|
|
||||||
:min="1"
|
|
||||||
></el-input-number>
|
|
||||||
</template>
|
|
||||||
</el-table-column>
|
|
||||||
</el-table>
|
|
||||||
</div>
|
|
||||||
<pagination
|
|
||||||
v-show="total > 0"
|
|
||||||
:total="total"
|
|
||||||
:page.sync="queryParams.pageNum"
|
|
||||||
:limit.sync="queryParams.pageSize"
|
|
||||||
@pagination="getDataList"
|
|
||||||
/>
|
|
||||||
<span slot="footer" class="dialog-footer">
|
|
||||||
<el-button @click="handleClose">{{ '取消' }}</el-button>
|
|
||||||
<el-button type="primary" @click="sureProduct">{{
|
|
||||||
'确认'
|
|
||||||
}}</el-button>
|
|
||||||
</span>
|
|
||||||
</el-dialog>
|
|
||||||
<el-dialog
|
|
||||||
:title="'规格'"
|
|
||||||
:visible.sync="ggVisible"
|
|
||||||
:close-on-click-modal="false"
|
|
||||||
width="40%"
|
|
||||||
center
|
|
||||||
:before-close="handleCloseGg"
|
|
||||||
>
|
|
||||||
<div>
|
|
||||||
<el-form>
|
|
||||||
<el-form-item
|
|
||||||
:label="item.typeName"
|
|
||||||
v-for="(item, index) in skuList"
|
|
||||||
:key="index"
|
|
||||||
>
|
|
||||||
<el-radio-group v-model="item.pkProductSku">
|
|
||||||
<el-radio
|
|
||||||
v-for="(ctem, cndex) in item.specsList"
|
|
||||||
@change="getCheckBox(item.pkId, item.specsName)"
|
|
||||||
:key="ctem.pkId"
|
|
||||||
:label="ctem.pkId"
|
|
||||||
>{{ ctem.specsName }}</el-radio
|
|
||||||
>
|
|
||||||
</el-radio-group>
|
|
||||||
</el-form-item>
|
|
||||||
</el-form>
|
|
||||||
</div>
|
|
||||||
<span slot="footer" class="dialog-footer">
|
|
||||||
<el-button @click="handleCloseGg">{{ '取消' }}</el-button>
|
|
||||||
<el-button type="primary" @click="sureSku">{{
|
|
||||||
'确认'
|
|
||||||
}}</el-button>
|
|
||||||
</span>
|
|
||||||
</el-dialog>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
import * as api from "@/api/giftGoods.js";
|
|
||||||
import ImageUpload from "@/components/ImageUpload";
|
|
||||||
export default {
|
|
||||||
name: "NewgiftRules",
|
|
||||||
components: {
|
|
||||||
ImageUpload,
|
|
||||||
},
|
|
||||||
props: {
|
|
||||||
lookOver: {
|
|
||||||
type: Boolean,
|
|
||||||
default: false,
|
|
||||||
},
|
|
||||||
},
|
|
||||||
data() {
|
|
||||||
return {
|
|
||||||
dialogVisible: false,
|
|
||||||
ggVisible: false,
|
|
||||||
queryParams: {
|
|
||||||
pageNum: 1,
|
|
||||||
pageSize: 50,
|
|
||||||
},
|
|
||||||
total: 0,
|
|
||||||
allData: [], //全部数据
|
|
||||||
areaList: [], //全部专区
|
|
||||||
isArea: "",
|
|
||||||
plcz: {},
|
|
||||||
select: {}, //产品筛选
|
|
||||||
dialogList: [], //产品数组
|
|
||||||
selectData: [], //选中
|
|
||||||
skuList: [], //规格数组
|
|
||||||
gradeList: [], //规格数组
|
|
||||||
selSkuList: "",
|
|
||||||
selSkuNameList: "",
|
|
||||||
selIndex: "",
|
|
||||||
showCndex: "",
|
|
||||||
showIndex: "",
|
|
||||||
pageData: {},
|
|
||||||
recommendUpgradeList: [],
|
|
||||||
allGoods: [],
|
|
||||||
};
|
|
||||||
},
|
|
||||||
mounted() {
|
|
||||||
this.getData();
|
|
||||||
},
|
|
||||||
methods: {
|
|
||||||
getPage(allData) {
|
|
||||||
this.recommendUpgradeList = allData;
|
|
||||||
console.log("🌈allData", allData);
|
|
||||||
},
|
|
||||||
getData() {
|
|
||||||
api.gradeList().then((res) => {
|
|
||||||
this.gradeList = res.rows;
|
|
||||||
});
|
|
||||||
api.waresList().then((res) => {
|
|
||||||
this.allGoods = res.data;
|
|
||||||
});
|
|
||||||
},
|
|
||||||
sureSku() {
|
|
||||||
this.$set(this.dialogList[this.selIndex], "selSkuList", this.selSkuList);
|
|
||||||
this.$set(
|
|
||||||
this.dialogList[this.selIndex],
|
|
||||||
"selSkuNameList",
|
|
||||||
this.selSkuNameList
|
|
||||||
);
|
|
||||||
this.ggVisible = false;
|
|
||||||
},
|
|
||||||
sureProduct() {
|
|
||||||
if (this.selectData.length == 0) {
|
|
||||||
this.$message({
|
|
||||||
message: '请选择产品',
|
|
||||||
type: "warning",
|
|
||||||
});
|
|
||||||
return false;
|
|
||||||
} else {
|
|
||||||
this.recommendUpgradeList[this.showIndex].agcList[
|
|
||||||
this.showCndex
|
|
||||||
].pkProduct = this.selectData.pkId;
|
|
||||||
|
|
||||||
this.recommendUpgradeList[this.showIndex].agcList[
|
|
||||||
this.showCndex
|
|
||||||
].productName = this.selectData.productName;
|
|
||||||
|
|
||||||
this.recommendUpgradeList[this.showIndex].agcList[
|
|
||||||
this.showCndex
|
|
||||||
].specsName = this.selectData.selSkuNameList;
|
|
||||||
|
|
||||||
this.recommendUpgradeList[this.showIndex].agcList[
|
|
||||||
this.showCndex
|
|
||||||
].specsNameId = this.selectData.selSkuList;
|
|
||||||
|
|
||||||
this.recommendUpgradeList[this.showIndex].agcList[
|
|
||||||
this.showCndex
|
|
||||||
].quantity = this.selectData.quantity;
|
|
||||||
this.handleClose();
|
|
||||||
this.$forceUpdate();
|
|
||||||
}
|
|
||||||
},
|
|
||||||
toPlcz() {
|
|
||||||
this.recommendUpgradeList.forEach((stem) => {
|
|
||||||
stem.agcList.forEach((ctem) => {
|
|
||||||
ctem.quantity = this.plcz.quantity;
|
|
||||||
ctem.price = this.plcz.price2;
|
|
||||||
stem.pkGrade = this.plcz.pkGrade;
|
|
||||||
stem.plan = this.plcz.plan;
|
|
||||||
stem.price = this.plcz.price;
|
|
||||||
stem.term = this.plcz.term;
|
|
||||||
});
|
|
||||||
});
|
|
||||||
},
|
|
||||||
reset() {
|
|
||||||
this.plcz = {};
|
|
||||||
},
|
|
||||||
getCheckBox() {
|
|
||||||
let arr1 = [],
|
|
||||||
arr2 = [];
|
|
||||||
this.skuList.forEach((item) => {
|
|
||||||
item.specsList.forEach((ctem) => {
|
|
||||||
if (ctem.pkId == item.pkProductSku) {
|
|
||||||
arr1.push(ctem.pkId);
|
|
||||||
arr2.push(ctem.specsName);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
});
|
|
||||||
this.selSkuList = arr1.join(",");
|
|
||||||
this.selSkuNameList = arr2.join(",");
|
|
||||||
},
|
|
||||||
setArea(val) {
|
|
||||||
this.isArea = val;
|
|
||||||
},
|
|
||||||
handleClose() {
|
|
||||||
this.selectData = [];
|
|
||||||
this.dialogVisible = false;
|
|
||||||
},
|
|
||||||
handleCloseGg() {
|
|
||||||
this.ggVisible = false;
|
|
||||||
},
|
|
||||||
getProduct(index, cndex) {
|
|
||||||
this.showIndex = index;
|
|
||||||
this.showCndex = cndex;
|
|
||||||
this.getDataList();
|
|
||||||
this.dialogVisible = true;
|
|
||||||
},
|
|
||||||
addProduct(index, sndex) {
|
|
||||||
if (!this.lookOver) {
|
|
||||||
this.recommendUpgradeList[index].agcList.push({
|
|
||||||
pkProduct: "",
|
|
||||||
productName: "",
|
|
||||||
specsName: "",
|
|
||||||
specsNameId: "",
|
|
||||||
quantity: "",
|
|
||||||
price: "",
|
|
||||||
});
|
|
||||||
}
|
|
||||||
},
|
|
||||||
reduceProduct(index, cndex) {
|
|
||||||
if (!this.lookOver) {
|
|
||||||
this.recommendUpgradeList[index].agcList.splice(cndex, 1);
|
|
||||||
}
|
|
||||||
},
|
|
||||||
reduceNewGoods() {
|
|
||||||
this.recommendUpgradeList.splice(this.recommendUpgradeList.length - 1, 1);
|
|
||||||
},
|
|
||||||
addNewGoods() {
|
|
||||||
this.recommendUpgradeList.push({
|
|
||||||
pkGrade: "",
|
|
||||||
plan: "",
|
|
||||||
price: "",
|
|
||||||
term: "",
|
|
||||||
agcList: [
|
|
||||||
{
|
|
||||||
pkProduct: "",
|
|
||||||
productName: "",
|
|
||||||
specsName: "",
|
|
||||||
specsNameId: "",
|
|
||||||
quantity: "",
|
|
||||||
price: "",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
mustWares: "",
|
|
||||||
shieldWares: "",
|
|
||||||
});
|
|
||||||
},
|
|
||||||
selSku(pkId, index) {
|
|
||||||
this.selIndex = index;
|
|
||||||
api
|
|
||||||
.getProductSpecs({
|
|
||||||
pkProduct: pkId,
|
|
||||||
})
|
|
||||||
.then((res) => {
|
|
||||||
let arr1 = [],
|
|
||||||
arr2 = [];
|
|
||||||
res.data.forEach((item) => {
|
|
||||||
item.pkProductSku = item.specsList[0].pkId;
|
|
||||||
arr1.push(item.specsList[0].pkId);
|
|
||||||
arr2.push(item.specsList[0].specsName);
|
|
||||||
});
|
|
||||||
this.selSkuList = arr1.join(",");
|
|
||||||
this.selSkuNameList = arr2.join(",");
|
|
||||||
|
|
||||||
this.skuList = res.data;
|
|
||||||
this.ggVisible = true;
|
|
||||||
});
|
|
||||||
},
|
|
||||||
getDataList() {
|
|
||||||
api
|
|
||||||
.getProductAll(
|
|
||||||
Object.assign({isPutOn:0}, this.queryParams, this.select, { isExistSpecs: 1 })
|
|
||||||
)
|
|
||||||
.then((res) => {
|
|
||||||
res.rows.forEach((item) => {
|
|
||||||
item.quantity = 1;
|
|
||||||
});
|
|
||||||
this.dialogList = res.rows;
|
|
||||||
this.total = res.total;
|
|
||||||
});
|
|
||||||
},
|
|
||||||
// submit() {
|
|
||||||
// let obj = Object.assign({}, this.pageData, {
|
|
||||||
// waresConfigParam: this.allData,
|
|
||||||
// })
|
|
||||||
// console.log(
|
|
||||||
// '%c [ obj ]-445',
|
|
||||||
// 'font-size:13px; background:#6f1b1a; color:#b35f5e;',
|
|
||||||
// obj
|
|
||||||
// )
|
|
||||||
// api.activitySave(obj).then((res) => {
|
|
||||||
// if (res.code == 200) {
|
|
||||||
// // this.$router.push({
|
|
||||||
// // path: '/announcement/fbZxqc',
|
|
||||||
// // query: {
|
|
||||||
// // data: JSON.stringify(res.data),
|
|
||||||
// // },
|
|
||||||
// // })
|
|
||||||
// }
|
|
||||||
// })
|
|
||||||
// },
|
|
||||||
onSelectAll() {
|
|
||||||
this.$refs.multipleTable.clearSelection();
|
|
||||||
},
|
|
||||||
selected(selection, row) {
|
|
||||||
// 清除 所有勾选项
|
|
||||||
this.$refs.multipleTable.clearSelection();
|
|
||||||
// 当表格数据都没有被勾选的时候 就返回
|
|
||||||
// 主要用于将当前勾选的表格状态清除
|
|
||||||
if (selection.length == 0) return;
|
|
||||||
this.$refs.multipleTable.toggleRowSelection(row, true);
|
|
||||||
this.selectData = row;
|
|
||||||
},
|
|
||||||
// 表格的选中 可以获得当前选中的数据
|
|
||||||
selectionChange(val) {
|
|
||||||
// 将选中的数据存储起来
|
|
||||||
this.selectData = val;
|
|
||||||
},
|
|
||||||
tableRowClassName({ row, rowIndex }) {
|
|
||||||
if (rowIndex % 2 == 1) {
|
|
||||||
return "warning-row";
|
|
||||||
} else if (rowIndex % 2 == 0) {
|
|
||||||
return "success-row";
|
|
||||||
}
|
|
||||||
return "";
|
|
||||||
},
|
|
||||||
},
|
|
||||||
};
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
|
||||||
.page {
|
|
||||||
padding: 10px 20px;
|
|
||||||
background: #f9f9f9;
|
|
||||||
font-size: 14px;
|
|
||||||
}
|
|
||||||
.main {
|
|
||||||
background: #ffffff;
|
|
||||||
border-radius: 8px;
|
|
||||||
height: calc(100vh - 164px);
|
|
||||||
padding-bottom: 20px;
|
|
||||||
box-shadow: 0px 2px 20px 0px rgba(238, 238, 238, 0.5);
|
|
||||||
}
|
|
||||||
::v-deep .el-select {
|
|
||||||
width: 100%;
|
|
||||||
}
|
|
||||||
// }
|
|
||||||
.footer {
|
|
||||||
height: 68px;
|
|
||||||
background: #ffffff;
|
|
||||||
box-shadow: 0px -3px 20px 0px rgba(204, 204, 204, 0.5);
|
|
||||||
// margin: 0 20px;
|
|
||||||
display: flex;
|
|
||||||
justify-content: center;
|
|
||||||
align-items: center;
|
|
||||||
.thebtn1 {
|
|
||||||
background: #3181e5;
|
|
||||||
color: #ffffff;
|
|
||||||
padding: 9px 45px;
|
|
||||||
}
|
|
||||||
.thebtn2 {
|
|
||||||
background: #cccccc;
|
|
||||||
color: #ffffff;
|
|
||||||
padding: 9px 45px;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
.tit {
|
|
||||||
font-size: 14px;
|
|
||||||
font-weight: bold;
|
|
||||||
color: #333333;
|
|
||||||
padding: 0 20px;
|
|
||||||
border-left: 5px solid #c8161d;
|
|
||||||
margin: 20px 0 10px 0;
|
|
||||||
}
|
|
||||||
.xian {
|
|
||||||
height: 1px;
|
|
||||||
background: rgba(0, 0, 0, 0.1);
|
|
||||||
}
|
|
||||||
.demo-ruleForm {
|
|
||||||
padding: 20px 0;
|
|
||||||
}
|
|
||||||
::v-deep .el-date-editor--datetimerange {
|
|
||||||
width: auto !important;
|
|
||||||
}
|
|
||||||
.flexed {
|
|
||||||
display: flex;
|
|
||||||
}
|
|
||||||
.flexed_l {
|
|
||||||
margin-right: 20px;
|
|
||||||
}
|
|
||||||
.table {
|
|
||||||
padding: 0 20px;
|
|
||||||
margin-top: 20px;
|
|
||||||
}
|
|
||||||
|
|
||||||
table {
|
|
||||||
width: 100%;
|
|
||||||
background: #fff;
|
|
||||||
border-collapse: collapse;
|
|
||||||
border: 1px solid #cccccc;
|
|
||||||
border-spacing: 0;
|
|
||||||
table-layout: fixed;
|
|
||||||
border-collapse: collapse;
|
|
||||||
|
|
||||||
// 合并内外边距
|
|
||||||
// (去除表格单元格默认的2个像素内外边距*/
|
|
||||||
}
|
|
||||||
.table_b {
|
|
||||||
border-top: 0;
|
|
||||||
}
|
|
||||||
th {
|
|
||||||
padding: 10px 10px;
|
|
||||||
text-align: center;
|
|
||||||
border: 1px solid #cccccc;
|
|
||||||
overflow: hidden;
|
|
||||||
border-top: 0;
|
|
||||||
}
|
|
||||||
td {
|
|
||||||
padding: 10px 10px;
|
|
||||||
text-align: center;
|
|
||||||
border: 1px solid #cccccc;
|
|
||||||
border-top: 0;
|
|
||||||
overflow: hidden;
|
|
||||||
}
|
|
||||||
.tableFlex {
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
margin-bottom: 10px;
|
|
||||||
.tableFlex_i {
|
|
||||||
flex: 1;
|
|
||||||
::v-deep .el-input__inner {
|
|
||||||
width: 90%;
|
|
||||||
}
|
|
||||||
::v-deep .el-input__suffix {
|
|
||||||
right: 15px;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
.tableAdd {
|
|
||||||
width: 50px;
|
|
||||||
img {
|
|
||||||
width: 19px;
|
|
||||||
height: 19px;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
.tableAddPro {
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
justify-content: center;
|
|
||||||
img {
|
|
||||||
width: 19px;
|
|
||||||
height: 19px;
|
|
||||||
margin-left: 10px;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
.tableLeft {
|
|
||||||
text-align: left;
|
|
||||||
}
|
|
||||||
.tabList {
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
padding: 20px 0px 0 20px;
|
|
||||||
.tabList_i {
|
|
||||||
padding: 10px;
|
|
||||||
font-size: 14px;
|
|
||||||
font-weight: 400;
|
|
||||||
color: #999999;
|
|
||||||
cursor: pointer;
|
|
||||||
}
|
|
||||||
.tabAct {
|
|
||||||
background: #108ee9;
|
|
||||||
color: #fff;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
.clearBtm {
|
|
||||||
border-bottom: 0;
|
|
||||||
}
|
|
||||||
.cpHeight {
|
|
||||||
height: 50vh;
|
|
||||||
overflow-y: auto;
|
|
||||||
}
|
|
||||||
.blueCor {
|
|
||||||
color: #589ff8;
|
|
||||||
cursor: pointer;
|
|
||||||
}
|
|
||||||
::v-deep .el-input__icon {
|
|
||||||
line-height: 33px;
|
|
||||||
}
|
|
||||||
::v-deep .el-button {
|
|
||||||
margin-top: 0;
|
|
||||||
}
|
|
||||||
</style>
|
|
|
@ -1,502 +0,0 @@
|
||||||
<template>
|
|
||||||
<div class="page">
|
|
||||||
<topBar
|
|
||||||
v-if="topList.length > 0"
|
|
||||||
:topList="topList"
|
|
||||||
:moren="moren"
|
|
||||||
></topBar>
|
|
||||||
<div class="main">
|
|
||||||
<div class="thetable">
|
|
||||||
<div class="fontTitle"> {{'在线签呈'}}</div>
|
|
||||||
<div class="titleflex">
|
|
||||||
<div>{{'编号'}} :</div>
|
|
||||||
<div>
|
|
||||||
<el-radio-group v-model="allData.signType">
|
|
||||||
<el-radio
|
|
||||||
:label="ctem.value"
|
|
||||||
v-for="ctem in checkList"
|
|
||||||
:key="ctem.value"
|
|
||||||
>{{ ctem.label }}</el-radio
|
|
||||||
>
|
|
||||||
</el-radio-group>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<table id="tfhover" class="tftable" border="1">
|
|
||||||
<tr>
|
|
||||||
<td colspan="1" width="190px" align="center"> {{'发起部门'}} :</td>
|
|
||||||
<td colspan="1" v-if="allData.signData" width="435px">
|
|
||||||
{{ allData.signData.deptName }}
|
|
||||||
</td>
|
|
||||||
<td colspan="1" width="140px" align="center"> {{'发起人'}} :</td>
|
|
||||||
<td colspan="1" v-if="allData.signData">
|
|
||||||
{{ allData.signData.userName }}
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td colspan="1" align="center"> {{'主旨'}} :</td>
|
|
||||||
<td colspan="1" v-if="allData.signData">
|
|
||||||
{{ allData.signData.approvalBusinessVal }}
|
|
||||||
</td>
|
|
||||||
<td colspan="1" align="center"> {{'日期'}} :</td>
|
|
||||||
<td colspan="1" v-if="allData.signData">
|
|
||||||
{{ allData.signData.creationTime }}
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<!-- // 审批流程 -->
|
|
||||||
<tr>
|
|
||||||
<td colspan="1" align="center"> {{'审批流程'}}</td>
|
|
||||||
<td colspan="3">
|
|
||||||
<div class="disflex">
|
|
||||||
<span
|
|
||||||
v-for="(ctem, cndex) in allData.signData.detailList"
|
|
||||||
:key="cndex"
|
|
||||||
style="margin: 0 5px 5px 0"
|
|
||||||
>
|
|
||||||
<el-select
|
|
||||||
v-model="ctem.pkApprover"
|
|
||||||
filterable
|
|
||||||
size="mini"
|
|
||||||
@change="getApprover"
|
|
||||||
:placeholder="'请选择'"
|
|
||||||
>
|
|
||||||
<el-option
|
|
||||||
v-for="item in approbalList"
|
|
||||||
:key="item.userId"
|
|
||||||
:label="item.nickName + '(' + item.deptName + ')'"
|
|
||||||
:value="item.userId"
|
|
||||||
>
|
|
||||||
</el-option>
|
|
||||||
</el-select>
|
|
||||||
</span>
|
|
||||||
<span style="margin: 0 5px 5px 0">
|
|
||||||
<i
|
|
||||||
class="el-icon-remove-outline"
|
|
||||||
@click.stop="delData"
|
|
||||||
v-show="allData.signData.detailList.length > 0"
|
|
||||||
style="font-size: 18px; margin-right: 5px"
|
|
||||||
></i>
|
|
||||||
<i
|
|
||||||
class="el-icon-circle-plus-outline"
|
|
||||||
style="font-size: 18px"
|
|
||||||
@click.stop="addData"
|
|
||||||
></i>
|
|
||||||
</span>
|
|
||||||
</div>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td colspan="1" align="center">{{'抄送人'}}</td>
|
|
||||||
<td colspan="3">
|
|
||||||
<div class="disflex">
|
|
||||||
<span
|
|
||||||
v-for="(ctem, cndex) in allData.signData.sendList"
|
|
||||||
:key="cndex"
|
|
||||||
style="margin: 0 5px 5px 0"
|
|
||||||
>
|
|
||||||
<el-select
|
|
||||||
v-model="ctem.pkSend"
|
|
||||||
filterable
|
|
||||||
size="mini"
|
|
||||||
@change="getApprover"
|
|
||||||
:placeholder="'请选择'"
|
|
||||||
>
|
|
||||||
<el-option
|
|
||||||
v-for="item in userAllList"
|
|
||||||
:key="item.userId"
|
|
||||||
:label="item.nickName + '(' + item.deptName + ')'"
|
|
||||||
:value="item.userId"
|
|
||||||
>
|
|
||||||
</el-option>
|
|
||||||
</el-select>
|
|
||||||
</span>
|
|
||||||
<span style="margin: 0 5px 5px 0">
|
|
||||||
<i
|
|
||||||
class="el-icon-remove-outline"
|
|
||||||
@click.stop="delData1"
|
|
||||||
v-show="allData.signData.sendList.length > 0"
|
|
||||||
style="font-size: 18px; margin-right: 5px"
|
|
||||||
></i>
|
|
||||||
<i
|
|
||||||
class="el-icon-circle-plus-outline"
|
|
||||||
style="font-size: 18px"
|
|
||||||
@click.stop="addData1"
|
|
||||||
></i>
|
|
||||||
</span>
|
|
||||||
</div>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td style="height: 190px" align="center">{{'情况说明'}}</td>
|
|
||||||
<td colspan="3" style="padding: 0">
|
|
||||||
<div>
|
|
||||||
<el-input
|
|
||||||
type="textarea"
|
|
||||||
:rows="6"
|
|
||||||
:placeholder="'请输入'"
|
|
||||||
v-model="allData.remark"
|
|
||||||
>
|
|
||||||
</el-input>
|
|
||||||
</div>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td style="height: 193px" align="center"> {{'业务诉求'}}</td>
|
|
||||||
<td colspan="3" style="padding: 0;vertical-align: top;">
|
|
||||||
<div >
|
|
||||||
<el-table
|
|
||||||
:data="allData.updateParentParamList"
|
|
||||||
style="width: 100%"
|
|
||||||
:header-cell-style="{ background: '#EEEEEE' }"
|
|
||||||
>
|
|
||||||
<el-table-column
|
|
||||||
v-for="ctem in allData.tableTit"
|
|
||||||
:key="ctem.value"
|
|
||||||
align="center"
|
|
||||||
:prop="ctem.value"
|
|
||||||
:label="ctem.label"
|
|
||||||
>
|
|
||||||
<template slot-scope="scope">
|
|
||||||
<div v-show="ctem.value == 'actExplain'">
|
|
||||||
<div
|
|
||||||
style="
|
|
||||||
color: #48b2fd;
|
|
||||||
text-decoration: underline;
|
|
||||||
cursor: pointer;
|
|
||||||
"
|
|
||||||
@click="details"
|
|
||||||
>
|
|
||||||
{{'查看详情'}}
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div v-show="ctem.value != 'actExplain'">
|
|
||||||
<div>
|
|
||||||
{{ scope.row[ctem.value] }}
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</template>
|
|
||||||
</el-table-column>
|
|
||||||
</el-table>
|
|
||||||
</div>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td style="height: 190px" align="center">{{'附件'}}</td>
|
|
||||||
<td colspan="3" style="padding: 0">
|
|
||||||
<div style="height: 100%; padding: 10px 20px">
|
|
||||||
<el-upload
|
|
||||||
class="upload-demo"
|
|
||||||
:action="uploadImgUrl"
|
|
||||||
:on-success="handleUploadSuccess"
|
|
||||||
:on-remove="removeFile"
|
|
||||||
multiple
|
|
||||||
:headers="headers"
|
|
||||||
:file-list="fileList"
|
|
||||||
>
|
|
||||||
<el-button size="small" type="primary">{{'点击上传'}}</el-button>
|
|
||||||
</el-upload>
|
|
||||||
</div>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="footer">
|
|
||||||
<div style="margin: 0 auto">
|
|
||||||
<el-button class="thebtn" @click="cancelCz"> {{ '取消' }}</el-button>
|
|
||||||
<el-button type="primary" class="thebtn" @click="saveDate"
|
|
||||||
> {{ '确认' }}</el-button
|
|
||||||
>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
import topBar from "@/components/topBar";
|
|
||||||
import * as man from "@/api/manage";
|
|
||||||
import * as gif from "@/api/newgift.js";
|
|
||||||
import onlineSign from "../../dashboard/onlineSign.json";
|
|
||||||
import { getToken } from "@/utils/auth";
|
|
||||||
import { dealerSpace, makerSpace } from "@/api/manage";
|
|
||||||
export default {
|
|
||||||
name: "Zxqc",
|
|
||||||
components: {
|
|
||||||
topBar,
|
|
||||||
},
|
|
||||||
data() {
|
|
||||||
return {
|
|
||||||
uploadImgUrl: process.env.VUE_APP_BASE_API + "/system/upload", // 上传的图片服务器地址
|
|
||||||
headers: {
|
|
||||||
Authorization: getToken(),
|
|
||||||
},
|
|
||||||
onlineSign,
|
|
||||||
moren: "specialZxqc",
|
|
||||||
topList: [
|
|
||||||
{
|
|
||||||
name: "在线签呈",
|
|
||||||
path: "specialZxqc",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
checkList: [],
|
|
||||||
allData: {
|
|
||||||
remark: "",
|
|
||||||
signType: 1,
|
|
||||||
fileList: [],
|
|
||||||
signData: {
|
|
||||||
detailList: [],
|
|
||||||
sendList: [],
|
|
||||||
},
|
|
||||||
approvalBusiness: "",
|
|
||||||
},
|
|
||||||
signDataList: [],
|
|
||||||
fileList: [],
|
|
||||||
approbalList: [],
|
|
||||||
// 审批流程
|
|
||||||
userAllList: [],
|
|
||||||
allObj: {},
|
|
||||||
};
|
|
||||||
},
|
|
||||||
mounted() {
|
|
||||||
// 业务诉求
|
|
||||||
this.allObj = JSON.parse(this.$route.query.data);
|
|
||||||
this.allData.updateParentParamList = [this.allObj.activityParam];
|
|
||||||
console.log(
|
|
||||||
"%c [ obj ]-241",
|
|
||||||
"font-size:13px; background:#085065; color:#4c94a9;",
|
|
||||||
this.allObj
|
|
||||||
);
|
|
||||||
// 签呈类型
|
|
||||||
this.allData.approvalBusiness = this.$route.query.approvalBusiness;
|
|
||||||
this.getSignData([this.allData.approvalBusiness]);
|
|
||||||
},
|
|
||||||
methods: {
|
|
||||||
details(code) {
|
|
||||||
// console.log("🌈this.allData", this.allData);
|
|
||||||
this.$router.push({
|
|
||||||
path: "newgiftInfo",
|
|
||||||
query: {
|
|
||||||
data: JSON.stringify(this.allObj),
|
|
||||||
controlType: 4,
|
|
||||||
},
|
|
||||||
});
|
|
||||||
},
|
|
||||||
getSignData(arr) {
|
|
||||||
man.signData(arr).then((res) => {
|
|
||||||
this.allData.signData = res.data[0];
|
|
||||||
// 签呈表头数据添加到数组
|
|
||||||
this.$set(this.allData, "signType", 1);
|
|
||||||
this.$set(this.allData, "remark", "");
|
|
||||||
this.$set(this.allData, "fileList", []);
|
|
||||||
// table表头添加到数组
|
|
||||||
this.onlineSign.forEach((ctem) => {
|
|
||||||
if (this.allData.approvalBusiness == ctem.id) {
|
|
||||||
this.allData.tableTit = ctem.textList;
|
|
||||||
}
|
|
||||||
});
|
|
||||||
this.$forceUpdate();
|
|
||||||
this.getApprove();
|
|
||||||
this.getSignType();
|
|
||||||
});
|
|
||||||
},
|
|
||||||
getApprove() {
|
|
||||||
// 审批流程
|
|
||||||
man.approvalUser().then((res) => {
|
|
||||||
this.approbalList = res.data;
|
|
||||||
});
|
|
||||||
man.userAll().then((res) => {
|
|
||||||
this.userAllList = res.data;
|
|
||||||
});
|
|
||||||
},
|
|
||||||
getSignType() {
|
|
||||||
man.signType().then((res) => {
|
|
||||||
this.checkList = res.data;
|
|
||||||
});
|
|
||||||
},
|
|
||||||
saveDate() {
|
|
||||||
// 审批流程
|
|
||||||
this.allData.userIdList = this.allData.signData.detailList.map((item) => {
|
|
||||||
return item.pkApprover;
|
|
||||||
});
|
|
||||||
this.allData.userIdList = this.allData.userIdList.filter((item) => item);
|
|
||||||
|
|
||||||
// 抄送流程
|
|
||||||
this.allData.sendIdList = this.allData.signData.sendList.map((item) => {
|
|
||||||
return item.pkSend;
|
|
||||||
});
|
|
||||||
this.allData.sendIdList = this.allData.sendIdList.filter((item) => item);
|
|
||||||
|
|
||||||
this.allData.fileList = this.fileList.map((item) => {
|
|
||||||
return item.url;
|
|
||||||
});
|
|
||||||
|
|
||||||
let obj = Object.assign(
|
|
||||||
{},
|
|
||||||
{
|
|
||||||
anpList: this.allObj.anpList,
|
|
||||||
controlType: this.allObj.controlType,
|
|
||||||
activityParam: this.allObj.activityParam,
|
|
||||||
// repurchaseCouponsShowList: this.allObj.repurchaseCouponsShowList,
|
|
||||||
// recommendUpgradeList: this.allObj.recommendUpgradeList,
|
|
||||||
// acRecommendSharVO: this.allObj.acRecommendSharVO[0],
|
|
||||||
signType: this.allData.signType, //普通件,急件,密件
|
|
||||||
remark: this.allData.remark, //备注
|
|
||||||
fileList: this.allData.fileList, //附件[]
|
|
||||||
userIdList: this.allData.userIdList, //审批流程[]
|
|
||||||
sendIdList: this.allData.sendIdList, //抄送人[]
|
|
||||||
}
|
|
||||||
);
|
|
||||||
let url = "";
|
|
||||||
if (this.allObj.controlType == 1) {
|
|
||||||
//新增
|
|
||||||
url = gif.saveNewPeoplePetition;
|
|
||||||
} else if (this.allObj.controlType == 2) {
|
|
||||||
//修改
|
|
||||||
url = gif.updateNewPeoplePetition;
|
|
||||||
} else if (this.allObj.controlType == 3) {
|
|
||||||
//删除
|
|
||||||
url = gif.deleteNewPeoplePetition;
|
|
||||||
}
|
|
||||||
url(obj).then((res) => {
|
|
||||||
if (res.code == 200) {
|
|
||||||
this.$message({
|
|
||||||
message: res.msg,
|
|
||||||
type: "success",
|
|
||||||
});
|
|
||||||
this.$router.push({
|
|
||||||
path: "newcomerGiftList",
|
|
||||||
});
|
|
||||||
}
|
|
||||||
});
|
|
||||||
},
|
|
||||||
cancelCz() {
|
|
||||||
this.$router.go(-1);
|
|
||||||
},
|
|
||||||
// 审批流程
|
|
||||||
getApprover() {
|
|
||||||
this.$nextTick(() => {
|
|
||||||
this.$forceUpdate();
|
|
||||||
});
|
|
||||||
},
|
|
||||||
// 审批流程
|
|
||||||
addData() {
|
|
||||||
let arr = JSON.parse(JSON.stringify(this.allData.signData.detailList));
|
|
||||||
arr.push({
|
|
||||||
pkApprover: "",
|
|
||||||
});
|
|
||||||
this.$set(this.allData.signData, "detailList", arr);
|
|
||||||
this.$forceUpdate();
|
|
||||||
},
|
|
||||||
// 审批流程
|
|
||||||
addData1() {
|
|
||||||
let arr = JSON.parse(JSON.stringify(this.allData.signData.sendList));
|
|
||||||
arr.push({
|
|
||||||
pkSend: "",
|
|
||||||
});
|
|
||||||
this.$set(this.allData.signData, "sendList", arr);
|
|
||||||
this.$forceUpdate();
|
|
||||||
},
|
|
||||||
// 抄送
|
|
||||||
delData1() {
|
|
||||||
this.allData.signData.sendList.pop();
|
|
||||||
this.$forceUpdate();
|
|
||||||
},
|
|
||||||
// 审批流程
|
|
||||||
delData() {
|
|
||||||
this.allData.signData.detailList.pop();
|
|
||||||
this.$forceUpdate();
|
|
||||||
},
|
|
||||||
|
|
||||||
handleUploadSuccess(res) {
|
|
||||||
if (res.code == 200) {
|
|
||||||
this.fileList.push(res.data);
|
|
||||||
} else {
|
|
||||||
this.$message({
|
|
||||||
type: "error",
|
|
||||||
message: "上传失败",
|
|
||||||
});
|
|
||||||
}
|
|
||||||
},
|
|
||||||
removeFile(file, fileList) {
|
|
||||||
this.fileList.forEach((item, index) => {
|
|
||||||
if (file.uid == item.uid) {
|
|
||||||
this.fileList.splice(index, 1);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
},
|
|
||||||
},
|
|
||||||
};
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
|
||||||
::v-deep .el-table thead {
|
|
||||||
color: #000000;
|
|
||||||
}
|
|
||||||
.page {
|
|
||||||
padding: 20px;
|
|
||||||
background: #f9f9f9;
|
|
||||||
font-size: 14px;
|
|
||||||
.main {
|
|
||||||
// margin-top: 20px;
|
|
||||||
background: #ffffff;
|
|
||||||
border-radius: 8px;
|
|
||||||
box-shadow: 0px 2px 20px 0px rgba(238, 238, 238, 0.5);
|
|
||||||
display: flex;
|
|
||||||
margin: 0 auto;
|
|
||||||
width: 100%;
|
|
||||||
padding: 20px;
|
|
||||||
flex-direction: column;
|
|
||||||
}
|
|
||||||
.thetable {
|
|
||||||
margin: 0 auto;
|
|
||||||
margin-bottom: 20px;
|
|
||||||
.fontTitle {
|
|
||||||
font-weight: bold;
|
|
||||||
font-size: 24px;
|
|
||||||
text-align: center;
|
|
||||||
}
|
|
||||||
.titleflex {
|
|
||||||
display: flex;
|
|
||||||
margin-top: 10px;
|
|
||||||
margin-bottom: 10px;
|
|
||||||
justify-content: space-between;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
.tftable {
|
|
||||||
font-size: 14px;
|
|
||||||
border-collapse: collapse;
|
|
||||||
border-radius: 10px;
|
|
||||||
width: 1060px;
|
|
||||||
border: 1px solid #cccccc;
|
|
||||||
.spbox {
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
justify-content: flex-end;
|
|
||||||
}
|
|
||||||
th {
|
|
||||||
font-size: 14px;
|
|
||||||
// padding: 20px;
|
|
||||||
}
|
|
||||||
tr td {
|
|
||||||
font-size: 14px;
|
|
||||||
padding: 10px 20px;
|
|
||||||
height: 60px;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
.footer {
|
|
||||||
display: flex;
|
|
||||||
justify-content: center;
|
|
||||||
align-items: center;
|
|
||||||
padding: 15px 0;
|
|
||||||
.thebtn {
|
|
||||||
width: 120px;
|
|
||||||
height: 38px;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
// 审批流程
|
|
||||||
.disflex {
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
flex-wrap: wrap;
|
|
||||||
}
|
|
||||||
</style>
|
|
|
@ -1,19 +0,0 @@
|
||||||
<!--
|
|
||||||
* @Descripttion:
|
|
||||||
* @version:
|
|
||||||
* @Author: kBank
|
|
||||||
* @Date: 2023-04-24 09:04:03
|
|
||||||
-->
|
|
||||||
<template>
|
|
||||||
<div>红包</div>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
export default {
|
|
||||||
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<style>
|
|
||||||
|
|
||||||
</style>
|
|
|
@ -1,635 +0,0 @@
|
||||||
<!--
|
|
||||||
* @Descripttion:
|
|
||||||
* @version:
|
|
||||||
* @Author: kBank
|
|
||||||
* @Date: 2023-02-23 15:59:57
|
|
||||||
-->
|
|
||||||
<template>
|
|
||||||
<div class="page">
|
|
||||||
<!-- <topBar v-if="topList.length > 0"
|
|
||||||
:topList="topList"
|
|
||||||
:moren="moren"></topBar> -->
|
|
||||||
<div class="topbox">
|
|
||||||
<div
|
|
||||||
v-for="(item, index) in topList"
|
|
||||||
:key="index"
|
|
||||||
class="levelList_i"
|
|
||||||
:class="tabActive == item.id ? 'act' : ''"
|
|
||||||
@click.prevent="handleLink(item.id)"
|
|
||||||
>
|
|
||||||
{{ item.name }}
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<!-- <div class="main_a"> -->
|
|
||||||
<div class="main">
|
|
||||||
<div v-show="tabActive==0">
|
|
||||||
<div class="tit">{{ '基本信息' }}</div>
|
|
||||||
<div class="xian" />
|
|
||||||
<el-form
|
|
||||||
ref="ruleForm"
|
|
||||||
:model="ruleForm"
|
|
||||||
:rules="rules"
|
|
||||||
label-width="auto"
|
|
||||||
class="demo-ruleForm"
|
|
||||||
>
|
|
||||||
<el-row>
|
|
||||||
<el-col :span="8">
|
|
||||||
<el-form-item
|
|
||||||
:label="'活动名称'"
|
|
||||||
prop="actName"
|
|
||||||
>
|
|
||||||
<el-input
|
|
||||||
v-model="ruleForm.actName"
|
|
||||||
clearable
|
|
||||||
:disabled="lookOver"
|
|
||||||
/>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
<el-row>
|
|
||||||
<el-col :span="16">
|
|
||||||
<el-form-item
|
|
||||||
:label="'活动说明'"
|
|
||||||
prop="actExplain"
|
|
||||||
>
|
|
||||||
<!-- <el-input clearable
|
|
||||||
type="textarea"
|
|
||||||
v-model="ruleForm.actExplain"
|
|
||||||
:disabled="lookOver"></el-input> -->
|
|
||||||
<editor
|
|
||||||
ref="sptwEditor"
|
|
||||||
v-model="ruleForm.actExplain"
|
|
||||||
:read-only="lookOver"
|
|
||||||
:min-height="196"
|
|
||||||
:upload-url="uploadImgUrl"
|
|
||||||
/>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
<el-row>
|
|
||||||
<el-col :span="8">
|
|
||||||
<el-form-item
|
|
||||||
:label="'活动封面'"
|
|
||||||
prop="actCover"
|
|
||||||
>
|
|
||||||
<imageUpload v-model="ruleForm.actCover" />
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
<el-row>
|
|
||||||
<el-col :span="24">
|
|
||||||
<el-form-item :label="'目标用户群体'">
|
|
||||||
<div class="flexed">
|
|
||||||
<el-checkbox
|
|
||||||
v-model="ruleForm.checked1"
|
|
||||||
class="flexed_l"
|
|
||||||
@change="getCheckTit($event,1)"
|
|
||||||
>{{ '注册等级' }}</el-checkbox>
|
|
||||||
<el-checkbox-group
|
|
||||||
v-model="ruleForm.levelList"
|
|
||||||
@change="getCheck"
|
|
||||||
>
|
|
||||||
<el-checkbox
|
|
||||||
v-for="item in gradeList"
|
|
||||||
:key="item.pkId"
|
|
||||||
:label="item.pkId"
|
|
||||||
>{{ item.gradeName }}</el-checkbox>
|
|
||||||
</el-checkbox-group>
|
|
||||||
</div>
|
|
||||||
<div class="flexed">
|
|
||||||
<el-checkbox
|
|
||||||
v-model="ruleForm.checked2"
|
|
||||||
class="flexed_l"
|
|
||||||
@change="getCheckTit($event,2)"
|
|
||||||
>{{ '荣誉奖衔' }}</el-checkbox>
|
|
||||||
<el-checkbox-group
|
|
||||||
v-model="ruleForm.realList"
|
|
||||||
@change="getCheck"
|
|
||||||
>
|
|
||||||
<el-checkbox
|
|
||||||
v-for="item in awardsList"
|
|
||||||
:key="item.pkId"
|
|
||||||
:label="item.pkId"
|
|
||||||
>{{ item.awardsName }}</el-checkbox>
|
|
||||||
</el-checkbox-group>
|
|
||||||
</div>
|
|
||||||
<div class="flexed">
|
|
||||||
<el-checkbox
|
|
||||||
v-model="ruleForm.checked3"
|
|
||||||
class="flexed_l"
|
|
||||||
@change="getCheckTit($event,3)"
|
|
||||||
>{{ '权限中心' }}</el-checkbox>
|
|
||||||
<el-checkbox-group
|
|
||||||
v-model="ruleForm.centerList"
|
|
||||||
@change="getCheck"
|
|
||||||
>
|
|
||||||
<el-checkbox
|
|
||||||
v-for="item in registList"
|
|
||||||
:key="item.value"
|
|
||||||
:label="item.value"
|
|
||||||
>{{ item.label }}</el-checkbox>
|
|
||||||
</el-checkbox-group>
|
|
||||||
</div>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
<el-row>
|
|
||||||
<el-col :span="8">
|
|
||||||
<el-form-item
|
|
||||||
required
|
|
||||||
:label="'活动时间'"
|
|
||||||
prop="ruleFormTime"
|
|
||||||
>
|
|
||||||
<el-date-picker
|
|
||||||
v-model="ruleForm.ruleFormTime"
|
|
||||||
:disabled="lookOver"
|
|
||||||
value-format="yyyy-MM-dd HH:mm:ss"
|
|
||||||
type="datetimerange"
|
|
||||||
:range-separator="'至'"
|
|
||||||
:start-placeholder="'开始日期'"
|
|
||||||
:end-placeholder="'结束日期'"
|
|
||||||
@change="changeTime"
|
|
||||||
/>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
<el-row>
|
|
||||||
<el-col :span="8">
|
|
||||||
<el-form-item
|
|
||||||
required
|
|
||||||
:label="'展示时间'"
|
|
||||||
prop="ruleFormTime1"
|
|
||||||
>
|
|
||||||
<el-date-picker
|
|
||||||
v-model="ruleForm.ruleFormTime1"
|
|
||||||
:disabled="lookOver"
|
|
||||||
value-format="yyyy-MM-dd HH:mm:ss"
|
|
||||||
type="datetimerange"
|
|
||||||
:range-separator="'至'"
|
|
||||||
:start-placeholder="'开始日期'"
|
|
||||||
:end-placeholder="'结束日期'"
|
|
||||||
@change="changeTime1"
|
|
||||||
/>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
|
|
||||||
</el-form>
|
|
||||||
</div>
|
|
||||||
<shieldConsumption
|
|
||||||
v-show="tabActive==1"
|
|
||||||
ref="shieldConsumption"
|
|
||||||
/>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
<div
|
|
||||||
v-show="controlType!=4"
|
|
||||||
class="footer"
|
|
||||||
>
|
|
||||||
<el-button
|
|
||||||
size="small"
|
|
||||||
class="cancelBtn"
|
|
||||||
> {{ '取消' }}</el-button>
|
|
||||||
<el-button
|
|
||||||
size="small"
|
|
||||||
class="sureBtn"
|
|
||||||
@click="submit('ruleForm')"
|
|
||||||
> {{ '确认' }}</el-button>
|
|
||||||
</div>
|
|
||||||
<!-- </div> -->
|
|
||||||
|
|
||||||
</div>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
import Editor from '@/components/Editor'
|
|
||||||
|
|
||||||
import * as api from '@/api/giftGoods.js'
|
|
||||||
import topBar from '@/components/topBar'
|
|
||||||
import ImageUpload from '@/components/ImageUpload'
|
|
||||||
import shieldConsumption from '@/views/marketing/seaBean/shieldConsumption'
|
|
||||||
export default {
|
|
||||||
name: 'GiftGoodsList',
|
|
||||||
components: {
|
|
||||||
topBar,
|
|
||||||
ImageUpload,
|
|
||||||
shieldConsumption,
|
|
||||||
Editor
|
|
||||||
},
|
|
||||||
data() {
|
|
||||||
return {
|
|
||||||
tabActive: 0,
|
|
||||||
topList: [
|
|
||||||
{
|
|
||||||
name: '基本信息',
|
|
||||||
id: 0
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: '海豆赠送',
|
|
||||||
id: 1
|
|
||||||
}
|
|
||||||
],
|
|
||||||
uploadImgUrl: process.env.VUE_APP_BASE_API + '/system/upload',
|
|
||||||
ruleForm: {
|
|
||||||
checked1: false,
|
|
||||||
checked2: false,
|
|
||||||
checked3: false,
|
|
||||||
levelList: [],
|
|
||||||
realList: [],
|
|
||||||
centerList: [],
|
|
||||||
goalMemberConfigList: []
|
|
||||||
},
|
|
||||||
rules: {
|
|
||||||
actName: [
|
|
||||||
{ required: true, message: '请输入活动名称', trigger: 'blur' }
|
|
||||||
],
|
|
||||||
actExplain: [
|
|
||||||
{ required: true, message: '请输入活动说明', trigger: 'blur' }
|
|
||||||
],
|
|
||||||
actCover: [
|
|
||||||
{ required: true, message: '请上传活动封面', trigger: 'change' }
|
|
||||||
],
|
|
||||||
goalMemberConfigList: [
|
|
||||||
{ required: true, message: '请选择目标用户群体', trigger: 'change' }
|
|
||||||
],
|
|
||||||
ruleFormTime: [
|
|
||||||
{ required: true, message: '请选择活动时间', trigger: 'change' }
|
|
||||||
],
|
|
||||||
ruleFormTime1: [
|
|
||||||
{ required: true, message: '请选择展示时间', trigger: 'change' }
|
|
||||||
]
|
|
||||||
},
|
|
||||||
lookOver: false,
|
|
||||||
gradeList: [],
|
|
||||||
awardsList: [],
|
|
||||||
registList: [],
|
|
||||||
pkId: '',
|
|
||||||
waresConfigParam: [],
|
|
||||||
consumeShieldConfigList: [],
|
|
||||||
controlType: ''
|
|
||||||
}
|
|
||||||
},
|
|
||||||
mounted() {
|
|
||||||
if (
|
|
||||||
this.$route.query.controlType == 4 ||
|
|
||||||
this.$route.query.controlType == 3
|
|
||||||
) {
|
|
||||||
this.lookOver = true
|
|
||||||
} else {
|
|
||||||
this.lookOver = false
|
|
||||||
}
|
|
||||||
this.pkId = this.$route.query.pkId || ''
|
|
||||||
this.controlType = this.$route.query.controlType
|
|
||||||
if (this.pkId) {
|
|
||||||
this.getDetails()
|
|
||||||
}
|
|
||||||
this.getData()
|
|
||||||
if (this.$route.query.data) {
|
|
||||||
this.addData = JSON.parse(this.$route.query.data)
|
|
||||||
console.log(
|
|
||||||
'%c [ this.addData ]-235',
|
|
||||||
'font-size:13px; background:#a50346; color:#e9478a;',
|
|
||||||
this.addData
|
|
||||||
)
|
|
||||||
this.getDetails1()
|
|
||||||
}
|
|
||||||
// {
|
|
||||||
// memberType: 1,
|
|
||||||
// pkLevel: 1,
|
|
||||||
// },
|
|
||||||
},
|
|
||||||
methods: {
|
|
||||||
getDetails() {
|
|
||||||
api
|
|
||||||
.detailsPetition({
|
|
||||||
pkId: this.pkId
|
|
||||||
})
|
|
||||||
.then((res) => {
|
|
||||||
this.addData = res.data
|
|
||||||
this.$set(this.ruleForm, 'actName', res.data.actName)
|
|
||||||
this.$set(
|
|
||||||
this.ruleForm,
|
|
||||||
'actExplain',
|
|
||||||
res.data.actExplain
|
|
||||||
)
|
|
||||||
this.$set(this.ruleForm, 'actCover', res.data.actCover)
|
|
||||||
this.ruleForm.pkId = res.data.pkId
|
|
||||||
this.ruleForm.actStartDate = res.data.actStartDate
|
|
||||||
this.ruleForm.actEndDate = res.data.actEndDate
|
|
||||||
this.ruleForm.disStartDate = res.data.disStartDate
|
|
||||||
this.ruleForm.disEndDate = res.data.disEndDate
|
|
||||||
this.$set(this.ruleForm, 'ruleFormTime', [
|
|
||||||
res.data.actStartDate,
|
|
||||||
res.data.actEndDate
|
|
||||||
])
|
|
||||||
this.$set(this.ruleForm, 'ruleFormTime1', [
|
|
||||||
res.data.disStartDate,
|
|
||||||
res.data.disEndDate
|
|
||||||
])
|
|
||||||
const arr1 = []
|
|
||||||
const arr2 = []
|
|
||||||
const arr3 = []
|
|
||||||
res.data.goalMemberConfigList.forEach((item) => {
|
|
||||||
if (item.memberType == 1) {
|
|
||||||
arr1.push(item.pkLevel)
|
|
||||||
} else if (item.memberType == 2) {
|
|
||||||
arr2.push(item.pkLevel)
|
|
||||||
} else if (item.memberType == 3) {
|
|
||||||
arr3.push(item.pkLevel)
|
|
||||||
}
|
|
||||||
})
|
|
||||||
this.$set(this.ruleForm, 'levelList', arr1)
|
|
||||||
this.$set(this.ruleForm, 'realList', arr2)
|
|
||||||
this.$set(this.ruleForm, 'centerList', arr3)
|
|
||||||
|
|
||||||
this.$refs.shieldConsumption.getPage(this.addData.beanList || '')
|
|
||||||
const that = this
|
|
||||||
setTimeout(() => {
|
|
||||||
that.getCheck()
|
|
||||||
}, 50)
|
|
||||||
})
|
|
||||||
},
|
|
||||||
getDetails1() {
|
|
||||||
this.$set(this.ruleForm, 'actName', this.addData.activityParam.actName)
|
|
||||||
this.$set(
|
|
||||||
this.ruleForm,
|
|
||||||
'actExplain',
|
|
||||||
this.addData.activityParam.actExplain
|
|
||||||
)
|
|
||||||
this.$set(this.ruleForm, 'actCover', this.addData.activityParam.actCover)
|
|
||||||
this.$set(this.ruleForm, 'ruleFormTime', [
|
|
||||||
this.addData.activityParam.actStartDate,
|
|
||||||
this.addData.activityParam.actEndDate
|
|
||||||
])
|
|
||||||
this.$set(this.ruleForm, 'ruleFormTime1', [
|
|
||||||
this.addData.activityParam.disStartDate,
|
|
||||||
this.addData.activityParam.disEndDate
|
|
||||||
])
|
|
||||||
const arr1 = []
|
|
||||||
const arr2 = []
|
|
||||||
const arr3 = []
|
|
||||||
this.addData.activityParam.goalMemberConfigList.forEach((item) => {
|
|
||||||
if (item.memberType == 1) {
|
|
||||||
arr1.push(item.pkLevel)
|
|
||||||
} else if (item.memberType == 2) {
|
|
||||||
arr2.push(item.pkLevel)
|
|
||||||
} else if (item.memberType == 3) {
|
|
||||||
arr3.push(item.pkLevel)
|
|
||||||
}
|
|
||||||
})
|
|
||||||
this.$set(this.ruleForm, 'levelList', arr1)
|
|
||||||
this.$set(this.ruleForm, 'realList', arr2)
|
|
||||||
this.$set(this.ruleForm, 'centerList', arr3)
|
|
||||||
|
|
||||||
this.$refs.shieldConsumption.getPage(this.addData.beanList || '')
|
|
||||||
const that = this
|
|
||||||
setTimeout(() => {
|
|
||||||
that.getCheck()
|
|
||||||
}, 500)
|
|
||||||
},
|
|
||||||
// 切换tab
|
|
||||||
handleLink(id) {
|
|
||||||
this.tabActive = id
|
|
||||||
// if (this.pkId) {
|
|
||||||
// this.$refs.setConsumptionInfo.getPage(this.waresConfigParam)
|
|
||||||
// this.$refs.shieldConsumption.getPage(this.consumeShieldConfigList)
|
|
||||||
// }
|
|
||||||
},
|
|
||||||
// 单选
|
|
||||||
getCheck() {
|
|
||||||
const arr1 = []
|
|
||||||
const arr2 = []
|
|
||||||
const arr3 = []
|
|
||||||
// 等级
|
|
||||||
this.ruleForm.levelList.forEach((item) => {
|
|
||||||
arr1.push({
|
|
||||||
memberType: 1,
|
|
||||||
pkLevel: item
|
|
||||||
})
|
|
||||||
})
|
|
||||||
// 奖衔
|
|
||||||
this.ruleForm.realList.forEach((item) => {
|
|
||||||
arr2.push({
|
|
||||||
memberType: 2,
|
|
||||||
pkLevel: item
|
|
||||||
})
|
|
||||||
})
|
|
||||||
// 权限
|
|
||||||
this.ruleForm.centerList.forEach((item) => {
|
|
||||||
arr3.push({
|
|
||||||
memberType: 3,
|
|
||||||
pkLevel: item
|
|
||||||
})
|
|
||||||
})
|
|
||||||
this.ruleForm.goalMemberConfigList = [...arr1, ...arr2, ...arr3]
|
|
||||||
|
|
||||||
// 单选全选全取消
|
|
||||||
if (this.ruleForm.levelList.length == this.gradeList.length) {
|
|
||||||
this.ruleForm.checked1 = true
|
|
||||||
} else {
|
|
||||||
this.ruleForm.checked1 = false
|
|
||||||
}
|
|
||||||
if (this.ruleForm.realList.length == this.awardsList.length) {
|
|
||||||
this.ruleForm.checked2 = true
|
|
||||||
} else {
|
|
||||||
this.ruleForm.checked2 = false
|
|
||||||
}
|
|
||||||
if (this.ruleForm.centerList.length == this.registList.length) {
|
|
||||||
this.ruleForm.checked3 = true
|
|
||||||
} else {
|
|
||||||
this.ruleForm.checked3 = false
|
|
||||||
}
|
|
||||||
},
|
|
||||||
// 全选
|
|
||||||
getCheckTit(val, index) {
|
|
||||||
// 等级
|
|
||||||
if (index == 1 && val) {
|
|
||||||
this.ruleForm.levelList = this.gradeList.map((item) => {
|
|
||||||
return item.pkId
|
|
||||||
})
|
|
||||||
} else if (index == 1 && !val) {
|
|
||||||
this.ruleForm.levelList = []
|
|
||||||
}
|
|
||||||
// 奖衔
|
|
||||||
if (index == 2 && val) {
|
|
||||||
this.ruleForm.realList = this.awardsList.map((item) => {
|
|
||||||
return item.pkId
|
|
||||||
})
|
|
||||||
} else if (index == 2 && !val) {
|
|
||||||
this.ruleForm.realList = []
|
|
||||||
}
|
|
||||||
// 权限
|
|
||||||
if (index == 3 && val) {
|
|
||||||
this.ruleForm.centerList = this.registList.map((item) => {
|
|
||||||
return item.value
|
|
||||||
})
|
|
||||||
} else if (index == 3 && !val) {
|
|
||||||
this.ruleForm.centerList = []
|
|
||||||
}
|
|
||||||
this.getCheck()
|
|
||||||
},
|
|
||||||
changeTime(val) {
|
|
||||||
this.ruleForm.actStartDate = val[0]
|
|
||||||
this.ruleForm.actEndDate = val[1]
|
|
||||||
},
|
|
||||||
changeTime1(val) {
|
|
||||||
this.ruleForm.disStartDate = val[0]
|
|
||||||
this.ruleForm.disEndDate = val[1]
|
|
||||||
},
|
|
||||||
getData() {
|
|
||||||
api.awardsList().then((res) => {
|
|
||||||
this.awardsList = res.rows
|
|
||||||
})
|
|
||||||
api.gradeList().then((res) => {
|
|
||||||
this.gradeList = res.rows
|
|
||||||
})
|
|
||||||
api.registerPowerState().then((res) => {
|
|
||||||
this.registList = res.data
|
|
||||||
})
|
|
||||||
},
|
|
||||||
submit() {
|
|
||||||
this.$refs['ruleForm'].validate((valid) => {
|
|
||||||
if (valid) {
|
|
||||||
const obj = Object.assign(
|
|
||||||
{},
|
|
||||||
{
|
|
||||||
controlType: this.controlType,
|
|
||||||
activityParam: this.ruleForm,
|
|
||||||
beanList: this.$refs.shieldConsumption.consumeShieldConfigList
|
|
||||||
}
|
|
||||||
)
|
|
||||||
let approvalBusiness
|
|
||||||
if (this.controlType == 2) {
|
|
||||||
approvalBusiness = 727
|
|
||||||
} else if (this.controlType == 3) {
|
|
||||||
approvalBusiness = 728
|
|
||||||
} else {
|
|
||||||
approvalBusiness = 726
|
|
||||||
}
|
|
||||||
this.$router.push({
|
|
||||||
path: 'seaBeanZxqc',
|
|
||||||
query: {
|
|
||||||
data: JSON.stringify(obj),
|
|
||||||
approvalBusiness: approvalBusiness
|
|
||||||
}
|
|
||||||
})
|
|
||||||
// let obj = Object.assign({}, this.ruleForm, {
|
|
||||||
// beanList:
|
|
||||||
// this.$refs.shieldConsumption.consumeShieldConfigList,
|
|
||||||
// })
|
|
||||||
// let url = ''
|
|
||||||
// if (this.pkId) {
|
|
||||||
// url = api.upPetition
|
|
||||||
// } else {
|
|
||||||
// url = api.savePetition
|
|
||||||
// }
|
|
||||||
// url(obj).then((res) => {
|
|
||||||
// if (res.code == 200) {
|
|
||||||
// this.$message({
|
|
||||||
// message: res.msg,
|
|
||||||
// type: 'success',
|
|
||||||
// })
|
|
||||||
// this.$router.replace({
|
|
||||||
// path: 'seaBeanList',
|
|
||||||
// })
|
|
||||||
// }
|
|
||||||
// })
|
|
||||||
}
|
|
||||||
})
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
|
||||||
.page {
|
|
||||||
padding: 20px;
|
|
||||||
background: #f9f9f9;
|
|
||||||
font-size: 14px;
|
|
||||||
.main_a {
|
|
||||||
height: calc(100vh - 144px);
|
|
||||||
display: flex;
|
|
||||||
flex-direction: column;
|
|
||||||
}
|
|
||||||
.main {
|
|
||||||
background: #ffffff;
|
|
||||||
border-radius: 8px;
|
|
||||||
// height: calc(100vh - 124px);
|
|
||||||
box-shadow: 0px 2px 20px 0px rgba(238, 238, 238, 0.5);
|
|
||||||
}
|
|
||||||
::v-deep .el-select {
|
|
||||||
width: 100%;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
.footer {
|
|
||||||
height: 68px;
|
|
||||||
background: #ffffff;
|
|
||||||
box-shadow: 0px -3px 20px 0px rgba(204, 204, 204, 0.5);
|
|
||||||
// margin: 0 20px;
|
|
||||||
display: flex;
|
|
||||||
justify-content: center;
|
|
||||||
align-items: center;
|
|
||||||
.thebtn1 {
|
|
||||||
background: #3181e5;
|
|
||||||
color: #ffffff;
|
|
||||||
padding: 9px 45px;
|
|
||||||
}
|
|
||||||
.thebtn2 {
|
|
||||||
background: #cccccc;
|
|
||||||
color: #ffffff;
|
|
||||||
padding: 9px 45px;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
.tit {
|
|
||||||
font-size: 14px;
|
|
||||||
font-weight: bold;
|
|
||||||
color: #333333;
|
|
||||||
padding: 0 20px;
|
|
||||||
border-left: 5px solid #c8161d;
|
|
||||||
margin: 20px 0 10px 0;
|
|
||||||
}
|
|
||||||
.xian {
|
|
||||||
height: 1px;
|
|
||||||
background: rgba(0, 0, 0, 0.1);
|
|
||||||
}
|
|
||||||
.demo-ruleForm {
|
|
||||||
padding: 20px 0;
|
|
||||||
}
|
|
||||||
::v-deep .el-date-editor--datetimerange {
|
|
||||||
width: auto !important;
|
|
||||||
}
|
|
||||||
.flexed {
|
|
||||||
display: flex;
|
|
||||||
}
|
|
||||||
.flexed_l {
|
|
||||||
margin-right: 20px;
|
|
||||||
}
|
|
||||||
.topbox {
|
|
||||||
align-items: center;
|
|
||||||
padding: 0px 0 3px 0;
|
|
||||||
display: flex;
|
|
||||||
// background: skyblue;
|
|
||||||
.levelList_i {
|
|
||||||
margin-left: 20px;
|
|
||||||
position: relative;
|
|
||||||
cursor: pointer;
|
|
||||||
padding: 4px 15px;
|
|
||||||
// width: 88px;
|
|
||||||
// height: 34px;
|
|
||||||
border-radius: 17px;
|
|
||||||
border: 1px solid #cccccc;
|
|
||||||
font-size: 12px;
|
|
||||||
font-family: MicrosoftYaHei;
|
|
||||||
text-align: center;
|
|
||||||
// line-height: 34px;
|
|
||||||
}
|
|
||||||
.act {
|
|
||||||
color: #ffffff;
|
|
||||||
background: #c8161d;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
::v-deep .el-form-item {
|
|
||||||
margin-bottom: 20px !important;
|
|
||||||
}
|
|
||||||
</style>
|
|
|
@ -1,395 +0,0 @@
|
||||||
<!--
|
|
||||||
* @Descripttion:
|
|
||||||
* @version:
|
|
||||||
* @Author: kBank
|
|
||||||
* @Date: 2022-10-24 15:45:01
|
|
||||||
-->
|
|
||||||
<template>
|
|
||||||
<div class="page">
|
|
||||||
<topBar v-if="topList.length > 0"
|
|
||||||
:topList="topList"
|
|
||||||
:moren="moren"></topBar>
|
|
||||||
<div class="main">
|
|
||||||
<div class="form_all">
|
|
||||||
<el-form ref="select"
|
|
||||||
:model="select"
|
|
||||||
label-width="auto">
|
|
||||||
<el-row :gutter="40">
|
|
||||||
<!-- 一层 -->
|
|
||||||
<el-col :span="4">
|
|
||||||
<el-form-item :label="'活动名称'">
|
|
||||||
<el-input clearable
|
|
||||||
v-model="select.actName"></el-input>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="4">
|
|
||||||
<el-form-item :label="'活动状态'">
|
|
||||||
<el-select clearable
|
|
||||||
:placeholder="'请选择'"
|
|
||||||
v-model="select.activityStatus">
|
|
||||||
<el-option v-for="item in actStatus"
|
|
||||||
:key="item.value"
|
|
||||||
:label="item.label"
|
|
||||||
:value="item.value"></el-option>
|
|
||||||
</el-select>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="8">
|
|
||||||
<el-form-item :label="'开始日期'">
|
|
||||||
<el-date-picker v-model="creationTime"
|
|
||||||
@change="changeTime"
|
|
||||||
value-format="yyyy-MM-dd hh:mm:ss"
|
|
||||||
type="datetimerange"
|
|
||||||
:range-separator="'至'"
|
|
||||||
:start-placeholder="'开始日期'"
|
|
||||||
:end-placeholder="'结束日期'">
|
|
||||||
</el-date-picker>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="8">
|
|
||||||
<el-form-item :label="'结束日期'">
|
|
||||||
<el-date-picker v-model="creationTime1"
|
|
||||||
@change="changeTime1"
|
|
||||||
value-format="yyyy-MM-dd hh:mm:ss"
|
|
||||||
type="datetimerange"
|
|
||||||
:range-separator="'至'"
|
|
||||||
:start-placeholder="'开始日期'"
|
|
||||||
:end-placeholder="'结束日期'">
|
|
||||||
</el-date-picker>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="8">
|
|
||||||
<el-form-item :label="'创建日期'">
|
|
||||||
<el-date-picker v-model="creationTime2"
|
|
||||||
@change="changeTime2"
|
|
||||||
value-format="yyyy-MM-dd hh:mm:ss"
|
|
||||||
type="datetimerange"
|
|
||||||
:range-separator="'至'"
|
|
||||||
:start-placeholder="'开始日期'"
|
|
||||||
:end-placeholder="'结束日期'">
|
|
||||||
</el-date-picker>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="4">
|
|
||||||
<el-button type="primary"
|
|
||||||
size="small"
|
|
||||||
@click="getDataList"> {{ '搜索' }}</el-button>
|
|
||||||
<el-button size="small"
|
|
||||||
class="resetBtn"
|
|
||||||
@click="reset"> {{ '重置' }}</el-button>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
</el-form>
|
|
||||||
</div>
|
|
||||||
<div class="main_a">
|
|
||||||
<div class="mainbtn">
|
|
||||||
<el-button size="small"
|
|
||||||
@click="openDig"
|
|
||||||
v-hasButtons="['consumAdd']"
|
|
||||||
class="addBtn">{{'添加'}}</el-button>
|
|
||||||
<el-button size="small"
|
|
||||||
@click="handleExport"
|
|
||||||
class="exportBtn"> {{ '导出' }}</el-button>
|
|
||||||
</div>
|
|
||||||
<div class="maintable">
|
|
||||||
<el-table :data="tableData"
|
|
||||||
v-loading="loading"
|
|
||||||
style="width: 100%"
|
|
||||||
height="70vh"
|
|
||||||
:header-cell-style="{ background: '#EEEEEE' }"
|
|
||||||
:row-class-name="tableRowClassName"
|
|
||||||
@selection-change="handleSelectionChange">
|
|
||||||
<el-table-column type="selection"
|
|
||||||
width="55"> </el-table-column>
|
|
||||||
<el-table-column align="center"
|
|
||||||
prop="actName"
|
|
||||||
:label="'活动名称'">
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column align="center"
|
|
||||||
prop="actStartDate"
|
|
||||||
:label="'开始日期'">
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column align="center"
|
|
||||||
prop="actEndDate"
|
|
||||||
:label="'结束日期'">
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column align="center"
|
|
||||||
prop="status"
|
|
||||||
:label="'活动状态'">
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column align="center"
|
|
||||||
prop="creationTime"
|
|
||||||
:label="'创建日期'">
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column align="center"
|
|
||||||
prop="time"
|
|
||||||
:label="'操作'"
|
|
||||||
fixed="right">
|
|
||||||
<template slot-scope="scope">
|
|
||||||
|
|
||||||
<el-button @click="toFixed(scope.row.pkId,4)"
|
|
||||||
type="text"
|
|
||||||
v-hasButtons="['consumSee']"
|
|
||||||
style="color: #48B2FD;"
|
|
||||||
size="small">
|
|
||||||
{{ '查看' }}
|
|
||||||
</el-button>
|
|
||||||
<el-button @click="toFixed(scope.row.pkId, 2)"
|
|
||||||
type="text"
|
|
||||||
v-hasButtons="['ConsumUpdata']"
|
|
||||||
style="color: #F3A900;"
|
|
||||||
size="small">
|
|
||||||
{{ '修改' }}
|
|
||||||
</el-button>
|
|
||||||
<el-button @click="toFixed(scope.row.pkId,3)"
|
|
||||||
type="text"
|
|
||||||
v-hasButtons="['ConsumDel']"
|
|
||||||
size="small"
|
|
||||||
style="color: #C8161D">
|
|
||||||
{{ '删除' }}
|
|
||||||
</el-button>
|
|
||||||
</template>
|
|
||||||
</el-table-column>
|
|
||||||
</el-table>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
<pagination v-show="total > 0"
|
|
||||||
:total="total"
|
|
||||||
:page.sync="queryParams.pageNum"
|
|
||||||
:limit.sync="queryParams.pageSize"
|
|
||||||
@pagination="getDataList" />
|
|
||||||
</div>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
import topBar from '@/components/topBar'
|
|
||||||
import * as api from '@/api/giftGoods.js'
|
|
||||||
export default {
|
|
||||||
name: 'Bzpz',
|
|
||||||
components: {
|
|
||||||
topBar,
|
|
||||||
},
|
|
||||||
filters: {
|
|
||||||
isAgree(val) {
|
|
||||||
if (!val) {
|
|
||||||
return '允许';
|
|
||||||
} else {
|
|
||||||
return '禁止';
|
|
||||||
}
|
|
||||||
},
|
|
||||||
},
|
|
||||||
data() {
|
|
||||||
return {
|
|
||||||
creationTime: [],
|
|
||||||
creationTime1: [],
|
|
||||||
creationTime2: [],
|
|
||||||
select: {},
|
|
||||||
// 查询参数
|
|
||||||
queryParams: {
|
|
||||||
pageNum: 1,
|
|
||||||
pageSize: 50,
|
|
||||||
},
|
|
||||||
addOrEdit: '',
|
|
||||||
total: 0,
|
|
||||||
dialogVisible: false,
|
|
||||||
tableData: [],
|
|
||||||
loading:false,
|
|
||||||
moren: 'seaBean',
|
|
||||||
topList: [
|
|
||||||
{
|
|
||||||
name: '海豆赠送',
|
|
||||||
path: 'seaBean',
|
|
||||||
},
|
|
||||||
],
|
|
||||||
form: {
|
|
||||||
name: '',
|
|
||||||
},
|
|
||||||
rules: {
|
|
||||||
name: [{ required: true, message: '请输入规格类型', trigger: 'blur' }],
|
|
||||||
},
|
|
||||||
actStatus: [],
|
|
||||||
}
|
|
||||||
},
|
|
||||||
mounted() {
|
|
||||||
// 获取下拉
|
|
||||||
this.getData()
|
|
||||||
// 获取列表
|
|
||||||
this.getDataList()
|
|
||||||
},
|
|
||||||
methods: {
|
|
||||||
//重置
|
|
||||||
reset() {
|
|
||||||
this.select = {}
|
|
||||||
this.creationTime = []
|
|
||||||
this.creationTime1 = []
|
|
||||||
this.creationTime2 = []
|
|
||||||
this.getDataList()
|
|
||||||
},
|
|
||||||
getData() {
|
|
||||||
api.activityStatus().then((res) => {
|
|
||||||
this.actStatus = res.data
|
|
||||||
})
|
|
||||||
},
|
|
||||||
changeTime(val) {
|
|
||||||
this.select.startActStartDate = val[0]
|
|
||||||
this.select.startActEndDate = val[1]
|
|
||||||
},
|
|
||||||
changeTime1(val) {
|
|
||||||
this.select.endActStartDate = val[0]
|
|
||||||
this.select.endActEndDate = val[1]
|
|
||||||
},
|
|
||||||
changeTime2(val) {
|
|
||||||
this.select.startCreationTime = val[0]
|
|
||||||
this.select.endCreationTime = val[1]
|
|
||||||
},
|
|
||||||
// 点击修改
|
|
||||||
toFixed(id, index) {
|
|
||||||
// this.addOrEdit = false
|
|
||||||
// this.dialogVisible = true
|
|
||||||
this.$router.push({
|
|
||||||
path: 'addConsumptionInfo',
|
|
||||||
query: {
|
|
||||||
pkId: id,
|
|
||||||
controlType: index,
|
|
||||||
// functionType:this.select.functionType
|
|
||||||
},
|
|
||||||
})
|
|
||||||
},
|
|
||||||
// 删除
|
|
||||||
handleDelete(id) {
|
|
||||||
this.$confirm('确认删除?', '提示', {
|
|
||||||
confirmButtonText: '确定',
|
|
||||||
cancelButtonText: '取消',
|
|
||||||
type: 'warning',
|
|
||||||
}).then(() => {
|
|
||||||
api.consumeRemove(id).then((res) => {
|
|
||||||
this.getDataList()
|
|
||||||
})
|
|
||||||
})
|
|
||||||
},
|
|
||||||
onSubmit(formName) {
|
|
||||||
this.$refs[formName].validate((valid) => {
|
|
||||||
if (valid) {
|
|
||||||
let url = ''
|
|
||||||
if (this.addOrEdit == true) {
|
|
||||||
url = classifySave
|
|
||||||
} else {
|
|
||||||
url = classifyUpdate
|
|
||||||
}
|
|
||||||
url(this.form).then((res) => {
|
|
||||||
if (res.code == 200) {
|
|
||||||
this.$message({
|
|
||||||
message: res.msg,
|
|
||||||
type: 'success',
|
|
||||||
})
|
|
||||||
this.dialogVisible = false
|
|
||||||
// 充值数据
|
|
||||||
this.$refs[formName].resetFields()
|
|
||||||
// 获取列表
|
|
||||||
this.getDataList()
|
|
||||||
}
|
|
||||||
})
|
|
||||||
} else {
|
|
||||||
return false
|
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
|
||||||
handleClose() {
|
|
||||||
this.dialogVisible = false
|
|
||||||
this.$refs['form'].clearValidate()
|
|
||||||
this.$refs['form'].resetFields()
|
|
||||||
},
|
|
||||||
openDig() {
|
|
||||||
this.$router.push({
|
|
||||||
path: 'addConsumptionInfo',
|
|
||||||
query:{
|
|
||||||
controlType:1
|
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
|
||||||
getDataList() {
|
|
||||||
this.loading = true
|
|
||||||
api
|
|
||||||
.consumptionlist(Object.assign({}, this.queryParams, this.select,{actType:20}))
|
|
||||||
.then((res) => {
|
|
||||||
this.tableData = res.rows
|
|
||||||
this.total = res.total
|
|
||||||
this.loading = false
|
|
||||||
})
|
|
||||||
},
|
|
||||||
handleSelectionChange(val) {},
|
|
||||||
/** 导出按钮操作 */
|
|
||||||
handleExport() {
|
|
||||||
this.$confirm( '是否确认导出所有数据项?', '警告', {
|
|
||||||
confirmButtonText: '确定',
|
|
||||||
cancelButtonText: '取消',
|
|
||||||
type: 'warning',
|
|
||||||
}).then((_) => {
|
|
||||||
this.download(
|
|
||||||
'/activity/manage/activity/export',
|
|
||||||
Object.assign({},{actType:12}, this.queryParams, this.select),
|
|
||||||
`${'消费赠送'}${new Date().getTime()}.xlsx`
|
|
||||||
)
|
|
||||||
})
|
|
||||||
},
|
|
||||||
tableRowClassName({ row, rowIndex }) {
|
|
||||||
if (rowIndex % 2 == 1) {
|
|
||||||
return 'warning-row'
|
|
||||||
} else if (rowIndex % 2 == 0) {
|
|
||||||
return 'success-row'
|
|
||||||
}
|
|
||||||
return ''
|
|
||||||
},
|
|
||||||
},
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
<style scoped lang="scss">
|
|
||||||
::v-deep .el-table .warning-row {
|
|
||||||
background: #f9f9f9;
|
|
||||||
}
|
|
||||||
|
|
||||||
::v-deep .el-table .success-row {
|
|
||||||
background: #ffffff;
|
|
||||||
}
|
|
||||||
::v-deep .el-table thead {
|
|
||||||
color: #000000;
|
|
||||||
}
|
|
||||||
::v-deep .el-select {
|
|
||||||
width: 100%;
|
|
||||||
}
|
|
||||||
.page {
|
|
||||||
padding: 20px;
|
|
||||||
background: #f9f9f9;
|
|
||||||
font-size: 14px;
|
|
||||||
.main {
|
|
||||||
// background: #ffffff;
|
|
||||||
border-radius: 8px;
|
|
||||||
display: flex;
|
|
||||||
flex-direction: column;
|
|
||||||
.main_a {
|
|
||||||
background: #fff;
|
|
||||||
border-radius: 8px;
|
|
||||||
justify-content: space-between;
|
|
||||||
align-items: center;
|
|
||||||
box-shadow: 0px 2px 20px 0px rgba(238, 238, 238, 0.5);
|
|
||||||
}
|
|
||||||
.mainbtn {
|
|
||||||
padding: 0;
|
|
||||||
}
|
|
||||||
.maintable {
|
|
||||||
flex: 1;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
::v-deep .el-date-editor.el-input,
|
|
||||||
.el-date-editor.el-input__inner {
|
|
||||||
width: 100%;
|
|
||||||
}
|
|
||||||
.form_all {
|
|
||||||
padding: 0 20px;
|
|
||||||
//margin-bottom: 10px;
|
|
||||||
background: #fff;
|
|
||||||
}
|
|
||||||
</style>
|
|
|
@ -1,371 +0,0 @@
|
||||||
<!--
|
|
||||||
* @Descripttion:
|
|
||||||
* @version:
|
|
||||||
* @Author: 王三华
|
|
||||||
* @Date: 2023-05-04 20:20:52
|
|
||||||
-->
|
|
||||||
<template>
|
|
||||||
<div class="">
|
|
||||||
|
|
||||||
<div class="tit">{{ '海豆赠送' }}</div>
|
|
||||||
<div class="xian"></div>
|
|
||||||
<div class="table">
|
|
||||||
<!-- 批量操作 -->
|
|
||||||
<table>
|
|
||||||
<tr>
|
|
||||||
<th colspan="1"
|
|
||||||
class="tableLeft">
|
|
||||||
<el-button type="primary"
|
|
||||||
@click="addNewGoods"
|
|
||||||
size="mini">{{'添加'}}
|
|
||||||
</el-button>
|
|
||||||
</th>
|
|
||||||
<th colspan="8"
|
|
||||||
style="padding-bottom:0">
|
|
||||||
<div class="tableFlex">
|
|
||||||
<div class="tableFlex_i">
|
|
||||||
<el-select clearable
|
|
||||||
:placeholder="'请选择'"
|
|
||||||
v-model="plcz.pkGrade">
|
|
||||||
<el-option v-for="item in gradeRangArr"
|
|
||||||
:key="item.pkId"
|
|
||||||
:label="item.gradeName"
|
|
||||||
:value="item.pkId"></el-option>
|
|
||||||
</el-select>
|
|
||||||
</div>
|
|
||||||
<div class="tableFlex_i">
|
|
||||||
</div>
|
|
||||||
<div class="tableFlex_i">
|
|
||||||
<el-select clearable
|
|
||||||
:placeholder="'请选择'"
|
|
||||||
v-model="plcz.ratioType">
|
|
||||||
<el-option v-for="item in cellTypeList"
|
|
||||||
:key="item.value"
|
|
||||||
:label="item.label"
|
|
||||||
:value="item.value"></el-option>
|
|
||||||
</el-select>
|
|
||||||
</div>
|
|
||||||
<div class="tableFlex_i"> <el-input v-model='plcz.ratioValue'></el-input></div>
|
|
||||||
<div class="tableAdd"></div>
|
|
||||||
</div>
|
|
||||||
</th>
|
|
||||||
<th colspan="2"
|
|
||||||
style="padding-bottom:0">
|
|
||||||
<div class="tableFlex">
|
|
||||||
<div class="tableFlex_i"><el-button type="primary"
|
|
||||||
@click="toPlcz"
|
|
||||||
size="mini">{{'批量操作'}}</el-button></div>
|
|
||||||
<div class="tableFlex_i"><el-button size="mini"
|
|
||||||
@click="reset"> {{ '重置' }}</el-button></div>
|
|
||||||
</div>
|
|
||||||
</th>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
<table class="table_b">
|
|
||||||
<tr style="border-top:0">
|
|
||||||
<td style="border:0"></td>
|
|
||||||
<!-- <td colspan="2">商品名称</td>
|
|
||||||
<td colspan="2">商品数量</td> -->
|
|
||||||
<td colspan="8"
|
|
||||||
style="padding-bottom:0">
|
|
||||||
<div class="tableFlex">
|
|
||||||
<div class="tableFlex_i">{{'等级'}}</div>
|
|
||||||
<div class="tableFlex_i">{{'业绩'}}(PV)</div>
|
|
||||||
<div class="tableFlex_i">{{'赠送类型'}}</div>
|
|
||||||
<div class="tableFlex_i">{{ '值' }}</div>
|
|
||||||
<div class="tableAdd"></div>
|
|
||||||
</div>
|
|
||||||
</td>
|
|
||||||
<td colspan="2"
|
|
||||||
style="border:0"></td>
|
|
||||||
</tr>
|
|
||||||
<tr v-for="item,index in consumeShieldConfigList"
|
|
||||||
:key="index">
|
|
||||||
<td style="border:0"></td>
|
|
||||||
|
|
||||||
<td colspan="8"
|
|
||||||
style="padding-bottom:0">
|
|
||||||
<div class="tableFlex">
|
|
||||||
<div class="tableFlex_i">
|
|
||||||
<el-select clearable
|
|
||||||
@change="setValue($event,index)"
|
|
||||||
:placeholder="'请选择'"
|
|
||||||
v-model="item.pkGrade">
|
|
||||||
<el-option v-for="item in gradeRangArr"
|
|
||||||
:key="item.pkId"
|
|
||||||
:label="item.gradeName"
|
|
||||||
:value="item.pkId"></el-option>
|
|
||||||
</el-select>
|
|
||||||
</div>
|
|
||||||
<div class="tableFlex_i">
|
|
||||||
<el-input disabled
|
|
||||||
v-model="item.startValue"></el-input>
|
|
||||||
</div>
|
|
||||||
<div class="tableFlex_i">
|
|
||||||
<el-select clearable
|
|
||||||
:placeholder="'请选择'"
|
|
||||||
v-model="item.ratioType">
|
|
||||||
<el-option v-for="item in cellTypeList"
|
|
||||||
:key="item.value"
|
|
||||||
:label="item.label"
|
|
||||||
:value="item.value"></el-option>
|
|
||||||
</el-select>
|
|
||||||
</div>
|
|
||||||
<div class="tableFlex_i">
|
|
||||||
<el-input oninput="value = value.replace(/[^\d.]/g,'')" v-model="item.ratioValue"></el-input>
|
|
||||||
</div>
|
|
||||||
<div class="tableAdd">
|
|
||||||
|
|
||||||
<img src="@/assets/images/iconpop.png"
|
|
||||||
@click="reduceProduct(index)"
|
|
||||||
alt="">
|
|
||||||
<!-- <img src="@/assets/images/iconadd.png"
|
|
||||||
@click="addProduct(cndex)"
|
|
||||||
alt=""> -->
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</td>
|
|
||||||
<td colspan="2"
|
|
||||||
style="border:0"></td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
import * as api from '@/api/giftGoods.js'
|
|
||||||
import topBar from '@/components/topBar'
|
|
||||||
import ImageUpload from '@/components/ImageUpload'
|
|
||||||
export default {
|
|
||||||
components: {
|
|
||||||
topBar,
|
|
||||||
ImageUpload,
|
|
||||||
},
|
|
||||||
data() {
|
|
||||||
return {
|
|
||||||
moren: 'setGiftGoodsInfo',
|
|
||||||
plcz: {},
|
|
||||||
consumeShieldConfigList: [],
|
|
||||||
gradeRangArr: [],
|
|
||||||
cellTypeList: [],
|
|
||||||
}
|
|
||||||
},
|
|
||||||
mounted() {
|
|
||||||
this.getData()
|
|
||||||
},
|
|
||||||
methods: {
|
|
||||||
getPage(allData) {
|
|
||||||
if (allData != '') {
|
|
||||||
this.consumeShieldConfigList = allData
|
|
||||||
}
|
|
||||||
},
|
|
||||||
setValue(e, index) {
|
|
||||||
this.gradeRangArr.forEach((item) => {
|
|
||||||
if (item.pkId == e) {
|
|
||||||
this.$set(
|
|
||||||
this.consumeShieldConfigList[index],
|
|
||||||
'startValue',
|
|
||||||
item.startValue
|
|
||||||
)
|
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
|
||||||
getData() {
|
|
||||||
api.gradeRanglist().then((res) => {
|
|
||||||
this.gradeRangArr = res.data
|
|
||||||
})
|
|
||||||
api.getcellTypeList().then((res) => {
|
|
||||||
this.cellTypeList = res.data
|
|
||||||
})
|
|
||||||
},
|
|
||||||
reduceProduct(index) {
|
|
||||||
this.consumeShieldConfigList.splice(index, 1)
|
|
||||||
},
|
|
||||||
toPlcz() {
|
|
||||||
this.consumeShieldConfigList.forEach((stem) => {
|
|
||||||
stem.pkGrade = this.plcz.pkGrade
|
|
||||||
stem.ratioType = this.plcz.ratioType
|
|
||||||
stem.ratioValue = this.plcz.ratioValue
|
|
||||||
})
|
|
||||||
this.gradeRangArr.forEach((item) => {
|
|
||||||
this.consumeShieldConfigList.forEach((stem) => {
|
|
||||||
if (item.pkId == this.plcz.pkGrade) {
|
|
||||||
stem.startValue = item.gradeValue
|
|
||||||
}
|
|
||||||
})
|
|
||||||
})
|
|
||||||
},
|
|
||||||
reset() {
|
|
||||||
this.plcz = {}
|
|
||||||
},
|
|
||||||
addNewGoods() {
|
|
||||||
this.consumeShieldConfigList.push({
|
|
||||||
pkGrade: '',
|
|
||||||
ratioType: '',
|
|
||||||
startValue: '',
|
|
||||||
ratioValue: '',
|
|
||||||
})
|
|
||||||
},
|
|
||||||
},
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
|
||||||
.main_a {
|
|
||||||
}
|
|
||||||
.main {
|
|
||||||
background: #ffffff;
|
|
||||||
border-radius: 8px;
|
|
||||||
height: calc(100vh - 164px);
|
|
||||||
padding-bottom: 20px;
|
|
||||||
box-shadow: 0px 2px 20px 0px rgba(238, 238, 238, 0.5);
|
|
||||||
}
|
|
||||||
::v-deep .el-select {
|
|
||||||
width: 100%;
|
|
||||||
}
|
|
||||||
// }
|
|
||||||
.footer {
|
|
||||||
height: 68px;
|
|
||||||
background: #ffffff;
|
|
||||||
box-shadow: 0px -3px 20px 0px rgba(204, 204, 204, 0.5);
|
|
||||||
// margin: 0 20px;
|
|
||||||
display: flex;
|
|
||||||
justify-content: center;
|
|
||||||
align-items: center;
|
|
||||||
.thebtn1 {
|
|
||||||
background: #3181e5;
|
|
||||||
color: #ffffff;
|
|
||||||
padding: 9px 45px;
|
|
||||||
}
|
|
||||||
.thebtn2 {
|
|
||||||
background: #cccccc;
|
|
||||||
color: #ffffff;
|
|
||||||
padding: 9px 45px;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
.tit {
|
|
||||||
font-size: 14px;
|
|
||||||
font-weight: bold;
|
|
||||||
color: #333333;
|
|
||||||
padding: 0 20px;
|
|
||||||
border-left: 5px solid #c8161d;
|
|
||||||
margin: 20px 0 10px 0;
|
|
||||||
}
|
|
||||||
.xian {
|
|
||||||
height: 1px;
|
|
||||||
background: rgba(0, 0, 0, 0.1);
|
|
||||||
}
|
|
||||||
.demo-ruleForm {
|
|
||||||
padding: 20px 0;
|
|
||||||
}
|
|
||||||
::v-deep .el-date-editor--datetimerange {
|
|
||||||
width: auto !important;
|
|
||||||
}
|
|
||||||
.flexed {
|
|
||||||
display: flex;
|
|
||||||
}
|
|
||||||
.flexed_l {
|
|
||||||
margin-right: 20px;
|
|
||||||
}
|
|
||||||
.table {
|
|
||||||
padding: 0 20px;
|
|
||||||
margin-top: 1px;
|
|
||||||
}
|
|
||||||
|
|
||||||
table {
|
|
||||||
width: 100%;
|
|
||||||
background: #fff;
|
|
||||||
border-collapse: collapse;
|
|
||||||
border: 1px solid #cccccc;
|
|
||||||
border-spacing: 0;
|
|
||||||
table-layout: fixed;
|
|
||||||
border-collapse: collapse;
|
|
||||||
// 合并内外边距
|
|
||||||
// (去除表格单元格默认的2个像素内外边距*/
|
|
||||||
}
|
|
||||||
.table_b {
|
|
||||||
border-top: 0;
|
|
||||||
}
|
|
||||||
th {
|
|
||||||
padding: 10px 10px;
|
|
||||||
text-align: center;
|
|
||||||
border: 1px solid #cccccc;
|
|
||||||
overflow: hidden;
|
|
||||||
border-top: 0;
|
|
||||||
}
|
|
||||||
td {
|
|
||||||
padding: 10px 10px;
|
|
||||||
text-align: center;
|
|
||||||
border: 1px solid #cccccc;
|
|
||||||
border-top: 0;
|
|
||||||
overflow: hidden;
|
|
||||||
}
|
|
||||||
.tableFlex {
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
margin-bottom: 10px;
|
|
||||||
.tableFlex_i {
|
|
||||||
flex: 1;
|
|
||||||
::v-deep .el-input__inner {
|
|
||||||
width: 90%;
|
|
||||||
}
|
|
||||||
::v-deep .el-input__suffix {
|
|
||||||
right: 15px;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
.tableAdd {
|
|
||||||
width: 50px;
|
|
||||||
img {
|
|
||||||
width: 19px;
|
|
||||||
height: 19px;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
.tableAddPro {
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
justify-content: center;
|
|
||||||
img {
|
|
||||||
width: 19px;
|
|
||||||
height: 19px;
|
|
||||||
margin-left: 10px;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
.tableLeft {
|
|
||||||
text-align: left;
|
|
||||||
}
|
|
||||||
.tabList {
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
padding: 20px 0px 0 20px;
|
|
||||||
.tabList_i {
|
|
||||||
padding: 10px;
|
|
||||||
font-size: 14px;
|
|
||||||
font-weight: 400;
|
|
||||||
color: #999999;
|
|
||||||
cursor: pointer;
|
|
||||||
}
|
|
||||||
.tabAct {
|
|
||||||
background: #108ee9;
|
|
||||||
color: #fff;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
.clearBtm {
|
|
||||||
border-bottom: 0;
|
|
||||||
}
|
|
||||||
.cpHeight {
|
|
||||||
height: 50vh;
|
|
||||||
overflow-y: auto;
|
|
||||||
}
|
|
||||||
.blueCor {
|
|
||||||
color: #589ff8;
|
|
||||||
cursor: pointer;
|
|
||||||
}
|
|
||||||
::v-deep .el-input__icon {
|
|
||||||
line-height: 33px;
|
|
||||||
}
|
|
||||||
::v-deep .el-button {
|
|
||||||
margin-top: 0;
|
|
||||||
}
|
|
||||||
</style>
|
|
|
@ -1,494 +0,0 @@
|
||||||
<template>
|
|
||||||
<div class="page">
|
|
||||||
<topBar
|
|
||||||
v-if="topList.length > 0"
|
|
||||||
:topList="topList"
|
|
||||||
:moren="moren"
|
|
||||||
></topBar>
|
|
||||||
<div class="main">
|
|
||||||
<div class="thetable">
|
|
||||||
<div class="fontTitle"> {{'在线签呈'}}</div>
|
|
||||||
<div class="titleflex">
|
|
||||||
<div>{{'编号'}} :</div>
|
|
||||||
<div>
|
|
||||||
<el-radio-group v-model="allData.signType">
|
|
||||||
<el-radio
|
|
||||||
:label="ctem.value"
|
|
||||||
v-for="ctem in checkList"
|
|
||||||
:key="ctem.value"
|
|
||||||
>{{ ctem.label }}</el-radio
|
|
||||||
>
|
|
||||||
</el-radio-group>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<table id="tfhover" class="tftable" border="1">
|
|
||||||
<tr>
|
|
||||||
<td colspan="1" width="190px" align="center"> {{'发起部门'}} :</td>
|
|
||||||
<td colspan="1" v-if="allData.signData" width="435px">
|
|
||||||
{{ allData.signData.deptName }}
|
|
||||||
</td>
|
|
||||||
<td colspan="1" width="140px" align="center"> {{'发起人'}} :</td>
|
|
||||||
<td colspan="1" v-if="allData.signData">
|
|
||||||
{{ allData.signData.userName }}
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td colspan="1" align="center"> {{'主旨'}} :</td>
|
|
||||||
<td colspan="1" v-if="allData.signData">
|
|
||||||
{{ allData.signData.approvalBusinessVal }}
|
|
||||||
</td>
|
|
||||||
<td colspan="1" align="center"> {{'日期'}} :</td>
|
|
||||||
<td colspan="1" v-if="allData.signData">
|
|
||||||
{{ allData.signData.creationTime }}
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<!-- // 审批流程 -->
|
|
||||||
<tr>
|
|
||||||
<td colspan="1" align="center"> {{'审批流程'}}</td>
|
|
||||||
<td colspan="3">
|
|
||||||
<div class="disflex">
|
|
||||||
<span
|
|
||||||
v-for="(ctem, cndex) in allData.signData.detailList"
|
|
||||||
:key="cndex"
|
|
||||||
style="margin: 0 5px 5px 0"
|
|
||||||
>
|
|
||||||
<el-select
|
|
||||||
v-model="ctem.pkApprover"
|
|
||||||
filterable
|
|
||||||
size="mini"
|
|
||||||
@change="getApprover"
|
|
||||||
:placeholder="'请选择'"
|
|
||||||
>
|
|
||||||
<el-option
|
|
||||||
v-for="item in approbalList"
|
|
||||||
:key="item.userId"
|
|
||||||
:label="item.nickName + '(' + item.deptName + ')'"
|
|
||||||
:value="item.userId"
|
|
||||||
>
|
|
||||||
</el-option>
|
|
||||||
</el-select>
|
|
||||||
</span>
|
|
||||||
<span style="margin: 0 5px 5px 0">
|
|
||||||
<i
|
|
||||||
class="el-icon-remove-outline"
|
|
||||||
@click.stop="delData"
|
|
||||||
v-show="allData.signData.detailList.length > 0"
|
|
||||||
style="font-size: 18px; margin-right: 5px"
|
|
||||||
></i>
|
|
||||||
<i
|
|
||||||
class="el-icon-circle-plus-outline"
|
|
||||||
style="font-size: 18px"
|
|
||||||
@click.stop="addData"
|
|
||||||
></i>
|
|
||||||
</span>
|
|
||||||
</div>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td colspan="1" align="center">{{'抄送人'}}</td>
|
|
||||||
<td colspan="3">
|
|
||||||
<div class="disflex">
|
|
||||||
<span
|
|
||||||
v-for="(ctem, cndex) in allData.signData.sendList"
|
|
||||||
:key="cndex"
|
|
||||||
style="margin: 0 5px 5px 0"
|
|
||||||
>
|
|
||||||
<el-select
|
|
||||||
v-model="ctem.pkSend"
|
|
||||||
filterable
|
|
||||||
size="mini"
|
|
||||||
@change="getApprover"
|
|
||||||
:placeholder="'请选择'"
|
|
||||||
>
|
|
||||||
<el-option
|
|
||||||
v-for="item in userAllList"
|
|
||||||
:key="item.userId"
|
|
||||||
:label="item.nickName + '(' + item.deptName + ')'"
|
|
||||||
:value="item.userId"
|
|
||||||
>
|
|
||||||
</el-option>
|
|
||||||
</el-select>
|
|
||||||
</span>
|
|
||||||
<span style="margin: 0 5px 5px 0">
|
|
||||||
<i
|
|
||||||
class="el-icon-remove-outline"
|
|
||||||
@click.stop="delData1"
|
|
||||||
v-show="allData.signData.sendList.length > 0"
|
|
||||||
style="font-size: 18px; margin-right: 5px"
|
|
||||||
></i>
|
|
||||||
<i
|
|
||||||
class="el-icon-circle-plus-outline"
|
|
||||||
style="font-size: 18px"
|
|
||||||
@click.stop="addData1"
|
|
||||||
></i>
|
|
||||||
</span>
|
|
||||||
</div>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td style="height: 190px" align="center">{{'情况说明'}}</td>
|
|
||||||
<td colspan="3" style="padding: 0">
|
|
||||||
<div >
|
|
||||||
<el-input
|
|
||||||
type="textarea"
|
|
||||||
:rows="6"
|
|
||||||
:placeholder="'请输入'"
|
|
||||||
v-model="allData.remark"
|
|
||||||
>
|
|
||||||
</el-input>
|
|
||||||
</div>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td style="height: 193px" align="center"> {{'业务诉求'}}</td>
|
|
||||||
<td colspan="3" style="padding: 0;vertical-align: top;">
|
|
||||||
<div>
|
|
||||||
<el-table
|
|
||||||
:data="allData.updateParentParamList"
|
|
||||||
style="width: 100%"
|
|
||||||
:header-cell-style="{ background: '#EEEEEE' }"
|
|
||||||
>
|
|
||||||
<el-table-column
|
|
||||||
v-for="ctem in allData.tableTit"
|
|
||||||
:key="ctem.value"
|
|
||||||
align="center"
|
|
||||||
:prop="ctem.value"
|
|
||||||
:label="ctem.label"
|
|
||||||
>
|
|
||||||
<template slot-scope="scope">
|
|
||||||
<div v-show="ctem.value == 'actExplain'">
|
|
||||||
<div
|
|
||||||
style="
|
|
||||||
color: #48b2fd;
|
|
||||||
text-decoration: underline;
|
|
||||||
cursor: pointer;
|
|
||||||
"
|
|
||||||
@click="details"
|
|
||||||
>
|
|
||||||
{{'查看详情'}}
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div v-show="ctem.value != 'actExplain'">
|
|
||||||
<div>
|
|
||||||
{{ scope.row[ctem.value] }}
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</template>
|
|
||||||
</el-table-column>
|
|
||||||
</el-table>
|
|
||||||
</div>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td style="height: 190px" align="center">{{'附件'}}</td>
|
|
||||||
<td colspan="3" style="padding: 0">
|
|
||||||
<div style="height: 100%; padding: 10px 20px">
|
|
||||||
<el-upload
|
|
||||||
class="upload-demo"
|
|
||||||
:action="uploadImgUrl"
|
|
||||||
:on-success="handleUploadSuccess"
|
|
||||||
:on-remove="removeFile"
|
|
||||||
multiple
|
|
||||||
:headers="headers"
|
|
||||||
:file-list="fileList"
|
|
||||||
>
|
|
||||||
<el-button size="small" type="primary">{{'点击上传'}}</el-button>
|
|
||||||
</el-upload>
|
|
||||||
</div>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="footer">
|
|
||||||
<div style="margin: 0 auto">
|
|
||||||
<el-button class="thebtn" @click="cancelCz"> {{ '取消' }}</el-button>
|
|
||||||
<el-button type="primary" class="thebtn" @click="saveDate"
|
|
||||||
> {{ '确认' }}</el-button
|
|
||||||
>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
import topBar from "@/components/topBar";
|
|
||||||
import * as man from "@/api/manage";
|
|
||||||
import * as gif from "@/api/giftGoods.js";
|
|
||||||
import onlineSign from "../../dashboard/onlineSign.json";
|
|
||||||
import { getToken } from "@/utils/auth";
|
|
||||||
import { dealerSpace, makerSpace } from "@/api/manage";
|
|
||||||
export default {
|
|
||||||
name: "Zxqc",
|
|
||||||
components: {
|
|
||||||
topBar,
|
|
||||||
},
|
|
||||||
data() {
|
|
||||||
return {
|
|
||||||
uploadImgUrl: process.env.VUE_APP_BASE_API + "/system/upload", // 上传的图片服务器地址
|
|
||||||
headers: {
|
|
||||||
Authorization: getToken(),
|
|
||||||
},
|
|
||||||
onlineSign,
|
|
||||||
moren: "specialZxqc",
|
|
||||||
topList: [
|
|
||||||
{
|
|
||||||
name: "在线签呈",
|
|
||||||
path: "specialZxqc",
|
|
||||||
},
|
|
||||||
],
|
|
||||||
checkList: [],
|
|
||||||
allData: {
|
|
||||||
remark: "",
|
|
||||||
signType: 1,
|
|
||||||
fileList: [],
|
|
||||||
signData: {
|
|
||||||
detailList: [],
|
|
||||||
sendList: [],
|
|
||||||
},
|
|
||||||
approvalBusiness: "",
|
|
||||||
},
|
|
||||||
signDataList: [],
|
|
||||||
fileList: [],
|
|
||||||
approbalList: [],
|
|
||||||
// 审批流程
|
|
||||||
userAllList: [],
|
|
||||||
allObj: {},
|
|
||||||
};
|
|
||||||
},
|
|
||||||
mounted() {
|
|
||||||
// 业务诉求
|
|
||||||
this.allObj = JSON.parse(this.$route.query.data);
|
|
||||||
this.allData.updateParentParamList = [this.allObj.activityParam];
|
|
||||||
// 签呈类型
|
|
||||||
this.allData.approvalBusiness = this.$route.query.approvalBusiness;
|
|
||||||
this.getSignData([this.allData.approvalBusiness]);
|
|
||||||
},
|
|
||||||
methods: {
|
|
||||||
details(code) {
|
|
||||||
// console.log("🌈this.allData", this.allData);
|
|
||||||
this.$router.push({
|
|
||||||
path: "addConsumptionInfo",
|
|
||||||
query: {
|
|
||||||
data: JSON.stringify(this.allObj),
|
|
||||||
controlType: 4,
|
|
||||||
},
|
|
||||||
});
|
|
||||||
},
|
|
||||||
getSignData(arr) {
|
|
||||||
man.signData(arr).then((res) => {
|
|
||||||
this.allData.signData = res.data[0];
|
|
||||||
// 签呈表头数据添加到数组
|
|
||||||
this.$set(this.allData, "signType", 1);
|
|
||||||
this.$set(this.allData, "remark", "");
|
|
||||||
this.$set(this.allData, "fileList", []);
|
|
||||||
// table表头添加到数组
|
|
||||||
this.onlineSign.forEach((ctem) => {
|
|
||||||
if (this.allData.approvalBusiness == ctem.id) {
|
|
||||||
this.allData.tableTit = ctem.textList;
|
|
||||||
}
|
|
||||||
});
|
|
||||||
this.$forceUpdate();
|
|
||||||
this.getApprove();
|
|
||||||
this.getSignType();
|
|
||||||
});
|
|
||||||
},
|
|
||||||
getApprove() {
|
|
||||||
// 审批流程
|
|
||||||
man.approvalUser().then((res) => {
|
|
||||||
this.approbalList = res.data;
|
|
||||||
});
|
|
||||||
man.userAll().then((res) => {
|
|
||||||
this.userAllList = res.data;
|
|
||||||
});
|
|
||||||
},
|
|
||||||
getSignType() {
|
|
||||||
man.signType().then((res) => {
|
|
||||||
this.checkList = res.data;
|
|
||||||
});
|
|
||||||
},
|
|
||||||
saveDate() {
|
|
||||||
// 审批流程
|
|
||||||
this.allData.userIdList = this.allData.signData.detailList.map((item) => {
|
|
||||||
return item.pkApprover;
|
|
||||||
});
|
|
||||||
this.allData.userIdList = this.allData.userIdList.filter((item) => item);
|
|
||||||
|
|
||||||
// 抄送流程
|
|
||||||
this.allData.sendIdList = this.allData.signData.sendList.map((item) => {
|
|
||||||
return item.pkSend;
|
|
||||||
});
|
|
||||||
this.allData.sendIdList = this.allData.sendIdList.filter((item) => item);
|
|
||||||
|
|
||||||
this.allData.fileList = this.fileList.map((item) => {
|
|
||||||
return item.url;
|
|
||||||
});
|
|
||||||
|
|
||||||
let obj = Object.assign(
|
|
||||||
{},
|
|
||||||
{
|
|
||||||
beanList: this.allObj.beanList,
|
|
||||||
controlType: this.allObj.controlType,
|
|
||||||
activityParam: this.allObj.activityParam,
|
|
||||||
signType: this.allData.signType, //普通件,急件,密件
|
|
||||||
remark: this.allData.remark, //备注
|
|
||||||
fileList: this.allData.fileList, //附件[]
|
|
||||||
userIdList: this.allData.userIdList, //审批流程[]
|
|
||||||
sendIdList: this.allData.sendIdList, //抄送人[]
|
|
||||||
}
|
|
||||||
);
|
|
||||||
let url = "";
|
|
||||||
if (this.allObj.controlType == 1) {
|
|
||||||
//新增
|
|
||||||
url = gif.savePetition;
|
|
||||||
} else if (this.allObj.controlType == 2) {
|
|
||||||
//修改
|
|
||||||
url = gif.upPetition;
|
|
||||||
} else if (this.allObj.controlType == 3) {
|
|
||||||
//删除
|
|
||||||
url = gif.delPetition;
|
|
||||||
}
|
|
||||||
url(obj).then((res) => {
|
|
||||||
if (res.code == 200) {
|
|
||||||
this.$message({
|
|
||||||
message: res.msg,
|
|
||||||
type: "success",
|
|
||||||
});
|
|
||||||
this.cancelCz()
|
|
||||||
}
|
|
||||||
});
|
|
||||||
},
|
|
||||||
cancelCz() {
|
|
||||||
this.$router.replace({
|
|
||||||
path: 'seaBeanList',
|
|
||||||
})
|
|
||||||
},
|
|
||||||
// 审批流程
|
|
||||||
getApprover() {
|
|
||||||
this.$nextTick(() => {
|
|
||||||
this.$forceUpdate();
|
|
||||||
});
|
|
||||||
},
|
|
||||||
// 审批流程
|
|
||||||
addData() {
|
|
||||||
let arr = JSON.parse(JSON.stringify(this.allData.signData.detailList));
|
|
||||||
arr.push({
|
|
||||||
pkApprover: "",
|
|
||||||
});
|
|
||||||
this.$set(this.allData.signData, "detailList", arr);
|
|
||||||
this.$forceUpdate();
|
|
||||||
},
|
|
||||||
// 审批流程
|
|
||||||
addData1() {
|
|
||||||
let arr = JSON.parse(JSON.stringify(this.allData.signData.sendList));
|
|
||||||
arr.push({
|
|
||||||
pkSend: "",
|
|
||||||
});
|
|
||||||
this.$set(this.allData.signData, "sendList", arr);
|
|
||||||
this.$forceUpdate();
|
|
||||||
},
|
|
||||||
// 抄送
|
|
||||||
delData1() {
|
|
||||||
this.allData.signData.sendList.pop();
|
|
||||||
this.$forceUpdate();
|
|
||||||
},
|
|
||||||
// 审批流程
|
|
||||||
delData() {
|
|
||||||
this.allData.signData.detailList.pop();
|
|
||||||
this.$forceUpdate();
|
|
||||||
},
|
|
||||||
|
|
||||||
handleUploadSuccess(res) {
|
|
||||||
if (res.code == 200) {
|
|
||||||
this.fileList.push(res.data);
|
|
||||||
} else {
|
|
||||||
this.$message({
|
|
||||||
type: "error",
|
|
||||||
message: "上传失败",
|
|
||||||
});
|
|
||||||
}
|
|
||||||
},
|
|
||||||
removeFile(file, fileList) {
|
|
||||||
this.fileList.forEach((item, index) => {
|
|
||||||
if (file.uid == item.uid) {
|
|
||||||
this.fileList.splice(index, 1);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
},
|
|
||||||
},
|
|
||||||
};
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
|
||||||
::v-deep .el-table thead {
|
|
||||||
color: #000000;
|
|
||||||
}
|
|
||||||
.page {
|
|
||||||
padding: 20px;
|
|
||||||
background: #f9f9f9;
|
|
||||||
font-size: 14px;
|
|
||||||
.main {
|
|
||||||
// margin-top: 20px;
|
|
||||||
background: #ffffff;
|
|
||||||
border-radius: 8px;
|
|
||||||
box-shadow: 0px 2px 20px 0px rgba(238, 238, 238, 0.5);
|
|
||||||
display: flex;
|
|
||||||
margin: 0 auto;
|
|
||||||
width: 100%;
|
|
||||||
padding: 20px;
|
|
||||||
flex-direction: column;
|
|
||||||
}
|
|
||||||
.thetable {
|
|
||||||
margin: 0 auto;
|
|
||||||
margin-bottom: 20px;
|
|
||||||
.fontTitle {
|
|
||||||
font-weight: bold;
|
|
||||||
font-size: 24px;
|
|
||||||
text-align: center;
|
|
||||||
}
|
|
||||||
.titleflex {
|
|
||||||
display: flex;
|
|
||||||
margin-top: 10px;
|
|
||||||
margin-bottom: 10px;
|
|
||||||
justify-content: space-between;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
.tftable {
|
|
||||||
font-size: 14px;
|
|
||||||
border-collapse: collapse;
|
|
||||||
border-radius: 10px;
|
|
||||||
width: 1060px;
|
|
||||||
border: 1px solid #cccccc;
|
|
||||||
.spbox {
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
justify-content: flex-end;
|
|
||||||
}
|
|
||||||
th {
|
|
||||||
font-size: 14px;
|
|
||||||
// padding: 20px;
|
|
||||||
}
|
|
||||||
tr td {
|
|
||||||
font-size: 14px;
|
|
||||||
padding: 10px 20px;
|
|
||||||
height: 60px;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
.footer {
|
|
||||||
display: flex;
|
|
||||||
justify-content: center;
|
|
||||||
align-items: center;
|
|
||||||
padding: 15px 0;
|
|
||||||
.thebtn {
|
|
||||||
width: 120px;
|
|
||||||
height: 38px;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
// 审批流程
|
|
||||||
.disflex {
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
flex-wrap: wrap;
|
|
||||||
}
|
|
||||||
</style>
|
|
|
@ -1,412 +0,0 @@
|
||||||
<!-- 系统配置 - 权限配置 -->
|
|
||||||
<template>
|
|
||||||
<div class="page">
|
|
||||||
<topBar
|
|
||||||
v-if="topList.length > 0"
|
|
||||||
:top-list="topList"
|
|
||||||
:moren="moren"
|
|
||||||
/>
|
|
||||||
<div class="thetopbox">
|
|
||||||
<el-form ref="form" :model="queryParams" label-width="100px">
|
|
||||||
<el-row>
|
|
||||||
<el-col :span="4">
|
|
||||||
<el-form-item :label="'活动名称'" prop="name">
|
|
||||||
<el-input v-model="queryParams.name" clearable />
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="4">
|
|
||||||
<el-form-item :label="'活动状态'" prop="teamCode">
|
|
||||||
<el-select v-model="queryParams.awardsId" clearable :placeholder="'请选择'">
|
|
||||||
<el-option
|
|
||||||
v-for="item,index in awardsList"
|
|
||||||
:key="index"
|
|
||||||
:label="item.awardsName"
|
|
||||||
:value="item.awardsValue"
|
|
||||||
/>
|
|
||||||
</el-select>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="8">
|
|
||||||
<el-form-item :label="'开始日期'" prop="teamCode">
|
|
||||||
<el-date-picker
|
|
||||||
class="time"
|
|
||||||
v-model="queryParams.creationTime"
|
|
||||||
value-format="yyyy-MM-dd HH:mm:ss"
|
|
||||||
type="datetimerange"
|
|
||||||
:range-separator="'至'"
|
|
||||||
:start-placeholder="'开始日期'"
|
|
||||||
:end-placeholder="'结束日期'"
|
|
||||||
@change="changeTime"
|
|
||||||
/>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="8">
|
|
||||||
<el-form-item :label="'结束日期'" prop="teamCode">
|
|
||||||
<el-date-picker
|
|
||||||
class="time"
|
|
||||||
v-model="queryParams.creationTime"
|
|
||||||
value-format="yyyy-MM-dd HH:mm:ss"
|
|
||||||
type="datetimerange"
|
|
||||||
:range-separator="'至'"
|
|
||||||
:start-placeholder="'开始日期'"
|
|
||||||
:end-placeholder="'结束日期'"
|
|
||||||
@change="changeTime"
|
|
||||||
/>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="8">
|
|
||||||
<el-form-item :label="'创建日期'" prop="teamCode">
|
|
||||||
<el-date-picker
|
|
||||||
class="time"
|
|
||||||
v-model="queryParams.creationTime"
|
|
||||||
value-format="yyyy-MM-dd HH:mm:ss"
|
|
||||||
type="datetimerange"
|
|
||||||
:range-separator="'至'"
|
|
||||||
:start-placeholder="'开始日期'"
|
|
||||||
:end-placeholder="'结束日期'"
|
|
||||||
@change="changeTime"
|
|
||||||
/>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="4" style="margin:0 0 30px 30px">
|
|
||||||
<div class="searchbox">
|
|
||||||
<el-button class="searchbtn" @click="research()"> {{ '搜索' }}</el-button>
|
|
||||||
<el-button @click="reChongzhi"> {{ '重置' }}</el-button>
|
|
||||||
</div>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
</el-form>
|
|
||||||
</div>
|
|
||||||
<div class="main">
|
|
||||||
<div class="maintop">
|
|
||||||
<div class="mainbtn">
|
|
||||||
<el-button size="small" class="thebtn1" @click="addrecep">{{'添加'}}</el-button>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="maintable">
|
|
||||||
<el-table
|
|
||||||
:data="tableData"
|
|
||||||
v-loading="loading"
|
|
||||||
style="width: 100%"
|
|
||||||
:header-cell-style="{ background: '#EEEEEE' }"
|
|
||||||
:row-class-name="tableRowClassName"
|
|
||||||
@selection-change="handleSelectionChange"
|
|
||||||
>
|
|
||||||
<el-table-column type="selection" width="55" />
|
|
||||||
<el-table-column align="center" prop="thegrade" :label="'活动名称'" />
|
|
||||||
<el-table-column align="center" prop="creationTime" :label="'开始日期'" />
|
|
||||||
<el-table-column align="center" prop="creationTime" :label="'结束日期'" />
|
|
||||||
<el-table-column align="center" prop="thegrade" :label="'活动状态'" />
|
|
||||||
<el-table-column align="center" prop="creationTime" :label="'创建日期'" />
|
|
||||||
<el-table-column align="center" prop="" :label="'操作'" fixed="right" width="300">
|
|
||||||
<template slot-scope="scope">
|
|
||||||
<el-button
|
|
||||||
class="buttons"
|
|
||||||
type="text"
|
|
||||||
size="small"
|
|
||||||
style="color: #E70DEC"
|
|
||||||
@click="addrecep(scope.row)"
|
|
||||||
>
|
|
||||||
{{ '查看' }}
|
|
||||||
</el-button>
|
|
||||||
<el-button class="buttons" style="color: #48B2FD" type="text" size="small" @click="addrecep(scope.row)"> {{ '修改' }} </el-button>
|
|
||||||
<el-button class="buttons" type="text" size="small" style="color: #c73030" @click="delMenus(scope.row.pkId)">
|
|
||||||
{{ '删除' }}
|
|
||||||
</el-button>
|
|
||||||
</template>
|
|
||||||
</el-table-column>
|
|
||||||
</el-table>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<pagination
|
|
||||||
v-show="total > 0"
|
|
||||||
:total="total"
|
|
||||||
:page.sync="queryParams.pageNum"
|
|
||||||
:limit.sync="queryParams.pageSize"
|
|
||||||
@pagination="research"
|
|
||||||
/>
|
|
||||||
</div>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
import topBar from '@/components/topBar'
|
|
||||||
import { getbdmenuList, getPubenumsList, delMenu } from '@/api/system'
|
|
||||||
import { getgradeRanglist, getAwardsListChiose } from '@/api/level'
|
|
||||||
import * as api from '@/api/notice'
|
|
||||||
export default {
|
|
||||||
name: 'ReceptionRole',
|
|
||||||
components: {
|
|
||||||
topBar
|
|
||||||
},
|
|
||||||
data() {
|
|
||||||
return {
|
|
||||||
moren: 'superStudioGift',
|
|
||||||
topList: [
|
|
||||||
{
|
|
||||||
name: '超级工作室赠送',
|
|
||||||
path: 'superStudioGift'
|
|
||||||
}
|
|
||||||
],
|
|
||||||
defaultParams: {
|
|
||||||
label: 'label',
|
|
||||||
value: 'value',
|
|
||||||
children: 'enumList'
|
|
||||||
},
|
|
||||||
multipleSelection: [],
|
|
||||||
queryParams: {
|
|
||||||
pageNum: 1,
|
|
||||||
pageSize: 50,
|
|
||||||
gradeId: '', // 会员等级
|
|
||||||
awardsId: '', // 真实奖衔
|
|
||||||
menuId: '', // 菜单名称
|
|
||||||
creationTime: [] // 创建时间止
|
|
||||||
},
|
|
||||||
gradeRangList: [],
|
|
||||||
awardsList: [],
|
|
||||||
menuOptions: [],
|
|
||||||
tableData: [],
|
|
||||||
loading:false,
|
|
||||||
total: 0
|
|
||||||
}
|
|
||||||
},
|
|
||||||
created() {
|
|
||||||
this.research()
|
|
||||||
this.getgradeRanglist()
|
|
||||||
this.getAwardsListChiose()
|
|
||||||
this.getPubenumsList()
|
|
||||||
},
|
|
||||||
methods: {
|
|
||||||
// 菜单下拉选
|
|
||||||
delMenus(id) {
|
|
||||||
this.$confirm('确认删除该菜单吗?', '提示', {
|
|
||||||
confirmButtonText: '确定',
|
|
||||||
cancelButtonText: '取消',
|
|
||||||
type: 'warning'
|
|
||||||
}).then(() => {
|
|
||||||
delMenu(id).then((res) => {
|
|
||||||
this.$message({
|
|
||||||
message: res.msg,
|
|
||||||
type: 'success'
|
|
||||||
})
|
|
||||||
this.research()
|
|
||||||
})
|
|
||||||
})
|
|
||||||
},
|
|
||||||
changeTime(value) {
|
|
||||||
console.log('🌈', value)
|
|
||||||
},
|
|
||||||
addrecep(item) {
|
|
||||||
this.$router.push({
|
|
||||||
name: 'superStudioMessage',
|
|
||||||
query: { index: 1 }
|
|
||||||
})
|
|
||||||
},
|
|
||||||
handleChangeMunu(value) {
|
|
||||||
console.log('🌈', value[value.length - 1])
|
|
||||||
this.queryParams.menuId = value[value.length - 1]
|
|
||||||
},
|
|
||||||
// 菜单下拉选
|
|
||||||
getPubenumsList() {
|
|
||||||
getPubenumsList().then((res) => {
|
|
||||||
this.menuOptions = res.data
|
|
||||||
})
|
|
||||||
},
|
|
||||||
// 等级范围选择
|
|
||||||
getgradeRanglist() {
|
|
||||||
getgradeRanglist().then((res) => {
|
|
||||||
this.gradeRangList = res.data
|
|
||||||
})
|
|
||||||
},
|
|
||||||
// 奖衔下拉列表
|
|
||||||
getAwardsListChiose() {
|
|
||||||
getAwardsListChiose().then((res) => {
|
|
||||||
this.awardsList = res.rows
|
|
||||||
})
|
|
||||||
},
|
|
||||||
research() {
|
|
||||||
this.loading = true
|
|
||||||
// // 日期传入改为起止两个字段
|
|
||||||
// if ("" != this.queryParams.creationTime) {
|
|
||||||
// this.queryParams.creationTimeStart = this.queryParams.creationTime[0];
|
|
||||||
// this.queryParams.creationTimeEnd = this.queryParams.creationTime[1];
|
|
||||||
// }
|
|
||||||
|
|
||||||
getbdmenuList(this.queryParams).then((res) => {
|
|
||||||
res.rows.forEach((element) => {
|
|
||||||
element.alist = []
|
|
||||||
element.blist = []
|
|
||||||
element.clist = []
|
|
||||||
element.themenus = ''
|
|
||||||
element.theaward = ''
|
|
||||||
element.thegrade = ''
|
|
||||||
element.menuList.forEach((item) => {
|
|
||||||
element.alist.push(item.menuVal)
|
|
||||||
element.themenus = element.alist.join('/')
|
|
||||||
})
|
|
||||||
element.awardList.forEach((item) => {
|
|
||||||
element.blist.push(item.awardVal)
|
|
||||||
element.theaward = element.blist.join('/')
|
|
||||||
})
|
|
||||||
console.error()
|
|
||||||
if (element.gradeList) {
|
|
||||||
element.gradeList.forEach((item) => {
|
|
||||||
element.clist.push(item.gradeVal)
|
|
||||||
element.thegrade = element.clist.join('/')
|
|
||||||
})
|
|
||||||
}
|
|
||||||
})
|
|
||||||
|
|
||||||
this.tableData = res.rows
|
|
||||||
this.total = res.total
|
|
||||||
this.loading = false
|
|
||||||
})
|
|
||||||
},
|
|
||||||
reChongzhi() {
|
|
||||||
this.queryParams = {
|
|
||||||
pageNum: 1,
|
|
||||||
pageSize: 50,
|
|
||||||
creationTime: [] // 创建时间止
|
|
||||||
}
|
|
||||||
this.research()
|
|
||||||
},
|
|
||||||
|
|
||||||
handleSelectionChange(val) {
|
|
||||||
this.multipleSelection = val
|
|
||||||
},
|
|
||||||
// objectSpanMethod({ row, column, rowIndex, columnIndex }) {
|
|
||||||
// if (columnIndex === 0) {
|
|
||||||
// if (rowIndex % 2 === 0) {
|
|
||||||
// return {
|
|
||||||
// rowspan: 2,
|
|
||||||
// colspan: 1
|
|
||||||
// }
|
|
||||||
// } else {
|
|
||||||
// return {
|
|
||||||
// rowspan: 0,
|
|
||||||
// colspan: 0
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
// },
|
|
||||||
tableRowClassName({ row, rowIndex }) {
|
|
||||||
if (rowIndex % 2 == 1) {
|
|
||||||
return 'warning-row'
|
|
||||||
} else if (rowIndex % 2 == 0) {
|
|
||||||
return 'success-row'
|
|
||||||
}
|
|
||||||
return ''
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
|
||||||
::v-deep .buttons{
|
|
||||||
padding: 0 3px !important;
|
|
||||||
}
|
|
||||||
::v-deep .time {
|
|
||||||
width: 100%;
|
|
||||||
//width: 450px;
|
|
||||||
}
|
|
||||||
.button-style{
|
|
||||||
width: 209px;
|
|
||||||
height: 48px;
|
|
||||||
background: #CCCCCC;
|
|
||||||
border-radius: 5px 5px 5px 5px;
|
|
||||||
opacity: 1;
|
|
||||||
line-height: 48px;
|
|
||||||
padding: 0!important;
|
|
||||||
color: #fff;
|
|
||||||
font-size: 18px;
|
|
||||||
}
|
|
||||||
::v-deep .el-dialog__header{
|
|
||||||
border-bottom: 1px solid rgba(0,0,0,0.1);
|
|
||||||
}
|
|
||||||
.button-s{
|
|
||||||
padding: 0 2px!important;
|
|
||||||
}
|
|
||||||
::v-deep .el-button{
|
|
||||||
padding: 10px 20px;
|
|
||||||
}
|
|
||||||
::v-deep .el-date-editor .el-range__close-icon{
|
|
||||||
margin-top: -10px;
|
|
||||||
}
|
|
||||||
::v-deep .el-date-editor .el-range-separator{
|
|
||||||
margin-top: -10px;
|
|
||||||
}
|
|
||||||
::v-deep .el-date-editor .el-range__icon{
|
|
||||||
margin-top: -10px;
|
|
||||||
}
|
|
||||||
::v-deep .el-input__inner{
|
|
||||||
//height:28px;
|
|
||||||
//line-height: 28px;
|
|
||||||
}
|
|
||||||
::v-deep .el-form-item{
|
|
||||||
margin-bottom: 15px;
|
|
||||||
}
|
|
||||||
::v-deep .el-form-item__label{
|
|
||||||
color: #333;
|
|
||||||
font-weight: inherit;
|
|
||||||
}
|
|
||||||
::v-deep .el-row {
|
|
||||||
margin-top: 20px;
|
|
||||||
}
|
|
||||||
::v-deep .el-row {
|
|
||||||
margin-top: 20px;
|
|
||||||
}
|
|
||||||
::v-deep .el-table .warning-row {
|
|
||||||
background: #f9f9f9;
|
|
||||||
}
|
|
||||||
|
|
||||||
::v-deep .el-table .success-row {
|
|
||||||
background: #ffffff;
|
|
||||||
}
|
|
||||||
::v-deep .el-table thead {
|
|
||||||
color: #000000;
|
|
||||||
}
|
|
||||||
.openClose {
|
|
||||||
margin-top: 10px;
|
|
||||||
margin-right: 10px;
|
|
||||||
color: #666666;
|
|
||||||
text-align: center;
|
|
||||||
}
|
|
||||||
.page {
|
|
||||||
padding: 20px;
|
|
||||||
background: #f9f9f9;
|
|
||||||
font-size: 14px;
|
|
||||||
.thetopbox {
|
|
||||||
background: #ffffff;
|
|
||||||
border-radius: 8px;
|
|
||||||
.searchbox {
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
.searchtitle {
|
|
||||||
margin-right: 10px;
|
|
||||||
}
|
|
||||||
.searchbtn {
|
|
||||||
background: #08143f;
|
|
||||||
color: #ffffff;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
.main {
|
|
||||||
margin-top: 20px;
|
|
||||||
background: #ffffff;
|
|
||||||
border-radius: 8px;
|
|
||||||
box-shadow: 0px 2px 20px 0px rgba(238, 238, 238, 0.5);
|
|
||||||
|
|
||||||
.maintop {
|
|
||||||
display: flex;
|
|
||||||
padding: 10px 20px;
|
|
||||||
justify-content: space-between;
|
|
||||||
align-items: center;
|
|
||||||
.mainbtn {
|
|
||||||
.thebtn1 {
|
|
||||||
color: #ffffff;
|
|
||||||
background: rgba(67, 145, 253, 1);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
</style>
|
|
|
@ -1,338 +0,0 @@
|
||||||
<template>
|
|
||||||
<div class="page">
|
|
||||||
<topBar
|
|
||||||
v-if="topList.length > 0"
|
|
||||||
:top-list="topList"
|
|
||||||
:moren="moren"
|
|
||||||
/>
|
|
||||||
<div class="main">
|
|
||||||
<div class="main_title">
|
|
||||||
<div class="bluekuai" />
|
|
||||||
<div class="title_word">{{ '基本信息' }}</div>
|
|
||||||
</div>
|
|
||||||
<div class="main_content">
|
|
||||||
<el-form ref="form" :rules="rules" :model="form" label-width="120px">
|
|
||||||
<el-row>
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item :label="'活动名称'" prop="name">
|
|
||||||
<el-input v-model="form.name" clearable />
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
<el-row>
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item :label="'活动说明'" prop="name">
|
|
||||||
<editor
|
|
||||||
ref="sptwEditor"
|
|
||||||
v-model="form.content"
|
|
||||||
:min-height="196"
|
|
||||||
:upload-url="uploadImgUrl"
|
|
||||||
/>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
<el-row>
|
|
||||||
<el-form-item :label="'活动封面'" prop="name">
|
|
||||||
<el-upload
|
|
||||||
:headers="headers"
|
|
||||||
:class="{ uploadIconOne: showImg, uploadIcon: noneUploadImg }"
|
|
||||||
:action="uploadImgUrl"
|
|
||||||
:on-success="handlePictureSuccess"
|
|
||||||
:on-change="uploadImgChange"
|
|
||||||
list-type="picture-card"
|
|
||||||
:limit="1"
|
|
||||||
:on-remove="handleRemove"
|
|
||||||
>
|
|
||||||
<i class="el-icon-plus" />
|
|
||||||
<div class="sizes">{{ '大小为5M' }}</div>
|
|
||||||
</el-upload>
|
|
||||||
</el-form-item>
|
|
||||||
</el-row>
|
|
||||||
<el-row>
|
|
||||||
<el-form-item :label="'目标用户群体'" prop="name" style="margin-bottom: 0" />
|
|
||||||
</el-row>
|
|
||||||
<el-row>
|
|
||||||
<el-form-item label="" prop="name" style="margin-bottom: 0">
|
|
||||||
<div style="display: flex">
|
|
||||||
<el-checkbox
|
|
||||||
v-model="checkAll"
|
|
||||||
:label="'注册等级'"
|
|
||||||
@change="handleCheckAllChangeSales"
|
|
||||||
>{{ '注册等级' }}</el-checkbox>
|
|
||||||
<el-checkbox-group v-model="bushForm" style="margin-left: 30px" @change="handleCheckedColumnChangeSales">
|
|
||||||
<el-checkbox
|
|
||||||
v-for="(item,index) in awardsList"
|
|
||||||
:key="index"
|
|
||||||
:label="item.pkId"
|
|
||||||
>{{ item.awardsName }}</el-checkbox>
|
|
||||||
</el-checkbox-group>
|
|
||||||
</div>
|
|
||||||
</el-form-item>
|
|
||||||
</el-row>
|
|
||||||
<el-row>
|
|
||||||
<el-form-item label="" prop="name" style="margin-bottom: 0">
|
|
||||||
<div style="display: flex">
|
|
||||||
<el-checkbox
|
|
||||||
v-model="checkAll1"
|
|
||||||
:label="'荣誉奖衔'"
|
|
||||||
@change="handleCheckAllChangeSales1"
|
|
||||||
>{{ '荣誉奖衔' }}</el-checkbox>
|
|
||||||
<el-checkbox-group v-model="bushForm1" style="margin-left: 30px" @change="handleCheckedColumnChangeSales1">
|
|
||||||
<el-checkbox
|
|
||||||
v-for="item in gradeRangList"
|
|
||||||
:key="item.pkId"
|
|
||||||
:label="item.pkId"
|
|
||||||
>{{ item.gradeName }}</el-checkbox>
|
|
||||||
</el-checkbox-group>
|
|
||||||
</div>
|
|
||||||
</el-form-item>
|
|
||||||
</el-row>
|
|
||||||
<el-row>
|
|
||||||
<el-form-item label="" prop="name">
|
|
||||||
<div>
|
|
||||||
<el-checkbox
|
|
||||||
:label="'权限中心'"
|
|
||||||
>{{ '权限中心' }}</el-checkbox>
|
|
||||||
<el-checkbox
|
|
||||||
v-for="item in awardsList"
|
|
||||||
:key="item.pkId"
|
|
||||||
v-model="item.changed"
|
|
||||||
:label="item.pkId"
|
|
||||||
>{{ item.awardsName }}</el-checkbox>
|
|
||||||
</div>
|
|
||||||
</el-form-item>
|
|
||||||
</el-row>
|
|
||||||
<el-row>
|
|
||||||
<el-form-item :label="'活动时间'" prop="name">
|
|
||||||
<el-date-picker
|
|
||||||
v-model="form.creatTime"
|
|
||||||
type="datetimerange"
|
|
||||||
range-separator="——"
|
|
||||||
:start-placeholder="'开始日期'"
|
|
||||||
:end-placeholder="'结束日期'"
|
|
||||||
value-format="yyyy-MM-dd HH:mm:ss"
|
|
||||||
:unlink-panels="true"
|
|
||||||
/>
|
|
||||||
</el-form-item>
|
|
||||||
</el-row>
|
|
||||||
<el-row>
|
|
||||||
<el-form-item :label="'展示时间'" prop="name">
|
|
||||||
<el-date-picker
|
|
||||||
v-model="form.creatTime"
|
|
||||||
type="datetimerange"
|
|
||||||
range-separator="——"
|
|
||||||
:start-placeholder="'开始日期'"
|
|
||||||
:end-placeholder="'结束日期'"
|
|
||||||
value-format="yyyy-MM-dd HH:mm:ss"
|
|
||||||
:unlink-panels="true"
|
|
||||||
/>
|
|
||||||
</el-form-item>
|
|
||||||
</el-row>
|
|
||||||
</el-form>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="footer">
|
|
||||||
<div style="margin: 0 auto">
|
|
||||||
<el-button
|
|
||||||
class="thebtn"
|
|
||||||
style="background: #ccc;color: #fff"
|
|
||||||
@click="cancel"
|
|
||||||
> {{ '取消' }}</el-button>
|
|
||||||
<el-button
|
|
||||||
type="primary"
|
|
||||||
class="thebtn"
|
|
||||||
style="margin-left: 30px;color: #48B2FD;color: #fff"
|
|
||||||
> {{ '确认' }}</el-button>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
import Editor from '@/components/Editor'
|
|
||||||
import topBar from '@/components/topBar'
|
|
||||||
import { getzccsList, saveYfpz } from '@/api/system'
|
|
||||||
import { getAwardsListChiose, getgradeRanglist } from '@/api/level'
|
|
||||||
import { getToken } from '@/utils/auth'
|
|
||||||
export default {
|
|
||||||
name: 'Xtcs',
|
|
||||||
components: {
|
|
||||||
topBar,
|
|
||||||
Editor
|
|
||||||
},
|
|
||||||
data() {
|
|
||||||
return {
|
|
||||||
checkedKeyLists: [], // key的list数据
|
|
||||||
openDiag: false,
|
|
||||||
showImg: true, // 默认展示
|
|
||||||
noneUploadImg: false, //
|
|
||||||
uploadImgUrl: process.env.VUE_APP_BASE_API + '/system/upload',
|
|
||||||
headers: {
|
|
||||||
Authorization: getToken()
|
|
||||||
},
|
|
||||||
moren: 'superStudioMessage',
|
|
||||||
topList: [
|
|
||||||
{
|
|
||||||
name: '基本信息',
|
|
||||||
path: 'superStudioMessage'
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: '规则设置',
|
|
||||||
path: 'superStudioRule'
|
|
||||||
}
|
|
||||||
],
|
|
||||||
rules: {
|
|
||||||
bankCode: [
|
|
||||||
{ required: true, message: '请选择活动名称', trigger: 'blur' }
|
|
||||||
]
|
|
||||||
},
|
|
||||||
form: {},
|
|
||||||
awardsList: [],
|
|
||||||
gradeRangList: [],
|
|
||||||
checkAll: false,
|
|
||||||
isALL: false, // 全选框是否在勾选状态
|
|
||||||
bushForm: [], // 选中的注册等级数据
|
|
||||||
checkAll1: false,
|
|
||||||
isALL1: false, // 全选框是否在勾选状态
|
|
||||||
bushForm1: [] // 选中的荣誉奖衔数据
|
|
||||||
}
|
|
||||||
},
|
|
||||||
created() {
|
|
||||||
this.getData()
|
|
||||||
},
|
|
||||||
methods: {
|
|
||||||
// 全选
|
|
||||||
handleCheckAllChangeSales1(val) {
|
|
||||||
const checkedsItem = val ? this.gradeRangList : []
|
|
||||||
if (checkedsItem.length > 0) {
|
|
||||||
checkedsItem.forEach((item) => {
|
|
||||||
this.bushForm1.push(item.pkId)
|
|
||||||
})
|
|
||||||
console.error(this.bushForm1)
|
|
||||||
} else {
|
|
||||||
this.bushForm1 = []
|
|
||||||
}
|
|
||||||
this.isALL = false
|
|
||||||
},
|
|
||||||
handleCheckedColumnChangeSales1(value) {
|
|
||||||
const checkedCount = value.length
|
|
||||||
this.checkAll1 = checkedCount === this.gradeRangList.length
|
|
||||||
this.isALL =
|
|
||||||
checkedCount > 0 && checkedCount < this.gradeRangList.length
|
|
||||||
},
|
|
||||||
// 全选
|
|
||||||
handleCheckAllChangeSales(val) {
|
|
||||||
const checkedsItem = val ? this.awardsList : []
|
|
||||||
if (checkedsItem.length > 0) {
|
|
||||||
checkedsItem.forEach((item) => {
|
|
||||||
this.bushForm.push(item.pkId)
|
|
||||||
})
|
|
||||||
console.error(this.bushForm)
|
|
||||||
} else {
|
|
||||||
this.bushForm = []
|
|
||||||
}
|
|
||||||
this.isALL = false
|
|
||||||
},
|
|
||||||
handleCheckedColumnChangeSales(value) {
|
|
||||||
const checkedCount = value.length
|
|
||||||
this.checkAll = checkedCount === this.awardsList.length
|
|
||||||
this.isALL =
|
|
||||||
checkedCount > 0 && checkedCount < this.awardsList.length
|
|
||||||
},
|
|
||||||
uploadImgChange(file, fileList) {
|
|
||||||
this.noneUploadImg = fileList.length > 0
|
|
||||||
this.$refs.form.clearValidate('cover')
|
|
||||||
},
|
|
||||||
// 图片上传成功后的回调
|
|
||||||
handlePictureSuccess(res, file) {
|
|
||||||
this.form.cover = res.data.url
|
|
||||||
},
|
|
||||||
// 图片上传删除
|
|
||||||
handleRemove(file, fileList) {
|
|
||||||
this.form.cover = ''
|
|
||||||
this.noneUploadImg = fileList.length > 0
|
|
||||||
},
|
|
||||||
cancel() {
|
|
||||||
this.$router.push({
|
|
||||||
name: 'superStudioGift'
|
|
||||||
})
|
|
||||||
},
|
|
||||||
getData() {
|
|
||||||
// 荣誉奖衔下拉选
|
|
||||||
getAwardsListChiose().then((res) => {
|
|
||||||
this.awardsList = res.rows
|
|
||||||
})
|
|
||||||
// 注册等级下拉
|
|
||||||
getgradeRanglist().then((res) => {
|
|
||||||
this.gradeRangList = res.data
|
|
||||||
})
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
|
||||||
::v-deep .el-icon-plus{
|
|
||||||
color: #4391FD;
|
|
||||||
}
|
|
||||||
.sizes{
|
|
||||||
position: absolute;
|
|
||||||
top: 0;
|
|
||||||
color: #999;
|
|
||||||
font-size: 10px;
|
|
||||||
margin:30px 0 0 20px;
|
|
||||||
}
|
|
||||||
::v-deep .el-upload{
|
|
||||||
width: 88px;
|
|
||||||
height: 88px;
|
|
||||||
line-height: 88px;
|
|
||||||
position: relative;
|
|
||||||
}
|
|
||||||
::v-deep .el-select{
|
|
||||||
width: 100%;
|
|
||||||
}
|
|
||||||
::v-deep .el-textarea__inner{
|
|
||||||
height: 84px;
|
|
||||||
}
|
|
||||||
.page {
|
|
||||||
padding: 20px;
|
|
||||||
background: #f9f9f9;
|
|
||||||
font-size: 14px;
|
|
||||||
.main {
|
|
||||||
background: #ffffff;
|
|
||||||
border-radius: 8px;
|
|
||||||
box-shadow: 0px 2px 20px 0px rgba(238, 238, 238, 0.5);
|
|
||||||
.main_title {
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
padding: 10px 0;
|
|
||||||
border-bottom: 1px solid rgba(0, 0, 0, 0.1);
|
|
||||||
.bluekuai {
|
|
||||||
width: 5px;
|
|
||||||
height: 19px;
|
|
||||||
background: #4391fd;
|
|
||||||
margin-right: 20px;
|
|
||||||
}
|
|
||||||
.title_word {
|
|
||||||
font-size: 14px;
|
|
||||||
font-family: MicrosoftYaHei-Bold, MicrosoftYaHei;
|
|
||||||
font-weight: bold;
|
|
||||||
color: #333333;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
.main_content {
|
|
||||||
padding: 20px 25px;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
.footer {
|
|
||||||
display: flex;
|
|
||||||
justify-content: center;
|
|
||||||
align-items: center;
|
|
||||||
padding: 15px 0;
|
|
||||||
.thebtn {
|
|
||||||
width: 120px;
|
|
||||||
height: 38px;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
</style>
|
|
|
@ -1,488 +0,0 @@
|
||||||
<template>
|
|
||||||
<div class="page">
|
|
||||||
<topBar
|
|
||||||
v-if="topList.length > 0"
|
|
||||||
:top-list="topList"
|
|
||||||
:moren="moren"
|
|
||||||
/>
|
|
||||||
<div class="main">
|
|
||||||
<div class="main_title">
|
|
||||||
<div class="bluekuai" />
|
|
||||||
<div class="title_word">{{'规则设置'}}</div>
|
|
||||||
</div>
|
|
||||||
<div class="main_content">
|
|
||||||
<div class="main_top">
|
|
||||||
<div class="add">{{'添加'}}</div>
|
|
||||||
<div class="buttonStyle lefts">{{'订单金额'}}({{isLocals()}})</div>
|
|
||||||
<div class="buttonStyle lefts" style="margin-left: 33px!important;">{{'订单业绩'}}({{isLocals()}})</div>
|
|
||||||
<el-input
|
|
||||||
v-model="form"
|
|
||||||
clearable
|
|
||||||
:place-holder="'请输入'"
|
|
||||||
class="input-with-select buttonStyle border-none input-styles1"
|
|
||||||
/>
|
|
||||||
<div class="buttonStyle lefts" style="margin-left: 40px!important;">{{'产品规格'}}</div>
|
|
||||||
<!-- <div class="buttonStyle border-none lefts ">-->
|
|
||||||
<el-input
|
|
||||||
v-model="form"
|
|
||||||
clearable
|
|
||||||
:place-holder="'请输入'"
|
|
||||||
class="input-with-select buttonStyle border-none input-styles"
|
|
||||||
/>
|
|
||||||
<!-- </div>-->
|
|
||||||
<el-button class="searchbtn" style="margin-left:70px">{{'批量操作'}}</el-button>
|
|
||||||
<el-button class="searchbtn" style="border: 1px solid #CCCCCC;color: #666;background-color: #fff"> {{ '重置' }}</el-button>
|
|
||||||
</div>
|
|
||||||
<div class="main_list">
|
|
||||||
<div class="main_left" />
|
|
||||||
<div class="main_center">
|
|
||||||
<div style="display: flex;height: 45px" class="bottoms">
|
|
||||||
<div class="main_divs">{{ '报单金额基数' }}({{isLocals()}})</div>
|
|
||||||
<div class="main_divs">{{ '报单业绩基数' }}({{isLocals()}})</div>
|
|
||||||
<div class="main_divs ">{{'赠送产品'}}</div>
|
|
||||||
<div class="main_divs">{{'产品规格'}}</div>
|
|
||||||
<div class="main_divs" style="padding-right: 30px;width: 240px">{{'赠送产品'}}</div>
|
|
||||||
</div>
|
|
||||||
<div>
|
|
||||||
<div v-for="(item,index) in 3" style="display: flex;">
|
|
||||||
<div class="main_divs height_s">
|
|
||||||
<div class="buttonStyle styles heights" style="border: none">
|
|
||||||
<el-input
|
|
||||||
v-model="form"
|
|
||||||
clearable
|
|
||||||
class="input-with-select"
|
|
||||||
/>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="main_divs height_s">
|
|
||||||
<div class="buttonStyle styles heights" style="border: none">
|
|
||||||
<el-input
|
|
||||||
v-model="form"
|
|
||||||
clearable
|
|
||||||
class="input-with-select"
|
|
||||||
/>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="bottoms">
|
|
||||||
<div v-for="(item,index) in 2" style="display: flex">
|
|
||||||
<div class="main_divs height_s rights">
|
|
||||||
<div class="buttonStyle styles heights" style="border: none">
|
|
||||||
<el-input
|
|
||||||
v-model="form"
|
|
||||||
clearable
|
|
||||||
class="input-with-select"
|
|
||||||
/>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="main_divs height_s rights">
|
|
||||||
<div class="buttonStyle styles heights" style="border: none">
|
|
||||||
<el-input
|
|
||||||
v-model="form"
|
|
||||||
clearable
|
|
||||||
class="input-with-select"
|
|
||||||
/>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="main_divs height_s div_style" style="padding-right: 30px;width: 240px;border-bottom: none">
|
|
||||||
<div class="buttonStyle styles heights" style="border: none">
|
|
||||||
<el-input
|
|
||||||
v-model="form"
|
|
||||||
clearable
|
|
||||||
class="input-with-select"
|
|
||||||
/>
|
|
||||||
</div>
|
|
||||||
<div v-if="index==1" class="add-icon">
|
|
||||||
<img class="pic-404__parent" src="@/assets/images/add.png">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="main_right" />
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="footer">
|
|
||||||
<div style="margin: 0 auto">
|
|
||||||
<el-button
|
|
||||||
class="thebtn"
|
|
||||||
style="background: #ccc;color: #fff"
|
|
||||||
@click="cancel"
|
|
||||||
> {{ '取消' }}</el-button>
|
|
||||||
<el-button
|
|
||||||
type="primary"
|
|
||||||
class="thebtn"
|
|
||||||
style="margin-left: 30px;color: #48B2FD;color: #fff"
|
|
||||||
> {{ '确认' }}</el-button>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<el-dialog
|
|
||||||
class="dialog_content"
|
|
||||||
:title="'选择产品'"
|
|
||||||
:visible.sync="updateShow"
|
|
||||||
width="24%"
|
|
||||||
center
|
|
||||||
:before-close="handleClose1"
|
|
||||||
>
|
|
||||||
|
|
||||||
<div class="search-input-content">
|
|
||||||
<el-input
|
|
||||||
v-model="form"
|
|
||||||
style=""
|
|
||||||
placeholder="可查询SPA物料号/产品名称"
|
|
||||||
size="small"
|
|
||||||
class="search-input"
|
|
||||||
@keyup.enter.native="handleQuery"
|
|
||||||
/>
|
|
||||||
<i class="el-icon-search search-icon" @click="handleQuery" />
|
|
||||||
</div>
|
|
||||||
<div class="goods-content">
|
|
||||||
<div v-for="item in 3" class="goods-lists">
|
|
||||||
<div class="goods-name">产品:<span style="margin-left: 10px">苹果14</span></div>
|
|
||||||
<div class="goods-name rules">
|
|
||||||
<div class="texts">规格</div>
|
|
||||||
<div class="flexStyle">
|
|
||||||
<template v-for="item in 3">
|
|
||||||
<div class="rule-name">
|
|
||||||
iPhone 250 Pro【绿色】256G
|
|
||||||
</div>
|
|
||||||
<div class="count">
|
|
||||||
<div class="add-icons">
|
|
||||||
<img src="@/assets/images/add-icon.png">
|
|
||||||
</div>
|
|
||||||
<div class="sums">
|
|
||||||
<input class="input_s" placeholder="">
|
|
||||||
</div>
|
|
||||||
<div class="add-icons">
|
|
||||||
<img src="@/assets/images/del-icon.png">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</template>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="flex-s">
|
|
||||||
<el-button class="thebtn2"> {{ '取消' }}</el-button>
|
|
||||||
<el-button
|
|
||||||
class="thebtn2"
|
|
||||||
style="background-color: #48B2FD"
|
|
||||||
@click="submit"
|
|
||||||
> {{ '确认' }}</el-button>
|
|
||||||
</div>
|
|
||||||
</el-dialog>
|
|
||||||
</div>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
import topBar from '@/components/topBar'
|
|
||||||
import { getzccsList, saveYfpz } from '@/api/system'
|
|
||||||
import {isLocals} from "../../../utils/numberToCurrency";
|
|
||||||
export default {
|
|
||||||
name: 'Xtcs',
|
|
||||||
components: {
|
|
||||||
topBar
|
|
||||||
},
|
|
||||||
data() {
|
|
||||||
return {
|
|
||||||
updateShow: false,
|
|
||||||
moren: 'superStudioRule',
|
|
||||||
topList: [
|
|
||||||
{
|
|
||||||
name: '基本信息',
|
|
||||||
path: 'superStudioMessage'
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: '规则设置',
|
|
||||||
path: 'superStudioRule'
|
|
||||||
}
|
|
||||||
],
|
|
||||||
form: {},
|
|
||||||
timeList: [],
|
|
||||||
list: [],
|
|
||||||
ruleList: { 'name': 1 },
|
|
||||||
ruleList1: {}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
created() {
|
|
||||||
|
|
||||||
},
|
|
||||||
methods: {
|
|
||||||
isLocals,
|
|
||||||
handleQuery() {
|
|
||||||
|
|
||||||
},
|
|
||||||
cancel() {
|
|
||||||
this.$router.push({
|
|
||||||
name: 'superStudioGift'
|
|
||||||
})
|
|
||||||
},
|
|
||||||
handleClose1() {
|
|
||||||
this.updateShow = false
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
|
||||||
::v-deep .input-styles1 .el-input__inner{
|
|
||||||
margin-left: 12px;
|
|
||||||
width: 166px;
|
|
||||||
height: 37px;
|
|
||||||
}
|
|
||||||
.input-styles{
|
|
||||||
|
|
||||||
}
|
|
||||||
::v-deep .input-styles .el-input__inner{
|
|
||||||
margin-left: 16px;
|
|
||||||
width: 166px;
|
|
||||||
height: 37px;
|
|
||||||
}
|
|
||||||
.lefts{
|
|
||||||
//width: 200px!important;
|
|
||||||
margin-left:45px !important;
|
|
||||||
}
|
|
||||||
.input_s{
|
|
||||||
width: 40px;
|
|
||||||
height: 20px;
|
|
||||||
background: #FFFFFF;
|
|
||||||
border-radius: 3px 3px 3px 3px;
|
|
||||||
border: 1px solid rgb(0,0,0,0.1);
|
|
||||||
margin: 0 3px;
|
|
||||||
text-align: center;
|
|
||||||
}
|
|
||||||
.flexStyle{
|
|
||||||
display: flex;
|
|
||||||
flex-wrap: wrap;
|
|
||||||
}
|
|
||||||
.add-icons img{
|
|
||||||
width: 20px;
|
|
||||||
height: 20px;
|
|
||||||
}
|
|
||||||
.count{
|
|
||||||
display: flex;
|
|
||||||
line-height: 20px;
|
|
||||||
margin: 5px 0 0 20px;
|
|
||||||
}
|
|
||||||
.texts{
|
|
||||||
width:80px;
|
|
||||||
margin-top: 10px
|
|
||||||
}
|
|
||||||
::v-deep .el-dialog{
|
|
||||||
height: 600px;
|
|
||||||
overflow-y: auto;
|
|
||||||
}
|
|
||||||
.dialog_content{
|
|
||||||
|
|
||||||
}
|
|
||||||
.rule-name{
|
|
||||||
background-color: #EDEDED;
|
|
||||||
margin-bottom: 10px;
|
|
||||||
width:240px;
|
|
||||||
padding: 10px;
|
|
||||||
margin-left: 10px;
|
|
||||||
}
|
|
||||||
.rules{
|
|
||||||
display: flex;
|
|
||||||
margin-top:10px;
|
|
||||||
}
|
|
||||||
.goods-lists{
|
|
||||||
padding-top: 30px;
|
|
||||||
}
|
|
||||||
.goods-name{
|
|
||||||
color: #333;
|
|
||||||
font-size: 14px;
|
|
||||||
font-weight: 500;
|
|
||||||
}
|
|
||||||
.goods-content{
|
|
||||||
padding-bottom: 100px;
|
|
||||||
}
|
|
||||||
::v-deep .el-dialog__body{
|
|
||||||
padding: 30px 20px 10px 20px;
|
|
||||||
}
|
|
||||||
.thebtn2{
|
|
||||||
background-color: #ccc;
|
|
||||||
color: #fff;
|
|
||||||
padding: 10px 20px;
|
|
||||||
}
|
|
||||||
.flex-s{
|
|
||||||
display: flex;
|
|
||||||
justify-content: center;
|
|
||||||
align-items: center;
|
|
||||||
width: 100%;
|
|
||||||
margin: 20px 0 0 0;
|
|
||||||
}
|
|
||||||
::v-deep .el-icon-search{
|
|
||||||
position: absolute;
|
|
||||||
left: 10px;
|
|
||||||
top: 10px;
|
|
||||||
}
|
|
||||||
.search-input .el-input__inner{
|
|
||||||
//padding-left: 30px;
|
|
||||||
//width: 200px;
|
|
||||||
}
|
|
||||||
::v-deep .search-input-content .el-input__inner{
|
|
||||||
padding-left: 30px;
|
|
||||||
//width: 450px;
|
|
||||||
}
|
|
||||||
.search-input-content{
|
|
||||||
display: flex;
|
|
||||||
position: relative;
|
|
||||||
}
|
|
||||||
::v-deep .el-dialog__title{
|
|
||||||
font-size: 24px;
|
|
||||||
color: #333;
|
|
||||||
font-weight: bold;
|
|
||||||
}
|
|
||||||
::v-deep .el-dialog__header{
|
|
||||||
border-bottom: 1px solid rgba(0,0,0,0.1);
|
|
||||||
}
|
|
||||||
.bottoms{
|
|
||||||
border-bottom: 1px solid rgba(0,0,0,0.5);
|
|
||||||
}
|
|
||||||
.rights{
|
|
||||||
border-right: none!important;
|
|
||||||
border-bottom: none!important;
|
|
||||||
}
|
|
||||||
.add-icon img{
|
|
||||||
width: 20px;
|
|
||||||
height: 20px;
|
|
||||||
position: absolute;
|
|
||||||
top: 0;
|
|
||||||
right: 0;
|
|
||||||
margin: 20px 20px 0 0;
|
|
||||||
}
|
|
||||||
.div_style{
|
|
||||||
position: relative;
|
|
||||||
}
|
|
||||||
.height_s{
|
|
||||||
height: auto!important;
|
|
||||||
border-right: 1px solid rgba(0,0,0,0.5);
|
|
||||||
}
|
|
||||||
.heights{
|
|
||||||
//width: 150px !important;
|
|
||||||
margin: 10px 0
|
|
||||||
}
|
|
||||||
.border-none{
|
|
||||||
border: none!important;
|
|
||||||
}
|
|
||||||
.border-none{
|
|
||||||
border-right: none!important;
|
|
||||||
//width: 180px !important;
|
|
||||||
}
|
|
||||||
.buttonStyle{
|
|
||||||
width: 170px;
|
|
||||||
height: 37px;
|
|
||||||
border-radius:4px;
|
|
||||||
opacity: 1;
|
|
||||||
line-height: 37px;
|
|
||||||
text-align: center;
|
|
||||||
color: #999999;
|
|
||||||
font-size: 14px;
|
|
||||||
border: 1px solid #CCCCCC;
|
|
||||||
margin-left: 20px;
|
|
||||||
}
|
|
||||||
.main_list{
|
|
||||||
display: flex;
|
|
||||||
//padding: 30px 0;
|
|
||||||
//justify-content: space-between;
|
|
||||||
//height: 200px;
|
|
||||||
.main_center{
|
|
||||||
//display: flex;
|
|
||||||
//flex-wrap: wrap;
|
|
||||||
.main_divs{
|
|
||||||
width: 200px;
|
|
||||||
height: 45px;
|
|
||||||
text-align: center;
|
|
||||||
line-height: 45px;
|
|
||||||
color: #333;
|
|
||||||
font-size: 14px;
|
|
||||||
border-bottom: 1px solid rgba(0,0,0,0.5);
|
|
||||||
border-right: 1px solid rgba(0,0,0,0.5);
|
|
||||||
font-weight: 600;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
.main_left{
|
|
||||||
width:280px;
|
|
||||||
//padding: 10px 0;
|
|
||||||
border-right: 1px solid rgba(0,0,0,0.5);
|
|
||||||
//height: 100%;
|
|
||||||
}
|
|
||||||
.main_right{
|
|
||||||
width: 550px;
|
|
||||||
//padding: 10px 0;
|
|
||||||
//border-left: 1px solid rgba(0,0,0,0.5);
|
|
||||||
//height: 100%;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
.searchbtn{
|
|
||||||
height: 37px;
|
|
||||||
background-color: #4391FD;
|
|
||||||
color: #fff;
|
|
||||||
margin-left: 20px;
|
|
||||||
}
|
|
||||||
.main_content {
|
|
||||||
padding: 10px 0 0 0 ;
|
|
||||||
border: 1px solid rgba(0,0,0,0.5);
|
|
||||||
width: 1350px;
|
|
||||||
margin: 20px;
|
|
||||||
.main_top{
|
|
||||||
//height: 58px;
|
|
||||||
display: flex;
|
|
||||||
border-bottom: 1px solid rgba(0,0,0,0.5);
|
|
||||||
padding: 0px 10px 10px 10px;
|
|
||||||
.add{
|
|
||||||
width: 68px;
|
|
||||||
height: 37px;
|
|
||||||
background: #4391FD;
|
|
||||||
border-radius: 4px;
|
|
||||||
color: #fff;
|
|
||||||
font-size: 14px;
|
|
||||||
text-align: center;
|
|
||||||
line-height: 37px;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.page {
|
|
||||||
padding: 20px;
|
|
||||||
background: #f9f9f9;
|
|
||||||
font-size: 14px;
|
|
||||||
.main {
|
|
||||||
background: #ffffff;
|
|
||||||
border-radius: 8px;
|
|
||||||
box-shadow: 0px 2px 20px 0px rgba(238, 238, 238, 0.5);
|
|
||||||
.main_title {
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
padding: 10px 0;
|
|
||||||
border-bottom: 1px solid rgba(0, 0, 0, 0.1);
|
|
||||||
.bluekuai {
|
|
||||||
width: 5px;
|
|
||||||
height: 19px;
|
|
||||||
background: #4391fd;
|
|
||||||
margin-right: 20px;
|
|
||||||
}
|
|
||||||
.title_word {
|
|
||||||
font-size: 14px;
|
|
||||||
font-family: MicrosoftYaHei-Bold, MicrosoftYaHei;
|
|
||||||
font-weight: bold;
|
|
||||||
color: #333333;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
.footer {
|
|
||||||
display: flex;
|
|
||||||
justify-content: center;
|
|
||||||
align-items: center;
|
|
||||||
padding: 15px 0;
|
|
||||||
.thebtn {
|
|
||||||
width: 120px;
|
|
||||||
height: 38px;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
</style>
|
|
Loading…
Reference in New Issue