jt
2023-03-29 5694a4f834c226351764c004c10c3e55620d96e7
pages/modal/ms_classAttr.vue
@@ -447,7 +447,7 @@
            </view>
         </view>
         <!-- 从数据显示详情区 -->
         <view class="v-panellist" v-for="(subpanel,index) in subPanelList">
         <view class="v-panellist" v-for="(subpanel,iiindex) in subPanelList">
            <view class="v-area" v-for="(subclassattr,index) in subpanel.subClassAttr">
               <div class="class_attr_title" style="display: none;">
                  <div class="title_line"></div>
@@ -465,22 +465,22 @@
                           <div class="text-right" v-if="attr.ext_button==true">
                              <a @tap="classAttr_extButton(index,iindex)" ><i class="ace-icon fa fa-plus-circle"></i></a>
                           </div>
                           <input type="text" :value="attr.Value" @focus="ontap" @blur="onevent" v-if="attr.Height=='1'" :data-index="index" :data-iindex="iindex" :style="{'width':attr.Width.split('%')[0] - 2.5 +'%'}" :disabled="attr.edit?false:true" > <!-- =='flase'?true:false -->
                           <textarea :value="attr.Value" @focus="ontap" @blur="onevent" v-else-if="attr.Height=='2'" :data-index="index":data-iindex="iindex" style="height:60px;" :style="{'width':attr.Width.split('%')[0] - 2.5 +'%'}" :disabled="attr.edit?false:true"></textarea>
                           <textarea :value="attr.Value" @focus="ontap" @blur="onevent" v-else-if="attr.Height=='3'" :data-index="index":data-iindex="iindex" style="height:90px;" :style="{'width':attr.Width.split('%')[0] - 2.5 +'%'}" :disabled="attr.edit?false:true"></textarea>
                           <input type="text" :value="attr.Value" @focus="ontap" @blur="onevent" v-if="attr.Height=='1'" :data-iiindex="iiindex" :data-index="index" :data-iindex="iindex" :style="{'width':attr.Width.split('%')[0] - 2.5 +'%'}" :disabled="attr.edit?false:true" > <!-- =='flase'?true:false -->
                           <textarea :value="attr.Value" @focus="ontap" @blur="onevent" v-else-if="attr.Height=='2'" :data-iiindex="iiindex" :data-index="index":data-iindex="iindex" style="height:60px;" :style="{'width':attr.Width.split('%')[0] - 2.5 +'%'}" :disabled="attr.edit?false:true"></textarea>
                           <textarea :value="attr.Value" @focus="ontap" @blur="onevent" v-else-if="attr.Height=='3'" :data-iiindex="iiindex" :data-index="index":data-iindex="iindex" style="height:90px;" :style="{'width':attr.Width.split('%')[0] - 2.5 +'%'}" :disabled="attr.edit?false:true"></textarea>
                        </view>
                        <view v-if="subclassattr.control_style=='左右布局'">
                           <p class="tx_title2" :style="{'font-family':subclassattr.Font.Name?subclassattr.Font.Name:'initial','font-size':subclassattr.Font.Size?subclassattr.Font.Size:'initial','font-weight':subclassattr.Font.Bold?'bold':'initial','font-style':subclassattr.Font.Tilt?'italic':'initial','text-decoration':subclassattr.Font.Underline?'underline':'initial','background-color':subclassattr.Font.Bk_Color,'color':subclassattr.Font.Text_Color,'width':subclassattr.title_p_wdith +'%'}"><i class="i_tishi" v-if="attr.notempty==true || attr.NotEmpty=='1'">*</i>{{attr.DispName}}:</p>
                           <input type="text" class="attr_field" :value="attr.Value" @focus="ontap" @blur="onevent" v-if="attr.Height=='1'" :data-index="index" :data-iindex="iindex" :style="{'width': attr.Width.split('%')[0] - subclassattr.title_p_wdith - 7 - (attr.ext_button==true?9:0) +'%'}" :disabled="attr.edit?false:true" >
                           <textarea class="attr_field" :value="attr.Value" @focus="ontap" @blur="onevent" v-else-if="attr.Height=='2'" :data-index="index":data-iindex="iindex" style="height:60px;" :style="{'width': attr.Width.split('%')[0] - subclassattr.title_p_wdith - 7 - (attr.ext_button==true?9:0) +'%'}" :disabled="attr.edit?false:true"></textarea>
                           <textarea class="attr_field" :value="attr.Value" @focus="ontap" @blur="onevent" v-else-if="attr.Height=='3'" :data-index="index":data-iindex="iindex" style="height:90px;" :style="{'width': attr.Width.split('%')[0] - subclassattr.title_p_wdith - 7 - (attr.ext_button==true?9:0) +'%'}" :disabled="attr.edit?false:true"></textarea>
                           <input type="text" class="attr_field" :value="attr.Value" @focus="ontap" @blur="onevent" v-if="attr.Height=='1'" :data-iiindex="iiindex" :data-index="index" :data-iindex="iindex" :style="{'width': attr.Width.split('%')[0] - subclassattr.title_p_wdith - 7 - (attr.ext_button==true?9:0) +'%'}" :disabled="attr.edit?false:true" >
                           <textarea class="attr_field" :value="attr.Value" @focus="ontap" @blur="onevent" v-else-if="attr.Height=='2'" :data-iiindex="iiindex" :data-index="index":data-iindex="iindex" style="height:60px;" :style="{'width': attr.Width.split('%')[0] - subclassattr.title_p_wdith - 7 - (attr.ext_button==true?9:0) +'%'}" :disabled="attr.edit?false:true"></textarea>
                           <textarea class="attr_field" :value="attr.Value" @focus="ontap" @blur="onevent" v-else-if="attr.Height=='3'" :data-iiindex="iiindex" :data-index="index":data-iindex="iindex" style="height:90px;" :style="{'width': attr.Width.split('%')[0] - subclassattr.title_p_wdith - 7 - (attr.ext_button==true?9:0) +'%'}" :disabled="attr.edit?false:true"></textarea>
                           <div class="text-right2" v-if="attr.ext_button==true">
                              <a @tap="classAttr_extButton(index,iindex)" ><i class="ace-icon fa fa-plus-circle"></i></a>
                           </div>
                        </view>
                     </view>
                     <view class="form-group" v-if="attr.Type=='布尔值'" :style="{'display':attr.hidden == 'True'?'none':''}">
                        <checkbox-group class="check_rememberPwd" @change="oncheck" :data-ischeck="attr.Value" :data-index="index" :data-iindex="iindex" :style="{'margin-left': subclassattr.control_style=='左右布局'?subclassattr.title_p_wdith+2 +'%':'10rpx'}">
                        <checkbox-group class="check_rememberPwd" @change="oncheck" :data-ischeck="attr.Value" :data-iiindex="iiindex" :data-index="index" :data-iindex="iindex" :style="{'margin-left': subclassattr.control_style=='左右布局'?subclassattr.title_p_wdith+2 +'%':'10rpx'}">
                           <label>
                              <checkbox :value="attr.Value" :checked="attr.Value"/>
                              <text>{{attr.DispName}}<i class="i_tishi" v-if="attr.notempty==true || attr.NotEmpty=='1'">*</i></text>
@@ -490,13 +490,13 @@
                     <view class="form-group" v-if="attr.Type=='日期' || attr.Type=='时间'" :style="{'display':attr.hidden == 'True'?'none':''}">
                        <view v-if="subclassattr.control_style=='上下布局'">
                           <text class="tx_title" :style="{'font-family':subclassattr.Font.Name?subclassattr.Font.Name:'initial','font-size':subclassattr.Font.Size?subclassattr.Font.Size:'initial','font-weight':subclassattr.Font.Bold?'bold':'initial','font-style':subclassattr.Font.Tilt?'italic':'initial','text-decoration':subclassattr.Font.Underline?'underline':'initial','background-color':subclassattr.Font.Bk_Color,'color':subclassattr.Font.Text_Color,'width':subclassattr.title_p_wdith+'%'}"><i class="i_tishi" v-if="attr.notempty==true">*</i>{{attr.DispName}}:</text>
                           <picker mode="date" :value="attr.Value" @change="ondateTime" class="date_iput" :data-index="index" :data-iindex="iindex" :style="{'width':attr.Width.split('%')[0] - 2.5 +'%'}">
                           <picker mode="date" :value="attr.Value" @change="ondateTime" class="date_iput" :data-iiindex="iiindex" :data-index="index" :data-iindex="iindex" :style="{'width':attr.Width.split('%')[0] - 2.5 +'%'}">
                              <view class="picker">{{attr.Value}}</view>
                           </picker>
                        </view>
                        <view v-if="subclassattr.control_style=='左右布局'">
                           <p class="tx_title2" :style="{'font-family':subclassattr.Font.Name?subclassattr.Font.Name:'initial','font-size':subclassattr.Font.Size?subclassattr.Font.Size:'initial','font-weight':subclassattr.Font.Bold?'bold':'initial','font-style':subclassattr.Font.Tilt?'italic':'initial','text-decoration':subclassattr.Font.Underline?'underline':'initial','background-color':subclassattr.Font.Bk_Color,'color':subclassattr.Font.Text_Color,'width':subclassattr.title_p_wdith+'%'}"><i class="i_tishi" v-if="attr.notempty==true || attr.NotEmpty=='1'">*</i>{{attr.DispName}}:</p>
                           <picker mode="date" :value="attr.Value" @change="ondateTime" class="date_iput attr_field" :data-index="index" :data-iindex="iindex" :style="{'width': attr.Width.split('%')[0] - subclassattr.title_p_wdith - 7 +'%'}">
                           <picker mode="date" :value="attr.Value" @change="ondateTime" class="date_iput attr_field" :data-iiindex="iiindex" :data-index="index" :data-iindex="iindex" :style="{'width': attr.Width.split('%')[0] - subclassattr.title_p_wdith - 7 +'%'}">
                              <view class="picker">{{attr.Value}}</view>
                           </picker>
                        </view>
@@ -504,17 +504,17 @@
                     <view class="form-group" v-if="attr.Type=='字典' || attr.Type=='字典-字符串'" :style="{'display':attr.hidden == 'True'?'none':''}">
                        <view v-if="subclassattr.control_style=='上下布局'">
                           <text class="tx_title" :style="{'font-family':subclassattr.Font.Name?subclassattr.Font.Name:'initial','font-size':subclassattr.Font.Size?subclassattr.Font.Size:'initial','font-weight':subclassattr.Font.Bold?'bold':'initial','font-style':subclassattr.Font.Tilt?'italic':'initial','text-decoration':subclassattr.Font.Underline?'underline':'initial','background-color':subclassattr.Font.Bk_Color,'color':subclassattr.Font.Text_Color,'width':subclassattr.title_p_wdith+'%'}"><i class="i_tishi" v-if="attr.notempty==true || attr.NotEmpty=='1'">*</i>{{attr.DispName}}:</text>
                           <picker class="section_iput" @change="onchange" :range="attr.dictitem" range-key="CN_S_NAME" v-if="attr.select==false" :data-index="index" :data-iindex="iindex" :style="{'width':attr.Width.split('%')[0] - 2.5 +'%'}" :disabled="attr.edit?false:true">
                           <picker class="section_iput" @change="onchange" :range="attr.dictitem" range-key="CN_S_NAME" v-if="attr.select==false" :data-iiindex="iiindex" :data-index="index" :data-iindex="iindex" :style="{'width':attr.Width.split('%')[0] - 2.5 +'%'}" :disabled="attr.edit?false:true">
                              <label class="">{{ attr.Value }}</label>
                           </picker>
                           <select-cy :value="attr.Value" :name="attr.Name" :options="attr.dictitem" showClearIcon="true" @change="onchange2" v-else-if="attr.select==true" :data-index="index" :data-iindex="iindex" :style="{'width':attr.Width.split('%')[0] - 2.5 +'%'}" :disabled="attr.edit?false:true"></select-cy>
                           <select-cy :value="attr.Value" :name="attr.Name" :options="attr.dictitem" showClearIcon="true" @change="sub_onchange2" v-else-if="attr.select==true" :data-iiindex="iiindex" :data-index="index" :data-iindex="iindex" :style="{'width':attr.Width.split('%')[0] - 2.5 +'%'}" :disabled="attr.edit?false:true"></select-cy>
                        </view>
                        <view v-if="subclassattr.control_style=='左右布局'">
                           <p class="tx_title2" :style="{'font-family':subclassattr.Font.Name?subclassattr.Font.Name:'initial','font-size':subclassattr.Font.Size?subclassattr.Font.Size:'initial','font-weight':subclassattr.Font.Bold?'bold':'initial','font-style':subclassattr.Font.Tilt?'italic':'initial','text-decoration':subclassattr.Font.Underline?'underline':'initial','background-color':subclassattr.Font.Bk_Color,'color':subclassattr.Font.Text_Color,'width':subclassattr.title_p_wdith+'%'}"><i class="i_tishi" v-if="attr.notempty==true || attr.NotEmpty=='1'">*</i>{{attr.DispName}}:</p>
                           <picker class="section_iput attr_field" @change="onchange" :range="attr.dictitem" range-key="CN_S_NAME" v-if="attr.select==false" :data-index="index" :data-iindex="iindex" :style="{'width': attr.Width.split('%')[0] - subclassattr.title_p_wdith - 7 +'%'}">
                           <picker class="section_iput attr_field" @change="onchange" :range="attr.dictitem" range-key="CN_S_NAME" v-if="attr.select==false" :data-iiindex="iiindex" :data-index="index" :data-iindex="iindex" :style="{'width': attr.Width.split('%')[0] - subclassattr.title_p_wdith - 7 +'%'}">
                              <label class="">{{ attr.Value }}</label>
                           </picker>
                           <select-cy :value="attr.Value" :name="attr.Name" :options="attr.dictitem" showClearIcon="true" @change="onchange2" v-else-if="attr.select==true" :data-index="index" :data-iindex="iindex" :style="{'width':attr.Width}"></select-cy>
                           <select-cy :value="attr.Value" :name="attr.Name" :options="attr.dictitem" showClearIcon="true" @change="sub_onchange2" v-else-if="attr.select==true" :data-iiindex="iiindex" :data-index="index" :data-iindex="iindex" :style="{'width':attr.Width}"></select-cy>
                           
                        </view>
                     </view>
@@ -525,21 +525,21 @@
                              <a @tap="classAttr_AddRef" :data-classid="attr.RelCls.split('|')[0]" :data-classname="attr.RelCls.split('|')[1]" ><i class="ace-icon fa fa-plus-circle"></i></a>
                           </div>
                           <div class="text-right" v-if="attr.Type=='引用对象(多个)'">
                              <picker class="select" @change="classAttr_AddRef" :range="attr.RelClsList" range-key="name" :data-index="index" :data-iindex="iindex">
                              <picker class="select" @change="classAttr_AddRef" :range="attr.RelClsList" range-key="name" :data-iiindex="iiindex" :data-index="index" :data-iindex="iindex">
                                 <label class="">{{ attr.Value }}</label>
                              </picker>
                              <a class="class_attr_add_ref"><i class="ace-icon fa fa-plus-circle"></i></a>
                           </div>
                           <input type="text" :data-index="index" :data-iindex="iindex" :style="{'width':attr.Width}" disabled="true" >
                           <input type="text" :data-iiindex="iiindex" :data-index="index" :data-iindex="iindex" :style="{'width':attr.Width}" disabled="true" >
                        </view>
                        <view v-if="subclassattr.control_style=='左右布局'">
                           <p class="tx_title2" :style="{'font-family':subclassattr.Font.Name?subclassattr.Font.Name:'initial','font-size':subclassattr.Font.Size?subclassattr.Font.Size:'initial','font-weight':subclassattr.Font.Bold?'bold':'initial','font-style':subclassattr.Font.Tilt?'italic':'initial','text-decoration':subclassattr.Font.Underline?'underline':'initial','background-color':subclassattr.Font.Bk_Color,'color':subclassattr.Font.Text_Color,'width':subclassattr.title_p_wdith+'%'}"><i class="i_tishi" v-if="attr.notempty==true || attr.NotEmpty=='1'">*</i>{{attr.DispName}}:</p>
                           <input type="text" class="attr_field" :data-index="index" :data-iindex="iindex" :style="{'width': attr.Width.split('%')[0] - subclassattr.title_p_wdith - 16 +'%'}" disabled="true" >
                           <input type="text" class="attr_field" :data-iiindex="iiindex" :data-index="index" :data-iindex="iindex" :style="{'width': attr.Width.split('%')[0] - subclassattr.title_p_wdith - 16 +'%'}" disabled="true" >
                           <div class="text-right2" v-if="attr.Type=='引用对象(单个)'">
                              <a @tap="classAttr_AddRef" :data-classid="attr.RelCls.split('|')[0]" :data-classname="attr.RelCls.split('|')[1]" ><i class="ace-icon fa fa-plus-circle"></i></a>
                           </div>
                           <div class="text-right2" v-if="attr.Type=='引用对象(多个)'">
                              <picker class="select" @change="classAttr_AddRef" :range="attr.RelClsList" range-key="name" :data-index="index" :data-iindex="iindex">
                              <picker class="select" @change="classAttr_AddRef" :range="attr.RelClsList" range-key="name" :data-iiindex="iiindex" :data-index="index" :data-iindex="iindex">
                                 <label class="">{{ attr.Value }}</label>
                              </picker>
                              <a class="class_attr_add_ref"><i class="ace-icon fa fa-plus-circle"></i></a>
@@ -581,21 +581,21 @@
                     <view class="form-group" v-if="attr.Type=='编码'" :style="{'display':attr.hidden == 'True'?'none':''}">
                        <view v-if="subclassattr.control_style=='上下布局'">
                           <text class="tx_title" :style="{'font-family':subclassattr.Font.Name?subclassattr.Font.Name:'initial','font-size':subclassattr.Font.Size?subclassattr.Font.Size:'initial','font-weight':subclassattr.Font.Bold?'bold':'initial','font-style':subclassattr.Font.Tilt?'italic':'initial','text-decoration':subclassattr.Font.Underline?'underline':'initial','background-color':subclassattr.Font.Bk_Color,'color':subclassattr.Font.Text_Color,'width':subclassattr.title_p_wdith+'%'}"><i class="i_tishi" v-if="attr.notempty==true || attr.NotEmpty=='1'">*</i>{{attr.DispName}}:</text>
                           <input type="text" :data-index="index" :data-iindex="iindex" :style="{'width':attr.Width}" :disabled="attr.edit?false:true" >
                           <input type="text" :data-iiindex="iiindex" :data-index="index" :data-iindex="iindex" :style="{'width':attr.Width}" :disabled="attr.edit?false:true" >
                        </view>
                        <view v-if="subclassattr.control_style=='左右布局'">
                           <p class="tx_title2" :style="{'font-family':subclassattr.Font.Name?subclassattr.Font.Name:'initial','font-size':subclassattr.Font.Size?subclassattr.Font.Size:'initial','font-weight':subclassattr.Font.Bold?'bold':'initial','font-style':subclassattr.Font.Tilt?'italic':'initial','text-decoration':subclassattr.Font.Underline?'underline':'initial','background-color':subclassattr.Font.Bk_Color,'color':subclassattr.Font.Text_Color,'width':subclassattr.title_p_wdith+'%'}"><i class="i_tishi" v-if="attr.notempty==true || attr.NotEmpty=='1'">*</i>{{attr.DispName}}:</p>
                           <input type="text" class="attr_field" :data-index="index" :data-iindex="iindex" :style="{'width': attr.Width.split('%')[0] - subclassattr.title_p_wdith - 7 +'%'}" :disabled="attr.edit?false:true" >
                           <input type="text" class="attr_field" :data-iiindex="iiindex" :data-index="index" :data-iindex="iindex" :style="{'width': attr.Width.split('%')[0] - subclassattr.title_p_wdith - 7 +'%'}" :disabled="attr.edit?false:true" >
                        </view>
                     </view>
                     <view class="form-group" v-if="attr.Type=='省市区'" :style="{'display':attr.hidden == 'True'?'none':''}">
                        <view v-if="subclassattr.control_style=='上下布局'">
                           <text class="tx_title" :style="{'font-family':subclassattr.Font.Name?subclassattr.Font.Name:'initial','font-size':subclassattr.Font.Size?subclassattr.Font.Size:'initial','font-weight':subclassattr.Font.Bold?'bold':'initial','font-style':subclassattr.Font.Tilt?'italic':'initial','text-decoration':subclassattr.Font.Underline?'underline':'initial','background-color':subclassattr.Font.Bk_Color,'color':subclassattr.Font.Text_Color,'width':subclassattr.title_p_wdith+'%'}"><i class="i_tishi" v-if="attr.notempty==true || attr.NotEmpty=='1'">*</i>{{attr.DispName}}:</text>
                           <pickerAddress class="date_iput" @change="addresschange" :data-index="index" :data-iindex="iindex" :style="{'width':attr.Width}" >{{attr.Value}}</pickerAddress>
                           <pickerAddress class="date_iput" @change="addresschange" :data-iiindex="iiindex" :data-index="index" :data-iindex="iindex" :style="{'width':attr.Width}" >{{attr.Value}}</pickerAddress>
                        </view>
                        <view v-if="subclassattr.control_style=='左右布局'">
                           <p class="tx_title2" :style="{'font-family':subclassattr.Font.Name?subclassattr.Font.Name:'initial','font-size':subclassattr.Font.Size?subclassattr.Font.Size:'initial','font-weight':subclassattr.Font.Bold?'bold':'initial','font-style':subclassattr.Font.Tilt?'italic':'initial','text-decoration':subclassattr.Font.Underline?'underline':'initial','background-color':subclassattr.Font.Bk_Color,'color':subclassattr.Font.Text_Color,'width':subclassattr.title_p_wdith+'%'}"><i class="i_tishi" v-if="attr.notempty==true || attr.NotEmpty=='1'">*</i>{{attr.DispName}}:</p>
                           <pickerAddress class="date_iput attr_field" @change="addresschange" :data-index="index" :data-iindex="iindex" :style="{'width': attr.Width.split('%')[0] - subclassattr.title_p_wdith - 7 +'%'}">{{attr.Value}}</pickerAddress>
                           <pickerAddress class="date_iput attr_field" @change="addresschange" :data-iiindex="iiindex" :data-index="index" :data-iindex="iindex" :style="{'width': attr.Width.split('%')[0] - subclassattr.title_p_wdith - 7 +'%'}">{{attr.Value}}</pickerAddress>
                        </view>
                     </view>
                  </div>
@@ -804,6 +804,11 @@
            getApp().onScan((result)=>{
               //console.log(result.decodedata);
               var isVal =this.$data.classAttrList[e.target.dataset['index']].Attr[e.target.dataset['iindex']].Value;
               // if(!isVal){
               //    this.$data.subPanelList[e.target.dataset['iiindex']].subClassAttr[e.target.dataset['index']].Attr[e.target.dataset['iindex']].Value=result.decodedata;
               //    var isVald =this.$data.subPanelList[e.target.dataset['iiindex']].subClassAttr[e.target.dataset['index']].Attr[e.target.dataset['iindex']].Value;
               //    return;
               // }
               //主数据类扫码查询数据
               if (isVal!=result.decodedata) {
                  this.$data.classAttrList[e.target.dataset['index']].Attr[e.target.dataset['iindex']].Value=result.decodedata;
@@ -813,6 +818,53 @@
                  if (eventid) {
                       var req=[];
                       var attrlist = this.$data.classAttrList;  //主数据类属性
                       for (var i = 0; i < attrlist.length; i++) {
                          var attr = attrlist[i].Attr;
                          for (var j = 0; j < attr.length; j++) {
                             var ar = attr[j];
                             if(ar.Type=='引用对象(多个)')
                                if(ar.Value=='请') ar.Value='';
                             if(ar.Type=='引用人员' || ar.Type=='引用项目')
                                req.push({ attr: ar.Name, value: ar.ValID ?ar.ValID :'' });
                             else if(ar.Type=='布尔值')
                                req.push({ attr: ar.Name, value: ar.Value?'1':'0'});
                             else
                                req.push({ attr: ar.Name, value: ar.Value ?ar.Value :''});
                          }
                       }
                       var info = {
                           eventid: eventid,
                           edtype: "7",//"0",
                           projectid: '',
                           rclsid: '',
                           robjid: '',
                           userlogin: '',
                           clsid: 'MBOX',//this.$data.param.Sub_Cls.ID,
                           objid: "",
                           attr: req,
                        mast_attr: [],
                        inputParamter:[{ attr: 'mast_input_3037', value: result.decodedata }]
                       }
                       this.scan_DataObjRunCustomEvent(info, "");
                   }
               }
            })
         },
         subontap(e){ //扫码功能
            //console.log(e.target)
            getApp().onScan((result)=>{
               //console.log(result.decodedata);
               var isVal =this.$data.subClassAttrList[e.target.dataset['index']].Attr[e.target.dataset['iindex']].Value;
               //主数据类扫码查询数据
               if (isVal!=result.decodedata) {
                  this.$data.subClassAttrList[e.target.dataset['index']].Attr[e.target.dataset['iindex']].Value=result.decodedata;
                  uni.hideKeyboard();
                  //子数据类扫码区事件脚本
                  var eventid = this.$data.param.Scan_Code.Input_Change_Event.ID;
                  if (eventid) {
                       var req=[];
                       var attrlist = this.$data.subClassAttrList;  //主数据类属性
                       for (var i = 0; i < attrlist.length; i++) {
                          var attr = attrlist[i].Attr;
                          for (var j = 0; j < attr.length; j++) {
@@ -983,11 +1035,22 @@
         },
         onarrow(index,open){
            // console.log(index+'--'+open);
            this.$data.classAttrList[index].Open=open==true?false:true;
            var data_attr=this.$data.classAttrList[e.target.dataset['index']].Attr[e.target.dataset['iindex']].Open;
            if(!data_attr){
               this.$data.subPanelList[e.target.dataset['iiindex']].subClassAttr[e.target.dataset['index']].Attr[e.target.dataset['iindex']].Value=open==true?false:true;
               return;
            }
            this.$data.classAttrList[e.target.dataset['iiindex']].subClassAttr[index].Open=open==true?false:true;
         },
         ondateTime(e) {
            //console.log(e.target)
            var data_attr=this.$data.classAttrList[e.target.dataset['index']].Attr[e.target.dataset['iindex']].Value;
            if(!data_attr){
               this.$data.subPanelList[e.target.dataset['iiindex']].subClassAttr[e.target.dataset['index']].Attr[e.target.dataset['iindex']].Value=e.target.value;
               return;
            }
            this.$data.classAttrList[e.target.dataset['index']].Attr[e.target.dataset['iindex']].Value=e.target.value;
         },
         onchange(e) {
            console.log(e.target);
@@ -1106,9 +1169,131 @@
            
            
         },
         sub_onchange(e) {
            console.log(e.target);
            var value=this.$data.subPanelList[e.target.dataset['iiindex']].subClassAttr[e.target.dataset['index']].Attr[e.target.dataset['iindex']].dictitem[e.target.value];
            var data_attr = this.$data.subPanelList[e.target.dataset['iiindex']].subClassAttr[e.target.dataset['index']].Attr[e.target.dataset['iindex']];
            console.log(data_attr);
            if (value.Name != data_attr.Value) {
               this.$data.subPanelList[e.target.dataset['iiindex']].subClassAttr[e.target.dataset['index']].Attr[e.target.dataset['iindex']].Value=value.Name;
               console.log(this.$data.subPanelList[e.target.dataset['iiindex']].subClassAttr[e.target.dataset['index']].Attr[e.target.dataset['iindex']].Value);
               var eventid = this.$data.subPanelList[e.target.dataset['iiindex']].subClassAttr[e.target.dataset['index']].Attr[e.target.dataset['iindex']].action;
               if (eventid) {
                    // self.event_no_sub = 1;
                    var req=[];
                    var attrlist = this.$data.subPanelList[e.target.dataset['iiindex']].subClassAttr;
                    for (var i = 0; i < attrlist.length; i++) {
                       var attr = attrlist[i].Attr;
                       for (var j = 0; j < attr.length; j++) {
                          var ar = attr[j];
                          if(ar.Type=='引用对象(多个)')
                             if(ar.Value=='请') ar.Value='';
                          if(ar.Type=='引用人员' || ar.Type=='引用项目')
                             req.push({ attr: ar.Name, val: ar.ValID ?ar.ValID :'' });
                          else if(ar.Type=='布尔值')
                           req.push({ attr: ar.Name, val: ar.Value?'1':'0'});
                          else
                             req.push({ attr: ar.Name, val: ar.Value ?ar.Value :''});
                       }
                    }
                    var info = {
                        eventid: eventid,
                        edtype: "0",
                        projectid: '',
                        rclsid: '',
                        robjid: '',
                        userlogin: '',
                        clsid: this.$data.param.Sub_Cls.ID,
                        objid: "",
                        attr: req,
                    }
                    this.DataObjRunCustomEvent(info);
                }
            }
         },
         sub_onchange2(item,value,delvalue) {
            // console.log(item);
            // console.log(value);
            // console.log(delvalue);
            var subClassAttr = this.$data.subPanelList[e.target.dataset['iiindex']].subClassAttr;
            if(item.length==0){ //为空时,清空属性value
               var index ,iindex,dindex=0;
               for(var i in subClassAttr){
                  for(var j in subClassAttr[i].Attr){
                     for(var d in subClassAttr[i].Attr[j].dictitem){
                        if(delvalue[0].Name == subClassAttr[i].Attr[j].dictitem[d].Name){
                           subClassAttr[i].Attr[j].Value="";
                        }
                     }
                  }
               }
            }
            for(var v in item){
               var index ,iindex,dindex=0;
               for(var i in subClassAttr){
                  for(var j in subClassAttr[i].Attr){
                     for(var d in subClassAttr[i].Attr[j].dictitem){
                        if(item[v].Name == subClassAttr[i].Attr[j].dictitem[d].Name){
                           index=i;iindex=j;dindex=d;
                        }
                     }
                  }
               }
               var itemvalue = item[v];
               var data_attr = subClassAttr[index].Attr[iindex];
               console.log(data_attr);
               if (itemvalue.Name != data_attr.Value) {
                  subClassAttr[index].Attr[iindex].Value=value;
                  console.log(subClassAttr[index].Attr[iindex].Value);
                  var eventid = subClassAttr[index].Attr[iindex].action;
                  if (eventid) {
                       // self.event_no_sub = 1;
                       var req=[];
                       var attrlist = subClassAttr;
                       for (var i = 0; i < attrlist.length; i++) {
                          var attr = attrlist[i].Attr;
                          for (var j = 0; j < attr.length; j++) {
                             var ar = attr[j];
                             if(ar.Type=='引用对象(多个)')
                                if(ar.Value=='请') ar.Value='';
                             if(ar.Type=='引用人员' || ar.Type=='引用项目')
                                req.push({ attr: ar.Name, val: ar.ValID ?ar.ValID :'' });
                             else if(ar.Type=='布尔值')
                              req.push({ attr: ar.Name, val: ar.Value?'1':'0'});
                             else if(ar.Type=='字典' || ar.Type=='字典-字符串')
                              req.push({ attr: ar.Name, val: itemvalue.Name});
                             else
                                req.push({ attr: ar.Name, val: ar.Value ?ar.Value :''});
                          }
                       }
                       var info = {
                           eventid: eventid,
                           edtype: "0",
                           projectid: '',
                           rclsid: '',
                           robjid: '',
                           userlogin: '',
                           clsid: this.$data.param.Sub_Cls.ID,
                           objid: "",
                           attr: req,
                       }
                       this.DataObjRunCustomEvent(info);
                   }
               }
            }
         },
         onevent(e){
            // console.log(e.target);
            var data_attr = this.$data.classAttrList[e.target.dataset['index']].Attr[e.target.dataset['iindex']];
            if(!data_attr){
               this.$data.subPanelList[e.target.dataset['iiindex']].subClassAttr[e.target.dataset['index']].Attr[e.target.dataset['iindex']].Value=e.target.value;
               return;
            }
            // console.log(data_attr);
            if (e.target.value != data_attr.Value) {
               this.$data.classAttrList[e.target.dataset['index']].Attr[e.target.dataset['iindex']].Value=e.target.value;
@@ -1156,6 +1341,10 @@
            // console.log(e.target);
            var ischecked = e.target.dataset.ischeck?false:true;
            var data_attr = this.$data.classAttrList[e.target.dataset['index']].Attr[e.target.dataset['iindex']];
            if(!data_attr){
               this.$data.subPanelList[e.target.dataset['iiindex']].subClassAttr[e.target.dataset['index']].Attr[e.target.dataset['iindex']].Value=ischecked;
               return;
            }
            // console.log(data_attr);
            if (ischecked != data_attr.Value) {
               this.$data.classAttrList[e.target.dataset['index']].Attr[e.target.dataset['iindex']].Value=ischecked;
@@ -1203,7 +1392,7 @@
         addresschange(e) {
             // console.log(e.target);
             console.log(e.data.join(';'))
            this.$data.classAttrList[e.target.dataset['index']].Attr[e.target.dataset['iindex']].Value=e.data.join(';');
            this.$data.subClassAttrList[e.target.dataset['index']].Attr[e.target.dataset['iindex']].Value=e.data.join(';');
         },
         classAttr_extButton(index,iindex){
            var $this = this;