Compare commits
13 Commits
label
...
b1d1f60f96
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
b1d1f60f96 | ||
|
|
191edd1eb4 | ||
|
|
0cbe017a95 | ||
|
|
b1abecfb29 | ||
|
|
2511778c9f | ||
|
|
fea7848653 | ||
|
|
3cdaba63b7 | ||
|
|
5ece8b562f | ||
|
|
15614d9489 | ||
|
|
7b43c97f5f | ||
|
|
74043c55ae | ||
|
|
f69c86f92b | ||
|
|
c7cb7c103d |
@@ -3,7 +3,7 @@
|
||||
"version": "0.1.0",
|
||||
"private": true,
|
||||
"scripts": {
|
||||
"dev": "vue-cli-service --env.NODE_ENV=development build-watch --mode development",
|
||||
"dev": "vue-cli-service --env.NODE_ENV=development build-watch --mode development",
|
||||
"build": "vue-cli-service build"
|
||||
},
|
||||
"dependencies": {
|
||||
@@ -42,7 +42,7 @@
|
||||
"eslint": "^7.32.0",
|
||||
"eslint-plugin-vue": "^8.0.3",
|
||||
"javascript-obfuscator": "2.6.0",
|
||||
"sass": "^1.68.0",
|
||||
"sass": "1.32.13",
|
||||
"sass-loader": "^7.3.1",
|
||||
"vue-cli-plugin-chrome-extension-cli": "~1.1.4",
|
||||
"vue-template-compiler": "^2.6.14",
|
||||
|
||||
@@ -18,7 +18,7 @@
|
||||
]
|
||||
},
|
||||
"condition": {
|
||||
"urlFilter": "||xc.rqlis.com:888"
|
||||
"urlFilter": "||xc.rqlis.com"
|
||||
}
|
||||
}
|
||||
]
|
||||
@@ -4,7 +4,7 @@ import store from '@/store'
|
||||
|
||||
|
||||
var instance = axios.create({
|
||||
baseURL: process.env.NODE_ENV === 'production' ? 'http://124.71.2.127:10248' : 'http://124.71.2.127:10248',
|
||||
baseURL: process.env.NODE_ENV === 'production' ? 'http://temu.jjcp52.com' : 'http://124.71.2.127:10248',
|
||||
timeout: 50000,
|
||||
validateStatus: function (status) {
|
||||
return status < 500
|
||||
|
||||
@@ -8,7 +8,7 @@ export const customProvider = function () {
|
||||
new hiprint.PrintElementTypeGroup('', [
|
||||
{
|
||||
tid: 'providerModule1.html',
|
||||
title: 'temu条码',
|
||||
title: 'TEMU条码',
|
||||
data: 'XS888888888',
|
||||
type: 'html',
|
||||
formatter: function (data, options, sukData) {
|
||||
|
||||
@@ -23,7 +23,7 @@
|
||||
"*://*.geiwohuo.com/",
|
||||
"*://*.ltwebstatic.com/",
|
||||
"*://*.goodcang.com/",
|
||||
"*://*.rqlis.com*"
|
||||
"*://*.rqlis.com/"
|
||||
],
|
||||
"permissions": [
|
||||
"cookies",
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
"*://*.shein.com/",
|
||||
"*://*.geiwohuo.com/",
|
||||
"*://*.ltwebstatic.com/",
|
||||
"*://*.rqlis.com"
|
||||
"*://*.rqlis.com/"
|
||||
],
|
||||
"permissions": [
|
||||
"cookies",
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
import Vue from 'vue'
|
||||
import VueRouter from 'vue-router'
|
||||
import store from '@/store'
|
||||
import media from "@/router/media";
|
||||
|
||||
Vue.use(VueRouter)
|
||||
|
||||
@@ -298,7 +299,7 @@ const router = new VueRouter({
|
||||
name: 'sendGoods_xc',
|
||||
component: () => import('../view/semi/SemiSendGoods_XC.vue')
|
||||
},
|
||||
|
||||
|
||||
// {
|
||||
// path: 'statistics',
|
||||
// name: 'statistics',
|
||||
@@ -317,7 +318,7 @@ const router = new VueRouter({
|
||||
path: 'oushuitong',
|
||||
name: 'oushuitong',
|
||||
meta: {
|
||||
activeMenu:'/qualification'
|
||||
activeMenu: '/qualification'
|
||||
}
|
||||
}
|
||||
]
|
||||
@@ -332,7 +333,7 @@ const router = new VueRouter({
|
||||
name: 'addLabelsTemplate',
|
||||
component: () => import('../view/lables/AddTemplate.vue'),
|
||||
meta: {
|
||||
activeMenu:'/labelsTemplate'
|
||||
activeMenu: '/labelsTemplate'
|
||||
}
|
||||
},
|
||||
{
|
||||
@@ -345,9 +346,10 @@ const router = new VueRouter({
|
||||
name: 'skuManage',
|
||||
component: () => import('../view/lables/SkuManage.vue'),
|
||||
meta: {
|
||||
activeMenu:'/labelsTemplate'
|
||||
activeMenu: '/labelsTemplate'
|
||||
}
|
||||
}
|
||||
},
|
||||
...media
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -375,11 +377,11 @@ const router = new VueRouter({
|
||||
component: () => import('../view/login/Forget.vue')
|
||||
}
|
||||
],
|
||||
scrollBehavior (to, from, savedPosition) {
|
||||
scrollBehavior(to, from, savedPosition) {
|
||||
if (savedPosition) {
|
||||
return savedPosition
|
||||
} else {
|
||||
return { x: 0, y: 0 }
|
||||
return {x: 0, y: 0}
|
||||
}
|
||||
}
|
||||
})
|
||||
|
||||
3
src/router/media.js
Normal file
3
src/router/media.js
Normal file
@@ -0,0 +1,3 @@
|
||||
export default [
|
||||
{name: "imageTranslate", path: "imageTranslate", component: () => import("@/view/media/imageTranslate.vue")}
|
||||
]
|
||||
@@ -108,15 +108,19 @@ export function transform(leftData) {
|
||||
"valueExtendInfo": ""
|
||||
});
|
||||
rightSkuItem.productSkuId = 0;
|
||||
rightSkuItem.productSkuWhExtAttrReq = {
|
||||
"productSkuVolumeReq": leftSkuItem.productSkuWhExtAttr.productSkuVolume,
|
||||
"productSkuWeightReq": leftSkuItem.productSkuWhExtAttr.productSkuWeight,
|
||||
"productSkuBarCodeReqs": leftSkuItem.productSkuWhExtAttr.productSkuBarCodes,
|
||||
"productSkuSensitiveAttrReq": {
|
||||
"isSensitive": leftSkuItem.productSkuWhExtAttr.productSkuSensitiveAttr.isSensitive,
|
||||
"sensitiveList": leftSkuItem.productSkuWhExtAttr.productSkuSensitiveAttr.sensitiveList},
|
||||
"productSkuSensitiveLimitReq": leftSkuItem.productSkuWhExtAttr.productSkuSensitiveLimit,
|
||||
};
|
||||
if (!leftSkuItem.productSkuWhExtAttr) {
|
||||
rightSkuItem.productSkuWhExtAttrReq = null
|
||||
} else {
|
||||
rightSkuItem.productSkuWhExtAttrReq = {
|
||||
"productSkuVolumeReq": leftSkuItem.productSkuWhExtAttr?.productSkuVolume,
|
||||
"productSkuWeightReq": leftSkuItem.productSkuWhExtAttr?.productSkuWeight,
|
||||
"productSkuBarCodeReqs": leftSkuItem.productSkuWhExtAttr?.productSkuBarCodes,
|
||||
"productSkuSensitiveAttrReq": {
|
||||
"isSensitive": leftSkuItem.productSkuWhExtAttr?.productSkuSensitiveAttr.isSensitive,
|
||||
"sensitiveList": leftSkuItem.productSkuWhExtAttr?.productSkuSensitiveAttr.sensitiveList},
|
||||
"productSkuSensitiveLimitReq": leftSkuItem.productSkuWhExtAttr?.productSkuSensitiveLimit,
|
||||
};
|
||||
}
|
||||
rightSkuItem.currencyType = leftSkuItem.currencyType;
|
||||
|
||||
rightSkcItem.productSkuReqs.push(rightSkuItem);
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
</el-tooltip>
|
||||
<el-dropdown @command="handleClick">
|
||||
<div class="userinfo">
|
||||
<span>{{ $store.state.userInfo.name + "(" + $store.state.userInfo.phone + ")" }}</span>
|
||||
<span>{{ userInfo.name + "(" + userInfo.phone + ")" }}</span>
|
||||
<img src="../assets/images/bottom.png"/>
|
||||
</div>
|
||||
<el-dropdown-menu slot="dropdown">
|
||||
@@ -38,17 +38,26 @@
|
||||
<div class="admin-main">
|
||||
<el-scrollbar class="left">
|
||||
<el-menu
|
||||
:default-active="activePath"
|
||||
:collapse-transition="true"
|
||||
unique-opened
|
||||
background-color="#545c64"
|
||||
router
|
||||
text-color="#fff"
|
||||
:collapse="isCollapse">
|
||||
:default-active="activePath"
|
||||
:collapse-transition="true"
|
||||
unique-opened
|
||||
background-color="#545c64"
|
||||
router
|
||||
text-color="#fff"
|
||||
:collapse="isCollapse">
|
||||
<el-menu-item index="/welcome">
|
||||
<i class="el-icon-monitor"></i>
|
||||
<span slot="title">工作台</span>
|
||||
</el-menu-item>
|
||||
|
||||
<el-submenu index="/imageTranslate">
|
||||
<template #title>
|
||||
<i class="el-icon-s-goods"/>
|
||||
<span>AI助手</span>
|
||||
</template>
|
||||
<el-menu-item index="/imageTranslate">图片翻译</el-menu-item>
|
||||
</el-submenu>
|
||||
|
||||
<el-submenu index="/normalSendGoods">
|
||||
<template slot="title">
|
||||
<i class="el-icon-shopping-cart-2"></i>
|
||||
@@ -74,7 +83,7 @@
|
||||
<el-menu-item index="/findSeller">查找买手</el-menu-item>
|
||||
<el-menu-item index="/priceDown">拒绝调价</el-menu-item>
|
||||
<!--<el-menu-item index="/batchUpload">批量上品</el-menu-item>-->
|
||||
<el-menu-item v-if="$store.state.userInfo.phone == '18610967550' || $store.state.userInfo.phone == '18571466720'" index="/draft">
|
||||
<el-menu-item v-if="$store.state.userInfo.phone == '18610967550' || isAdmin" index="/draft">
|
||||
草稿箱管理
|
||||
</el-menu-item>
|
||||
<el-menu-item index="/sellerSelect">上新生命周期管理</el-menu-item>
|
||||
@@ -153,16 +162,16 @@
|
||||
<el-menu-item index="/copyProductShein">商品复制</el-menu-item>
|
||||
<el-menu-item index="/orderListShein">发货订单</el-menu-item>
|
||||
<el-menu-item index="/productListOdm">商品列表(ODM)</el-menu-item>
|
||||
<el-menu-item v-if="$store.state.userInfo.phone == '18571466720' || $store.state.userInfo.phone == '18666013582'" index="/returnRecordShein">退货与报废单列表</el-menu-item>
|
||||
<el-menu-item v-if="$store.state.userInfo.phone == '18571466720' || $store.state.userInfo.phone == '17607119772'" index="/labelInfoShein">
|
||||
<el-menu-item v-if="isAdmin || $store.state.userInfo.phone == '18666013582'" index="/returnRecordShein">退货与报废单列表</el-menu-item>
|
||||
<el-menu-item v-if="isAdmin || $store.state.userInfo.phone == '17607119772'" index="/labelInfoShein">
|
||||
标签管理
|
||||
</el-menu-item>
|
||||
<el-menu-item v-if="$store.state.userInfo.phone == '18571466720' || $store.state.userInfo.phone == '17607119772'" index="/purchaseOrderListShein">
|
||||
<el-menu-item v-if="isAdmin || $store.state.userInfo.phone == '17607119772'" index="/purchaseOrderListShein">
|
||||
发货单列表
|
||||
</el-menu-item>
|
||||
<el-menu-item index="/saleStatShein">商家账单统计</el-menu-item>
|
||||
</el-submenu>
|
||||
<el-submenu index="/dataManager" v-if="$store.state.userInfo.phone == '18571466720'">
|
||||
<el-submenu index="/dataManager" v-if="isAdmin">
|
||||
<template slot="title">
|
||||
<i class="el-icon-s-data"></i>
|
||||
<span slot="title">数据管理</span>
|
||||
@@ -210,6 +219,7 @@
|
||||
<el-menu-item index="/labelsPrint">标签打印</el-menu-item>
|
||||
</el-submenu>
|
||||
</el-submenu>
|
||||
|
||||
</el-menu>
|
||||
</el-scrollbar>
|
||||
<div class="container">
|
||||
@@ -221,18 +231,18 @@
|
||||
</div>
|
||||
</div>
|
||||
<el-dialog
|
||||
title="激活充值"
|
||||
:visible="$store.state.activeDlgShow"
|
||||
:close-on-click-modal="false"
|
||||
width="1200"
|
||||
:before-close="handleClose">
|
||||
title="激活充值"
|
||||
:visible="$store.state.activeDlgShow"
|
||||
:close-on-click-modal="false"
|
||||
width="1200"
|
||||
:before-close="handleClose">
|
||||
<ai-payment/>
|
||||
</el-dialog>
|
||||
<el-dialog
|
||||
title="温馨提示"
|
||||
:visible="$store.state.showSheinAlert"
|
||||
:close-on-click-modal="false"
|
||||
width="1200">
|
||||
title="温馨提示"
|
||||
:visible="$store.state.showSheinAlert"
|
||||
:close-on-click-modal="false"
|
||||
width="1200">
|
||||
<span style="font-size: large">1、检查“SHEIN商家后台”是否登录,如没登录,请先登录,之后再刷新助手<br></span>
|
||||
<span style="font-size: large">2、如果SHEIN商家后台已经登录,仍然弹出当前窗口,则需要SHEIN进行二次授权,二次授权可在菜单“商品管理->商品列表”,任意选择一个商品,在“库存”一栏,点击修改,在新打开的页面中可看到“正在鉴权”的字样,即可完成二次授权</span>
|
||||
<span slot="footer" class="dialog-footer">
|
||||
@@ -240,10 +250,10 @@
|
||||
</span>
|
||||
</el-dialog>
|
||||
<el-dialog
|
||||
title="温馨提示"
|
||||
:visible="$store.state.showTemuAlert"
|
||||
:close-on-click-modal="false"
|
||||
width="1200">
|
||||
title="温馨提示"
|
||||
:visible="$store.state.showTemuAlert"
|
||||
:close-on-click-modal="false"
|
||||
width="1200">
|
||||
<span style="font-size: large">请先打开卖家中心“结算数据->售后管理”页面进行二次授权,<a target="_blank" style="text-decoration: underline" href="https://seller.kuajingmaihuo.com/main/aftersales/information">去打开</a><br></span>
|
||||
<span slot="footer" class="dialog-footer">
|
||||
<el-button @click="closeTemuAlert">关 闭</el-button>
|
||||
@@ -257,175 +267,176 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import {mapMutations, mapState} from 'vuex'
|
||||
import AiPayment from "@/components/AiPayment.vue";
|
||||
import LablesMember from '@/components/LablesMember'
|
||||
import {sendAliexpressAPIMessage, sendGoodcangAPIMessage} from "@/api/chromeApi";
|
||||
import {mapMutations, mapState} from 'vuex'
|
||||
import AiPayment from "@/components/AiPayment.vue";
|
||||
import LablesMember from '@/components/LablesMember'
|
||||
import {sendAliexpressAPIMessage, sendGoodcangAPIMessage} from "@/api/chromeApi";
|
||||
|
||||
export default {
|
||||
components: {AiPayment, LablesMember},
|
||||
data() {
|
||||
return {
|
||||
isCollapse: false,
|
||||
activePath: '/home',
|
||||
form: {
|
||||
mallId: this.$store.state.mallId,
|
||||
mallName: this.$store.state.mallName,
|
||||
code: ''
|
||||
},
|
||||
version: '',
|
||||
vipType: ["体验会员", "月会员", "半年会员", "年会员", "多店通用年会员"]
|
||||
}
|
||||
},
|
||||
computed: {
|
||||
freeLogo: () => require("../assets/free.png"),
|
||||
getStateInfo() {
|
||||
if (this.$store.state.userInfo.flag == 0) {
|
||||
return '未激活';
|
||||
} else if (this.$store.state.userInfo.flag == 1) {
|
||||
if (this.$store.state.userInfo.type != 4) {
|
||||
return `(${this.$store.state.userInfo.mallName})` + this.vipType[this.$store.state.userInfo.type] + '(' + this.$store.state.userInfo.expireTime.substring(0, 10) + ')';
|
||||
} else {
|
||||
return this.vipType[this.$store.state.userInfo.type] + '(' + this.$store.state.userInfo.expireTime.substring(0, 10) + ')'
|
||||
}
|
||||
|
||||
} else {
|
||||
return '已过期';
|
||||
}
|
||||
export default {
|
||||
components: {AiPayment, LablesMember},
|
||||
data() {
|
||||
return {
|
||||
isCollapse: false,
|
||||
activePath: '/home',
|
||||
form: {
|
||||
mallId: this.$store.state.mallId,
|
||||
mallName: this.$store.state.mallName,
|
||||
code: ''
|
||||
},
|
||||
|
||||
...mapState(['mallName', 'mallList'])
|
||||
},
|
||||
|
||||
watch: {
|
||||
$route(v) {
|
||||
if (v.meta && v.meta.activeMenu) {
|
||||
this.activePath = v.meta.activeMenu
|
||||
version: '',
|
||||
vipType: ["体验会员", "月会员", "半年会员", "年会员", "多店通用年会员"]
|
||||
}
|
||||
},
|
||||
computed: {
|
||||
freeLogo: () => require("../assets/free.png"),
|
||||
getStateInfo() {
|
||||
if (this.$store.state.userInfo.flag == 0) {
|
||||
return '未激活';
|
||||
} else if (this.$store.state.userInfo.flag == 1) {
|
||||
if (this.$store.state.userInfo.type != 4) {
|
||||
return `(${this.$store.state.userInfo.mallName})` + this.vipType[this.$store.state.userInfo.type] + '(' + this.$store.state.userInfo.expireTime.substring(0, 10) + ')';
|
||||
} else {
|
||||
this.activePath = v.fullPath
|
||||
return this.vipType[this.$store.state.userInfo.type] + '(' + this.$store.state.userInfo.expireTime.substring(0, 10) + ')'
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
created() {
|
||||
const devVersion = require('../manifest.development.json').version
|
||||
const prodVersion = require('../manifest.production.json').version
|
||||
this.version = process.env.NODE_ENV === 'production' ? prodVersion : devVersion
|
||||
if (this.$route.meta && this.$route.meta.activeMenu) {
|
||||
this.activePath = this.$route.meta.activeMenu
|
||||
} else {
|
||||
this.activePath = this.$route.fullPath
|
||||
return '已过期';
|
||||
}
|
||||
// this.testGoodcang()
|
||||
},
|
||||
|
||||
methods: {
|
||||
...mapMutations(['setActiveDlgShow']),
|
||||
handleClick(e) {
|
||||
if (e === 'logout') {
|
||||
this.$store.dispatch('SignOut', false)
|
||||
} else if (e === 'pwd') {
|
||||
this.$router.push('changePwd')
|
||||
} else if (e === 'message') {
|
||||
this.$router.push('message')
|
||||
} else if (e === 'coin') {
|
||||
this.$router.push('coinFlow')
|
||||
...mapState(['mallName', 'mallList', 'userInfo']),
|
||||
isAdmin: v => ['18571466720'].includes(v.userInfo.phone),
|
||||
},
|
||||
|
||||
watch: {
|
||||
$route(v) {
|
||||
if (v.meta && v.meta.activeMenu) {
|
||||
this.activePath = v.meta.activeMenu
|
||||
} else {
|
||||
this.activePath = v.fullPath
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
created() {
|
||||
const devVersion = require('../manifest.development.json').version
|
||||
const prodVersion = require('../manifest.production.json').version
|
||||
this.version = process.env.NODE_ENV === 'production' ? prodVersion : devVersion
|
||||
if (this.$route.meta && this.$route.meta.activeMenu) {
|
||||
this.activePath = this.$route.meta.activeMenu
|
||||
} else {
|
||||
this.activePath = this.$route.fullPath
|
||||
}
|
||||
// this.testGoodcang()
|
||||
},
|
||||
|
||||
methods: {
|
||||
...mapMutations(['setActiveDlgShow']),
|
||||
handleClick(e) {
|
||||
if (e === 'logout') {
|
||||
this.$store.dispatch('SignOut', false)
|
||||
} else if (e === 'pwd') {
|
||||
this.$router.push('changePwd')
|
||||
} else if (e === 'message') {
|
||||
this.$router.push('message')
|
||||
} else if (e === 'coin') {
|
||||
this.$router.push('coinFlow')
|
||||
}
|
||||
},
|
||||
|
||||
openMember(index) {
|
||||
this.$refs.LablesMember.show(index)
|
||||
},
|
||||
|
||||
handleClose() {
|
||||
this.form.mallId = "";
|
||||
this.form.mallName = "";
|
||||
this.form.code = "";
|
||||
this.setActiveDlgShow(false)
|
||||
},
|
||||
toActive() {
|
||||
this.setActiveDlgShow(true)
|
||||
},
|
||||
getMessage(type) {
|
||||
return `你使用的是“${this.vipType[type]}”兑换券,确定兑换?`;
|
||||
},
|
||||
active() {
|
||||
this.$refs.form.validate((valid) => {
|
||||
if (valid) {
|
||||
this.$http.post(`/api/coupon/getDetail`, null, {
|
||||
params: {
|
||||
code: this.form.code
|
||||
}
|
||||
}).then(res => {
|
||||
if (res.code == 0) {
|
||||
let msg = this.getMessage(res.data.type);
|
||||
this.$confirm(msg, '温馨提示', {
|
||||
confirmButtonText: '确定',
|
||||
cancelButtonText: '取消',
|
||||
type: 'info'
|
||||
}).then(() => {
|
||||
this.$http.post(`/api/order/upgradeByCode`, null, {
|
||||
params: {
|
||||
...this.form
|
||||
}
|
||||
}).then(res => {
|
||||
if (res.code == 0) {
|
||||
this.$message.success('激活成功')
|
||||
this.$store.dispatch('getUserInfo')
|
||||
this.setActiveDlgShow(false)
|
||||
}
|
||||
})
|
||||
})
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
},
|
||||
|
||||
openMember(index) {
|
||||
this.$refs.LablesMember.show(index)
|
||||
},
|
||||
|
||||
handleClose() {
|
||||
this.form.mallId = "";
|
||||
this.form.mallName = "";
|
||||
this.form.code = "";
|
||||
this.setActiveDlgShow(false)
|
||||
},
|
||||
toActive() {
|
||||
this.setActiveDlgShow(true)
|
||||
},
|
||||
getMessage(type) {
|
||||
return `你使用的是“${this.vipType[type]}”兑换券,确定兑换?`;
|
||||
},
|
||||
active() {
|
||||
this.$refs.form.validate((valid) => {
|
||||
if (valid) {
|
||||
this.$http.post(`/api/coupon/getDetail`, null, {
|
||||
params: {
|
||||
code: this.form.code
|
||||
}
|
||||
}).then(res => {
|
||||
if (res.code == 0) {
|
||||
let msg = this.getMessage(res.data.type);
|
||||
this.$confirm(msg, '温馨提示', {
|
||||
confirmButtonText: '确定',
|
||||
cancelButtonText: '取消',
|
||||
type: 'info'
|
||||
}).then(() => {
|
||||
this.$http.post(`/api/order/upgradeByCode`, null, {
|
||||
params: {
|
||||
...this.form
|
||||
}
|
||||
}).then(res => {
|
||||
if (res.code == 0) {
|
||||
this.$message.success('激活成功')
|
||||
this.$store.dispatch('getUserInfo')
|
||||
this.setActiveDlgShow(false)
|
||||
}
|
||||
})
|
||||
})
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
})
|
||||
},
|
||||
sign() {
|
||||
this.$http.post(`/api/malluser/sign`).then(res => {
|
||||
if (res.code == 0) {
|
||||
this.$message.success('签到成功')
|
||||
this.$store.dispatch('getUserInfo')
|
||||
}
|
||||
})
|
||||
},
|
||||
async openFolder() {
|
||||
console.log(22)
|
||||
let fileList = []
|
||||
const res = await window.showDirectoryPicker({})
|
||||
const detalAction = async (obj) => {
|
||||
if (obj.entries) {
|
||||
const dirs = obj.entries()
|
||||
for await (const entry of dirs) {
|
||||
if (entry[1].entries) {
|
||||
detalAction(entry[1])
|
||||
} else {
|
||||
fileList.push({
|
||||
name: entry[0],
|
||||
path: obj.name,
|
||||
fileHandle: entry[1],
|
||||
file: await entry[1].getFile()
|
||||
})
|
||||
}
|
||||
})
|
||||
},
|
||||
sign() {
|
||||
this.$http.post(`/api/malluser/sign`).then(res => {
|
||||
if (res.code == 0) {
|
||||
this.$message.success('签到成功')
|
||||
this.$store.dispatch('getUserInfo')
|
||||
}
|
||||
})
|
||||
},
|
||||
async openFolder() {
|
||||
console.log(22)
|
||||
let fileList = []
|
||||
const res = await window.showDirectoryPicker({})
|
||||
const detalAction = async (obj) => {
|
||||
if (obj.entries) {
|
||||
const dirs = obj.entries()
|
||||
for await (const entry of dirs) {
|
||||
if (entry[1].entries) {
|
||||
detalAction(entry[1])
|
||||
} else {
|
||||
fileList.push({
|
||||
name: entry[0],
|
||||
path: obj.name,
|
||||
fileHandle: entry[1],
|
||||
file: await entry[1].getFile()
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
await detalAction(res);
|
||||
console.log("--fileList--", fileList)
|
||||
},
|
||||
gotoKefu() {
|
||||
window.open('https://work.weixin.qq.com/kfid/kfcaa4208f661131eba', '_blank')
|
||||
},
|
||||
closeSheinAlert() {
|
||||
this.$store.commit('setSheinAlertShow', false)
|
||||
},
|
||||
closeTemuAlert() {
|
||||
this.$store.commit('setTemuAlertShow', false)
|
||||
},
|
||||
getAliexpressGoodsList() {
|
||||
let url = "https://seller-acs.aliexpress.com/h5/mtop.global.merchant.self.product.manager.render.list/1.0/?jsv=2.7.2&appKey=30267743&t=1713978403051&sign=ba2bda69b4a2695c7279d4bc05f51741&v=1.0&timeout=15000&H5Request=true&url=mtop.global.merchant.self.product.manager.render.list&__channel-id__=701301&api=mtop.global.merchant.self.product.manager.render.list&type=originaljson&dataType=json&valueType=original&x-i18n-regionID=AE"
|
||||
url = url + "&data=" + encodeURIComponent(
|
||||
}
|
||||
await detalAction(res);
|
||||
console.log("--fileList--", fileList)
|
||||
},
|
||||
gotoKefu() {
|
||||
window.open('https://work.weixin.qq.com/kfid/kfcaa4208f661131eba', '_blank')
|
||||
},
|
||||
closeSheinAlert() {
|
||||
this.$store.commit('setSheinAlertShow', false)
|
||||
},
|
||||
closeTemuAlert() {
|
||||
this.$store.commit('setTemuAlertShow', false)
|
||||
},
|
||||
getAliexpressGoodsList() {
|
||||
let url = "https://seller-acs.aliexpress.com/h5/mtop.global.merchant.self.product.manager.render.list/1.0/?jsv=2.7.2&appKey=30267743&t=1713978403051&sign=ba2bda69b4a2695c7279d4bc05f51741&v=1.0&timeout=15000&H5Request=true&url=mtop.global.merchant.self.product.manager.render.list&__channel-id__=701301&api=mtop.global.merchant.self.product.manager.render.list&type=originaljson&dataType=json&valueType=original&x-i18n-regionID=AE"
|
||||
url = url + "&data=" + encodeURIComponent(
|
||||
JSON.stringify({
|
||||
"channelId": "701301",
|
||||
"jsonBody": JSON.stringify({
|
||||
@@ -443,34 +454,34 @@
|
||||
}
|
||||
}
|
||||
}),
|
||||
"from":"SELF",
|
||||
"bizParam":"{\"version\":\"simple\"}"
|
||||
"from": "SELF",
|
||||
"bizParam": "{\"version\":\"simple\"}"
|
||||
})
|
||||
)
|
||||
sendAliexpressAPIMessage({
|
||||
url: url
|
||||
}).then(res => {
|
||||
//console.log(res)
|
||||
})
|
||||
},
|
||||
testGoodcang() {
|
||||
sendGoodcangAPIMessage({
|
||||
url: "/api/v1/product/list",
|
||||
method: 'POST',
|
||||
data: {
|
||||
"page_index": 1,
|
||||
"page_size": 20,
|
||||
"product_status": 1
|
||||
}
|
||||
}).then(res => {
|
||||
console.log(res)
|
||||
})
|
||||
}
|
||||
)
|
||||
sendAliexpressAPIMessage({
|
||||
url: url
|
||||
}).then(res => {
|
||||
//console.log(res)
|
||||
})
|
||||
},
|
||||
mounted() {
|
||||
// this.getAliexpressGoodsList()
|
||||
testGoodcang() {
|
||||
sendGoodcangAPIMessage({
|
||||
url: "/api/v1/product/list",
|
||||
method: 'POST',
|
||||
data: {
|
||||
"page_index": 1,
|
||||
"page_size": 20,
|
||||
"product_status": 1
|
||||
}
|
||||
}).then(res => {
|
||||
console.log(res)
|
||||
})
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
// this.getAliexpressGoodsList()
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
|
||||
@@ -78,7 +78,7 @@ import CryptoJS from 'crypto-js'
|
||||
this.$refs.form.validate((valid) => {
|
||||
if (valid) {
|
||||
if (this.form.password != this.form.repassword) {
|
||||
this.$message.success('两次密码输入不一致');
|
||||
this.$message.error('两次密码输入不一致');
|
||||
return;
|
||||
}
|
||||
this.btnLoading = true
|
||||
|
||||
31
src/view/media/imageTranslate.vue
Normal file
31
src/view/media/imageTranslate.vue
Normal file
@@ -0,0 +1,31 @@
|
||||
<script>
|
||||
import AiDetail from "@/components/AiDetail.vue";
|
||||
|
||||
export default {
|
||||
name: "imageTranslate",
|
||||
components: {AiDetail},
|
||||
data() {
|
||||
return {
|
||||
form: {}
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<ai-detail class="imageTranslate">
|
||||
<ai-title slot="title" title="图片翻译" isShowBottomBorder/>
|
||||
<template #content>
|
||||
<el-form>
|
||||
|
||||
|
||||
|
||||
</el-form>
|
||||
</template>
|
||||
</ai-detail>
|
||||
</template>
|
||||
|
||||
<style scoped lang="scss">
|
||||
.imageTranslate {
|
||||
}
|
||||
</style>
|
||||
@@ -107,8 +107,19 @@
|
||||
:tableData="orderDataList"
|
||||
:col-configs="orderColConfig"
|
||||
height="700"
|
||||
:isShowPagination="false"
|
||||
:size="100"
|
||||
:current.sync="form.current"
|
||||
:size.sync="form.size"
|
||||
:total="orderTotal"
|
||||
@getList="getOrderList"
|
||||
style="margin-top: 8px;">
|
||||
<el-table-column slot="options" label="操作" align="center" fixed="right" width="140px">
|
||||
<template v-slot="{ row }">
|
||||
<div class="table-options">
|
||||
<el-button type="text" v-if="form.status == '1'" @click="toSend(row)">重新发货</el-button>
|
||||
</div>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</ai-table>
|
||||
</ai-card>
|
||||
<AiDialog
|
||||
@@ -197,6 +208,7 @@
|
||||
return {
|
||||
isShow: false,
|
||||
orderDataList: [],
|
||||
orderTotal: 0,
|
||||
colConfigs: [
|
||||
{ type: "selection", width: '70px', align: 'left' },
|
||||
{ slot: 'productName' },
|
||||
@@ -225,7 +237,9 @@
|
||||
],
|
||||
form: {
|
||||
warehouseId: 'XinCang',
|
||||
status: ''
|
||||
status: '',
|
||||
current: 1,
|
||||
size: 100
|
||||
},
|
||||
mallId: '',
|
||||
mallName: '',
|
||||
@@ -319,6 +333,7 @@
|
||||
}
|
||||
}).then(res => {
|
||||
this.orderDataList = res.data.records
|
||||
this.orderTotal = res.data.total
|
||||
})
|
||||
},
|
||||
handleClick (e) {
|
||||
@@ -516,6 +531,10 @@
|
||||
params['invoice[product_declared_value][]'] = ''
|
||||
params['invoice[product_weight][]'] = ''
|
||||
|
||||
if (obj.details[0].warehouseCode == 'UAXC002') {
|
||||
params.courier = 'USPS'
|
||||
}
|
||||
|
||||
for (let i = 0; i < obj.details.length; i++) {
|
||||
params[`platform_barcode[${obj.details[i].productId}]`] = ''
|
||||
params[`product_title_en[${obj.details[i].productId}]`] = obj.details[i].productTitleEn
|
||||
|
||||
@@ -1,7 +1,5 @@
|
||||
const path = require('path')
|
||||
const fs = require('fs')
|
||||
// const JavaScriptObfuscator = require('webpack-obfuscator')
|
||||
|
||||
// Generate pages object
|
||||
const pages = {}
|
||||
|
||||
@@ -22,11 +20,12 @@ chromeName.forEach((name) => {
|
||||
entry: `src/entry/${name}`, template: 'public/index.html', filename: `${fileName}.html`
|
||||
}
|
||||
})
|
||||
|
||||
const isDevMode = process.env.NODE_ENV === 'development'
|
||||
|
||||
module.exports = {
|
||||
pages, filenameHashing: false, chainWebpack: (config) => {
|
||||
pages,
|
||||
filenameHashing: false,
|
||||
chainWebpack: (config) => {
|
||||
config.plugin('copy').use(require('copy-webpack-plugin'), [{
|
||||
patterns: [{
|
||||
from: path.resolve(`src/manifest.${process.env.NODE_ENV}.json`), to: `${path.resolve('dist')}/manifest.json`
|
||||
@@ -34,21 +33,25 @@ module.exports = {
|
||||
from: path.resolve(`public/`), to: `${path.resolve('dist')}/`
|
||||
}]
|
||||
}])
|
||||
}, devServer: {
|
||||
port: 8080, open: true, overlay: {
|
||||
warnings: false, errors: true
|
||||
}, proxy: {
|
||||
},
|
||||
devServer: {
|
||||
port: 8080, open: true, hot: true,
|
||||
proxy: {
|
||||
'/api': {
|
||||
target: 'http://pdd.jjcp52.com', changeOrigin: true, ws: true, pathRewrite: {
|
||||
'^/api': '/'
|
||||
}
|
||||
}
|
||||
}
|
||||
}, lintOnSave: false, configureWebpack: {
|
||||
},
|
||||
lintOnSave: false,
|
||||
configureWebpack: {
|
||||
output: {
|
||||
filename: `[name].js`, chunkFilename: `[name].js`
|
||||
}, devtool: isDevMode ? 'inline-source-map' : false
|
||||
}, css: {
|
||||
},
|
||||
devtool: isDevMode ? 'inline-source-map' : false
|
||||
},
|
||||
css: {
|
||||
extract: false // Make sure the css is the same
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user