mirror of
https://gitee.com/ZhongBangKeJi/crmeb_java.git
synced 2026-04-26 04:38:34 +08:00
## v1.3.1 更新列表
1. 【修复】申请退款后积分等操作可能出现错误的问题 2. 【修复】拼团支付可能出现支付错误的问题 3. 【修复】退款申请后的订单流程优化和积分赠送的问题 4. 【修复】回收站中的商品无法恢复的问题 5. 【修复】一号通短信查询记录不完整的问题 6. 【修复】用户管理批量加分组,标签的问题 7. 【修复】积分日志搜索显示有误的问题 8. 【修复】手动发送优惠券可能会出错的问题 9. 【修复】核销订单创建在某种条件下会出错的问题 10. 【修复】移动端商品详情,购物车等样式兼容问题 11. 【修复】业务流程性的优化
This commit is contained in:
@@ -8,7 +8,7 @@
|
||||
>
|
||||
<el-input v-model="editPram.name" :maxlength="biztype.value === 1 ? 8 : 20" placeholder="分类名称" />
|
||||
</el-form-item>
|
||||
<el-form-item label="URL">
|
||||
<el-form-item label="URL" v-if="biztype.value!==1">
|
||||
<el-input v-model="editPram.url" placeholder="URL" />
|
||||
</el-form-item>
|
||||
<el-form-item label="父级" v-if="biztype.value!==3">
|
||||
@@ -31,7 +31,8 @@
|
||||
<el-input-number v-model="editPram.sort"/>
|
||||
</el-form-item>
|
||||
<el-form-item label="状态">
|
||||
<el-switch v-model="editPram.status" :active-value="true" :inactive-value="false" />
|
||||
<el-switch v-model="editPram.status" active-text="显示"
|
||||
inactive-text="隐藏" :active-value="true" :inactive-value="false" />
|
||||
</el-form-item>
|
||||
<el-form-item label="扩展字段" v-if="biztype.value !== 1 && biztype.value !== 3 && biztype.value !== 5">
|
||||
<el-input v-model="editPram.extra" type="textarea" placeholder="扩展字段" />
|
||||
@@ -45,7 +46,6 @@
|
||||
</template>
|
||||
<!--创建和编辑公用一个组件-->
|
||||
<script>
|
||||
import * as constants from '@/utils/constants.js'
|
||||
import * as categoryApi from '@/api/categoryApi.js'
|
||||
import * as selfUtil from '@/utils/ZBKJIutil.js'
|
||||
export default {
|
||||
@@ -73,7 +73,7 @@ export default {
|
||||
data() {
|
||||
return {
|
||||
loadingBtn: false,
|
||||
constants,
|
||||
constants: this.$constants,
|
||||
editPram: {
|
||||
extra: null,
|
||||
name: null,
|
||||
|
||||
@@ -75,7 +75,7 @@
|
||||
</div>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="Url" min-width="250">
|
||||
<el-table-column label="Url" min-width="250" v-if="biztype.value === 5" key="2">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.url }}</span>
|
||||
</template>
|
||||
@@ -141,7 +141,6 @@
|
||||
import * as categoryApi from '@/api/categoryApi.js'
|
||||
import info from './info'
|
||||
import edit from './edit'
|
||||
import * as constants from '@/utils/constants.js'
|
||||
import * as selfUtil from '@/utils/ZBKJIutil.js'
|
||||
export default {
|
||||
// name: "list"
|
||||
@@ -177,7 +176,7 @@ export default {
|
||||
return {
|
||||
selectModelKeysNew: this.selectModelKeys,
|
||||
loading: false,
|
||||
constants,
|
||||
constants: this.$constants,
|
||||
treeProps: {
|
||||
label: 'name',
|
||||
children: 'child',
|
||||
@@ -197,12 +196,12 @@ export default {
|
||||
dataList: [],
|
||||
treeList: [],
|
||||
listPram: {
|
||||
pid: this.pid,
|
||||
pid: this.pid,
|
||||
type: this.biztype.value,
|
||||
status: -1,
|
||||
name: '',
|
||||
page: constants.page.page,
|
||||
limit: constants.page.limit[0]
|
||||
page: this.$constants.page.page,
|
||||
limit: this.$constants.page.limit[0]
|
||||
},
|
||||
viewInfoConfig: {
|
||||
data: null,
|
||||
@@ -293,7 +292,7 @@ export default {
|
||||
this.loading = false
|
||||
}).catch(()=>{
|
||||
this.loading = false
|
||||
}) : categoryApi.listCategroy({ type: 3, status: '', pid: this.listPram.pid}).then(data => {
|
||||
}) : categoryApi.listCategroy({ type: 3, status: this.listPram.status, pid: this.listPram.pid, name: this.listPram.name}).then(data => {
|
||||
this.treeList = data.list
|
||||
})
|
||||
},
|
||||
|
||||
@@ -39,7 +39,6 @@ function formBtns(h) {
|
||||
return <el-col>
|
||||
<el-form-item size='mini'>
|
||||
<el-button type='primary' onClick={this.submitForm}>提交</el-button>
|
||||
<el-button onClick={this.resetForm}>取消</el-button>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
}
|
||||
|
||||
@@ -69,7 +69,6 @@
|
||||
<script>
|
||||
import * as articleApi from '@/api/article.js'
|
||||
import * as categoryApi from '@/api/categoryApi.js'
|
||||
import * as constants from '@/utils/constants.js'
|
||||
import * as selfUtil from '@/utils/ZBKJIutil.js'
|
||||
export default {
|
||||
// name: "list",
|
||||
@@ -83,12 +82,12 @@
|
||||
return {
|
||||
templateRadio:'',
|
||||
imgList: [],
|
||||
constants,
|
||||
constants: this.$constants,
|
||||
listPram: {
|
||||
keywords: null,
|
||||
cid: null,
|
||||
page: 1,
|
||||
limit: constants.page.limit[0]
|
||||
limit: this.$constants.page.limit[0]
|
||||
},
|
||||
listData: { list: [], total: 0 },
|
||||
editDialogConfig: {
|
||||
@@ -130,7 +129,7 @@
|
||||
})
|
||||
},
|
||||
handlerGetCategoryTreeData() {
|
||||
const _pram = { type: constants.categoryType[2].value, status: 1 }
|
||||
const _pram = { type: this.constants.categoryType[2].value, status: 1 }
|
||||
categoryApi.treeCategroy(_pram).then(data => {
|
||||
this.categoryTreeData = selfUtil.addTreeListLabelForCasCard(data)
|
||||
})
|
||||
|
||||
@@ -91,178 +91,178 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { marketingListApi, couponUserApi } from '@/api/marketing'
|
||||
export default {
|
||||
name: 'CouponList',
|
||||
props: {
|
||||
handle: {
|
||||
type: String,
|
||||
default: ''
|
||||
},
|
||||
couponData: {
|
||||
type: Array,
|
||||
default: () => []
|
||||
},
|
||||
keyNum: {
|
||||
type: Number,
|
||||
default: 0
|
||||
},
|
||||
userIds: {
|
||||
type: String,
|
||||
default: ''
|
||||
}
|
||||
import { marketingListApi, couponUserApi } from '@/api/marketing'
|
||||
export default {
|
||||
name: 'CouponList',
|
||||
props: {
|
||||
handle: {
|
||||
type: String,
|
||||
default: ''
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
listLoading: true,
|
||||
tableData: {
|
||||
data: [],
|
||||
total: 0
|
||||
},
|
||||
tableFrom: {
|
||||
page: 1,
|
||||
limit: 10,
|
||||
name: '',
|
||||
// type: 0,
|
||||
isDel: 0,
|
||||
status: 1
|
||||
},
|
||||
multipleSelection: [],
|
||||
multipleSelectionAll: [],
|
||||
idKey: 'id',
|
||||
nextPageFlag: false,
|
||||
attr: []
|
||||
}
|
||||
couponData: {
|
||||
type: Array,
|
||||
default: () => []
|
||||
},
|
||||
watch: {
|
||||
keyNum: {
|
||||
deep: true,
|
||||
handler(val) {
|
||||
this.getList()
|
||||
}
|
||||
}
|
||||
keyNum: {
|
||||
type: Number,
|
||||
default: 0
|
||||
},
|
||||
mounted() {
|
||||
this.tableFrom.page = 1
|
||||
this.getList()
|
||||
this.multipleSelectionAll = this.couponData || []
|
||||
},
|
||||
methods: {
|
||||
close() {
|
||||
this.multipleSelection = []
|
||||
userIds: {
|
||||
type: String,
|
||||
default: ''
|
||||
}
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
listLoading: true,
|
||||
tableData: {
|
||||
data: [],
|
||||
total: 0
|
||||
},
|
||||
handleSelectionChange(val) {
|
||||
this.multipleSelection = val
|
||||
setTimeout(() => {
|
||||
this.changePageCoreRecordData()
|
||||
}, 50)
|
||||
tableFrom: {
|
||||
page: 1,
|
||||
limit: 10,
|
||||
name: '',
|
||||
// type: 0,
|
||||
isDel: 0,
|
||||
status: 1
|
||||
},
|
||||
// 设置选中的方法
|
||||
setSelectRow() {
|
||||
if (!this.multipleSelectionAll || this.multipleSelectionAll.length <= 0) {
|
||||
return
|
||||
}
|
||||
// 标识当前行的唯一键的名称
|
||||
const idKey = this.idKey
|
||||
const selectAllIds = []
|
||||
this.multipleSelectionAll.forEach(row => {
|
||||
selectAllIds.push(row[idKey])
|
||||
})
|
||||
this.$refs.table.clearSelection()
|
||||
for (var i = 0; i < this.tableData.data.length; i++) {
|
||||
if (selectAllIds.indexOf(this.tableData.data[i][idKey]) >= 0) {
|
||||
// 设置选中,记住table组件需要使用ref="table"
|
||||
this.$refs.table.toggleRowSelection(this.tableData.data[i], true)
|
||||
}
|
||||
}
|
||||
},
|
||||
// 记忆选择核心方法
|
||||
changePageCoreRecordData() {
|
||||
// 标识当前行的唯一键的名称
|
||||
const idKey = this.idKey
|
||||
const that = this
|
||||
// 如果总记忆中还没有选择的数据,那么就直接取当前页选中的数据,不需要后面一系列计算
|
||||
if (this.multipleSelectionAll.length <= 0) {
|
||||
this.multipleSelectionAll = this.multipleSelection
|
||||
return
|
||||
}
|
||||
// 总选择里面的key集合
|
||||
const selectAllIds = []
|
||||
this.multipleSelectionAll.forEach(row => {
|
||||
selectAllIds.push(row[idKey])
|
||||
})
|
||||
const selectIds = []
|
||||
// 获取当前页选中的id
|
||||
this.multipleSelection.forEach(row => {
|
||||
selectIds.push(row[idKey])
|
||||
// 如果总选择里面不包含当前页选中的数据,那么就加入到总选择集合里
|
||||
if (selectAllIds.indexOf(row[idKey]) < 0) {
|
||||
that.multipleSelectionAll.push(row)
|
||||
}
|
||||
})
|
||||
const noSelectIds = []
|
||||
// 得到当前页没有选中的id
|
||||
this.tableData.data.forEach(row => {
|
||||
if (selectIds.indexOf(row[idKey]) < 0) {
|
||||
noSelectIds.push(row[idKey])
|
||||
}
|
||||
})
|
||||
noSelectIds.forEach(id => {
|
||||
if (selectAllIds.indexOf(id) >= 0) {
|
||||
for (let i = 0; i < that.multipleSelectionAll.length; i++) {
|
||||
if (that.multipleSelectionAll[i][idKey] == id) {
|
||||
// 如果总选择中有未被选中的,那么就删除这条
|
||||
that.multipleSelectionAll.splice(i, 1)
|
||||
break
|
||||
}
|
||||
}
|
||||
}
|
||||
})
|
||||
},
|
||||
ok() {
|
||||
if (this.multipleSelection.length > 0) {
|
||||
this.$emit('getCouponId', this.multipleSelectionAll)
|
||||
// this.close()
|
||||
} else {
|
||||
this.$message.warning('请先选择优惠劵')
|
||||
}
|
||||
},
|
||||
// 列表
|
||||
getList(num) {
|
||||
this.listLoading = true
|
||||
this.tableFrom.page = num ? num : this.tableFrom.page
|
||||
marketingListApi(this.tableFrom).then(res => {
|
||||
this.tableData.data = res.list
|
||||
this.tableData.total = res.total
|
||||
this.listLoading = false
|
||||
this.$nextTick(function() {
|
||||
this.setSelectRow()// 调用跨页选中方法
|
||||
})
|
||||
}).catch(res => {
|
||||
this.listLoading = false
|
||||
})
|
||||
},
|
||||
pageChange(page) {
|
||||
this.changePageCoreRecordData()
|
||||
this.tableFrom.page = page
|
||||
multipleSelection: [],
|
||||
multipleSelectionAll: [],
|
||||
idKey: 'id',
|
||||
nextPageFlag: false,
|
||||
attr: []
|
||||
}
|
||||
},
|
||||
watch: {
|
||||
keyNum: {
|
||||
deep: true,
|
||||
handler(val) {
|
||||
this.getList()
|
||||
},
|
||||
handleSizeChange(val) {
|
||||
this.changePageCoreRecordData()
|
||||
this.tableFrom.limit = val
|
||||
this.getList()
|
||||
},
|
||||
// 发送
|
||||
sendGrant(id){
|
||||
this.$modalSure('发送优惠劵吗').then(() => {
|
||||
couponUserApi({ couponId:id, uid:this.userIds }).then(() => {
|
||||
this.$message.success('发送成功')
|
||||
this.getList()
|
||||
})
|
||||
})
|
||||
}
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
this.tableFrom.page = 1
|
||||
this.getList()
|
||||
this.multipleSelectionAll = this.couponData || []
|
||||
},
|
||||
methods: {
|
||||
close() {
|
||||
this.multipleSelection = []
|
||||
},
|
||||
handleSelectionChange(val) {
|
||||
this.multipleSelection = val
|
||||
setTimeout(() => {
|
||||
this.changePageCoreRecordData()
|
||||
}, 50)
|
||||
},
|
||||
// 设置选中的方法
|
||||
setSelectRow() {
|
||||
if (!this.multipleSelectionAll || this.multipleSelectionAll.length <= 0) {
|
||||
return
|
||||
}
|
||||
// 标识当前行的唯一键的名称
|
||||
const idKey = this.idKey
|
||||
const selectAllIds = []
|
||||
this.multipleSelectionAll.forEach(row => {
|
||||
selectAllIds.push(row[idKey])
|
||||
})
|
||||
this.$refs.table.clearSelection()
|
||||
for (var i = 0; i < this.tableData.data.length; i++) {
|
||||
if (selectAllIds.indexOf(this.tableData.data[i][idKey]) >= 0) {
|
||||
// 设置选中,记住table组件需要使用ref="table"
|
||||
this.$refs.table.toggleRowSelection(this.tableData.data[i], true)
|
||||
}
|
||||
}
|
||||
},
|
||||
// 记忆选择核心方法
|
||||
changePageCoreRecordData() {
|
||||
// 标识当前行的唯一键的名称
|
||||
const idKey = this.idKey
|
||||
const that = this
|
||||
// 如果总记忆中还没有选择的数据,那么就直接取当前页选中的数据,不需要后面一系列计算
|
||||
if (this.multipleSelectionAll.length <= 0) {
|
||||
this.multipleSelectionAll = this.multipleSelection
|
||||
return
|
||||
}
|
||||
// 总选择里面的key集合
|
||||
const selectAllIds = []
|
||||
this.multipleSelectionAll.forEach(row => {
|
||||
selectAllIds.push(row[idKey])
|
||||
})
|
||||
const selectIds = []
|
||||
// 获取当前页选中的id
|
||||
this.multipleSelection.forEach(row => {
|
||||
selectIds.push(row[idKey])
|
||||
// 如果总选择里面不包含当前页选中的数据,那么就加入到总选择集合里
|
||||
if (selectAllIds.indexOf(row[idKey]) < 0) {
|
||||
that.multipleSelectionAll.push(row)
|
||||
}
|
||||
})
|
||||
const noSelectIds = []
|
||||
// 得到当前页没有选中的id
|
||||
this.tableData.data.forEach(row => {
|
||||
if (selectIds.indexOf(row[idKey]) < 0) {
|
||||
noSelectIds.push(row[idKey])
|
||||
}
|
||||
})
|
||||
noSelectIds.forEach(id => {
|
||||
if (selectAllIds.indexOf(id) >= 0) {
|
||||
for (let i = 0; i < that.multipleSelectionAll.length; i++) {
|
||||
if (that.multipleSelectionAll[i][idKey] == id) {
|
||||
// 如果总选择中有未被选中的,那么就删除这条
|
||||
that.multipleSelectionAll.splice(i, 1)
|
||||
break
|
||||
}
|
||||
}
|
||||
}
|
||||
})
|
||||
},
|
||||
ok() {
|
||||
if (this.multipleSelection.length > 0) {
|
||||
this.$emit('getCouponId', this.multipleSelectionAll)
|
||||
// this.close()
|
||||
} else {
|
||||
this.$message.warning('请先选择优惠劵')
|
||||
}
|
||||
},
|
||||
// 列表
|
||||
getList(num) {
|
||||
this.listLoading = true
|
||||
this.tableFrom.page = num ? num : this.tableFrom.page
|
||||
marketingListApi(this.tableFrom).then(res => {
|
||||
this.tableData.data = res.list
|
||||
this.tableData.total = res.total
|
||||
this.listLoading = false
|
||||
this.$nextTick(function() {
|
||||
this.setSelectRow()// 调用跨页选中方法
|
||||
})
|
||||
}).catch(res => {
|
||||
this.listLoading = false
|
||||
})
|
||||
},
|
||||
pageChange(page) {
|
||||
this.changePageCoreRecordData()
|
||||
this.tableFrom.page = page
|
||||
this.getList()
|
||||
},
|
||||
handleSizeChange(val) {
|
||||
this.changePageCoreRecordData()
|
||||
this.tableFrom.limit = val
|
||||
this.getList()
|
||||
},
|
||||
// 发送
|
||||
sendGrant(id){
|
||||
this.$modalSure('发送优惠劵吗').then(() => {
|
||||
couponUserApi({ couponId:id, uid:this.userIds }).then(() => {
|
||||
this.$message.success('发送成功')
|
||||
this.getList()
|
||||
})
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
|
||||
@@ -102,12 +102,11 @@
|
||||
<script>
|
||||
import * as systemAdminApi from '@/api/systemadmin.js'
|
||||
import * as roleApi from '@/api/role.js'
|
||||
import * as constants from '@/utils/constants.js'
|
||||
export default {
|
||||
name: "index",
|
||||
data(){
|
||||
return {
|
||||
constants,
|
||||
constants: this.$constants,
|
||||
loading:false,
|
||||
templateRadio:'',
|
||||
dialogFormVisible:false,
|
||||
|
||||
@@ -33,7 +33,7 @@ export default {
|
||||
initialFrameHeight: 500, // 初始容器高度
|
||||
initialFrameWidth: '100%', // 初始容器宽度
|
||||
UEDITOR_HOME_URL: '/UEditor/',
|
||||
serverUrl: 'http://35.201.165.105:8000/controller.php'
|
||||
serverUrl: ''
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
<template>
|
||||
<template>
|
||||
<div>
|
||||
<el-row :gutter="30">
|
||||
<el-col v-bind="grid">
|
||||
@@ -31,34 +31,45 @@
|
||||
>({{ data.name }})</span>
|
||||
</div>
|
||||
<span class="el-ic">
|
||||
<svg-icon
|
||||
icon-class="example"
|
||||
title="添加分类"
|
||||
class="icon-space"
|
||||
@click.stop="onAdd(data.id)"
|
||||
/>
|
||||
<svg-icon
|
||||
icon-class="danyuan"
|
||||
title="添加管理单元"
|
||||
class="icon-space"
|
||||
/>
|
||||
<i
|
||||
v-if="data.id!== 10000"
|
||||
class="el-icon-edit"
|
||||
title="修改"
|
||||
@click.stop="onEdit(data.id)"
|
||||
/>
|
||||
<svg-icon
|
||||
icon-class="detail"
|
||||
title="查看该空间详情"
|
||||
class="icon-space"
|
||||
/>
|
||||
<i
|
||||
v-if="data.id!== 10000"
|
||||
class="el-icon-delete"
|
||||
title="删除分类"
|
||||
@click.stop="() => handleDelete(data.id)"
|
||||
/>
|
||||
<el-dropdown>
|
||||
<span class="el-dropdown-link">
|
||||
<i class="el-icon-more"></i>
|
||||
</span>
|
||||
<el-dropdown-menu slot="dropdown">
|
||||
<el-dropdown-item @click.native="onAdd(data.id)">添加分类</el-dropdown-item>
|
||||
<el-dropdown-item @click.native="onEdit(data.id)">编辑分类</el-dropdown-item>
|
||||
<el-dropdown-item @click.native="handleDelete(data.id)">删除分类</el-dropdown-item>
|
||||
</el-dropdown-menu>
|
||||
</el-dropdown>
|
||||
|
||||
<!--<svg-icon-->
|
||||
<!--icon-class="example"-->
|
||||
<!--title="添加分类"-->
|
||||
<!--class="icon-space"-->
|
||||
<!--@click.stop="onAdd(data.id)"-->
|
||||
<!--/>-->
|
||||
<!--<svg-icon-->
|
||||
<!--icon-class="danyuan"-->
|
||||
<!--title="添加管理单元"-->
|
||||
<!--class="icon-space"-->
|
||||
<!--/>-->
|
||||
<!--<i-->
|
||||
<!--v-if="data.id!== 10000"-->
|
||||
<!--class="el-icon-edit"-->
|
||||
<!--title="修改"-->
|
||||
<!--@click.stop="onEdit(data.id)"-->
|
||||
<!--/>-->
|
||||
<!--<svg-icon-->
|
||||
<!--icon-class="detail"-->
|
||||
<!--title="查看该空间详情"-->
|
||||
<!--class="icon-space"-->
|
||||
<!--/>-->
|
||||
<!--<i-->
|
||||
<!--v-if="data.id!== 10000"-->
|
||||
<!--class="el-icon-delete"-->
|
||||
<!--title="删除分类"-->
|
||||
<!--@click.stop="() => handleDelete(data.id)"-->
|
||||
<!--/>-->
|
||||
</span>
|
||||
</div>
|
||||
</el-tree>
|
||||
@@ -70,22 +81,60 @@
|
||||
<el-col v-bind="grid2" class="colLeft">
|
||||
<div class="conter mb15">
|
||||
<div class="bnt">
|
||||
<el-button size="mini" type="primary" class="mb10 mr10" @click="checkPics">使用选中图片</el-button>
|
||||
<el-upload
|
||||
class="upload-demo mr10 mb15"
|
||||
action
|
||||
:http-request="handleUploadForm"
|
||||
:on-change="imgSaveToUrl"
|
||||
:headers="myHeaders"
|
||||
:show-file-list="false"
|
||||
multiple
|
||||
>
|
||||
<el-button size="mini" type="primary">点击上传</el-button>
|
||||
</el-upload>
|
||||
<el-button type="success" size="mini" @click.stop="onAdd">添加分类</el-button>
|
||||
<el-button type="error" size="mini" class="mr10" :disabled="checkPicList.length===0" @click.stop="editPicList('图片')">删除图片</el-button>
|
||||
<el-select v-model="sleOptions.attachment_category_name" placeholder="图片移动至" class="mb15" size="mini">
|
||||
<!--<el-tooltip class="item" effect="dark" content="使用选中图片" placement="top-start">-->
|
||||
<!--<i class="el-icon-thumb mr20" style="font-size: 25px;" @click="checkPics"></i>-->
|
||||
<!--</el-tooltip>-->
|
||||
<!--<el-upload-->
|
||||
<!--class="upload-demo mb15"-->
|
||||
<!--action-->
|
||||
<!--:http-request="handleUploadForm"-->
|
||||
<!--:on-change="imgSaveToUrl"-->
|
||||
<!--:headers="myHeaders"-->
|
||||
<!--:show-file-list="false"-->
|
||||
<!--multiple-->
|
||||
<!-->-->
|
||||
<!--<el-tooltip class="item" effect="dark" content="上传图片" placement="top-start">-->
|
||||
<!--<i class="el-icon-upload2 mr20" style="font-size: 25px;"></i>-->
|
||||
<!--</el-tooltip>-->
|
||||
|
||||
<!--<!–<el-button size="mini" type="primary">点击上传</el-button>–>-->
|
||||
<!--</el-upload>-->
|
||||
<el-button size="small" type="primary" class="mr20 mb20" @click="checkPics">使用选中图片</el-button>
|
||||
<div class="mr20 mb20">
|
||||
<el-button-group>
|
||||
<el-tooltip class="item" effect="dark" content="上传图片" placement="top-start">
|
||||
<el-upload
|
||||
class="upload-demo"
|
||||
action
|
||||
:http-request="handleUploadForm"
|
||||
:on-change="imgSaveToUrl"
|
||||
:headers="myHeaders"
|
||||
:show-file-list="false"
|
||||
multiple
|
||||
>
|
||||
<el-button type="primary" icon="el-icon-upload2" size="mini" style="font-size: 15px;"></el-button>
|
||||
</el-upload>
|
||||
</el-tooltip>
|
||||
<el-tooltip class="item" effect="dark" content="添加分类" placement="top-start">
|
||||
<el-button type="primary" icon="el-icon-circle-plus-outline" style="font-size: 15px;" size="mini" @click="onAdd"></el-button>
|
||||
</el-tooltip>
|
||||
<el-tooltip class="item" effect="dark" content="删除图片" placement="top-start">
|
||||
<el-button type="primary" icon="el-icon-delete" style="font-size: 15px;" size="mini" @click.stop="editPicList('图片')"></el-button>
|
||||
</el-tooltip>
|
||||
</el-button-group>
|
||||
</div>
|
||||
|
||||
<!--<el-tooltip class="item" effect="dark" content="添加分类" placement="top-start">-->
|
||||
<!--<i class="el-icon-circle-plus-outline mr20" style="font-size: 25px;" @click="onAdd"></i>-->
|
||||
<!--</el-tooltip>-->
|
||||
<!--<el-button type="success" size="mini" @click.stop="onAdd">添加分类</el-button>-->
|
||||
<!--<el-tooltip class="item" effect="dark" content="删除图片" placement="top-start">-->
|
||||
<!--<i class="el-icon-delete mr20" style="font-size: 25px;" @click.stop="editPicList('图片')"></i>-->
|
||||
<!--</el-tooltip>-->
|
||||
<!--<el-button type="error" size="mini" class="mr10" :disabled="checkPicList.length===0" @click.stop="editPicList('图片')">删除图片</el-button>-->
|
||||
<el-select v-model="sleOptions.attachment_category_name" placeholder="图片移动至" class="mb20" size="small">
|
||||
<el-option
|
||||
class="demo"
|
||||
:label="sleOptions.attachment_category_name"
|
||||
:value="sleOptions.attachment_category_id"
|
||||
style="max-width: 560px;height:200px;overflow: auto;background-color:#fff"
|
||||
@@ -106,7 +155,7 @@
|
||||
<i class="el-icon-picture" style="font-size: 60px;color: rgb(219, 219, 219);" />
|
||||
<span class="imagesNo_sp">图片库为空</span>
|
||||
</div>
|
||||
<div class="conters">
|
||||
<div class="conters scrollbarAll">
|
||||
<div
|
||||
v-for="(item, index) in pictrueList.list"
|
||||
:key="index"
|
||||
@@ -121,7 +170,7 @@
|
||||
</div>
|
||||
<div class="block">
|
||||
<el-pagination
|
||||
:page-sizes="[12, 24, 48, 60]"
|
||||
:page-sizes="[10, 20, 30, 40]"
|
||||
:page-size="tableData.limit"
|
||||
:current-page="tableData.page"
|
||||
:pager-count="5"
|
||||
@@ -142,8 +191,10 @@
|
||||
@close="closeModel"
|
||||
>
|
||||
<el-form ref="editPram" :model="editPram" label-width="100px" v-loading="loading">
|
||||
<el-form-item label="上级分类">
|
||||
<el-cascader v-model="editPram.pid" :options="treeData2" :props="categoryProps" style="width:100%" />
|
||||
<el-form-item label="上级分类" prop="pid"
|
||||
:rules="[{ type: 'number',required:true,message:'请选择上级分类',trigger:['blur','change'] }]"
|
||||
>
|
||||
<el-cascader v-model="editPram.pid" :options="treeData2" :props="categoryProps" style="width:100%"/>
|
||||
</el-form-item>
|
||||
<el-form-item
|
||||
label="分类名称"
|
||||
@@ -197,7 +248,7 @@ export default {
|
||||
emitPath: false
|
||||
},
|
||||
editPram:{
|
||||
pid: 0,
|
||||
pid: 1000,
|
||||
name: '',
|
||||
type: 2,
|
||||
sort: 1,
|
||||
@@ -213,17 +264,17 @@ export default {
|
||||
},
|
||||
list: [],
|
||||
grid: {
|
||||
xl: 8,
|
||||
lg: 8,
|
||||
md: 8,
|
||||
sm: 8,
|
||||
xl: 7,
|
||||
lg: 7,
|
||||
md: 7,
|
||||
sm: 7,
|
||||
xs: 24
|
||||
},
|
||||
grid2: {
|
||||
xl: 16,
|
||||
lg: 16,
|
||||
md: 16,
|
||||
sm: 16,
|
||||
xl: 17,
|
||||
lg: 17,
|
||||
md: 17,
|
||||
sm: 17,
|
||||
xs: 24
|
||||
},
|
||||
filterText: '',
|
||||
@@ -235,7 +286,7 @@ export default {
|
||||
},
|
||||
tableData: {
|
||||
page: 1,
|
||||
limit: 12,
|
||||
limit: 10,
|
||||
pid: 0
|
||||
},
|
||||
classifyId: 0,
|
||||
@@ -300,7 +351,7 @@ export default {
|
||||
handlerSubmit(formName) {
|
||||
this.$refs[formName].validate((valid) => {
|
||||
if (valid) {
|
||||
if( this.editPram.pid === 10000 ) this.editPram.pid = 0
|
||||
if( this.editPram.pid==10000) this.editPram.pid = 0
|
||||
this.bizTitle==='添加分类' ? addCategroy(this.editPram).then(data => {
|
||||
this.$message.success('创建成功')
|
||||
this.visible = false
|
||||
@@ -457,6 +508,7 @@ export default {
|
||||
},
|
||||
// 删除图片
|
||||
editPicList(tit) {
|
||||
if (!this.checkPicList.length) return this.$message.warning('请先选择图片')
|
||||
this.$modalSure().then(() => {
|
||||
fileDeleteApi(this.ids.join(',')).then(() => {
|
||||
this.$message.success('刪除成功')
|
||||
@@ -500,6 +552,16 @@ export default {
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
.demo::-webkit-scrollbar {
|
||||
display: none; /* Chrome Safari */
|
||||
}
|
||||
|
||||
.demo {
|
||||
scrollbar-width: none; /* firefox */
|
||||
-ms-overflow-style: none; /* IE 10+ */
|
||||
overflow-x: hidden;
|
||||
overflow-y: auto;
|
||||
}
|
||||
.temp {
|
||||
height: 0;
|
||||
margin-bottom: 0;
|
||||
@@ -515,6 +577,7 @@ export default {
|
||||
}
|
||||
.upload-demo {
|
||||
display: inline-block !important;
|
||||
float: left;
|
||||
}
|
||||
.tree_w {
|
||||
padding: 20px 30px
|
||||
@@ -524,7 +587,7 @@ export default {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
font-size: 14px;
|
||||
font-size: 12px;
|
||||
padding-right: 8px;
|
||||
color: #4386c6;
|
||||
}
|
||||
@@ -607,7 +670,7 @@ export default {
|
||||
box-sizing: border-box;
|
||||
.trees {
|
||||
width: 100%;
|
||||
max-height: 374px;
|
||||
max-height: 345px;
|
||||
}
|
||||
}
|
||||
.scollhide::-webkit-scrollbar {
|
||||
@@ -617,10 +680,12 @@ export default {
|
||||
.conters{
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
max-height: 296px;
|
||||
overflow: auto;
|
||||
}
|
||||
.conters:after {content: ""; width: 410px !important; }
|
||||
.gridPic{
|
||||
margin-right: 20px;
|
||||
margin-right: 15px;
|
||||
margin-bottom: 10px;
|
||||
width: 110px;
|
||||
height: 110px;
|
||||
@@ -636,11 +701,12 @@ export default {
|
||||
height: 100%;
|
||||
.bnt {
|
||||
width: 100%;
|
||||
padding: 0 13px 10px 15px;
|
||||
padding: 0 13px 10px 7px;
|
||||
box-sizing: border-box;
|
||||
display: flex;
|
||||
}
|
||||
.pictrueList {
|
||||
padding-left: 15px;
|
||||
/*padding-left: 15px;*/
|
||||
width: 100%;
|
||||
el-image {
|
||||
width: 100%;
|
||||
|
||||
Reference in New Issue
Block a user