| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163 |
- <?php
- use common\helpers\ComponentHelper;
- ComponentHelper::loadComponentView('com-export-dialog');
- ?>
- <template id="create-upload">
- <el-dialog title="app上传" v-model="visible" :visible.sync="visible" width="800" @close="$emit('close')" :close-on-click-modal="false">
- <el-form :model="form" size="small" ref="form" label-width="150px" :loading="getConfLoading">
- <el-form-item label="版本号" prop="version">
- <el-input v-model="form.version"></el-input>
- </el-form-item>
- <el-form-item label="版本号数字" prop="version_num">
- <el-input v-model="form.version_num"></el-input>
- </el-form-item>
- <el-form-item label="选择app类型" prop="apptype">
- <el-select v-model="form.app_type" placeholder="请选择" size="small">
- <el-option
- v-for="(item, index) in apptype"
- :key="index"
- :label="item"
- :value="index">
- </el-option>
- </el-select>
- </el-form-item>
- <el-form-item label="上传app安装包">
- <com-upload class="flex flex-y-center"
- v-loading="uploading"
- :disabled="uploading"
- :fields="upload_type"
- accept = ".apk, .ipa, .pxl, .deb, .wgt"
- @start="handleStart"
- @success="handleSuccess"
- @complete="handleComplete"
- :max="1"
- style="width: 40%;float: left;margin-right: 20px;">
- <el-input size="small" :disabled="true" v-model="attachments[0].name" class="input-with-select">
- <el-button slot="append">选择文件</el-button>
- </el-input>
- </com-upload>
- </el-form-item>
- <el-form-item label="更新说明" prop="content">
- <el-input type="textarea" v-model="form.content" rows="4" size="small"></el-input>
- </el-form-item>
- <el-form-item label="是否强制更新" prop="edition_force">
- <el-radio-group v-model="form.edition_force">
- <el-radio :label="0">否</el-radio>
- <el-radio :label="1">是</el-radio>
- </el-radio-group>
- </el-form-item>
- <el-form-item label="更新类型" prop="package_type">
- <el-radio-group v-model="form.package_type">
- <el-radio :label="0">整包升级</el-radio>
- <el-radio :label="1">wgt升级</el-radio>
- </el-radio-group>
- </el-form-item>
- </el-form>
- <span slot="footer" class="dialog-footer">
- <el-button type="primary" :loading="btnLoading" style="margin-bottom: 10px;" size="small" @click="addTask">提交</el-button>
- </span>
- </el-dialog>
- </template>
- <script>
- Vue.component('create-upload', {
- template: '#create-upload',
- props: {
- apptype: Object
- },
- data() {
- return {
- visible: false,
- getConfLoading: false,
- btnLoading: false,
- is_docker_deploy: 0,
- form: {
- app_type: '',
- version_num: '',
- version: '',
- content: '',
- download_url: '',
- edition_force: 0,
- package_type: 0,
- },
- upload_type: {upload_type:'files'},
- uploading: false,
- attachments: [{name: ''}],
- accessUploadType: ['txt'],
- }
- },
- created() {
- console.log(this.apptype);
- // this.getMiniProgramConfig()
- },
- methods: {
- async open(mode = 'add') {
- this.mode = mode;
- this.visible = true;
- return this;
- },
- // getMiniProgramConfig() {
- // let self = this;
- // let params = {
- // r: 'mall/app/create-upload',
- // }
- // self.getConfLoading = true;
- // request({
- // params: params,
- // method: 'get',
- // }).then(e => {
- // self.getConfLoading = false;
- // if (e.data.code == 0) {
- // self.form.upload_secret_key = e.data.data.upload_secret_key;
- // self.form.app_id = e.data.data.app_id;
- // self.form.api_domain = e.data.data.api_domain;
- // self.form.static_domain = e.data.data.static_domain;
- // self.is_docker_deploy = e.data.data.is_docker_deploy;
- // } else {
- // self.$message.error(e.data.msg);
- // }
- // }).catch(e => {
- // self.$message.error(e.data.msg);
- // self.getConfLoading = false;
- // });
- // },
- addTask(){
- this.btnLoading = true;
- request({
- params: {
- r: 'mall/app/version-list'//团长添加//'plugin/stock/mall/stock/edit',
- },
- method: 'post',
- data: this.form
- }).then(response => {
- this.btnLoading = false;
- if (response.data.code == 0) {
- this.$message.success('添加成功');
- this.$emit('success')
- } else {
- this.$message.error(response.data.msg);
- }
- }).catch(response => {
- this.btnLoading = false;
- });
- },
- handleStart(files) {
- this.uploading = true;
- },
- handleSuccess(file) {
- if (file.response && file.response.data && file.response.data.code === 0) {
- const newItem = {
- url: file.response.data.data.url,
- name: file.response.data.data.name,
- };
- this.attachments.unshift(newItem);
- }
- },
- handleComplete(files) {
- this.form.download_url = this.attachments[0].url;
- this.uploading = false;
- },
- }
- });
- </script>
|