| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787 |
- <?php
- use common\helpers\ComponentHelper;
- ComponentHelper::loadComponentView('com-dialog-select');
- ComponentHelper::loadComponentView('com-image');
- ?>
- <div id="app" v-cloak>
- <el-card class="box-card" shadow="never">
- <el-tabs v-model="activeName">
- <el-tab-pane label="数字大屏" name="index">
- <el-form :model="ruleForm" :rules="rules" ref="ruleForm" size="mini" label-width="150px" class="demo-ruleForm">
- <el-card class="edit-card" shadow="never">
- <div slot="header" class="clearfix">
- <div class="card-title">大数据平台数据设置</div>
- </div>
- <el-form-item label="是否开启虚拟数据" prop="status">
- <el-switch v-model="ruleForm.status" active-color="#03C5FF" :active-value='1' :inactive-value='0'></el-switch>
- </el-form-item>
- </el-card>
- <el-card class="edit-card" shadow="never">
- <div slot="header" class="clearfix">
- <div class="card-title">大屏设置</div>
- </div>
- <el-form-item label="总交易额设置" prop="total_money">
- <el-input placeholder="请输入金额" class="width-150" v-model="ruleForm.total_money" onInput="value=toNumber(value,2)">
- <template slot="append">元</template>
- </el-input>
- </el-form-item>
- <el-form-item label="今日收益" prop="today_money">
- <el-input v-model="ruleForm.today_money" class="width-150" onInput="value=toNumber(value,2)">
- <template slot="append">元</template>
- </el-input>
- </el-form-item>
- <el-form-item label="今日新增用户" prop="today_register_num">
- <el-input v-model="ruleForm.today_register_num" class="width-150" onkeyup="value=toNumber(value,0)">
- <template slot="append">人</template>
- </el-input>
- </el-form-item>
- <el-form-item label="总用户数量" prop="user_num">
- <el-input v-model="ruleForm.user_num" class="width-150" onkeyup="value=toNumber(value,0)">
- <template slot="append">人</template>
- </el-input>
- </el-form-item>
- </el-card>
- <!-- -->
- <el-card class="edit-card" shadow="never">
- <div slot="header" class="clearfix">
- <div class="card-title">数据地图区域设置</div>
- </div>
- <el-form-item label="地区成交金额设置" prop="total_price">
- <el-select v-model="value" class="selectBox" @change="regionChange(value)" clearable filterable placeholder="请选择" style="width: 150px;" >
- <el-option v-for="(item,index) in options" :key="index" :value="item.id" :label="item.name"></el-option>
- </el-select>
- <el-input v-model="addRegionNum" class="width-150"><template slot="append">元</template></el-input>
- <el-button type="primary" size="mini" @click="addProvince">确认添加</el-button>
- <div class="flex" style="flex-wrap: wrap; margin-top: 10px;">
- <el-tag closable v-for="(item, index) in ruleForm.province_data" @close="closeTag(index)" :key="index" class="tag">{{item.name}} {{item.num}}</el-tag>
- </div>
- </el-form-item>
- </el-card>
- <!-- -->
- <el-card class="edit-card" shadow="never">
- <div slot="header" class="clearfix">
- <div class="card-title">用户数据统计</div>
- </div>
- <el-form-item label="今日访客数设置" prop="today_visitor_num">
- <el-input v-model="ruleForm.today_visitor_num" class="width-150" onkeyup="value=toNumber(value,0)">
- <template slot="append">人</template>
- </el-input>
- </el-form-item>
- <el-form-item label="昨日访客数设置" prop="yesterday_visitor_num">
- <el-input v-model="ruleForm.yesterday_visitor_num" class="width-150" onkeyup="value=toNumber(value,0)">
- <template slot="append">人</template>
- </el-input>
- </el-form-item>
- <el-form-item label="今日浏览量设置" prop="today_browse_num">
- <el-input v-model="ruleForm.today_browse_num" class="width-150" onkeyup="value=toNumber(value,0)">
- <template slot="append">人</template>
- </el-input>
- </el-form-item>
- <el-form-item label="昨日浏览量设置" prop="yesterday_browse_num">
- <el-input v-model="ruleForm.yesterday_browse_num" class="width-150" onkeyup="value=toNumber(value,0)">
- <template slot="append">人</template>
- </el-input>
- </el-form-item>
- <el-form-item label="今日会员等级人数" prop="total_price">
- <div class="flex flex-y-center common_box" v-for="(item,index) in ruleForm.today_upgrade_level" :key="index" style="margin-bottom:14px">
- <div class="common_unit_style" style="float: left; min-width: 80px;">{{item.name}}</div>
- <el-input v-model="item.num" class="width-150"><template slot="append">人</template></el-input>
- </div>
- </el-form-item>
- <el-form-item label="昨日会员等级人数" prop="total_price">
- <div class="flex flex-y-center common_box" v-for="(item,index) in ruleForm.yesterday_upgrade_level" :key="index" style="margin-bottom:14px">
- <div class="common_unit_style common_unit_style_left" style="float: left; min-width: 80px;">{{item.name}}</div>
- <el-input v-model="item.num" class="width-150"><template slot="append">人</template></el-input>
- </div>
- </el-form-item>
- </el-card>
- <el-card class="edit-card" shadow="never">
- <div slot="header" class="clearfix">
- <div class="card-title">转化率统计</div>
- </div>
- <el-form-item label="浏览量设置" prop="total_browse_num">
- <el-input v-model="ruleForm.total_browse_num" class="width-150" onkeyup="value=toNumber(value,0)">
- <template slot="append">人</template>
- </el-input>
- </el-form-item>
- <el-form-item label="访客量设置" prop="total_visitor_num">
- <el-input v-model="ruleForm.total_visitor_num" class="width-150" onkeyup="value=toNumber(value,0)">
- <template slot="append">人</template>
- </el-input>
- </el-form-item>
- <el-form-item label="关注量设置" prop="total_follow_num">
- <el-input v-model="ruleForm.total_follow_num" class="width-150" onkeyup="value=toNumber(value,0)">
- <template slot="append">人</template>
- </el-input>
- </el-form-item>
- </el-card>
- <el-card class="edit-card" shadow="never">
- <div slot="header" class="clearfix">
- <div class="card-title">下单统计</div>
- </div>
- <el-form-item label="访问量设置" prop="total_visitor_num">
- <el-input v-model="ruleForm.total_visitor_num" class="width-150" onkeyup="value=toNumber(value,0)">
- <template slot="append">人</template>
- </el-input>
- </el-form-item>
- <el-form-item label="下单量设置" prop="order_num">
- <el-input v-model="ruleForm.order_num" class="width-150" onkeyup="value=toNumber(value,0)">
- <template slot="append">人</template>
- </el-input>
- </el-form-item>
- <el-form-item label="支付人数设置" prop="pay_num">
- <el-input v-model="ruleForm.pay_num" class="width-150" onkeyup="value=toNumber(value,0)">
- <template slot="append">人</template>
- </el-input>
- </el-form-item>
- </el-card>
- <el-card class="edit-card" shadow="never">
- <div slot="header" class="clearfix">
- <div class="card-title">商品热销排行榜</div>
- </div>
- <el-form-item label="选择商品" >
- <com-dialog-select :multiple="true" @selected="goodsSelect" title="商品选择">
- <el-button type="text">选择商品</el-button>
- </com-dialog-select>
- </el-form-item>
- <el-form-item>
- <div style="color: #ff4544;">最多可添加15个商品</div>
- <div class="table-body" style="padding-left: 0;padding-top: 0;">
- <template>
- <el-table :data="ruleForm.goods_list" border style="width: 100%">
- <el-table-column type="index" label="序号" width="50"></el-table-column>
- <el-table-column prop="goods_id" label="商品id" width="100"></el-table-column>
- <el-table-column prop="goods_name,cover_pic" label="商品名称" >
- <template slot-scope="scope">
- <div flex="box:first">
- <div style="padding-right: 10px;">
- <com-image mode="aspectFill" :src="scope.row.cover_pic"></com-image>
- </div>
- <div flex="cross:top cross:center">
- {{scope.row.goods_name}}
- </div>
- </div>
- </template>
- </el-table-column>
- <el-table-column prop="sales_num" label="销量" width="300">
- <template slot-scope="scope">
- <el-input type="number" :min="0" v-model="scope.row.sales_num" placeholder="">
- </el-input>
- </template>
- </el-table-column>
- <el-table-column label="操作" width="100">
- <template slot-scope="scope">
- <el-button @click="deleteGoods(scope.$index)" type="primary" size="mini">删除</el-button>
- </template>
- </el-table-column>
- </el-table>
- </template>
- </div>
- </el-form-item>
- </el-card>
- <div style="position:fixed; bottom:0; right: 0; z-index:999;background-color: white;width:calc(100% - 200px);height: 58px;display: flex;justify-content: center;align-items: center;">
- <el-button class="button-item" type="primary" @click='save' :loading="loading" size="small">保存</el-button>
- </div>
- </el-form>
- </el-tab-pane>
- <el-tab-pane label="商城数据初始化" name="dataClear">
- <div slot="header">
- <div>
- <span>数据清理</span>
- </div>
- </div>
- <div class="form_box">
- <el-form :model="cleanRuleForm" size="small" ref="cleanRuleForm" label-width="150px">
- <el-card shadow="never">
- <div slot="header">
- <div>
- <span>数据清理</span>
- </div>
- </div>
- <div>
- <el-row>
- <el-col :span="16">
- <div class="el-alert el-alert--warning is-light" style="display:block;margin-bottom:20px">
- 提示:
- </br>1、可以对单个应用或多个应用初始化,应用下的数据将全部删除;
- <br> 2、注意初始化单个应用后,将影响其他应用下与此应用关联的数据;
- </br>3、清除测试数据前,运营中的数据请务必根据国家法律法规存储时长进行保存3年以上;
- </br></br><span style="color: red;">初始化的数据不可恢复,请谨慎操作!</span>
- </div>
- </el-col>
- <el-col :span="16" >
- <el-form-item label="状态:" >
- <div v-if ='cache_data == 1'>
- 数据清除中。。。 <el-button icon="el-icon-refresh-right" circle type="primary" @click="loadData"></el-button>
- </div>
- <div v-else-if = 'cache_data == 2'><p style='color:#67c23a;'>数据清除完成</p></div>
- <div v-else>未进行操作</div>
- </el-form-item>
- </el-col>
- <el-col :span="16">
- <el-form-item label="数据类型">
- <el-radio-group v-model="cleanRuleForm.clean_type" size="small">
- <el-radio :label="1" border>普通部署</el-radio>
- <!-- <el-radio :label="2" border>Mycat部署</el-radio> -->
- </el-radio-group>
- </el-form-item>
- </el-col>
- <el-col :span="16">
- <el-form-item label="主商城数据清理">
- <el-radio-group v-model="cleanRuleForm.clean_data" size="small">
- <el-radio :label="0" border>不做任何清除</el-radio>
- <el-radio :label="1" border>清除用户跟订单等数据</el-radio>
- <!-- <el-radio :label="2" border>清除订单数据</el-radio> -->
- </el-radio-group>
- <div class="tips-text" v-if="cleanRuleForm.clean_data == 1" style="line-height: 24px;">保留数据:装修、商品、设置、渠道、下载、会员的会员等级跟分享设置。其他的全部清除。</div>
- <div class="tips-text" v-if="cleanRuleForm.clean_data == 2" style="line-height: 24px;">删除的数据包括:订单信息,订单统计,订单评论,售后订单</div>
- </el-form-item>
- </el-col>
- <el-col :span="16">
- <el-form-item label="清除应用数据">
- <el-switch v-model="cleanRuleForm.clean_addons" @change="cleanAddons" :active-value="1" :inactive-value="0"></el-switch>
- <div class="tips-text" style="line-height: 24px;">开启后将会删除所有插件的数据,但是会保留插件的基础配置跟等级配置</div>
- </el-form-item>
- </el-col>
- <el-col :span="16" v-if="cleanRuleForm.clean_addons == 1">
- <el-form-item label="应用数据清除">
- <el-checkbox :indeterminate="isIndeterminate" v-model="checkAll" @change="handleCheckAllChange">全选</el-checkbox>
- <el-checkbox-group v-model="cleanRuleForm.addons_name" size="mini" @change="handleCheckedCitiesChange">
- <el-checkbox style="margin:0 20px 20px 0;" v-for="item in addons" :key="item.name" :label="item.name" border>{{ item.title }}</el-checkbox>
- </el-checkbox-group>
- </el-form-item>
- </el-col>
- <el-col :span="16" v-if="cleanRuleForm.clean_addons == 1">
- <el-form-item label="说明:">
- 所勾选的应用除了等级、基础设置其他的都会被清除<br>
- <b>特殊不被清除的插件:</b>
- <div v-for="items in addons" :key="items.name" :label="items.name">
- <div v-if="items.name == 'Coupon'">
- 优惠券:优惠券列表(已领取、已使用清零)
- </div>
- <div v-if="items.name == 'Rebate'">
- 推三返一:活动列表(参与人数、成交金额、订单数清零)
- </div>
- <div v-if="items.name == 'AvoidTax'">
- 支付宝合规:基础配置、记账本
- </div>
- <div v-if="items.name == 'CloudStock'">
- 云库存:代理等级、升级礼包、商品管理、基础设置
- </div>
- <div v-if="items.name == 'PhysicalStock'">
- 实体库存(定制插件):代理等级、升级礼包、商品管理、基础设置
- </div>
- <div v-if="items.name == 'JuheShop'">
- 聚合供应链(七件事供应链):基础设置、中台配置、选品库
- </div>
- <div v-if="items.name == 'ChangeCloud'">
- 怡亚通供应链:基础设置、选品列表
- </div>
- <!-- <div v-if="items.name == 'AvoidTax'">
- 胜天半子供应链:基础设置、选品库
- </div> -->
- </div>
- </el-form-item>
- </el-col>
- </el-row>
- </div>
- </el-card>
- </el-form>
- <div style="position:fixed; bottom:0; right: 0; z-index:999;background-color: white;width:calc(100% - 200px);height: 58px;display: flex;justify-content: center;align-items: center;">
- <el-button :loading="cleanBtnLoading" class="button-item" type="primary" style="" @click="createMallDialogVisible = true" size="small">提交
- </div>
- </div>
- <el-dialog title="站点数据清除提醒" :visible.sync="createMallDialogVisible" width="40%" :close-on-click-modal="false" @close="createMallDialogVisible = false">
- <el-form label-width="100px" size="small" :model="cleanRuleForm" ref="cleanRuleForm" :rules="cleanRules">
- <el-form-item label="站点:">
- <el-col :span="12">
- {{headerData.mall.name}}
- </el-col>
- </el-form-item>
- <el-form-item label="域名:">
- <el-col :span="12">
- {{headerData.services.backend_url}}
- </el-col>
- </el-form-item>
- <el-form-item label="手机号">
- <el-col :span="6">
- <el-input v-model="cleanRuleForm.mobile" disabled='disabled'></el-input>
- </el-col>
- </el-form-item>
- <el-form-item label="手机验证码" prop='verify_code'>
- <el-col :span="10" style="display:flex">
- <el-input v-model="cleanRuleForm.verify_code"
- style="margin-right:10px;"></el-input>
- <el-button @click="getVerificationCode('old')" :disabled="is_disabled_old">获取验证码
- </el-button>
- </el-col>
- </el-form-item>
- <el-form-item label="注意:">
- <el-col :span="22">
- <span style="color: #f56c6c">清除数据可能造成站点数据丢失,引起法律风险,请核实确认要清除数据的站点是否正确,谨慎操作!</span>
- </el-col>
- </el-form-item>
- <el-form-item style="text-align: right">
- <el-button size="small" @click="createMallDialogVisible = false">取消</el-button>
- <el-button size="small" :loading="createMallSubmitLoading" type="primary" @click="store('cleanRuleForm')">确定
- </el-button>
- </el-form-item>
- </el-form>
- </el-dialog>
- </el-tab-pane>
- </el-tabs>
- </el-card>
- </div>
- <script>
- const app = new Vue({
- el: '#app',
- data() {
- return {
- loading: false,
- cardLoading: true,
- ruleForm: {
- pay_num: 0,
- order_num: 0,
- total_visitor_num: 0,
- total_follow_num: 0,
- total_browse_num: 0,
- today_upgrade_level: {},
- yesterday_upgrade_level: {},
- yesterday_browse_num: 0,
- today_browse_num: 0,
- yesterday_visitor_num: 0,
- today_visitor_num: 0,
- region_data: [],
- user_num: 0,
- today_register_num: 0,
- today_money: 0,
- total_money: 0,
- status: 0,
- province_data: [],
- goods_list: [],
- goods_ids: [],
- },
- options: [],
- value: '',
- addRegionName: '',
- addRegionid: '',
- addRegionNum: '',
- regionList: [],
- activeName: 'index',
- rules:{
- total_money: [{
- required: true,
- message: '请输入总成交额',
- trigger: 'change'
- }],
- today_money: [{
- required: true,
- message: '请输入今日成交额',
- trigger: 'change'
- }],
- today_register_num: [{
- required: true,
- message: '请输今日新增用户数',
- trigger: 'change'
- }],
- user_num: [{
- required: true,
- message: '请输入用户总数',
- trigger: 'change'
- }],
- today_visitor_num: [{
- required: true,
- message: '请输入今日访客数',
- trigger: 'change'
- }],
- yesterday_visitor_num: [{
- required: true,
- message: '请输入昨日访客数',
- trigger: 'change'
- }],
- today_browse_num: [{
- required: true,
- message: '请输入今日浏览量',
- trigger: 'change'
- }],
- yesterday_browse_num: [{
- required: true,
- message: '请输入昨日浏览量',
- trigger: 'change'
- }],
- total_browse_num: [{
- required: true,
- message: '请输入浏览量',
- trigger: 'change'
- }],
- total_visitor_num: [{
- required: true,
- message: '请输入访客量',
- trigger: 'change'
- }],
- total_follow_num: [{
- required: true,
- message: '请输入关注量',
- trigger: 'change'
- }],
- order_num: [{
- required: true,
- message: '请输入订单数',
- trigger: 'change'
- }],
- pay_num: [{
- required: true,
- message: '请输入订单数',
- trigger: 'change'
- }]
- },
- // clean_data
- // cleanLoading: false,
- cleanBtnLoading: false,
- cleanRuleForm: {
- clean_type: 1,
- clean_data: 0,
- clean_addons: 0,
- addons_name: [],
- mobile: '',
- verify_code: '',
- },
- checkAll: false,
- isIndeterminate: false,
- addons: [],
- addonsKey: [],
- cache_data: 0,
- createMallDialogVisible: false,
- createMallSubmitLoading: false,
- headerData:[],
- is_disabled_old: false,
- mall_id:0,
- cleanRules: {
- verify_code: [
- { required: true, message: '请输入验证码', trigger: 'change' }
- ],
- }
- }
- },
- mounted() {
- this.getData();
- this.getProvince();
- this.loadData();
- },
- methods: {
- getData() {
- this.cardLoading = true;
- request({
- params: {
- r: 'mall/data/index',
- },
- method: 'get',
- }).then(e => {
- this.cardLoading = false;
- if (e.data.code == 0) {
- //this.ruleForm = e.data.data;
- for (let i in this.ruleForm) {
- if(e.data.data[i]) {
- this.ruleForm[i] = e.data.data[i];
- }
- }
- if (this.ruleForm.region_data.length > 0) {
- for (let i in this.ruleForm.region_data) {
- if (this.ruleForm.region_data[i]['pay_money'] > 0) {
- this.regionList.push({
- province_id: this.ruleForm.region_data[i]['province_id'],
- pay_money: this.ruleForm.region_data[i]['pay_money']
- });
- this.ruleForm.province_data.push({
- id: this.ruleForm.region_data[i]['province_id'],
- name: this.ruleForm.region_data[i]['name'],
- num: this.ruleForm.region_data[i]['pay_money']
- })
- }
- }
- }
- }
- })
- },
- getProvince() {
- this.loading = true;
- request({
- params: {
- r: 'mall/data/get-province',
- },
- method: 'get',
- }).then(e => {
- this.loading = false;
- if (e.data.code == 0) {
- this.options = e.data.data;
- }
- })
- },
- regionChange(value) {
- this.addRegionid = value;
- for (let i in this.options) {
- if (this.options[i]['id'] == value) {
- this.addRegionName = this.options[i]['name'];
- }
- }
- },
- addProvince() { //添加地区
- if (this.addRegionName === '') {
- this.$message.error('请选择城市!');
- return;
- }
- if (this.addRegionNum === '') {
- this.$message.error('请输入数量!');
- return;
- }
- if (this.regionList.length > 0) {
- for (let i in this.regionList) {
- if (this.regionList[i]['province_id'] == this.addRegionid) {
- this.$message.error('不可添加相同的城市!');
- return;
- }
- }
- }
- this.regionList.push({
- province_id: this.addRegionid,
- pay_money: this.addRegionNum
- })
- this.ruleForm.province_data.push({
- id: this.addRegionid,
- name: this.addRegionName,
- num: this.addRegionNum
- })
- },
- closeTag(index) {
- this.ruleForm.province_data.splice(index, 1);
- this.regionList.splice(index, 1);
- },
- save() {
- this.ruleForm.region_data = this.regionList;
- this.ruleForm.status = this.ruleForm.status ? this.ruleForm.status : 0;
- //this.loading = true;
- request({
- params: {
- r: 'mall/data/index',
- },
- data: this.ruleForm,
- method: 'post',
- }).then(e => {
- this.loading = false;
- if (e.data.code == 0) {
- this.loading = false;
- this.$message({
- message: '保存成功!',
- type: 'success'
- });
- }
- })
- },
- goodsSelect(param) {
- for (let j in param) {
- let item = param[j];
- if (this.ruleForm.goods_ids&&this.ruleForm.goods_ids.length >= 15) {
- this.$message.error('指定商品不能大于15个');
- return;
- }
- let flag = true;
- for (let i in this.ruleForm.goods_ids) {
- if (this.ruleForm.goods_ids[i] == item.id) {
- flag = false;
- break;
- }
- }
- if (flag) {
- this.ruleForm.goods_ids.push(item.id);
- this.ruleForm.goods_list.push({
- goods_id: item.id,
- goods_name: item.goods_name,
- cover_pic: item.cover_pic,
- });
- }
- }
- },
- deleteGoods(index) {
- this.ruleForm.goods_list.splice(index, 1);
- this.ruleForm.goods_ids.splice(index, 1);
- },
- //clean_start
- loadData() {
- this.loading = true;
- request({
- params: {
- r: 'mall/data/clean',
- },
- method: 'get'
- }).then(e => {
- this.loading = false;
- if (e.data.code == 0 && !isEmpty(e.data.data)) {
- this.addons = e.data.data.addons
- let allkey = []
- this.addons.forEach (function(item) {
- allkey.push(item.name)
- })
- this.cache_data = e.data.data.cache_data;
- this.cleanRuleForm.mobile = e.data.data.admin_mobile;
- this.addonsKey = allkey
- }
- let headerData = localStorage.getItem('mall_header_data');
- headerData = JSON.parse(headerData);
- this.headerData = headerData;
- this.mall_id = this.headerData.mall.id;
- }).catch(e => {
- this.loading = false;
- })
- },
- store(formName) {
- this.$refs[formName].validate((valid) => {
- if (valid) {
- if (!this.cleanRuleForm.clean_data && !this.cleanRuleForm.clean_addons) {
- this.cleanBtnLoading = false;
- this.createMallDialogVisible = false;
- this.$message.success('操作完成');
- return;
- }
- this.cleanBtnLoading = true;
- request({
- params: {
- r: 'mall/data/clean',
- },
- method: 'post',
- data: this.cleanRuleForm
- }).then(e => {
- this.cleanBtnLoading = false;
- this.createMallDialogVisible = false;
- if (e.data.code == 0) {
- this.loadData();
- this.$message.success(e.data.msg);
- } else {
- this.$message.error(e.data.msg);
- }
- }).catch(e => {
- this.cleanBtnLoading = false;
- this.$message.error(e.data.msg);
- })
- } else {
- this.cleanBtnLoading = false;
- console.log('error submit!!');
- return false;
- }
- });
- },
- handleCheckAllChange(val) {
- this.cleanRuleForm.addons_name = val ? this.addonsKey : [];
- this.isIndeterminate = false;
- },
- handleCheckedCitiesChange(value) {
- let checkedCount = value.length;
- this.checkAll = checkedCount === this.addons.length;
- this.isIndeterminate = checkedCount > 0 && checkedCount < this.addons.length;
- },
- getVerificationCode(type) {
- let mobile = ''
- if(type == 'old'){
- mobile = this.cleanRuleForm.mobile
- this.setDisabled(type,true)
- }
- if(!mobile){
- this.$message.error('请填写手机号再获取验证码');
- return
- }
- request({
- params: {
- r: 'common/sms/send',
- },
- method: 'post',
- data: {
- mobile : mobile,
- sms_type : 'haveVerifyCode',
- valid_time : 60,
- mall_id : this.mall_id
- }
- }).then(e => {
- this.setDisabled(type,false)
- if (e.data.code == 0) {
- this.$message.success(e.data.msg+',验证码已发送到:'+mobile);
- } else {
- this.$message.error(e.data.msg);
- }
- }).catch(e => {
- });
- },
- setDisabled(type,disabled){
- if(type == 'old'){
- this.is_disabled_old = disabled
- }
- if(type == 'new'){
- this.is_disabled_new = disabled
- }
- },
- cleanAddons(val) {
- if (val) {
- this.open()
- }
- },
- open() {
- this.$alert('所勾选的应用除了等级、基础设置其他的都会被清除<br>特殊不被清除的插件:<br>优惠券:优惠券列表(已领取、已使用清零)<br>推三返一:活动列表(参与人数、成交金额、订单数清零)<br>云库存:代理等级、升级礼包、商品管理、基础设置<br>聚合供应链(七件事供应链):基础设置、中台配置、选品库<br>支付宝合规:基础配置、记账本', '数据清除说明', {
- dangerouslyUseHTMLString: true,
- showCancelButton: true,
- customClass: 'alertMessage'
- }).then(() => {
- this.cleanRuleForm.clean_addons = 1;
- }).catch(() => {
- this.cleanRuleForm.clean_addons = 0;
- });
- },
- //clean_end
- }
- })
- </script>
- <style>
- .el-tag + .el-tag {
- margin-left: 5px;
- margin-top: 5px;
- }
- .alertMessage .el-message-box__header {
- text-align: center;
- }
- .alertMessage .el-message-box__btns {
- display: flex;
- justify-content: center;
- flex-direction: row-reverse;
- }
- .alertMessage .el-message-box__btns button:nth-child(2) {
- margin-left: 0;
- margin-right: 10px;
- }
- </style>
|