| | |
| | | <template> |
| | | <view class="uni-page-modal-3017-2"> |
| | | <view class="uni-page-modal-3017-2" :class="largeMode?'large-mode':''"> |
| | | <!-- 表头样式 --> |
| | | <OIForm ref="refBaseForm" class="v-headStyle" :form="head_styledef.form" @on-focus="ontap" |
| | | <OIForm ref="refBaseForm" class="v-headStyle" :form="head_styledef.form" :hiddenIds="head_styledef.hiddenIds ?head_styledef.hiddenIds :[] " @on-focus="ontap" |
| | | @on-change="onEnterChange" @on-click-prefix="classAttr_extButton" @on-click-suffix="classAttr_extButton"> |
| | | </OIForm> |
| | | <!-- 从数据 --> |
| | |
| | | <view class="view-floor"> |
| | | <button type="default" @tap="cancel" class="btn_cancel" |
| | | v-if="param.Sub_Cls.Can_Add_Delete == true">{{translateSys('cancel')}}</button> |
| | | <button type="default" @tap="sava" class="btn_add" v-if="param.Sub_Cls.Can_Add_Delete == true" |
| | | <button type="default" @tap="onSave" class="btn_add" v-if="param.Sub_Cls.Can_Add_Delete == true" |
| | | :class="saving?'btn_disabled':''" :disabled="saving">{{title}}</button> |
| | | <button type="default" @tap="sava" class="btn_sava" v-else-if="param.Sub_Cls.Can_Add_Delete == false" |
| | | <button type="default" @tap="onSave" class="btn_sava" v-else-if="param.Sub_Cls.Can_Add_Delete == false" |
| | | :class="saving?'btn_disabled':''" :disabled="saving">{{title}}</button> |
| | | </view> |
| | | <!-- 普通弹窗 top bottom center left right --> |
| | |
| | | </template> |
| | | |
| | | <script> |
| | | import Base64 from '../../components/js-base64/base64.js' |
| | | import { |
| | | Base64 |
| | | } from '@/js/Base64.js'; |
| | | import utils from "@/js/utils.js" |
| | | import { |
| | | appGetInfo, |
| | |
| | | } from "@/api/data.js" |
| | | import dayjs from "dayjs"; |
| | | import OIForm from '@/components/oi-form/index.vue' |
| | | import buttonClickMixin from '@/mixins/button-click.js'; |
| | | |
| | | export default { |
| | | modules: { |
| | | Base64, |
| | | }, |
| | | mixins: [buttonClickMixin], |
| | | components: { |
| | | OIForm |
| | | }, |
| | | data() { |
| | | return { |
| | | largeMode: getApp().globalData.largeMode || false, |
| | | title: this.translateSys('add2'), |
| | | param: {}, |
| | | edit_inital_event: "", //弹窗初始化事件ID |
| | |
| | | uni.setNavigationBarTitle({ |
| | | title: options.titlename |
| | | }); //设置顶部标题 |
| | | this.$data.title = options.titlename; |
| | | this.$data.param = JSON.parse(options.param); |
| | | this.title = options.titlename; |
| | | this.param = JSON.parse(options.param); |
| | | this.loadData(options.paramValue) |
| | | |
| | | //页面初始化获取焦点 |
| | |
| | | }); |
| | | }, |
| | | async loadData(paramValue) { |
| | | console.log(this.$data.param); |
| | | console.log(this.param); |
| | | //获取数据类的自定义表单参数 |
| | | await this.Head_UIStyleGetInfo(this.param.Master_Cls?.ID, this.param.Master_Cls?.UI_Style?.ID); |
| | | //传入参数值 |
| | | if (paramValue) { |
| | | const attrs = paramValue.attrs || []; |
| | | |
| | | (this.$data.head_styledef?.form?.items || []).forEach(async (ele, index) => { |
| | | (this.head_styledef?.form?.items || []).forEach(async (ele, index) => { |
| | | if (ele.name != "Layout") { |
| | | attrs.forEach(async (ele2, index2) => { |
| | | if (ele.fieldId == ele2.name) { |
| | |
| | | }) |
| | | } |
| | | |
| | | await this.Detail1_UIstyleGetInfo(this.param.Sub_Cls?.ID, this.$data.param.Sub_Cls?.UI_Style?.ID); |
| | | await this.Detail1_UIstyleGetInfo(this.param.Sub_Cls?.ID, this.param.Sub_Cls?.UI_Style?.ID); |
| | | }, |
| | | async Head_UIStyleGetInfo(class_id, style_id) { //获取自定义表单样式 |
| | | var $this = this; |
| | |
| | | if (!result.style_def.includes('"')) styledef = Base64.decode(result |
| | | .style_def); |
| | | } |
| | | $this.$data.head_styledef = result.style_def ? JSON.parse(styledef) : {}; |
| | | // console.log($this.$data.head_styledef); |
| | | $this.head_styledef = result.style_def ? JSON.parse(styledef) : {}; |
| | | // console.log($this.head_styledef); |
| | | if ($this.head_styledef.form?.items) { |
| | | $this.head_styledef.form.items.forEach(async (ele, index) => { |
| | | ele.show = true; |
| | |
| | | $this.head_styledef.form |
| | | .model[ele.fieldId] = itemName; |
| | | } |
| | | $this.head_styledef.form.items[index].dict = selections.map((a) => { |
| | | $this.head_styledef.form.items[index].selections = selections.map(( |
| | | a) => { |
| | | return { |
| | | value: a.value, |
| | | text: a.label |
| | |
| | | |
| | | } |
| | | }); |
| | | const app = getApp() |
| | | if (app.globalData.bindClasses) { |
| | | $this.head_styledef.form.items.push({ |
| | | name: "Input", |
| | | label: this.translate("classes"), |
| | | labelWidth: 100, |
| | | disabled: true, |
| | | value: app.globalData.classes, |
| | | setting: { |
| | | width: 100, |
| | | height: 50, |
| | | }, |
| | | bind: { |
| | | attr: "", |
| | | }, |
| | | fieldId: "S_CLASSES", |
| | | }) |
| | | $this.head_styledef.form.model["S_CLASSES"] = app.globalData.classes |
| | | } |
| | | } |
| | | if ($this.head_styledef.event?.length > 0) { |
| | | $this.head_styledef.event.forEach(async (a) => { //判断是否是初始化事件 |
| | |
| | | if (!result.style_def.includes('"')) styledef = Base64.decode(result |
| | | .style_def); |
| | | } |
| | | $this.$data.detail1_styledef = result.style_def ? JSON.parse(styledef) : {}; |
| | | $this.$data.detail1_styledef.SelBut_Checked = true; |
| | | $this.detail1_styledef = result.style_def ? JSON.parse(styledef) : {}; |
| | | $this.detail1_styledef.SelBut_Checked = true; |
| | | if ($this.detail1_styledef.form?.items) { |
| | | $this.detail1_styledef.form.items.forEach(async (ele, index) => { |
| | | if (ele.useDict == true) { //判断useDict是否使用字典 |
| | |
| | | if (itemName) { |
| | | $this.detail1_styledef.form.items[ele.fieldId] = itemName; |
| | | } |
| | | $this.detail1_styledef.form.items[index].dict = selections.map((a) => { |
| | | $this.detail1_styledef.form.items[index].selections = selections.map(( |
| | | a) => { |
| | | return { |
| | | value: a.value, |
| | | text: a.label |
| | |
| | | $this.head_styledef.form.model[attr] = itemName; |
| | | } |
| | | $this.head_styledef.form.items[index].dict = list; |
| | | // console.log($this.$data.detail1StyleDefList); |
| | | // console.log($this.detail1StyleDefList); |
| | | } else { |
| | | if (itemName) { |
| | | $this.detail1_styledef.form.items[index].value = itemName; |
| | |
| | | $this.detail1_styledef.form.model[attr] = itemName; |
| | | } |
| | | $this.detail1_styledef.form.items[index].dict = list; |
| | | console.log($this.$data.detail1_styledef); |
| | | console.log($this.detail1_styledef); |
| | | } |
| | | |
| | | } catch (ex) { |
| | |
| | | }); |
| | | } |
| | | } |
| | | |
| | | } |
| | | } else if (data.action[i].action_type == 'set_dlg_attr_show') { |
| | | var result = action.value; |
| | | result.forEach(async (attr, key) => { |
| | | 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 style_def = JSON.parse(JSON.stringify(styledef)); |
| | | if (type == 'head') { |
| | | $this.$data.head_styledef = []; |
| | | $this.$data.head_styledef = style_def; |
| | | // console.log($this.$data.head_styledef); |
| | | $this.setFormItemVisible(result) |
| | | // console.log($this.head_styledef); |
| | | } else { |
| | | $this.$data.detail1_styledef = []; |
| | | $this.$data.detail1_styledef = style_def; |
| | | // console.log($this.$data.detail1_styledef); |
| | | result.forEach(async (attr, key) => { |
| | | 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 style_def = JSON.parse(JSON.stringify(styledef)); |
| | | |
| | | |
| | | $this.detail1_styledef = []; |
| | | $this.detail1_styledef = style_def; |
| | | // console.log($this.detail1_styledef); |
| | | } |
| | | } else { |
| | | uni.showModal({ |
| | |
| | | ontap(item) { //扫码功能 |
| | | //console.log(e.target) |
| | | getApp().onScan((result) => { |
| | | //console.log(result.decodedata); |
| | | //console.log(result); |
| | | uni.hideKeyboard(); |
| | | var $this = this; |
| | | console.log(item); |
| | | item.value = result.decodedata |
| | | item.value = result |
| | | let newVal = item.value.trim() |
| | | if (item.oldvalue != newVal) { |
| | | if (newVal) { |
| | | item.oldvalue = newVal; |
| | | var attr = item.fieldId; |
| | | $this.head_styledef.form.model[attr] = newVal; |
| | |
| | | }, 1000); |
| | | // },500); |
| | | //子数据类扫码区事件脚本 |
| | | var eventid = this.$data.param.Scan_Code.Input_Change_Event.ID; |
| | | var eventid = this.param.Scan_Code.Input_Change_Event.ID; |
| | | if (eventid) { |
| | | var obj_attr = this.head_styledef.form.model; |
| | | // console.log(obj_attr); |
| | |
| | | rclsid: '', |
| | | robjid: '', |
| | | userlogin: '', |
| | | clsid: 'MBOX', //this.$data.param.Sub_Cls.ID, |
| | | clsid: 'MBOX', //this.param.Sub_Cls.ID, |
| | | objid: "", |
| | | attr: req, |
| | | mast_attr: [], |
| | |
| | | let newVal = item.value |
| | | if (typeof item.value == "string") { |
| | | newVal = item.value.trim() |
| | | if (!newVal) |
| | | if (!newVal) { |
| | | item.oldvalue = newVal; |
| | | var attr = item.fieldId; |
| | | $this.head_styledef.form.model[attr] = newVal; |
| | | return |
| | | } |
| | | } |
| | | if (item.oldvalue != newVal) { |
| | | item.oldvalue = newVal; |
| | | var attr = item.fieldId; |
| | | $this.head_styledef.form.model[attr] = newVal; |
| | | |
| | | //子数据类扫码区事件脚本 |
| | | var eventid = this.$data.param.Scan_Code.Input_Change_Event.ID; |
| | | var eventid = this.param.Scan_Code.Input_Change_Event.ID; |
| | | if (eventid) { |
| | | var obj_attr = this.head_styledef.form.model; |
| | | // console.log(obj_attr); |
| | |
| | | rclsid: '', |
| | | robjid: '', |
| | | userlogin: '', |
| | | clsid: 'MBOX', //this.$data.param.Sub_Cls.ID, |
| | | clsid: 'MBOX', //this.param.Sub_Cls.ID, |
| | | objid: "", |
| | | attr: req, |
| | | mast_attr: [], |
| | |
| | | }); |
| | | return; |
| | | } |
| | | this.$data.popupType = 'right' |
| | | this.popupType = 'right' |
| | | // open 方法传入参数 等同在 uni-popup 组件上绑定 type属性 |
| | | this.$refs.popup.open(this.popupType); |
| | | |
| | |
| | | rclsid: '', |
| | | robjid: '', |
| | | userlogin: '', |
| | | clsid: $this.$data.param |
| | | clsid: $this.param |
| | | .DataCls |
| | | .id, |
| | | objid: "", |
| | |
| | | data[0].ID + |
| | | ';' + data[0].Name; |
| | | |
| | | // $this.$data.classAttrList[param.index].Attr[param.iindex].Value=data[0].Name; |
| | | // $this.$data.classAttrList[param.index].Attr[param.iindex].ValID=data[0].ID+';'+data[0].Name; |
| | | // $this.classAttrList[param.index].Attr[param.iindex].Value=data[0].Name; |
| | | // $this.classAttrList[param.index].Attr[param.iindex].ValID=data[0].ID+';'+data[0].Name; |
| | | var callback_eventid = param |
| | | .button_callback |
| | | .trim(); |
| | |
| | | rclsid: "", |
| | | robjid: "", |
| | | userlogin: "", |
| | | clsid: $this.$data |
| | | .param |
| | | clsid: $this.param |
| | | .DataCls.id, |
| | | objid: "", |
| | | attr: param.req, |
| | |
| | | scan_ontap(e) { //扫码区扫码功能 |
| | | //console.log(e.target) |
| | | getApp().onScan((result) => { |
| | | console.log(result.decodedata); |
| | | item.value = result.decodedata |
| | | console.log(result); |
| | | item.value = result |
| | | let newVal = item.value |
| | | if (typeof item.value == "string") { |
| | | newVal = item.value.trim() |
| | | } |
| | | var isflag = true; |
| | | for (var i in this.$data.subPanelList) { |
| | | if (this.$data.subPanelList[i].scanCodeVal == newVal) |
| | | for (var i in this.subPanelList) { |
| | | if (this.subPanelList[i].scanCodeVal == newVal) |
| | | isflag = false; |
| | | } |
| | | //子数据类扫码查询数据 |
| | | if (isflag) { |
| | | uni.hideKeyboard(); |
| | | this.$data.scanCodeVal = newVal; |
| | | var eventid = this.$data.param.Scan_Code.Input_Change_Event.ID; |
| | | this.scanCodeVal = newVal; |
| | | var eventid = this.param.Scan_Code.Input_Change_Event.ID; |
| | | if (eventid) { |
| | | //主数据类属性 |
| | | var obj_attr = this.head_styledef.form.model; |
| | |
| | | rclsid: '', |
| | | robjid: '', |
| | | userlogin: '', |
| | | clsid: 'MBOX', //this.$data.param.Sub_Cls.ID, |
| | | clsid: 'MBOX', //this.param.Sub_Cls.ID, |
| | | objid: "", |
| | | attr: mast_req, |
| | | sub_attr: req, |
| | | inputParamter: [{ |
| | | attr: 'input_3037', |
| | | value: this.$data.scanCodeVal |
| | | value: this.scanCodeVal |
| | | }] |
| | | } |
| | | |
| | |
| | | }, |
| | | scan_onevent(e) { |
| | | // console.log(e.target); |
| | | if (e.target.value) { |
| | | if (e.detail.value) { |
| | | var isflag = true; |
| | | for (var i in this.$data.subPanelList) { |
| | | if (this.$data.subPanelList[i].scanCodeVal == e.target.value) |
| | | for (var i in this.subPanelList) { |
| | | if (this.subPanelList[i].scanCodeVal == e.detail.value) |
| | | isflag = false; |
| | | } |
| | | //子数据类扫码查询数据 |
| | | if (isflag) { |
| | | uni.hideKeyboard(); |
| | | this.$data.scanCodeVal = e.target.value; |
| | | var eventid = this.$data.param.Scan_Code.Input_Change_Event.ID; |
| | | this.scanCodeVal = e.detail.value; |
| | | var eventid = this.param.Scan_Code.Input_Change_Event.ID; |
| | | if (eventid) { |
| | | //主数据类属性 |
| | | var obj_attr = this.head_styledef.form.model; |
| | |
| | | rclsid: '', |
| | | robjid: '', |
| | | userlogin: '', |
| | | clsid: 'MBOX', //this.$data.param.Sub_Cls.ID, |
| | | clsid: 'MBOX', //this.param.Sub_Cls.ID, |
| | | objid: "", |
| | | attr: mast_req, |
| | | sub_attr: req, |
| | | inputParamter: [{ |
| | | attr: 'input_3037', |
| | | value: this.$data.scanCodeVal |
| | | value: this.scanCodeVal |
| | | }] |
| | | } |
| | | |
| | |
| | | |
| | | panel_del(index) { //面板删除 |
| | | var $this = this; |
| | | if (this.$data.subPanelList[index].scanCodeVal == this.$data.scanCodeVal) { |
| | | this.$data.scanCodeVal = ''; |
| | | if (this.subPanelList[index].scanCodeVal == this.scanCodeVal) { |
| | | this.scanCodeVal = ''; |
| | | } |
| | | if (!this.$data.subPanelList[index].ObjID) |
| | | this.$data.subPanelList.splice(index, 1); |
| | | if (!this.subPanelList[index].ObjID) |
| | | this.subPanelList.splice(index, 1); |
| | | else { |
| | | var dataInfo = { |
| | | class_id: this.$data.param.Sub_Cls.ID, |
| | | class_id: this.param.Sub_Cls.ID, |
| | | class_name: '', |
| | | obj_id: this.$data.subPanelList[index].ObjID |
| | | obj_id: this.subPanelList[index].ObjID |
| | | }; |
| | | // console.log(dataInfo); |
| | | // return; |
| | |
| | | // console.log(success); |
| | | uni.hideLoading(); |
| | | |
| | | $this.$data.subPanelList.splice(index, 1); |
| | | $this.subPanelList.splice(index, 1); |
| | | uni.showModal({ |
| | | title: this.translateSys("tip"), |
| | | content: this.translate("delete_success"), |
| | |
| | | }, |
| | | scan_classAttr_extButton(e) { //选择按钮前 |
| | | var $this = this; |
| | | var Before_Select_Event = $this.$data.param.Scan_Code.Before_Select_Event; |
| | | var Before_Select_Event = $this.param.Scan_Code.Before_Select_Event; |
| | | if (!Before_Select_Event) { |
| | | uni.showModal({ |
| | | title: this.translateSys("tip"), |
| | |
| | | value: obj_attr[a] || "", |
| | | })); |
| | | var objects = []; |
| | | var subPanelList = $this.$data.subPanelList; |
| | | var subPanelList = $this.subPanelList; |
| | | for (var s = 0; s < subPanelList.length; s++) { |
| | | var detail_attr = {}; |
| | | subPanelList[s].subClassAttr.form.items.forEach(item => { |
| | |
| | | var req = []; |
| | | var enviroment = { |
| | | 'function': '3000', // 功能点编号 |
| | | cls_id: 'MBOX', //this.$data.param.Sub_Cls.ID, // 功能点从数据类标识 |
| | | cls_id: 'MBOX', //this.param.Sub_Cls.ID, // 功能点从数据类标识 |
| | | 'button': 'top', // top/bottom |
| | | button_name: this.translateSys('add2'), |
| | | edit_dlg: { |
| | | type: 'small', //小窗口 |
| | | class_id: 'MBOX', //this.$data.param.Sub_Cls.ID,//当前数据类id |
| | | class_id: 'MBOX', //this.param.Sub_Cls.ID,//当前数据类id |
| | | }, |
| | | master_cls: { |
| | | cls_name: 'MBOX', //$this.$data.param.Master_Cls.Name, |
| | | cls_name: 'MBOX', //$this.param.Master_Cls.Name, |
| | | obj_attrs: mast_attr |
| | | }, |
| | | sub_cls: { |
| | | cls_name: 'MBOX', //$this.$data.param.Sub_Cls.Name, |
| | | cls_name: 'MBOX', //$this.param.Sub_Cls.Name, |
| | | objects: objects |
| | | } |
| | | |
| | |
| | | rclsid: '', |
| | | robjid: '', |
| | | userlogin: '', |
| | | clsid: 'MBOX', //this.$data.param.Sub_Cls.ID, |
| | | clsid: 'MBOX', //this.param.Sub_Cls.ID, |
| | | objid: "", |
| | | attr: [], |
| | | global_attr: req, |
| | |
| | | // console.log(e.target.dataset); |
| | | var index = e.target.dataset.index; |
| | | var ischeck = e.target.dataset.ischeck; |
| | | var data = this.$data.check_list.items; |
| | | // this.$data.check_list.items=[]; |
| | | if (this.$data.check_list.multiple_choice == "0") { //判断时单选还是多选 |
| | | var data = this.check_list.items; |
| | | // this.check_list.items=[]; |
| | | if (this.check_list.multiple_choice == "0") { //判断时单选还是多选 |
| | | for (var i in data) { |
| | | data[i].check = false; |
| | | } |
| | | } |
| | | data[index].check = ischeck ? false : true; |
| | | this.$data.check_list.items = data; |
| | | this.check_list.items = data; |
| | | |
| | | }, |
| | | popup_cancel(e) { //弹框取消 |
| | |
| | | }, |
| | | popup_sava(e) { //弹框确定 选择按钮后 |
| | | var $this = this; |
| | | var After_Select_Event = $this.$data.param.Scan_Code.After_Select_Event; |
| | | var After_Select_Event = $this.param.Scan_Code.After_Select_Event; |
| | | if (!After_Select_Event) { |
| | | uni.showModal({ |
| | | title: this.translateSys("tip"), |
| | |
| | | }); |
| | | return; |
| | | } |
| | | var items = $this.$data.check_list.items; |
| | | var items = $this.check_list.items; |
| | | var data = []; |
| | | var name = ""; |
| | | for (var i = 0; i < items.length; i++) { |
| | |
| | | value: obj_attr[a] || "", |
| | | })); |
| | | |
| | | $this.$data.scanCodeVal = name; |
| | | $this.scanCodeVal = name; |
| | | var info = { |
| | | eventid: After_Select_Event.ID, |
| | | edtype: "7", |
| | |
| | | var $this = this; |
| | | var enviroment = { |
| | | 'function': '3000', // 功能点编号 |
| | | cls_id: this.$data.param.Master_Cls.ID, // 功能点主数据类标识 |
| | | cls_id: this.param.Master_Cls.ID, // 功能点主数据类标识 |
| | | 'button': 'top', // top/bottom |
| | | button_name: this.translateSys('add2'), |
| | | master: { |
| | | cls_id: this.$data.param.Master_Cls.ID, // button=bottom时 master的cls_id |
| | | cls_id: this.param.Master_Cls.ID, // button=bottom时 master的cls_id |
| | | //obj_id: '' // button=bottom时 master的obj_id |
| | | } |
| | | }; |
| | | enviroment.edit_dlg = { |
| | | type: 'small', //小窗口 |
| | | class_id: this.$data.param.Master_Cls.ID, //当前数据类id |
| | | class_id: this.param.Master_Cls.ID, //当前数据类id |
| | | } |
| | | if (data_attr) { |
| | | enviroment.edit_dlg.form_control = { //所属的表单控件 |
| | |
| | | // var dataInfo = { |
| | | // edtype: info.edtype, eventid: info.eventid, projectid: info.projectid.replace('{','').replace('}',''), |
| | | // rclsid: info.rclsid, robjid: info.robjid, userlogin: info.userlogin, clsid: info.clsid, objid: info.objid, |
| | | // attr: JSON.stringify(info.attr), extinfo: JSON.stringify(enviroment), inputparameter: '', global_attr: JSON.stringify(this.$data.global_attr) |
| | | // attr: JSON.stringify(info.attr), extinfo: JSON.stringify(enviroment), inputparameter: '', global_attr: JSON.stringify(this.global_attr) |
| | | // } |
| | | enviroment = Base64.encode(JSON.stringify(enviroment)); //将字符串转换为base64编码 |
| | | var global_attr = Base64.encode(JSON.stringify(this.$data.global_attr)); //将字符串转换为base64编码 |
| | | var global_attr = Base64.encode(JSON.stringify(this.global_attr)); //将字符串转换为base64编码 |
| | | if (info.dataJson) |
| | | info.dataJson = Base64.encode(JSON.stringify(info.dataJson)); //将字符串转换为base64编码 |
| | | var obj_attr = {}; |
| | |
| | | } |
| | | } |
| | | } |
| | | for (var c = 0; c < $this.$data.head_styledef.form.items.length; c++) { |
| | | var attr = $this.$data.head_styledef.form.items[c]; |
| | | for (var c = 0; c < $this.head_styledef.form.items.length; c++) { |
| | | var attr = $this.head_styledef.form.items[c]; |
| | | // console.log(attr[j].Name+'=='+result[i].attr); |
| | | if (attr.name != 'Layout') { |
| | | if (attr.fieldId == result[i].attr) { |
| | |
| | | } |
| | | |
| | | } |
| | | |
| | | |
| | | } |
| | | } 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; |
| | | // console.log($this.$data.head_styledef); |
| | | var data = action.value; |
| | | $this.setFormItemVisible(data) |
| | | // console.log($this.head_styledef); |
| | | } else if (action.action_type == 'set_global_attr') { |
| | | $this.$data.global_attr = action.value || []; |
| | | $this.global_attr = action.value || []; |
| | | } |
| | | |
| | | } |
| | |
| | | if (data.result) { |
| | | var result = data.result; |
| | | for (var i = 0; i < result.length; i++) { |
| | | for (var c = 0; c < $this.$data.head_styledef.form.items.length; c++) { |
| | | var attr = $this.$data.head_styledef.form.items[c]; |
| | | 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) { |
| | | attr.value = ''; |
| | |
| | | } |
| | | |
| | | var length = 0; |
| | | if (!$this.$data.refdatastore.filter(function(s) { |
| | | if (!$this.refdatastore.filter(function(s) { |
| | | return result[i].attr == s.attr |
| | | }).length) { |
| | | length = 1; |
| | | $this.$data.refdatastore.push(result[i]); |
| | | $this.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; |
| | | for (var j = 0; j < $this.refdatastore.length; j++) { |
| | | if ($this.refdatastore[j].attr == result[i].attr) { |
| | | $this.refdatastore[j].value = result[i].value; |
| | | } |
| | | } |
| | | } |
| | |
| | | }); |
| | | }); |
| | | }, |
| | | setFormItemVisible(attrs) { |
| | | if (!Array.isArray(attrs)) { |
| | | return |
| | | } |
| | | const head_styledef = this.head_styledef |
| | | if (!head_styledef.hiddenIds) { |
| | | head_styledef.hiddenIds = [] |
| | | } |
| | | attrs.forEach((attr) => { |
| | | let index = head_styledef.hiddenIds.findIndex((id) => id == attr.attr); |
| | | if (attr.show) { |
| | | if (index > -1) head_styledef.hiddenIds.splice(index, 1); |
| | | } else { |
| | | if (index == -1) head_styledef.hiddenIds.push(attr.attr); |
| | | } |
| | | }); |
| | | |
| | | this.setData({ |
| | | head_styledef: head_styledef |
| | | }) |
| | | }, |
| | | scan_DataObjRunCustomEvent(info, data_attr) { |
| | | var $this = this; |
| | | var obj_attr = {}; |
| | |
| | | } else { |
| | | enviroment = { |
| | | 'function': '3000', // 功能点编号 |
| | | cls_id: 'MBOX', //this.$data.param.Sub_Cls.ID, // 功能点从数据类标识 |
| | | cls_id: 'MBOX', //this.param.Sub_Cls.ID, // 功能点从数据类标识 |
| | | 'button': 'top', // top/bottom |
| | | button_name: this.translateSys('add2'), |
| | | edit_dlg: { |
| | | type: 'small', //小窗口 |
| | | class_id: 'MBOX', //this.$data.param.Sub_Cls.ID,//当前数据类id |
| | | class_id: 'MBOX', //this.param.Sub_Cls.ID,//当前数据类id |
| | | }, |
| | | master: { |
| | | cls_id: info.clsid, // button=bottom时 master的cls_id |
| | |
| | | }; |
| | | |
| | | } |
| | | var global_attr = this.$data.global_attr; |
| | | var global_attr = this.global_attr; |
| | | if (info.global_attr) { |
| | | global_attr = info.global_attr; |
| | | } |
| | |
| | | if (info.inputParamter) { |
| | | info.inputParamter = Base64.encode(JSON.stringify(info.inputParamter)); //将字符串转换为base64编码 |
| | | } |
| | | var global_attr = Base64.encode(JSON.stringify(this.$data.global_attr)); //将字符串转换为base64编码 |
| | | var global_attr = Base64.encode(JSON.stringify(this.global_attr)); //将字符串转换为base64编码 |
| | | |
| | | if (!info.eventid.includes('{')) info.eventid = '{' + info.eventid + '}'; |
| | | var dataInfo = { |
| | |
| | | var result = action.value; |
| | | for (var i = 0; i < result.length; i++) { |
| | | if (result[i].choice_list) { |
| | | for (var s = 0; s < $this.$data.subPanelList.length; s++) { |
| | | for (var c = 0; c < $this.$data.subPanelList[s] |
| | | for (var s = 0; s < $this.subPanelList.length; s++) { |
| | | for (var c = 0; c < $this.subPanelList[s] |
| | | .subClassAttrList.length; c++) { |
| | | var attr = $this.$data.subPanelList[s].subClassAttrList[c] |
| | | var attr = $this.subPanelList[s].subClassAttrList[c] |
| | | .Attr; |
| | | for (var j = 0; j < attr.length; j++) { |
| | | if (attr[j].Name == result[i].attr) { |
| | |
| | | } |
| | | } |
| | | } |
| | | for (var s = 0; s < $this.$data.subPanelList.length; s++) { |
| | | for (var c = 0; c < $this.$data.subPanelList[s].subClassAttrList |
| | | for (var s = 0; s < $this.subPanelList.length; s++) { |
| | | for (var c = 0; c < $this.subPanelList[s].subClassAttrList |
| | | .length; c++) { |
| | | var attr = $this.$data.subPanelList[s].subClassAttrList[c] |
| | | var attr = $this.subPanelList[s].subClassAttrList[c] |
| | | .Attr; |
| | | for (var j = 0; j < attr.length; j++) { |
| | | console.log(attr[j].Name + '==' + result[i].attr); |
| | |
| | | } |
| | | } |
| | | } |
| | | |
| | | var length = 0; |
| | | |
| | | } |
| | | } else if (action.action_type == 'set_global_attr') { |
| | | $this.$actiontr = action.value || []; |
| | | } else if (action.action_type == 'open_common_dlg') { //打开侧滑弹框 |
| | | var $this = this; |
| | | if (action.value.common_dlg_id == 'check_list') { |
| | | $this.$data.check_list = action.value.config; |
| | | $this.check_list = action.value.config; |
| | | if (action.value.config.appear_style == 'sideslip') //判断是否是侧滑 |
| | | $this.$data.popupType = 'right'; |
| | | $this.popupType = 'right'; |
| | | else |
| | | $this.$data.popupType = 'center' |
| | | $this.popupType = 'center' |
| | | // open 方法传入参数 等同在 uni-popup 组件上绑定 type属性 |
| | | $this.$refs.popup.open($this.$data.popupType); |
| | | $this.$refs.popup.open($this.popupType); |
| | | } |
| | | } else if (action.action_type == 'add_subcls_panel') { //主从数据类扫码查询数据 |
| | | var result = action.value; |
| | | var $this = this; |
| | | var list_1 = JSON.parse(JSON.stringify(this.$data.detail1_styledef)); |
| | | var scanCodeVal = $this.$data.scanCodeVal; |
| | | var list_1 = JSON.parse(JSON.stringify(this.detail1_styledef)); |
| | | var scanCodeVal = $this.scanCodeVal; |
| | | var rand = ''; |
| | | for (var i = 0; i < 5; i++) { //生成5位随机数 |
| | | rand += Math.floor(Math.random() * 10); |
| | |
| | | if (info.attr[0].attr == "mast_input_3037") //判断是主数据类扫码查询数据 |
| | | scanCodeVal = "mast_input_3037-" + rand; |
| | | } |
| | | $this.$data.subPanelList.push({ |
| | | $this.subPanelList.push({ |
| | | scanCodeVal: scanCodeVal, |
| | | subClassAttr: list_1 |
| | | }); |
| | |
| | | active: false |
| | | }); |
| | | for (var i = 0; i < result.length; i++) { |
| | | for (var s = 0; s < $this.$data.subPanelList.length; s++) { |
| | | if ($this.$data.subPanelList[s].scanCodeVal == scanCodeVal) { |
| | | for (var s = 0; s < $this.subPanelList.length; s++) { |
| | | if ($this.subPanelList[s].scanCodeVal == scanCodeVal) { |
| | | if (result[i].attr == "S_ID") |
| | | $this.$data.subPanelList[s].ObjID = result[i].value; |
| | | var _subClassAttr = $this.$data.subPanelList[s].subClassAttr |
| | | $this.subPanelList[s].ObjID = result[i].value; |
| | | var _subClassAttr = $this.subPanelList[s].subClassAttr |
| | | .form.items; |
| | | for (var c = 0; c < _subClassAttr.length; c++) { |
| | | if (_subClassAttr[c].name != 'Layout') { |
| | |
| | | } |
| | | } |
| | | |
| | | // $this.$data.subPanelList[s].subClassAttr=list_1; |
| | | // $this.subPanelList[s].subClassAttr=list_1; |
| | | } |
| | | } |
| | | // console.log($this.$data.subPanelList); |
| | | // console.log($this.subPanelList); |
| | | var length = 0; |
| | | if (!$this.$data.refdatastore.filter(function(s) { |
| | | if (!$this.refdatastore.filter(function(s) { |
| | | return result[i].attr == s.attr |
| | | }).length) { |
| | | length = 1; |
| | | $this.$data.refdatastore.push(result[i]); |
| | | $this.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; |
| | | for (var j = 0; j < $this.refdatastore.length; j++) { |
| | | if ($this.refdatastore[j].attr == result[i].attr) { |
| | | $this.refdatastore[j].value = result[i].value; |
| | | } |
| | | } |
| | | } |
| | |
| | | } |
| | | |
| | | if (data.result) { |
| | | var list_1 = JSON.parse(JSON.stringify(this.$data.detail1_styledef)); |
| | | var scanCodeVal = $this.$data.scanCodeVal; |
| | | var list_1 = JSON.parse(JSON.stringify(this.detail1_styledef)); |
| | | var scanCodeVal = $this.scanCodeVal; |
| | | var rand = ''; |
| | | for (var i = 0; i < 5; i++) { //生成5位随机数 |
| | | rand += Math.floor(Math.random() * 10); |
| | |
| | | if (info.attr[0].attr == "mast_input_3037") //判断是主数据类扫码查询数据 |
| | | scanCodeVal = "mast_input_3037-" + rand; |
| | | } |
| | | $this.$data.subPanelList.push({ |
| | | $this.subPanelList.push({ |
| | | scanCodeVal: scanCodeVal, |
| | | subClassAttr: list_1 |
| | | }); |
| | | var result = data.result; |
| | | for (var i = 0; i < result.length; i++) { |
| | | for (var s = 0; s < $this.$data.subPanelList.length; s++) { |
| | | if ($this.$data.subPanelList[s].scanCodeVal == scanCodeVal) { |
| | | for (var s = 0; s < $this.subPanelList.length; s++) { |
| | | if ($this.subPanelList[s].scanCodeVal == scanCodeVal) { |
| | | if (result[i].attr == "S_ID") |
| | | $this.$data.subPanelList[s].ObjID = result[i].value; |
| | | var _subClassAttr = $this.$data.subPanelList[s].subClassAttr.form |
| | | $this.subPanelList[s].ObjID = result[i].value; |
| | | var _subClassAttr = $this.subPanelList[s].subClassAttr.form |
| | | .items; |
| | | for (var c = 0; c < _subClassAttr.length; c++) { |
| | | if (_subClassAttr[c].name != 'Layout') { |
| | |
| | | } |
| | | |
| | | var length = 0; |
| | | if (!$this.$data.refdatastore.filter(function(s) { |
| | | if (!$this.refdatastore.filter(function(s) { |
| | | return result[i].attr == s.attr |
| | | }).length) { |
| | | length = 1; |
| | | $this.$data.refdatastore.push(result[i]); |
| | | $this.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; |
| | | for (var j = 0; j < $this.refdatastore.length; j++) { |
| | | if ($this.refdatastore[j].attr == result[i].attr) { |
| | | $this.refdatastore[j].value = result[i].value; |
| | | } |
| | | } |
| | | } |
| | |
| | | }); |
| | | }); |
| | | }, |
| | | |
| | | onSave() { |
| | | this.handleButtonClick((done) => { |
| | | this.sava() |
| | | setTimeout(() => { |
| | | done(); // 重置状态 |
| | | }, 1000); |
| | | }); |
| | | }, |
| | | //确定 |
| | | sava() { |
| | | if (this.$data.param.Before_OK_Event) //判断功能点参数是否有确定前脚本 |
| | | this.scan_OKDataObjRunCustomEvent(this.$data.param.Before_OK_Event.ID); |
| | | else if (this.$data.param.After_OK_Event) //判断功能点参数是否有确定后脚本 |
| | | this.scan_OKDataObjRunCustomEvent(this.$data.param.After_OK_Event.ID); |
| | | if (this.param.Before_OK_Event) //判断功能点参数是否有确定前脚本 |
| | | this.scan_OKDataObjRunCustomEvent(this.param.Before_OK_Event.ID); |
| | | else if (this.param.After_OK_Event) //判断功能点参数是否有确定后脚本 |
| | | this.scan_OKDataObjRunCustomEvent(this.param.After_OK_Event.ID); |
| | | else |
| | | uni.navigateBack({ |
| | | delta: 1 |
| | |
| | | })); |
| | | |
| | | var objects = []; |
| | | var subPanelList = $this.$data.subPanelList; |
| | | var subPanelList = $this.subPanelList; |
| | | for (var s = 0; s < subPanelList.length; s++) { |
| | | var detail_attr = {}; |
| | | subPanelList[s].subClassAttr.form.items.forEach(item => { |
| | |
| | | |
| | | var dataJson = { |
| | | master_cls: { |
| | | cls_name: 'MBOX', //$this.$data.param.Master_Cls.Name, |
| | | cls_name: 'MBOX', //$this.param.Master_Cls.Name, |
| | | obj_attrs: req |
| | | }, |
| | | input_3037: $this.$data.scanCodeVal, //扫码内容 |
| | | op_type: $this.$data.param.OperationType, //作业类型定义 |
| | | input_3037: $this.scanCodeVal, //扫码内容 |
| | | op_type: $this.param.OperationType, //作业类型定义 |
| | | sub_cls: { |
| | | cls_name: 'MBOX', //$this.$data.param.Sub_Cls.Name, |
| | | cls_name: 'MBOX', //$this.param.Sub_Cls.Name, |
| | | objects: objects |
| | | } |
| | | }; |
| | | // console.log(JSON.stringify(dataJson)); |
| | | var dataJson = Base64.encode(JSON.stringify(dataJson)); //将字符串转换为base64编码 |
| | | var global_attr = Base64.encode(JSON.stringify(this.$data.global_attr)); //将字符串转换为base64编码 |
| | | var global_attr = Base64.encode(JSON.stringify(this.global_attr)); //将字符串转换为base64编码 |
| | | if (!eventID.includes('{')) eventID = '{' + eventID + '}'; |
| | | var dataInfo = { |
| | | ed_type: "7", |
| | |
| | | }); |
| | | |
| | | var result = data.result; |
| | | if (eventID != $this.$data.param.After_OK_Event.ID) |
| | | $this.scan_OKDataObjRunCustomEvent($this.$data.param.After_OK_Event.ID); |
| | | if (eventID != $this.param.After_OK_Event.ID) |
| | | $this.scan_OKDataObjRunCustomEvent($this.param.After_OK_Event.ID); |
| | | else { |
| | | //刷新 |
| | | uni.redirectTo({ |
| | | url: '../modal/3037_2?param=' + JSON.stringify($this.$data.param) + |
| | | "&titlename=" + $this.$data.title |
| | | url: '../modal/3037_2?param=' + JSON.stringify($this.param) + |
| | | "&titlename=" + $this.title |
| | | }); |
| | | } |
| | | } |
| | |
| | | margin-top: 5px; |
| | | } |
| | | |
| | | // .uni-px-5 { |
| | | // margin: 0; |
| | | // display: inline-block; |
| | | // margin: 0; |
| | | // font-size: 14px; |
| | | // } |
| | | // .uni-select{ |
| | | // border: 1px solid #ccc; |
| | | // border-radius: 0; |
| | | // } |
| | | // .uni-section-content{ |
| | | // display: inline-block; |
| | | // width: 100px; |
| | | // border: 1px solid red; |
| | | // } |
| | | } |
| | | </style> |