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