From 91f7d642ffa2fb5c776b4ac3ae18cdf8204ed44c Mon Sep 17 00:00:00 2001
From: 田源 <lastanimals@163.com>
Date: 星期四, 07 十一月 2024 17:54:24 +0800
Subject: [PATCH] 表单定义修只读必填绑定值&&预览功能样式变更

---
 Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/formDefine/components/formDialog.vue |  140 +++++++++++++++++++++++-----------------------
 1 files changed, 71 insertions(+), 69 deletions(-)

diff --git a/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/formDefine/components/formDialog.vue b/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/formDefine/components/formDialog.vue
index 0e8b0c5..142890e 100644
--- a/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/formDefine/components/formDialog.vue
+++ b/Source/plt-web/plt-web-ui/src/views/modelingMenu/ui/formDefine/components/formDialog.vue
@@ -75,25 +75,22 @@
                         <el-button icon="el-icon-edit" plain size="mini" style="height: 28px;"
                                    type="primary"></el-button>
                       </div>
-
                       <el-input
-                        v-if="item.itemType === 'textarea' || item.itemType === 'richtext' || item.itemType === 'webeditor'"
-                        v-model="item.value"
-                        :placeholder="item.text"
-                        :rows="2"
-                        type="textarea">
+                          v-if="item.itemType === 'textarea' || item.itemType === 'richtext' || item.itemType === 'webeditor'"
+                          v-model="item.value"
+                          :placeholder="item.text">
                       </el-input>
-
-                      <el-input-number v-if="item.itemType === 'number'" v-model="item.value" :max="99999"
+                      <el-input-number size="mini" v-if="item.itemType === 'number'" v-model="item.value" :max="99999"
                                        :min="1"></el-input-number>
                       <el-input v-if="item.itemType === 'password'" v-model="input" placeholder="璇疯緭鍏ュ瘑鐮�"
                                 show-password></el-input>
                       <el-radio v-if="item.itemType === 'radio'" v-model="item.value"></el-radio>
                       <el-checkbox v-if="item.itemType === 'checkbox'" v-model="item.value"></el-checkbox>
-                      <el-select v-if="item.itemType === 'select' || item.itemType === 'multiselect'"
-                                 v-model="item.value" :disabled="true" placeholder="璇烽�夋嫨" size="mini">
+                      <el-select  v-if="item.itemType === 'select' || item.itemType === 'multiselect'"
+                                 v-model="item.value" :disabled="false" placeholder="璇烽�夋嫨" size="mini">
                       </el-select>
                       <el-date-picker
+                        class="formItemMargin"
                         v-if="item.itemType === 'date' || item.itemType === 'datetime'"
                         v-model="item.value"
                         :placeholder="item.itemType === 'date' ? '璇烽�夋嫨鏃ユ湡' : '璇烽�夋嫨鏃ユ湡鏃堕棿'"
@@ -101,6 +98,7 @@
                       </el-date-picker>
 
                       <el-time-select
+                        class="formItemMargin"
                         v-if="item.itemType === 'time'"
                         v-model="item.value"
                         :picker-options="{
@@ -146,11 +144,11 @@
                 <el-row style="border-bottom: 1px solid #878585;padding-bottom: 10px">
                   <el-col :span="24">
                     <el-form-item label="浣跨敤瀛楁">
-                      <div style="display: flex">
+                      <div style="display: flex;align-items: center">
                         <el-input v-model="form.text" :readonly="true" placeholder="璇疯緭鍏ヤ娇鐢ㄥ瓧娈�" size="mini"></el-input>
-                        <el-checkbox v-model="form.itemIsEditable" style="margin-left: 5px; margin-right: 5px">鍙
+                        <el-checkbox v-model="form.itemIsEditable" true-label="1" false-label="0" style="margin-left: 5px; margin-right: 5px">鍙
                         </el-checkbox>
-                        <el-checkbox v-model="form.itemIsRequired" style="margin-left: 5px;margin-right: 0px">蹇呭~
+                        <el-checkbox v-model="form.itemIsRequired" true-label="1" false-label="0" style="margin-left: 5px;margin-right: 0px">蹇呭~
                         </el-checkbox>
                       </div>
                     </el-form-item>
@@ -705,75 +703,75 @@
       append-to-body="true"
       class="avue-dialog"
       title="棰勮"
-      width="80%">
-      <el-form ref="form" :model="form" :rules="rules" label-width="100px">
-        <el-row>
-          <el-col v-for="(item,index) in formList" :key="index" :span="topForm.columnNumber">
-            <el-form-item :class="['hiddenLabel', { 'active-border': activeItem.text === item.text }]"
-                          :label="item.itemName + '锛�'"
-                          style="padding-left: 5px" @click.native="formItemClick(item,index)">
-              <el-input
-                v-if="item.itemType === 'text' ||
+      width="60%">
+      <div style="height: 600px">
+        <el-form ref="form" :model="form" :rules="rules" label-width="100px">
+          <el-row>
+            <el-col v-for="(item,index) in formList" :key="index" :span="topForm.columnNumber">
+              <el-form-item :label="item.itemName + '锛�'" style="padding-left: 5px">
+                <el-input
+                  v-if="item.itemType === 'text' ||
                          item.itemType === 'custom' ||
                          item.itemType === 'customform'||
                          item.itemType === 'hidden' ||
                          item.itemType === 'specialCharacter'"
-                v-model="item.value" :placeholder="item.text"
-                size="mini"></el-input>
+                  v-model="item.value" :placeholder="item.text"
+                  size="mini"></el-input>
 
-              <div v-if="item.itemType === 'textbtn'" style="display: flex;align-items: center">
-                <el-input v-model="item.value" :placeholder="item.text" size="mini"></el-input>
-                <el-button icon="el-icon-edit" plain size="mini" style="height: 28px;"
-                           type="primary"></el-button>
-              </div>
+                <div v-if="item.itemType === 'textbtn'" style="display: flex;align-items: center">
+                  <el-input v-model="item.value" :placeholder="item.text" size="mini"></el-input>
+                  <el-button icon="el-icon-edit" plain size="mini" style="height: 28px;"
+                             type="primary"></el-button>
+                </div>
 
-              <el-input
-                v-if="item.itemType === 'textarea' || item.itemType === 'richtext' || item.itemType === 'webeditor'"
-                v-model="item.value"
-                :placeholder="item.text"
-                :rows="2"
-                type="textarea">
-              </el-input>
+                <el-input
+                  v-if="item.itemType === 'textarea' || item.itemType === 'richtext' || item.itemType === 'webeditor'"
+                  v-model="item.value"
+                  :placeholder="item.text">
+                </el-input>
 
-              <el-input-number v-if="item.itemType === 'number'" v-model="item.value" :max="99999"
-                               :min="1"></el-input-number>
-              <el-input v-if="item.itemType === 'password'" v-model="input" placeholder="璇疯緭鍏ュ瘑鐮�"
-                        show-password></el-input>
-              <el-radio v-if="item.itemType === 'radio'" v-model="item.value"></el-radio>
-              <el-checkbox v-if="item.itemType === 'checkbox'" v-model="item.value"></el-checkbox>
-              <el-select v-if="item.itemType === 'select' || item.itemType === 'multiselect'"
-                         v-model="item.value" :disabled="true" placeholder="璇烽�夋嫨" size="mini">
-              </el-select>
-              <el-date-picker
-                v-if="item.itemType === 'date' || item.itemType === 'datetime'"
-                v-model="item.value"
-                :placeholder="item.itemType === 'date' ? '璇烽�夋嫨鏃ユ湡' : '璇烽�夋嫨鏃ユ湡鏃堕棿'"
-                type="date">
-              </el-date-picker>
+                <el-input-number size="mini" v-if="item.itemType === 'number'" v-model="item.value" :max="99999"
+                                 :min="1"></el-input-number>
+                <el-input v-if="item.itemType === 'password'" v-model="input" placeholder="璇疯緭鍏ュ瘑鐮�"
+                          show-password></el-input>
+                <el-radio v-if="item.itemType === 'radio'" v-model="item.value"></el-radio>
+                <el-checkbox v-if="item.itemType === 'checkbox'" v-model="item.value"></el-checkbox>
+                <el-select v-if="item.itemType === 'select' || item.itemType === 'multiselect'"
+                           v-model="item.value" placeholder="璇烽�夋嫨" size="mini">
+                  <el-option v-for="(i,k) in item.itemKeyValueList" :key="l" :label="i.value"
+                             :value="i.key"></el-option>
+                </el-select>
+                <el-date-picker
+                  v-if="item.itemType === 'date' || item.itemType === 'datetime'"
+                  v-model="item.value"
+                  :placeholder="item.itemType === 'date' ? '璇烽�夋嫨鏃ユ湡' : '璇烽�夋嫨鏃ユ湡鏃堕棿'"
+                  type="date">
+                </el-date-picker>
 
-              <el-time-select
-                v-if="item.itemType === 'time'"
-                v-model="item.value"
-                :picker-options="{
+                <el-time-select
+                  v-if="item.itemType === 'time'"
+                  v-model="item.value"
+                  :picker-options="{
                          start: '08:30',
                          step: '00:15',
                          end: '18:30'
                          }"
-                placeholder="閫夋嫨鏃堕棿">
-              </el-time-select>
-              <el-button v-if="item.itemType === 'file'"
-                         v-model="item.value" plain size="mini" type="primary">
-                涓婁紶鏂囦欢
-              </el-button>
-              <el-button v-if="item.itemType === 'multiFile'"
-                         v-model="item.value" plain size="mini" type="primary">
-                澶氭枃浠朵笂浼�
-              </el-button>
+                  placeholder="閫夋嫨鏃堕棿">
+                </el-time-select>
+                <el-button v-if="item.itemType === 'file'"
+                           v-model="item.value" plain size="mini" type="primary">
+                  涓婁紶鏂囦欢
+                </el-button>
+                <el-button v-if="item.itemType === 'multiFile'"
+                           v-model="item.value" plain size="mini" type="primary">
+                  澶氭枃浠朵笂浼�
+                </el-button>
 
-            </el-form-item>
-          </el-col>
-        </el-row>
-      </el-form>
+              </el-form-item>
+            </el-col>
+          </el-row>
+        </el-form>
+      </div>
     </el-dialog>
 
     <el-dialog
@@ -1527,4 +1525,8 @@
   font-size: 14px
 }
 
+.formItemMargin{
+  margin: 10px 0 10px 0;
+}
+
 </style>

--
Gitblit v1.9.3