修改提交代码
This commit is contained in:
@ -1,5 +1,12 @@
|
||||
import request from '@/utils/request';
|
||||
|
||||
// 获取短信发送的总条数
|
||||
export function getSmsCount(params) {
|
||||
return request({
|
||||
url: '/mobile/getSmsCount',
|
||||
params
|
||||
});
|
||||
}
|
||||
// 修改活动
|
||||
export function qrUpdate(data) {
|
||||
return request({
|
||||
@ -18,9 +25,11 @@ export function orderList(data, params) {
|
||||
});
|
||||
}
|
||||
// 获取活动领取名单列表
|
||||
export function userList(params) {
|
||||
export function userList(data, params) {
|
||||
return request({
|
||||
url: '/aUser/userList',
|
||||
method: 'post',
|
||||
data,
|
||||
params
|
||||
});
|
||||
}
|
||||
|
@ -1,5 +1,5 @@
|
||||
<template>
|
||||
<div :class="{'hidden':hidden}" class="pagination-container">
|
||||
<div :class="{ hidden: hidden }" class="pagination-container">
|
||||
<el-pagination
|
||||
:background="background"
|
||||
:current-page.sync="currentPage"
|
||||
@ -15,7 +15,7 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { scrollTo } from '@/utils/scroll-to'
|
||||
import { scrollTo } from '@/utils/scroll-to';
|
||||
|
||||
export default {
|
||||
name: 'Pagination',
|
||||
@ -35,7 +35,7 @@ export default {
|
||||
pageSizes: {
|
||||
type: Array,
|
||||
default() {
|
||||
return [10, 20, 30, 50]
|
||||
return [10, 20, 30, 50];
|
||||
}
|
||||
},
|
||||
layout: {
|
||||
@ -58,41 +58,41 @@ export default {
|
||||
computed: {
|
||||
currentPage: {
|
||||
get() {
|
||||
return this.page
|
||||
return this.page;
|
||||
},
|
||||
set(val) {
|
||||
this.$emit('update:page', val)
|
||||
this.$emit('update:page', val);
|
||||
}
|
||||
},
|
||||
pageSize: {
|
||||
get() {
|
||||
return this.limit
|
||||
return this.limit;
|
||||
},
|
||||
set(val) {
|
||||
this.$emit('update:limit', val)
|
||||
this.$emit('update:limit', val);
|
||||
}
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
handleSizeChange(val) {
|
||||
this.$emit('pagination', { page: this.currentPage, limit: val })
|
||||
this.$emit('pagination', { page: this.currentPage, limit: val });
|
||||
if (this.autoScroll) {
|
||||
scrollTo(0, 800)
|
||||
scrollTo(0, 800);
|
||||
}
|
||||
},
|
||||
handleCurrentChange(val) {
|
||||
this.$emit('pagination', { page: val, limit: this.pageSize })
|
||||
this.$emit('pagination', { page: val, limit: this.pageSize });
|
||||
if (this.autoScroll) {
|
||||
scrollTo(0, 800)
|
||||
scrollTo(0, 800);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
.pagination-container {
|
||||
background: #fff;
|
||||
/* background: #fff; */
|
||||
padding: 32px 16px;
|
||||
}
|
||||
.pagination-container.hidden {
|
||||
|
@ -14,8 +14,7 @@
|
||||
>
|
||||
<i class="el-icon-plus"></i>
|
||||
</el-upload>
|
||||
<el-dialog :visible.sync="dialogVisible">
|
||||
<!-- :append-to-body="true" -->
|
||||
<el-dialog :visible.sync="dialogVisible" :append-to-body="true">
|
||||
<img width="100%" :src="dialogImageUrl" alt="" />
|
||||
</el-dialog>
|
||||
</div>
|
||||
|
@ -228,14 +228,14 @@
|
||||
</span>
|
||||
<el-input-number class="w-60" :controls="false" size="mini"></el-input-number>-->
|
||||
</div>
|
||||
<div class="style-config">
|
||||
<!-- <div class="style-config">
|
||||
<span class="label">
|
||||
对齐
|
||||
</span>
|
||||
<align-select
|
||||
v-model="activeWidget.style.align"
|
||||
></align-select>
|
||||
</div>
|
||||
</div> -->
|
||||
<div class="style-config">
|
||||
<span class="label">其他</span>
|
||||
<span
|
||||
@ -316,19 +316,19 @@ export default {
|
||||
data() {
|
||||
return {
|
||||
painting: {
|
||||
width: '120px',
|
||||
height: '120px',
|
||||
width: '240px',
|
||||
height: '240px',
|
||||
background: '#eee',
|
||||
views: [
|
||||
{
|
||||
type: 'qrcode',
|
||||
content: 'http://golden.shangqie.cn/#/?id=' + this.id,
|
||||
content: 'http://golden.shangqie.cn?id=' + this.id,
|
||||
css: {
|
||||
top: '0',
|
||||
left: '0',
|
||||
color: '#000',
|
||||
width: '120px',
|
||||
height: '120px'
|
||||
width: '240px',
|
||||
height: '240px'
|
||||
}
|
||||
}
|
||||
]
|
||||
@ -416,6 +416,9 @@ export default {
|
||||
handleActiveWidget(item) {
|
||||
this.widgetList.forEach(w => {
|
||||
if (item.uuid === w.uuid) {
|
||||
if (w.type == 'text') {
|
||||
w.setDataRange.box.detail.background = false;
|
||||
}
|
||||
w.active = !item.active;
|
||||
} else {
|
||||
w.active = false;
|
||||
@ -516,7 +519,7 @@ export default {
|
||||
{
|
||||
useCORS: true,
|
||||
// 编辑器缩放保持 960 * 720 的尺寸
|
||||
scale: 1 / this.dZoom
|
||||
scale: 3 / this.dZoom
|
||||
}
|
||||
).then(async canvas => {
|
||||
// console.timeEnd('1');
|
||||
@ -684,10 +687,10 @@ export default {
|
||||
uuid: '32a' + +new Date(),
|
||||
active: false,
|
||||
style: {
|
||||
top: 129,
|
||||
left: 86,
|
||||
height: 120,
|
||||
width: 120,
|
||||
top: 65,
|
||||
left: 17,
|
||||
height: 240,
|
||||
width: 240,
|
||||
align: { x: 0, y: 0 },
|
||||
lineHeight: 14,
|
||||
fontSize: 14,
|
||||
@ -761,10 +764,10 @@ export default {
|
||||
}
|
||||
},
|
||||
content: {
|
||||
show: false
|
||||
show: true
|
||||
},
|
||||
innerStyle: {
|
||||
show: false,
|
||||
show: true,
|
||||
detail: {
|
||||
align: true,
|
||||
lineHeight: true,
|
||||
@ -813,10 +816,10 @@ export default {
|
||||
}
|
||||
},
|
||||
content: {
|
||||
show: false
|
||||
show: true
|
||||
},
|
||||
innerStyle: {
|
||||
show: false,
|
||||
show: true,
|
||||
detail: {
|
||||
align: true,
|
||||
lineHeight: true,
|
||||
|
@ -31,7 +31,7 @@ export default {
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
title: '金槐花提货管理',
|
||||
title: '金淮花提货管理',
|
||||
logo: logoImg
|
||||
// logo: ''
|
||||
};
|
||||
|
@ -1,5 +1,5 @@
|
||||
module.exports = {
|
||||
title: '金槐花服务平台',
|
||||
title: '金淮花服务平台',
|
||||
|
||||
/**
|
||||
* 是否系统布局配置
|
||||
|
@ -2,19 +2,29 @@
|
||||
<div class="dashboard-editor-container">
|
||||
<div style="height:10%"></div>
|
||||
<el-row class="tc">
|
||||
<div style="font-size:50px">欢迎登录金槐花提货管理系统</div>
|
||||
<!-- <div class="mt10 mb10"></div> -->
|
||||
<div style="font-size:50px">欢迎登录金淮花提货管理系统</div>
|
||||
<div class="mt20 mb10 count">
|
||||
已成功验证人数:<span>{{ count }}</span>
|
||||
</div>
|
||||
</el-row>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { getSmsCount } from '@/api/index';
|
||||
export default {
|
||||
name: 'home',
|
||||
data() {
|
||||
return {};
|
||||
return {
|
||||
count: 0
|
||||
};
|
||||
},
|
||||
methods: {}
|
||||
methods: {},
|
||||
created() {
|
||||
getSmsCount().then(({ data }) => {
|
||||
this.count = data;
|
||||
});
|
||||
}
|
||||
};
|
||||
</script>
|
||||
|
||||
@ -42,6 +52,21 @@ export default {
|
||||
}
|
||||
.tc {
|
||||
text-align: center;
|
||||
.count {
|
||||
border-radius: 6px;
|
||||
height: 108px;
|
||||
line-height: 108px;
|
||||
background-color: rgba(255, 255, 255, 0.4);
|
||||
font-size: 20px;
|
||||
font-weight: 700;
|
||||
box-shadow: rgba(0, 0, 0, 0.05) 4px 4px 40px 0px;
|
||||
border-color: rgba(0, 0, 0, 0.05);
|
||||
span {
|
||||
vertical-align: top;
|
||||
font-size: 40px;
|
||||
color: #41b584;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@media (max-width: 1024px) {
|
||||
|
@ -25,10 +25,26 @@
|
||||
clearable
|
||||
placeholder="请选择"
|
||||
>
|
||||
<el-option key="0" label="未领取" value="0" />
|
||||
<el-option key="1" label="已领取" value="1" />
|
||||
<el-option
|
||||
v-for="item in optionList"
|
||||
:key="item.key"
|
||||
:label="item.value"
|
||||
:value="item.key"
|
||||
/>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="领取时间">
|
||||
<el-date-picker
|
||||
v-model="dateRange"
|
||||
type="daterange"
|
||||
value-format="yyyy-MM-dd HH:mm:ss"
|
||||
align="right"
|
||||
start-placeholder="开始日期"
|
||||
end-placeholder="结束日期"
|
||||
:default-time="['00:00:00', '23:59:59']"
|
||||
>
|
||||
</el-date-picker>
|
||||
</el-form-item>
|
||||
<el-button type="primary" @click="handleSearchList" size="small">
|
||||
查询
|
||||
</el-button>
|
||||
@ -69,6 +85,13 @@
|
||||
type="success"
|
||||
>一键删除</el-button
|
||||
>
|
||||
<el-button
|
||||
@click="handleImportStatus"
|
||||
class="btn-del"
|
||||
size="small"
|
||||
type="success"
|
||||
>一键发货</el-button
|
||||
>
|
||||
</div>
|
||||
</el-card>
|
||||
<!-- @selection-change="handleSelectionChange" -->
|
||||
@ -83,19 +106,34 @@
|
||||
label="姓名"
|
||||
prop="name"
|
||||
align="center"
|
||||
width="80px"
|
||||
></el-table-column>
|
||||
<el-table-column
|
||||
label="手机号"
|
||||
prop="phone"
|
||||
align="center"
|
||||
width="120px"
|
||||
></el-table-column>
|
||||
<el-table-column
|
||||
label="单位"
|
||||
align="center"
|
||||
prop="unit"
|
||||
show-overflow-tooltip
|
||||
></el-table-column>
|
||||
<el-table-column
|
||||
label="地址"
|
||||
label="收货姓名"
|
||||
prop="otherName"
|
||||
align="center"
|
||||
width="80px"
|
||||
></el-table-column>
|
||||
<el-table-column
|
||||
label="收货手机号"
|
||||
prop="otherPhone"
|
||||
align="center"
|
||||
width="120px"
|
||||
></el-table-column>
|
||||
<el-table-column
|
||||
label="收货地址"
|
||||
align="center"
|
||||
prop="address"
|
||||
></el-table-column>
|
||||
@ -103,17 +141,37 @@
|
||||
label="创建时间"
|
||||
align="center"
|
||||
prop="createTime"
|
||||
width="100px"
|
||||
></el-table-column>
|
||||
<el-table-column label="领取状态" align="center" prop="status">
|
||||
<el-table-column
|
||||
label="领取状态"
|
||||
align="center"
|
||||
prop="status"
|
||||
width="80px"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<el-tag v-if="scope.row.status == 0" type="danger">未领取</el-tag>
|
||||
<el-tag v-else>已领取</el-tag>
|
||||
<el-tag v-else-if="scope.row.status == 1">已领取</el-tag>
|
||||
<el-tag v-else type="warning">已发货</el-tag>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="领取时间" align="center" prop="receiveTime">
|
||||
<!-- <template slot-scope="scope">
|
||||
<span v-if="scope.row.status == '1'">
|
||||
{{ scope.row.receiveTime }}
|
||||
</span>
|
||||
<span v-else></span>
|
||||
</template> -->
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
label="领取时间"
|
||||
label="快递公司"
|
||||
align="center"
|
||||
prop="receiveTime"
|
||||
prop="trackingUnit"
|
||||
></el-table-column>
|
||||
<el-table-column
|
||||
label="快递单号"
|
||||
align="center"
|
||||
prop="trackingNumber"
|
||||
></el-table-column>
|
||||
<el-table-column
|
||||
label="操作"
|
||||
@ -121,6 +179,14 @@
|
||||
align="center"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<el-button
|
||||
@click="handleStatus(scope.row)"
|
||||
type="text"
|
||||
size="mini"
|
||||
style="color:#41b584"
|
||||
:disabled="scope.row.status == '0'"
|
||||
>发货</el-button
|
||||
>
|
||||
<el-button @click="handleUpdate(scope.row)" type="text" size="mini"
|
||||
>编辑</el-button
|
||||
>
|
||||
@ -143,12 +209,37 @@
|
||||
/>
|
||||
<!-- 添加修改 -->
|
||||
<el-dialog :title="title" :visible.sync="dialogVisible" width="25%">
|
||||
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
|
||||
<el-form ref="form" :model="form" :rules="rules" label-width="120px">
|
||||
<el-form-item label="姓名" prop="name">
|
||||
<el-input v-model="form.name"></el-input>
|
||||
<el-input v-model="form.name" :disabled="form.status == 1"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="手机号" prop="phone">
|
||||
<el-input v-model="form.phone" maxlength="11"></el-input>
|
||||
<el-input
|
||||
v-model="form.phone"
|
||||
:disabled="form.status == 1"
|
||||
maxlength="11"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item
|
||||
label="收货手机号"
|
||||
prop="otherPhone"
|
||||
v-if="form.status == 1"
|
||||
>
|
||||
<!-- v-if="title == '修改名单'" -->
|
||||
<el-input v-model="form.otherPhone" maxlength="11"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="收货地址" prop="address" v-if="form.status == 1">
|
||||
<el-input v-model="form.address" type="textarea" autosize></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="领取状态" prop="status" v-if="form.status">
|
||||
<el-select v-model="form.status" placeholder="请选择" disabled>
|
||||
<el-option
|
||||
v-for="item in optionList"
|
||||
:key="item.key"
|
||||
:label="item.value"
|
||||
:value="item.key"
|
||||
/>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<span slot="footer" class="dialog-footer">
|
||||
@ -157,6 +248,27 @@
|
||||
</span>
|
||||
</el-dialog>
|
||||
|
||||
<!-- 发货 -->
|
||||
<el-dialog title="发货" :visible.sync="statusDialogVisible" width="25%">
|
||||
<el-form
|
||||
ref="statusForm"
|
||||
:model="statusForm"
|
||||
:rules="statusRules"
|
||||
label-width="90px"
|
||||
>
|
||||
<el-form-item label="快递公司" prop="trackingUnit">
|
||||
<el-input v-model="statusForm.trackingUnit"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="快递单号" prop="trackingNumber">
|
||||
<el-input v-model="statusForm.trackingNumber"></el-input>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<span slot="footer" class="dialog-footer">
|
||||
<el-button @click="statusDialogVisible = false">取 消</el-button>
|
||||
<el-button type="primary" @click="submitStatusForm">确 定</el-button>
|
||||
</span>
|
||||
</el-dialog>
|
||||
|
||||
<!-- 用户导入对话框 -->
|
||||
<el-dialog
|
||||
:title="upload.title"
|
||||
@ -199,6 +311,38 @@
|
||||
<el-button @click="upload.open = false">取 消</el-button>
|
||||
</div>
|
||||
</el-dialog>
|
||||
<!-- 发货文件 -->
|
||||
<el-dialog
|
||||
:title="uploadStatus.title"
|
||||
:visible.sync="uploadStatus.open"
|
||||
width="400px"
|
||||
append-to-body
|
||||
>
|
||||
<el-upload
|
||||
ref="uploadStatus"
|
||||
:limit="1"
|
||||
accept=".xlsx, .xls"
|
||||
:headers="uploadStatus.headers"
|
||||
:action="uploadStatus.url"
|
||||
:disabled="uploadStatus.isUploading"
|
||||
:on-progress="handleFileUploadProgress"
|
||||
:on-success="handleFileStatusSuccess"
|
||||
:auto-upload="false"
|
||||
drag
|
||||
>
|
||||
<i class="el-icon-upload"></i>
|
||||
<div class="el-upload__text">
|
||||
将文件拖到此处,或
|
||||
<em>点击上传</em>
|
||||
</div>
|
||||
</el-upload>
|
||||
<div slot="footer" class="dialog-footer">
|
||||
<el-button type="primary" @click="submitFileStatusForm"
|
||||
>确 定</el-button
|
||||
>
|
||||
<el-button @click="uploadStatus.open = false">取 消</el-button>
|
||||
</div>
|
||||
</el-dialog>
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
@ -213,7 +357,35 @@ import { getToken } from '@/utils/auth';
|
||||
export default {
|
||||
name: 'Index',
|
||||
data() {
|
||||
var checkPhone = (rule, value, callback) => {
|
||||
if (!value) {
|
||||
return callback(new Error('手机号不能为空'));
|
||||
} else {
|
||||
const reg = /^1[3|4|5|7|8|9][0-9]\d{8}$/;
|
||||
console.log(reg.test(value));
|
||||
if (reg.test(value)) {
|
||||
callback();
|
||||
} else {
|
||||
return callback(new Error('请输入正确的手机号'));
|
||||
}
|
||||
}
|
||||
};
|
||||
return {
|
||||
optionList: [
|
||||
{
|
||||
key: '0',
|
||||
value: '未领取'
|
||||
},
|
||||
{
|
||||
key: '1',
|
||||
value: '已领取'
|
||||
},
|
||||
{
|
||||
key: '2',
|
||||
value: '已发货'
|
||||
}
|
||||
],
|
||||
dateRange: [],
|
||||
// 用户导入参数
|
||||
upload: {
|
||||
// 是否显示弹出层(用户导入)
|
||||
@ -227,6 +399,19 @@ export default {
|
||||
// 上传的地址
|
||||
url: process.env.VUE_APP_BASE_API + '/aUser/importDate'
|
||||
},
|
||||
// 发货文件参数
|
||||
uploadStatus: {
|
||||
// 是否显示弹出层(用户导入)
|
||||
open: false,
|
||||
// 弹出层标题(用户导入)
|
||||
title: '',
|
||||
// 是否禁用上传
|
||||
isUploading: false,
|
||||
// 设置上传的请求头部
|
||||
headers: { Authorization: 'Bearer ' + getToken() },
|
||||
// 上传的地址
|
||||
url: process.env.VUE_APP_BASE_API + '/aUser/batchShipment'
|
||||
},
|
||||
unit: '',
|
||||
// 选中数组
|
||||
ids: [],
|
||||
@ -243,27 +428,50 @@ export default {
|
||||
total: 0,
|
||||
dataList: [],
|
||||
dialogVisible: false,
|
||||
statusDialogVisible: false,
|
||||
rowItem: {},
|
||||
title: '',
|
||||
form: {},
|
||||
statusForm: {},
|
||||
rules: {
|
||||
name: [{ required: true, message: '请输入', trigger: 'blur' }],
|
||||
phone: [{ required: true, message: '请输入', trigger: 'blur' }],
|
||||
// phone: [{ required: true, message: '请输入', trigger: 'blur' }],
|
||||
phone: [{ required: true, validator: checkPhone, trigger: 'blur' }],
|
||||
unit: [{ required: true, message: '请输入', trigger: 'blur' }],
|
||||
// otherPhone: [{ required: true, message: '请输入', trigger: 'blur' }],
|
||||
otherPhone: [
|
||||
{ required: true, validator: checkPhone, trigger: 'blur' }
|
||||
],
|
||||
address: [{ required: true, message: '请输入', trigger: 'blur' }]
|
||||
},
|
||||
statusRules: {
|
||||
trackingUnit: [{ required: true, message: '请输入', trigger: 'blur' }],
|
||||
trackingNumber: [{ required: true, message: '请输入', trigger: 'blur' }]
|
||||
}
|
||||
};
|
||||
},
|
||||
methods: {
|
||||
importTemplate() {
|
||||
window.location.href =
|
||||
'http://192.168.0.125:9000/pic/20210901/1432982759525191680.xlsx';
|
||||
'http://124.70.138.50:9000/pic/20210910/1436156274994712576.xlsx';
|
||||
},
|
||||
handleSearchList() {
|
||||
this.queryParams.pageNum = 1;
|
||||
this.getDataList();
|
||||
},
|
||||
getDataList() {
|
||||
userList(this.queryParams).then(({ data }) => {
|
||||
if (this.dateRange == [] || !this.dateRange) {
|
||||
delete this.queryParams.startTime;
|
||||
delete this.queryParams.endTime;
|
||||
} else {
|
||||
this.queryParams.startTime = this.dateRange[0];
|
||||
this.queryParams.endTime = this.dateRange[1];
|
||||
}
|
||||
const query = {
|
||||
pageNum: this.queryParams.pageNum,
|
||||
pageSize: this.queryParams.pageSize
|
||||
};
|
||||
userList(this.queryParams, query).then(({ data }) => {
|
||||
this.dataList = data.list;
|
||||
this.total = data.total;
|
||||
});
|
||||
@ -278,6 +486,15 @@ export default {
|
||||
this.dialogVisible = true;
|
||||
this.title = '添加名单';
|
||||
},
|
||||
handleStatus(row) {
|
||||
this.statusForm = {};
|
||||
this.resetForm('statusForm');
|
||||
this.statusDialogVisible = true;
|
||||
this.rowItem = Object.assign({}, row);
|
||||
if (row.status == 2) {
|
||||
this.statusForm = Object.assign({}, row);
|
||||
}
|
||||
},
|
||||
// 编辑
|
||||
handleUpdate(row) {
|
||||
this.resetForm('form');
|
||||
@ -306,27 +523,70 @@ export default {
|
||||
}
|
||||
});
|
||||
},
|
||||
submitStatusForm() {
|
||||
this.$refs['statusForm'].validate(valid => {
|
||||
if (valid) {
|
||||
console.log(this.rowItem);
|
||||
console.log(this.statusForm);
|
||||
let query =
|
||||
this.rowItem.status == '2'
|
||||
? this.statusForm
|
||||
: Object.assign({}, this.rowItem, this.statusForm);
|
||||
query.status = '2';
|
||||
aUserUpdate(query).then(response => {
|
||||
this.msgSuccess('修改成功');
|
||||
this.statusDialogVisible = false;
|
||||
this.getDataList();
|
||||
});
|
||||
}
|
||||
});
|
||||
},
|
||||
// 导出
|
||||
handleExport() {
|
||||
this.$confirm('是否确认导出所有定时任务数据项?', '警告', {
|
||||
this.$confirm('是否确认导出所有数据项?', '警告', {
|
||||
confirmButtonText: '确定',
|
||||
cancelButtonText: '取消',
|
||||
type: 'warning'
|
||||
}).then(() => {
|
||||
window.location.href =
|
||||
process.env.VUE_APP_BASE_API +
|
||||
'/aUser/export?activityId=' +
|
||||
this.queryParams.activityId;
|
||||
'/aUser/export' +
|
||||
this.changeParam(this.queryParams);
|
||||
// process.env.VUE_APP_BASE_API + '/aUser/export?' + this.queryParams;
|
||||
// this.queryParams.activityId;
|
||||
});
|
||||
},
|
||||
changeParam(param) {
|
||||
return JSON.stringify(param)
|
||||
.replace(/:/g, '=')
|
||||
.replace(/,/g, '&')
|
||||
.replace(/{/g, '?')
|
||||
.replace(/}/g, '')
|
||||
.replace(/"/g, '');
|
||||
},
|
||||
/** 导入按钮操作 */
|
||||
handleImport() {
|
||||
this.upload.title = '导入名单';
|
||||
this.upload.open = true;
|
||||
},
|
||||
handleImportStatus() {
|
||||
this.uploadStatus.title = '发货管理';
|
||||
this.uploadStatus.open = true;
|
||||
},
|
||||
// 发货文件上传成功处理
|
||||
handleFileStatusSuccess(response, file, fileList) {
|
||||
this.uploadStatus.open = false;
|
||||
this.uploadStatus.isUploading = false;
|
||||
this.$refs.uploadStatus.clearFiles();
|
||||
this.$alert(response.data, '发货结果', {
|
||||
dangerouslyUseHTMLString: true
|
||||
});
|
||||
this.getDataList();
|
||||
},
|
||||
// 文件上传中处理
|
||||
handleFileUploadProgress(event, file, fileList) {
|
||||
this.upload.isUploading = true;
|
||||
this.uploadStatus.isUploading = true;
|
||||
},
|
||||
// 文件上传成功处理
|
||||
handleFileSuccess(response, file, fileList) {
|
||||
@ -342,6 +602,9 @@ export default {
|
||||
submitFileForm() {
|
||||
this.$refs.upload.submit();
|
||||
},
|
||||
submitFileStatusForm() {
|
||||
this.$refs.uploadStatus.submit();
|
||||
},
|
||||
/** 删除按钮操作 */
|
||||
handleDelete(row) {
|
||||
if (!row && !this.total) return this.msgInfo('暂无数据');
|
||||
@ -388,3 +651,15 @@ export default {
|
||||
}
|
||||
};
|
||||
</script>
|
||||
<style lang="scss">
|
||||
.el-date-table td.in-range div {
|
||||
background-color: #d2f9e8 !important;
|
||||
}
|
||||
</style>
|
||||
<style lang="scss" scoped>
|
||||
/deep/.el-dialog__header {
|
||||
.el-dialog__title {
|
||||
color: #000 !important;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
@ -54,7 +54,7 @@
|
||||
<template slot-scope="scope">
|
||||
<el-image
|
||||
style="width: 100px; height: 100px"
|
||||
:src="scope.row.pic"
|
||||
:src="scope.row.pic.split(',')[0]"
|
||||
fit="cover"
|
||||
></el-image>
|
||||
</template>
|
||||
@ -109,32 +109,32 @@
|
||||
/>
|
||||
<!-- 添加修改 -->
|
||||
<el-dialog :title="title" :visible.sync="dialogVisible" width="50%">
|
||||
<el-form ref="form" :model="form" :rules="rules" label-width="100px">
|
||||
<el-form ref="form" :model="value" :rules="rules" label-width="100px">
|
||||
<el-form-item label="活动名称" prop="name">
|
||||
<el-input v-model="form.name"></el-input>
|
||||
<el-input
|
||||
v-model="value.name"
|
||||
placeholder="请输入活动名称"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="单位" prop="unit">
|
||||
<el-input v-model="form.unit"></el-input>
|
||||
<el-input v-model="value.unit" placeholder="请输入单位"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="截止时间">
|
||||
<el-date-picker
|
||||
v-model="form.lastTime"
|
||||
v-model="value.lastTime"
|
||||
type="datetime"
|
||||
value-format="yyyy-MM-dd hh:mm:ss"
|
||||
value-format="yyyy-MM-dd HH:mm:ss"
|
||||
placeholder="选择截止时间"
|
||||
>
|
||||
</el-date-picker>
|
||||
</el-form-item>
|
||||
<el-form-item label="礼品详情" prop="note">
|
||||
<div id="text">
|
||||
<editor v-model="form.note" :min-height="192" />
|
||||
<editor v-model="value.note" :min-height="192" />
|
||||
</div>
|
||||
</el-form-item>
|
||||
<el-form-item label="礼品图片" prop="pic">
|
||||
<multi-upload
|
||||
v-model="selectProductPics"
|
||||
:maxCount="1"
|
||||
></multi-upload>
|
||||
<multi-upload v-model="selectProductPics"></multi-upload>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<span slot="footer" class="dialog-footer">
|
||||
@ -166,10 +166,8 @@ export default {
|
||||
data() {
|
||||
return {
|
||||
imageUrl: require('@/assets/logo/logo.png'), //icon路径
|
||||
path:
|
||||
process.env.NODE_ENV === 'development'
|
||||
? 'http://golden.shangqie.cn/#/'
|
||||
: process.env.VUE_APP_BASE_API,
|
||||
path: 'http://golden.shangqie.cn',
|
||||
// path: 'http://192.168.0.148:8081',
|
||||
queryParams: {
|
||||
pageNum: 1,
|
||||
pageSize: 10
|
||||
@ -178,10 +176,16 @@ export default {
|
||||
dataList: [],
|
||||
dialogVisible: false,
|
||||
title: '',
|
||||
form: {},
|
||||
value: {
|
||||
pic: '',
|
||||
albumPics: ''
|
||||
},
|
||||
rules: {
|
||||
name: [{ required: true, message: '请输入', trigger: 'blur' }],
|
||||
unit: [{ required: true, message: '请输入', trigger: 'blur' }],
|
||||
unit: [
|
||||
{ required: true, message: '请输入', trigger: 'blur' },
|
||||
{ min: 2, message: '长度在 2 个字符及以上', trigger: 'blur' }
|
||||
],
|
||||
pic: [{ required: true, message: '请上传', trigger: 'blur' }],
|
||||
note: [{ required: true, message: '请输入', trigger: 'blur' }],
|
||||
lastTime: [
|
||||
@ -200,21 +204,21 @@ export default {
|
||||
get: function() {
|
||||
let pics = [];
|
||||
if (
|
||||
this.form.pic === undefined ||
|
||||
this.form.pic == null ||
|
||||
this.form.pic === ''
|
||||
this.value.pic === undefined ||
|
||||
this.value.pic == null ||
|
||||
this.value.pic === ''
|
||||
) {
|
||||
return pics;
|
||||
}
|
||||
pics.push(this.form.pic);
|
||||
pics.push(this.value.pic);
|
||||
if (
|
||||
this.form.albumPics === undefined ||
|
||||
this.form.albumPics == null ||
|
||||
this.form.albumPics === ''
|
||||
this.value.albumPics === undefined ||
|
||||
this.value.albumPics == null ||
|
||||
this.value.albumPics === ''
|
||||
) {
|
||||
return pics;
|
||||
}
|
||||
let albumPics = this.form.albumPics.split(',');
|
||||
let albumPics = this.value.albumPics.split(',');
|
||||
for (let i = 0; i < albumPics.length; i++) {
|
||||
pics.push(albumPics[i]);
|
||||
}
|
||||
@ -222,16 +226,16 @@ export default {
|
||||
},
|
||||
set: function(newValue) {
|
||||
if (newValue == null || newValue.length === 0) {
|
||||
this.form.pic = null;
|
||||
this.form.albumPics = null;
|
||||
this.value.pic = null;
|
||||
this.value.albumPics = null;
|
||||
} else {
|
||||
this.form.pic = newValue[0];
|
||||
this.form.albumPics = '';
|
||||
this.value.pic = newValue[0];
|
||||
this.value.albumPics = '';
|
||||
if (newValue.length > 1) {
|
||||
for (let i = 1; i < newValue.length; i++) {
|
||||
this.form.albumPics += newValue[i];
|
||||
this.value.albumPics += newValue[i];
|
||||
if (i !== newValue.length - 1) {
|
||||
this.form.albumPics += ',';
|
||||
this.value.albumPics += ',';
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -240,6 +244,12 @@ export default {
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
handleRemove(file, fileList) {
|
||||
console.log(file, fileList);
|
||||
},
|
||||
handlePictureCardPreview(file) {
|
||||
this.dialogImageUrl = file.url;
|
||||
},
|
||||
handleSearchList() {
|
||||
this.queryParams.pageNum = 1;
|
||||
this.getDataList();
|
||||
@ -252,16 +262,21 @@ export default {
|
||||
},
|
||||
// 添加
|
||||
handleAdd() {
|
||||
this.form = {};
|
||||
this.value = {
|
||||
pic: '',
|
||||
albumPics: ''
|
||||
};
|
||||
this.resetForm('form');
|
||||
this.dialogVisible = true;
|
||||
this.title = '添加礼品';
|
||||
},
|
||||
// 编辑
|
||||
handleUpdate(row) {
|
||||
this.form = {};
|
||||
this.resetForm('form');
|
||||
this.form = Object.assign({}, row);
|
||||
this.value = Object.assign({}, row, { albumPics: '' });
|
||||
const pics = row.pic.split(',');
|
||||
this.value.pic = pics[0];
|
||||
this.value.albumPics = pics.slice(1).join(',');
|
||||
this.dialogVisible = true;
|
||||
this.title = '修改活动';
|
||||
},
|
||||
@ -270,13 +285,19 @@ export default {
|
||||
this.$refs['form'].validate(valid => {
|
||||
if (valid) {
|
||||
if (this.title == '修改活动') {
|
||||
qrUpdate(this.form).then(response => {
|
||||
if (this.value.albumPics != '') {
|
||||
this.value.pic = this.value.pic + ',' + this.value.albumPics;
|
||||
}
|
||||
qrUpdate(this.value).then(response => {
|
||||
this.msgSuccess('修改成功');
|
||||
this.dialogVisible = false;
|
||||
this.getDataList();
|
||||
});
|
||||
} else {
|
||||
qrCreate(this.form).then(response => {
|
||||
if (this.value.albumPics != '') {
|
||||
this.value.pic = this.value.pic + ',' + this.value.albumPics;
|
||||
}
|
||||
qrCreate(this.value).then(response => {
|
||||
this.msgSuccess('新增成功');
|
||||
this.dialogVisible = false;
|
||||
this.getDataList();
|
||||
@ -287,9 +308,14 @@ export default {
|
||||
},
|
||||
// 跳转页面
|
||||
handlePage(row) {
|
||||
if (!row.id) return this.msgError('数据错误,无ID');
|
||||
const query = {
|
||||
id: row.id,
|
||||
unit: row.unit
|
||||
};
|
||||
this.$router.push({
|
||||
path: '/index1',
|
||||
query: { row: JSON.stringify(row) }
|
||||
query: { row: JSON.stringify(query) }
|
||||
});
|
||||
// this.$router.push({ path: '/index1', query: { id: row.id } });
|
||||
},
|
||||
|
@ -49,12 +49,12 @@
|
||||
<single-upload
|
||||
v-model="imgSrc"
|
||||
@input="checkImg"
|
||||
v-if="index == 2"
|
||||
v-if="index == 3"
|
||||
></single-upload>
|
||||
<el-button
|
||||
style="width:80%"
|
||||
size="mini"
|
||||
v-if="index == 3"
|
||||
v-if="index == 2"
|
||||
@click="clickParent"
|
||||
>
|
||||
添加文本
|
||||
@ -178,10 +178,10 @@ export default {
|
||||
uuid: '32a' + +new Date(),
|
||||
active: false,
|
||||
style: {
|
||||
top: 129,
|
||||
left: 86,
|
||||
height: 120,
|
||||
width: 120,
|
||||
top: 65,
|
||||
left: 17,
|
||||
height: 240,
|
||||
width: 240,
|
||||
align: { x: 0, y: 0 },
|
||||
lineHeight: 14,
|
||||
fontSize: 14,
|
||||
@ -255,10 +255,10 @@ export default {
|
||||
}
|
||||
},
|
||||
content: {
|
||||
show: false
|
||||
show: true
|
||||
},
|
||||
innerStyle: {
|
||||
show: false,
|
||||
show: true,
|
||||
detail: {
|
||||
align: true,
|
||||
lineHeight: true,
|
||||
@ -307,10 +307,10 @@ export default {
|
||||
}
|
||||
},
|
||||
content: {
|
||||
show: false
|
||||
show: true
|
||||
},
|
||||
innerStyle: {
|
||||
show: false,
|
||||
show: true,
|
||||
detail: {
|
||||
align: true,
|
||||
lineHeight: true,
|
||||
@ -506,19 +506,19 @@ export default {
|
||||
const { id } = this.$route.query;
|
||||
this.id = id;
|
||||
this.painting = {
|
||||
width: '120px',
|
||||
height: '120px',
|
||||
width: '240px',
|
||||
height: '240px',
|
||||
background: '#eee',
|
||||
views: [
|
||||
{
|
||||
type: 'qrcode',
|
||||
content: 'http://golden.shangqie.cn/#/?id=' + id,
|
||||
content: 'http://golden.shangqie.cn?id=' + id,
|
||||
css: {
|
||||
top: '0',
|
||||
left: '0',
|
||||
color: '#000',
|
||||
width: '120px',
|
||||
height: '120px'
|
||||
width: '240px',
|
||||
height: '240px'
|
||||
}
|
||||
}
|
||||
]
|
||||
|
@ -2,7 +2,7 @@
|
||||
<div class="login">
|
||||
<div class="login-title">
|
||||
<!-- <img src="../assets/image/logo.png" alt="" /> -->
|
||||
<!-- <span>金槐花服务平台</span> -->
|
||||
<!-- <span>金淮花服务平台</span> -->
|
||||
</div>
|
||||
<el-form
|
||||
ref="loginForm"
|
||||
@ -10,11 +10,11 @@
|
||||
:rules="loginRules"
|
||||
class="login-form"
|
||||
>
|
||||
<!-- <h3 class="col">金槐花服务平台</h3>
|
||||
<!-- <h3 class="col">金淮花服务平台</h3>
|
||||
<h1 class="title">登录</h1> -->
|
||||
<div style="font-size: 54px;font-weight: 500;color:#fff">hello</div>
|
||||
<div style="margin: 29px 0;font-size: 26px;font-weight: 400;color:#fff">
|
||||
欢迎来到金槐花管理系统
|
||||
欢迎来到金淮花管理系统
|
||||
</div>
|
||||
<div class="login-info">
|
||||
<el-form-item prop="username">
|
||||
@ -48,7 +48,7 @@
|
||||
</el-form-item>
|
||||
<el-checkbox
|
||||
v-model="loginForm.rememberMe"
|
||||
style="margin: 0px 0px 25px 0px"
|
||||
style="margin: 0px 0px 25px 0px;color:#fff"
|
||||
>记住密码</el-checkbox
|
||||
>
|
||||
<el-form-item style="width: 100%">
|
||||
@ -68,7 +68,7 @@
|
||||
<!-- <div class="login-form-bg"></div> -->
|
||||
<!-- 底部 -->
|
||||
<!-- <div class="el-login-footer">
|
||||
<span>版权所有:金槐花</span>
|
||||
<span>版权所有:金淮花</span>
|
||||
</div> -->
|
||||
</div>
|
||||
</template>
|
||||
|
@ -6,7 +6,7 @@ function resolve(dir) {
|
||||
return path.join(__dirname, dir);
|
||||
}
|
||||
|
||||
const name = defaultSettings.title || '金槐花服务平台'; // 标题
|
||||
const name = defaultSettings.title || '金淮花服务平台'; // 标题
|
||||
|
||||
const port = process.env.port || process.env.npm_config_port || 8080; // 端口
|
||||
|
||||
|
Reference in New Issue
Block a user