Commit dc517170 authored by xiaosl's avatar xiaosl

Merge branch 'base-modify' of http://113.105.137.151:22280/youjj/cloud-platform-ui into base-modify

parents 73490ef7 8b1a8355
module.exports = {
NODE_ENV: '"development"',
BASE_API: '"http://10.1.37.246:8765"',//'"https://xxfcmgmt.upyuns.com"(正)',//http://10.1.37.192:9527(何), //https://xxtest.upyuns.com(测),10.1.37.246:9527(韩), 10.1.37.244(李斌)10.1.37.248:8765(小威)
BASE_API: '"https://xxtest.upyuns.com"',//'"https://xxfcmgmt.upyuns.com"(正)',//http://10.1.37.192:9527(何), //https://xxtest.upyuns.com(测),10.1.37.246:9527(韩), 10.1.37.244(李斌)10.1.37.248:8765(小威)
APP_ORIGIN: '"https://wallstreetcn.com"'
}
......@@ -3911,7 +3911,8 @@
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz",
"integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=",
"dev": true
"dev": true,
"optional": true
},
"aproba": {
"version": "1.1.1",
......@@ -3988,6 +3989,7 @@
"resolved": "https://registry.npmjs.org/block-stream/-/block-stream-0.0.9.tgz",
"integrity": "sha1-E+v+d4oDIFz+A3UUgeu0szAMEmo=",
"dev": true,
"optional": true,
"requires": {
"inherits": "~2.0.0"
}
......@@ -3997,6 +3999,7 @@
"resolved": "https://registry.npmjs.org/boom/-/boom-2.10.1.tgz",
"integrity": "sha1-OciRjO/1eZ+D+UkqhI9iWt0Mdm8=",
"dev": true,
"optional": true,
"requires": {
"hoek": "2.x.x"
}
......@@ -4016,7 +4019,8 @@
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/buffer-shims/-/buffer-shims-1.0.0.tgz",
"integrity": "sha1-mXjOMXOIxkmth5MCjDR37wRKi1E=",
"dev": true
"dev": true,
"optional": true
},
"caseless": {
"version": "0.12.0",
......@@ -4036,7 +4040,8 @@
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz",
"integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=",
"dev": true
"dev": true,
"optional": true
},
"combined-stream": {
"version": "1.0.5",
......@@ -4059,13 +4064,15 @@
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz",
"integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=",
"dev": true
"dev": true,
"optional": true
},
"core-util-is": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz",
"integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=",
"dev": true
"dev": true,
"optional": true
},
"cryptiles": {
"version": "2.0.5",
......@@ -4148,7 +4155,8 @@
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.0.2.tgz",
"integrity": "sha1-4QgOBljjALBilJkMxw4VAiNf1VA=",
"dev": true
"dev": true,
"optional": true
},
"forever-agent": {
"version": "0.6.1",
......@@ -4173,13 +4181,15 @@
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
"integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=",
"dev": true
"dev": true,
"optional": true
},
"fstream": {
"version": "1.0.11",
"resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.11.tgz",
"integrity": "sha1-XB+x8RdHcRTwYyoOtLcbPLD9MXE=",
"dev": true,
"optional": true,
"requires": {
"graceful-fs": "^4.1.2",
"inherits": "~2.0.0",
......@@ -4240,6 +4250,7 @@
"resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz",
"integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==",
"dev": true,
"optional": true,
"requires": {
"fs.realpath": "^1.0.0",
"inflight": "^1.0.4",
......@@ -4253,7 +4264,8 @@
"version": "4.1.11",
"resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz",
"integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=",
"dev": true
"dev": true,
"optional": true
},
"har-schema": {
"version": "1.0.5",
......@@ -4297,7 +4309,8 @@
"version": "2.16.3",
"resolved": "https://registry.npmjs.org/hoek/-/hoek-2.16.3.tgz",
"integrity": "sha1-ILt0A9POo5jpHcRxCo/xuCdKJe0=",
"dev": true
"dev": true,
"optional": true
},
"http-signature": {
"version": "1.1.1",
......@@ -4316,6 +4329,7 @@
"resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
"integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=",
"dev": true,
"optional": true,
"requires": {
"once": "^1.3.0",
"wrappy": "1"
......@@ -4325,7 +4339,8 @@
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz",
"integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=",
"dev": true
"dev": true,
"optional": true
},
"ini": {
"version": "1.3.4",
......@@ -4339,6 +4354,7 @@
"resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz",
"integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=",
"dev": true,
"optional": true,
"requires": {
"number-is-nan": "1.0.1"
}
......@@ -4354,7 +4370,8 @@
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
"integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=",
"dev": true
"dev": true,
"optional": true
},
"isstream": {
"version": "0.1.2",
......@@ -4455,6 +4472,7 @@
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
"integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
"dev": true,
"optional": true,
"requires": {
"brace-expansion": "1.1.7"
}
......@@ -4471,6 +4489,7 @@
"resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz",
"integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=",
"dev": true,
"optional": true,
"requires": {
"minimist": "0.0.8"
}
......@@ -4550,6 +4569,7 @@
"resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
"integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
"dev": true,
"optional": true,
"requires": {
"wrappy": "1"
}
......@@ -4583,7 +4603,8 @@
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
"integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=",
"dev": true
"dev": true,
"optional": true
},
"performance-now": {
"version": "0.2.0",
......@@ -4596,7 +4617,8 @@
"version": "1.0.7",
"resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz",
"integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=",
"dev": true
"dev": true,
"optional": true
},
"punycode": {
"version": "1.4.1",
......@@ -4639,6 +4661,7 @@
"resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.2.9.tgz",
"integrity": "sha1-z3jsb0ptHrQ9JkiMrJfwQudLf8g=",
"dev": true,
"optional": true,
"requires": {
"buffer-shims": "~1.0.0",
"core-util-is": "~1.0.0",
......@@ -4685,6 +4708,7 @@
"resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.1.tgz",
"integrity": "sha1-wjOOxkPfeht/5cVPqG9XQopV8z0=",
"dev": true,
"optional": true,
"requires": {
"glob": "^7.0.5"
}
......@@ -4693,7 +4717,8 @@
"version": "5.0.1",
"resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.0.1.tgz",
"integrity": "sha1-0mPKVGls2KMGtcplUekt5XkY++c=",
"dev": true
"dev": true,
"optional": true
},
"semver": {
"version": "5.3.0",
......@@ -4758,6 +4783,7 @@
"resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz",
"integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=",
"dev": true,
"optional": true,
"requires": {
"code-point-at": "^1.0.0",
"is-fullwidth-code-point": "^1.0.0",
......@@ -4769,6 +4795,7 @@
"resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.1.tgz",
"integrity": "sha1-YuIA8DmVWmgQ2N8KM//A8BNmLZg=",
"dev": true,
"optional": true,
"requires": {
"safe-buffer": "^5.0.1"
}
......@@ -4785,6 +4812,7 @@
"resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz",
"integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=",
"dev": true,
"optional": true,
"requires": {
"ansi-regex": "^2.0.0"
}
......@@ -4801,6 +4829,7 @@
"resolved": "https://registry.npmjs.org/tar/-/tar-2.2.1.tgz",
"integrity": "sha1-jk0qJWwOIYXGsYrWlK7JaLg8sdE=",
"dev": true,
"optional": true,
"requires": {
"block-stream": "*",
"fstream": "^1.0.2",
......@@ -4862,7 +4891,8 @@
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
"integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=",
"dev": true
"dev": true,
"optional": true
},
"uuid": {
"version": "3.0.1",
......@@ -4895,7 +4925,8 @@
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
"integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=",
"dev": true
"dev": true,
"optional": true
}
}
},
......
......@@ -16,3 +16,11 @@ export function saveNewMemberObject(obj) {
});
}
export function staffImport(form) {
return fetch({
url: '/api/admin/postion/admin/excel/import',
method: 'post',
data:form
});
}
......@@ -80,3 +80,54 @@ export function userPosition(obj) {
method: 'put',
});
}
// 用户身份录入列表
export function staffList(obj) {
return fetch({
url: '/api/admin/postion/admin/page',
method: 'post',
data: obj
});
}
// 身份列表
export function postions(obj) {
return fetch({
url: '/api/admin/postion/admin/postions',
method: 'get',
data: obj
});
}
// 添加员工
export function addEditor(obj) {
return fetch({
url: '/api/admin/postion/admin/add',
method: 'post',
data: obj
});
}
//删除员工
export function deleteStaffs(id) {
return fetch({
url: '/api/admin/postion/admin/' + id,
method: 'delete'
});
}
//检测员工
export function checkStaffs(id) {
return fetch({
url: '/api/admin/api/app/unauth/check?phone='+id,
method: 'get'
});
}
export function username(id) {
return fetch({
url: 'api/admin/public/app/userinfo-by-username?name='+id,
method: 'get'
});
}
\ No newline at end of file
......@@ -71,3 +71,48 @@ export function getStep(orderNo) {
method: 'get'
});
}
export function inquire(query) {
return fetch({
url: '/vehicle/vehicleInfo/rent/usable-vehicle',
method: 'get',
params:query
});
}
//创建订单
export function addIndent(params) {
return fetch({
url: '/api/order/orderRentVehicle/back-stage/add',
method: 'post',
data:params
});
}
//删除订单
export function calculate(no, params) {
return fetch({
url: '/api/order/baseOrder/back-stage/cancel/'+ no,
method: 'post',
data:params
});
}
//创建订单
export function orderStatistics(params) {
return fetch({
url: 'api/order/orderStatistics/order',
method: 'post',
data:params
});
}
//订单下载
export function downloadExcel(params) {
return fetch({
url: '/api/order/orderStatistics/excel',
method: 'post',
data:params,
responseType: 'blob'
});
}
import fetch from 'utils/fetch';
export function page(query) {
return fetch({
url: '/api/summit/activity/app/unauth/list',
method: 'post',
data: query
})
}
export function update(query) {
return fetch({
url: '/api/summit/activity/update',
method: 'put',
data: query
})
}
export function getOne(id) {
return fetch({
url: '/api/summit/activity/'+id,
method: 'get'
})
}
export function add(obj) {
return fetch({
url: '/api/summit/activity/add',
method: 'post',
data:obj
})
}
import fetch from 'utils/fetch';
export function page(query) {
return fetch({
url: '/api/summit/activityBm/list',
method: 'post',
data: query
})
}
import fetch from 'utils/fetch';
export function one(activityId) {
return fetch({
url: '/api/summit/activityShow/one/'+activityId,
method: 'get'
})
}
export function save(obj) {
return fetch({
url: '/api/summit/activityShow/save',
method: 'post',
data:obj
})
}
......@@ -337,12 +337,12 @@ export const asyncRouterMap = [{
name: '车辆排班管理',
authority: 'bookRecord'
},
{
path: 'bookingManagement',
component: _import('vehicle/smallProgram/bookingManagement'),
name: '小程序车辆申请管理',
authority: 'bookingManagement'
},
// {
// path: 'bookingManagement',
// component: _import('vehicle/smallProgram/bookingManagement'),
// name: '小程序车辆申请管理',
// authority: 'bookingManagement'
// },
{
path: 'vehicleWarningMsg',
component: _import('vehicle/vehicleWarningMsg/index'),
......@@ -426,6 +426,18 @@ export const asyncRouterMap = [{
component: _import('order/memberOrderInfo/index'),
name: '会员订单管理',
authority: 'memberOrderInfo'
},
{
path: 'orderStatistics',
component: _import('order/orderStatistics/index'),
name: '会员订单统计',
authority: 'orderStatistics'
},
{
path: 'createOrder',
component: _import('order/createOrder/index'),
name: '创建租车订单',
authority: 'createOrder'
}
]
},
......@@ -478,7 +490,7 @@ export const asyncRouterMap = [{
{
path: 'memberManagement',
component: _import('userManagement/memberManagement/index'),
name: '会员管理',
name: '会员管理1',
authority: 'memberManagement'
},
{
......@@ -492,6 +504,11 @@ export const asyncRouterMap = [{
component: _import('userManagement/imCustomerServiceManger/cusomterServiceList'),
name:'客服列表',
authority: 'imCustomerServiceManger'
},{
path: 'employeesInput',
component: _import('userManagement/employeesInput'),
name: '员工录入',
authority: 'employeesInput'
}
]
},
......@@ -528,6 +545,21 @@ export const asyncRouterMap = [{
}
]
},
{
path: '/summit',
component: Layout,
name: '峰会管理',
icon: 'setting',
authority: 'summit',
children: [
{
path: 'summitList',
component: _import('summit/summitList/index'),
name: '峰会列表',
authority: 'summitList'
}
]
},
{
path: '/cunponManagements',
component: Layout,
......@@ -618,5 +650,20 @@ export const asyncRouterMap = [{
authority: 'friendLinkList'
}
]
},
{
path: '/summit',
component: Layout,
name: '峰会管理',
icon: 'setting',
authority: 'summit',
children: [
{
path: 'summitList',
component: _import('summit/index'),
name: '峰会列表',
authority: 'summitList'
}
]
}
];
......@@ -546,6 +546,7 @@
}
},
resetTemp() {
this.membersName = undefined;
this.editCompanyId = undefined;
this.form = {
username: undefined,
......@@ -563,6 +564,7 @@
dataLimit: undefined,//数据权限
members: [],
};
// this.form = {
// username: undefined,
// name: undefined,
......
......@@ -418,11 +418,13 @@
let arr = info.images.split(",");//图片
let temp = [];
for(let i = 0; i < arr.length; i++){
if(arr[i]){
let p = {
url: arr[i]
}
temp.push(p);
}
}
t.fileList2 = temp;
this.activeName2 = "first";
// t.form = response.data;
......@@ -466,7 +468,7 @@
});
return;
}
if(!this.form.images){
if(this.fileList2.length<=0){
this.tabName = "second";
this.$notify({
title: '警告',
......
......@@ -119,7 +119,7 @@
<el-button size="small" class="el-button el-button--text el-button--small" @click="handleView(scope.row)">详情</el-button>
<el-button size="small" class="el-button el-button--text el-button--small" @click="handleSetting(scope.row)">基础信息</el-button>
<el-button v-if="branchCompany_btn_edit" size="small" class="el-button el-button--text el-button--small" @click="handleCompanyInfo(scope.row)">公司介绍</el-button>
<el-button size="small" class="el-button el-button--text el-button--small" @click="handleSettingStock(scope.row)">设置股权</el-button>
<el-button size="small" class="el-button el-button--text el-button--small" @click="handleSettingStock(scope.row)" v-if="compnay_stock_update">设置股权</el-button>
<el-button v-if="branchCompany_btn_del" size="small" class="el-button el-button--text el-button--small" style="color: red;" @click="handleDelete(scope.row)">删除</el-button>
</template>
</el-table-column>
......@@ -205,6 +205,7 @@
infoVisible: false,//详情弹框
allZoneArr:[],//全部片区
provinceRegions: [],//片区下省份数据
compnay_stock_update:false,
rules: {
latitude: [
{
......@@ -380,6 +381,8 @@
this.branchCompany_btn_edit = this.elements['branchCompany:btn_edit'];
this.branchCompany_btn_del = this.elements['branchCompany:btn_del'];
this.branchCompany_btn_add = this.elements['branchCompany:btn_add'];
this.compnay_stock_update = this.elements['compnay:stock:update']
debugger
},
computed: {
...mapGetters([
......
......@@ -98,7 +98,7 @@
} else {
allPage(this.listQuery)
.then(response => {
let listTemp = response.data.data;
let listTemp = response.data;
let arr = [];
listTemp.map(function(item){
arr.push(item);
......
......@@ -490,7 +490,7 @@
.then(res => {
this.loading = false;
let allList = [];
let listTemp = res.data.data;
let listTemp = res.data;
//一次读入所有涉及地区,防止多次读取
// if (!this.$utils.isEmpty(listTemp)) {
// let allRegions = new Set();
......@@ -503,11 +503,11 @@
// }
// getRegionByCodes([...allRegions]);
// }
if(res.data.data){
res.data.data.forEach(function (item) {
if(res.data){
res.data.forEach(function (item) {
allList.push(item);
});
if(res.data.data.length< this.listQuery.limit && this.list.length>0){
if(res.data.length< this.listQuery.limit && this.list.length>0){
//已加载全部
this.nomore = true;
}
......
......@@ -22,12 +22,12 @@
</el-form-item>
<el-row>
<el-col :span="8">
<el-form-item label="度" prop="latitude">
<el-form-item label="度" prop="latitude">
<el-input :value="form.latitude" readonly></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="度" prop="longitude">
<el-form-item label="度" prop="longitude">
<el-input :value="form.longitude" readonly></el-input>
</el-form-item>
</el-col>
......
This diff is collapsed.
......@@ -85,12 +85,13 @@
</table>
<div v-if="form.orderVehicleCrosstownDto" style="margin: 20px 0;"><span style="font-size: 18px;font-weight: bold;">驾驶人信息</span></div>
<table class="orderDetail" v-if="form.orderVehicleCrosstownDto">
<tr><th>姓名</th><th>手机号</th><th>身份证号</th><th>驾照</th></tr>
<tr><th>姓名</th><th>手机号</th><th>身份证号</th><!-- <th>驾照</th>--></tr>
<tr>
<td>{{form.orderVehicleCrosstownDto.licenseName}}</td>
<td>{{form.orderVehicleCrosstownDto.licensePhone}}</td>
<td>{{form.orderVehicleCrosstownDto.licenseIdCard}}</td>
<td><img style="width: 140px;height: 140px;" :src="form.orderVehicleCrosstownDto?form.orderVehicleCrosstownDto.licenseImg:'https://xxtest.upyuns.com/image/app/default_%20avatar.png'"></td>
<!-- <td><img style="width: 140px;height: 140px;" :src="form.orderVehicleCrosstownDto?form.orderVehicleCrosstownDto.licenseImg:'https://xxtest.upyuns.com/image/app/default_%20avatar.png'"></td>-->
</tr>
</table>
</el-form>
......
<template>
<div class="app-container calendar-list-container">
<div class="filter-container">
<el-form ref="queryForm" :model="listQuery" label-width="100px">
<el-row>
<el-col :span="5">
<el-form-item label="统计时间:">
<el-date-picker
v-model="listQuery.time"
type="daterange"
range-separator="至"
start-placeholder="开始日期"
end-placeholder="结束日期"
@change="changeTime"
placeholder="请选择统计时间"
></el-date-picker>
</el-form-item>
</el-col>
<el-col :span="5">
<el-form-item label="统计方式:" class="wayMsg">
<span
v-for="(item,index) in way"
:key="index"
:class="{active:isactive==item.label}"
@click="changeWay(item)"
>{{item.label}}</span>
</el-form-item>
</el-col>
<el-col :span="5" style="float:right;text-align:right">
<el-button class="filter-item" type="primary" v-waves @click="handleFilter">导出为Excel</el-button>
</el-col>
</el-row>
</el-form>
<el-table :data="list" border fit highlight-current-row style="width: 100%">
<el-table-column align="center" label="时间">
<template scope="scope">
<span>{{scope.row.timeSlot}}</span>
</template>
</el-table-column>
<el-table-column align="center" label="普通会员购买量">
<template scope="scope">
<span v-if="scope.row.members[0].level == 1">{{scope.row.members[0].number || 0}}</span>
</template>
</el-table-column>
<el-table-column align="center" label="支付金额(普通会员)">
<template scope="scope">
<span v-if="scope.row.members[0].level == 1">{{scope.row.members[0].amount || 0}}</span>
</template>
</el-table-column>
<el-table-column align="center" label="黄金会员购买量">
<template scope="scope">
<span v-if="scope.row.members[0].level == 2">{{scope.row.members[0].number || 0}}</span>
</template>
</el-table-column>
<el-table-column align="center" label="支付金额(黄金会员)">
<template scope="scope">
<span v-if="scope.row.members[0].level == 2">{{scope.row.members[0].amount || 0}}</span>
</template>
</el-table-column>
<el-table-column align="center" label="钻石会员购买量">
<template scope="scope">
<span v-if="scope.row.members[0].level == 3">{{scope.row.members[0].number || 0}}</span>
</template>
</el-table-column>
<el-table-column align="center" label="支付金额(钻石会员)">
<template scope="scope">
<span v-if="scope.row.members[0].level == 3">{{scope.row.members[0].amount || 0}}</span>
</template>
</el-table-column>
<el-table-column align="center" label="总支付金额">
<template scope="scope">
<span>{{scope.row.totalPayment}}</span>
</template>
</el-table-column>
</el-table>
</div>
</div>
</template>
<script>
import { orderStatistics, downloadExcel } from "api/order/rentVehicle";
export default {
created() {
this.getList();
},
data() {
return {
list: [],
// 统计时间筛选
listQuery: {
time: "null",
type: "1",
startTime: null,
endTime: null
},
//统计方式筛选
way: [
{
label: "日统计",
id: "1"
},
{
label: "周统计",
id: "2"
},
{
label: "月统计",
id: "3"
}
],
isactive: "日统计"
};
},
methods: {
//统计时间筛选
changeTime() {
!!this.listQuery.time[0]
? (this.listQuery.startTime = this.listQuery.time[0].getTime())
: (this.listQuery.startTime = null);
!!this.listQuery.time[1]
? (this.listQuery.endTime = this.listQuery.time[1].getTime())
: (this.listQuery.endTime = null);
this.getList();
},
//统计方式筛选
changeWay(val) {
this.isactive = val.label;
this.listQuery.type = val.id;
this.getList();
},
//导出
handleFilter() {
downloadExcel(this.listQuery).then(res => {
const content = res;
const blob = new Blob([content]);
const fileName = "导出信息.xlsx";
if ("download" in document.createElement("a")) {
// 非IE下载
const elink = document.createElement("a");
elink.download = fileName;
elink.style.display = "none";
elink.href = URL.createObjectURL(blob);
document.body.appendChild(elink);
elink.click();
URL.revokeObjectURL(elink.href); // 释放URL 对象
document.body.removeChild(elink);
} else {
// IE10+下载
navigator.msSaveBlob(blob, fileName);
}
});
},
//列表
getList() {
orderStatistics(this.listQuery).then(data => {
console.log(data);
if (data.status == 200) {
this.list = data.data;
}
});
}
}
};
</script>
<style>
.wayMsg span {
margin: 10px;
cursor: pointer;
}
.active {
color: #409eff;
font-weight: bold;
}
</style>
\ No newline at end of file
This diff is collapsed.
......@@ -7,15 +7,16 @@
<el-form-item label="所属地区" prop="zoneId">
<el-select class="filter-item" v-model="listQuery.zoneId" placeholder="请选择" @change="getProvinceRegions">
<el-option :key="undefined" label="无" :value="undefined"></el-option>
<el-option v-for="val in getAllZoneList" :key="val.id" :label="val.name" :value="val.id"> </el-option>
<el-option v-for="val in getAllZoneList" :key="val.id" :label="val.name" :value="val.id"></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="5">
<el-form-item label="所属公司" prop="startCompanyId">
<el-select class="filter-item" v-model="listQuery.startCompanyId" placeholder="请选择" @change="getAllBranchCompanyChange">
<el-select class="filter-item" v-model="listQuery.startCompanyId" placeholder="请选择"
@change="getAllBranchCompanyChange">
<el-option :key="undefined" label="无" :value="undefined"></el-option>
<el-option v-for="val in allBranchCompany" :key="val.id" :label="val.name" :value="val.id"> </el-option>
<el-option v-for="val in allBranchCompany" :key="val.id" :label="val.name" :value="val.id"></el-option>
</el-select>
</el-form-item>
</el-col>
......@@ -25,16 +26,16 @@
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="5">
<el-form-item label="订单号">
<el-input v-model="listQuery.no" type="text" placeholder="请输入订单号"></el-input>
</el-form-item>
</el-col>
<el-col :span="5">
<el-form-item label="状态">
<el-select class="filter-item" v-model="listQuery.status" placeholder="请选择状态">
<el-option :key="null" label="无" :value="null" ></el-option>
<el-option :key="null" label="无" :value="null"></el-option>
<el-option :key="2" label="取消" :value="2"></el-option>
<el-option :key="3" label="待付款" :value="3"></el-option>
<el-option :key="4" label="待出行" :value="4"></el-option>
......@@ -43,7 +44,6 @@
</el-select>
</el-form-item>
</el-col>
<el-row>
</el-row>
</el-form>
......@@ -121,7 +121,9 @@
layout="total, sizes, prev, pager, next, jumper" :total="total"></el-pagination>
</div>
<!--订单详情-->
<tourOrderDetailModal :tourRow="tourRow" :insureDetail="insureDetail" v-if="tourDialogVisible" :tourCostDetail="tourCostDetail" v-on:tourOrderDetailDialogEvent="tourOrderDetailDialogEvent"></tourOrderDetailModal>
<tourOrderDetailModal :tourRow="tourRow" :insureDetail="insureDetail" v-if="tourDialogVisible"
:tourCostDetail="tourCostDetail"
v-on:tourOrderDetailDialogEvent="tourOrderDetailDialogEvent"></tourOrderDetailModal>
</div>
</template>
......@@ -133,7 +135,7 @@
getAllBranchCompany,
getAllBranchCompanyByZoneId
} from 'api/order/rentVehicle';
import { mapGetters } from 'vuex';
import {mapGetters} from 'vuex';
import rsCode from '../../../utils/rsCode';
import {
timestamp2Date
......@@ -144,6 +146,7 @@
import {
formatDate
} from '../../../utils/dateFormattor';
export default {
name: 'branchCompanyStock',
components: {
......@@ -203,7 +206,7 @@
refundStatus: undefined,
startCompanyName: undefined,
status: undefined,
ststusName:undefined,
ststusName: undefined,
telephone: undefined,
type: undefined,
updTime: undefined,
......@@ -212,7 +215,7 @@
vehicleNumberPlat: undefined,
version: undefined,
},
detailVisible:false,
detailVisible: false,
bannerDialogVisible: false,//添加、编辑弹框
modalTitle: '订单详情',
rules: {
......@@ -245,39 +248,39 @@
page: 1,
limit: 20,
type: 2,
no: null,
phone:null,
status:null,
no: undefined,
phone: undefined,
status: null,
startTime: undefined,
endTime:undefined,
zoneId:undefined,
endTime: undefined,
zoneId: undefined,
startCompanyId: undefined
},
tourRow: {},//旅游订单详情-当前行
//"{"key":"费用明细","val":"","children":[{"key":"成人价格","detail":"¥13800.00/人×1人","val":"¥13800.00"}]}"
costDetail:{
key:undefined,
val:undefined,
children:[
costDetail: {
key: undefined,
val: undefined,
children: [
{
key:undefined,
detail:undefined,
val:undefined
key: undefined,
detail: undefined,
val: undefined
}
]
},
baranchQuery: {
zoneId:null
zoneId: null
},
dialogFormVisible: false,
dialogStatus: '',
btn_del: true,
btn_buy: true,
btn_cancel: true,
allBranchCompany:[],
tourCostDetail:'',
insureDetail:'',//保险
allBranchCompany: [],
tourCostDetail: '',
insureDetail: '',//保险
tableKey: 0,
tourDialogVisible: false,//旅游详情
}
......@@ -294,7 +297,7 @@
return getSonRegionByCodes(1);
},
//获取大区列表
getAllZoneList(){
getAllZoneList() {
return getAllZone();
},
cityRegions() {
......@@ -308,23 +311,23 @@
/**
* 操作-查看详情按钮,显示详情弹框
*/
detailInquiry(row){
detailInquiry(row) {
this.currentRow = row;
this.detailVisible = true;
},
/**
* 关闭违章查询弹框
* */
detailEvent(params){
detailEvent(params) {
this.detailVisible = false;
if(params){
if (params) {
console.log(params);
}
},
/**
* 旅游订单详情弹框关闭
* */
tourOrderDetailDialogEvent(e){
tourOrderDetailDialogEvent(e) {
this.tourDialogVisible = false;
},
/**
......@@ -397,16 +400,16 @@
});
},
clearSearch() {
this.listQuery ={
this.listQuery = {
page: 1,
limit: 20,
type: 2,
no: null,
phone:null,
status:null,
phone: null,
status: null,
startTime: undefined,
endTime:undefined,
zoneId:undefined,
endTime: undefined,
zoneId: undefined,
startCompanyId: undefined
}
......@@ -444,21 +447,24 @@
}
</script>
<style>
.label-text{
.label-text {
margin-left: 10px;
margin-right: 20px;
}
.label-title{
.label-title {
margin-top: 10px;
}
.orderDetail tr td{
.orderDetail tr td {
width: 500px;
text-align: center;
border: 0.0625rem solid;
margin-left: 100px;
margin-right: 100px;
}
.label-value{
.label-value {
margin-left: 80px;
margin-right: 100px;
}
......
......@@ -17,7 +17,8 @@
<el-col :span="6">
<el-form-item label="状态" prop="type">
<el-select class="filter-item" v-model="listQuery.state" placeholder="请输入状态">
<el-option v-for="(item,index) in typeOptions" :key="index" :label="item.name" :value="item.val"> </el-option>
<el-option v-for="(item,index) in typeOptions" :key="index" :label="item.name"
:value="item.val"></el-option>
</el-select>
</el-form-item>
</el-col>
......@@ -38,7 +39,11 @@
<span>{{scope.row.phone}}</span>
</template>
</el-table-column>
<el-table-column align="center" label="提现账号">
<template scope="scope">
<span>{{scope.row.accountNumber}}</span>
</template>
</el-table-column>
<el-table-column align="center" label="金额">
<template scope="scope">
<span>{{scope.row.amount}}</span>
......@@ -49,7 +54,7 @@
<template scope="scope">
<span v-if="scope.row.stauts==0">未到帐</span>
<span v-if="scope.row.stauts==1">已到账</span>
<span v-if="scope.row.stauts==2">审核失败</span>
<span v-if="scope.row.stauts==2">驳回</span>
</template>
</el-table-column>
<el-table-column align="center" label="申请时间">
......@@ -64,7 +69,9 @@
</el-table-column>
<el-table-column align="center" label="操作" width="65" fixed="right">
<template scope="scope">
<el-button size="small" class="el-button el-button--text el-button--small" v-if="scope.row.stauts==0" @click="handleUpdate(scope.row)">审核</el-button>
<el-button size="small" class="el-button el-button--text el-button--small" v-if="scope.row.stauts==0"
@click="handleUpdate(scope.row)">审核
</el-button>
</template>
</el-table-column>
</el-table>
......@@ -133,19 +140,19 @@
return {
typeOptions: [
{
"name":'全部',
"val":''
"name": '全部',
"val": ''
},
{
"name":'未到账',
"val":'0'
"name": '未到账',
"val": '0'
},
{
"name":'已到账',
"val":'1'
"name": '已到账',
"val": '1'
},
],
dialogVisible:false,
dialogVisible: false,
BASE_API: process.env.BASE_API,
showLoadingBody: false,
list: null,
......@@ -156,14 +163,14 @@
limit: 20,
phone: '',//手机号
username: '',//姓名
state:'',//状态
state: '',//状态
},
inline: true,
tableKey: 0,
dialogFrom:{
status:'1',
cono:'',
reason:''
dialogFrom: {
status: '1',
cono: '',
reason: ''
},
}
},
......@@ -187,9 +194,11 @@
if (!this.$utils.isEmpty(response.data.data) && this.$utils.isInteger(response.data.totalCount)) {
listRs = response.data.data;
totalCountRs = response.data.totalCount;
listRs.map(function(item){
listRs.map(function (item) {
item.crtTimeStr = timestamp2Date(item.crtTime);
if (item.finishTime != 0 && item.finishTime != null) {
item.finishTimeStr = timestamp2Date(item.finishTime);
}
});
}
this.listLoading = false;
......@@ -216,10 +225,10 @@
this.listQuery.page = val;
this.getList();
},
cancelHandel(){
cancelHandel() {
this.dialogVisible = false;
},
handleUpdate(row){
handleUpdate(row) {
this.dialogFrom.cathId = row.id;
this.dialogVisible = true;
},
......@@ -227,8 +236,8 @@
var that = this;
const set = this.$refs;
set[formName].validate(valid => {
if(this.dialogFrom.status==1){
if(this.dialogFrom.cono==''){
if (this.dialogFrom.status == 1) {
if (this.dialogFrom.cono == '') {
this.$notify({
title: '警告',
message: '请输入订单号',
......@@ -238,8 +247,8 @@
return false;
}
}
if(this.dialogFrom.status==2){
if(this.dialogFrom.reason==''){
if (this.dialogFrom.status == 2) {
if (this.dialogFrom.reason == '') {
this.$notify({
title: '警告',
message: '请输入拒绝原因',
......
<template>
<div class="app-container calendar-list-container">
<div class="filter-container">
<el-form ref="queryForm" :inline="inline" :model="query" label-width="100px">
<el-row>
<el-form-item label="峰会名称">
<el-input v-model="query.title" placeholder="请输入峰会名称"></el-input>
</el-form-item>
<el-form-item label="开始时间">
<el-date-picker
v-model="query.startTime"
type="datetime"
format="yyyy-MM-dd HH"
placeholder="报名截止时间">
</el-date-picker>
</el-form-item>
<el-form-item label="用户来源">
<el-select class="filter-item" v-model="query.status" placeholder="状态">
<el-option v-for="(val, key, index) in status" :key="val.id" :label="val.name"
:value="val.id"></el-option>
</el-select>
</el-form-item>
</el-row>
</el-form>
<el-button class="filter-item" type="primary" v-waves icon="search" @click="handleFilter">搜索</el-button>
<el-button class="filter-item" type="primary" v-waves icon="search" @click="createSummit">创建峰会</el-button>
</div>
<el-table :key='tableKey' :data="list" v-loading.body="listLoading" border fit highlight-current-row
style="width: 100%">
<el-table-column align="center" width="150px" label="id">
<template scope="scope">
<span>{{scope.row.id}}</span>
</template>
</el-table-column>
<el-table-column align="center" width="500px" label="标题">
<template scope="scope">
<span>{{scope.row.title}}</span>
</template>
</el-table-column>
<el-table-column align="center" width="400" label="开始-结束时间">
<template scope="scope">
<span>{{timestamp2Date(scope.row.startTime)}}</span><span>-</span><span>{{timestamp2Date(scope.row.endTime)}}</span>
</template>
</el-table-column>
<el-table-column align="center" label="当前状态">
<template scope="scope">
<span>{{getStatusName(scope.row.status)}}</span>
</template>
</el-table-column>
<el-table-column align="center" label="操作" fixed="right">
<template scope="scope">
<el-button size="small" class="el-button el-button--text el-button--small" v-if="scope.row.isPublish===1"
@click="viewDetails({id:scope.row.id,isPublish:0})">
取消发布
</el-button>
<el-button size="small" class="el-button el-button--text el-button--small" v-if="scope.row.isPublish===0"
@click="viewDetails({id:scope.row.id,isPublish:1})">
发布
</el-button>
<el-button size="small" class="el-button el-button--text el-button--small" v-if=""
@click="enrollData(scope.row)">报名信息
</el-button>
<el-button class="el-button el-button--text el-button--small"
size="small" @click="edit(scope.row)">编辑
</el-button>
<el-button size="small" class="el-button el-button--text el-button--small" v-if=""
@click="review(scope.row)">回顾页面
</el-button>
<el-button class="el-button el-button--text el-button--small" style="color:red" size="small"
v-if="scope.row.isPublish==0" @click="deleteSummit(scope.row)">删除
</el-button>
</template>
</el-table-column>
</el-table>
<div v-show="!listLoading" class="pagination-container">
<el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange"
:current-page.sync="query.page" :page-sizes="[10,20,30, 50]" :page-size="query.limit"
layout="total, sizes, prev, pager, next, jumper" :total="total"></el-pagination>
</div>
<summitPopup v-if="popupShow" :popupRow="popupRow" :titleNme="titleNme" v-on:summitDialogEvent="summitDialogEvent"/>
<enrollDataPopup v-if="enrollShow" :enrollRow="enrollRow" v-on:enrollDialogEvent="enrollDialogEvent"/>
<reviewPopup v-if="reviewShow" :reviewRow="reviewRow" v-on:reviewDialogEvent="reviewDialogEvent"/>
</div>
</template>
<script>
import {mapGetters} from 'vuex';
import {
timestamp2Date
} from 'src/utils/dateUtils';
import {
page,
update
} from 'src/api/summit/activity';
import summitPopup from 'src/views/summit/model/summitPopup'
import enrollDataPopup from 'src/views/summit/model/enrollDataPopup'
import reviewPopup from 'src/views/summit/model/reviewPopup'
import {getToken} from 'src/utils/auth';
export default {
name: "summitList",
components: {
summitPopup,
enrollDataPopup,
reviewPopup
},
data() {
return {
query: {
page: 1,
limit: 10,
title: '',
startTime: '',
status: undefined,
type:1
},
tableKey: 0,
list: [],
listLoading: true,
status: [
{id: 0, name: '默认'},
{id: 1, name: '报名中'},
{id: 2, name: '进行中'},
{id: 3, name: '已结束'}
],
total: 0,
inline: true,
popupShow: false,
titleNme: '创建峰会',
popupRow: undefined,
enrollRow: undefined,
enrollShow: false,
reviewRow: undefined,
reviewShow: false,
statusNameList: {
1: '默认',
2: '报名中',
3: '进行中',
4: '已结束'
}
}
},
created() {
this.getList();
},
computed: {
...mapGetters([
'elements'
]),
getHeaderWithToken() {
return {Authorization: getToken()};
},
},
methods: {
getList() {
this.listLoading = true;
page(this.query).then(res => {
this.list = res.data.list;
this.total = res.data.total;
this.listLoading = false;
})
},
handleFilter() {
this.query.startTime=Date.now(this.query.startTime)
this.getList();
},
viewDetails(row) {
update(row).then(res => {
if (res.rel) {
this.$notify.success({
title: '编辑成功',
message: `success`
})
this.getList()
} else {
this.$notify.warning({
title: '编辑失败',
message: `failed`
})
}
})
},
handleSizeChange(val) {
this.query.limit = val;
this.getList();
},
handleCurrentChange(val) {
this.query.page = val;
this.getList();
},
timestamp2Date(timeStamp) {
return timestamp2Date(timeStamp)
},
enrollData(row) {
this.enrollRow = row;
this.enrollShow = true;
},
edit(row) {
debugger
this.popupRow = row;
this.titleNme = '编辑峰会';
this.popupShow = true;
},
createSummit() {
this.popupRow = {};
this.titleNme = '创建峰会';
this.popupShow = true;
},
review(row) {
this.reviewRow = row;
this.reviewShow = true;
},
deleteSummit() {
},
getStatusName(status) {
return (status + 1) ? this.statusNameList[status + 1] : ''
},
summitDialogEvent(e) {
this.popupShow = false
if (e) {
this.getList()
}
},
enrollDialogEvent(e) {
this.enrollShow = false
},
reviewDialogEvent(e) {
this.reviewShow = false
}
}
}
</script>
<template>
<el-dialog title="报名信息" :visible.sync="dialogVisible">
<div class="filter-container">
<el-form ref="queryForm" :model="query" label-width="100px">
<el-row>
<el-col :span="6">
<el-form-item label="邀请人">
<el-input v-model="query.inviter" placeholder="邀请人"></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="姓名">
<el-input v-model="query.name" placeholder="姓名"></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="已签到">
<el-select class="filter-item" v-model="query.qdStatus" placeholder="签到状态">
<el-option :key="undefined" label="所有" :value="undefined"></el-option>
<el-option v-for="(val, key, index) in typeList " :key="val.id" :label="val.name"
:value="val.id"></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="6">
<el-button class="filter-item" type="primary" v-waves icon="search" @click="search"
style="margin-left: 10px;">搜索
</el-button>
</el-col>
</el-row>
</el-form>
</div>
<!-- <el-form :model="userOrderMessage" ref="alterUserOrder" label-width="100px">-->
<el-table
:data="list"
style="width: 100%"
border fit highlight-current-row>
<el-table-column
label="姓名"
style="width: 100%" align="center">
<template scope="scope">
<span>{{scope.row.name}}</span>
</template>
</el-table-column>
<el-table-column
label="电话"
width="180" align="center">
<template scope="scope">
<span>{{scope.row.phone}}</span>
</template>
</el-table-column>
<el-table-column
label="身份证" align="center">
<template scope="scope">
<span>{{scope.row.idNumber}}</span>
</template>
</el-table-column>
<el-table-column
label="邀请人" align="center">
<template scope="scope">
<span>{{scope.row.inviter}}</span>
</template>
</el-table-column>
<el-table-column
prop="qdStatus"
label="是否已签到" align="center">
<template scope="scope">
<span>{{getStatusName(scope.row.qdStatus)}}</span>
</template>
</el-table-column>
</el-table>
<!-- </el-form>-->
<div v-show="listLoading" class="pagination-container">
<el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange"
:current-page.sync="query.page" :page-sizes="[10,20,30, 50]" :page-size="query.limit"
layout="total, sizes, prev, pager, next, jumper" :total="total"></el-pagination>
</div>
<div slot="footer" class="dialog-footer1">
<!-- <el-button type="primary" @click="">导出为excel</el-button>-->
<el-button @click="cancelHandel"> 关 闭 </el-button>
</div>
</el-dialog>
</template>
<script>
import ElRow from "element-ui/packages/row/src/row";
import ElInput from "../../../../node_modules/element-ui/packages/input/src/input.vue";
import ElCol from "element-ui/packages/col/src/col";
import ElFormItem from "../../../../node_modules/element-ui/packages/form/src/form-item.vue";
import {
page
} from 'src/api/summit/activityBm';
export default {
props: ["enrollRow"],
name: 'enrollDataPopup',
components: {
ElFormItem,
ElCol,
ElInput,
ElRow
},
data() {
return {
dialogVisible: false,
query: {
page: 1,
limit: 10,
activityId: undefined,
name: undefined,
inviter: undefined,
qdStatus: undefined,
},
list: [],
total: 0,
listLoading: true,
typeList: [
{id: 1, name: '否'},
{id: 2, name: '是'}
],
result:false,
}
},
watch: {
dialogVisible(newValue, oldValue) {
if (!newValue) {
this.$emit("enrollDialogEvent",this.result);
}
},
},
mounted() {
this.query.activityId = this.enrollRow.id
this.getOrderInfo();
},
methods: {
getOrderInfo() {
let param = this.dataProcessing()
page(param).then(res => {
this.list = res.data.list;
this.total = res.data.total;
this.dialogVisible = true
this.listLoading = true
})
},
search() {
this.getOrderInfo()
},
dataProcessing() {
this.listLoading = false
let parse = JSON.parse(JSON.stringify(this.query))
parse.qdStatus = parse.qdStatus ? (parse.qdStatus - 1) : parse.qdStatus
return parse
},
getStatusName(status){
if (this.$utils.isInteger(status)) {
if (status==0){
return '未签到'
}
if (status==1){
return '已签到'
}
}
},
handleSizeChange(val) {
this.query.limit = val;
this.getList();
}
,
handleCurrentChange(val) {
this.query.page = val;
this.getList();
}
,/**
* 弹框-取消
* */
cancelHandel() {
this.setSummitDialogEvent(false)
},
setSummitDialogEvent(e) {
this.result=e
this.dialogVisible = false
},
}
}
</script>
<style>
.label-text {
margin-left: 10px;
margin-right: 20px;
}
.label-title {
margin-top: 10px;
}
.orderDetail tr th {
background: #eef1f6;
}
.orderDetail tr td, .orderDetail tr th {
width: 500px;
text-align: center;
border: 1px solid #dfe6ec;
margin-left: 100px;
margin-right: 100px;
padding: 10px;
}
.label-value {
margin-left: 80px;
margin-right: 100px;
}
#license-img {
width: 50px;
height: 50px;
}
.order-details .el-form-item {
margin-bottom: 10px !important;
}
.el-dialog__footer .dialog-footer1 {
position: relative;
text-align: center;
}
.fhjj {
width: 500px;
}
.content {
margin-left: 4%;
}
.height {
margin-bottom: 2%;
}
. el-form-item__content {
margin-left: 5% !important;
}
.status {
margin-top: 4%;
}
</style>
<template>
<el-dialog title="回顾页面" :visible.sync="dialogVisible" class="order-details">
<el-form :model="form" ref="form" label-width="120px">
<el-row>
<el-col :span="8">
<el-form-item label="峰会封面:">
<el-upload
class="upload-demo"
:headers="getHeaderWithToken"
:action="BASE_API+'/api/universal/file/app/unauth/admin/upload'"
:show-file-list="false"
:on-success="handleAvatarSuccess"
:on-progress="uploadProcess"
list-type="picture">
<el-progress v-show="imgFlag == true" type="circle" :percentage="percent"
style="margin-top: 20px"></el-progress>
<img v-if="$utils.isString(form.banner) && !$utils.isEmpty(form.banner) && !imgFlag"
:src="form.banner"
style="width:300px;max-height:300px;">
<i v-else-if="!imgFlag" class="el-icon-plus avatar-uploader-icon"
style="lineHeight:100px;width:300px;height: 100px;border: 1px dashed #ccc;"></i>
</el-upload>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<el-form-item label="峰会图片:">
<el-upload
:action="BASE_API+'/api/universal/file/app/unauth/admin/upload'"
list-type="picture-card"
:file-list="list"
:on-success="handlePictureCardPreview"
:on-remove="handleRemove">
<i class="el-icon-plus"></i>
</el-upload>
<!-- <img width="100%" :src="form.picturePath" alt="">-->
</el-form-item>
</el-col>
</el-row>
<el-col :span="8">
<el-form-item label="峰会视频:">
<el-upload
:action="BASE_API+'/api/universal/file/app/unauth/admin/upload'"
list-type="picture-card"
:headers="getHeaderWithToken"
:on-preview="handlePreview"
:on-remove="handleRemove">
<i class="el-icon-plus"></i>
</el-upload>
<video v-if="$utils.isString(form.videoPath) && !$utils.isEmpty(form.videoPath) && !imgFlag"
:src="form.videoPath"
style="width:300px;max-height:300px;"/>
<i v-else-if="!imgFlag" class="el-icon-plus avatar-uploader-icon"
style="lineHeight:100px;width:300px;height: 100px;border: 1px dashed #ccc;"></i>
</el-form-item>
</el-col>
</el-form>
<div slot="footer" class="dialog-footer1">
<el-button class="button" @click="cancelHandel">取 消</el-button>
<el-button class="button" type="primary" @click="cre">确 定</el-button>
</div>
</el-dialog>
</template>
<script>
import ElRow from "element-ui/packages/row/src/row";
import ElInput from "../../../../node_modules/element-ui/packages/input/src/input.vue";
import ElCol from "element-ui/packages/col/src/col";
import ElFormItem from "../../../../node_modules/element-ui/packages/form/src/form-item.vue";
import {getToken} from 'src/utils/auth';
import {mapGetters} from 'vuex';
import {
one,
save
} from 'src/api/summit/activityShow';
export default {
props: ["reviewRow"],
name: 'reviewPopup',
components: {
ElFormItem,
ElCol,
ElInput,
ElRow
},
data() {
return {
imgDialogVisible: false,
dialogVisible: false,
dialogImageUrl:undefined,
result: false,
imgFlag: false,
BASE_API: process.env.BASE_API,
percent: 0,//上传进度
imgFlag: false,
list:[],
form: {
id: undefined,
banner: undefined,
activityId: undefined,
banner: undefined,
videoPath: undefined,
picturePath: undefined,
}
}
},
watch: {
dialogVisible(newValue, oldValue) {
if (!newValue) {
this.$emit("reviewDialogEvent", this.result);
}
},
},
computed: {
...mapGetters([
'elements'
]),
getHeaderWithToken() {
return {Authorization: getToken()};
},
},
watch: {
dialogVisible(newValue, oldValue) {
if (!newValue) {
this.$emit("summitDialogEvent", this.result);
}
},
},
mounted() {
this.getOrderInfo();
},
methods:{
getOrderInfo() {
one(this.reviewRow.id).then(res => {
this.form=res.data
this.dialogVisible=true
this.imgDialogVisible=true;
})
},
cre() {
console.log(this.form.picturePath)
save(this.form).then(res => {
this.responseResult(res)
})
},
responseResult(res) {
if (res.status === 200) {
this.$notify({
title: '成功',
message: '操作成功',
type: 'success',
duration: 2000
});
this.setSummitDialogEvent(true)
} else {
this.$notify({
title: '失败',
message: '操作失败!',
type: 'error',
duration: 2000
});
}
},
/**
* 弹框-取消
* */
cancelHandel() {
this.setSummitDialogEvent(false)
},
setSummitDialogEvent(e) {
this.cleanForm();
this.result = e
this.dialogVisible = false
},
/**
* 封面图上传
* **/
handleAvatarSuccess(res, file) {
this.percent = 0;
this.imgFlag = false;
this.form.banner = res.data;
},
/**
* 封面图上传进度
* */
uploadProcess(event, file, fileList) {
this.imgFlag = true;
this.percent = Math.floor(event.percent);
},
handlePreview(file) {
this.form.videoPath=file.data
this.imgDialogVisible = true;
},
handleRemove(file, fileList) {
// console.log(file)
console.log(file, fileList);
},
handlePictureCardPreview(res,file) {
this.list.push({url: res.data})
// this.imgDialogVisible = true;
},
cleanForm(){
this.form= {
id: undefined,
banner: undefined,
activityId: undefined,
banner: undefined,
videoPath: undefined,
picturePath: undefined
}
}
}
}
</script>
<style>
.label-text {
margin-left: 10px;
margin-right: 20px;
}
.label-title {
margin-top: 10px;
}
.orderDetail tr th {
background: #eef1f6;
}
.orderDetail tr td, .orderDetail tr th {
width: 500px;
text-align: center;
border: 1px solid #dfe6ec;
margin-left: 100px;
margin-right: 100px;
padding: 10px;
}
.label-value {
margin-left: 80px;
margin-right: 100px;
}
#license-img {
width: 50px;
height: 50px;
}
.order-details .el-form-item {
margin-bottom: 10px !important;
}
.el-dialog__footer .dialog-footer1 {
position: relative;
text-align: center;
}
.fhjj {
width: 500px;
}
.content {
margin-left: 4%;
}
.height {
margin-bottom: 2%;
}
. el-form-item__content {
margin-left: 5% !important;
}
.status {
margin-top: 4%;
}
</style>
This diff is collapsed.
<template>
<div class="app-container calendar-list-container">
<div class="filter-container">
<el-form :model="listQuery" label-width="100px">
<el-row>
<el-col :span="4">
<el-form-item label="峰会名称">
<el-input v-model.number="listQuery.name" placeholder="请输入手机号"></el-input>
</el-form-item>
</el-col>
<el-col :span="4">
<el-form-item label="开始时间">
<el-date-picker v-model="listQuery.time" type="date" placeholder="选择日期"></el-date-picker>
</el-form-item>
</el-col>
<el-col :span="4">
<el-form-item label="状态">
<el-select class="filter-item" v-model="listQuery.status" placeholder="请选员工状态">
<el-option :key="undefined" label="全部" :value="undefined"></el-option>
<el-option
v-for="(item,index) in statusList "
:key="index"
:label="item.label"
:value="item.value"
></el-option>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-button class="filter-item" type="primary" v-waves icon="search" @click="handleFilter">搜索</el-button>
<el-button
class="filter-item"
type="primary"
v-waves
icon="delete"
@click="cleaningQuery"
>清除搜索条件</el-button>
<el-button
class="filter-item"
type="primary"
v-waves
icon="el-icon-plus"
@click="creatSummit"
>创建峰会</el-button>
</el-form>
<el-table :data="list" border fit highlight-current-row style="width: 100%">
<el-table-column prop="name" label="姓名" width="180" align="center"></el-table-column>
<el-table-column prop="phone" label="手机号" align="center"></el-table-column>
<el-table-column prop="positionName" label="身份" align="center"></el-table-column>
<el-table-column align="center" label="操作" width="400" fixed="right">
<template scope="scope">
<el-button
size="small"
class="el-button el-button--text el-button--small"
@click="soldOut(scope.row)"
>下架</el-button>
<el-button
size="small"
class="el-button el-button--text el-button--small"
@click="information(scope.row)"
>报名信息</el-button>
<el-button
size="small"
class="el-button el-button--text el-button--small"
@click="basics(scope.row)"
>基础信息</el-button>
<el-button
size="small"
class="el-button el-button--text el-button--small"
@click="applyPage(scope.row)"
>报名页面</el-button>
<el-button
size="small"
class="el-button el-button--text el-button--small"
@click="lookPage(scope.row)"
>回顾页面</el-button>
<el-button
size="small"
class="el-button el-button--text el-button--small"
@click="deleteMsg(scope.row)"
>删除</el-button>
</template>
</el-table-column>
</el-table>
<el-dialog
:title="summitTitle"
:visible.sync="bulkUploadMember"
class="member"
@close="closeAdd"
>
<el-form
:model="ruleForm"
:rules="rules"
ref="ruleForm"
label-width="100px"
class="demo-ruleForm"
>
<el-form-item label="标题:" prop="title">
<el-input v-model="ruleForm.title"></el-input>
</el-form-item>
<el-form-item label="封面图:" prop="title">
<el-upload
class="avatar-uploader"
action="https://jsonplaceholder.typicode.com/posts/"
:show-file-list="false"
:on-success="handleAvatarSuccess"
:before-upload="beforeAvatarUpload"
>
<img v-if="imageUrl" :src="imageUrl" class="avatar" />
<i v-else class="el-icon-plus avatar-uploader-icon"></i>
</el-upload>
</el-form-item>
<el-form-item label="峰会时间:" prop="title">
<el-date-picker
v-model="ruleForm.time"
type="datetimerange"
range-separator="至"
start-placeholder="开始日期"
end-placeholder="结束日期"
></el-date-picker>
</el-form-item>
<el-form-item>
<el-button type="primary" @click="submitForm('ruleForm')">确定</el-button>
<el-button @click="bulkUploadMember = false">取消</el-button>
</el-form-item>
</el-form>
</el-dialog>
</div>
</div>
</template>
<script>
export default {
created() {},
data() {
return {
imageUrl: "",
//快捷筛选
listQuery: {
name: "",
time: null,
status: null
},
//峰会状态
statusList: [],
// 表格数据
list: [],
summitTitle: "创建峰会",
bulkUploadMember: true,
ruleForm: {
title: "" //标题
}, //创建峰会表单
rules: {
title: [{ required: true, message: "请输入标题", trigger: "blur" }]
} //创建峰会表单验证
};
},
methods: {
//提交峰会
submitForm(formName) {
this.$refs[formName].validate(valid => {
if (valid) {
alert("submit!");
} else {
console.log("error submit!!");
return false;
}
});
},
handleAvatarSuccess() {},
beforeAvatarUpload() {},
//搜索
handleFilter() {},
//清空搜索条件
cleaningQuery() {},
//创建峰会
creatSummit() {
bulkUploadMember = true;
},
//下架
soldOut() {},
//报名信息
information() {},
//基础信息
basics() {},
//报名信息
applyPage() {},
//回顾页面
lookPage() {},
//删除信息
deleteMsg() {},
//监听峰会弹窗关闭
closeAdd() {}
}
};
</script>
<style>
.avatar-uploader .el-upload {
border: 1px dashed #d9d9d9;
border-radius: 6px;
cursor: pointer;
position: relative;
overflow: hidden;
}
.avatar-uploader .el-upload:hover {
border-color: #409eff;
}
.avatar-uploader-icon {
font-size: 28px;
color: #8c939d;
width: 178px;
height: 178px;
line-height: 178px;
text-align: center;
}
.avatar {
width: 178px;
height: 178px;
display: block;
}
</style>
\ No newline at end of file
......@@ -32,12 +32,12 @@
</el-row>
<el-row>
<el-col :span="8">
<el-form-item label="度" prop="latitude">
<el-form-item label="度" prop="latitude">
<el-input :value="form.latitude" readonly></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="度" prop="longitude">
<el-form-item label="度" prop="longitude">
<el-input :value="form.longitude" readonly></el-input>
</el-form-item>
</el-col>
......
......@@ -17,6 +17,7 @@
<el-date-picker
v-model="item.startTime"
type="date"
:disabled="!item.dis"
@change="changeStartTime(item)"
format="yyyy-MM-dd"
placeholder="选择日期">
......@@ -140,6 +141,8 @@
stock: 0
};
this.list.push(this.t);
this.list[this.list.length-1].dis = 'dis'
console.log(this.list)
},
/**
* 确定
......
This diff is collapsed.
......@@ -1354,7 +1354,6 @@
if (rowIndex / 2 == 0) {
return 'warning-row';
}
return '';
},
getBoolean(bool) {
......
This diff is collapsed.
......@@ -39,6 +39,16 @@
<template scope="scope">
<span>{{scope.row.provinceName}}-{{scope.row.cityName}}</span>
</template>
<el-table-column align="center" label="取车分公司" width="200">
<template scope="scope">
<span>{{scope.row.companyName}}</span>
</template>
</el-table-column>
<el-table-column align="center" label="还车分公司" width="200">
<template scope="scope">
<span>{{scope.row.arrivalCompanyName}}</span>
</template>
</el-table-column>
</el-table-column>
<el-table-column align="center" label="车辆型号" width="300">
<template scope="scope">
......
......@@ -535,6 +535,9 @@
* */
toShowDialog(item, iitem, ii){
// <!--bookType 1-租车、2-分公司使用、3-维修、4、展览、5、旅游、6、保养、7、预约中、8、禁用、9、客户用车、10、其他-->
if (!item.mileageLastUpdate) {
item.mileageLastUpdate = 0
}
if(!ii.bg){
//空白-可安排用车
if(item.vehicleModel==undefined){
......
......@@ -21,7 +21,7 @@
</el-col>
<el-col :span="8">
<el-form-item label="公里数">
<span>{{currentItem.item.maintenanceMileage}}km</span>
<span>{{currentItem.item.mileageLastUpdate}}km</span>
</el-form-item>
</el-col>
</el-row>
......
......@@ -188,6 +188,7 @@
vehicleName: undefined,//房车名称
vehicleType: undefined,//房车型号
takeALieTheNumber: undefined,//乘卧数量
pathType:1
},
inline: true,
vehicleInfo_btn_apply: false,
......
......@@ -14,7 +14,7 @@
<el-row>
<el-col :span="8">
<el-form-item label="车型简介" prop="intro">
<el-input v-model="form.intro" placeholder="请输入车型简介"></el-input>
<el-input class="cx" v-model="form.intro" :rows="9" type="textarea" placeholder="请输入车型简介" ></el-input>
</el-form-item>
</el-col>
</el-row>
......@@ -605,7 +605,7 @@
intro: this.form.intro,
imgTitle: this.form.imgTitle,
imgKeyword: this.form.imgKeyword,
imgDesc: this.form.imgDesc
imgDesc: this.form.imgDesc,
};
if (this.form.rentDiscountStatus == 2) {
params.rentDiscountPrice = this.form.pPrice + "," + this.form.hPrice + "," + this.form.zPrice//租车优惠价格 固定优化价格
......
......@@ -29,12 +29,12 @@
</el-form-item>
<el-row>
<el-col :span="8">
<el-form-item label="度" prop="latitude">
<el-form-item label="度" prop="latitude">
<el-input :value="form.latitude" readonly></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="度" prop="longitude">
<el-form-item label="度" prop="longitude">
<el-input :value="form.longitude" readonly></el-input>
</el-form-item>
</el-col>
......
......@@ -493,7 +493,6 @@
* 更新
* */
toUpdate(params) {
console.log("............修改")
editActivity(params).then(response => {
if (response.status === 200) {
this.$notify({
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment