Zory 2 هفته پیش
والد
کامیت
55f384bc55
3فایلهای تغییر یافته به همراه65 افزوده شده و 12 حذف شده
  1. 26 0
      src/api/model/config.js
  2. 36 9
      src/views/project/pages/components/design.vue
  3. 3 3
      src/views/setting/storage/index.vue

+ 26 - 0
src/api/model/config.js

@@ -0,0 +1,26 @@
+import config from "@/config"
+import http from "@/utils/request"
+
+export default {
+    data: {
+        url: `${config.API_URL}/config/list`,
+        name: "-",
+        get: async function (data = {}) {
+            return await http.get(this.url, data);
+        }
+    },
+    save: {
+        url: `${config.API_URL}/config/save`,
+        name: "-",
+        post: async function (data = {}) {
+            return await http.post(this.url, data);
+        }
+    },
+    regin: {
+        url: `${config.API_URL}/config/regin`,
+        name: "-",
+        get: async function (data = {}) {
+            return await http.get(this.url, data);
+        }
+    },
+}

+ 36 - 9
src/views/project/pages/components/design.vue

@@ -60,16 +60,16 @@
                                                     </div>
                                                 </div>
                                                 <div :class="element.active?'edit-text active':'edit-text'" v-if="element.type=='text'" @click="editImage(index)">
-                                                    <div class="text" v-if="element.content">{{ element.content }}</div>
+                                                    <div class="text" :style="{ backgroundColor: element.bgColor,color: element.color,fontSize: element.size+'px',lineHeight: element.lineHeight+'px' }" v-if="element.content">{{ element.content }}</div>
                                                     <div class="empty-image" v-else>
                                                         请填写文本信息
                                                     </div>
                                                 </div>
                                                 <div :class="element.active?'edit-text active':'edit-text'" v-if="element.type=='line'" @click="editImage(index)">
-                                                    <div class="text" :style="{height:element.height+'px',background:'#f8f8f8'}">{{ element.content }}</div>
+                                                    <div class="text" :style="{height:element.height+'px',backgroundColor:element.bgColor}">{{ element.content }}</div>
                                                 </div>
                                                 <div :class="element.active?'edit-text active':'edit-text'" v-if="element.type=='form'" @click="editImage(index)">
-                                                    <div class="empty-form">表单占位</div>
+                                                    <div class="empty-form" :style="{ backgroundColor: element.bgColor }">表单占位</div>
                                                 </div>
                                                 <div class="right" v-if="element.active">
                                                     <div class="right-item" @click="delItem(index)"><el-icon><el-icon-delete /></el-icon></div>
@@ -90,15 +90,42 @@
                                 </div>
                             </template>
                             <template v-if="editControl.type == 'line'">
-                                <div class="title">设置高度</div>
+                                <div class="title">辅助空白</div>
                                 <div class="edit-form" style="padding: 25px;">
-                                    <el-slider v-model="editControl.height" />
+                                    <el-form-item label="高度">
+                                        <el-slider v-model="editControl.height" />
+                                    </el-form-item>
+                                    <el-form-item label="背景">
+                                        <el-color-picker v-model="editControl.bgColor" size="large" />
+                                    </el-form-item>
+                                </div>
+                            </template>
+                            <template v-if="editControl.type == 'form'">
+                                <div class="title">表单设置</div>
+                                <div class="edit-form" style="padding: 25px;">
+                                    <el-form-item label="背景">
+                                        <el-color-picker v-model="editControl.bgColor" size="large" />
+                                    </el-form-item>
                                 </div>
                             </template>
                             <template v-if="editControl.type == 'text'">
                                 <div class="title">编辑文本信息</div>
                                 <div class="edit-form">
-                                    <el-input v-model="editControl.content" type="textarea" :rows="10" placeholder="请输入文本信息"></el-input>
+                                    <el-form-item label="内容">
+                                        <el-input v-model="editControl.content" type="textarea" :rows="10" placeholder="请输入文本信息"></el-input>
+                                    </el-form-item>
+                                    <el-form-item label="背景">
+                                        <el-color-picker v-model="editControl.bgColor" size="large" />
+                                    </el-form-item>
+                                    <el-form-item label="颜色">
+                                        <el-color-picker v-model="editControl.color" size="large" />
+                                    </el-form-item>
+                                    <el-form-item label="字号">
+                                        <el-slider v-model="editControl.size" />
+                                    </el-form-item>
+                                    <el-form-item label="行高">
+                                        <el-slider v-model="editControl.lineHeight" />
+                                    </el-form-item>
                                 </div>
                             </template>
                         </div>
@@ -132,9 +159,9 @@ export default {
             pageData:{},
             controlData:{
                 image:{"name":"图片控件","url":"","type":"image","active":false},
-                text:{"name":"文本控件","content":"","type":"text","active":false},
-                line:{"name":"辅助空白","height":1,"type":"line","active":false},
-                form:{"name":"表单控件","content":"form","type":"form","active":false}
+                text:{"name":"文本控件","content":"","type":"text","active":false,"bgColor":"#ffffff","color":"#ffffff","size":12,"lineHieght":24},
+                line:{"name":"辅助空白","height":1,"type":"line","active":false,"bgColor":"#ffffff"},
+                form:{"name":"表单控件","content":"form","type":"form","active":false,"bgColor":"#ffffff"}
             },
             designControl:[],
             editControl:null

+ 3 - 3
src/views/setting/storage/index.vue

@@ -271,7 +271,7 @@ export default {
             this.isSaveing = true;
             this.$refs.form.validate(async (valid) => {
                 if (valid) {
-                    var result = await this.$API.setting.configSave.post({type:"storage",data: this.sys });
+                    var result = await this.$API.config.save.post({type:"storage",data: this.sys });
                     this.isSaveing = false;
                     if(result.code == 0)
                     {
@@ -286,7 +286,7 @@ export default {
             })
         },
         async getConfig() {
-            var result = await this.$API.setting.config.get({ type: "storage" });
+            var result = await this.$API.config.data.get({ type: "storage" });
             if (result.code == 0) {
                 this.$message.error(result.msg);
                 return;
@@ -295,7 +295,7 @@ export default {
             this.sys = result.data;
         },
         async getRegin() {
-            var result = await this.$API.setting.regin.get();
+            var result = await this.$API.config.regin.get();
             if (result.code == 0) {
                 this.$message.error(result.msg);
                 return;