| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262 |
- @extends('layouts.base')
- @section('title', '导入分类|刷新token')
- @section('content')
- <link rel="stylesheet" type="text/css" href="{{static_url('yunshop/goods/vue-goods1.css')}}" />
- <link rel="stylesheet" href="{{resource_get('plugins/yz-supply/assent/css/album1.css?time='.time())}}">
- <div class="all">
- <div id="app" v-cloak>
- <div class="vue-head">
- <div class="top-title">
- <span :class="item.class" v-for="(item,index) in albumTopTitle" @click="skipUrl(item)" :key="index">[[item.name]]</span>
- </div>
- </div>
- <div class="vue-main">
- <div class="vue-main-title">
- <div class="vue-main-title-left"></div>
- <div class="vue-main-title-content">导入分类|刷新token</div>
- </div>
- <div class="vue-main-form">
- <el-row style="margin-left: 15%;margin-bottom:15px;">
- <el-select v-model="middleground_configuration_id" placeholder="请选择供应链" clearable @change="cutSupplyChain()" >
- <el-option v-for="item,index in middleground_configuration" :key="item.id" :label="item.title" :value="item.id"></el-option>
- </el-select>
- </el-row>
- <el-row style="margin-left: 15%;margin-bottom:15px;">
- <el-button type="primary" @click="stepFuc()">[[step_title]]</el-button>
- <span style="" class='help-block' v-if="step>0">
- [[step_categorys_content]] <br/>
- [[step_import_categorys_content]]
- </span>
- </el-row>
- <el-row style="margin-left: 15%;margin-bottom:15px;">
- <el-button type="primary" @click="synsCategorys()">同步分类图片</el-button>
- <el-button type="primary" @click="clearToken()">刷新token</el-button>
- </el-row>
- <span style="" class='help-block'>
- 导入分类流程:点击获取第三方分类,之后点击导入分类(获取分类完成后才会显示这个按钮),之后耐心等待即可。<br>
- 同步分类图片只会调整没有图片的分类。<br>
- 同步分类图片需要本地的分类名称与第三方分类名称一致<br>
- 刷新token避免提示或者token调整造成原token无效,而无法使用供应链插件的问题<br>
- 刷新token会刷新当前平台所有中台配置的token
- </span>
- </div>
- </div>
- </div>
- </div>
- <script>
- const GetAccountSetUrl = "{!! yzWebFullUrl('plugin.kart.Backend.Account.Controllers.set.index') !!}";
- const SaveAccountSetUrl = "{!! yzWebFullUrl('plugin.kart.Backend.Account.Controllers.set.update') !!}";
- </script>
- <script>
- const mixin = {
- data() {
- return {
- albumTopTitle: [
- {
- id: 1,
- name: "基础设置",
- class:"album-name-against",
- url:"{!! yzWebFullUrl('plugin.yz-supply.admin.set.index') !!}"
- },
- {
- id: 2,
- name: "中台配置列表",
- class:"album-name-against",
- url:"{!! yzWebFullUrl('plugin.yz-supply.admin.middleground-configuration.index') !!}"
- },
- {
- id: 3,
- name: "支付设置",
- class:"album-name-against",
- url:"{!! yzWebFullUrl('plugin.yz-supply.admin.set.pay') !!}"
- },
- {
- id: 4,
- name: "快递匹配",
- class:"album-name-against",
- url:"{!! yzWebFullUrl('plugin.yz-supply.admin.express-matching.index') !!}"
- },
- {
- id: 5,
- name: "导入分类",
- class:"album-name",
- url:"{!! yzWebFullUrl('plugin.yz-supply.admin.import-categorys.index') !!}"
- },
- ],
- step:0,
- step_title:'获取第三方分类',
- step_categorys_content:"",//分类内容
- step_import_categorys_content:"",//导入内容
- import_key:0, //正在导入第几组分类
- import_count:0,//已导入数量
- step_title_array:[
- "获取第三方分类",
- "导入分类",
- "导入中..."
- ],
- group_count:0, //分类多少组
- data_count:0, //分类个数
- middleground_configuration_id:0,
- middleground_configuration:{},
- payData:[],
- speechSynthesisAppId:11
- };
- },
- mounted() {
- this.getMiddlegroundConfiguration();
- },
- methods: {
- skipUrl(item){
- window.location.href = item.url
- },
- stepFuc(){
- switch (this.step) {
- case 0:
- this.getCategorys();
- break;
- case 1:
- this.importCategorys();
- break;
- case 2:
- alert("导入开始");
- break;
- default :
- break;
- }
- },
- //获取分类
- getCategorys(){
- let loading = this.$loading({
- target: document.querySelector(".content"),
- background: 'rgba(0, 0, 0, 0)'
- });
- this.$http.post('{!! yzWebFullUrl('plugin.yz-supply.admin.import-categorys.get-categorys-list') !!}', {middleground_configuration_id:this.middleground_configuration_id}).then(function (response) {
- if (response.data.result) {
- this.data_count = response.data.data.count;
- this.group_count = response.data.data.group_count;
- this.step_categorys_content = "导入"+this.group_count+"组分类,"+this.data_count+"个分类";
- this.step = 1;
- this.step_title = this.step_title_array[this.step];
- this.$message({message: response.data.msg, type: 'success'});
- } else {
- this.$message({message: response.data.msg, type: 'error'});
- }
- loading.close();
- }, function (response) {
- this.$message({message: response.data.msg, type: 'error'});
- })
- },
- importCategorys(){
- let loading = this.$loading({
- target: document.querySelector(".content"),
- background: 'rgba(0, 0, 0, 0)'
- });
- this.import_key++;
- this.step_import_categorys_content = "正在导入"+(this.import_key)+"组分类,已导入"+this.import_count+"个分类";
- this.step = 2;
- this.$http.post('{!! yzWebFullUrl('plugin.yz-supply.admin.import-categorys.import-category') !!}', {middleground_configuration_id:this.middleground_configuration_id,key:this.import_key,count:this.import_count}).then(function (response) {
- if (response.data.result) {
- if(this.import_key >= this.group_count-1){
- this.$message({message:'导入完成', type: 'success'});
- this.reset();
- }else{
- this.import_count = response.data.data.count;
- this.importCategorys();
- }
- } else {
- this.$message({message: response.data.msg, type: 'error'});
- }
- loading.close();
- }, function (response) {
- this.$message({message: response.data.msg, type: 'error'});
- })
- },
- cutSupplyChain(){
- this.reset();
- this.$message({message:'切换完成', type: 'success'});
- },
- reset(){
- this.step = 0;
- this.step_title = this.step_title_array[this.step];
- this.step_categorys_content = "";//分类内容
- this.step_import_categorys_content = "";//导入内容
- this.import_key = 0; //正在导入第几组分类
- this.import_count = 0;//已导入数量
- this.group_count = 0; //分类多少组
- this.data_count = 0; //分类个数
- },
- getMiddlegroundConfiguration(){
- this.$http.post('{!! yzWebFullUrl('plugin.yz-supply.admin.middleground-configuration.get-middleground-configurations') !!}').then(function (response) {
- if (response.data.result) {
- this.middleground_configuration = response.data.data;
- this.middleground_configuration_id = this.middleground_configuration[0].id;
- } else {
- this.$message({message: response.data.msg, type: 'error'});
- }
- }, function (response) {
- this.$message({message: response.data.msg, type: 'error'});
- })
- },
- synsCategorys(){
- let loading = this.$loading({
- target: document.querySelector(".content"),
- background: 'rgba(0, 0, 0, 0)'
- });
- this.$http.post('{!! yzWebFullUrl('plugin.yz-supply.admin.import-categorys.sync-categorys-image') !!}', {middleground_configuration_id:this.middleground_configuration_id}).then(function (response) {
- if (response.data.result) {
- var data_count = response.data.data.data_count;
- this.$message({message:"同步完成:第三方分类总数:"+data_count.count+",其中没有图片的:"+data_count.no_image_count+",本地已有图片或者未导入分类:"+data_count.no_loc_categorys_count+",成功填写分类:"+data_count.success_count+"", type: 'success'});
- } else {
- this.$message({message: response.data.msg, type: 'error'});
- }
- loading.close();
- }, function (response) {
- this.$message({message: response.data.msg, type: 'error'});
- })
- },
- clearToken(){
- let loading = this.$loading({
- target: document.querySelector(".content"),
- background: 'rgba(0, 0, 0, 0)'
- });
- this.$http.post('{!! yzWebFullUrl('plugin.yz-supply.admin.import-categorys.clear-token') !!}', {middleground_configuration_id:this.middleground_configuration_id}).then(function (response) {
- if (response.data.result) {
- this.$message({message:'刷新成功', type: 'success'});
- } else {
- this.$message({message: response.data.msg, type: 'error'});
- }
- loading.close();
- }, function (response) {
- this.$message({message: response.data.msg, type: 'error'});
- })
- },
- },
- };
- //* 实例化,提供基础服务
- new Vue({
- el: "#app",
- delimiters: ["[[", "]]"],
- mixins: [mixin],
- data() {
- return {
- };
- },
- methods: {
- },
- });
- </script>
- @endsection
|