| | |
| | | <template> |
| | | <GlobalWindow |
| | | :title="title" |
| | | width="50%" |
| | | :visible.sync="visible" |
| | | :confirm-working="isWorking" |
| | | @confirm="confirm" |
| | | > |
| | | <el-form :model="form" ref="form" :rules="rules"> |
| | | <el-form-item label="创建人编码" prop="creator"> |
| | | <el-input v-model="form.creator" placeholder="请输入创建人编码" v-trim/> |
| | | </el-form-item> |
| | | <el-form-item label="创建时间" prop="createDate"> |
| | | <el-date-picker v-model="form.createDate" value-format="yyyy-MM-dd" placeholder="请输入创建时间"></el-date-picker> |
| | | </el-form-item> |
| | | <el-form-item label="更新人编码" prop="editor"> |
| | | <el-input v-model="form.editor" placeholder="请输入更新人编码" v-trim/> |
| | | </el-form-item> |
| | | <el-form-item label="更新时间" prop="editDate"> |
| | | <el-date-picker v-model="form.editDate" value-format="yyyy-MM-dd" placeholder="请输入更新时间"></el-date-picker> |
| | | </el-form-item> |
| | | <el-form-item label="是否删除0否 1是" prop="isdeleted"> |
| | | <el-input v-model="form.isdeleted" placeholder="请输入是否删除0否 1是" v-trim/> |
| | | </el-form-item> |
| | | <el-form-item label="备注" prop="info"> |
| | | <el-input v-model="form.info" placeholder="请输入备注" v-trim/> |
| | | </el-form-item> |
| | | <el-form-item label="版本号" prop="versionInfo"> |
| | | <el-input v-model="form.versionInfo" placeholder="请输入版本号" v-trim/> |
| | | </el-form-item> |
| | | <el-form-item label="安装包路径" prop="fileUrl"> |
| | | <el-input v-model="form.fileUrl" placeholder="请输入安装包路径" v-trim/> |
| | | </el-form-item> |
| | | <el-form-item label="安装版名称" prop="name"> |
| | | <el-input v-model="form.name" placeholder="请输入安装版名称" v-trim/> |
| | | <el-form-item label="安装包" prop="fileUrl"> |
| | | <div style="width: 100%; height: 1px;"></div> |
| | | <el-upload |
| | | class="upload-demo" |
| | | accept=".APK,.apk" |
| | | :limit="1" |
| | | :action="uploadImgUrl" |
| | | :data="uploadData" |
| | | :on-success="handleSuccess" |
| | | :on-error="uploadError" |
| | | :on-remove="handleRemove" |
| | | :on-exceed="uploadExceed" |
| | | :file-list="fileList"> |
| | | <el-button size="small" type="primary">点击上传</el-button> |
| | | <div slot="tip" class="el-upload__tip">支持上传APK文件,单次上传<2GB</div> |
| | | </el-upload> |
| | | </el-form-item> |
| | | <el-form-item label="更新描述" prop="content"> |
| | | <el-input v-model="form.content" placeholder="请输入更新描述" v-trim/> |
| | | <el-input type="textarea" :rows="5" maxlength="100" show-word-limit v-model="form.content" placeholder="请输入更新描述" v-trim/> |
| | | </el-form-item> |
| | | <el-form-item label="排序码" prop="sortnum"> |
| | | <el-input v-model="form.sortnum" placeholder="请输入排序码" v-trim/> |
| | | </el-form-item> |
| | | <el-form-item label="更新标题" prop="title"> |
| | | <el-input v-model="form.title" placeholder="请输入更新标题" v-trim/> |
| | | </el-form-item> |
| | | <el-form-item label="是否强制更新 0否 1是" prop="isForce"> |
| | | <el-input v-model="form.isForce" placeholder="请输入是否强制更新 0否 1是" v-trim/> |
| | | </el-form-item> |
| | | <el-form-item label="平台类型 0Android 1IOS" prop="type"> |
| | | <el-input v-model="form.type" placeholder="请输入平台类型 0Android 1IOS" v-trim/> |
| | | <el-form-item label="是否强制更新" prop="isForce"> |
| | | <el-switch |
| | | v-model="form.isForce" |
| | | active-color="#13ce66" |
| | | inactive-color="#ff4949" |
| | | :active-value="1" |
| | | :inactive-value="0"> |
| | | </el-switch> |
| | | </el-form-item> |
| | | </el-form> |
| | | </GlobalWindow> |
| | |
| | | components: { GlobalWindow }, |
| | | data () { |
| | | return { |
| | | uploadImgUrl: process.env.VUE_APP_API_PREFIX + '/visitsAdmin/cloudService/public/upload', |
| | | // 表单数据 |
| | | form: { |
| | | id: null, |
| | | creator: '', |
| | | createDate: '', |
| | | editor: '', |
| | | editDate: '', |
| | | isdeleted: '', |
| | | info: '', |
| | | versionInfo: '', |
| | | fileUrl: '', |
| | | name: '', |
| | | content: '', |
| | | sortnum: '', |
| | | title: '', |
| | | isForce: '', |
| | | type: '' |
| | | fileSize: '', |
| | | name: '', |
| | | isForce: 1 |
| | | }, |
| | | // 验证规则 |
| | | rules: { |
| | | versionInfo: [ |
| | | { required: true, message: '请输入版本号', trigger: 'blur' } |
| | | ], |
| | | fileUrl: [ |
| | | { required: true, message: '请上传安装包', trigger: 'blur' } |
| | | ], |
| | | content: [ |
| | | { required: true, message: '请输入更新描述', trigger: 'blur' } |
| | | ] |
| | | }, |
| | | fileList: [], |
| | | uploadData: { |
| | | folder: 'appFile' |
| | | } |
| | | } |
| | | }, |
| | |
| | | api: '/business/jkVersion', |
| | | 'field.id': 'id' |
| | | }) |
| | | }, |
| | | methods: { |
| | | open (title, target) { |
| | | this.title = title |
| | | this.fileList = [] |
| | | this.form.fileSize = '' |
| | | this.form.name = '' |
| | | this.visible = true |
| | | // 新建 |
| | | if (target == null) { |
| | | this.$nextTick(() => { |
| | | this.$refs.form.resetFields() |
| | | this.form[this.configData['field.id']] = null |
| | | }) |
| | | return |
| | | } |
| | | // 编辑 |
| | | this.$nextTick(() => { |
| | | for (const key in this.form) { |
| | | this.form[key] = target[key] |
| | | } |
| | | if (this.form.fileUrl) { |
| | | this.fileList.push({ |
| | | name: this.form.name, |
| | | url: target.fullFileUrl |
| | | }) |
| | | } |
| | | }) |
| | | }, |
| | | handleSuccess(res, file) { |
| | | if (res.code == 200) { |
| | | let { data } = res |
| | | this.form.fileUrl = data.imgaddr |
| | | this.form.fileSize = data.fileSize |
| | | this.form.name = data.originname |
| | | this.fileList.push({ |
| | | name: data.originname, |
| | | url: data.url |
| | | }) |
| | | this.$message.success('上传成功') |
| | | } else { |
| | | this.$message.error('上传失败') |
| | | this.form.fileUrl = '' |
| | | this.fileList = [] |
| | | this.form.name = '' |
| | | this.form.fileSize = '' |
| | | } |
| | | }, |
| | | uploadError() { |
| | | this.form.fileUrl = '' |
| | | this.fileList = [] |
| | | this.form.name = '' |
| | | this.form.fileSize = '' |
| | | this.$message.error('上传失败') |
| | | }, |
| | | uploadExceed() { |
| | | this.$message.error('最多只能上传一个文件') |
| | | }, |
| | | handleRemove() { |
| | | this.form.fileUrl = '' |
| | | this.fileList = [] |
| | | this.form.name = '' |
| | | this.form.fileSize = '' |
| | | } |
| | | } |
| | | } |
| | | </script> |