|
@@ -12,7 +12,7 @@
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
<el-form-item label="代理商标识" prop='agent'>
|
|
|
- <el-autocomplete
|
|
|
+ <el-autocomplete
|
|
|
class="inline-input"
|
|
|
v-model="ruleForm.agent"
|
|
|
:fetch-suggestions="querySearch"
|
|
@@ -28,8 +28,8 @@
|
|
|
</el-form-item>
|
|
|
<el-form-item label="APP包" prop="fileList">
|
|
|
<!-- uploadUrl token:sessionStorage.getItem('token') :on-change="uploadSectionFile"-->
|
|
|
- <el-upload style="width:340px" class="upload-demo"
|
|
|
- :limit='1' :on-exceed="handleExceed"
|
|
|
+ <el-upload style="width:340px" class="upload-demo"
|
|
|
+ :limit='1' :on-exceed="handleExceed"
|
|
|
action=''
|
|
|
:on-change="()=>{this.$refs.ruleForm.validateField('fileList')}"
|
|
|
:http-request="uploadSectionFile"
|
|
@@ -49,8 +49,8 @@
|
|
|
<el-input v-model="ruleForm.md5" :disabled="!md5"></el-input>
|
|
|
</el-form-item>
|
|
|
<el-form-item label="版本信息" prop="jsonFile">
|
|
|
- <el-upload style="width:340px" class="upload-demo"
|
|
|
- accept='.json' :limit='1'
|
|
|
+ <el-upload style="width:340px" class="upload-demo"
|
|
|
+ accept='.json' :limit='1'
|
|
|
:headers="{
|
|
|
token:token
|
|
|
}"
|
|
@@ -84,7 +84,7 @@
|
|
|
<div class="order-management-table">
|
|
|
<el-table ref="order_table" class='e-table' :data="cameras" style="width: 100%">
|
|
|
<el-table-column label="序号" type="index" width="50" align="center">
|
|
|
- <template scope="scope">
|
|
|
+ <template slot-scope="scope">
|
|
|
<span>{{(currentPage - 1) * pagesize + scope.$index + 1}}</span>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
@@ -105,7 +105,7 @@
|
|
|
<div>{{scope.row.createTime}}</div>
|
|
|
</template>
|
|
|
</el-table-column> -->
|
|
|
-
|
|
|
+
|
|
|
<el-table-column label="操作">
|
|
|
<template slot-scope="scope">
|
|
|
<!-- <el-button type="text" @click="showDialog(scope.row)" class="edit_btn">编辑</el-button> -->
|
|
@@ -126,51 +126,51 @@
|
|
|
</template>
|
|
|
<script>
|
|
|
let tempForm = {
|
|
|
- fileServerType:'',
|
|
|
- agent:'',
|
|
|
- appType:'',
|
|
|
- md5:'',
|
|
|
- name:'',
|
|
|
- fileList:[],
|
|
|
- jsonFile:[]
|
|
|
+ fileServerType: '',
|
|
|
+ agent: '',
|
|
|
+ appType: '',
|
|
|
+ md5: '',
|
|
|
+ name: '',
|
|
|
+ fileList: [],
|
|
|
+ jsonFile: []
|
|
|
}
|
|
|
export default {
|
|
|
data () {
|
|
|
var validateMD5 = (rule, value, callback) => {
|
|
|
- if (value === '') {
|
|
|
- callback(new Error('请输入MD5'));
|
|
|
- } else {
|
|
|
- this.chenkMd5(value,callback)
|
|
|
- }
|
|
|
+ if (value === '') {
|
|
|
+ callback(new Error('请输入MD5'))
|
|
|
+ } else {
|
|
|
+ this.chenkMd5(value, callback)
|
|
|
+ }
|
|
|
}
|
|
|
- let validateFileUrl =(rule, value, callback)=>{
|
|
|
- console.log('fileList',value,this.ruleForm)
|
|
|
- if(!value){
|
|
|
- return callback(new Error("请上传文件"))
|
|
|
- }
|
|
|
- if (this.ruleForm.fileList.length < 1) {//我控制了FileList 长度代表文件个数
|
|
|
- callback(new Error("请上传文件"))
|
|
|
- } else {
|
|
|
- callback()
|
|
|
- }
|
|
|
+ let validateFileUrl = (rule, value, callback) => {
|
|
|
+ console.log('fileList', value, this.ruleForm)
|
|
|
+ if (!value) {
|
|
|
+ return callback(new Error('请上传文件'))
|
|
|
+ }
|
|
|
+ if (this.ruleForm.fileList.length < 1) { // 我控制了FileList 长度代表文件个数
|
|
|
+ callback(new Error('请上传文件'))
|
|
|
+ } else {
|
|
|
+ callback()
|
|
|
+ }
|
|
|
}
|
|
|
let validateJsonFile = (rule, value, callback) => {
|
|
|
- console.log('fileList',value,this.ruleForm)
|
|
|
- if(!value){
|
|
|
- return callback(new Error("请上传文件"))
|
|
|
- }
|
|
|
- if (this.ruleForm.jsonFile.length < 1) {//我控制了FileList 长度代表文件个数
|
|
|
- callback(new Error("请上传文件"))
|
|
|
- } else {
|
|
|
- callback()
|
|
|
- }
|
|
|
+ console.log('fileList', value, this.ruleForm)
|
|
|
+ if (!value) {
|
|
|
+ return callback(new Error('请上传文件'))
|
|
|
+ }
|
|
|
+ if (this.ruleForm.jsonFile.length < 1) { // 我控制了FileList 长度代表文件个数
|
|
|
+ callback(new Error('请上传文件'))
|
|
|
+ } else {
|
|
|
+ callback()
|
|
|
+ }
|
|
|
}
|
|
|
return {
|
|
|
expands: [],
|
|
|
- accept:'.ipa, .apk',
|
|
|
- md5:null,
|
|
|
- complete:0,
|
|
|
- completeshow:false,
|
|
|
+ accept: '.ipa, .apk',
|
|
|
+ md5: null,
|
|
|
+ complete: 0,
|
|
|
+ completeshow: false,
|
|
|
expandedArr: [],
|
|
|
cameras: [],
|
|
|
currentPage: 1,
|
|
@@ -191,28 +191,28 @@ export default {
|
|
|
ruleForm: tempForm,
|
|
|
currentImgType: '',
|
|
|
rules: {
|
|
|
- fileList:[{
|
|
|
+ fileList: [{
|
|
|
required: true, validator: validateFileUrl, trigger: 'change'
|
|
|
}],
|
|
|
- jsonFile:[{
|
|
|
+ jsonFile: [{
|
|
|
required: true, validator: validateJsonFile, trigger: 'change'
|
|
|
}],
|
|
|
- appType:[
|
|
|
+ appType: [
|
|
|
{ required: true, message: '请选择APP类型', trigger: 'change' }
|
|
|
],
|
|
|
- agent:[
|
|
|
+ agent: [
|
|
|
{ required: true, message: '请选择或输入代理商', trigger: 'blur' }
|
|
|
],
|
|
|
- fileServerType:[
|
|
|
+ fileServerType: [
|
|
|
{ required: true, message: '请选择上传服务器', trigger: 'change' }
|
|
|
],
|
|
|
companyName: [
|
|
|
{ required: true, message: '请输入客户名称', trigger: 'blur' }
|
|
|
],
|
|
|
- md5:[
|
|
|
+ md5: [
|
|
|
{ required: true, message: '请输入MD5', trigger: 'blur' },
|
|
|
{ validator: validateMD5, trigger: 'blur' }
|
|
|
- ]
|
|
|
+ ]
|
|
|
},
|
|
|
cameraInfo: {
|
|
|
wifi: '',
|
|
@@ -229,7 +229,7 @@ export default {
|
|
|
currentBalance: '',
|
|
|
pagesize: 10,
|
|
|
clients: [],
|
|
|
- restaurants:[]
|
|
|
+ restaurants: []
|
|
|
}
|
|
|
},
|
|
|
watch: {
|
|
@@ -238,19 +238,19 @@ export default {
|
|
|
}
|
|
|
},
|
|
|
methods: {
|
|
|
- appTypeChange(val){
|
|
|
+ appTypeChange (val) {
|
|
|
const list = {
|
|
|
- 'Android':'.apk',
|
|
|
- 'IOS':'.ipa',
|
|
|
+ 'Android': '.apk',
|
|
|
+ 'IOS': '.ipa'
|
|
|
}
|
|
|
this.accept = list[val] || '.ipa, .apk'
|
|
|
},
|
|
|
- async getAgenetList(){
|
|
|
- let res = await this.$http.post('/manager/app/agenetList',{})
|
|
|
+ async getAgenetList () {
|
|
|
+ let res = await this.$http.post('/manager/app/agenetList', {})
|
|
|
let restaurants = []
|
|
|
if (res.code === 0) {
|
|
|
restaurants = res.data.map(ele => {
|
|
|
- return {value:ele}
|
|
|
+ return {value: ele}
|
|
|
})
|
|
|
}
|
|
|
this.restaurants = restaurants
|
|
@@ -311,21 +311,21 @@ export default {
|
|
|
this.total = res.data.total ? res.data.total : this.total
|
|
|
}
|
|
|
},
|
|
|
- async chenkMd5 (value,callback) {
|
|
|
- console.log('value',value == 123456)
|
|
|
- if(value == this.md5){
|
|
|
- callback();
|
|
|
- }else{
|
|
|
- callback(new Error('MD5错误!请重新输入'));
|
|
|
+ async chenkMd5 (value, callback) {
|
|
|
+ console.log('value', value == 123456)
|
|
|
+ if (value == this.md5) {
|
|
|
+ callback()
|
|
|
+ } else {
|
|
|
+ callback(new Error('MD5错误!请重新输入'))
|
|
|
}
|
|
|
return true
|
|
|
},
|
|
|
- uploadFile(file, fileList){
|
|
|
+ uploadFile (file, fileList) {
|
|
|
// this.ruleForm.fileList = fileList
|
|
|
- console.log('file, fileList)',file, fileList);
|
|
|
+ console.log('file, fileList)', file, fileList)
|
|
|
},
|
|
|
- handleExceed(files, fileList) {
|
|
|
- this.$message.warning(`只能选择一个文件上传`);
|
|
|
+ handleExceed (files, fileList) {
|
|
|
+ this.$message.warning(`只能选择一个文件上传`)
|
|
|
},
|
|
|
handleCurrentChange (val) {
|
|
|
this.currentPage = val
|
|
@@ -342,12 +342,12 @@ export default {
|
|
|
return isLt2M
|
|
|
},
|
|
|
removeDomain () {
|
|
|
- console.log();
|
|
|
+ console.log()
|
|
|
this.$refs['ruleForm'].validate('md5')
|
|
|
},
|
|
|
|
|
|
submit () {
|
|
|
- console.log('submit',this.$refs['ruleForm']);
|
|
|
+ console.log('submit', this.$refs['ruleForm'])
|
|
|
this.$refs['ruleForm'].validate((valid) => {
|
|
|
if (valid) {
|
|
|
// this.addVisible = true
|
|
@@ -357,11 +357,11 @@ export default {
|
|
|
}
|
|
|
})
|
|
|
},
|
|
|
- cancel(){
|
|
|
- this.ruleForm = tempForm
|
|
|
- this.$refs['ruleForm'].resetFields()
|
|
|
- this.md5 = null
|
|
|
- this.addVisible = false
|
|
|
+ cancel () {
|
|
|
+ this.ruleForm = tempForm
|
|
|
+ this.$refs['ruleForm'].resetFields()
|
|
|
+ this.md5 = null
|
|
|
+ this.addVisible = false
|
|
|
},
|
|
|
async _editCompany () {
|
|
|
let {
|
|
@@ -369,7 +369,7 @@ export default {
|
|
|
agent,
|
|
|
appType,
|
|
|
md5,
|
|
|
- name,
|
|
|
+ name
|
|
|
} = this.ruleForm
|
|
|
|
|
|
this.fullscreenLoading = true
|
|
@@ -378,7 +378,7 @@ export default {
|
|
|
agent,
|
|
|
appType,
|
|
|
md5,
|
|
|
- name,
|
|
|
+ name
|
|
|
})
|
|
|
this.fullscreenLoading = false
|
|
|
if (res.code === 0) {
|
|
@@ -395,47 +395,46 @@ export default {
|
|
|
}
|
|
|
},
|
|
|
handleSelect (row) {
|
|
|
- this.$refs.ruleForm.validateField('agent')
|
|
|
+ this.$refs.ruleForm.validateField('agent')
|
|
|
},
|
|
|
- querySearch(queryString, cb) {
|
|
|
- var restaurants = this.restaurants;
|
|
|
- var results = queryString ? restaurants.filter(this.createFilter(queryString)) : restaurants;
|
|
|
- // 调用 callback 返回建议列表的数据
|
|
|
- cb(results);
|
|
|
+ querySearch (queryString, cb) {
|
|
|
+ var restaurants = this.restaurants
|
|
|
+ var results = queryString ? restaurants.filter(this.createFilter(queryString)) : restaurants
|
|
|
+ // 调用 callback 返回建议列表的数据
|
|
|
+ cb(results)
|
|
|
},
|
|
|
- createFilter(queryString) {
|
|
|
- return (restaurant) => {
|
|
|
- return (restaurant.value.toLowerCase().indexOf(queryString.toLowerCase()) === 0);
|
|
|
- };
|
|
|
- },
|
|
|
- showadd(){
|
|
|
+ createFilter (queryString) {
|
|
|
+ return (restaurant) => {
|
|
|
+ return (restaurant.value.toLowerCase().indexOf(queryString.toLowerCase()) === 0)
|
|
|
+ }
|
|
|
+ },
|
|
|
+ showadd () {
|
|
|
this.addVisible = true
|
|
|
},
|
|
|
- fileRemove(){
|
|
|
- this.ruleForm.fileList = []
|
|
|
- this.ruleForm.md5 = ''
|
|
|
- this.md5 = null
|
|
|
+ fileRemove () {
|
|
|
+ this.ruleForm.fileList = []
|
|
|
+ this.ruleForm.md5 = ''
|
|
|
+ this.md5 = null
|
|
|
},
|
|
|
- handleChange(file){
|
|
|
+ handleChange (file) {
|
|
|
let fileType = file.type,
|
|
|
- isLt10M = file.size / 1024/1024 < 10;
|
|
|
+ isLt10M = file.size / 1024 / 1024 < 10
|
|
|
if (!isLt10M) {
|
|
|
- this.$message.error("上传文件不能超过10M,请重新上传");
|
|
|
- return false;
|
|
|
+ this.$message.error('上传文件不能超过10M,请重新上传')
|
|
|
+ return false
|
|
|
}
|
|
|
if (file.name !== 'version.json') {
|
|
|
- this.$message.error("请上传文件名称为version.json");
|
|
|
- return false;
|
|
|
+ this.$message.error('请上传文件名称为version.json')
|
|
|
+ return false
|
|
|
}
|
|
|
this.ruleForm.jsonFile = [file]
|
|
|
-
|
|
|
},
|
|
|
- async uploadSectionFile(params) {
|
|
|
+ async uploadSectionFile (params) {
|
|
|
const file = params.file,
|
|
|
fileType = file.type,
|
|
|
- isImage = fileType.indexOf("image") != -1,
|
|
|
- isLt1G = file.size / 1024/1024/1024 < 1;
|
|
|
- console.log('isLt1G',fileType,params);
|
|
|
+ isImage = fileType.indexOf('image') != -1,
|
|
|
+ isLt1G = file.size / 1024 / 1024 / 1024 < 1
|
|
|
+ console.log('isLt1G', fileType, params)
|
|
|
// 这里常规检验,看项目需求而定
|
|
|
// if (!isImage) {
|
|
|
// this.$message.error("只能上传图片格式png、jpg、gif!");
|
|
@@ -443,17 +442,17 @@ export default {
|
|
|
// }
|
|
|
if (!isLt1G) {
|
|
|
this.fileRemove()
|
|
|
- this.$message.error("上传文件过大,请重新上传");
|
|
|
- return;
|
|
|
+ this.$message.error('上传文件过大,请重新上传')
|
|
|
+ return
|
|
|
}
|
|
|
// 根据后台需求数据格式
|
|
|
- const form = new FormData();
|
|
|
+ const form = new FormData()
|
|
|
// 文件对象
|
|
|
- form.append("file", file);
|
|
|
+ form.append('file', file)
|
|
|
// 本例子主要要在请求时添加特定属性,所以要用自己方法覆盖默认的action
|
|
|
// form.append("clientType", 'xxx');
|
|
|
// 项目封装的请求方法,下面做简单介绍
|
|
|
- console.log('isLt1G',form,file);
|
|
|
+ console.log('isLt1G', form, file)
|
|
|
this.completeshow = true
|
|
|
let res = await this.$http({
|
|
|
url: '/manager/app/upload',
|
|
@@ -464,17 +463,17 @@ export default {
|
|
|
onUploadProgress: (progressEvent) => {
|
|
|
this.complete = ((progressEvent.loaded / progressEvent.total) * 100) | 0
|
|
|
console.log('上传 ' + this.complete)
|
|
|
- },
|
|
|
+ }
|
|
|
})
|
|
|
this.completeshow = false
|
|
|
-
|
|
|
+
|
|
|
this.complete = 0
|
|
|
if (res.code === 0) {
|
|
|
this.ruleForm.fileList = [file]
|
|
|
this.ruleForm.name = file.name
|
|
|
this.md5 = res.data || '0'
|
|
|
}
|
|
|
- }
|
|
|
+ }
|
|
|
},
|
|
|
created () {
|
|
|
this._getCameraData()
|