| | |
| | | </view> |
| | | </view> |
| | | |
| | | <scroll-view :scroll-top="scrollTop" :scroll-y="true" class="scroll-Y" @scrolltolower="scrolltolower" |
| | | @scroll="scroll"> |
| | | <view class="view-content" id="tabpanel"> |
| | | <view class="dv-panel dv-panel-bkcolor" v-for="(style,ii) in detail1StyleDefList" |
| | | @click="onPanelClick(ii)" :id="'panel'+style.form.htmlobjId" |
| | | :class="activelist[ii].active==true?'bk-active':''"> |
| | | <div class="dv-panel-button" v-if="param.ListPage.CheckBox==true"> |
| | | <checkbox-group> |
| | | <label> |
| | | <checkbox :value="style.SelBut_Checked" :checked="style.SelBut_Checked" /> |
| | | </label> |
| | | </checkbox-group> |
| | | </div> |
| | | <!-- HTML页面类型显示 --> |
| | | <div class="dv-listHtml-Panel" v-if="ListHtml_Panel" v-html="ListHtml_Panel[ii]" :style="param.ListPage.CheckBox==true && param.ListPage.Click_View==true?'width:85%;': |
| | | param.ListPage.CheckBox==false && param.ListPage.Click_View==true?'width:91%;': |
| | | param.ListPage.CheckBox==true && param.ListPage.Click_View==false?'width:88%;':'width:100%;'"> |
| | | |
| | | </div> |
| | | <div class="dv-panel-input" v-if="!ListHtml_Panel" :style="param.ListPage.CheckBox==true && param.ListPage.Click_View==true?'width:85%;': |
| | | param.ListPage.CheckBox==false && param.ListPage.Click_View==true?'width:91%;': |
| | | param.ListPage.CheckBox==true && param.ListPage.Click_View==false?'width:88%;':'width:100%;'"> |
| | | <div v-for="(item,index) in style.form.items"> |
| | | <!-- 普通布局 --> |
| | | <view v-if="item.name!='Layout'"> |
| | | <text class="txt_title" |
| | | :style="{'width':item.labelWidth+'px'}">{{item.label}}:</text> |
| | | <span class="form-item-span" v-if="item.disabled">{{item.value}}</span> |
| | | <!-- 文本框/数字框 --> |
| | | <view class="dv_input" |
| | | v-if="(item.name=='Input' || item.name=='InputNumber') && !item.disabled"> |
| | | <text v-if="item.setting.prefix" class="uni-icon" :class="[item.setting.prefix]" |
| | | @change="onChange(item)"></text> |
| | | <input class="uni-input" :class="item.disabled?'input-disabled':''" |
| | | :type="item.name=='Input'?'text':item.name=='InputNumber'?'number':'text'" |
| | | v-model="item.value" :disabled="item.disabled" |
| | | :placeholder="item.placeholder" |
| | | :style="{'width':item.setting.prefix && item.setting.suffix?'78%':item.setting.prefix || item.setting.suffix?'87%':'96%'}" |
| | | :focus="focusMateria" @focus="ontap(item)" @blur="onevent(item)" /> |
| | | <text v-if="item.setting.suffix" class="uni-icon" :class="[item.setting.suffix]" |
| | | @click="onChange(item)"></text> |
| | | </view> |
| | | <!-- 下拉框-单选 item.useDict?item.dict:item.selections--> |
| | | <uni-data-select id="dv_select" v-if="item.name=='Select' && !item.disabled" |
| | | :class="item.disabled?'input-disabled':''" v-model="item.value" |
| | | :localdata="item.dict" @change="onChange(item)" :disabled="item.disabled" |
| | | :clear="false"></uni-data-select> |
| | | <!-- 多行文本 --> |
| | | <view class="input-wrapper" v-if="item.name=='Textarea' && !item.disabled"> |
| | | <textarea class="uni-input" :value="item.value" |
| | | :class="item.disabled?'input-disabled':''" :placeholder="item.placeholder" |
| | | @blur="onModelValue(item)" style="height:60px;" :style="{'width':'96%'}" |
| | | :disabled="item.disabled"></textarea> |
| | | </view> |
| | | <!-- 复选框 --> |
| | | <checkbox-group class="check_rememberPwd" v-if="item.name=='Checkbox'" |
| | | :class="item.disabled?'input-disabled':''" @change="onModelValue(item)" |
| | | :data-ischeck="item.value" :disabled="item.disabled" |
| | | :style="{'margin-left':'10rpx'}"> |
| | | <label> |
| | | <checkbox :value="item.value" :checked="item.value" /> |
| | | <text>{{item.label}}</text> |
| | | </label> |
| | | </checkbox-group> |
| | | <!-- Switch开关 --> |
| | | <switch v-if="item.name=='Switch'" :class="item.disabled?'input-disabled':''" |
| | | :disabled="item.disabled" v-model="item.value" @change="onModelValue(item)" |
| | | :style="{'margin-left':'10rpx'}" /> |
| | | <!-- 日期时间 --> |
| | | <view class="input-wrapper" |
| | | v-if="(item.name=='TimePicker' || item.name=='DatePicker') && !item.disabled"> |
| | | <picker mode="date" class="date_iput" :class="item.disabled?'input-disabled':''" |
| | | :disabled="item.disabled" :value="item.value" @change="onModelValue(item)"> |
| | | <view class="picker">{{item.value}}</view> |
| | | </picker> |
| | | </view> |
| | | </view> |
| | | <!-- 栅格布局 --> |
| | | <uni-row class="demo-uni-row" v-if="item.name=='Layout'"> |
| | | <uni-col v-for="(cols,key) in item.setting.colList" |
| | | :span="item.setting.spanList?item.setting.spanList[key]:24 / item.setting.col"> |
| | | <view v-if="cols!=null"> |
| | | <text class="txt_title" |
| | | :style="{'width':cols.labelWidth+'px'}">{{cols.label}}:</text> |
| | | <span class="form-item-span" v-if="cols.disabled">{{cols.value}}</span> |
| | | <view class="dv_input" |
| | | v-if="(cols.name=='Input' || cols.name=='InputNumber') && !cols.disabled"> |
| | | <text v-if="cols.setting.prefix" class="uni-icon" |
| | | :class="[cols.setting.prefix]" |
| | | @change="onChange(cols)"></text> |
| | | <input class="uni-input" :class="cols.disabled?'input-disabled':''" |
| | | :type="cols.name=='Input'?'text':cols.name=='InputNumber'?'number':'text'" |
| | | v-model="cols.value" :disabled="cols.disabled" |
| | | :placeholder="cols.placeholder" |
| | | :style="{'width':cols.setting.prefix && cols.setting.suffix?'78%':cols.setting.prefix || cols.setting.suffix?'87%':'96%'}" |
| | | :focus="focusMateria" @focus="ontap(cols)" @blur="onevent(cols)" /> |
| | | <text v-if="cols.setting.suffix" class="uni-icon" |
| | | :class="[cols.setting.suffix]" |
| | | @click="onChange(cols)"></text> |
| | | </view> |
| | | <!-- 下拉框-单选 cols.useDict?cols.dict:cols.selections--> |
| | | <uni-data-select id="dv_select" v-if="cols.name=='Select' && !cols.disabled" |
| | | :class="cols.disabled?'input-disabled':''" v-model="cols.value" |
| | | :localdata="cols.dict" @change="onChange(cols)" |
| | | :disabled="cols.disabled" :clear="false"></uni-data-select> |
| | | <!-- 多行文本 --> |
| | | <view class="input-wrapper" v-if="cols.name=='Textarea' && !cols.disabled"> |
| | | <textarea class="uni-input" :value="cols.value" |
| | | :class="cols.disabled?'input-disabled':''" |
| | | :placeholder="cols.placeholder" @blur="onModelValue(cols)" |
| | | style="height:60px;" :style="{'width':'96%'}" |
| | | :disabled="cols.disabled"></textarea> |
| | | </view> |
| | | <!-- 复选框 --> |
| | | <checkbox-group class="check_rememberPwd" v-if="cols.name=='Checkbox'" |
| | | :class="cols.disabled?'input-disabled':''" :disabled="item.disabled" |
| | | @change="onModelValue(cols)" :data-ischeck="cols.value" |
| | | :style="{'margin-left':'10rpx'}"> |
| | | <label> |
| | | <checkbox :value="cols.value" :checked="cols.value" /> |
| | | <text>{{cols.label}}</text> |
| | | </label> |
| | | </checkbox-group> |
| | | <!-- Switch开关 --> |
| | | <switch v-if="cols.name=='Switch'" |
| | | :class="cols.disabled?'input-disabled':''" :disabled="item.disabled" |
| | | v-model="cols.value" @change="onModelValue(cols)" |
| | | :style="{'margin-left':'10rpx'}" /> |
| | | <!-- 日期时间 --> |
| | | <view class="input-wrapper" |
| | | v-if="(cols.name=='TimePicker' || cols.name=='DatePicker') && !cols.disabled"> |
| | | <picker mode="date" class="date_iput" |
| | | :class="cols.disabled?'input-disabled':''" :disabled="item.disabled" |
| | | :value="cols.value" @change="onModelValue(cols)"> |
| | | <view class="picker">{{cols.value}}</view> |
| | | </picker> |
| | | </view> |
| | | |
| | | </view> |
| | | </uni-col> |
| | | </uni-row> |
| | | <view class="v-scroll-view"> |
| | | <scroll-view :scroll-top="scrollTop" :scroll-y="true" class="scroll-y" @scrolltolower="scrolltolower" |
| | | @scroll="scroll"> |
| | | <view class="view-content" id="tabpanel"> |
| | | <view class="dv-panel dv-panel-bkcolor" v-for="(style,ii) in detail1StyleDefList" :key="ii" |
| | | @click="onPanelClick(ii)" :id="'panel'+style.form.htmlobjId" |
| | | :class="activeItem == style?'bk-active':''"> |
| | | <div class="dv-panel-button" v-if="param.ListPage.CheckBox==true"> |
| | | <checkbox-group> |
| | | <label> |
| | | <checkbox :value="style.SelBut_Checked" :checked="style.SelBut_Checked" /> |
| | | </label> |
| | | </checkbox-group> |
| | | </div> |
| | | </div> |
| | | <div class="dv-panel-button" v-if="param.ListPage.Click_View==true"> |
| | | <a @click="onViewPageClick(style)"><i class="mobox-normal-right-arrow" /></a> |
| | | </div> |
| | | <div class="dv-panel-buticon" v-if="param.ListPage.ListItem_Button"> |
| | | <view class="btn-padding" v-for="(btn,key) in param.ListPage.ListItem_Button"> |
| | | <a @click="onBtnClick(btn,style)" :title="btn.ShowName" v-if="btn.Style=='img'"> |
| | | <i :class="btn.Img" /> |
| | | </a> |
| | | <button type="default" @click="onBtnClick(btn,style)" class="btn-padding" |
| | | v-else-if="btn.Style=='text'">{{btn.ShowName}}</button> |
| | | </view> |
| | | </div> |
| | | <!-- HTML页面类型显示 --> |
| | | <div class="dv-listHtml-Panel" v-if="ListHtml_Panel" v-html="ListHtml_Panel[ii]" :style="param.ListPage.CheckBox==true && param.ListPage.Click_View==true?'width:85%;': |
| | | param.ListPage.CheckBox==false && param.ListPage.Click_View==true?'width:91%;': |
| | | param.ListPage.CheckBox==true && param.ListPage.Click_View==false?'width:88%;':'width:100%;'"> |
| | | |
| | | </div> |
| | | <div class="dv-panel-input" v-if="!ListHtml_Panel" :style="param.ListPage.CheckBox==true && param.ListPage.Click_View==true?'width:85%;': |
| | | param.ListPage.CheckBox==false && param.ListPage.Click_View==true?'width:91%;': |
| | | param.ListPage.CheckBox==true && param.ListPage.Click_View==false?'width:88%;':'width:100%;'"> |
| | | <div v-for="(item,index) in style.form.items"> |
| | | <!-- 普通布局 --> |
| | | <view v-if="item.name!='Layout'"> |
| | | <text class="txt_title" |
| | | :style="{'width':item.labelWidth+'px'}">{{item.label}}:</text> |
| | | <span class="form-item-span" v-if="item.disabled">{{item.value}}</span> |
| | | <!-- 文本框/数字框 --> |
| | | <view class="dv_input" |
| | | v-if="(item.name=='Input' || item.name=='InputNumber') && !item.disabled"> |
| | | <text v-if="item.setting.prefix" class="uni-icon" |
| | | :class="[item.setting.prefix]" @change="onChange(item)"></text> |
| | | <input class="uni-input" :class="item.disabled?'input-disabled':''" |
| | | :type="item.name=='Input'?'text':item.name=='InputNumber'?'number':'text'" |
| | | v-model="item.value" :disabled="item.disabled" |
| | | :placeholder="item.placeholder" |
| | | :style="{'width':item.setting.prefix && item.setting.suffix?'78%':item.setting.prefix || item.setting.suffix?'87%':'96%'}" |
| | | :focus="focusMateria" @focus="ontap(item)" @blur="onevent(item)" /> |
| | | <text v-if="item.setting.suffix" class="uni-icon" |
| | | :class="[item.setting.suffix]" @click="onChange(item)"></text> |
| | | </view> |
| | | <!-- 下拉框-单选 item.useDict?item.dict:item.selections--> |
| | | <uni-data-select id="dv_select" v-if="item.name=='Select' && !item.disabled" |
| | | :class="item.disabled?'input-disabled':''" v-model="item.value" |
| | | :localdata="item.dict" @change="onChange(item)" :disabled="item.disabled" |
| | | :clear="false"></uni-data-select> |
| | | <!-- 多行文本 --> |
| | | <view class="input-wrapper" v-if="item.name=='Textarea' && !item.disabled"> |
| | | <textarea class="uni-input" :value="item.value" |
| | | :class="item.disabled?'input-disabled':''" |
| | | :placeholder="item.placeholder" @blur="onModelValue(item)" |
| | | style="height:60px;" :style="{'width':'96%'}" |
| | | :disabled="item.disabled"></textarea> |
| | | </view> |
| | | <!-- 复选框 --> |
| | | <checkbox-group class="check_rememberPwd" v-if="item.name=='Checkbox'" |
| | | :class="item.disabled?'input-disabled':''" @change="onModelValue(item)" |
| | | :data-ischeck="item.value" :disabled="item.disabled" |
| | | :style="{'margin-left':'10rpx'}"> |
| | | <label> |
| | | <checkbox :value="item.value" :checked="item.value" /> |
| | | <text>{{item.label}}</text> |
| | | </label> |
| | | </checkbox-group> |
| | | <!-- Switch开关 --> |
| | | <switch v-if="item.name=='Switch'" :class="item.disabled?'input-disabled':''" |
| | | :disabled="item.disabled" v-model="item.value" @change="onModelValue(item)" |
| | | :style="{'margin-left':'10rpx'}" /> |
| | | <!-- 日期时间 --> |
| | | <view class="input-wrapper" |
| | | v-if="(item.name=='TimePicker' || item.name=='DatePicker') && !item.disabled"> |
| | | <picker mode="date" class="date_iput" |
| | | :class="item.disabled?'input-disabled':''" :disabled="item.disabled" |
| | | :value="item.value" @change="onModelValue(item)"> |
| | | <view class="picker">{{item.value}}</view> |
| | | </picker> |
| | | </view> |
| | | </view> |
| | | <!-- 栅格布局 --> |
| | | <uni-row class="demo-uni-row" v-if="item.name=='Layout'"> |
| | | <uni-col v-for="(cols,key) in item.setting.colList" |
| | | :span="item.setting.spanList?item.setting.spanList[key]:24 / item.setting.col"> |
| | | <view v-if="cols!=null"> |
| | | <text class="txt_title" |
| | | :style="{'width':cols.labelWidth+'px'}">{{cols.label}}:</text> |
| | | <span class="form-item-span" v-if="cols.disabled">{{cols.value}}</span> |
| | | <view class="dv_input" |
| | | v-if="(cols.name=='Input' || cols.name=='InputNumber') && !cols.disabled"> |
| | | <text v-if="cols.setting.prefix" class="uni-icon" |
| | | :class="[cols.setting.prefix]" |
| | | @change="onChange(cols)"></text> |
| | | <input class="uni-input" :class="cols.disabled?'input-disabled':''" |
| | | :type="cols.name=='Input'?'text':cols.name=='InputNumber'?'number':'text'" |
| | | v-model="cols.value" :disabled="cols.disabled" |
| | | :placeholder="cols.placeholder" |
| | | :style="{'width':cols.setting.prefix && cols.setting.suffix?'78%':cols.setting.prefix || cols.setting.suffix?'87%':'96%'}" |
| | | :focus="focusMateria" @focus="ontap(cols)" |
| | | @blur="onevent(cols)" /> |
| | | <text v-if="cols.setting.suffix" class="uni-icon" |
| | | :class="[cols.setting.suffix]" |
| | | @click="onChange(cols)"></text> |
| | | </view> |
| | | <!-- 下拉框-单选 cols.useDict?cols.dict:cols.selections--> |
| | | <uni-data-select id="dv_select" |
| | | v-if="cols.name=='Select' && !cols.disabled" |
| | | :class="cols.disabled?'input-disabled':''" v-model="cols.value" |
| | | :localdata="cols.dict" @change="onChange(cols)" |
| | | :disabled="cols.disabled" :clear="false"></uni-data-select> |
| | | <!-- 多行文本 --> |
| | | <view class="input-wrapper" |
| | | v-if="cols.name=='Textarea' && !cols.disabled"> |
| | | <textarea class="uni-input" :value="cols.value" |
| | | :class="cols.disabled?'input-disabled':''" |
| | | :placeholder="cols.placeholder" @blur="onModelValue(cols)" |
| | | style="height:60px;" :style="{'width':'96%'}" |
| | | :disabled="cols.disabled"></textarea> |
| | | </view> |
| | | <!-- 复选框 --> |
| | | <checkbox-group class="check_rememberPwd" v-if="cols.name=='Checkbox'" |
| | | :class="cols.disabled?'input-disabled':''" :disabled="item.disabled" |
| | | @change="onModelValue(cols)" :data-ischeck="cols.value" |
| | | :style="{'margin-left':'10rpx'}"> |
| | | <label> |
| | | <checkbox :value="cols.value" :checked="cols.value" /> |
| | | <text>{{cols.label}}</text> |
| | | </label> |
| | | </checkbox-group> |
| | | <!-- Switch开关 --> |
| | | <switch v-if="cols.name=='Switch'" |
| | | :class="cols.disabled?'input-disabled':''" :disabled="item.disabled" |
| | | v-model="cols.value" @change="onModelValue(cols)" |
| | | :style="{'margin-left':'10rpx'}" /> |
| | | <!-- 日期时间 --> |
| | | <view class="input-wrapper" |
| | | v-if="(cols.name=='TimePicker' || cols.name=='DatePicker') && !cols.disabled"> |
| | | <picker mode="date" class="date_iput" |
| | | :class="cols.disabled?'input-disabled':''" |
| | | :disabled="item.disabled" :value="cols.value" |
| | | @change="onModelValue(cols)"> |
| | | <view class="picker">{{cols.value}}</view> |
| | | </picker> |
| | | </view> |
| | | |
| | | </view> |
| | | </uni-col> |
| | | </uni-row> |
| | | </div> |
| | | </div> |
| | | <div class="dv-panel-button" v-if="param.ListPage.Click_View==true"> |
| | | <a @click="onViewPageClick(style)"><i class="mobox-normal-right-arrow" /></a> |
| | | </div> |
| | | <div class="dv-panel-buticon" v-if="param.ListPage.ListItem_Button"> |
| | | <view class="btn-padding" v-for="(btn,key) in param.ListPage.ListItem_Button"> |
| | | <a @click="onBtnClick(btn,style)" :title="btn.ShowName" v-if="btn.Style=='img'"> |
| | | <i :class="btn.Img" /> |
| | | </a> |
| | | <button type="default" @click="onBtnClick(btn,style)" class="btn-padding" |
| | | v-else-if="btn.Style=='text'">{{btn.ShowName}}</button> |
| | | </view> |
| | | </div> |
| | | </view> |
| | | </view> |
| | | </view> |
| | | </scroll-view> |
| | | </scroll-view> |
| | | </view> |
| | | </view> |
| | | |
| | | <view class="view-floor"> |
| | |
| | | }, |
| | | detail1_styledef: {}, |
| | | detail1StyleDefList: [], |
| | | detail2_styledef: {}, |
| | | detail2StyleDefList: [], |
| | | items: [], |
| | | active_id: '', |
| | | activelist: [], |
| | | //activelist: [], |
| | | activeItem: {}, |
| | | where: '', |
| | | wheres: '', |
| | | orderby: '', |
| | |
| | | }; |
| | | this.detail1_styledef = {}; |
| | | this.detail1StyleDefList = []; |
| | | this.detail2_styledef = {}; |
| | | this.detail2StyleDefList = []; |
| | | this.ListHtml_Panel = ""; |
| | | this.ListPageHtml_Show = { |
| | | name: "", |
| | |
| | | }; |
| | | this.items = []; |
| | | this.active_id = ''; |
| | | this.activelist = []; |
| | | this.activeItem = {}; |
| | | //this.activelist = []; |
| | | |
| | | if (this.param.ListPage.ListItem_UIDef?.ui_type == "HTML页面") { |
| | | // HTML页面 |
| | | //获取数据类的HTML页面 |
| | | await this.Html_UIstyleGetInfo(this.param.DataCls.id, this.param.ListPage.ListItem_UIDef.id); |
| | | await this.Html_UIstyleGetInfo(this.param.DataCls.id, this.param.ListPage.ListItem_UIDef.id, options |
| | | .paramValue); |
| | | } else { |
| | | await this.Detail1_UIstyleGetInfo(this.param.DataCls.id, this.param.ListPage.ListItem_UIDef.id); |
| | | |
| | | await this.initial(options.paramValue); |
| | | } |
| | | await this.initial(options.paramValue); |
| | | // this.isFilter=true; |
| | | // if(this.param.ShowFilter) |
| | | // this.isFilter=false; |
| | |
| | | this.pageindex = 1; |
| | | this.page_size = 3; |
| | | this.query_id = ""; |
| | | this.detail1StyleDefList = []; |
| | | await this.loadDataGetList(); |
| | | } |
| | | |
| | |
| | | $this.$data.head_styledef = ret.result.style_def ? JSON.parse(styledef) : {}; |
| | | // this.form = this.head_styledef.form.model; |
| | | // console.log($this.$data.head_styledef); |
| | | $this.head_styledef.form.items.forEach(async (ele, index) => { |
| | | console.log(ele.useDict); |
| | | if (ele.useDict == true) { //判断useDict是否使用字典 |
| | | await this.DictGetInfo(ele.bind.dict, index, 'mast'); |
| | | } |
| | | }); |
| | | if ($this.head_styledef.form?.items) { |
| | | $this.head_styledef.form.items.forEach(async (ele, index) => { |
| | | console.log(ele.useDict); |
| | | if (ele.useDict == true) { //判断useDict是否使用字典 |
| | | await this.DictGetInfo(ele.bind.dict, index, 'mast'); |
| | | } |
| | | }); |
| | | |
| | | } |
| | | |
| | | } else { |
| | | uni.showModal({ |
| | |
| | | }); |
| | | |
| | | }, |
| | | async Html_UIstyleGetInfo(class_id, style_id) { //获取自定义表单样式 |
| | | async Html_UIstyleGetInfo(class_id, style_id, paramValue) { //获取自定义表单样式 |
| | | var $this = this; |
| | | var dataInfo = { |
| | | class_id: class_id, |
| | |
| | | // console.log(styledef); |
| | | $this.ListPageHtml_Show = ret.result.style_def ? JSON.parse(styledef) : {}; |
| | | // console.log($this.ListPageHtml_Show); |
| | | |
| | | $this.initial(paramValue); |
| | | } else { |
| | | uni.showModal({ |
| | | title: this.translateSys("error") + "10", |
| | |
| | | dict_id: dict.id, |
| | | dict_name: dict.name |
| | | }; |
| | | // console.log(dataInfo); |
| | | this.$store.dispatch('DictGetInfo', dataInfo).then(async (success) => { |
| | | console.log(success); |
| | | if (success.err_code == 0) { |
| | | if (type == 'mast') { |
| | | var list = []; |
| | | var itemName = ''; |
| | | success.result.dict_item_list.forEach((item) => { |
| | | if (item.is_default == '1') |
| | | itemName = item.name; |
| | | list.push({ |
| | | text: item.value, |
| | | value: item.name, |
| | | }); |
| | | try { |
| | | const success = await this.getDictInfo(dataInfo) |
| | | if (type == 'mast') { |
| | | var list = []; |
| | | var itemName = ''; |
| | | success.result.dict_item_list.forEach((item) => { |
| | | if (item.is_default == '1') |
| | | itemName = item.name; |
| | | list.push({ |
| | | text: item.value, |
| | | value: item.name, |
| | | }); |
| | | //有默认值,显示默认值 |
| | | if (itemName) { |
| | | $this.head_styledef.form.items[index].value = itemName; |
| | | var attr = $this.head_styledef.form.items[index].fieldId; |
| | | $this.head_styledef.form.model[attr] = itemName; |
| | | } |
| | | $this.head_styledef.form.items[index].dict = list; |
| | | var head_styledef = JSON.parse(JSON.stringify($this.head_styledef)); |
| | | $this.head_styledef = []; |
| | | $this.head_styledef = head_styledef; |
| | | } else { |
| | | // $this.$data.subClassAttrList[index].attr_list[key].dictitem=success.result; |
| | | // this.$store.commit("subClassAttrList", $this.$data.subClassAttrList); |
| | | } |
| | | |
| | | } else { |
| | | uni.showModal({ |
| | | title: this.translateSys("error") + "3.1", |
| | | content: success.err_msg, |
| | | showCancel: false, |
| | | confirmText: this.translateSys("cancel") |
| | | }); |
| | | //有默认值,显示默认值 |
| | | if (itemName) { |
| | | $this.head_styledef.form.items[index].value = itemName; |
| | | var attr = $this.head_styledef.form.items[index].fieldId; |
| | | $this.head_styledef.form.model[attr] = itemName; |
| | | } |
| | | $this.head_styledef.form.items[index].dict = list; |
| | | var head_styledef = JSON.parse(JSON.stringify($this.head_styledef)); |
| | | $this.head_styledef = []; |
| | | $this.head_styledef = head_styledef; |
| | | } else { |
| | | // $this.$data.subClassAttrList[index].attr_list[key].dictitem=success.result; |
| | | // this.$store.commit("subClassAttrList", $this.$data.subClassAttrList); |
| | | } |
| | | }).catch(ex => { |
| | | } catch (ex) { |
| | | // console.log(ex); |
| | | uni.showModal({ |
| | | title: this.translateSys("error") + "3", |
| | |
| | | showCancel: false, |
| | | confirmText: this.translateSys("cancel") |
| | | }); |
| | | }); |
| | | } |
| | | }, |
| | | getDictInfo(info) { //Mobox3得到得到字典信息字典项列表 |
| | | const loginInfo = this.$store.getters.loginid |
| | | const mobxoSApi = this.$store.getters.getMobxoSApi |
| | | return new Promise((resolve, reject) => { |
| | | uni.request({ |
| | | url: mobxoSApi + 'api/dict/GetInfo2?sessionid=' + loginInfo.result.session_id, |
| | | data: info, |
| | | method: 'POST', |
| | | dataType: "json", |
| | | success: (_res) => { |
| | | // console.log(_res); |
| | | var ret = _res.data |
| | | if (typeof ret == 'string') { |
| | | try { |
| | | try { |
| | | try { |
| | | ret = JSON.parse(ret.replace(/\\"/g, '"')); |
| | | } catch (ex) { |
| | | ret = JSON.parse(ret.replace(/\\/g, '\\\\')) |
| | | } |
| | | } catch (ex) { |
| | | ret = JSON.parse(ret.replace(/\\"/g, "'").replace(/[\r\n]/g, |
| | | '<br>').replace(/[\t]/g, ' ')); |
| | | } |
| | | } catch (ex) { |
| | | console.log(ret) |
| | | return reject('将getDictInfo【json string】转换为【json object】失败') |
| | | } |
| | | } |
| | | if (ret.err_code == 0) { |
| | | resolve(ret); |
| | | } else { |
| | | reject({ |
| | | "errMsg": ret.err_msg |
| | | }); |
| | | } |
| | | |
| | | if (ret.err_code == 0) { |
| | | resolve(ret); |
| | | } else { |
| | | reject({ |
| | | "errMsg": ret.err_msg |
| | | }); |
| | | } |
| | | }, |
| | | fail: (err) => { |
| | | // console.log(err); |
| | | reject(err); |
| | | } |
| | | }) |
| | | |
| | | }) |
| | | |
| | | }, |
| | | getUIStyleInfo(info) { //Mobox3数据类界面样式 |
| | | const loginInfo = this.$store.getters.loginid |
| | | const dataSApi = this.$store.getters.getDataSApi |
| | | return new Promise((resolve, reject) => { |
| | | uni.request({ |
| | | url: dataSApi + 'api/class/uistyle/GetInfo?sessionid=' + loginInfo.result |
| | | .session_id, |
| | | data: info, |
| | | method: 'POST', |
| | | dataType: "json", |
| | | success: (_res) => { |
| | | // console.log(_res); |
| | | var ret = _res.data |
| | | if (typeof ret == 'string') { |
| | | try { |
| | | try { |
| | | try { |
| | | ret = JSON.parse(ret.replace(/\\"/g, '"')); |
| | | } catch (ex) { |
| | | ret = JSON.parse(ret.replace(/\\/g, '\\\\')) |
| | | } |
| | | } catch (ex) { |
| | | ret = JSON.parse(ret.replace(/\\"/g, "'").replace(/[\r\n]/g, |
| | | '<br>').replace(/[\t]/g, ' ')); |
| | | } |
| | | } catch (ex) { |
| | | console.log(ret) |
| | | return reject('将getUIStyleInfo【json string】转换为【json object】失败') |
| | | } |
| | | } |
| | | if (ret.err_code == 0) { |
| | | resolve(ret); |
| | | } else { |
| | | reject({ |
| | | "errMsg": ret.err_msg || ret.errMsg |
| | | }); |
| | | } |
| | | }, |
| | | fail: (err) => { |
| | | // console.log(err); |
| | | reject(err); |
| | | } |
| | | }) |
| | | |
| | | }) |
| | | |
| | | }, |
| | | |
| | | // 执行查询事件 |
| | |
| | | |
| | | }); |
| | | } else { |
| | | // this.detail2StyleDefList=[]; |
| | | if (result.info) { |
| | | uni.showModal({ |
| | | title: this.translateSys("tip"), |
| | |
| | | if (ret.result.page_count > 1) $this.query_id = ret.result.query_id; |
| | | // console.log($this.ListPageHtml_Show.event); |
| | | if ($this.ListPageHtml_Show.event.id) { |
| | | const detail1StyleDefList = $this.detail1StyleDefList |
| | | ret.result.obj_list.forEach((obj) => { |
| | | var info = { |
| | | id: obj.id, |
| | |
| | | .replace('{', '').replace('}', '') : 'null'; |
| | | detailStyle.form.objId = obj.id; |
| | | detailStyle.form.attrs = obj.attr_list; |
| | | $this.detail1StyleDefList.push(detailStyle); |
| | | $this.activelist.push({ |
| | | active: false |
| | | }); |
| | | detail1StyleDefList.push(detailStyle); |
| | | // $this.activelist.push({ |
| | | // active: false |
| | | // }); |
| | | }); |
| | | // console.log(this.detail1StyleDefList); |
| | | |
| | | $this.setData({ |
| | | detail1StyleDefList: detail1StyleDefList |
| | | }) |
| | | |
| | | var jsonlist = []; |
| | | $this.detail1StyleDefList.forEach(attr => { |
| | | jsonlist.push({ |
| | |
| | | }); |
| | | } else { |
| | | // $this.detail1StyleDefList=[]; |
| | | const detail1StyleDefList = [] |
| | | ret.result.obj_list.forEach((obj) => { |
| | | var styleStr = JSON.stringify($this.detail1_styledef); |
| | | var detailStyle = JSON.parse(styleStr); |
| | |
| | | .replace('{', '').replace('}', '') : 'null'; |
| | | detailStyle.form.objId = obj.id; |
| | | detailStyle.form.attrs = obj.attr_list; |
| | | $this.detail1StyleDefList.push(detailStyle); |
| | | $this.activelist.push({ |
| | | active: false |
| | | }); |
| | | detail1StyleDefList.push(detailStyle); |
| | | // $this.activelist.push({ |
| | | // active: false |
| | | // }); |
| | | //list.push(info); |
| | | }); |
| | | $this.setData({ |
| | | detail1StyleDefList: detail1StyleDefList |
| | | }) |
| | | } |
| | | |
| | | // 解决view层不同步的问题 |
| | |
| | | if (btn.FunCode == "Add" || btn.FunCode == "Modify") { |
| | | if (btn.Edit_dlg.Model == "small") { |
| | | this.showAddSmallDialog(btn, style, enviroment); |
| | | } else { |
| | | uni.showModal({ |
| | | title: this.translateSys("tip"), |
| | | content: this.translateSys("unrealized"), |
| | | showCancel: false, |
| | | confirmText: this.translateSys("cancel") |
| | | }); |
| | | } |
| | | } else if (btn.FunCode == "Delete") { |
| | | this.DeleteObj(btn, style, enviroment); |
| | |
| | | |
| | | if (!this.ListPageHtml_Show.event.id) { |
| | | //判断没有HTML页面事件 |
| | | // console.log(this.detail2_styledef); |
| | | this.detail2_styledef.form.items.forEach(async (ele, index) => { |
| | | this.head_styledef.form.items.forEach(async (ele, index) => { |
| | | if (ele.name != "Layout") { |
| | | if (!obj_attr[ele.fieldId]) { |
| | | obj_attr[ele.fieldId] = ele.value; |
| | |
| | | }, |
| | | //跳转 |
| | | async RelatedFunction(btn, style, enviroment) { |
| | | |
| | | const defCode = btn.Related_Function?.Def_Code |
| | | var $this = this; |
| | | if ( |
| | | btn.Related_Function?.Def_Code == "3018" || |
| | | btn.Related_Function?.Def_Code == "3037" || |
| | | btn.Related_Function?.Def_Code == "3200" || |
| | | btn.Related_Function?.Def_Code == "3201" || |
| | | btn.Related_Function?.Def_Code == "5600" || |
| | | btn.Related_Function?.Def_Code == "5601" || |
| | | btn.Related_Function?.Def_Code == "5602" |
| | | defCode == "3018" || |
| | | defCode == "3037" || |
| | | defCode == "3200" || |
| | | defCode == "3201" || |
| | | defCode == "5600" || |
| | | defCode == "5601" || |
| | | defCode == "5602" |
| | | ) { |
| | | let name = btn.Related_Function?.Def_Code |
| | | if (btn.Related_Function?.Def_Code == "3018" || btn.Related_Function?.Def_Code == "3037") |
| | | name = btn.Related_Function?.Def_Code + "_2" |
| | | |
| | | var $this = this; |
| | | let name = defCode |
| | | if (defCode == "3018" || defCode == "3037") |
| | | name = defCode + "_2" |
| | | var json = { |
| | | app_id: appId, |
| | | app_id: [btn.Related_Function.ID], |
| | | }; |
| | | console.log("RelatedFunction2", json); |
| | | this.$store.dispatch('appGetInfo', json).then(success => { |
| | | // console.log(success); |
| | | console.log(success); |
| | | if (success.err_code == 0) { |
| | | if ((success.result || []).length > 0) { |
| | | const app = success.result[0] |
| | | var param = ""; |
| | | var appName = app.name || app.list_name |
| | | var appName = app.list_name || app.name |
| | | .Name; |
| | | var paramStr = app.param |
| | | if (paramStr) { |
| | |
| | | }); |
| | | } |
| | | }).catch(ex => { |
| | | // console.log(ex); |
| | | console.log(ex); |
| | | uni.showModal({ |
| | | title: this.translateSys("error"), |
| | | content: ex.errMsg, |
| | |
| | | } |
| | | }); |
| | | } else { |
| | | // this.detail2StyleDefList=[]; |
| | | if (result.info) { |
| | | uni.showModal({ |
| | | title: this.translateSys("tip"), |
| | |
| | | //点中表单 |
| | | onPanelClick(value) { //点击面板高亮显示 |
| | | // console.log(value); |
| | | this.activelist.forEach(ele => { |
| | | ele.active = false; |
| | | }); |
| | | this.activelist[value].active = true; |
| | | this.setData({ |
| | | activeItem: this.detail1StyleDefList[value] |
| | | }) |
| | | // this.activelist.forEach(ele => { |
| | | // ele.active = false; |
| | | // }); |
| | | // this.activelist[value].active = true; |
| | | }, |
| | | |
| | | //事件处理 |
| | |
| | | } |
| | | }); |
| | | } else { |
| | | // this.detail2StyleDefList=[]; |
| | | if (result.info) { |
| | | uni.showModal({ |
| | | title: this.translateSys("tip"), |
| | |
| | | }, |
| | | }; |
| | | </script> |
| | | <style lang="scss"> |
| | | <style lang="less"> |
| | | .uni-page-modal-3200 { |
| | | display: flex; |
| | | flex-direction: column; |
| | | height: calc(100vh - 30rpx); |
| | | padding: 15rpx 0; |
| | | |
| | | .v-headStyle:first-child { |
| | | margin-top: 15rpx; |
| | | } |
| | |
| | | } |
| | | |
| | | .v-content { |
| | | height: 945rpx; |
| | | overflow: hide; |
| | | flex: 1; |
| | | display: flex; |
| | | width: 100%; |
| | | flex-direction: column; |
| | | min-height: 100px; |
| | | overflow: hidden; |
| | | /* border:0.1px solid red; */ |
| | | } |
| | | |
| | | .view-content { |
| | | width: 100%; |
| | | display: flex; |
| | | margin-top: 10rpx; |
| | | flex-direction: column; |
| | | |
| | | } |
| | | |
| | | .dv-panel-bkcolor { |
| | |
| | | } |
| | | |
| | | .view-floor { |
| | | padding: 0 20rpx; |
| | | width: calc(100% - 20rpx); |
| | | padding: 10rpx; |
| | | /* border:1px solid red; */ |
| | | } |
| | | |
| | |
| | | border-radius: 10rpx; |
| | | } |
| | | |
| | | .scroll-Y { |
| | | .v-scroll-view { |
| | | flex: 1; |
| | | overflow: hidden; |
| | | width: 98%; |
| | | } |
| | | |
| | | .scroll-y { |
| | | width: 100%; |
| | | height: 100%; |
| | | } |
| | | |