| | |
| | | <uni-forms ref="baseForm" label-align="right"> |
| | | <view class="v-headStyle" v-for="(item,index) in head_styledef.form.items"> |
| | | <!-- 普通布局 --> |
| | | <uni-forms-item v-if="item.name != 'Layout'&& item.show==true" :label="item.label +':' " |
| | | <uni-forms-item v-if="item.name != 'Layout'&& item.show==true" :label="item.label ? item.label +':':'' " |
| | | :label-width="item.labelWidth+'px'"> |
| | | <!-- <text class="txt_title" :style="{'width':item.labelWidth+'px'}">{{item.label}}:</text> --> |
| | | <!-- 下拉框-单选 item.useDict?item.dict:item.selections--> |
| | |
| | | :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=='Input' || item.name=='InputNumber')"> |
| | | <view class="input-wrapper" v-if="(item.name=='Input' || item.name=='InputNumber')"> |
| | | <text v-if="item.setting.prefix" class="uni-icon" :class="[item.setting.prefix]" |
| | | @change="classAttr_extButton(item)"></text> |
| | | <input class="uni-input" :class="item.disabled?'input-disabled':''" |
| | |
| | | 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="focusFieldId == item.fieldId" @focus="ontap(item)" @click="onClick(item)" |
| | | @blur="onevent(item)" /> |
| | | @blur="onevent(item)" :maxlength="-1" /> |
| | | <text v-if="item.setting.suffix" class="uni-icon" :class="[item.setting.suffix]" |
| | | @click="classAttr_extButton(item)"></text> |
| | | </view> |
| | |
| | | </view> |
| | | <!-- 复选框 --> |
| | | <checkbox-group class="check_rememberPwd" v-if="item.name=='Checkbox'" |
| | | :class="item.disabled?'input-disabled':''" @change="onModelValue(item)" |
| | | :disabled="item.disabled" :data-ischeck="item.value"> |
| | | <label> |
| | | <checkbox :value="item.value" :checked="item.value" /> |
| | | <text>{{item.label}}</text> |
| | | :class="item.disabled?'input-disabled':''" :disabled="item.disabled" |
| | | @change="onCheckBoxValue" :data-attr="item.fieldId"> |
| | | <label v-for="(item2) in item.selections" :key="item2.value"> |
| | | <checkbox :value="item2.value" :checked="item.value.includes(item2.value)" /> |
| | | <text>{{item2.label}}</text> |
| | | </label> |
| | | </checkbox-group> |
| | | <!-- 单选框 --> |
| | | <radio-group class="check_rememberPwd" v-if="item.name=='Radio'" |
| | | :class="item.disabled?'input-disabled':''" :disabled="item.disabled" |
| | | @change="onModelValue(item)"> |
| | | @change="onRadioBoxValue" :data-attr="item.fieldId"> |
| | | <label v-for="(item2) in item.selections" :key="item2.value"> |
| | | <radio :value="item2.value" :checked="item2.value === item.value" /> |
| | | <text>{{item2.label}}</text> |
| | |
| | | :class="item.disabled?'input-disabled':''" :disabled="item.disabled" v-model="item.value" |
| | | @change="onModelValue(item)" /> |
| | | <!-- 日期时间 --> |
| | | <view class="input-wrapper" |
| | | v-if="(item.name=='TimePicker' || item.name=='DatePicker')"> |
| | | <view class="input-wrapper" v-if="(item.name=='TimePicker' || item.name=='DatePicker')"> |
| | | <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> |
| | |
| | | <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"> |
| | | <uni-forms-item v-if="cols!=null && cols.show==true" :label="cols.label +':'" |
| | | <uni-forms-item v-if="cols!=null && cols.show==true" :label="cols.label? cols.label +':':''" |
| | | :label-width="cols.labelWidth+'px'"> |
| | | <view class="input-wrapper" |
| | | v-if="(cols.name=='Input' || cols.name=='InputNumber') "> |
| | | <view class="input-wrapper" v-if="(cols.name=='Input' || cols.name=='InputNumber') "> |
| | | <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':''" |
| | |
| | | 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="focusFieldId == cols.fieldId" @focus="ontap(cols)" |
| | | @click="onClick(cols)" @blur="onevent(cols)" /> |
| | | @click="onClick(cols)" @blur="onevent(cols)" :maxlength="-1" /> |
| | | <text v-if="cols.setting.suffix" class="uni-icon" :class="[cols.setting.suffix]" |
| | | @click="onchange(cols)"></text> |
| | | </view> |
| | |
| | | <!-- 复选框 --> |
| | | <checkbox-group class="check_rememberPwd" v-if="cols.name=='Checkbox'" |
| | | :class="cols.disabled?'input-disabled':''" :disabled="cols.disabled" |
| | | @change="onModelValue(cols)" :data-ischeck="cols.value" |
| | | :style="{'margin-left':'10rpx'}"> |
| | | <label> |
| | | <checkbox :value="cols.value" :checked="cols.value" /> |
| | | <text>{{cols.label}}</text> |
| | | @change="onCheckBoxValue" :data-attr="cols.fieldId"> |
| | | <label v-for="(cols2) in cols.selections" :key="cols2.value"> |
| | | <checkbox :value="cols2.value" :checked="cols.value.includes(cols2.value)" /> |
| | | <text>{{cols2.label}}</text> |
| | | </label> |
| | | </checkbox-group> |
| | | <!-- 单选框 --> |
| | | <radio-group class="check_rememberPwd" v-if="cols.name=='Radio'" |
| | | :class="cols.disabled?'input-disabled':''" :disabled="cols.disabled" |
| | | @change="onModelValue(cols)"> |
| | | @change="onRadioBoxValue" :data-attr="cols.fieldId"> |
| | | <label v-for="(cols2) in cols.selections" :key="cols2.value"> |
| | | <radio :value="cols2.value" :checked="cols2.value === cols.value" /> |
| | | <text>{{cols2.label}}</text> |
| | |
| | | </view> |
| | | <button type="default" @tap="sava" class="btn_add" v-if="dropdownBtns.length==0 && btnName != ''" |
| | | :class="saving?'btn_disabled':''" :disabled="saving">{{btnName}}</button> |
| | | <button type="default" @tap="cancel" :class="(dropdownBtns.length> 0 || btnName != '')?'btn_cancel':'btn_cancel2'">{{translateSys('cancel')}}</button> |
| | | <button type="default" @tap="cancel" |
| | | :class="(dropdownBtns.length> 0 || btnName != '')?'btn_cancel':'btn_cancel2'">{{translateSys('cancel')}}</button> |
| | | |
| | | </view> |
| | | <!-- 普通弹窗 top bottom center left right --> |
| | |
| | | $this.onScanValue(ele, res.result) |
| | | break; |
| | | } |
| | | } else if (ele.name == "Layot") { |
| | | } else if (ele.name == "Layout") { |
| | | let curIndex = (ele.setting.colList || []).findIndex((col, index2, |
| | | arr) => { |
| | | return (col.name == 'Input' || col.name == 'InputNumber' || col |
| | |
| | | await $this.DictGetInfo(ele.bind.dict, |
| | | styledefHead.form.model, |
| | | ele); |
| | | } else { |
| | | if (ele?.name === "Select") { |
| | | const selections = ele?.selections || [] |
| | | //有默认值,显示默认值 |
| | | let itemName = ele.value || ""; |
| | | if (itemName) { |
| | | styledefHead.form |
| | | .model[ele.fieldId] = itemName; |
| | | } |
| | | ele.dict = selections.map((a) => { |
| | | return { |
| | | value: a.value, |
| | | text: a.label |
| | | } |
| | | }) |
| | | |
| | | } |
| | | |
| | | } |
| | | if ($this.focusFieldId == "") { |
| | | if (ele.name == 'Input' || ele.name == |
| | |
| | | .dict, |
| | | styledefHead.form |
| | | .model, col); |
| | | } else { |
| | | if (col?.name === "Select") { |
| | | const selections = col?.selections || [] |
| | | //有默认值,显示默认值 |
| | | let itemName = col.value || ""; |
| | | if (itemName) { |
| | | styledefHead.form |
| | | .model[col.fieldId] = itemName; |
| | | } |
| | | col.dict = selections.map((a) => { |
| | | return { |
| | | value: a.value, |
| | | text: a.label |
| | | } |
| | | }) |
| | | |
| | | |
| | | } |
| | | |
| | | } |
| | | if ($this.focusFieldId == "") { |
| | | if (col.name == 'Input' || col |
| | |
| | | var itemName = ''; |
| | | (res.dict_item_list || []).forEach((item) => { |
| | | if (item.is_default == '1') |
| | | itemName = item.name; |
| | | itemName = item.name |
| | | list.push({ |
| | | text: item.name, |
| | | value: item.id, |
| | | text: item.value ? item.value : item.name, |
| | | value: item.name, |
| | | }); |
| | | }); |
| | | //有默认值,显示默认值 |
| | |
| | | formItem.dict = list; |
| | | } catch (ex) { |
| | | // console.log(ex); |
| | | let exStr = JSON.stringify(ex) |
| | | if (exStr == "{}") |
| | | exStr = ex |
| | | let tip = typeof ex.errMsg == "string" ? ex.errMsg : exStr |
| | | |
| | | uni.showModal({ |
| | | title: this.translateSys("error") + "1.3", |
| | | content: ex.errMsg, |
| | | content: tip, |
| | | showCancel: false, |
| | | confirmText: this.translateSys("cancel") |
| | | }); |
| | | |
| | | |
| | | } |
| | | }, |
| | | |
| | |
| | | var action = actionlist[i]; |
| | | if (action.action_type == 'set_dlg_attr') { |
| | | var result = action.value; |
| | | for (var i = 0; i < result.length; i++) { |
| | | if (result[i].choice_list) { |
| | | for (var c = 0; c < $this.head_styledef.form.items |
| | | .length; c++) { |
| | | var attr = $this.head_styledef.form.items[c]; |
| | | if (attr.name != 'Layout') { |
| | | if (attr.fieldId == result[i].attr) { |
| | | var dictItemList = []; |
| | | for (var d in result[i].choice_list) { |
| | | var val = result[i].choice_list[d]; |
| | | dictItemList.push({ |
| | | "CN_S_NAME": val, |
| | | "CN_S_VALUE": val, |
| | | "text": val, |
| | | "value": val |
| | | }); |
| | | } |
| | | attr.dict = dictItemList; |
| | | } |
| | | } else if (attr.name == 'Layout') { |
| | | attr.setting.colList.forEach(col => { |
| | | if (col) { |
| | | if (col.fieldId == result[ |
| | | i] |
| | | .attr) { |
| | | var dictItemList = []; |
| | | for (var d in result[i] |
| | | .choice_list) { |
| | | var val = result[i] |
| | | .choice_list[ |
| | | d]; |
| | | dictItemList.push({ |
| | | "CN_S_NAME": val, |
| | | "CN_S_VALUE": val, |
| | | "text": val, |
| | | "value": val |
| | | }); |
| | | } |
| | | col.dict = |
| | | dictItemList; |
| | | } |
| | | } |
| | | }); |
| | | } |
| | | |
| | | } |
| | | } |
| | | for (var c = 0; c < $this.$data.head_styledef.form |
| | | .items |
| | | .length; c++) { |
| | | var attr = $this.$data.head_styledef.form.items[c]; |
| | | // console.log(attr[j].Name+'=='+result[i].attr); |
| | | //判断表单里是否有返回字段,没有就装载到model里,点击确定提交的时候带上这些数据 |
| | | if ($this.head_styledef.form.model[result[i] |
| | | .attr] == |
| | | undefined) { |
| | | $this.head_styledef.form.model[result[i] |
| | | .attr] = |
| | | result[i] |
| | | .value; |
| | | } |
| | | //判断是否是栅格表单 |
| | | if (attr.name != 'Layout') { |
| | | if (attr.fieldId == result[i].attr) { |
| | | attr.value = ''; |
| | | attr.oldvalue = ''; |
| | | attr.value = result[i].value; |
| | | attr.oldvalue = result[i].value; |
| | | $this.head_styledef.form.model[attr |
| | | .fieldId] = |
| | | result[ |
| | | i].value; |
| | | } |
| | | } else if (attr.name == 'Layout') { |
| | | attr.setting.colList.forEach(col => { |
| | | if (col) { |
| | | if (col.fieldId == result[i] |
| | | .attr) { |
| | | col.value = ''; |
| | | col.oldvalue = ''; |
| | | col.value = result[i] |
| | | .value; |
| | | col.oldvalue = result[i] |
| | | .value; |
| | | $this.head_styledef.form |
| | | .model[ |
| | | col |
| | | .fieldId] = result[ |
| | | i] |
| | | .value; |
| | | } |
| | | } |
| | | }); |
| | | } |
| | | } |
| | | var length = 0; |
| | | if (!$this.$data.refdatastore.filter(function(s) { |
| | | return result[i].attr == s.attr |
| | | }).length) { |
| | | length = 1; |
| | | $this.$data.refdatastore.push(result[i]); |
| | | } |
| | | if (length == 0) { |
| | | for (var j = 0; j < $this.$data.refdatastore |
| | | .length; j++) { |
| | | if ($this.$data.refdatastore[j].attr == result[ |
| | | i] |
| | | .attr) { |
| | | $this.$data.refdatastore[j].value = result[ |
| | | i] |
| | | .value; |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } else if (data.action[i].action_type == 'set_dlg_attr_show') { |
| | | $this.setFormValues(result) |
| | | } else if (action.action_type == 'set_dlg_attr_show') { |
| | | var result = action.value; |
| | | result.forEach(async (attr, key) => { |
| | | $this.$data.head_styledef.form.items |
| | | .forEach( |
| | | async ( |
| | | ele, index) => { |
| | | //判断是否是栅格表单 |
| | | if (ele.name != 'Layout') { |
| | | if (ele.fieldId == attr |
| | | .attr) { |
| | | ele.show = attr |
| | | .show; |
| | | } |
| | | } else if (ele.name == |
| | | 'Layout') { |
| | | ele.setting.colList |
| | | .forEach( |
| | | col => { |
| | | if (col) { |
| | | if (col |
| | | .fieldId == |
| | | attr |
| | | .attr |
| | | ) { |
| | | col.show = |
| | | attr |
| | | .show; |
| | | } |
| | | } |
| | | }); |
| | | } |
| | | }); |
| | | }); |
| | | var head_styledef = JSON.parse(JSON.stringify($this.$data |
| | | .head_styledef)); |
| | | $this.$data.head_styledef = []; |
| | | $this.$data.head_styledef = head_styledef; |
| | | $this.hideFormItems(result) |
| | | // console.log($this.$data.head_styledef); |
| | | } else if (action.action_type == |
| | | "set_dlg_current_edit_attr" |
| | | ) { |
| | | if ($this |
| | | .focusOldFieldId == |
| | | action.value) { |
| | | $this.setData({ |
| | | focusFieldId: "" |
| | | }) |
| | | } else { |
| | | $this.setData({ |
| | | focusFieldId: $this |
| | | .focusOldFieldId |
| | | }) |
| | | } |
| | | $this.$nextTick(() => { |
| | | $this.setData({ |
| | | focusFieldId: action |
| | | .value |
| | | }) |
| | | }); |
| | | } else { |
| | | uni.showModal({ |
| | | title: this.translateSys("tip"), |
| | |
| | | } |
| | | this.DataObjRunCustomEvent(info, ''); |
| | | } |
| | | if (item.value) { //第一个输入框不为空 |
| | | //初始化,下个输入框focus属性 |
| | | var findd = false |
| | | for (let i in $this.head_styledef.form.items) { |
| | | const ele = $this.head_styledef.form.items[i] |
| | | |
| | | if (ele.name != "Layout") { |
| | | if (ele.name == 'Input' || ele.name == 'InputNumber') { |
| | | if (attr == ele.fieldId) { |
| | | findd = true |
| | | } else { |
| | | if (findd) { |
| | | $this.setData({ |
| | | focusFieldId: ele.fieldId |
| | | }) |
| | | break |
| | | } |
| | | |
| | | } |
| | | |
| | | } |
| | | } else { |
| | | if (findd) { |
| | | let curIndex = ele.setting.colList.findIndex((col, index2, arr) => { |
| | | return (col.name == 'Input' || col.name == 'InputNumber'); |
| | | }) |
| | | if (curIndex > -1) { |
| | | $this.setData({ |
| | | focusFieldId: ele.setting.colList[curIndex] |
| | | .fieldId |
| | | }) |
| | | break |
| | | } |
| | | |
| | | } else { |
| | | let curIndex = ele.setting.colList.findIndex((col, index2, arr) => { |
| | | return attr == col.fieldId; |
| | | }) |
| | | if (curIndex > -1) { |
| | | findd = true |
| | | let curIndex2 = ele.setting.colList.findIndex((col, index2, arr) => { |
| | | return (col.name == 'Input' || col.name == |
| | | 'InputNumber') && |
| | | index2 > |
| | | curIndex; |
| | | }) |
| | | if (curIndex2 > -1) { |
| | | $this.setData({ |
| | | focusFieldId: ele.setting.colList[curIndex] |
| | | .fieldId |
| | | }) |
| | | break |
| | | } |
| | | } |
| | | } |
| | | |
| | | } |
| | | } |
| | | } |
| | | |
| | | } |
| | | }, |
| | | onClick(item) { |
| | |
| | | |
| | | }, |
| | | onchange(item) { |
| | | // console.log("onchange",item); |
| | | console.log("onchange", item); |
| | | if (item.oldvalue != item.value && item.value.trim() != "") { |
| | | item.oldvalue = item.value; |
| | | var attr = item.fieldId; |
| | |
| | | onModelValue(item) { //绑定Model值 |
| | | var attr = item.fieldId; |
| | | this.head_styledef.form.model[attr] = item.value; |
| | | console.log(item.value) |
| | | }, |
| | | onCheckBoxValue(e) { //绑定Model值 |
| | | let values = e.detail.value || [] |
| | | let attr = e.currentTarget?.dataset?.attr || "" |
| | | this.head_styledef.form.model[attr] = values; |
| | | }, |
| | | onRadioBoxValue(e) { //绑定Model值 |
| | | let value = e.detail.value || "" |
| | | let attr = e.currentTarget?.dataset?.attr || "" |
| | | this.head_styledef.form.model[attr] = value; |
| | | }, |
| | | classAttr_extButton(item) { |
| | | var onSuffixClickCallbackEvent = item.bind.onSuffixClickCallbackEvent; //后图标点击事件 |
| | |
| | | if (data.length == 0) { |
| | | uni.showModal({ |
| | | title: this.translateSys("tip"), |
| | | content:this.translate("tip_no_select_data"), |
| | | content: this.translate("tip_no_select_data"), |
| | | showCancel: false, |
| | | confirmText: this.translateSys("cancel") |
| | | }); |
| | | return; |
| | | } |
| | | // var fieldId = $this.$data.popupParam.item.fieldId; |
| | | // $this.head_styledef.form.model[fieldId] = name; |
| | | // console.log(fieldId,$this.$data.popupParam.item); |
| | | // for (var c = 0; c < $this.$data.head_styledef.form.items.length; c++) { |
| | | // var attr = $this.$data.head_styledef.form.items[c]; |
| | | // if (attr.fieldId == fieldId) { |
| | | // attr.value = name; |
| | | // } |
| | | // } |
| | | // console.log(data); |
| | | // console.log($this.head_styledef.form); |
| | | var callback_eventid = $this.$data.popupParam.button_callback.trim(); |
| | | var info = { |
| | | eventid: callback_eventid, |
| | |
| | | var action = actionlist[i]; |
| | | if (action.action_type == 'set_dlg_attr') { |
| | | var result = action.value; |
| | | for (var i = 0; i < result.length; i++) { |
| | | if (result[i].choice_list) { |
| | | for (var c = 0; c < $this.head_styledef.form.items |
| | | .length; c++) { |
| | | var attr = $this.head_styledef.form.items[c]; |
| | | if (attr.name != 'Layout') { |
| | | if (attr.fieldId == result[i].attr) { |
| | | var dictItemList = []; |
| | | for (var d in result[i].choice_list) { |
| | | var val = result[i].choice_list[d]; |
| | | dictItemList.push({ |
| | | "CN_S_NAME": val, |
| | | "CN_S_VALUE": val, |
| | | "text": val, |
| | | "value": val |
| | | }); |
| | | } |
| | | attr.dict = dictItemList; |
| | | } |
| | | } else if (attr.name == 'Layout') { |
| | | attr.setting.colList.forEach(col => { |
| | | if (col) { |
| | | if (col.fieldId == result[ |
| | | i] |
| | | .attr) { |
| | | var dictItemList = []; |
| | | for (var d in result[i] |
| | | .choice_list) { |
| | | var val = result[i] |
| | | .choice_list[ |
| | | d]; |
| | | dictItemList.push({ |
| | | "CN_S_NAME": val, |
| | | "CN_S_VALUE": val, |
| | | "text": val, |
| | | "value": val |
| | | }); |
| | | } |
| | | col.dict = |
| | | dictItemList; |
| | | } |
| | | } |
| | | }); |
| | | } |
| | | |
| | | } |
| | | } |
| | | for (var c = 0; c < $this.$data.head_styledef.form |
| | | .items |
| | | .length; c++) { |
| | | var attr = $this.$data.head_styledef.form.items[c]; |
| | | // console.log(attr[j].Name+'=='+result[i].attr); |
| | | //判断表单里是否有返回字段,没有就装载到model里,点击确定提交的时候带上这些数据 |
| | | if ($this.head_styledef.form.model[result[i] |
| | | .attr] == |
| | | undefined) { |
| | | $this.head_styledef.form.model[result[i] |
| | | .attr] = |
| | | result[i] |
| | | .value; |
| | | } |
| | | //判断是否是栅格表单 |
| | | if (attr.name != 'Layout') { |
| | | if (attr.fieldId == result[i].attr) { |
| | | attr.value = ''; |
| | | attr.oldvalue = ''; |
| | | attr.value = result[i].value; |
| | | attr.oldvalue = result[i].value; |
| | | $this.head_styledef.form.model[attr |
| | | .fieldId] = |
| | | result[i] |
| | | .value; |
| | | } |
| | | } else if (attr.name == 'Layout') { |
| | | attr.setting.colList.forEach(col => { |
| | | if (col) { |
| | | if (col.fieldId == result[i] |
| | | .attr) { |
| | | col.value = ''; |
| | | col.oldvalue = ''; |
| | | col.value = result[i] |
| | | .value; |
| | | col.oldvalue = result[i] |
| | | .value; |
| | | $this.head_styledef.form |
| | | .model[col |
| | | .fieldId] = result[ |
| | | i].value; |
| | | } |
| | | } |
| | | }); |
| | | } |
| | | } |
| | | var length = 0; |
| | | if (!$this.$data.refdatastore.filter(function(s) { |
| | | return result[i].attr == s.attr |
| | | }).length) { |
| | | length = 1; |
| | | $this.$data.refdatastore.push(result[i]); |
| | | } |
| | | if (length == 0) { |
| | | for (var j = 0; j < $this.$data.refdatastore |
| | | .length; j++) { |
| | | if ($this.$data.refdatastore[j].attr == result[ |
| | | i] |
| | | .attr) { |
| | | $this.$data.refdatastore[j].value = result[ |
| | | i] |
| | | .value; |
| | | } |
| | | } |
| | | } |
| | | } |
| | | $this.setFormValues(result) |
| | | } else if (action.action_type == 'set_dlg_attr_show') { |
| | | var result = action.value; |
| | | result.forEach(async (attr, key) => { |
| | | $this.$data.head_styledef.form.items |
| | | .forEach( |
| | | async (ele, |
| | | index) => { |
| | | //判断是否是栅格表单 |
| | | if (ele.name != 'Layout') { |
| | | if (ele.fieldId == attr |
| | | .attr) { |
| | | ele.show = attr |
| | | .show; |
| | | } |
| | | } else if (ele.name == |
| | | 'Layout') { |
| | | ele.setting.colList |
| | | .forEach( |
| | | col => { |
| | | if (col) { |
| | | if (col |
| | | .fieldId == |
| | | attr |
| | | .attr |
| | | ) { |
| | | col.show = |
| | | attr |
| | | .show; |
| | | } |
| | | } |
| | | }); |
| | | } |
| | | }); |
| | | }); |
| | | var head_styledef = JSON.parse(JSON.stringify($this.$data |
| | | .head_styledef)); |
| | | $this.$data.head_styledef = []; |
| | | $this.$data.head_styledef = head_styledef; |
| | | $this.hideFormItems(result) |
| | | // console.log($this.$data.head_styledef); |
| | | } else if (action.action_type == 'set_global_attr') { |
| | | $this.$data.global_attr = action.value || []; |
| | | } else if (action.action_type == |
| | | "set_dlg_current_edit_attr" |
| | | ) { |
| | | if ($this |
| | | .focusOldFieldId == |
| | | action.value) { |
| | | $this.setData({ |
| | | focusFieldId: "" |
| | | }) |
| | | } else { |
| | | $this.setData({ |
| | | focusFieldId: $this |
| | | .focusOldFieldId |
| | | }) |
| | | } |
| | | $this.$nextTick(() => { |
| | | $this.setData({ |
| | | focusFieldId: action |
| | | .value |
| | | }) |
| | | }); |
| | | } else { |
| | | uni.showModal({ |
| | | title: this.translateSys("tip"), |
| | |
| | | } |
| | | }; |
| | | var obj_attr = $this.head_styledef.form.model; |
| | | console.log(obj_attr); |
| | | console.log(obj_attr); |
| | | var req = Object.keys(obj_attr).map((a) => ({ |
| | | attr: a, |
| | | value: obj_attr[a] || "", |
| | |
| | | } |
| | | } |
| | | } |
| | | |
| | | |
| | | var extinfo = enviroment; |
| | | extinfo.edit_dlg = { |
| | | type: 'small', //小窗口 |
| | |
| | | compose_info: '', |
| | | ext_info: extinfo, |
| | | global_attr: global_attr, |
| | | input_param:input_param, |
| | | input_param: input_param, |
| | | }; |
| | | console.log(dataInfo); |
| | | // return; |
| | |
| | | }); |
| | | d.show(); |
| | | } else if (action.action_type == 'open_common_dlg') { |
| | | |
| | | |
| | | if (val.common_dlg_id == 'check_list') { |
| | | $this.setData({check_list:val.config}) |
| | | $this.setData({ |
| | | check_list: val.config |
| | | }) |
| | | if (val.config.appear_style == 'sideslip') //判断是否是侧滑 |
| | | $this.setData({popupType:"right"}) |
| | | $this.setData({ |
| | | popupType: "right" |
| | | }) |
| | | else |
| | | $this.setData({popupType:"center"}) |
| | | $this.setData({ |
| | | popupType: "center" |
| | | }) |
| | | // open 方法传入参数 等同在 uni-popup 组件上绑定 type属性 |
| | | $this.$refs.popup.open($this.popupType); |
| | | var popupParam = { |
| | |
| | | req: req, |
| | | data_attr: data_attr |
| | | } |
| | | $this.setData({popupParam:popupParam}) |
| | | $this.setData({ |
| | | popupParam: popupParam |
| | | }) |
| | | } |
| | | } else if (action.action_type == 'open_project_query_dlg') { |
| | | //console.log(action.value.select_range); |
| | |
| | | |
| | | }, |
| | | add() { |
| | | const $this = this |
| | | uni.showLoading({ |
| | | title: this.translateSys("loading"), |
| | | mask: true |
| | |
| | | }; |
| | | console.log(dataInfo); |
| | | // return |
| | | dataObjCreate(dataInfo).then(result => { |
| | | dataObjCreate(dataInfo).then(res => { |
| | | uni.hideLoading(); |
| | | if (result.action) { |
| | | var action = JSON.parse(result.action); |
| | | console.log(action); |
| | | if (action.ret == '0') { |
| | | if (action.ret != 0) { |
| | | uni.showModal({ |
| | | title: this.translateSys("tip"), |
| | | content: this.translate('execute_script_failed') + |
| | | this |
| | | .translateSys('comma') + this.translate( |
| | | 'result') + |
| | | this |
| | | .translateSys('colon') + action.result, |
| | | showCancel: false, |
| | | confirmText: this.translateSys("cancel") |
| | | }); |
| | | this.saving = false |
| | | return; |
| | | let data = res.lua_result |
| | | if (data.ret != 0) { |
| | | var tip = data.err_info ? typeof data.err_info == 'string' ? data |
| | | .err_info : |
| | | data |
| | | .err_info.join('<br/>') : ''; |
| | | if (data.ret == 801) { |
| | | if (this.param.Only_Script_Error) { |
| | | let pos = tip.indexOf(":"); |
| | | if (pos > -1) tip = tip.substring(pos + 1); |
| | | } |
| | | if (action.info) { |
| | | uni.showModal({ |
| | | title: this.translateSys("tip"), |
| | | content: this.translate('execute_script_failed') + |
| | | this |
| | | .translateSys('comma') + |
| | | this.translateSys('colon') + action.info, |
| | | showCancel: false, |
| | | confirmText: this.translateSys("cancel") |
| | | }); |
| | | return; |
| | | } |
| | | if (action.result_type == '0') { |
| | | uni.showToast({ |
| | | title: action.result, |
| | | icon: "success", |
| | | duration: 3000 |
| | | }); |
| | | } |
| | | uni.showModal({ |
| | | title: this.translateSys("tip"), |
| | | content: tip, |
| | | showCancel: false, |
| | | confirmText: this.translateSys("cancel") |
| | | }); |
| | | } else uni.showModal({ |
| | | title: this.translateSys("tip"), |
| | | content: tip + ',' + this.translateSys('tip') + ':' + data |
| | | .ret, |
| | | showCancel: false, |
| | | confirmText: this.translateSys("cancel") |
| | | }); |
| | | this.saving = false |
| | | return false |
| | | } else { |
| | | var tip = data.info ? typeof data.info == 'string' ? data.info : data |
| | | .info |
| | | .join( |
| | | '<br/>') : ''; |
| | | if (tip) uni.showModal({ |
| | | title: this.translateSys("tip"), |
| | | content: tip, |
| | | showCancel: false, |
| | | confirmText: this.translateSys("cancel") |
| | | }); |
| | | else { |
| | | |
| | | // "{"ret":0, "result_type":0, "result":"创建成功123123123","info":""}" |
| | | uni.showToast({ |
| | | title: this.translate('create_success'), |
| | | icon: "success", |
| | | duration: 3000 |
| | | }); |
| | | } |
| | | } else |
| | | uni.showToast({ |
| | | title: this.translate('create_success'), |
| | | icon: "success", |
| | | duration: 3000 |
| | | }); |
| | | if (!this.$data.param.After_Btn_Not_Refresh) { |
| | | //刷新 |
| | | uni.redirectTo({ |
| | | url: '../modal/3018_2?param=' + JSON.stringify(this.$data |
| | | .param) + |
| | | "&titlename=" + this.$data.title |
| | | }); |
| | | } |
| | | |
| | | |
| | | if (!this.$data.param.After_Btn_Not_Refresh) { |
| | | //刷新 |
| | | uni.redirectTo({ |
| | | url: '../modal/3018_2?param=' + JSON.stringify(this.$data |
| | | .param) + |
| | | "&titlename=" + this.$data.title |
| | | }); |
| | | } else { |
| | | var actionlist = data.action; |
| | | if (actionlist) { |
| | | console.log(actionlist); |
| | | for (var i = 0; i < actionlist.length; i++) { |
| | | var action = actionlist[i]; |
| | | if (action.action_type == 'set_dlg_attr') { |
| | | $this.setFormValues(action.value) |
| | | } else if (action.action_type == 'set_dlg_attr_show') { |
| | | var result = action.value; |
| | | $this.hideFormItems(result) |
| | | } else if (action.action_type == |
| | | "set_dlg_current_edit_attr" |
| | | ) { |
| | | if ($this |
| | | .focusOldFieldId == |
| | | action.value) { |
| | | $this.setData({ |
| | | focusFieldId: "" |
| | | }) |
| | | } else { |
| | | $this.setData({ |
| | | focusFieldId: $this |
| | | .focusOldFieldId |
| | | }) |
| | | } |
| | | $this.$nextTick(() => { |
| | | $this.setData({ |
| | | focusFieldId: action |
| | | .value |
| | | }) |
| | | }); |
| | | } |
| | | } |
| | | } |
| | | |
| | | } |
| | | } |
| | | // this.class_attr_init(); |
| | | |
| | | this.saving = false |
| | | }).catch(ex => { |
| | | console.log(ex); |
| | | this.saving = false |
| | | |
| | | uni.hideLoading(); |
| | | let exStr = JSON.stringify(ex) |
| | | if (exStr == "{}") |
| | | exStr = ex |
| | | let tip = typeof ex.errMsg == "string" ? ex.errMsg : exStr |
| | | uni.showModal({ |
| | | title: this.translateSys("tip"), |
| | | content: ex.errMsg, |
| | | content: tip, |
| | | showCancel: false, |
| | | confirmText: this.translateSys("cancel") |
| | | }); |
| | | }); |
| | | }, |
| | | setFormValues(data) { |
| | | const $this = this |
| | | for (var i = 0; i < data.length; i++) { |
| | | if (data[i].choice_list) { |
| | | for (var c = 0; c < $this.head_styledef.form.items |
| | | .length; c++) { |
| | | var attr = $this.head_styledef.form.items[c]; |
| | | if (attr.name != 'Layout') { |
| | | if (attr.fieldId == data[i].attr) { |
| | | var dictItemList = []; |
| | | for (var d in data[i].choice_list) { |
| | | var val = data[i].choice_list[d]; |
| | | dictItemList.push({ |
| | | "CN_S_NAME": val, |
| | | "CN_S_VALUE": val, |
| | | "text": val, |
| | | "value": val |
| | | }); |
| | | } |
| | | attr.dict = dictItemList; |
| | | } |
| | | } else if (attr.name == 'Layout') { |
| | | attr.setting.colList.forEach(col => { |
| | | if (col) { |
| | | if (col.fieldId == data[ |
| | | i] |
| | | .attr) { |
| | | var dictItemList = []; |
| | | for (var d in data[i] |
| | | .choice_list) { |
| | | var val = data[i] |
| | | .choice_list[ |
| | | d]; |
| | | dictItemList.push({ |
| | | "CN_S_NAME": val, |
| | | "CN_S_VALUE": val, |
| | | "text": val, |
| | | "value": val |
| | | }); |
| | | } |
| | | col.dict = |
| | | dictItemList; |
| | | } |
| | | } |
| | | }); |
| | | } |
| | | |
| | | } |
| | | } |
| | | for (var c = 0; c < $this.$data.head_styledef.form |
| | | .items |
| | | .length; c++) { |
| | | var attr = $this.$data.head_styledef.form.items[c]; |
| | | // console.log(attr[j].Name+'=='+data[i].attr); |
| | | //判断表单里是否有返回字段,没有就装载到model里,点击确定提交的时候带上这些数据 |
| | | if ($this.head_styledef.form.model[data[i] |
| | | .attr] == |
| | | undefined) { |
| | | $this.head_styledef.form.model[data[i] |
| | | .attr] = |
| | | data[i] |
| | | .value; |
| | | } |
| | | //判断是否是栅格表单 |
| | | if (attr.name != 'Layout') { |
| | | if (attr.fieldId == data[i].attr) { |
| | | attr.value = ''; |
| | | attr.oldvalue = ''; |
| | | attr.value = data[i].value; |
| | | attr.oldvalue = data[i].value; |
| | | $this.head_styledef.form.model[attr |
| | | .fieldId] = |
| | | data[ |
| | | i].value; |
| | | } |
| | | } else if (attr.name == 'Layout') { |
| | | attr.setting.colList.forEach(col => { |
| | | if (col) { |
| | | if (col.fieldId == data[i] |
| | | .attr) { |
| | | col.value = ''; |
| | | col.oldvalue = ''; |
| | | col.value = data[i] |
| | | .value; |
| | | col.oldvalue = data[i] |
| | | .value; |
| | | $this.head_styledef.form |
| | | .model[ |
| | | col |
| | | .fieldId] = data[ |
| | | i] |
| | | .value; |
| | | } |
| | | } |
| | | }); |
| | | } |
| | | } |
| | | var length = 0; |
| | | if (!$this.$data.refdatastore.filter(function(s) { |
| | | return data[i].attr == s.attr |
| | | }).length) { |
| | | length = 1; |
| | | $this.$data.refdatastore.push(data[i]); |
| | | } |
| | | if (length == 0) { |
| | | for (var j = 0; j < $this.$data.refdatastore |
| | | .length; j++) { |
| | | if ($this.$data.refdatastore[j].attr == data[ |
| | | i] |
| | | .attr) { |
| | | $this.$data.refdatastore[j].value = data[ |
| | | i] |
| | | .value; |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | }, |
| | | hideFormItems(data) { |
| | | const $this = this |
| | | data.forEach(async (attr, key) => { |
| | | $this.$data.head_styledef.form.items |
| | | .forEach( |
| | | async ( |
| | | ele, index) => { |
| | | //判断是否是栅格表单 |
| | | if (ele.name != 'Layout') { |
| | | if (ele.fieldId == attr |
| | | .attr) { |
| | | ele.show = attr |
| | | .show; |
| | | } |
| | | } else if (ele.name == |
| | | 'Layout') { |
| | | ele.setting.colList |
| | | .forEach( |
| | | col => { |
| | | if (col) { |
| | | if (col |
| | | .fieldId == |
| | | attr |
| | | .attr |
| | | ) { |
| | | col.show = |
| | | attr |
| | | .show; |
| | | } |
| | | } |
| | | }); |
| | | } |
| | | }); |
| | | }); |
| | | var head_styledef = JSON.parse(JSON.stringify($this.$data |
| | | .head_styledef)); |
| | | $this.$data.head_styledef = []; |
| | | $this.$data.head_styledef = head_styledef; |
| | | }, |
| | | afterOK() { |
| | | this.saving = true |
| | | const $this = this |
| | | var obj_attr = this.head_styledef.form.model; |
| | | // console.log(obj_attr); |
| | | var input_param = { |
| | |
| | | user_login: '', |
| | | data_json: '', |
| | | compose_info: '', |
| | | input_param: '', |
| | | input_param: Base64.encode(JSON.stringify(input_param)), |
| | | }; |
| | | console.log(dataInfo); |
| | | // return; |
| | |
| | | showCancel: false, |
| | | confirmText: this.translateSys("cancel") |
| | | }); |
| | | if (!this.$data.param.After_Btn_Not_Refresh) { |
| | | //刷新 |
| | | uni.redirectTo({ |
| | | url: '../modal/3018_2?param=' + JSON.stringify(this.$data |
| | | .param) + |
| | | "&titlename=" + this.$data.title |
| | | }); |
| | | } else { |
| | | var actionlist = data.action; |
| | | if (actionlist) { |
| | | console.log(actionlist); |
| | | for (var i = 0; i < actionlist.length; i++) { |
| | | var action = actionlist[i]; |
| | | if (action.action_type == 'set_dlg_attr') { |
| | | $this.setFormValues(action.value) |
| | | } else if (action.action_type == 'set_dlg_attr_show') { |
| | | var result = action.value; |
| | | $this.hideFormItems(result) |
| | | } else if (action.action_type == |
| | | "set_dlg_current_edit_attr" |
| | | ) { |
| | | if ($this |
| | | .focusOldFieldId == |
| | | action.value) { |
| | | $this.setData({ |
| | | focusFieldId: "" |
| | | }) |
| | | } else { |
| | | $this.setData({ |
| | | focusFieldId: $this |
| | | .focusOldFieldId |
| | | }) |
| | | } |
| | | $this.$nextTick(() => { |
| | | $this.setData({ |
| | | focusFieldId: action |
| | | .value |
| | | }) |
| | | }); |
| | | } |
| | | |
| | | var result = data.result; |
| | | |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | this.saving = false |
| | | }).catch(ex => { |
| | | // console.log(ex); |
| | | this.saving = false |
| | | let exStr = JSON.stringify(ex) |
| | | if (exStr == "{}") |
| | | exStr = ex |
| | | let tip = typeof ex.errMsg == "string" ? ex.errMsg : exStr |
| | | uni.showModal({ |
| | | title: this.translateSys('tip') + "7.1", |
| | | content: ex.errMsg, |
| | | content: tip, |
| | | showCancel: false, |
| | | confirmText: this.translateSys("cancel") |
| | | }); |
| | |
| | | } |
| | | }, |
| | | onTriggerEvent(btn, enviroment) { |
| | | const $this = this |
| | | var obj_attr = this.head_styledef.form.model; |
| | | // console.log(obj_attr); |
| | | var input_param = { |
| | |
| | | showCancel: false, |
| | | confirmText: this.translateSys("cancel") |
| | | }); |
| | | if (!this.$data.param.After_Btn_Not_Refresh) { |
| | | //刷新 |
| | | uni.redirectTo({ |
| | | url: '../modal/3018_2?param=' + JSON.stringify(this.$data |
| | | .param) + |
| | | "&titlename=" + this.$data.title |
| | | }); |
| | | } else { |
| | | var actionlist = data.action; |
| | | if (actionlist) { |
| | | console.log(actionlist); |
| | | for (var i = 0; i < actionlist.length; i++) { |
| | | var action = actionlist[i]; |
| | | if (action.action_type == 'set_dlg_attr') { |
| | | $this.setFormValues(action.value) |
| | | } else if (action.action_type == 'set_dlg_attr_show') { |
| | | var result = action.value; |
| | | $this.hideFormItems(result) |
| | | } else if (action.action_type == |
| | | "set_dlg_current_edit_attr" |
| | | ) { |
| | | if ($this |
| | | .focusOldFieldId == |
| | | action.value) { |
| | | $this.setData({ |
| | | focusFieldId: "" |
| | | }) |
| | | } else { |
| | | $this.setData({ |
| | | focusFieldId: $this |
| | | .focusOldFieldId |
| | | }) |
| | | } |
| | | $this.$nextTick(() => { |
| | | $this.setData({ |
| | | focusFieldId: action |
| | | .value |
| | | }) |
| | | }); |
| | | } |
| | | |
| | | var result = data.result; |
| | | |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | }).catch(ex => { |
| | | // console.log(ex); |
| | | let exStr = JSON.stringify(ex) |
| | | if (exStr == "{}") |
| | | exStr = ex |
| | | let tip = typeof ex.errMsg == "string" ? ex.errMsg : exStr |
| | | uni.showModal({ |
| | | title: this.translateSys('tip') + "7.1", |
| | | content: ex.errMsg, |
| | | content: tip, |
| | | showCancel: false, |
| | | confirmText: this.translateSys("cancel") |
| | | }); |
| | |
| | | const url = '../modal/3018?param=' + JSON.stringify(data) + "&titlename=" + btn.Edit_dlg |
| | | .Name + |
| | | "&type=addDataObj" |
| | | console.log("showAddSmallDialog", url); |
| | | var $this = this; |
| | | uni.navigateTo({ |
| | | url: url, |
| | |
| | | addDataObj: function(resData) { |
| | | console.log(resData); |
| | | //刷新 |
| | | if (!this.$data.param.After_Btn_Not_Refresh) { |
| | | uni.redirectTo({ |
| | | url: '../modal/3018_2?param=' + JSON.stringify(this |
| | | .$data.param) + |
| | | "&titlename=" + this.$data.title |
| | | }); |
| | | } |
| | | uni.redirectTo({ |
| | | url: '../modal/3018_2?param=' + JSON.stringify(this |
| | | .$data.param) + |
| | | "&titlename=" + this.$data.title |
| | | }); |
| | | |
| | | }, |
| | | } |
| | | }); |
| | |
| | | float: right; |
| | | display: inline-block; |
| | | } |
| | | |
| | | .btn_cancel2 { |
| | | width: 90%; |
| | | margin: 0 10rpx; |