浏览代码

Merge branch '10/23-test' of http://git.dayaedu.com/molingzhide/dy-admin-manager into 10/23-test

Xiao_Mo 4 年之前
父节点
当前提交
e71158b546

+ 9 - 0
README-zh.md

@@ -70,6 +70,15 @@ npm run preview -- --report
 
 ```
 
+## 组件
+组件使用的文件统一放到:src/components 目录下,首字母大写
+
+Upload -- 目前只实现了图片上传
+QrCode -- 生成二维码弹窗
+Editor -- 富文本编辑器(如果要用到上传视屏,则需要在处理一下)
+Tooltip --
+
+
 ## 注意事项
 
 ```bash

文件差异内容过多而无法显示
+ 0 - 0
dist/index.html


+ 1 - 0
dist/static/css/chunk-584f74be.3577e1a4.css

@@ -0,0 +1 @@
+.content-tooltip[data-v-64596b6c]{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;max-width:100%;display:inline-block}.dialog-footer[data-v-43a5b626]{width:100%;text-align:right}.reword-list[data-v-43a5b626]{display:-webkit-box;display:-ms-flexbox;display:flex}.reword-list .el-form-item[data-v-43a5b626]{-webkit-box-flex:1;-ms-flex:1;flex:1}.add-reword[data-v-43a5b626]{margin-bottom:22px;width:180px;border-style:dashed}

+ 1 - 0
dist/static/css/chunk-64aa1cae.afbf5ff3.css

@@ -0,0 +1 @@
+.right-code .title[data-v-43074d22]{font-size:18px;text-align:center;padding-bottom:8px}.newBand[data-v-43074d22]{display:inline-block}.el-input[data-v-43074d22]{width:180px!important}

+ 0 - 1
dist/static/css/chunk-b10e6fea.cb21165c.css

@@ -1 +0,0 @@
-.content-tooltip[data-v-64596b6c]{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;max-width:100%;display:inline-block}.dialog-footer[data-v-17893631]{width:100%;text-align:right}.reword-list[data-v-17893631]{display:-webkit-box;display:-ms-flexbox;display:flex}.reword-list .el-form-item[data-v-17893631]{-webkit-box-flex:1;-ms-flex:1;flex:1}.add-reword[data-v-17893631]{margin-bottom:22px;width:180px;border-style:dashed}

+ 0 - 1
dist/static/css/chunk-e29c4bd8.262c5511.css

@@ -1 +0,0 @@
-.right-code .title[data-v-080514fc]{font-size:18px;text-align:center;padding-bottom:8px}.newBand[data-v-080514fc]{display:inline-block}.el-input[data-v-080514fc]{width:180px!important}

文件差异内容过多而无法显示
+ 0 - 0
dist/static/js/app.834627f3.js


文件差异内容过多而无法显示
+ 0 - 0
dist/static/js/chunk-584f74be.4011ac6e.js


文件差异内容过多而无法显示
+ 0 - 0
dist/static/js/chunk-64aa1cae.d4e2f2ee.js


文件差异内容过多而无法显示
+ 0 - 0
dist/static/js/chunk-b10e6fea.ea2f4f82.js


文件差异内容过多而无法显示
+ 0 - 0
dist/static/js/chunk-e29c4bd8.1d93a4e5.js


+ 86 - 0
src/components/QrCode/index.vue

@@ -0,0 +1,86 @@
+
+<template>
+    <div class="qrCode">
+        <el-dialog :title="title"
+               :visible.sync="status"
+               @close="onDialogClose"
+               width="300px">
+            <div class="left-code">
+                <vue-qr :text="codeUrl" style="width: 100%" :margin="0"></vue-qr>
+                <p class="code-url" v-if="codeUrl">{{ codeUrl }} <el-link @click="copyUrl(codeUrl)" class="link-btn" type="primary">复制</el-link></p>
+            </div>
+        </el-dialog>
+    </div>
+</template>
+
+<script>
+import VueQr from 'vue-qr'
+import copy from 'copy-to-clipboard'
+export default {
+    data() {
+        return {
+            status: false
+        };
+    },
+    components: {
+        VueQr
+    },
+    props: {
+        value: {
+            // 组件状态
+            type: Boolean,
+            required: true,
+            default() {
+                return false
+            }
+        },
+        title: {
+            type: String,
+            default() {
+                return '查看二维码'
+            }
+        },
+        codeUrl: {
+            type: String
+        }
+    },
+    mounted() {
+        this.status = this.value
+    },
+    methods: {
+        onDialogClose() {
+            this.status = false
+            this.$emit('input', false)
+        },
+        copyUrl(url) {
+            copy(url)
+            this.$message.success('复制成功')
+        },
+    },
+    watch: {
+        value(newValue) {
+            this.status = newValue;
+        },
+        title(newValue, oldValue) {
+            if(newValue != oldValue) {
+                this.title = newValue
+            }
+        }
+    },
+    beforeDestroy() {},
+};
+</script>
+
+<style lang="scss">
+.left-code{
+    .code-url{
+        margin-top: 10px;
+        margin-bottom: 10px;
+        .link-btn{
+            margin-top: 0;
+            margin-bottom: 0;
+            font-size: 12px;
+        }
+    }
+}
+</style>

+ 18 - 3
src/views/luckyDraw/trophyCreate.vue

@@ -4,6 +4,7 @@
         <el-form :model="form"
                 :rules="rules"
                 ref="ruleForm">
+            <p style="color: red; padding: 0 0 10px 100px;">注意:活动所有奖品的中奖概率之和必须等于100%; <br />活动奖品必须选择一个默认奖品,该奖品建议设置为谢谢参与;</p>
             <el-form-item label="所属活动" prop="groupId" label-width="100PX">
                 <el-select v-model.trim="form.groupId"
                         style="width: 100% !important"
@@ -12,7 +13,7 @@
                 </el-select>
             </el-form-item>
             <el-row :gutter="10" v-for="(reword, index) in form.rewordList" :key="index">
-                <el-col :span="12">
+                <el-col :span="10">
                     <el-form-item :label="`奖品${index + 1}`"
                             label-width="100PX"
                             :prop="'rewordList.' + index + '.name'"
@@ -22,7 +23,7 @@
                                 placeholder="请输入奖品名称"></el-input>
                     </el-form-item>
                 </el-col>
-                <el-col :span="7">
+                <el-col :span="5">
                     <el-form-item :prop="'rewordList.' + index + '.chances'"
                             :rules="[{required: true, validator: validNumber, trigger: 'blur'}]">
                         <el-input v-model.trim="reword.chances"
@@ -33,7 +34,7 @@
                         </el-input>
                     </el-form-item>
                 </el-col>
-                <el-col :span="5">
+                <el-col :span="4">
                     <el-form-item :prop="'rewordList.' + index + '.stock'"
                             :rules="[{required: true, validator: validNumber1, trigger: 'blur'}]">
                         <el-input v-model.trim="reword.stock"
@@ -43,6 +44,17 @@
                         </el-input>
                     </el-form-item>
                 </el-col>
+                <el-col :span="5">
+                    <el-form-item :prop="'rewordList.' + index + '.isDefault'"
+                            :rules="[{required: true, message:'请输入选择是否默认', trigger: 'blur'}]">
+                        <el-select v-model.trim="reword.isDefault"
+                                style="width: 100% !important"
+                                placeholder="请选择是否默认">
+                            <el-option :value="true" label="是"></el-option>
+                            <el-option :value="false" label="否"></el-option>
+                        </el-select>
+                    </el-form-item>
+                </el-col>
             </el-row>
             <div style="text-align: center">
                 <el-button :disabled="form.rewordList.length <= 1" class="add-reword" round icon="el-icon-minus" @click="onRemoveReword">删除奖品</el-button>
@@ -101,6 +113,7 @@ export default {
                     name: null,
                     chances: null,
                     stock: null,
+                    isDefault: null
                 }],
                 memo: null
             },
@@ -133,6 +146,7 @@ export default {
                 name: null,
                 chances: null,
                 stock: null,
+                isDefault: null
             })
         },
         onSubmit(formName) {
@@ -149,6 +163,7 @@ export default {
                             groupId: form.groupId,
                             chances: numeral(item.chances ? item.chances / 100 : 0).format('0.00'),
                             stock: item.stock,
+                            isDefault: item.isDefault,
                             memo: form.memo,
                             enabled: 1
                         })

+ 23 - 3
src/views/luckyDraw/trophyManager.vue

@@ -53,6 +53,13 @@
                     </template>
                 </el-table-column>
                 <el-table-column align="center"
+                                prop="isDefault"
+                                label="是否默认">
+                    <template slot-scope="scope">
+                        {{ scope.row.isDefault ? '是' : '否' }}
+                    </template>
+                </el-table-column>
+                <el-table-column align="center"
                                 prop="memo"
                                 label="备注">
                     <template slot-scope="scope">
@@ -75,7 +82,7 @@
 
         <el-dialog :title="formTitle[formActionTitle]"
                 :visible.sync="lotteryCreateStatus"
-                width="600px">
+                width="800px">
             <trophy-create :groupList="groupList"
                         :getList="getList"
                         :close="onPopupClose"></trophy-create>
@@ -119,6 +126,15 @@
                             placeholder="请输入库存">
                     </el-input>
                 </el-form-item>
+                <el-form-item label="是否默认"
+                            prop="isDefault">
+                    <el-select v-model.trim="form.isDefault"
+                            style="width: 100% !important"
+                            placeholder="请选择是否是默认">
+                        <el-option :value="true" label="是"></el-option>
+                        <el-option :value="false" label="否"></el-option>
+                    </el-select>
+                </el-form-item>
                 <el-form-item label="备注"
                             prop="memo">
                     <el-input type="textarea" :rows="2" v-model.trim="form.memo"
@@ -184,14 +200,16 @@ export default {
                 groupId: null,
                 chances: null,
                 stock: null,
-                memo: null
+                memo: null,
+                isDefault: null
             },
             rules: {
                 name: [{required: true, message:'请输入活动名称', trigger: 'blur'}],
                 groupId: [{required: true, message:'请选择所属活动', trigger: 'change'}],
                 chances: [{required: true, validator: validNumber, trigger: 'blur'}],
                 stock: [{required: true, validator: validNumber1, trigger: 'blur'}],
-                enabled: [{required: true, message:'请选择是否启用', trigger: 'change'}]
+                enabled: [{required: true, message:'请选择是否启用', trigger: 'change'}],
+                isDefault: [{required: true, message:'请选择是否默认', trigger: 'change'}]
             },
             pageInfo: {
                 // 分页规则
@@ -236,6 +254,7 @@ export default {
                         groupId: data.groupId,
                         chances: data.chances * 100,
                         stock: data.stock,
+                        isDefault: data.isDefault,
                         memo: data.memo
                     }
                 })
@@ -254,6 +273,7 @@ export default {
                         chances: numeral(form.chances ? form.chances / 100 : 0).format('0.0000'),
                         stock: form.stock,
                         memo: form.memo,
+                        isDefault: form.isDefault,
                         enabled: 1
                     }
                     if(this.formActionTitle == 'update') {

+ 1 - 1
src/views/sporadicManager/sporadicList.vue

@@ -201,7 +201,7 @@
         <el-form-item label="缴费人数"
                       prop="maxNum"
                       :rules="[{ required: true, validator: validMaxNum, trigger: 'blur' }]"
-                      v-show="maskForm.type == 12">
+                      v-if="maskForm.type == 12">
           <el-input v-model.trim="maskForm.maxNum"
                     type="number"
                     @mousewheel.native.prevent></el-input>

部分文件因为文件数量过多而无法显示