| | |
| | | :type="item.name=='Input'?'text':'number'" 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)" @keyup.enter="onEnterChange(item)" |
| | | :focus="focusFieldId == item.fieldId" @focus="ontap(index,item)" @keyup.enter="onEnterChange(item)" |
| | | @blur="onEnterChange(item)" /> |
| | | <text v-if="item.setting.suffix" class="uni-icon" :class="[item.setting.suffix]" |
| | | @click="onEnterChange(item)"></text> |
| | |
| | | title: '码盘', |
| | | ClsID: 'CG_Detail', |
| | | param: {}, |
| | | focusMateria: false, |
| | | focusFieldId: "", |
| | | head_styledef: { |
| | | form: { |
| | | items: [] |
| | |
| | | detail1_styledef: {}, |
| | | detail1StyleDefList: [], |
| | | detail2_styledef: {}, |
| | | detail2StyleDefList: [], |
| | | detail2StyleDefList: [], //分页数据 |
| | | detail1ExtData: {}, |
| | | detail2ExtData: {}, //分页扩展数据 |
| | | // 分段器数据 |
| | | current: 0, |
| | | Before_OK_Event: {}, |
| | |
| | | this.Detail2_UIstyleGetInfo(this.ClsID, this.$data.param.Sub_Page[1].UI_Style.ID); |
| | | |
| | | console.log(this.$data.param); |
| | | //页面初始化获取焦点 |
| | | // this.focusMateria=true; |
| | | }, |
| | | //页面初始化获取焦点 |
| | | methods: { |
| | | setData: function(obj) { |
| | | let that = this; |
| | |
| | | if (ele.useDict == true) { //判断useDict是否使用字典 |
| | | await this.DictGetInfo(ele.bind.dict, index, 'mast'); |
| | | } |
| | | if($this.focusFieldId == "") |
| | | { |
| | | if(ele.name=='Input' || ele.name=='InputNumber') |
| | | { |
| | | $this.setData({focusFieldId:ele.fieldId}) |
| | | } |
| | | } |
| | | |
| | | }); |
| | | } else { |
| | | uni.showModal({ |
| | |
| | | }); |
| | | }, |
| | | |
| | | ontap(item) { //扫码功能 |
| | | ontap(index,item) { //扫码功能 |
| | | // var $ele = e; |
| | | //console.log(e.target) |
| | | getApp().onScan((result) => { |
| | | console.log(result.decodedata); |
| | | item.value = result.decodedata; |
| | | uni.hideKeyboard(); |
| | | // uni.hideKeyboard(); |
| | | var $this = this; |
| | | |
| | | // if(item.value=='B61DF51DD50645CEB9D152DD77D2466A'){ |
| | |
| | | $this.onChange(onChangeEvent); |
| | | } |
| | | if (item.value) { //第一个输入框不为空 |
| | | $this.focusMateria = true; //初始化,第二个输入框focus属性 |
| | | // setTimeout(function(){ |
| | | // $this.focusMateria=true; //第二个输入框获取焦点 |
| | | setTimeout(function() { |
| | | uni.hideKeyboard(); |
| | | }, 1000); |
| | | // },500); |
| | | //初始化,下个输入框focus属性 |
| | | const curIndex = $this.head_styledef.form.items.findIndex((ele, index2, arr) => { |
| | | return (ele.name=='Input' || ele.name=='InputNumber') && index2 > index; |
| | | }) |
| | | if(curIndex > -1){ |
| | | $this.setData({focusFieldId: $this.head_styledef.form.items[curIndex].fieldId}) |
| | | } |
| | | // setTimeout(function() { |
| | | // uni.hideKeyboard(); |
| | | // }, 1000); |
| | | |
| | | } |
| | | // if(onSuffixClickCallbackEvent.id){ //后图标点击事件 |
| | | // this.onSuffixClick(onSuffixClickCallbackEvent); |
| | |
| | | const jsonlist = []; |
| | | detailAttrList.forEach(attr => { |
| | | jsonlist.push({ |
| | | id: '', |
| | | id: attr["id"]|| "", |
| | | attrs: Object.keys(attr).map((a) => ({ |
| | | attr: a, |
| | | value: attr[a] || "", |
| | | })) |
| | | })).filter((a)=>{return a.attr != "id"}) |
| | | }); |
| | | }); |
| | | return jsonlist; |
| | |
| | | try { |
| | | if (event.id) { |
| | | |
| | | //获取表头属性 |
| | | var head_attr = {}; |
| | | this.head_styledef.form.items.forEach(item => { |
| | | head_attr[item.fieldId] = item.value; |
| | | }); |
| | | var obj_attr = this.head_styledef.form.model; |
| | | // console.log(obj_attr); |
| | | var input_param = Base64.encode( |
| | | JSON.stringify( |
| | | Object.keys(obj_attr).map((a) => ({ |
| | | Object.keys(head_attr).map((a) => ({ |
| | | attr: a, |
| | | value: obj_attr[a] || "", |
| | | value: head_attr[a] || "", |
| | | })) |
| | | ) |
| | | ); |
| | | var $this = this; |
| | | const jsonList = [] |
| | | jsonList.push({ |
| | | page_name: $this.param.Sub_Page[0].Name, |
| | | item_list: [] |
| | | }) |
| | | jsonList.push({ |
| | | page_name: $this.param.Sub_Page[1].Name, |
| | | item_list: [] |
| | | }) |
| | | jsonList[0].item_list = $this.getDetailAttrList($this.detail1StyleDefList, $this.param |
| | | .Sub_Page[0].Select_Button) |
| | | jsonList[1].item_list = $this.getDetailAttrList($this.detail2StyleDefList, $this.param |
| | | .Sub_Page[1].Select_Button) |
| | | const itemlist1= $this.getDetailAttrList($this.detail1StyleDefList,$this.param.Sub_Page[0].Select_Button) |
| | | const itemlist2= $this.getDetailAttrList($this.detail2StyleDefList,$this.param.Sub_Page[1].Select_Button) |
| | | |
| | | jsonList.push({page_name:$this.param.Sub_Page[0].Name,item_list:itemlist1,ext_data:$this.detail1ExtData}) |
| | | jsonList.push({page_name:$this.param.Sub_Page[1].Name,item_list:itemlist2,ext_data:$this.detail2ExtData}) |
| | | const data_json = Base64.encode( |
| | | JSON.stringify(jsonList) |
| | | ); |
| | |
| | | .exec(); |
| | | } |
| | | }); |
| | | } else if (item.action_type == |
| | | "set_subtable_page_row") { // value = {"page_name":"码盘中", "row":[{"id":"xx"}]} |
| | | } else if (item.action_type == "set_subtable_page_row") { |
| | | $this.viewActionSetRow( item.value) |
| | | |
| | | } else if (item.action_type == "set_subtable_page_ext_data") { |
| | | var value = item.value; |
| | | var detailStyleDefList = [] |
| | | if (value.page_name == $this.$data.param.Sub_Page[1] |
| | | .Name) { |
| | | detailStyleDefList = $this.$data |
| | | .detail2StyleDefList |
| | | } else if (value.page_name == $this.$data.param |
| | | .Sub_Page[0].Name) { |
| | | detailStyleDefList = $this.$data |
| | | .detail1StyleDefList |
| | | if (value.page_name == $this.$data.param.Sub_Page[0].Name) { //判断返回的action的page_name是否是待分拣 |
| | | $this.setData({detail1ExtData:value.ext_data}) |
| | | } else if (value.page_name == $this.$data.param.Sub_Page[1].Name) { |
| | | $this.setData({detail2ExtData:value.ext_data}) |
| | | } |
| | | detailStyleDefList.forEach(ele => { |
| | | value.row.forEach((rowData) => { |
| | | if (ele.form.objId == rowData |
| | | .id) { |
| | | rowData.attrs.forEach( |
| | | attr => { |
| | | ele.form.items |
| | | .forEach( |
| | | ele2 => { |
| | | if (ele2 |
| | | .name != |
| | | 'Layout' |
| | | ) { |
| | | if (ele2 |
| | | .fieldId == |
| | | attr |
| | | .attr |
| | | ) { |
| | | ele2.value = |
| | | $this |
| | | .operationNumber( |
| | | ele2 |
| | | .value, |
| | | attr |
| | | .value, |
| | | attr |
| | | .operation |
| | | ) |
| | | } |
| | | } else if ( |
| | | ele2 |
| | | .name == |
| | | 'Layout' |
| | | ) { |
| | | ele2.setting |
| | | .colList |
| | | .forEach( |
| | | col => { |
| | | if ( |
| | | col) { |
| | | if (col |
| | | .fieldId == |
| | | attr |
| | | .attr |
| | | ) { |
| | | col.value = |
| | | $this |
| | | .operationNumber( |
| | | col |
| | | .value, |
| | | attr |
| | | .value, |
| | | attr |
| | | .operation |
| | | ) |
| | | } |
| | | } |
| | | } |
| | | ); |
| | | } |
| | | }); |
| | | }); |
| | | |
| | | } |
| | | }) |
| | | |
| | | }); |
| | | if (value.page_name == $this.$data.param.Sub_Page[1] |
| | | .Name) { |
| | | $this.setData({ |
| | | detail2StyleDefList: detailStyleDefList |
| | | }) |
| | | } else if (value.page_name == $this.$data.param |
| | | .Sub_Page[0].Name) { |
| | | $this.setData({ |
| | | detail1StyleDefList: detailStyleDefList |
| | | }) |
| | | } |
| | | else if (item.action_type == "clear_subpage_rows") { |
| | | var value = item.value; |
| | | if (value.page_name == $this.$data.param.Sub_Page[0].Name) { //判断返回的action的page_name是否是待分拣 |
| | | $this.setData({detail1StyleDefList:[],detail1ExtData:{}}) |
| | | } else if (value.page_name == $this.$data.param.Sub_Page[1].Name) { |
| | | $this.setData({detail2StyleDefList:[],detail2ExtData:{}}) |
| | | } |
| | | } else if (item.action_type == "set_dlg_attr") { |
| | | } |
| | | else if (item.action_type == "set_dlg_current_edit_attr") { |
| | | if($this.focusFieldId == item.value) |
| | | $this.setData({focusFieldId: ""}) |
| | | $this.setData({focusFieldId:item.value}) |
| | | } |
| | | else if (item.action_type == "set_dlg_attr") { |
| | | // value = {"attr":"xxx", "value":"xxx"} |
| | | var data = item.value; |
| | | $this.$data.head_styledef.form.items.forEach(async ( |
| | |
| | | |
| | | } |
| | | }, |
| | | operationNumber(value1, value2, operation) { |
| | | if (operation == "+") { |
| | | return value1 + value2 |
| | | } else if (operation == "-") { |
| | | return value1 - value2 |
| | | } else if (operation == "*") { |
| | | return value1 * value2 |
| | | } else if (operation == "/") { |
| | | if (value2) |
| | | return value1 / value2 |
| | | operationNumber(value1, value2,operation){ |
| | | var number1 = 0 |
| | | var number2 =0 |
| | | if(value1) |
| | | number1 = parseInt(value1) |
| | | if(value2) |
| | | number2 = parseInt(value2) |
| | | if(operation == "+") |
| | | { |
| | | return number1 + number2 |
| | | } |
| | | else if(operation == "-") |
| | | { |
| | | return number1 - number2 |
| | | } |
| | | else if(operation == "*") |
| | | { |
| | | return number1 * number2 |
| | | } |
| | | else if(operation == "/") |
| | | { |
| | | if(number2) |
| | | return number1 / number2 |
| | | else |
| | | return value1 |
| | | } else return value2 |
| | | return number1 |
| | | } |
| | | else return number2 |
| | | }, |
| | | |
| | | //更新分页签中的列表项内容 |
| | | viewActionSetRow(value) { |
| | | const $this = this |
| | | var detailStyleDefList = [] |
| | | if(value.page_name == $this.$data.param.Sub_Page[1].Name) |
| | | { |
| | | detailStyleDefList = $this.$data.detail2StyleDefList |
| | | } |
| | | else if(value.page_name == $this.$data.param.Sub_Page[0].Name) |
| | | { |
| | | detailStyleDefList =$this.$data.detail1StyleDefList |
| | | } |
| | | detailStyleDefList.forEach(ele=>{ |
| | | value.row.forEach((rowData) => { |
| | | if(ele.form.objId == rowData.id){ |
| | | rowData.attrs.forEach(attr=>{ |
| | | ele.form.items.forEach(ele2=>{ |
| | | if(ele2.name!='Layout'){ |
| | | if(ele2.fieldId == attr.attr){ |
| | | ele2.value =$this.operationNumber(ele2.value,attr.value,attr.operation) |
| | | } |
| | | } else if(ele2.name=='Layout'){ |
| | | ele2.setting.colList.forEach(col=>{ |
| | | if(col) |
| | | { |
| | | if(col.fieldId == attr.attr) |
| | | { |
| | | col.value =$this.operationNumber(col.value,attr.value,attr.operation) |
| | | } |
| | | } |
| | | }) |
| | | } |
| | | }); |
| | | }); |
| | | } |
| | | }) |
| | | }); |
| | | if(value.page_name == $this.$data.param.Sub_Page[1].Name) |
| | | { |
| | | $this.setData({detail2StyleDefList:detailStyleDefList}) |
| | | } |
| | | else if(value.page_name == $this.$data.param.Sub_Page[0].Name) |
| | | { |
| | | $this.setData({detail1StyleDefList:detailStyleDefList}) |
| | | } |
| | | |
| | | }, |
| | | //加载正在码盘内容 |
| | | viewAceionRow(data, type) { |
| | |
| | | //加载已码盘内容 |
| | | viewAceionContent(data) { |
| | | var $this = this; |
| | | if (data.page_name == $this.$data.param.Sub_Page[0].Name) { |
| | | $this.detail1ExtData = data.ext_data ||{} |
| | | } |
| | | else if (data.page_name == $this.$data.param.Sub_Page[1].Name) { |
| | | $this.detail2ExtData = data.ext_data||{} |
| | | } |
| | | if (JSON.stringify(data.content) == '{}') { |
| | | return; |
| | | } |
| | |
| | | // console.log($this.$data.detail2StyleDefList); |
| | | } |
| | | }); |
| | | |
| | | |
| | | |
| | | }, |
| | | onClickItem(e) { //选择页签 |
| | | // console.log(e); |
| | |
| | | })) |
| | | }); |
| | | }); |
| | | const list = [] |
| | | list.push({page_name:$this.param.Sub_Page[0].Name,item_list:jsonlist,ext_data:$this.detail1ExtData}) |
| | | |
| | | // console.log(jsonlist); |
| | | $this.runCustomEvent(event, input_param, jsonlist, '1'); |
| | | // jsonlist.forEach(async (json,key)=>{ |
| | |
| | | })) |
| | | }); |
| | | }); |
| | | const list = [] |
| | | list.push({page_name:$this.param.Sub_Page[1].Name,item_list:jsonlist,ext_data:$this.detail2ExtData}) |
| | | |
| | | // console.log(jsonlist); |
| | | $this.runCustomEvent(event, input_param, jsonlist, '2'); |
| | | $this.runCustomEvent(event, input_param, list, '2'); |
| | | // jsonlist.forEach(async (json,key)=>{ |
| | | // await $this.runCustomEvent(event,input_param,json,'2'); |
| | | // }); |
| | |
| | | // }); |
| | | // uni.showModal({title:"系统提示",content:value,showCancel:false,confirmText:"关闭"}); |
| | | } |
| | | else if (item.action_type == "set_subtable_page_row") { |
| | | $this.viewActionSetRow( item.value) |
| | | |
| | | } else if (item.action_type == "set_subtable_page_ext_data") { |
| | | var value = item.value; |
| | | if (value.page_name == $this.$data.param.Sub_Page[0].Name) { //判断返回的action的page_name是否是待分拣 |
| | | $this.setData({detail1ExtData:value.ext_data}) |
| | | } else if (value.page_name == $this.$data.param.Sub_Page[1].Name) { |
| | | $this.setData({detail2ExtData:value.ext_data}) |
| | | } |
| | | } |
| | | else if (item.action_type == "clear_subpage_rows") { |
| | | var value = item.value; |
| | | if (value.page_name == $this.$data.param.Sub_Page[0].Name) { //判断返回的action的page_name是否是待分拣 |
| | | $this.setData({detail1StyleDefList:[],detail1ExtData:{}}) |
| | | } else if (value.page_name == $this.$data.param.Sub_Page[1].Name) { |
| | | $this.setData({detail2StyleDefList:[],detail2ExtData:{}}) |
| | | } |
| | | } |
| | | else if (item.action_type == "set_dlg_current_edit_attr") { |
| | | if($this.focusFieldId == item.value) |
| | | $this.setData({focusFieldId: ""}) |
| | | $this.setData({focusFieldId:item.value}) |
| | | } |
| | | }); |
| | | } else { |
| | | if ($this.$data.After_OK_Event.ID != event.ID) { //判断当前事件是否是确定后事件 |