Merge remote-tracking branch 'origin/dev' into dev

# Conflicts:
#	src/views/goodsManage/productBasicInfo/productBasicAdd/productDetail.vue
#	src/views/goodsManage/productRelease/productDetail.vue
This commit is contained in:
cabbage 2025-04-07 16:19:38 +08:00
commit cb6ec60ad3
8 changed files with 2364 additions and 2046 deletions

View File

@ -7,14 +7,14 @@
<template> <template>
<div class="topbox"> <div class="topbox">
<div <div
class="levelList_i"
:class="tabActive == item.path ? 'act' : ''"
v-for="(item, index) in topList" v-for="(item, index) in topList"
:key="index" :key="index"
@click.prevent="handleLink(item)" class="levelList_i"
:class="tabActive == item.path ? 'act' : ''"
:style=" :style="
waitApprovalNum || receiveApprovalNum ? { marginTop: '12px' } : {} waitApprovalNum || receiveApprovalNum ? { marginTop: '12px' } : {}
" "
@click.prevent="handleLink(item)"
> >
{{ item.name }} {{ item.name }}
<span v-if="waitApprovalNum && item.name == '代办'" class="badge">{{ <span v-if="waitApprovalNum && item.name == '代办'" class="badge">{{
@ -23,8 +23,7 @@
<span <span
v-if="receiveApprovalNum && item.name == '抄送查阅/操作'" v-if="receiveApprovalNum && item.name == '抄送查阅/操作'"
class="badge" class="badge"
>{{ receiveApprovalNum }}</span >{{ receiveApprovalNum }}</span>
>
<!-- <i <!-- <i
v-show="isMouse == item.path && isMouse != tabActive" v-show="isMouse == item.path && isMouse != tabActive"
@click.prevent="delItem(item.path)" @click.prevent="delItem(item.path)"
@ -37,35 +36,35 @@
<script> <script>
export default { export default {
name: "topBar", name: 'TopBar',
props: { props: {
topList: { topList: {
type: Array, type: Array
}, },
moren: { moren: {
type: String, type: String
}, },
waitApprovalNum: { waitApprovalNum: {
type: Number, type: Number
}, },
receiveApprovalNum: { receiveApprovalNum: {
type: Number, type: Number
}, }
}, },
data() { data() {
return { return {
tabActive: this.moren, tabActive: this.moren
}; }
}, },
methods: { methods: {
handleLink(item) { handleLink(item) {
this.tabActive = item.path; this.tabActive = item.path
this.$router.push({ this.$router.push({
path: item.path, path: item.path
}); })
}, }
}, }
}; }
</script> </script>
<style scoped lang="scss"> <style scoped lang="scss">

File diff suppressed because it is too large Load Diff

View File

@ -7,8 +7,8 @@
<el-col :span="4"> <el-col :span="4">
<el-form-item :label="'业务名称'" prop="type"> <el-form-item :label="'业务名称'" prop="type">
<el-autocomplete <el-autocomplete
class="inline-input"
v-model="queryParams.typeName" v-model="queryParams.typeName"
class="inline-input"
:fetch-suggestions="querySearch" :fetch-suggestions="querySearch"
placeholder="请输入内容或选择" placeholder="请输入内容或选择"
@select="handleSelect" @select="handleSelect"
@ -21,11 +21,9 @@
</el-col> </el-col>
<el-col :span="4"> <el-col :span="4">
<el-button class="my_search" @click="getHandelWorkList()"> <el-button class="my_search" @click="getHandelWorkList()">
{{ '搜索' }}</el-button {{ '搜索' }}</el-button>
>
<el-button class="my_reset" @click="reChongzhi"> <el-button class="my_reset" @click="reChongzhi">
{{ '重置' }}</el-button {{ '重置' }}</el-button>
>
</el-col> </el-col>
</el-row> </el-row>
</el-form> </el-form>
@ -36,14 +34,14 @@
<el-button class="thebtn1" @click="adddate()">{{ <el-button class="thebtn1" @click="adddate()">{{
'添加' '添加'
}}</el-button> }}</el-button>
<el-button @click="handleExport" class="thebtn2"> {{ '导出' }}</el-button> <el-button class="thebtn2" @click="handleExport"> {{ '导出' }}</el-button>
</div> </div>
</div> </div>
<div class="maintable"> <div class="maintable">
<el-table <el-table
ref="table1" ref="table1"
height="700px"
v-loading="loading" v-loading="loading"
height="700px"
style="width: 100%" style="width: 100%"
:header-cell-style="{ background: '#EEEEEE' }" :header-cell-style="{ background: '#EEEEEE' }"
:row-class-name="tableRowClassName" :row-class-name="tableRowClassName"
@ -163,6 +161,7 @@
v-model="form.type" v-model="form.type"
clearable clearable
:placeholder="'请选择'" :placeholder="'请选择'"
filterable
> >
<el-option <el-option
v-for="item in approbalBusinessList" v-for="item in approbalBusinessList"
@ -223,7 +222,7 @@
circle circle
icon="el-icon-plus" icon="el-icon-plus"
@click="addList(i)" @click="addList(i)"
/></el-col> /></el-col>
</el-form> </el-form>
<span slot="footer" class="dialog-footer"> <span slot="footer" class="dialog-footer">
<el-button class="cancels" @click="handleClose">{{ <el-button class="cancels" @click="handleClose">{{
@ -238,7 +237,7 @@
</template> </template>
<script> <script>
import topBar from "@/components/topBar"; import topBar from '@/components/topBar'
import { import {
getApprobalBusiness, getApprobalBusiness,
getPubEnumsAccount, getPubEnumsAccount,
@ -246,203 +245,203 @@ import {
deletHandelWork, deletHandelWork,
getOneHandelWorkList, getOneHandelWorkList,
saveHandleWork, saveHandleWork,
updateHandleWork, updateHandleWork
} from "@/api/businesshandling"; } from '@/api/businesshandling'
export default { export default {
name: "Ywblsxf", name: 'Ywblsxf',
components: { components: {
topBar, topBar
}, },
data() { data() {
return { return {
moren: "ywblsxf", moren: 'ywblsxf',
topList: [ topList: [
{ {
name: '业务办理手续费', name: '业务办理手续费',
path: "ywblsxf", path: 'ywblsxf'
}, }
], ],
tableData: [], tableData: [],
loading:false, loading: false,
multipleSelection: [], multipleSelection: [],
total: 0, total: 0,
queryParams: { queryParams: {
pageNum: 1, pageNum: 1,
pageSize: 50, pageSize: 50,
type: "", // type: '' //
}, },
updateShow: false, updateShow: false,
addOrEdit: "", // true false addOrEdit: '', // true false
updateTitle: "", updateTitle: '',
form: { form: {
type: "", // type: '', //
// handleCount: "", // // handleCount: "", //
pkAccount: "", // pkAccount: '', //
serviceChargeDetailsList: [ serviceChargeDetailsList: [
{ {
quantity: "", quantity: '',
cost: "", cost: ''
}, }
], ]
}, },
rules: { rules: {
type: [ type: [
{ {
required: true, required: true,
message: '请选择业务', message: '请选择业务',
trigger: "change", trigger: 'change'
}, }
], ],
pkAccount: [ pkAccount: [
{ {
required: true, required: true,
message: '请选择币种', message: '请选择币种',
trigger: "change", trigger: 'change'
}, }
], ]
}, },
approbalBusinessList: [], approbalBusinessList: [],
pubEnumsAccountList: [], pubEnumsAccountList: []
}; }
}, },
created() { created() {
this.getHandelWorkList(); this.getHandelWorkList()
this.getApprobalBusiness(); this.getApprobalBusiness()
this.getPubEnumsAccount(); this.getPubEnumsAccount()
}, },
methods: { methods: {
// //
querySearch(queryString, cb) { querySearch(queryString, cb) {
var restaurants = this.approbalBusinessList; var restaurants = this.approbalBusinessList
var results = queryString var results = queryString
? restaurants.filter(this.createFilter(queryString)) ? restaurants.filter(this.createFilter(queryString))
: restaurants; : restaurants
// callback // callback
cb(results); cb(results)
}, },
createFilter(queryString) { createFilter(queryString) {
return (restaurant) => { return (restaurant) => {
return ( return (
restaurant.label.toLowerCase().indexOf(queryString.toLowerCase()) === restaurant.label.toLowerCase().indexOf(queryString.toLowerCase()) ===
0 0
); )
}; }
}, },
handleSelect(item) { handleSelect(item) {
this.queryParams.type = item.value; this.queryParams.type = item.value
this.queryParams.typeName = item.label this.queryParams.typeName = item.label
}, },
changeQuantity(item, i) { changeQuantity(item, i) {
item.quantity = i + 1; item.quantity = i + 1
}, },
addList(i) { addList(i) {
this.form.serviceChargeDetailsList.push({ this.form.serviceChargeDetailsList.push({
quantity: "", quantity: '',
cost: "", cost: ''
}); })
}, },
getApprobalBusiness() { getApprobalBusiness() {
// //
getApprobalBusiness().then((res) => { getApprobalBusiness().then((res) => {
this.approbalBusinessList = res.data; this.approbalBusinessList = res.data
}); })
}, },
getPubEnumsAccount() { getPubEnumsAccount() {
// //
getPubEnumsAccount().then((res) => { getPubEnumsAccount().then((res) => {
this.pubEnumsAccountList = res.rows; this.pubEnumsAccountList = res.rows
}); })
}, },
// //
onSubmit(formName) { onSubmit(formName) {
this.$refs[formName].validate((valid) => { this.$refs[formName].validate((valid) => {
if (valid) { if (valid) {
let url = ""; let url = ''
if (this.addOrEdit == true) { if (this.addOrEdit == true) {
url = saveHandleWork; url = saveHandleWork
} else { } else {
url = updateHandleWork; url = updateHandleWork
} }
url(this.form).then((res) => { url(this.form).then((res) => {
if (res.code == 200) { if (res.code == 200) {
this.updateShow = false; this.updateShow = false
this.$message({ this.$message({
message: res.msg, message: res.msg,
type: "success", type: 'success'
}); })
this.getHandelWorkList(); this.getHandelWorkList()
} }
}); })
} }
}); })
}, },
// //
reChongzhi() { reChongzhi() {
this.queryParams.type = ""; this.queryParams.type = ''
this.queryParams.typeName = "" this.queryParams.typeName = ''
this.getHandelWorkList(); this.getHandelWorkList()
}, },
// //
adddate() { adddate() {
this.updateShow = true; this.updateShow = true
this.updateTitle = '添加'; this.updateTitle = '添加'
this.addOrEdit = true; this.addOrEdit = true
this.form.pkId = null; this.form.pkId = null
this.form = { this.form = {
type: "", // type: '', //
// handleCount: "", // // handleCount: "", //
pkAccount: "", // pkAccount: '', //
serviceChargeDetailsList: [ serviceChargeDetailsList: [
{ {
quantity: "", quantity: '',
cost: "", cost: ''
}, }
], ]
}; }
}, },
// //
update(row) { update(row) {
this.updateTitle = '修改'; this.updateTitle = '修改'
this.updateShow = true; this.updateShow = true
this.addOrEdit = false; this.addOrEdit = false
getOneHandelWorkList(row.pkId).then((res) => { getOneHandelWorkList(row.pkId).then((res) => {
this.form = res.data; this.form = res.data
}); })
}, },
// //
deleteRow(row) { deleteRow(row) {
this.$confirm('确认删除?', '提示', { this.$confirm('确认删除?', '提示', {
confirmButtonText: '确定', confirmButtonText: '确定',
cancelButtonText: '取消', cancelButtonText: '取消',
type: "warning", type: 'warning'
}).then(() => { }).then(() => {
deletHandelWork(row.pkId).then((res) => { deletHandelWork(row.pkId).then((res) => {
if (res.code == 200) { if (res.code == 200) {
this.$message({ this.$message({
message: res.msg, message: res.msg,
type: "success", type: 'success'
}); })
this.getHandelWorkList(); this.getHandelWorkList()
} }
}); })
}); })
}, },
// //
getHandelWorkList() { getHandelWorkList() {
this.loading = true this.loading = true
getHandelWorkList(this.queryParams).then((res) => { getHandelWorkList(this.queryParams).then((res) => {
this.tableData = res.rows; this.tableData = res.rows
this.total = res.total; this.total = res.total
this.loading = false this.loading = false
}); })
}, },
/** 导出按钮操作 */ /** 导出按钮操作 */
handleExport() { handleExport() {
this.$confirm( '是否确认导出所有数据项?', '警告', { this.$confirm('是否确认导出所有数据项?', '警告', {
confirmButtonText: '确定', confirmButtonText: '确定',
cancelButtonText: '取消', cancelButtonText: '取消',
type: 'warning', type: 'warning'
}).then((_) => { }).then((_) => {
this.download( this.download(
'system/manage/service-charge/export', 'system/manage/service-charge/export',
@ -452,23 +451,23 @@ export default {
}) })
}, },
handleClose() { handleClose() {
this.updateShow = false; this.updateShow = false
this.$refs["form"].clearValidate(); this.$refs['form'].clearValidate()
this.$refs["form"].resetFields(); this.$refs['form'].resetFields()
}, },
handleSelectionChange(val) { handleSelectionChange(val) {
this.multipleSelection = val; this.multipleSelection = val
}, },
tableRowClassName({ row, rowIndex }) { tableRowClassName({ row, rowIndex }) {
if (rowIndex % 2 == 1) { if (rowIndex % 2 == 1) {
return "warning-row"; return 'warning-row'
} else if (rowIndex % 2 == 0) { } else if (rowIndex % 2 == 0) {
return "success-row"; return 'success-row'
} }
return ""; return ''
}, }
}, }
}; }
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>

View File

@ -8,52 +8,49 @@
<div class="page"> <div class="page">
<topBar <topBar
v-if="topList.length > 0" v-if="topList.length > 0"
:topList="topList" :top-list="topList"
:moren="moren" :moren="moren"
></topBar> />
<div class="main"> <div class="main">
<div class="maintop"> <div class="maintop">
<div class="mainbtn"> <div class="mainbtn">
<el-button size="mini" @click="openDig" class="thebtn1" <el-button
>{{'添加'}}</el-button size="mini"
> class="thebtn1"
@click="openDig"
>{{ '添加' }}</el-button>
<el-button size="mini" class="thebtn2" @click="handleExport"> {{ '导出' }}</el-button> <el-button size="mini" class="thebtn2" @click="handleExport"> {{ '导出' }}</el-button>
</div> </div>
</div> </div>
<div class="maintable"> <div class="maintable">
<el-table <el-table
:data="tableData"
v-loading="loading" v-loading="loading"
:data="tableData"
height="760px" height="760px"
style="width: 100%" style="width: 100%"
:header-cell-style="{ background: '#EEEEEE' }" :header-cell-style="{ background: '#EEEEEE' }"
:row-class-name="tableRowClassName" :row-class-name="tableRowClassName"
@selection-change="handleSelectionChange" @selection-change="handleSelectionChange"
> >
<el-table-column type="selection" width="55"> </el-table-column> <el-table-column type="selection" width="55" />
<el-table-column align="center" prop="sort" label="显示顺序"> <el-table-column align="center" prop="sort" label="显示顺序" />
</el-table-column>
<el-table-column align="center" prop="backgroundImg" :label="'背景图'"> <el-table-column align="center" prop="backgroundImg" :label="'背景图'">
<template slot-scope="scope"> <template slot-scope="scope">
<img class="bgImg" :src="scope.row.backgroundImg" alt="" /> <img class="bgImg" :src="scope.row.backgroundImg" alt="">
</template> </template>
</el-table-column> </el-table-column>
<el-table-column align="center" prop="pkCountry" :label="'国家'"> <el-table-column align="center" prop="pkCountry" :label="'国家'">
<template slot-scope="scope"> <template slot-scope="scope">
<div class="tem"> <div class="tem">
<img :src="scope.row.nationalFlag2" alt="" /> <img :src="scope.row.nationalFlag2" alt="">
<!-- <div>{{ scope.row.pkCountryName }}</div> --> <!-- <div>{{ scope.row.pkCountryName }}</div> -->
</div> </div>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column align="center" prop="accountName" label="账户名称"> <el-table-column align="center" prop="accountName" label="账户名称" />
</el-table-column> <el-table-column align="center" prop="fieldValueVal" label="账户属性" />
<el-table-column align="center" prop="fieldValueVal" label="账户属性"> <el-table-column align="center" prop="accountFame" label="转化币种" />
</el-table-column> <el-table-column align="center" prop="showStatusVal" label="显示隐藏" />
<el-table-column align="center" prop="accountFame" label="转化币种">
</el-table-column>
<el-table-column align="center" prop="showStatusVal" label="显示隐藏">
</el-table-column>
<el-table-column align="center" prop="isRegular" label="固定"> <el-table-column align="center" prop="isRegular" label="固定">
<template slot-scope="scope"> <template slot-scope="scope">
<div :class="scope.row.isRegular ? 'isRed' : 'isGreen'"> <div :class="scope.row.isRegular ? 'isRed' : 'isGreen'">
@ -94,22 +91,19 @@
prop="onLineRechargeVal" prop="onLineRechargeVal"
label="是否在线充值" label="是否在线充值"
width="150" width="150"
> />
</el-table-column>
<el-table-column <el-table-column
align="center" align="center"
prop="effectiveDate" prop="effectiveDate"
:label="'生效日期'" :label="'生效日期'"
width="150" width="150"
> />
</el-table-column>
<el-table-column <el-table-column
align="center" align="center"
prop="creationTime" prop="creationTime"
:label="'创建日期'" :label="'创建日期'"
width="150" width="150"
> />
</el-table-column>
<el-table-column <el-table-column
align="center" align="center"
prop="time" prop="time"
@ -118,12 +112,12 @@
> >
<template slot-scope="scope"> <template slot-scope="scope">
<el-button <el-button
@click="toFixed(scope.row.pkId)"
type="text" type="text"
size="small" size="small"
style="color: #6962f6" style="color: #6962f6"
@click="toFixed(scope.row.pkId)"
> >
{{'修改'}} {{ '修改' }}
</el-button> </el-button>
<!-- <el-button <!-- <el-button
@click="handleDelete(scope.row.pkId)" @click="handleDelete(scope.row.pkId)"
@ -157,116 +151,116 @@
<el-col :span="10"> <el-col :span="10">
<el-form-item label="账户名称" prop="accountName"> <el-form-item label="账户名称" prop="accountName">
<el-input <el-input
clearable
v-model="form.accountName" v-model="form.accountName"
clearable
placeholder="请输入账户名称" placeholder="请输入账户名称"
></el-input> />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="10" style="margin-left: 70px"> <el-col :span="10" style="margin-left: 70px">
<el-form-item label="账户属性" prop="fieldValue"> <el-form-item label="账户属性" prop="fieldValue">
<el-select clearable v-model="form.fieldValue"> <el-select v-model="form.fieldValue" clearable>
<el-option <el-option
v-for="item in pubEnumsAccountList" v-for="item in pubEnumsAccountList"
:key="item.value" :key="item.value"
:label="item.label" :label="item.label"
:value="item.value" :value="item.value"
></el-option> />
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="10"> <el-col :span="10">
<el-form-item label="显示顺序" prop="sort"> <el-form-item label="显示顺序" prop="sort">
<el-input <el-input
clearable
v-model="form.sort" v-model="form.sort"
clearable
placeholder="请输入显示顺序" placeholder="请输入显示顺序"
></el-input> />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="10" style="margin-left: 70px"> <el-col :span="10" style="margin-left: 70px">
<el-form-item label="币种转化" prop="pkBdAccount"> <el-form-item label="币种转化" prop="pkBdAccount">
<el-select clearable v-model="form.pkBdAccount"> <el-select v-model="form.pkBdAccount" clearable>
<el-option <el-option
v-for="item in pkBdAccountList" v-for="item in pkBdAccountList"
:key="item.pkId" :key="item.pkId"
:label="item.accountName" :label="item.accountName"
:value="item.pkId" :value="item.pkId"
></el-option> />
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="10"> <el-col :span="10">
<el-form-item label="固定" prop="isRegular"> <el-form-item label="固定" prop="isRegular">
<el-select clearable v-model="form.isRegular"> <el-select v-model="form.isRegular" clearable>
<el-option <el-option
v-for="item in agreeList" v-for="item in agreeList"
:key="item.val" :key="item.val"
:label="item.text" :label="item.text"
:value="item.val" :value="item.val"
></el-option> />
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="10" style="margin-left: 70px"> <el-col :span="10" style="margin-left: 70px">
<el-form-item :label="'邮费'" prop="isPostage"> <el-form-item :label="'邮费'" prop="isPostage">
<el-select clearable v-model="form.isPostage"> <el-select v-model="form.isPostage" clearable>
<el-option <el-option
v-for="item in agreeList" v-for="item in agreeList"
:key="item.val" :key="item.val"
:label="item.text" :label="item.text"
:value="item.val" :value="item.val"
></el-option> />
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="10"> <el-col :span="10">
<el-form-item label="转账" prop="isTransfer"> <el-form-item label="转账" prop="isTransfer">
<el-select clearable v-model="form.isTransfer"> <el-select v-model="form.isTransfer" clearable>
<el-option <el-option
v-for="item in agreeList" v-for="item in agreeList"
:key="item.val" :key="item.val"
:label="item.text" :label="item.text"
:value="item.val" :value="item.val"
></el-option> />
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="10" style="margin-left: 70px"> <el-col :span="10" style="margin-left: 70px">
<el-form-item label="提现" prop="isWithdrawal"> <el-form-item label="提现" prop="isWithdrawal">
<el-select clearable v-model="form.isWithdrawal"> <el-select v-model="form.isWithdrawal" clearable>
<el-option <el-option
v-for="item in agreeList" v-for="item in agreeList"
:key="item.val" :key="item.val"
:label="item.text" :label="item.text"
:value="item.val" :value="item.val"
></el-option> />
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="10"> <el-col :span="10">
<el-form-item :label="'充值'" prop="isRecharge"> <el-form-item :label="'充值'" prop="isRecharge">
<el-select clearable v-model="form.isRecharge"> <el-select v-model="form.isRecharge" clearable>
<el-option <el-option
v-for="item in agreeList" v-for="item in agreeList"
:key="item.val" :key="item.val"
:label="item.text" :label="item.text"
:value="item.val" :value="item.val"
></el-option> />
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="10" style="margin-left: 70px"> <el-col :span="10" style="margin-left: 70px">
<el-form-item label="是否在线充值" prop="onLineRecharge"> <el-form-item label="是否在线充值" prop="onLineRecharge">
<el-select clearable v-model="form.onLineRecharge"> <el-select v-model="form.onLineRecharge" clearable>
<el-option <el-option
v-for="item in yesornoList" v-for="item in yesornoList"
:key="item.value" :key="item.value"
:label="item.label" :label="item.label"
:value="item.value" :value="item.value"
></el-option> />
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -282,65 +276,63 @@
type="datetime" type="datetime"
value-format="yyyy-MM-dd HH:mm:ss" value-format="yyyy-MM-dd HH:mm:ss"
:placeholder="'请选择'" :placeholder="'请选择'"
> />
</el-date-picker>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="10" style="margin-left: 70px"> <el-col :span="10" style="margin-left: 70px">
<el-form-item label="是否显示" prop="showStatus"> <el-form-item label="是否显示" prop="showStatus">
<el-select clearable v-model="form.showStatus"> <el-select v-model="form.showStatus" clearable>
<el-option <el-option
v-for="item in yesornoList" v-for="item in yesornoList"
:key="item.value" :key="item.value"
:label="item.label" :label="item.label"
:value="item.value" :value="item.value"
></el-option> />
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
</el-form> </el-form>
<span slot="footer" class="dialog-footer"> <span slot="footer" class="dialog-footer">
<el-button class="cancels" @click="handleClose">{{'取消'}}</el-button> <el-button class="cancels" @click="handleClose">{{ '取消' }}</el-button>
<el-button <el-button
style="margin-left: 40px" style="margin-left: 40px"
class="submit" class="submit"
@click="onSubmit('form')" @click="onSubmit('form')"
>{{'确认'}}</el-button >{{ '确认' }}</el-button>
>
</span> </span>
</el-dialog> </el-dialog>
</div> </div>
</template> </template>
<script> <script>
import topBar from "@/components/topBar"; import topBar from '@/components/topBar'
import * as api from "@/api/configManage.js"; import * as api from '@/api/configManage.js'
import { import {
accountSave, accountSave,
accountUpdate, accountUpdate,
getpkBdAccountList, getpkBdAccountList,
getPubEnumsAccount, getPubEnumsAccount
} from "@/api/configManage"; } from '@/api/configManage'
import { userCountryList } from "@/api/user"; import { userCountryList } from '@/api/user'
import * as del from "@/api/delivery.js"; import * as del from '@/api/delivery.js'
import { getToken } from "@/utils/auth"; import { getToken } from '@/utils/auth'
import ImageUpload from "@/components/ImageUpload"; import ImageUpload from '@/components/ImageUpload'
export default { export default {
name: "Bzpz", name: 'Bzpz',
components: { components: {
topBar, topBar,
ImageUpload, ImageUpload
}, },
filters: { filters: {
isAgree(val,that) { isAgree(val, that) {
if (!val) { if (!val) {
return that.$t('ENU_POPUP_TYPE_1'); return that.$t('ENU_POPUP_TYPE_1')
} else { } else {
return that.$t('ENU_POPUP_TYPE_2'); return that.$t('ENU_POPUP_TYPE_2')
} }
}, }
}, },
data() { data() {
return { return {
@ -350,234 +342,234 @@ export default {
// //
queryParams: { queryParams: {
pageNum: 1, pageNum: 1,
pageSize: 50, pageSize: 50
}, },
addOrEdit: "", addOrEdit: '',
total: 0, total: 0,
showImg: true, // showImg: true, //
noneUploadImg: false, // noneUploadImg: false, //
openImg: false, openImg: false,
openImgUrl: "", openImgUrl: '',
uploadImgUrl: process.env.VUE_APP_BASE_API + "/system/upload", uploadImgUrl: process.env.VUE_APP_BASE_API + '/system/upload',
headers: { headers: {
Authorization: getToken(), Authorization: getToken()
}, },
dialogVisible: false, dialogVisible: false,
tableData: [], tableData: [],
loading:false, loading: false,
countryList: [], countryList: [],
agreeList: [ agreeList: [
{ {
text: '允许', text: '允许',
val: 0, val: 0
}, },
{ {
text: '禁止', text: '禁止',
val: 1, val: 1
}, }
], ],
moren: "bzpz", moren: 'bzpz',
topList: [ topList: [
{ {
name: '币种配置', name: '币种配置',
path: "bzpz", path: 'bzpz'
}, },
{ {
name: '消费配置', name: '消费配置',
path: "xfpz", path: 'xfpz'
}, },
{ {
name: '转账配置', name: '转账配置',
path: "zzpz", path: 'zzpz'
}, },
{ {
name: '提现配置', name: '提现配置',
path: "txpz", path: 'txpz'
}, },
{ {
name: '提现个税', name: '提现个税',
path: "txgs", path: 'txgs'
}, },
{ {
name: '提现手续费', name: '提现手续费',
path: "txsxf", path: 'txsxf'
}, },
{ {
name: '特殊消费', name: '特殊消费',
path: "specialMoney", path: 'specialMoney'
}, }
], ],
pkBdAccountList: [], pkBdAccountList: [],
form: { form: {
pkCountry: "", pkCountry: '',
accountName: "", accountName: '',
sort: "", sort: '',
pkBdAccount: 0, pkBdAccount: 0,
isRegular: 0, isRegular: 0,
isPostage: 0, isPostage: 0,
isTransfer: 0, isTransfer: 0,
isWithdrawal: 0, isWithdrawal: 0,
isRecharge: 0, isRecharge: 0,
backgroundImg: "", backgroundImg: '',
effectiveDate: "", effectiveDate: '',
fieldValue: "", fieldValue: '',
onLineRecharge:1, onLineRecharge: 1,
showStatus:0 showStatus: 0
}, },
rules: { rules: {
pkCountry: [ pkCountry: [
{ required: true, message: "请选择国家名称", trigger: "change" }, { required: true, message: '请选择国家名称', trigger: 'change' }
], ],
accountName: [ accountName: [
{ required: true, message: "请输入账户名称", trigger: "blur" }, { required: true, message: '请输入账户名称', trigger: 'blur' }
], ],
sort: [{ required: true, message: "请输入显示顺序", trigger: "blur" }], sort: [{ required: true, message: '请输入显示顺序', trigger: 'blur' }],
// pkBdAccount: [ // pkBdAccount: [
// { required: true, message: "", trigger: "change" }, // { required: true, message: "", trigger: "change" },
// ], // ],
fieldValue: [ fieldValue: [
{ required: true, message: "请选择账户属性", trigger: "change" }, { required: true, message: '请选择账户属性', trigger: 'change' }
], ],
isRegular: [ isRegular: [
{ required: true, message: "请选择固定", trigger: "change" }, { required: true, message: '请选择固定', trigger: 'change' }
], ],
isPostage: [ isPostage: [
{ required: true, message: "请选择邮费", trigger: "change" }, { required: true, message: '请选择邮费', trigger: 'change' }
], ],
isTransfer: [ isTransfer: [
{ required: true, message: "请选择转账", trigger: "change" }, { required: true, message: '请选择转账', trigger: 'change' }
], ],
isWithdrawal: [ isWithdrawal: [
{ required: true, message: "请选择提现", trigger: "change" }, { required: true, message: '请选择提现', trigger: 'change' }
], ],
isRecharge: [ isRecharge: [
{ required: true, message: "请选择充值", trigger: "change" }, { required: true, message: '请选择充值', trigger: 'change' }
], ],
onLineRecharge: [ onLineRecharge: [
{ required: true, message: "请选择是否在线充值", trigger: "change" }, { required: true, message: '请选择是否在线充值', trigger: 'change' }
], ],
backgroundImg: [ backgroundImg: [
{ required: true, message: "请上传封面", trigger: "change" }, { required: true, message: '请上传封面', trigger: 'change' }
], ],
effectiveDate: [ effectiveDate: [
{ required: true, message: '请选择生效时间', trigger: "change" }, { required: true, message: '请选择生效时间', trigger: 'change' }
],
showStatus:[
{ required: true, message: '请选择', trigger: "change" },
], ],
showStatus: [
{ required: true, message: '请选择', trigger: 'change' }
]
}, },
pubEnumsAccountList: [], pubEnumsAccountList: [],
dialogTitle: "", dialogTitle: '',
yesornoList: [], // yesornoList: [] //
}; }
}, },
mounted() { mounted() {
// userCountryList // userCountryList
this.getCountry(); this.getCountry()
// //
this.getDataList(); this.getDataList()
// //
this.getpkBdAccountList(); this.getpkBdAccountList()
//- // -
this.getPubEnumsAccount(); this.getPubEnumsAccount()
}, },
methods: { methods: {
/** 导出按钮操作 */ /** 导出按钮操作 */
handleExport() { handleExport() {
this.$confirm( '是否确认导出所有数据项?', '警告', { this.$confirm('是否确认导出所有数据项?', '警告', {
confirmButtonText: '确定', confirmButtonText: '确定',
cancelButtonText: '取消', cancelButtonText: '取消',
type: 'warning', type: 'warning'
}).then((_) => { }).then((_) => {
this.download( this.download(
'/system/manage/account/export', '/system/manage/account/export',
{...this.queryParams}, { ...this.queryParams },
`消费明细${new Date().getTime()}.xlsx` `消费明细${new Date().getTime()}.xlsx`
) )
}) })
}, },
getPubEnumsAccount() { getPubEnumsAccount() {
getPubEnumsAccount().then((res) => { getPubEnumsAccount().then((res) => {
this.pubEnumsAccountList = res.data; this.pubEnumsAccountList = res.data
}); })
// //
del.getDealerYesNo().then((res) => { del.getDealerYesNo().then((res) => {
this.yesornoList = res.data; this.yesornoList = res.data
}); })
}, },
getpkBdAccountList() { getpkBdAccountList() {
getpkBdAccountList().then((res) => { getpkBdAccountList().then((res) => {
this.pkBdAccountList = res.rows; this.pkBdAccountList = res.rows
}); })
}, },
// //
changeActive() { changeActive() {
this.isActive = !this.isActive; this.isActive = !this.isActive
}, },
// //
toFixed(id) { toFixed(id) {
this.dialogTitle = '修改'; this.dialogTitle = '修改'
this.addOrEdit = false; this.addOrEdit = false
this.dialogVisible = true; this.dialogVisible = true
api.getAccount(id).then((res) => { api.getAccount(id).then((res) => {
this.form = res.data; this.form = res.data
}); })
}, },
// //
handleDelete(id) { handleDelete(id) {
this.$confirm('确认删除?', '提示', { this.$confirm('确认删除?', '提示', {
confirmButtonText: '确定', confirmButtonText: '确定',
cancelButtonText: '取消', cancelButtonText: '取消',
type: "warning", type: 'warning'
}).then(() => { }).then(() => {
api.delAccount(id).then((res) => { api.delAccount(id).then((res) => {
// //
this.getDataList(); this.getDataList()
}); })
}); })
}, },
onSubmit(formName) { onSubmit(formName) {
this.$refs[formName].validate((valid) => { this.$refs[formName].validate((valid) => {
if (valid) { if (valid) {
let url = ""; let url = ''
if (this.addOrEdit == true) { if (this.addOrEdit == true) {
url = accountSave; url = accountSave
} else { } else {
url = accountUpdate; url = accountUpdate
} }
url(this.form).then((res) => { url(this.form).then((res) => {
if (res.code == 200) { if (res.code == 200) {
this.$message({ this.$message({
message: res.msg, message: res.msg,
type: "success", type: 'success'
}); })
this.dialogVisible = false; this.dialogVisible = false
// //
this.$refs[formName].resetFields(); this.$refs[formName].resetFields()
// //
this.getDataList(); this.getDataList()
this.dialogTitle = ""; this.dialogTitle = ''
} }
}); })
} else { } else {
return false; return false
} }
}); })
}, },
handleClose() { handleClose() {
this.dialogVisible = false; this.dialogVisible = false
this.$refs["form"].clearValidate(); this.$refs['form'].clearValidate()
this.$refs["form"].resetFields(); this.$refs['form'].resetFields()
}, },
openDig() { openDig() {
this.dialogVisible = true; this.dialogVisible = true
this.addOrEdit = true; this.addOrEdit = true
this.dialogTitle = '添加'; this.dialogTitle = '添加'
}, },
getCountry() { getCountry() {
userCountryList().then((res) => { userCountryList().then((res) => {
this.countryList = res.data; this.countryList = res.data
}); })
}, },
getDataList() { getDataList() {
this.loading = true this.loading = true
@ -585,46 +577,46 @@ export default {
res.rows.forEach((item) => { res.rows.forEach((item) => {
this.countryList.forEach((child) => { this.countryList.forEach((child) => {
if (item.pkCountry == child.pkCountry) { if (item.pkCountry == child.pkCountry) {
item.pkCountryName = child.name; item.pkCountryName = child.name
item.pkCountryIcon = child.nationalFlag2; item.pkCountryIcon = child.nationalFlag2
} }
}); })
}); })
this.tableData = res.rows; this.tableData = res.rows
this.total = res.total; this.total = res.total
this.loading = false this.loading = false
}); })
}, },
handleSelectionChange(val) { handleSelectionChange(val) {
this.multipleSelection = val; this.multipleSelection = val
}, },
uploadImgChange(file, fileList) { uploadImgChange(file, fileList) {
this.noneUploadImg = fileList.length > 0; this.noneUploadImg = fileList.length > 0
}, },
// //
handlePictureSuccess(res, file) { handlePictureSuccess(res, file) {
this.form.backgroundImg = res.data.url; this.form.backgroundImg = res.data.url
console.log( console.log(
"%c [ res ]-345", '%c [ res ]-345',
"font-size:13px; background:#490cce; color:#8d50ff;", 'font-size:13px; background:#490cce; color:#8d50ff;',
res res
); )
}, },
// //
handleRemove(file, fileList) { handleRemove(file, fileList) {
this.form.backgroundImg = ""; this.form.backgroundImg = ''
this.noneUploadImg = fileList.length > 0; this.noneUploadImg = fileList.length > 0
}, },
tableRowClassName({ row, rowIndex }) { tableRowClassName({ row, rowIndex }) {
if (rowIndex % 2 == 1) { if (rowIndex % 2 == 1) {
return "warning-row"; return 'warning-row'
} else if (rowIndex % 2 == 0) { } else if (rowIndex % 2 == 0) {
return "success-row"; return 'success-row'
} }
return ""; return ''
}, }
}, }
}; }
</script> </script>
<style scoped lang="scss"> <style scoped lang="scss">
::v-deep .el-date-editor.el-input, ::v-deep .el-date-editor.el-input,

View File

@ -7,37 +7,49 @@
<template> <template>
<div class="page"> <div class="page">
<div class="topbox"> <div class="topbox">
<div class="levelList_i" <div
:class="tabActive == item.id ? 'act' : ''" v-for="(item, index) in topList"
v-for="(item, index) in topList" :key="index"
:key="index" class="levelList_i"
@click.prevent="handleLink(item.id)"> :class="tabActive == item.id ? 'act' : ''"
@click.prevent="handleLink(item.id)"
>
{{ item.name }} {{ item.name }}
</div> </div>
</div> </div>
<div class="main"> <div class="main">
<div class="contain"> <div class="contain">
<el-form ref="form" <el-form
:rules="rules" ref="form"
:model="form" :rules="rules"
label-width="80px"> :model="form"
label-width="80px"
>
<div v-show="tabActive==0"> <div v-show="tabActive==0">
<el-col class="el-col-40"> <el-col class="el-col-40">
<el-form-item :label="'产品名称'" <el-form-item
prop="productName"> :label="'产品名称'"
<el-input clearable prop="productName"
v-model="form.productName" >
:disabled="methods" <el-input
:placeholder="'请输入'"></el-input> v-model="form.productName"
clearable
:disabled="methods"
:placeholder="'请输入'"
/>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col class="el-col-20"> <el-col class="el-col-20">
<el-form-item :label="'产品编号'" <el-form-item
prop="productCode"> :label="'产品编号'"
<el-input clearable prop="productCode"
v-model="form.productCode" >
disabled <el-input
:placeholder="'请输入'"></el-input> v-model="form.productCode"
clearable
disabled
:placeholder="'请输入'"
/>
</el-form-item> </el-form-item>
</el-col> </el-col>
<!-- <el-col class="el-col-20"> <!-- <el-col class="el-col-20">
@ -63,41 +75,59 @@
</el-form-item> </el-form-item>
</el-col> --> </el-col> -->
<el-col class="el-col-20"> <el-col class="el-col-20">
<el-form-item label="保质期" <el-form-item
prop="shelfLife"> label="保质期"
<el-input clearable prop="shelfLife"
oninput="value=value.replace(/[^\d]/g,'')" >
v-model="form.shelfLife" <el-input
:disabled="methods" v-model="form.shelfLife"
:placeholder="'请输入'"> clearable
<i slot="suffix" oninput="value=value.replace(/[^\d]/g,'')"
class="neibu">{{'天'}} </i> :disabled="methods"
:placeholder="'请输入'"
>
<i
slot="suffix"
class="neibu"
>{{ '天' }} </i>
</el-input> </el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col class="el-col-20"> <el-col class="el-col-20">
<el-form-item :label="'单位'" <el-form-item
prop="unit"> label="单位"
<el-select clearable prop="unit"
v-model="form.unit" >
:disabled="methods"> <el-select
<el-option v-for="item in dwList" v-model="form.unit"
:key="item.pkId" clearable
:label="item.name" :disabled="methods"
:value="item.pkId"></el-option> >
<el-option
v-for="item in dwList"
:key="item.pkId"
:label="item.name"
:value="item.pkId"
/>
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col class="el-col-20"> <el-col class="el-col-20">
<el-form-item :label="'重量'" <el-form-item
prop="weight"> :label="'重量'"
<el-input clearable prop="weight"
oninput="value=value.replace(/[^\d.]/g,'')" >
v-model="form.weight" <el-input
:disabled="methods" v-model="form.weight"
:placeholder="'请输入'"> clearable
<i slot="suffix" oninput="value=value.replace(/[^\d.]/g,'')"
class="neibu">KG </i> :disabled="methods"
:placeholder="'请输入'"
>
<i
slot="suffix"
class="neibu"
>KG </i>
</el-input> </el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -128,15 +158,21 @@
</el-form-item> </el-form-item>
</el-col> --> </el-col> -->
<el-col class="el-col-20"> <el-col class="el-col-20">
<el-form-item :label="'所属分类'" <el-form-item
prop="pkClassify"> :label="'所属分类'"
<el-select clearable prop="pkClassify"
v-model="form.pkClassify" >
:disabled="methods"> <el-select
<el-option v-for="item in classifyList" v-model="form.pkClassify"
:key="item.pkId" clearable
:label="item.name" :disabled="methods"
:value="item.pkId"></el-option> >
<el-option
v-for="item in classifyList"
:key="item.pkId"
:label="item.name"
:value="item.pkId"
/>
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -152,41 +188,59 @@
</el-form-item> </el-form-item>
</el-col> --> </el-col> -->
<el-col class="el-col-20"> <el-col class="el-col-20">
<el-form-item :label="'长'" <el-form-item
prop="length"> :label="'长'"
<el-input clearable prop="length"
oninput="value=value.replace(/[^\d.]/g,'')" >
v-model="form.length" <el-input
:disabled="methods" v-model="form.length"
:placeholder="'请输入'"> clearable
<i slot="suffix" oninput="value=value.replace(/[^\d.]/g,'')"
class="neibu">CM </i> :disabled="methods"
:placeholder="'请输入'"
>
<i
slot="suffix"
class="neibu"
>CM </i>
</el-input> </el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col class="el-col-20"> <el-col class="el-col-20">
<el-form-item :label="'宽'" <el-form-item
prop="width"> :label="'宽'"
<el-input clearable prop="width"
oninput="value=value.replace(/[^\d.]/g,'')" >
v-model="form.width" <el-input
:disabled="methods" v-model="form.width"
:placeholder="'请输入'"> clearable
<i slot="suffix" oninput="value=value.replace(/[^\d.]/g,'')"
class="neibu">CM </i> :disabled="methods"
:placeholder="'请输入'"
>
<i
slot="suffix"
class="neibu"
>CM </i>
</el-input> </el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col class="el-col-20"> <el-col class="el-col-20">
<el-form-item :label="'高'" <el-form-item
prop="height"> :label="'高'"
<el-input clearable prop="height"
oninput="value=value.replace(/[^\d.]/g,'')" >
v-model="form.height" <el-input
:disabled="methods" v-model="form.height"
:placeholder="'请输入'"> clearable
<i slot="suffix" oninput="value=value.replace(/[^\d.]/g,'')"
class="neibu">CM </i> :disabled="methods"
:placeholder="'请输入'"
>
<i
slot="suffix"
class="neibu"
>CM </i>
</el-input> </el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -202,40 +256,50 @@
</el-form-item> </el-form-item>
</el-col> --> </el-col> -->
<el-col class="el-col-40"> <el-col class="el-col-40">
<el-form-item :label="'产品主图'" <el-form-item
prop="cover"> :label="'产品主图'"
<el-upload :headers="headers" prop="cover"
:disabled="methods" >
:class="{ uploadIconOne: showImg, uploadIcon: noneUploadImg }" <el-upload
:action="uploadImgUrl" :headers="headers"
:file-list="form.coverList" :disabled="methods"
:on-success="handlePictureSuccess" :class="{ uploadIconOne: showImg, uploadIcon: noneUploadImg }"
:on-change="uploadImgChange" :action="uploadImgUrl"
list-type="picture-card" :file-list="form.coverList"
:limit="1" :on-success="handlePictureSuccess"
:on-remove="handleRemove"> :on-change="uploadImgChange"
<i class="el-icon-plus"></i> list-type="picture-card"
:limit="1"
:on-remove="handleRemove"
>
<i class="el-icon-plus" />
</el-upload> </el-upload>
<div class="jy">建议尺寸452×452大小为200K</div> <div class="jy">建议尺寸452×452大小为200K</div>
</el-form-item> </el-form-item>
</el-col> </el-col>
</div> </div>
<div v-show="tabActive==1"> <div v-show="tabActive==1">
<el-form-item :label="'规格'" <el-form-item
prop="pkSpecsType"> :label="'规格'"
<el-tag :key="item.pkId" prop="pkSpecsType"
v-for="item,index in ggList" >
:closable="!methods" <el-tag
class="elTag" v-for="item,index in ggList"
v-show="item.checked" v-show="item.checked"
:disable-transitions="false" :key="item.pkId"
@close="handleClose(item.pkId)"> :closable="!methods"
{{item.typeName}} class="elTag"
:disable-transitions="false"
@close="handleClose(item.pkId)"
>
{{ item.typeName }}
</el-tag> </el-tag>
<el-button class="button-new-tag" <el-button
v-show="!methods" v-show="!methods"
size="small" class="button-new-tag"
@click="openDiag=true">{{'添加'}}</el-button> size="small"
@click="openDiag=true"
>{{ '添加' }}</el-button>
</el-form-item> </el-form-item>
</div> </div>
<!-- <div v-show="tabActive==2"> <!-- <div v-show="tabActive==2">
@ -332,33 +396,49 @@
</div> --> </div> -->
</el-form> </el-form>
</div> </div>
<div class="footer" <div
v-show="!methods"> v-show="!methods"
<el-button size="small" class="footer"
class="thebtn2"> {{ '取消' }}</el-button> >
<el-button size="small" <el-button
v-hasButtons="['productBasicAddSure']" size="small"
@click="submit('form')" class="thebtn2"
class="thebtn1"> {{ '确认' }}</el-button> > {{ '取消' }}</el-button>
<el-button
v-hasButtons="['productBasicAddSure']"
size="small"
class="thebtn1"
@click="submit('form')"
> {{ '确认' }}</el-button>
</div> </div>
</div> </div>
<el-dialog :title="'添加'" <el-dialog
:visible.sync="openDiag" :title="'添加'"
:close-on-click-modal="false" :visible.sync="openDiag"
width="30%" :close-on-click-modal="false"
center> width="30%"
<el-checkbox-group v-model="form.checkList" center
class="check"> >
<el-checkbox v-for="item,index in ggList" <el-checkbox-group
class="check_i" v-model="form.checkList"
:key="item.pkId" class="check"
:label="item.pkId">{{item.typeName}}</el-checkbox> >
<el-checkbox
v-for="item,index in ggList"
:key="item.pkId"
class="check_i"
:label="item.pkId"
>{{ item.typeName }}</el-checkbox>
</el-checkbox-group> </el-checkbox-group>
<span slot="footer" <span
class="dialog-footer"> slot="footer"
<el-button @click="openDiag = false">{{'取消'}}</el-button> class="dialog-footer"
<el-button type="primary" >
@click="checkTrue">{{'确认'}}</el-button> <el-button @click="openDiag = false">{{ '取消' }}</el-button>
<el-button
type="primary"
@click="checkTrue"
>{{ '确认' }}</el-button>
</span> </span>
</el-dialog> </el-dialog>
</div> </div>
@ -368,76 +448,76 @@ import { getToken } from '@/utils/auth'
import * as api from '@/api/product.js' import * as api from '@/api/product.js'
import { productUpdateJxc, productSaveJxc } from '@/api/product.js' import { productUpdateJxc, productSaveJxc } from '@/api/product.js'
export default { export default {
name: 'jcsz', name: 'Jcsz',
data() { data() {
return { return {
rules: { rules: {
shippingChannel: [ shippingChannel: [
{ required: true, message: '请输入发货类型', trigger: 'change' }, { required: true, message: '请输入发货类型', trigger: 'change' }
], ],
unit: [{ required: true, message: '请选择单位', trigger: 'change' }], unit: [{ required: true, message: '请选择单位', trigger: 'change' }],
productName: [ productName: [
{ required: true, message: '请输入产品名称', trigger: 'blur' }, { required: true, message: '请输入产品名称', trigger: 'blur' }
], ],
productCode: [ productCode: [
{ required: true, message: '请输入产品编号', trigger: 'blur' }, { required: true, message: '请输入产品编号', trigger: 'blur' }
], ],
retailPrice: [ retailPrice: [
{ required: true, message: '请输入划线价', trigger: 'blur' }, { required: true, message: '请输入划线价', trigger: 'blur' }
], ],
shelfLife: [ shelfLife: [
{ required: true, message: '请输入保质期', trigger: 'blur' }, { required: true, message: '请输入保质期', trigger: 'blur' }
], ],
weight: [{ required: true, message: '请输入重量', trigger: 'blur' }], weight: [{ required: true, message: '请输入重量', trigger: 'blur' }],
postageWeight: [ postageWeight: [
{ required: true, message: '请输入邮费重量', trigger: 'blur' }, { required: true, message: '请输入邮费重量', trigger: 'blur' }
], ],
productAttr: [ productAttr: [
{ required: true, message: '请选择产品属性', trigger: 'change' }, { required: true, message: '请选择产品属性', trigger: 'change' }
], ],
pkClassify: [ pkClassify: [
{ required: true, message: '请选择所属分类', trigger: 'change' }, { required: true, message: '请选择所属分类', trigger: 'change' }
], ],
sort: [{ required: true, message: '请输入排列序号', trigger: 'blur' }], sort: [{ required: true, message: '请输入排列序号', trigger: 'blur' }],
length: [{ required: true, message: '请输入长', trigger: 'blur' }], length: [{ required: true, message: '请输入长', trigger: 'blur' }],
width: [{ required: true, message: '请输入宽', trigger: 'blur' }], width: [{ required: true, message: '请输入宽', trigger: 'blur' }],
height: [{ required: true, message: '请输入高', trigger: 'blur' }], height: [{ required: true, message: '请输入高', trigger: 'blur' }],
cover: [ cover: [
{ required: true, message: '请上传产品主图', trigger: 'change' }, { required: true, message: '请上传产品主图', trigger: 'change' }
], ],
pkSpecsType: [ pkSpecsType: [
{ required: true, message: '请选择规格', trigger: 'change' }, { required: true, message: '请选择规格', trigger: 'change' }
], ],
isPrize: [ isPrize: [
{ required: true, message: '抽奖礼品', trigger: 'change' }, { required: true, message: '抽奖礼品', trigger: 'change' }
], ],
isGift: [ isGift: [
{ required: true, message: '请选择特惠礼品', trigger: 'change' }, { required: true, message: '请选择特惠礼品', trigger: 'change' }
], ],
isPickUp: [ isPickUp: [
{ required: true, message: '请选择提货商品', trigger: 'change' }, { required: true, message: '请选择提货商品', trigger: 'change' }
], ],
isMerge: [ isMerge: [
{ required: true, message: '请选择合并发货', trigger: 'change' }, { required: true, message: '请选择合并发货', trigger: 'change' }
], ],
isFresh: [ isFresh: [
{ required: true, message: '冷链运输', trigger: 'change' }, { required: true, message: '冷链运输', trigger: 'change' }
], ],
isBarCode: [ isBarCode: [
{ required: true, message: '请选择条码管理', trigger: 'change' }, { required: true, message: '请选择条码管理', trigger: 'change' }
], ],
ysList: [ ysList: [
{ required: true, message: '请选择运输方式', trigger: 'change' }, { required: true, message: '请选择运输方式', trigger: 'change' }
], ]
}, },
ggList: [], ggList: [],
// //
openDiag: false, openDiag: false,
showImg: true, // showImg: true, //
noneUploadImg: false, // noneUploadImg: false, //
uploadImgUrl: process.env.VUE_APP_BASE_API + '/system/upload', uploadImgUrl: process.env.VUE_APP_BASE_API + '/system/upload',
headers: { headers: {
Authorization: getToken(), Authorization: getToken()
}, },
form: { form: {
sort: '', sort: '',
@ -451,28 +531,28 @@ export default {
width: '', width: '',
length: '', length: '',
weight: '', weight: '',
shelfLife: '', shelfLife: ''
}, },
tabActive: 0, tabActive: 0,
agreeList: [ agreeList: [
{ {
text: '允许', text: '允许',
val: 0, val: 0
}, },
{ {
text: '禁止', text: '禁止',
val: 1, val: 1
}, }
], ],
topList: [ topList: [
{ {
name: '基础设置', name: '基础设置',
id: 0, id: 0
}, },
{ {
name: '规格明细', name: '规格明细',
id: 1, id: 1
}, }
// { // {
// name: '', // name: '',
// id: 2, // id: 2,
@ -486,12 +566,12 @@ export default {
productId: '', productId: '',
methods: true, methods: true,
wahtMethods: 0, wahtMethods: 0,
repurchaseTypeList: [], repurchaseTypeList: []
} }
}, },
mounted() { mounted() {
this.productId = this.$route.query.id this.productId = this.$route.query.id
this.methods = this.$route.query.methods ? false : true this.methods = !this.$route.query.methods
this.wahtMethods = this.$route.query.methods this.wahtMethods = this.$route.query.methods
// list // list
this.getGg() this.getGg()
@ -505,7 +585,7 @@ export default {
this.getClassifyAll() this.getClassifyAll()
// //
this.getTransportType() this.getTransportType()
// //
// this.getRepurchaseType() // this.getRepurchaseType()
}, },
methods: { methods: {
@ -531,7 +611,7 @@ export default {
this.$set(this.form, 'ysList', [ this.$set(this.form, 'ysList', [
res.data.isLandTrans == 0 ? 1 : '', res.data.isLandTrans == 0 ? 1 : '',
res.data.isAirTrans == 0 ? 2 : '', res.data.isAirTrans == 0 ? 2 : '',
res.data.isOceanTrans == 0 ? 3 : '', res.data.isOceanTrans == 0 ? 3 : ''
]) ])
// this.form.checkList = this.form.pkSpecsType // this.form.checkList = this.form.pkSpecsType
this.$set(this.form, 'checkList', this.form.pkSpecsType) this.$set(this.form, 'checkList', this.form.pkSpecsType)
@ -651,12 +731,12 @@ export default {
this.$refs[form].validate((valid) => { this.$refs[form].validate((valid) => {
if (valid) { if (valid) {
urlRequir(this.form).then((res) => { urlRequir(this.form).then((res) => {
if(res.code == 200){ if (res.code == 200) {
this.$message({ this.$message({
message: mssg, message: mssg,
type: 'success', type: 'success'
}) })
this.$router.go(-1) this.$router.go(-1)
} }
}) })
} else { } else {
@ -670,18 +750,18 @@ export default {
}, },
uploadImgChange(file, fileList) { uploadImgChange(file, fileList) {
this.noneUploadImg = fileList.length > 0 this.noneUploadImg = fileList.length > 0
this.$refs.form.clearValidate('cover'); this.$refs.form.clearValidate('cover')
}, },
// //
handlePictureSuccess(res, file) { handlePictureSuccess(res, file) {
this.form.cover = res.data.url this.form.cover = res.data.url
}, },
// //
handleRemove(file, fileList) { handleRemove(file, fileList) {
this.form.cover = '' this.form.cover = ''
this.noneUploadImg = fileList.length > 0 this.noneUploadImg = fileList.length > 0
}, }
}, }
} }
</script> </script>
<style scoped lang="scss"> <style scoped lang="scss">

File diff suppressed because it is too large Load Diff

View File

@ -7,123 +7,165 @@
<template> <template>
<div class="page"> <div class="page">
<div class="main"> <div class="main">
<el-form ref="select" <el-form
:model="select" ref="select"
class="form_all" :model="select"
label-width="auto"> class="form_all"
label-width="auto"
>
<el-row :gutter="10"> <el-row :gutter="10">
<!-- 一层 --> <!-- 一层 -->
<el-col :span="8"> <el-col :span="8">
<el-form-item :label="'产品名称'"> <el-form-item :label="'产品名称'">
<el-input clearable <el-input
v-model="select.productName"></el-input> v-model="select.productName"
clearable
/>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="4"> <el-col :span="4">
<el-form-item :label="'产品编码'"> <el-form-item :label="'产品编码'">
<el-input clearable <el-input
v-model="select.productCode"></el-input> v-model="select.productCode"
clearable
/>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="4"> <el-col :span="4">
<el-form-item :label="'请选择产品属性'"> <el-form-item :label="'请选择产品属性'">
<el-select clearable <el-select
v-model="select.productAttr"> v-model="select.productAttr"
<el-option v-for="item in productTypeList" clearable
:key="item.value" >
:label="item.label" <el-option
:value="item.value"></el-option> v-for="item in productTypeList"
:key="item.value"
:label="item.label"
:value="item.value"
/>
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="4"> <el-col :span="4">
<el-form-item :label="'所属分类'"> <el-form-item :label="'所属分类'">
<el-select clearable <el-select
v-model="select.pkClassify"> v-model="select.pkClassify"
<el-option v-for="item in classifyList" clearable
:key="item.pkId" >
:label="item.name" <el-option
:value="item.pkId"></el-option> v-for="item in classifyList"
:key="item.pkId"
:label="item.name"
:value="item.pkId"
/>
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="4"> <el-col :span="4">
<el-form-item :label="'发货类型'"> <el-form-item :label="'发货类型'">
<el-select clearable <el-select
v-model="select.shippingChannel"> v-model="select.shippingChannel"
<el-option v-for="item in fhTypeList" clearable
:key="item.value" >
:label="item.label" <el-option
:value="item.value"></el-option> v-for="item in fhTypeList"
:key="item.value"
:label="item.label"
:value="item.value"
/>
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="4"> <el-col :span="4">
<el-form-item :label=''单位''> <el-form-item label="单位">
<el-select clearable <el-select
v-model="select.unit"> v-model="select.unit"
<el-option v-for="item in dwList" clearable
:key="item.pkId" >
:label="item.name" <el-option
:value="item.pkId"></el-option> v-for="item in dwList"
:key="item.pkId"
:label="item.name"
:value="item.pkId"
/>
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<!-- 二层 --> <!-- 二层 -->
<el-col :span="4"> <el-col :span="4">
<el-form-item :label="'特惠礼品'"> <el-form-item :label="'特惠礼品'">
<el-select clearable <el-select
v-model="select.isGift"> v-model="select.isGift"
<el-option v-for="item in agreeList" clearable
:key="item.val" >
:label="item.text" <el-option
:value="item.val"></el-option> v-for="item in agreeList"
:key="item.val"
:label="item.text"
:value="item.val"
/>
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="4"> <el-col :span="4">
<el-form-item :label="'提货商品'"> <el-form-item :label="'提货商品'">
<el-select clearable <el-select
v-model="select.isPickUp"> v-model="select.isPickUp"
<el-option v-for="item in agreeList" clearable
:key="item.val" >
:label="item.text" <el-option
:value="item.val"></el-option> v-for="item in agreeList"
:key="item.val"
:label="item.text"
:value="item.val"
/>
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="4"> <el-col :span="4">
<el-form-item :label="'抽奖礼品'"> <el-form-item :label="'抽奖礼品'">
<el-select clearable <el-select
v-model="select.isPrize"> v-model="select.isPrize"
<el-option v-for="item in agreeList" clearable
:key="item.val" >
:label="item.text" <el-option
:value="item.val"></el-option> v-for="item in agreeList"
:key="item.val"
:label="item.text"
:value="item.val"
/>
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="4"> <el-col :span="4">
<el-form-item :label="'合并发货'"> <el-form-item :label="'合并发货'">
<el-select clearable <el-select
v-model="select.isMerge"> v-model="select.isMerge"
<el-option v-for="item in agreeList" clearable
:key="item.val" >
:label="item.text" <el-option
:value="item.val"></el-option> v-for="item in agreeList"
:key="item.val"
:label="item.text"
:value="item.val"
/>
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="4"> <el-col :span="4">
<el-form-item :label="'追溯编号'"> <el-form-item :label="'追溯编号'">
<el-select clearable <el-select
v-model="select.isBarCode"> v-model="select.isBarCode"
<el-option v-for="item in agreeList" clearable
:key="item.val" >
:label="item.text" <el-option
:value="item.val"></el-option> v-for="item in agreeList"
:key="item.val"
:label="item.text"
:value="item.val"
/>
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -132,260 +174,335 @@
<div v-show="isActive"> <div v-show="isActive">
<el-col :span="4"> <el-col :span="4">
<el-form-item :label="'冷链运输'"> <el-form-item :label="'冷链运输'">
<el-select clearable <el-select
v-model="select.isFresh"> v-model="select.isFresh"
<el-option v-for="item in agreeList" clearable
:key="item.val" >
:label="item.text" <el-option
:value="item.val"></el-option> v-for="item in agreeList"
:key="item.val"
:label="item.text"
:value="item.val"
/>
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="4"> <el-col :span="4">
<el-form-item :label="'运输方式'"> <el-form-item :label="'运输方式'">
<el-select clearable <el-select
v-model="select.shippingType"> v-model="select.shippingType"
<el-option v-for="item in transportTypeList" clearable
:key="item.value" >
:label="item.label" <el-option
:value="item.value"></el-option> v-for="item in transportTypeList"
:key="item.value"
:label="item.label"
:value="item.value"
/>
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
<el-form-item :label="'创建日期'"> <el-form-item :label="'创建日期'">
<el-date-picker v-model="creationTime" <el-date-picker
@change="changeTime" v-model="creationTime"
value-format="yyyy-MM-dd hh:mm:ss" value-format="yyyy-MM-dd hh:mm:ss"
type="datetimerange" type="datetimerange"
:range-separator="'至'" :range-separator="'至'"
:start-placeholder="'开始日期'" :start-placeholder="'开始日期'"
:end-placeholder="'结束日期'"> :end-placeholder="'结束日期'"
</el-date-picker> @change="changeTime"
/>
</el-form-item> </el-form-item>
</el-col> </el-col>
</div> </div>
</el-collapse-transition> </el-collapse-transition>
<el-col :span="4" <el-col
style="margin-left:20px"> :span="4"
<el-button type="primary" style="margin-left:20px"
@click="getDataList"> {{ '搜索' }}</el-button> >
<el-button type="primary" <el-button
@click="reset"> {{ '重置' }}</el-button> type="primary"
@click="getDataList"
> {{ '搜索' }}</el-button>
<el-button
type="primary"
@click="reset"
> {{ '重置' }}</el-button>
</el-col> </el-col>
</el-row> </el-row>
</el-form> </el-form>
<div class="openClose" <div
@click="changeActive"> class="openClose"
<i :class="isActive?'el-icon-arrow-up':'el-icon-arrow-down'"></i> @click="changeActive"
<div>{{isActive?'点击收起':'点击展开'}}</div> >
<i :class="isActive?'el-icon-arrow-up':'el-icon-arrow-down'" />
<div>{{ isActive?'点击收起':'点击展开' }}</div>
</div> </div>
<div class="maintop"> <div class="maintop">
<div class="mainbtn"> <div class="mainbtn">
<el-button size="small" <el-button
v-hasButtons="['ProductListAdd']" v-hasButtons="['ProductListAdd']"
@click="openDig" size="small"
class="thebtn1">{{'添加'}}</el-button> class="thebtn1"
<el-button size="small" @click="openDig"
v-hasButtons="['ProductListExport']" >{{ '添加' }}</el-button>
class="thebtn2"> {{ '导出' }}</el-button> <el-button
<el-button size="small" v-hasButtons="['ProductListExport']"
:disabled="isCopy" size="small"
@click="toCopy" class="thebtn2"
v-hasButtons="['ProductListCopy']" > {{ '导出' }}</el-button>
class="thebtn3">{{'复制'}}</el-button> <el-button
v-hasButtons="['ProductListCopy']"
size="small"
:disabled="isCopy"
class="thebtn3"
@click="toCopy"
>{{ '复制' }}</el-button>
</div> </div>
</div> </div>
<div class="maintable"> <div class="maintable">
<el-table :data="tableData" <el-table
v-loading="loading" v-loading="loading"
style="width: 100%" :data="tableData"
:header-cell-style="{ background: '#EEEEEE' }" style="width: 100%"
:row-class-name="tableRowClassName" :header-cell-style="{ background: '#EEEEEE' }"
@selection-change="handleSelectionChange"> :row-class-name="tableRowClassName"
<el-table-column type="selection" @selection-change="handleSelectionChange"
width="55"> </el-table-column> >
<el-table-column align="center" <el-table-column
prop="sort" type="selection"
sortable width="55"
:label="'排序'"> />
</el-table-column> <el-table-column
<el-table-column align="center" align="center"
prop="cover" prop="sort"
:label="'产品主图'"> sortable
:label="'排序'"
/>
<el-table-column
align="center"
prop="cover"
:label="'产品主图'"
>
<template slot-scope="scope"> <template slot-scope="scope">
<img class="bgImg" <img
:src="scope.row.cover" class="bgImg"
alt="" /> :src="scope.row.cover"
alt=""
>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column align="center" <el-table-column
prop="productName" align="center"
:label="'产品名称'"> prop="productName"
</el-table-column> :label="'产品名称'"
<el-table-column align="center" />
prop="classifyName" <el-table-column
:label="'所属分类'"> align="center"
</el-table-column> prop="classifyName"
<el-table-column align="center" :label="'所属分类'"
prop="productCode" />
:label="'产品编码'"> <el-table-column
</el-table-column> align="center"
<el-table-column align="center" prop="productCode"
prop="shippingChannelVal" :label="'产品编码'"
:label="'发货类型'"> />
</el-table-column> <el-table-column
<el-table-column align="center" align="center"
prop="length" prop="shippingChannelVal"
:label="'长'+'(CM)'"> :label="'发货类型'"
</el-table-column> />
<el-table-column align="center" <el-table-column
prop="width" align="center"
:label="'宽'+'(CM)'"> prop="length"
</el-table-column> :label="'长'+'(CM)'"
<el-table-column align="center" />
prop="height" <el-table-column
:label="'高'+'(CM)'"> align="center"
</el-table-column> prop="width"
<el-table-column align="center" :label="'宽'+'(CM)'"
prop="weight" />
:label="'重量'+'KG'"> <el-table-column
</el-table-column> align="center"
<el-table-column align="center" prop="height"
prop="postageWeight" :label="'高'+'(CM)'"
:label="'邮费重量'+'KG'"> />
</el-table-column> <el-table-column
<el-table-column align="center" align="center"
prop="unitVal" prop="weight"
:label=''单位''> :label="'重量'+'KG'"
</el-table-column> />
<el-table-column align="center" <el-table-column
prop="productAttrName" align="center"
:label="'请选择产品属性'"> prop="postageWeight"
</el-table-column> :label="'邮费重量'+'KG'"
<el-table-column align="center" />
prop="retailPrice" <el-table-column
:label="'划线价'"> align="center"
</el-table-column> prop="unitVal"
<el-table-column align="center" :label=""
prop="shelfLife" 单位''
:label="'保质期(天)'"> />
</el-table-column> <el-table-column
<el-table-column align="center" align="center"
prop="productSpecType" prop="productAttrName"
:label="'产品规格'"> :label="'请选择产品属性'"
</el-table-column> />
<el-table-column align="center" <el-table-column
prop="isGift" align="center"
:label="'特惠礼品'"> prop="retailPrice"
:label="'划线价'"
/>
<el-table-column
align="center"
prop="shelfLife"
:label="'保质期(天)'"
/>
<el-table-column
align="center"
prop="productSpecType"
:label="'产品规格'"
/>
<el-table-column
align="center"
prop="isGift"
:label="'特惠礼品'"
>
<template slot-scope="scope"> <template slot-scope="scope">
<div :class="scope.row.isGift ? 'isRed' : 'isGreen'"> <div :class="scope.row.isGift ? 'isRed' : 'isGreen'">
{{ scope.row.isGift | isAgree(that) }} {{ scope.row.isGift | isAgree(that) }}
</div> </div>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column align="center" <el-table-column
prop="isPickUp" align="center"
:label="'提货商品'"> prop="isPickUp"
:label="'提货商品'"
>
<template slot-scope="scope"> <template slot-scope="scope">
<div :class="scope.row.isPickUp ? 'isRed' : 'isGreen'"> <div :class="scope.row.isPickUp ? 'isRed' : 'isGreen'">
{{ scope.row.isPickUp | isAgree(that) }} {{ scope.row.isPickUp | isAgree(that) }}
</div> </div>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column align="center" <el-table-column
prop="isPrize" align="center"
:label="'抽奖礼品'"> prop="isPrize"
:label="'抽奖礼品'"
>
<template slot-scope="scope"> <template slot-scope="scope">
<div :class="scope.row.isPrize ? 'isRed' : 'isGreen'"> <div :class="scope.row.isPrize ? 'isRed' : 'isGreen'">
{{ scope.row.isPrize | isAgree(that) }} {{ scope.row.isPrize | isAgree(that) }}
</div> </div>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column align="center" <el-table-column
prop="isBarCode" align="center"
:label="'追溯编号'"> prop="isBarCode"
:label="'追溯编号'"
>
<template slot-scope="scope"> <template slot-scope="scope">
<div :class="scope.row.isBarCode ? 'isRed' : 'isGreen'"> <div :class="scope.row.isBarCode ? 'isRed' : 'isGreen'">
{{ scope.row.isBarCode | isAgree(that) }} {{ scope.row.isBarCode | isAgree(that) }}
</div> </div>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column align="center" <el-table-column
prop="isMerge" align="center"
:label="'合并发货'"> prop="isMerge"
:label="'合并发货'"
>
<template slot-scope="scope"> <template slot-scope="scope">
<div :class="scope.row.isMerge ? 'isRed' : 'isGreen'"> <div :class="scope.row.isMerge ? 'isRed' : 'isGreen'">
{{ scope.row.isMerge | isAgree(that) }} {{ scope.row.isMerge | isAgree(that) }}
</div> </div>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column align="center" <el-table-column
prop="isFresh" align="center"
:label="'冷链运输'"> prop="isFresh"
:label="'冷链运输'"
>
<template slot-scope="scope"> <template slot-scope="scope">
<div :class="scope.row.isFresh ? 'isRed' : 'isGreen'"> <div :class="scope.row.isFresh ? 'isRed' : 'isGreen'">
{{ scope.row.isFresh | isAgree(that) }} {{ scope.row.isFresh | isAgree(that) }}
</div> </div>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column align="center" <el-table-column
prop="typeShippingMerge" align="center"
:label="'运输方式'"> prop="typeShippingMerge"
</el-table-column> :label="'运输方式'"
/>
<el-table-column align="center" <el-table-column
prop="creationTime" align="center"
:label="'创建日期'"> prop="creationTime"
</el-table-column> :label="'创建日期'"
<el-table-column align="center" />
prop="time" <el-table-column
width="120" align="center"
:label="'操作'" prop="time"
fixed="right"> width="120"
:label="'操作'"
fixed="right"
>
<template slot-scope="scope"> <template slot-scope="scope">
<div class="btnHeng"> <div class="btnHeng">
<el-button @click="toFixed(scope.row.pkId,1)" <el-button
v-hasButtons="['ProductListUpdate']" v-hasButtons="['ProductListUpdate']"
type="text" type="text"
size="small"> size="small"
@click="toFixed(scope.row.pkId,1)"
>
{{ '修改' }} {{ '修改' }}
</el-button> </el-button>
<el-button @click="toChecked(scope.row.pkId,0)" <el-button
type="text" type="text"
size="small"> size="small"
@click="toChecked(scope.row.pkId,0)"
>
{{ '查看' }} {{ '查看' }}
</el-button> </el-button>
<el-button @click="handleDelete(scope.row.pkId)" <el-button
v-hasButtons="['ProductListDelete']" v-hasButtons="['ProductListDelete']"
type="text" type="text"
size="small" size="small"
style="color: #c73030"> style="color: #c73030"
@click="handleDelete(scope.row.pkId)"
>
{{ '删除' }} {{ '删除' }}
</el-button> </el-button>
</div> </div>
<div class="btnHeng"> <div class="btnHeng">
<el-button @click="upEdit(scope.row.pkId,0)" <el-button
v-hasButtons="['ProductListUp']" v-hasButtons="['ProductListUp']"
type="text" type="text"
size="small" size="small"
style="color: #c73030"> style="color: #c73030"
{{'上移'}} @click="upEdit(scope.row.pkId,0)"
>
{{ '上移' }}
</el-button> </el-button>
<el-button @click="upEdit(scope.row.pkId,1)" <el-button
v-hasButtons="['ProductListDown']" v-hasButtons="['ProductListDown']"
type="text" type="text"
size="small" size="small"
style="color: #c73030"> style="color: #c73030"
{{'下移'}} @click="upEdit(scope.row.pkId,1)"
>
{{ '下移' }}
</el-button> </el-button>
<el-button @click="topEdit(scope.row.pkId)" <el-button
v-hasButtons="['ProductListTop']" v-hasButtons="['ProductListTop']"
type="text" type="text"
size="small" size="small"
style="color: #c73030"> style="color: #c73030"
{{'置顶'}} @click="topEdit(scope.row.pkId)"
>
{{ '置顶' }}
</el-button> </el-button>
</div> </div>
</template> </template>
@ -393,11 +510,13 @@
</el-table> </el-table>
</div> </div>
</div> </div>
<pagination v-show="total>0" <pagination
:total="total" v-show="total>0"
:page.sync="queryParams.pageNum" :total="total"
:limit.sync="queryParams.pageSize" :page.sync="queryParams.pageNum"
@pagination="getDataList" /> :limit.sync="queryParams.pageSize"
@pagination="getDataList"
/>
</div> </div>
</template> </template>
@ -409,16 +528,16 @@ import { getToken } from '@/utils/auth'
export default { export default {
name: 'ProductList', name: 'ProductList',
components: { components: {
topBar, topBar
}, },
filters: { filters: {
isAgree(val,that) { isAgree(val, that) {
if (!val) { if (!val) {
return that.$t('ENU_POPUP_TYPE_1'); return that.$t('ENU_POPUP_TYPE_1')
} else { } else {
return that.$t('ENU_POPUP_TYPE_2'); return that.$t('ENU_POPUP_TYPE_2')
} }
}, }
}, },
data() { data() {
return { return {
@ -439,27 +558,27 @@ export default {
// //
queryParams: { queryParams: {
pageNum: 1, pageNum: 1,
pageSize: 50, pageSize: 50
}, },
addOrEdit: '', addOrEdit: '',
total: 0, total: 0,
loading:false, loading: false,
tableData: [], tableData: [],
countryList: [], countryList: [],
agreeList: [ agreeList: [
{ {
text: '允许', text: '允许',
val: 0, val: 0
}, },
{ {
text: '禁止', text: '禁止',
val: 1, val: 1
}, }
], ],
form: {}, form: {},
creationTime: [], creationTime: [],
isCopy: true, isCopy: true,
selPkId: '', selPkId: ''
} }
}, },
mounted() { mounted() {
@ -530,8 +649,8 @@ export default {
path: 'productDetail', path: 'productDetail',
query: { query: {
id: id, id: id,
methods: 1, methods: 1
}, }
}) })
}, },
// //
@ -543,7 +662,7 @@ export default {
}, },
openDig() { openDig() {
this.$router.push({ this.$router.push({
path: 'jcsz', path: 'jcsz'
}) })
}, },
// 01,2 // 01,2
@ -552,15 +671,15 @@ export default {
path: 'productDetail', path: 'productDetail',
query: { query: {
id: id, id: id,
methods: index, methods: index
}, }
}) })
}, },
upEdit(id, index) { upEdit(id, index) {
api api
.productMove({ .productMove({
productId: id, productId: id,
productMoveType: index, productMoveType: index
}) })
.then((res) => { .then((res) => {
this.getDataList() this.getDataList()
@ -569,7 +688,7 @@ export default {
topEdit(id) { topEdit(id) {
api api
.floatingFoof({ .floatingFoof({
productId: id, productId: id
}) })
.then((res) => { .then((res) => {
this.getDataList() this.getDataList()
@ -579,7 +698,7 @@ export default {
getDataList() { getDataList() {
this.loading = true this.loading = true
api api
.productList(Object.assign({isPutOn:0}, this.queryParams, this.select)) .productList(Object.assign({ isPutOn: 0 }, this.queryParams, this.select))
.then((res) => { .then((res) => {
res.rows.forEach((item) => { res.rows.forEach((item) => {
// this.dwList.forEach((child) => { // this.dwList.forEach((child) => {
@ -616,8 +735,8 @@ export default {
return 'success-row' return 'success-row'
} }
return '' return ''
}, }
}, }
} }
</script> </script>
<style scoped lang="scss"> <style scoped lang="scss">

File diff suppressed because it is too large Load Diff