Merge branch 'master' of http://47.92.229.245:8089/r/OlyMEBG
| | |
| | | |
| | | <div class="slds-truncate"> |
| | | <a href="{!'/partner/s/agency-contact/' + item.Id}" style="position: relative;"> |
| | | <span class="encrypt">{!item.Name}</span> |
| | | <span class="decrypt">{!item.awsdata.name}</span> |
| | | {!item.Name} |
| | | </a> |
| | | </div> |
| | | </th> |
| | |
| | | controller="NewAgencyContactController"> |
| | | |
| | | <aura:attribute name = "recordId" type = "Id" default = ""/> |
| | | <aura:attribute name="title" type="string"/> |
| | | <aura:handler name="init" value="{!this}" action="{!c.doInit}" /> |
| | | <aura:attribute name="layout" type="LayoutDescriberHelper.LayoutWrapper"/> |
| | | <aura:attribute name="record_data" type="Map"/> |
| | |
| | | <aura:attribute name="showSpinner" type="Boolean" default = "False"/> |
| | | <aura:attribute name="staticResource" type="Map"/> |
| | | <aura:attribute name="pi_fields_map" type="Map"/> |
| | | <aura:attribute name="isClone" type="Boolean" default = "False"/> |
| | | <ltng:require scripts="{! $Resource.AWSService+'/AWSService.js' }" /> |
| | | <ltng:require scripts="{! $Resource.jquery183minjs }" /> |
| | | |
| | |
| | | <!-- header --> |
| | | <header class="slds-modal__header"> |
| | | <h2 id="modal-heading-01" class="slds-modal__title slds-hyphenate"> |
| | | Create Agency Contact |
| | | {!v.title} |
| | | </h2> |
| | | </header> |
| | | |
| | |
| | | if(!rid){ |
| | | pid = window.location.href.replace("https://","").split("/")[4]; |
| | | } |
| | | let isClone = component.get('v.isClone'); |
| | | if(!rid || isClone){ |
| | | component.set('v.title',$A.get("$Label.c.New")+'.客户人员'); |
| | | }else{ |
| | | component.set('v.title',$A.get("$Label.c.Edit")+'.客户人员'); |
| | | } |
| | | |
| | | let record_type_id = null; |
| | | let pageref = component.get("v.pageReference") |
| | | if(!record_type_id && pageref){ |
| | | record_type_id = pageref.state.recordTypeId |
| | | } |
| | | component.set("v.showSpinner", true); |
| | | helper.CallBackAction(component,'Init',{ |
| | | rid : rid, |
| | | pid : pid, |
| | | //rid : component.get('v.recordId'), |
| | | record_type_id : component.get("v.pageReference").state.recordTypeId, |
| | | record_type_id : record_type_id, |
| | | },function(data){ |
| | | component.set("v.showSpinner", false); |
| | | |
| | |
| | | |
| | | let staticResource = component.get('v.staticResource'); |
| | | let record_id = component.get('v.recordId'); |
| | | let record_type_id = component.get('v.recordTypeId'); |
| | | |
| | | let isClone = component.get('v.isClone'); |
| | | let url = staticResource.newUrl; |
| | | let payloadPi = {}; |
| | | if (record_id) { |
| | | if (record_id && !isClone) { |
| | | url = staticResource.updateUrl |
| | | payloadPi['dataId'] = component.get('v.record_data').AWS_Data_Id__c; |
| | | } |
| | |
| | | |
| | | let obj = result.object[0]; |
| | | let data = {}; |
| | | if(record_id){ |
| | | if(record_id && !isClone){ |
| | | data.Id = record_id; |
| | | }else{ |
| | | data.AWS_Data_Id__c = obj.dataId; |
| | |
| | | "type" : "success" |
| | | }); |
| | | |
| | | if (record_id){ |
| | | if (record_id && !isClone){ |
| | | |
| | | $A.get("e.force:closeQuickAction").fire(); |
| | | $A.get('e.force:refreshView').fire(); |
| | |
| | | <aura:attribute name="confirm_status" type="Integer" default="0" /> |
| | | <aura:attribute name="modal_confirm_title" type="String" /> |
| | | <aura:attribute name="modal_confirm_text" type="String" /> |
| | | <!-- fy --> |
| | | <aura:attribute name="UserProType" type="String" /> |
| | | <!-- 科室 --> |
| | | <aura:attribute name="opportunity_cfilter" type="String" /> |
| | | <aura:attribute name="update_select_report_data_id" type="String" default="" /> |
| | |
| | | <aura:attribute name="NumOfRecords" type="Integer" default="1000" /> |
| | | <aura:attribute name="showMain" type="Boolean" default="true" /> |
| | | <aura:attribute name="IsEventDefault" type="Boolean" default="true" /> |
| | | |
| | | <aura:attribute name="PIConfig" type="Map"/> |
| | | |
| | | <ltng:require scripts="{! $Resource.AWSService+'/AWSService.js' }" /> |
| | | <ltng:require scripts="{! $Resource.jquery183minjs }" /> |
| | | |
| | | <!-- 批量添加周报 end--> |
| | | <!--ロード中...--> |
| | | <aura:renderIf isTrue="{!v.login}"> |
| | |
| | | <td role="gridcell" class="slds-cell-edit"> |
| | | <span class="slds-grid slds-grid--align-spread"> |
| | | <span class="slds-truncate" |
| | | title="{!item.doctor2__r.Name}">{!item.doctor2__r.Name}</span> |
| | | title="{!item.doctor2__r.Name}"> |
| | | <span class="encrypt">{!item.doctor2__r.Name}</span> |
| | | <span class="decrypt">{!item.doctor2__r.awsdata.name}</span> |
| | | </span> |
| | | </span> |
| | | </td> |
| | | <td role="gridcell" class="slds-cell-edit"> |
| | |
| | | } |
| | | .THIS .none{ |
| | | display:none; |
| | | } |
| | | |
| | | .THIS tr .decrypt{ |
| | | display: none; |
| | | } |
| | | |
| | | .THIS tr:hover .decrypt{ |
| | | display: unset; |
| | | } |
| | | |
| | | .THIS tr:hover .encrypt{ |
| | | display: none; |
| | | } |
| | |
| | | ({ |
| | | doinit: function (component, event, helper) { |
| | | debugger |
| | | this.report_date_list(component, event, helper, 5); |
| | | component.set('v.login', true); |
| | | var action = component.get('c.getalldata'); |
| | |
| | | component.set('v.fieldsmap', res.fieldsMap); |
| | | component.set('v.allselectlist', res.allselectlist); |
| | | component.set('v.doclist', res.doclist); |
| | | //fy |
| | | debugger |
| | | var xx=res.UserProType; |
| | | component.set('v.UserProType', res.UserProType); |
| | | var gg=component.get('v.UserProType'); |
| | | //fy |
| | | component.find('select_agency_person').set('v.options', this.conv_selected(res.allselectlist.AgencyPerson__c)); |
| | | component.find('select_DealerPersonnel').set('v.options', this.conv_selected(res.allselectlist.DealerPersonnel__c)); |
| | | component.find('select_purpose_type').set('v.options', this.conv_selected(res.allselectlist.WorkRecord__c)); |
| | |
| | | component.set('v.selected_agency_person', res.allselectlist.AgencyPerson__c[0].label); |
| | | component.set('v.dialog_type', '新建'); |
| | | this.get_reports(component, event, helper, component.find('select_date').get('v.value'), component.find('select_agency_person').get('v.value')); |
| | | |
| | | component.set('v.PIConfig', res.PIConfig);// 20220222 PI改造 by Bright |
| | | component.set('v.login', false); |
| | | } |
| | | else { |
| | |
| | | } |
| | | if (res.reports.length > 0) { |
| | | component.set('v.list_message', ''); |
| | | |
| | | // PI 改造 By Bright 20220328 |
| | | if(true){ |
| | | let doctor_awsids = res.reports.map(function(d){return d.doctor2__r.AWS_Data_Id__c;}); |
| | | let PIConfig = component.get('v.PIConfig'); |
| | | let staticResourceAgencyContact = JSON.parse(PIConfig.staticResourceAgencyContact); |
| | | if(doctor_awsids.length > 0){ |
| | | AWSService.search(staticResourceAgencyContact.searchUrl,{ |
| | | dataIds:doctor_awsids |
| | | }, function(data){ |
| | | if(data && data.object && data.object.length){ |
| | | let m = {}; |
| | | for(let di in data.object){ |
| | | if(data.object[di] && data.object[di].dataId){ |
| | | m[data.object[di].dataId] = data.object[di]; |
| | | } |
| | | } |
| | | |
| | | for(let ri in res.reports){ |
| | | if(res.reports[ri] && res.reports[ri].doctor2__r && res.reports[ri].doctor2__r.AWS_Data_Id__c && m.hasOwnProperty(res.reports[ri].doctor2__r.AWS_Data_Id__c)){ |
| | | res.reports[ri].doctor2__r.awsdata = m[res.reports[ri].doctor2__r.AWS_Data_Id__c]; |
| | | } |
| | | } |
| | | component.set('v.reports', res.reports); |
| | | component.set('v.report_count', res.reports.length); |
| | | } |
| | | |
| | | component.set('v.login', false); |
| | | }, staticResourceAgencyContact.token); |
| | | }else{ |
| | | component.set('v.login', false); |
| | | } |
| | | |
| | | } |
| | | |
| | | } else { |
| | | component.set('v.list_message', 'no_data'); |
| | | component.set('v.login', false); |
| | | } |
| | | component.set('v.login', false); |
| | | |
| | | } |
| | | else { |
| | | component.set('v.errorMessage', 'get_reports failed.'); |
| | |
| | | //使用产品2 |
| | | var UseProduct2Text = ''; |
| | | var UseProduct2Id = ''; |
| | | if (select_data['UseProduct2__c'] != '') { |
| | | if (select_data['UseProduct2__c'] != ''&&select_data['UseProduct2__c'] != undefined) { |
| | | for (var i = 0; i < reports.length; i++) { |
| | | if (reports[i]['UseProduct2__c'] == select_data['UseProduct2__c']) { |
| | | UseProduct2Text = reports[i]['UseProduct2__r']['Name']; |
| | |
| | | //使用产品3 |
| | | var UseProduct3Text = ''; |
| | | var UseProduct3Id = ''; |
| | | if (select_data['UseProduct3__c'] != '') { |
| | | if (select_data['UseProduct3__c'] != ''&&select_data['UseProduct3__c'] != undefined) { |
| | | for (var i = 0; i < reports.length; i++) { |
| | | if (reports[i]['UseProduct3__c'] == select_data['UseProduct3__c']) { |
| | | UseProduct3Text = reports[i]['UseProduct3__r']['Name']; |
| | |
| | | //编辑按钮 |
| | | edit_button: function (component, event, helper) { |
| | | this.allclear(component); |
| | | debugger |
| | | component.set('v.loadOpp', true); |
| | | var index = event.getSource().get('v.value'); |
| | | component.set('v.select_report_data', component.get('v.reports')[index]); |
| | |
| | | // 担当 Person_In_Charge2__c |
| | | Person_In_Charge2__c = component.find('select_agency_person').get('v.value'); |
| | | } |
| | | debugger |
| | | // Agency_Report_Header__c |
| | | var Agency_Report_Header__c = component.get('v.agency_report_header_id'); |
| | | // 医院 |
| | |
| | | var WorkRecord__c = component.find('select_purpose_type').get('v.value'); |
| | | // 效果/进度 EffectProgress__c |
| | | var EffectProgress__c = component.find('select_EffectProgress').get('v.value'); |
| | | // alert(EffectProgress__c); |
| | | // 科室同来耗材月使用量 ConsumptionOfConsumables__c |
| | | var ConsumptionOfConsumables__c = component.find('select_ConsumptionOfConsumables').get('v.value'); |
| | | // 术士分类 WarlockClassification__c |
| | |
| | | if (!Agency_Report_Header__c) { this.error("Report Header Id 不存在"); } |
| | | if (!Agency_Hospital__c) { error.push("医院 不存在"); } |
| | | if (!UseProduct1__c) { error.push("使用产品1(产品型号) 不存在"); } |
| | | if (!UseProduct2__c) { error.push("使用产品2 不存在"); } |
| | | if (!UseProduct3__c) { error.push("使用产品3 不存在"); } |
| | | // if (!UseProduct2__c) { error.push("使用产品2 不存在"); } |
| | | // if (!UseProduct3__c) { error.push("使用产品3 不存在"); } |
| | | if (!Department_Cateogy__c) { error.push("科室 不存在"); } |
| | | if (!DealerPersonnel__c) { error.push("经销商人员 不存在"); } |
| | | if (!doctor2__c) { error.push("医院人员 不存在"); } |
| | | if (!WorkRecord__c) { error.push("工作记录 不存在"); } |
| | | if (!EffectProgress__c) { error.push("效果/进度 不存在"); } |
| | | // if (!OtherBrandConsumables__c) { error.push("术士分类 不存在"); } |
| | | if (!ProductCcategory__c) { error.push("已采用其他品牌 不存在"); } |
| | | if (ProductCcategory__c==''||ProductCcategory__c==""||ProductCcategory__c==undefined) { error.push("已采用其他品牌 不存在"); } |
| | | // if (!productCategories__c) { error.push("其他品牌产品类别 不存在"); } |
| | | if (!ConsumptionOfConsumables__c) { error.push("科室同类耗材月使用量 不能为空"); } |
| | | if (!warlocksNumber__c) { error.push("产品用量 不能为空"); } |
| | | //fy start |
| | | if(WorkRecord__c != 'SIS'){ |
| | | if (!warlocksNumber__c) { error.push("产品用量 不能为空"); } |
| | | } |
| | | //fy end |
| | | for (var i = 0; i < error.length; i++) { |
| | | component.set('v.errorMessage', error[i]); |
| | | this.showErrorToast(component); |
| | |
| | | var default_doctor = component.get('v.default_select_doctor_id'); |
| | | if (default_doctor != '' && res.length > 0) { |
| | | var doctor_title = ''; |
| | | let awsids = []; |
| | | for (var i = 0; i < res.length; i++) { |
| | | if (res[i].value == default_doctor) { |
| | | res[i].selected = true; |
| | |
| | | } else { |
| | | res[i].selected = false; |
| | | } |
| | | if(res[i].AWS_Data_Id__c){ |
| | | awsids.push(res[i].AWS_Data_Id__c); |
| | | } |
| | | } |
| | | component.find('select_doctor').set('v.options', res); |
| | | component.set('v.doctor_title', doctor_title); |
| | | |
| | | if(awsids.length > 0){ |
| | | let PIConfig = component.get('v.PIConfig'); |
| | | let staticResourceAgencyContact = JSON.parse(PIConfig.staticResourceAgencyContact); |
| | | AWSService.search(staticResourceAgencyContact.searchUrl,{ |
| | | dataIds:awsids |
| | | }, function(data){ |
| | | if(data && data.object && data.object.length){ |
| | | let m = {}; |
| | | for(let di in data.object){ |
| | | if(data.object[di] && data.object[di].dataId){ |
| | | m[data.object[di].dataId] = data.object[di]; |
| | | } |
| | | } |
| | | |
| | | for(let ri in res){ |
| | | if(res[ri] && res[ri].AWS_Data_Id__c && m.hasOwnProperty(res[ri].AWS_Data_Id__c)){ |
| | | res[ri].label = m[res[ri].AWS_Data_Id__c].name; |
| | | } |
| | | } |
| | | component.find('select_doctor').set('v.options', res); |
| | | } |
| | | |
| | | component.set('v.login', false); |
| | | }, staticResourceAgencyContact.token); |
| | | } |
| | | } else { |
| | | component.find('select_doctor').set('v.options', res); |
| | | if (res.length > 0) { |
| | |
| | | }, |
| | | //弹出 成功提示 |
| | | showSuccessToast: function (component) { |
| | | debugger |
| | | $A.util.removeClass(component.find('successDiv'), 'slds-hide'); |
| | | window.setTimeout($A.getCallback(function () { |
| | | $A.util.addClass(component.find('successDiv'), 'slds-hide'); |
| | |
| | | }, |
| | | //弹出 成功提示 |
| | | showSuccessToast01: function (component) { |
| | | debugger |
| | | $A.util.removeClass(component.find('successDiv01'), 'slds-hide'); |
| | | window.setTimeout($A.getCallback(function () { |
| | | $A.util.addClass(component.find('successDiv01'), 'slds-hide'); |
| | |
| | | }, |
| | | //弹出 错误提示 |
| | | showErrorToast: function (component) { |
| | | debugger |
| | | $A.util.removeClass(component.find('errorDiv'), 'slds-hide'); |
| | | window.setTimeout($A.getCallback(function () { |
| | | $A.util.addClass(component.find('errorDiv'), 'slds-hide'); |
| | |
| | | csvStringResult += objectRecords[i].UseProduct2__r.Name; |
| | | } else if (skey == 'UseProduct3__c') { |
| | | csvStringResult += objectRecords[i].UseProduct3__r.Name; |
| | | } else if (skey == 'EffectProgress__c'){ |
| | | csvStringResult += objectRecords[i].EffectProgress__r.EffectProgress__c; |
| | | }else if (skey == 'WarlockClassification__c'){ |
| | | csvStringResult += objectRecords[i].WarlockClassification__r.WarlockClassification__c; |
| | | }else if(skey == 'ProductCcategory__c'){ |
| | | csvStringResult += objectRecords[i].ProductCcategory__r.ProductCcategory__c; |
| | | }else if(skey == 'productCategories__c'){ |
| | | csvStringResult += objectRecords[i].productCategories__r.productCategories__c; |
| | | }else{ |
| | | csvStringResult += objectRecords[i][skey] ; |
| | | } |
| | |
| | | content += '<td>' + objectRecords[i].UseProduct2__r.Name + '</td>'; |
| | | } else if (skey == 'UseProduct3__c') { |
| | | content += '<td>' + objectRecords[i].UseProduct3__r.Name + '</td>'; |
| | | } else if (skey == 'EffectProgress__c'){ |
| | | content += '<td>' + objectRecords[i].EffectProgress__r.EffectProgress__c + '</td>'; |
| | | }else if (skey == 'WarlockClassification__c'){ |
| | | content += '<td>' + objectRecords[i].WarlockClassification__r.WarlockClassification__c + '</td>'; |
| | | }else if (skey == 'ProductCcategory__c'){ |
| | | content += '<td>' + objectRecords[i].ProductCcategory__r.ProductCcategory__c + '</td>'; |
| | | }else if (skey == 'productCategories__c'){ |
| | | content += '<td>' + objectRecords[i].productCategories__r.productCategories__c + '</td>'; |
| | | }else{ |
| | | content += '<td>' + objectRecords[i][skey] + '</td>'; |
| | | } |
| | |
| | | var res = response.getReturnValue(); |
| | | console.log('输入的开始日期3' + res); |
| | | component.set('v.login', false); |
| | | this.showExportDate(component, res); |
| | | |
| | | // PI 改造 By Bright 20220328 |
| | | if(true){ |
| | | let awsids = []; |
| | | for (let ri in res) { |
| | | if(res[ri] && res[ri].doctor2__r && res[ri].doctor2__r.AWS_Data_Id__c){ |
| | | awsids.push(res[ri].doctor2__r.AWS_Data_Id__c); |
| | | } |
| | | } |
| | | if(awsids.length > 0){ |
| | | let PIConfig = component.get('v.PIConfig'); |
| | | let staticResourceAgencyContact = JSON.parse(PIConfig.staticResourceAgencyContact); |
| | | AWSService.search(staticResourceAgencyContact.searchUrl,{ |
| | | dataIds:awsids |
| | | }, function(data){ |
| | | if(data && data.object && data.object.length){ |
| | | let m = {}; |
| | | for(let di in data.object){ |
| | | if(data.object[di] && data.object[di].dataId){ |
| | | m[data.object[di].dataId] = data.object[di]; |
| | | } |
| | | } |
| | | |
| | | for(let ri in res){ |
| | | if(res[ri] && res[ri].doctor2__r && res[ri].doctor2__r.AWS_Data_Id__c && m.hasOwnProperty(res[ri].doctor2__r.AWS_Data_Id__c)){ |
| | | res[ri].doctor2__r.Name = m[res[ri].doctor2__r.AWS_Data_Id__c].name; |
| | | } |
| | | } |
| | | } |
| | | helper.showExportDate(component, res); |
| | | |
| | | component.set('v.login', false); |
| | | }, staticResourceAgencyContact.token); |
| | | }else{ |
| | | helper.showExportDate(component, res); |
| | | } |
| | | } |
| | | |
| | | |
| | | component.set('v.reports_date', res); |
| | | } else { |
| | | alert('导出失败,请检查活动日'); |
| | |
| | | //工作会记录 |
| | | selectPurposeType: function (component,event,helper) { |
| | | var doctor_value = component.find('select_purpose_type').get('v.value'); |
| | | alert(doctor_value); |
| | | // alert(doctor_value); |
| | | if(doctor_value != ''){ |
| | | var action = component.get('c.selectPurposeTypes'); |
| | | action.setParams({ |
| | |
| | | var select_ProductCcategory = component.find('select_ProductCcategory').get('v.value'); |
| | | if(select_ProductCcategory != ''){ |
| | | var result = component.find('result'); |
| | | var UserProType = component.get('v.UserProType'); |
| | | //fy |
| | | $A.util.removeClass(result, 'disp_none'); |
| | | if(UserProType=='ENG'){ |
| | | $A.util.removeClass(result, 'disp_none'); |
| | | }else{ |
| | | $A.util.addClass(result, 'disp_none'); |
| | | } |
| | | var action = component.get('c.selectProductCcategory01'); |
| | | action.setParams({ |
| | | "select_ProductCcategory": select_ProductCcategory |
| | |
| | | }, |
| | | selectpurposetype : function(component,event,helper){ |
| | | var select_ProductCcategory = component.find('select_ProductCcategory').get('v.value'); |
| | | if (select_ProductCcategory == null && select_ProductCcategory == undefined) { |
| | | if (select_ProductCcategory == null && select_ProductCcategory == undefined && select_ProductCcategory == '') { |
| | | var result = component.find('result'); |
| | | $A.util.removeClass(result, 'disp_none'); |
| | | // $A.util.removeClass(result, 'disp_none'); |
| | | if(UserProType=='ENG'){ |
| | | $A.util.removeClass(result, 'disp_none'); |
| | | }else{ |
| | | $A.util.addClass(result, 'disp_none'); |
| | | } |
| | | } else { |
| | | debugger |
| | | component.find('select_productCategories').set('v.value', ''); |
| | | var result = component.find('result'); |
| | | $A.util.addClass(result, 'disp_none'); |
| | | this.select_ProductCcategory(component); |
| | | $A.util.addClass(result, 'disp_none'); |
| | | this.select_ProductCcategory(component); |
| | | } |
| | | }, |
| | | }) |
| | |
| | | <td role="gridcell" class="slds-cell-edit"> |
| | | <span class="slds-grid slds-grid--align-spread"> |
| | | <span class="slds-truncate" title="{!item.Person_In_Charge2__r.Name}"> |
| | | <span class="encrypt">{!item.Person_In_Charge2__r.Name}</span> |
| | | <span class="decrypt">{!item.Person_In_Charge2__r.awsdata.lastName}</span> |
| | | {!item.Person_In_Charge2__r.Name} |
| | | <!-- <span class="decrypt">{!item.Person_In_Charge2__r.awsdata.lastName}</span> --> |
| | | </span> |
| | | </span> |
| | | </td> |
| | |
| | | <!-- <force:inputField value="{!v.data.Product_Category3__c}" aura:id="input-product-category3"/> --> |
| | | <ui:inputSelect aura:id="select_Product3" class="slds-select" change="{!c.productcategoryChange3}"/> |
| | | </div> |
| | | <!--SWAG-CBX68C fy 【委托】DAMS系统周报模块内容需求增加 start--> |
| | | <!-- 支援需求 --> |
| | | |
| | | <!--SWAG-CBX68C fy 【委托】DAMS系统周报模块内容需求增加 start--> |
| | | <!-- 支援需求 change="{!c.SupportNeeds__c}"--> |
| | | <div class="slds-p-horizontal--small slds-size--1-of-1 slds-medium-size--1-of-5 slds-large-size--1-of-6"> |
| | | {!v.fieldsmap.SupportNeeds__c} |
| | | <ui:inputSelect aura:id="SupportNeeds__c" class="slds-select" /> |
| | | </div> |
| | | <!--SWAG-CBX68C fy 【委托】DAMS系统周报模块内容需求增加 end--> |
| | | <div aura:id="result" class="disp_none slds-p-horizontal--small slds-size--1-of-1 slds-medium-size--3-of-12 slds-large-size--3-of-12"> |
| | | {!v.fieldsmap.Result__c} |
| | |
| | | component.find('select_result').set('v.options', this.conv_selected(res.allselectlist.Result__c)); |
| | | component.find('select_stageName').set('v.options', this.conv_selected(res.allselectlist.StageName__c)); |
| | | //SWAG-CBX68C fy 【委托】DAMS系统周报模块内容需求增加 start |
| | | // component.find('SupportNeeds__c').set('v.options', this.conv_selected(res.allselectlist.SupportNeeds__c)); |
| | | component.find('SupportNeeds__c').set('v.options', this.conv_selected(res.allselectlist.SupportNeeds__c)); |
| | | //SWAG-CBX68C fy 【委托】DAMS系统周报模块内容需求增加 end |
| | | component.set('v.selected_agency_person', res.allselectlist.AgencyPerson__c[0].label); |
| | | component.set('v.dialog_type', '新建'); |
| | |
| | | this.set_selected(component, 'select_purpose_type', select_data['Purpose_Type__c']); |
| | | this.select_purpose_type(component); |
| | | } |
| | | |
| | | //SWAG-CBX68C fy 【委托】DAMS系统周报模块内容需求增加 start |
| | | // 支援需求 |
| | | if (select_data['SupportNeeds__c'] != '') { |
| | | this.set_selected(component, 'SupportNeeds__c', select_data['SupportNeeds__c']); |
| | | } |
| | | //SWAG-CBX68C fy 【委托】DAMS系统周报模块内容需求增加 end |
| | | // 結果 |
| | | if (select_data['Result__c'] != '' && typeof select_data['Result__c'] !== "undefined") { |
| | | component.find('select_result').set('v.value', select_data['Result__c']); |
| | |
| | | var Department_Cateogy__c = component.find('select_department').get('v.value'); |
| | | var doctor2__c = component.find('select_doctor').get('v.value'); |
| | | var Purpose_Type__c = component.find('select_purpose_type').get('v.value'); |
| | | var SupportNeeds__c = component.find('SupportNeeds__c').get('v.value'); |
| | | var Opportunity__c = component.get('v.data.Opportunity__c'); |
| | | var Product_Category1__c = component.find('select_Product1').get('v.value'); |
| | | var Product_Category2__c = component.find('select_Product2').get('v.value'); |
| | |
| | | !Department_Cateogy__c && |
| | | !doctor2__c && |
| | | !Purpose_Type__c && |
| | | !SupportNeeds__c&&//WAG-CBX68C fy 【委托】DAMS系统周报模块内容需求增加 |
| | | !Opportunity__c && |
| | | !Product_Category1__c && |
| | | !Product_Category2__c && |
| | |
| | | select_report_data['Department_Cateogy__c'] == Department_Cateogy__c && |
| | | select_report_data['doctor2__c'] == doctor2__c && |
| | | select_report_data['Purpose_Type__c'] == Purpose_Type__c && |
| | | select_report_data['SupportNeeds__c'] == SupportNeeds__c &&//WAG-CBX68C fy 【委托】DAMS系统周报模块内容需求增加 |
| | | select_report_data['Opportunity__c'] == Opportunity__c && |
| | | select_report_data['Product_Category1__c'] == Product_Category1__c && |
| | | select_report_data['Product_Category2__c'] == Product_Category2__c && |
| | |
| | | select_report_data['Department_Cateogy__c'] == Department_Cateogy__c && |
| | | select_report_data['doctor2__c'] == doctor2__c && |
| | | select_report_data['Purpose_Type__c'] == Purpose_Type__c && |
| | | select_report_data['SupportNeeds__c'] == SupportNeeds__c &&//WAG-CBX68C fy 【委托】DAMS系统周报模块内容需求增加 |
| | | select_report_data['Opportunity__c'] == Opportunity__c && |
| | | select_report_data['Product_Category1__c'] == Product_Category1__c && |
| | | select_report_data['Product_Category2__c'] == Product_Category2__c && |
| | |
| | | var Purpose_Type__c = component.find('select_purpose_type').get('v.value'); |
| | | //SWAG-CBX68C fy 【委托】DAMS系统周报模块内容需求增加 start |
| | | // 支援需求 SupportNeeds__c |
| | | // var SupportNeeds__c = component.find('SupportNeeds__c').get('v.value'); |
| | | var SupportNeeds__c = component.find('SupportNeeds__c').get('v.value'); |
| | | //SWAG-CBX68C fy 【委托】DAMS系统周报模块内容需求增加 end |
| | | // 询价 Opportunity__c |
| | | var Opportunity__c = component.get('v.data.Opportunity__c'); |
| | |
| | | "Department_Cateogy" : Department_Cateogy__c, |
| | | "Purpose_Type" : Purpose_Type__c, |
| | | //SWAG-CBX68C fy 【委托】DAMS系统周报模块内容需求增加 start |
| | | // "SupportNeedsc" : SupportNeeds__c, |
| | | "SupportNeedsc" : SupportNeeds__c, |
| | | //SWAG-CBX68C fy 【委托】DAMS系统周报模块内容需求增加 end |
| | | "Agency_Report_Header" : Agency_Report_Header__c, |
| | | "Agency_Hospital" : Agency_Hospital__c, |
| | |
| | | "Department_Cateogy" : Department_Cateogy__c, |
| | | "Purpose_Type" : Purpose_Type__c, |
| | | //SWAG-CBX68C fy 【委托】DAMS系统周报模块内容需求增加 start |
| | | // "SupportNeedsc" : SupportNeeds__c, |
| | | "SupportNeedsc" : SupportNeeds__c, |
| | | //SWAG-CBX68C fy 【委托】DAMS系统周报模块内容需求增加 end |
| | | "Agency_Report_Header" : Agency_Report_Header__c, |
| | | "Agency_Hospital" : Agency_Hospital__c, |
| | |
| | | component.set('v.doctor_title', ''); |
| | | component.find('select_department').set('v.options', this.conv_selected(component.get('v.allselectlist.Department_Cateogy__c'))); |
| | | component.find('select_purpose_type').set('v.options', this.conv_selected(component.get('v.allselectlist.Purpose_Type__c'))); |
| | | //SWAG-CBX68C fy 【委托】DAMS系统周报模块内容需求增加 start |
| | | component.find('SupportNeeds__c').set('v.options', this.conv_selected(component.get('v.allselectlist.SupportNeeds__c'))); |
| | | //SWAG-CBX68C fy 【委托】DAMS系统周报模块内容需求增加 end |
| | | // ToDo需要测试手机上能运行不 |
| | | component.set('v.data.Opportunity__c', ''); |
| | | component.find('select_Product1').set('v.value',''); |
| | |
| | | |
| | | insert_agencycontact : function(component,token,newUrl,payload,agencyHospitalid,helper) { |
| | | |
| | | AWSService.insert(newUrl,payload,function(result){ |
| | | if(result.status == '0'){ |
| | | $A.getCallback(function(){ |
| | | helper.to_agencycontact(component,result,agencyHospitalid); |
| | | })(); |
| | | // AWSService.insert(newUrl,payload,function(result){ |
| | | // if(result.status == '0'){ |
| | | // $A.getCallback(function(){ |
| | | // helper.to_agencycontact(component,result,agencyHospitalid); |
| | | // })(); |
| | | |
| | | }else{ |
| | | console.log('AWS status error:' + result) |
| | | component.set('v.login',false); |
| | | component.find('OppMessage').setError('AWS insert error.'); |
| | | } |
| | | },token); |
| | | /* |
| | | // }else{ |
| | | // console.log('AWS status error:' + result) |
| | | // component.set('v.login',false); |
| | | // component.find('OppMessage').setError('AWS insert error.'); |
| | | // } |
| | | // },token); |
| | | |
| | | fetch(newUrl, { |
| | | method: 'POST', |
| | | body: payload, |
| | |
| | | console.log('AWS insert error:' + error) |
| | | component.set('v.login',false); |
| | | component.find('OppMessage').setError('AWS insert error.'); |
| | | });*/ |
| | | }); |
| | | |
| | | }, |
| | | |
| | |
| | | columnDivider = ','; |
| | | lineDivider = '\n'; |
| | | //SWAG-CBX68C fy 【委托】DAMS系统周报模块内容需求增加 start ,'SupportNeeds__c' ,'支援需求' |
| | | keys = ['Submit_date__c','Person_In_Charge2__c','Report_Date__c','Agency_Hospital__c','Department_Cateogy__c','doctor2__c','visitor_title__c','Product_Category1__c','Product_Category2__c','Product_Category3__c','Purpose_Type__c','Result__c']; |
| | | thkeys = ['周','担当','活动日','医院','科室','拜访人','职位','产品区分1','产品区分2','产品区分3','活动区分','结果'] |
| | | keys = ['Submit_date__c','Person_In_Charge2__c','Report_Date__c','Agency_Hospital__c','Department_Cateogy__c','doctor2__c','visitor_title__c','Product_Category1__c','Product_Category2__c','Product_Category3__c','Purpose_Type__c','Result__c','SupportNeeds__c']; |
| | | thkeys = ['周','担当','活动日','医院','科室','拜访人','职位','产品区分1','产品区分2','产品区分3','活动区分','结果','支援需求'] |
| | | csvStringResult = ''; |
| | | csvStringResult += thkeys.join(columnDivider); |
| | | csvStringResult += lineDivider; |
| | |
| | | }else if(skey == 'Product_Category3__c'){ |
| | | csvStringResult += '"'+ objectRecords[i].Product_Category3__r.Name+'"'; |
| | | } |
| | | // else if(skey == 'SupportNeeds__c'){//SWAG-CBX68C fy 【委托】DAMS系统周报模块内容需求增加 start |
| | | // csvStringResult += '"'+ objectRecords[i].SupportNeeds__c+'"'; |
| | | // } |
| | | else if(skey == 'SupportNeeds__c'){//SWAG-CBX68C fy 【委托】DAMS系统周报模块内容需求增加 start |
| | | csvStringResult += '"'+ objectRecords[i].SupportNeeds__c+'"'; |
| | | } |
| | | else{ |
| | | csvStringResult += '"'+ objectRecords[i][skey]+'"'; |
| | | } |
| | |
| | | }, |
| | | showExportDate : function(component,objectRecords){ |
| | | console.log('进入showexceportdate'+objectRecords);//SWAG-CBX68C fy 【委托】DAMS系统周报模块内容需求增加 start ,'SupportNeeds__c' ,'支援需求' |
| | | var keys = ['Submit_date__c','Person_In_Charge2__c','Report_Date__c','Agency_Hospital__c','Department_Cateogy__c','doctor2__c','visitor_title__c','Product_Category1__c','Product_Category2__c','Product_Category3__c','Purpose_Type__c','Result__c']; |
| | | var headers = ['周','担当','活动日','医院','科室','拜访人','职位','产品区分1','产品区分2','产品区分3','活动区分','结果'] |
| | | var keys = ['Submit_date__c','Person_In_Charge2__c','Report_Date__c','Agency_Hospital__c','Department_Cateogy__c','doctor2__c','visitor_title__c','Product_Category1__c','Product_Category2__c','Product_Category3__c','Purpose_Type__c','Result__c','SupportNeeds__c']; |
| | | var headers = ['周','担当','活动日','医院','科室','拜访人','职位','产品区分1','产品区分2','产品区分3','活动区分','结果','支援需求'] |
| | | var content = "<table class=\"table slds-table slds-table--bordered slds-table--cell-buffer\">"; |
| | | content += "<thead><tr class=\"slds-text-title--caps\">"; |
| | | for(i=0;i<headers.length; i++){ |
| | |
| | | }else if(skey == 'Product_Category3__c'){ |
| | | content += '<td>'+ objectRecords[i].Product_Category3__r.Name+'</td>'; |
| | | } |
| | | // else if(skey == 'SupportNeeds__c'){//SWAG-CBX68C fy 【委托】DAMS系统周报模块内容需求增加 start |
| | | // content += '<td>'+ objectRecords[i].SupportNeeds__c+'</td>'; |
| | | // } |
| | | else if(skey == 'SupportNeeds__c'){//SWAG-CBX68C fy 【委托】DAMS系统周报模块内容需求增加 start |
| | | content += '<td>'+ objectRecords[i].SupportNeeds__c+'</td>'; |
| | | } |
| | | else{ |
| | | content += '<td>'+ objectRecords[i][skey]+'</td>'; |
| | | } |
| New file |
| | |
| | | public without sharing class AWSServiceTool2 { |
| | | |
| | | static Map<string,PIHelper.PIIntegration> staticResourceBuffer = new Map<string,PIHelper.PIIntegration>(); |
| | | static PIHelper.PIIntegration getPIIntegration(string sobject_name){ |
| | | system.debug('sobject_name='+sobject_name); |
| | | if(!staticResourceBuffer.containsKey(sobject_name)){ |
| | | PIHelper.PIIntegration staticResource = PIHelper.getPIIntegrationInfo(sobject_name); |
| | | staticResourceBuffer.put(sobject_name,staticResource); |
| | | } |
| | | return staticResourceBuffer.get(sobject_name); |
| | | } |
| | | |
| | | public static boolean EncryptPushData(List<string> Ids){ |
| | | if(ids == null || ids.size() == 0){ |
| | | return false; |
| | | } |
| | | |
| | | Id rid = Ids[0]; |
| | | string sobject_name = rid.getSobjectType().getDescribe().getName(); |
| | | string sql = 'select id '; |
| | | |
| | | PIHelper.PIIntegration staticResource = getPIIntegration(sobject_name); |
| | | for(PI_Field_Policy_Detail__c detail :staticResource.PIDetails){ |
| | | sql += ',' + detail.SF_Field_API_Name__c+',' + detail.SF_Field_Encrypted_API__c; |
| | | } |
| | | sql += ' ,AWS_Data_Id__c from ' + sobject_name + ' where id in :Ids'; |
| | | system.debug('sql='+sql); |
| | | List<Sobject> lso = Database.query(sql); |
| | | system.debug('lso.size()='+lso.size()); |
| | | if(lso.size()==0){ |
| | | return false; |
| | | } |
| | | return EncryptPushCore(Json.serialize(lso),sobject_name); |
| | | } |
| | | |
| | | @future(callout=true) |
| | | public static void EncryptPushFuture(string json_list,string sobject_name){ |
| | | EncryptPushCore(json_list,sobject_name); |
| | | } |
| | | |
| | | // List<Rental_Apply__c> temps = [select id,AWS_Data_Id__c,name, direct_shippment_address__c, Direct_Shippment_Address_Encrypt__c, Phone_number__c, Phone_Number_Encrypt__c,CreatedDate from Rental_Apply__c where AWS_Data_Id__c != null order by CreatedDate desc limit 2]; |
| | | public static boolean EncryptPushCore(string json_list,string sobject_name){ |
| | | system.debug('enter EncryptPushCore'); |
| | | if(string.isBlank(json_list) || string.isBlank(sobject_name)){ |
| | | |
| | | system.debug('json_list or sobject_name is null'); |
| | | return false; |
| | | } |
| | | |
| | | //调用滨璜接口更新 |
| | | PIHelper.PIIntegration staticResource = getPIIntegration(sobject_name); |
| | | system.debug('staticResource.token='+staticResource.token); |
| | | if(String.isBlank(staticResource.token)){ |
| | | System.debug('获取aws token 失败'); |
| | | return false; |
| | | } |
| | | List<object> newobjectList = (List<object>)Json.deserializeUntyped(json_list); |
| | | Map<Id,Sobject> newMap = new Map<Id,Sobject>(); |
| | | |
| | | for(object obj : newobjectList){ |
| | | Map<string,object> mobj = (Map<string,object>)obj; |
| | | if(mobj.containsKey('Id')){ |
| | | Sobject sobj_temp = (Sobject)Json.deserialize(Json.serialize(obj), Type.forName(sobject_name)); |
| | | newMap.put(sobj_temp.Id,sobj_temp); |
| | | } |
| | | } |
| | | List<Map<string,object>> insert_list = new List<Map<string,object>>(); |
| | | List<Map<string,object>> update_list = new List<Map<string,object>>(); |
| | | List<sobject> newList = newMap.values(); |
| | | for(Sobject ra : newList){ |
| | | Map<string,object> mso = new Map<string,object>(); |
| | | |
| | | |
| | | for(PI_Field_Policy_Detail__c detail : staticResource.PIDetails){ |
| | | if(ra.isSet(detail.SF_Field_API_Name__c)){ |
| | | mso.put(detail.AWS_Field_API__c,ra.get(detail.SF_Field_API_Name__c)); |
| | | mso.put(detail.AWS_Encrypted_Field_API__c,ra.get(detail.SF_Field_Encrypted_API__c)); |
| | | } |
| | | } |
| | | mso.put('sfRecordId',ra.Id); |
| | | string aws_id = string.valueOf(ra.get('AWS_Data_Id__c')); |
| | | system.debug('aws_id='+aws_id); |
| | | if(string.isBlank(aws_id)){ |
| | | insert_list.add(mso); |
| | | }else{ |
| | | system.debug('aws_id.lenth='+aws_id.length()); |
| | | mso.put('dataId',aws_id); |
| | | update_list.add(mso); |
| | | } |
| | | |
| | | } |
| | | List<object> objList = new List<object>(); |
| | | List<Sobject> updateList = new List<Sobject>(); |
| | | List<object> temp = null; |
| | | system.debug('insert_list.size()='+insert_list.size()); |
| | | system.debug('update_list.size()='+update_list.size()); |
| | | //if(true)return; |
| | | if(insert_list.size() > 0){ |
| | | system.debug('url='+staticResource.newEncryptUrl); |
| | | temp = PostAws(Json.serialize(insert_list),staticResource.newEncryptUrl,staticResource.token); |
| | | if(temp != null){ |
| | | objList.addAll(temp); |
| | | } |
| | | } |
| | | |
| | | |
| | | if(update_list.size() > 0){ |
| | | system.debug('url='+staticResource.updateEncryptUrl); |
| | | temp = PostAws(Json.serialize(update_list),staticResource.updateEncryptUrl,staticResource.token); |
| | | if(temp != null){ |
| | | objList.addAll(temp); |
| | | } |
| | | } |
| | | |
| | | system.debug('objList.size()='+objList.size()); |
| | | if(objList.size()==0){ |
| | | return false; |
| | | } |
| | | |
| | | |
| | | for(object obj : objList){ |
| | | Map<string,object> obj_map = (Map<string,object>)obj; |
| | | string sfRecordId = null; |
| | | string dataId = null; |
| | | if(obj_map.containsKey('sfRecordId')){ |
| | | sfRecordId = string.valueOf(obj_map.get('sfRecordId')); |
| | | }else{ |
| | | system.debug('obj_map.containsKey(\'sfRecordId\')='+obj_map.containsKey('sfRecordId')); |
| | | continue; |
| | | } |
| | | |
| | | if(obj_map.containsKey('dataId')){ |
| | | dataId = string.valueOf(obj_map.get('dataId')); |
| | | }else{ |
| | | system.debug('obj_map.containsKey(\'dataId\')='+obj_map.containsKey('dataId')); |
| | | continue; |
| | | } |
| | | |
| | | |
| | | if(newMap.containsKey(sfRecordId)){ |
| | | Sobject ra = newMap.get(sfRecordId); |
| | | for(PI_Field_Policy_Detail__c detail : staticResource.PIDetails){ |
| | | if(obj_map.containsKey(detail.AWS_Field_API__c)){ |
| | | ra.put(detail.SF_Field_API_Name__c,obj_map.get(detail.AWS_Field_API__c)); |
| | | }else{ |
| | | system.debug('detail.AWS_Field_API__c='+detail.AWS_Field_API__c+' not in obj_map'); |
| | | } |
| | | |
| | | if(obj_map.containsKey(detail.AWS_Encrypted_Field_API__c)){ |
| | | ra.put(detail.SF_Field_Encrypted_API__c,obj_map.get(detail.AWS_Encrypted_Field_API__c)); |
| | | }else{ |
| | | system.debug('detail.AWS_Encrypted_Field_API__c='+detail.AWS_Encrypted_Field_API__c+' not in obj_map'); |
| | | } |
| | | } |
| | | ra.put('AWS_Data_Id__c',dataId); |
| | | |
| | | updateList.add(ra); |
| | | }else{ |
| | | system.debug('newMap.containsKey('+sfRecordId+')='+newMap.containsKey(sfRecordId)); |
| | | continue; |
| | | } |
| | | } |
| | | |
| | | system.debug('updateList.size='+updateList.size()); |
| | | if(updateList.size()>0){ |
| | | update updateList; |
| | | } |
| | | |
| | | return true; |
| | | } |
| | | |
| | | static List<object> PostAws(string payload,string url,string token){ |
| | | system.debug('payload='+payload); |
| | | NFMUtil.response response = NFMUtil.sendToPiAWS(payload, url,token); |
| | | system.debug(response); |
| | | Map<string,object> res_obj = (Map<string,object>)Json.deserializeUntyped(response.responseBody); |
| | | if(res_obj == null || !res_obj.containsKey('object') ){ |
| | | System.debug('res_obj == null || !res_obj.containsKey(\'object\')'); |
| | | return null; |
| | | } |
| | | |
| | | List<object> objList = (List<object>)res_obj.get('object'); |
| | | if(objList == null){ |
| | | System.debug('objList == null'); |
| | | return null; |
| | | } |
| | | return objList; |
| | | } |
| | | |
| | | } |
| New file |
| | |
| | | <?xml version="1.0" encoding="UTF-8"?> |
| | | <ApexClass xmlns="http://soap.sforce.com/2006/04/metadata"> |
| | | <apiVersion>54.0</apiVersion> |
| | | <status>Active</status> |
| | | </ApexClass> |
| | |
| | | is_Alert_Qualify = false; |
| | | |
| | | if (accList != null && accList.size() > 0) { |
| | | if (accList[0].Quolified_Approve_Status__c.equals('Draft') |
| | | && accList[0].If_Need_Quolified__c == true) { |
| | | //空指针报错修改 thh 20220411 start |
| | | if ('Draft'.equals(accList[0].Quolified_Approve_Status__c) |
| | | && accList[0].If_Need_Quolified__c == true) { |
| | | is_Alert_Qualify = true; |
| | | } |
| | | //空指针报错修改 thh 20220411 end |
| | | } |
| | | } |
| | | } |
| | |
| | | } |
| | | |
| | | global void finish(Database.BatchableContext bc) { |
| | | |
| | | // 如果前一个603的batch正在等待状态,则取消掉前一个batch的执行 |
| | | List<AsyncApexJob> lstJobs = [SELECT Id FROM AsyncApexJob WHERE (Status = 'Queued' OR Status = 'Holding') AND ApexClass.Name = 'NFM603Batch']; |
| | | for (AsyncApexJob job : lstJobs) { |
| | | try { |
| | | System.abortJob(job.Id); |
| | | } catch(Exception ex ) { |
| | | System.debug(ex); |
| | | } |
| | | } |
| | | Id execBTId = Database.executebatch(new NFM603Batch(),1); |
| | | } |
| | | } |
| | |
| | | Order_No__c,Account.Name,Status,Department_Class__c,Hospital__r.Owner.Name, |
| | | Hospital__r.Owner.Phone,Installation_Site__c,CurrentContract__c, |
| | | Product2.Asset_Model_No__c,Hospital__r.Name,Department_Class__r.Name , |
| | | Department_Class__r.Id,Ji_Zhong_Guan_Li_Ku_Cun__c |
| | | Department_Class__r.Id,Ji_Zhong_Guan_Li_Ku_Cun__c,Account.RecordTypeId |
| | | ,Account.Parent.Parent.FSE_SP_Main_Leader__r.Work_Location__c |
| | | ,Account.Parent.FSE_SP_Main_Leader__r.Work_Location__c |
| | | FROM Asset where Id != null AND Repairing_Count__c >= 0 AND SerialNumber like :serialNumber LIMIT 100 |
| | | |
| | | ]; |
| | |
| | | url += joint_4 + RepairApplicantHospital_Id + joint_1 + repairSubOrder.Hospital__r.Name;//报修人医院 |
| | | url += joint_4 + RepairApplicantDepartment_Id + joint_1 + repairSubOrder.Department__r.Name;//报修人科室 |
| | | |
| | | if (repairSubOrder.ProblemDescription__c != null) { |
| | | url += joint_4 + Repair_Detail_Id + joint_1 + repairSubOrder.ProblemDescription__c; |
| | | if (repairSubOrder.ResponseResultDesc__c != null) { //2022/04/07 zhangyuheng ProblemDescription__c>ResponseResultDesc__c |
| | | url += joint_4 + Repair_Detail_Id + joint_1 + repairSubOrder.ResponseResultDesc__c; |
| | | } |
| | | url += joint_4 + guzhang + joint_1 + NFMUtil.formatDateTime2StrSprit(repairSubOrder.FaultTime__c); |
| | | //add wangweipeng 2022/02/11 start |
| | |
| | | url += joint_4 + shouliri + joint_1 + NFMUtil.formatDateTime2StrSprit(repairSubOrder.ReceiverTime__c); |
| | | |
| | | //add wangweipeng 2022/01/26 start |
| | | url += joint_4 + SalesOfficeCode_selection_Id+ joint_1 + ast.Account.Parent.Parent.FSE_SP_Main_Leader__r.Work_Location__c;//修理品返送地 |
| | | // url += joint_4 + SalesOfficeCode_selection_Id+ joint_1 + ast.Account.Parent.Parent.FSE_SP_Main_Leader__r.Work_Location__c;//修理品返送地 //2022/4/7 zhangyuheng 注释 |
| | | //add wangweipeng 2022/01/26 end |
| | | //add zhangyuheng 2022/04/07 start |
| | | if (String.isNotBlank(ast.Account.RecordTypeId)) { |
| | | if (ast.Account.RecordTypeId == '01210000000QemQAAS') { //战略科室 |
| | | if (String.isNotBlank(ast.Account.Parent.FSE_SP_Main_Leader__r.Work_Location__c)) { |
| | | url += joint_4 + SalesOfficeCode_selection_Id+ joint_1 + ast.Account.Parent.FSE_SP_Main_Leader__r.Work_Location__c;//修理品返送地 |
| | | }else { |
| | | // continue; |
| | | } |
| | | } |
| | | if (ast.Account.RecordTypeId == '01210000000QfmRAAS') { //科室 |
| | | if (String.isNotBlank(ast.Account.Parent.Parent.FSE_SP_Main_Leader__r.Work_Location__c)) { |
| | | url += joint_4 + SalesOfficeCode_selection_Id+ joint_1 + ast.Account.Parent.Parent.FSE_SP_Main_Leader__r.Work_Location__c;//修理品返送地 |
| | | }else { |
| | | // continue; |
| | | } |
| | | } |
| | | } |
| | | //add zhangyuheng 2022/04/07 end |
| | | |
| | | url += joint_3 + Incharge_Staff_Id + joint_1 + repairSubOrder.Owner.Name; |
| | | url += joint_3 + Incharge_Staff_Id + joint_2 + repairSubOrder.OwnerId; |
| | |
| | | private class ChoiceAssetControllerTest { |
| | | @testSetup |
| | | static void setupTestData() { |
| | | Oly_TriggerHandler.bypass('ContactTriggerHandler'); |
| | | ControllerUtil.EscapeNFM001Trigger = true; |
| | | // 省 |
| | | Address_Level__c al = new Address_Level__c(); |
| | |
| | | FixtureUtil.withoutUpdate(rndList, true); |
| | | PageReference pag = new PageReference('/apex/ConsumTrial?id=' + parId + '&canedit=true&saveType=1'); |
| | | pag.setRedirect(true); |
| | | return pag; |
| | | return null; |
| | | } |
| | | else{ |
| | | init(); |
| | |
| | | + String.join(assetFieldApiList, ',') |
| | | + (assetFieldApiList.size() > 0 ? ',' : '') |
| | | + String.join(receivingNoteFieldApiList, ',') |
| | | + ',AWS_Data_Id__c' |
| | | + ',AWS_Data_Id__c,Trial_User_Encrypt__c' |
| | | + ' FROM Consum_Apply_Equipment_Set_Detail__c ' |
| | | + ' WHERE Consum_Apply_Equipment_Set__r.Consum_Apply__c = \'' + rn.Id + '\'' + wher |
| | | + ' AND (Cancel_Select__c = false OR NG_Select_Again__c = true)' |
| | |
| | | // dataConfirmation = rnd1.DataConfirmation__c; |
| | | lineNo = lineNo1 + 1; |
| | | canChangeField = 'Show_demonstration__c, Operation_Type__c, Consum_Start_Date__c'; |
| | | canChangeField += ',AWS_Data_Id__c, Case_OR_animal_organ__c, Trial_User__c, Follower_User__c, Spare__c, Comment__c, Degree_Of_Importance__c'; |
| | | canChangeField += ',AWS_Data_Id__c, Case_OR_animal_organ__c, Trial_User__c,Trial_User_Encrypt__c, Follower_User__c, Spare__c, Comment__c, Degree_Of_Importance__c'; |
| | | |
| | | haveAsset = String.isNotBlank(rnd1.Asset__c); |
| | | } |
| | |
| | | FROM Consum_Apply_Equipment_Set_Detail__c |
| | | WHERE Consum_Apply_Equipment_Set__r.Consum_Apply__c = :targetConsumApplyId // 耗材备品配套一览.耗材备品申请 |
| | | AND (Cancel_Select__c = false OR NG_Select_Again__c = true) |
| | | AND Shipment_request_time2__c != null |
| | | // AND Shipment_request_time2__c != null //Commented By Li Jun 20220422 for PIPL |
| | | ORDER BY Consum_Apply_Equipment_Set__r.Consum_Apply__c, Consum_Apply_Equipment_Set__c, Fixture_Model_No_F__c, Degree_Of_Importance__c |
| | | ]; |
| | | if (consumApplySetDetailList.size() > 0) { |
| | |
| | | strList.add('Consum_Apply_Equipment_Set_Detail__c'); |
| | | strList.add('Consum_Apply__c'); |
| | | strList.add('Document'); |
| | | strList.add('Agency_Contact__c'); |
| | | TestDataUtility.CreatePIPolicyConfigurations(strList); |
| | | |
| | | // 用户 |
| | |
| | | public List<Id> hospIds = new List<Id>(); |
| | | public Date toDayTime = Date.today(); |
| | | public String OCSM_Period_half; |
| | | public String OCSM_Period = 'FY'+toDayTime.year(); |
| | | public String OCSM_Period; |
| | | private BatchIF_Log__c iflog; |
| | | public List < String > accountIdList; |
| | | public Date egdTime; |
| | | global EquipmentCoverageTargetBatch() { |
| | | this.query = query; |
| | | OCSM_Period = 'FY'+toDayTime.year(); |
| | | } |
| | | |
| | | global EquipmentCoverageTargetBatch(List < String > accountIdList) { |
| | |
| | | } |
| | | |
| | | global Database.QueryLocator start(Database.BatchableContext bc) { |
| | | // query = 'select Id,(select id,IF_Coverage_Target_Asset__c,IF_Coverage_Real_Asset__c,CurrentContract__r.Contract_End_Date__c,CurrentContract__r.Contract_Conclusion_Date__c,Product2.Category4__c,Product2.ServiceCategory__c,Product2.Category3__c from Asset_Hospital__r where Status != \'廃棄\' and Status != \'待报废\'' |
| | | // +' and IF_Parts_production__c != \'1\'' |
| | | // +' and ((SerMarGuranteeType__c != \'服务多年保修\' and SerMarGuranteeType__c != \'市场多年保修\') or Extend_Gurantee_DateTo__c >= :egdTime)' |
| | | // +' and Product2.ServiceCategory__c != null) from Account where id in :hospIds'; |
| | | |
| | | system.debug('执行start'); |
| | | iflog = new BatchIF_Log__c(); |
| | | iflog.Type__c = 'PushNotification'; |
| | |
| | | OCSM_Period_half = '2H'; |
| | | } |
| | | // 5条以上软性镜医院&&医院有效 |
| | | Date egdTime = Date.newInstance(toDayTime.year()+1,3,1); |
| | | List<AggregateResult> Asset1 = new List<AggregateResult>(); |
| | | egdTime = Date.newInstance(toDayTime.year()+1,3,1); |
| | | List<AggregateResult> results = new List<AggregateResult>(); |
| | | |
| | | String groupQuery = 'SELECT count(Id),Hospital__c' |
| | | + ' FROM Asset' |
| | | + ' WHERE Product2.ServiceCategory__c =\'软性镜\' AND Is_Active__c =\'有効\' AND RecordType.DeveloperName =\'HP\' '; |
| | | if (accountIdList != null && accountIdList.size() > 0) { |
| | | Asset1 = [select count(Id),Hospital__c from asset where Hospital__c IN :accountIdList and Product2.ServiceCategory__c ='软性镜' Group by Hospital__c having count(Id)>=5]; |
| | | }else{ |
| | | Asset1 = [select count(Id),Hospital__c from asset where Product2.ServiceCategory__c ='软性镜' Group by Hospital__c having count(Id)>=5]; |
| | | groupQuery += ' AND Hospital__c IN :accountIdList'; |
| | | } |
| | | groupQuery += ' Group by Hospital__c having count(Id)>=5'; |
| | | |
| | | if(Asset1!=null && Asset1.size() > 0){ |
| | | for (AggregateResult a1 : Asset1) { |
| | | System.debug(LoggingLevel.INFO, '*** groupQuery: ' + groupQuery); |
| | | results = Database.query(groupQuery); |
| | | if(results!=null && results.size() > 0){ |
| | | for (AggregateResult a1 : results) { |
| | | hospIds.add(String.valueOf(a1.get('Hospital__c'))); |
| | | } |
| | | } |
| | | query = 'select Id,Hospital__c,Hospital__r.IF_Coverage_Target_HP__c,IF_Coverage_Target_Asset__c,IF_Coverage_Real_Asset__c,CurrentContract__r.Contract_End_Date__c,CurrentContract__r.Contract_Conclusion_Date__c,Product2.Category4__c,Product2.ServiceCategory__c,Product2.Category3__c from Asset' |
| | | +' where Hospital__c in :hospIds and Product2.ServiceCategory__c != null and Status != \'廃棄\' and Status != \'待报废\'' |
| | | +' and IF_Parts_production__c != \'1\' and SerMarGuranteeType__c = null and (Extend_Gurantee_DateTo__c = null or Extend_Gurantee_DateTo__c < :egdTime) order by hospital__c'; |
| | | return Database.getQueryLocator(query); |
| | | return Database.getQueryLocator([SELECT Id,IF_Coverage_Target_HP__c, |
| | | (SELECT Id,Hospital__c,Hospital__r.IF_Coverage_Target_HP__c,IF_Coverage_Target_Asset__c,IF_Coverage_Real_Asset__c, |
| | | CurrentContract__r.Contract_End_Date__c,CurrentContract__r.Contract_Conclusion_Date__c,Product2.Category4__c, |
| | | Product2.ServiceCategory__c,Product2.Category3__c |
| | | FROM Asset_Hospital__r |
| | | WHERE Product2.ServiceCategory__c != null |
| | | AND Product2.Maintenance_Price_Year__c != 0 |
| | | AND Status != '廃棄' |
| | | AND Status != '待报废' |
| | | AND IF_StopParts_production__c != '1' |
| | | AND ((SerMarGuranteeType__c = null AND Extend_Gurantee_DateTo__c = null) |
| | | OR (SerMarGuranteeType__c!=null AND Extend_Gurantee_DateTo__c < :egdTime) |
| | | OR CurrentContract__c = null) ) , |
| | | (SELECT Id ,Target_Rigid_Mirror_2__c,Target_Soft_Mirror_2__c,Target_Correlation_Lightsource__c,Account_HP__c,OCSM_Period_half__c |
| | | FROM Account_Servicetarget__r |
| | | WHERE OCSM_Period_half__c = :OCSM_Period_half |
| | | AND OCSM_Period__c = :OCSM_Period) |
| | | FROM Account WHERE Id IN:hospIds]); |
| | | } |
| | | |
| | | global void execute(Database.BatchableContext BC, list<Asset> Assets) { |
| | | global void execute(Database.BatchableContext BC, list<Account> accList) { |
| | | system.debug('执行execute'); |
| | | List<Account_Service_Of_Target__c> asots = new List<Account_Service_Of_Target__c>(); |
| | | // List<Account_Service_Of_Target__c> asotsIN = new List<Account_Service_Of_Target__c>(); |
| | | List<Id> accIds = new List<Id>(); |
| | | Map<String,Account_Service_Of_Target__c> asotMap = new Map<String,Account_Service_Of_Target__c>(); |
| | | |
| | | for (Asset ass1 : Assets) { |
| | | accIds.add(ass1.Hospital__c); |
| | | } |
| | | List<Account> accList = [select id from Account where id in :accIds]; |
| | | for (Account acc : accList) { |
| | | // 标记是否覆盖率目标医院 |
| | | List<Asset> assetList = new List<Asset>(); |
| | | List<Account_Service_Of_Target__c> targetObjs = new List<Account_Service_Of_Target__c>(); |
| | | for(Account acc:accList){ |
| | | acc.IF_Coverage_Target_HP__c = '1'; |
| | | } |
| | | List<Account_Service_Of_Target__c> asotList = [select Id,Target_Rigid_Mirror_2__c,Target_Soft_Mirror_2__c,Target_Correlation_Lightsource__c,Account_HP__c,OCSM_Period_half__c |
| | | from Account_Service_Of_Target__c |
| | | where Account_HP__c in :accIds and OCSM_Period_half__c = :OCSM_Period_half |
| | | and OCSM_Period__c = :OCSM_Period]; |
| | | if (asotList != null) { |
| | | for (Account_Service_Of_Target__c asot : asotList) { |
| | | for (Id accid : accIds) { |
| | | if (asot.Account_HP__c == accid) { |
| | | asotMap.put(accid,asot); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | List<Asset> AssetsTarget = new List<Asset>(); |
| | | for (Asset ass1 : Assets) { |
| | | // 覆盖目标(硬) |
| | | Integer mirror_1 = 0; |
| | | // 覆盖目标(软) |
| | | Integer mirror_2 = 0; |
| | | //覆盖目标(周边) |
| | | Integer mirror_3 = 0; |
| | | // 标记是否覆盖率目标设备 |
| | | ass1.IF_Coverage_Target_Asset__c = '1'; |
| | | AssetsTarget.add(ass1); |
| | | |
| | | if (ass1.Product2.ServiceCategory__c == '硬性镜') { |
| | | // 覆盖目标(硬) |
| | | Integer mirror_1 = 0; |
| | | // 覆盖目标(软) |
| | | Integer mirror_2 = 0; |
| | | //覆盖目标(周边) |
| | | Integer mirror_3 = 0; |
| | | for(Asset ass: acc.Asset_Hospital__r){ |
| | | ass.IF_Coverage_Target_Asset__c = '1'; |
| | | assetList.add(ass); |
| | | if (ass.Product2.ServiceCategory__c == '硬性镜') { |
| | | mirror_1++; |
| | | } |
| | | if(ass1.Product2.ServiceCategory__c =='软性镜'){ |
| | | if(ass.Product2.ServiceCategory__c =='软性镜'){ |
| | | mirror_2++; |
| | | } |
| | | if (ass1.Product2.ServiceCategory__c == '周边') { |
| | | if (ass.Product2.ServiceCategory__c == '周边') { |
| | | mirror_3++; |
| | | } |
| | | if (asotMap.containsKey(ass1.Hospital__c)) { |
| | | Account_Service_Of_Target__c asotOne = asotMap.get(ass1.Hospital__c); |
| | | system.debug('asotOne=='+ asotOne); |
| | | } |
| | | System.debug(LoggingLevel.INFO, '*** mirror_1: ' + mirror_1); |
| | | System.debug(LoggingLevel.INFO, '*** mirror_2: ' + mirror_2); |
| | | System.debug(LoggingLevel.INFO, '*** mirror_3: ' + mirror_3); |
| | | if(acc.Account_Servicetarget__r.size() > 0){ |
| | | |
| | | for(Account_Service_Of_Target__c asotOne: acc.Account_Servicetarget__r){ |
| | | asotOne.Coverage_Target_Account__c = true; |
| | | asotOne.Target_Rigid_Mirror_2__c += mirror_1; |
| | | asotOne.Target_Soft_Mirror_2__c += mirror_2; |
| | | asotOne.Target_Correlation_Lightsource__c += mirror_3; |
| | | if (!asots.contains(asotOne)) { |
| | | asots.add(asotOne); |
| | | } |
| | | }else{ |
| | | Account_Service_Of_Target__c asot1 = new Account_Service_Of_Target__c(); |
| | | asot1.Account_HP__c = ass1.Hospital__c; |
| | | asot1.Coverage_Target_Account__c = true; |
| | | asot1.Target_Rigid_Mirror_2__c = mirror_1; |
| | | asot1.Target_Soft_Mirror_2__c = mirror_2; |
| | | asot1.Target_Correlation_Lightsource__c = mirror_3; |
| | | asot1.OCSM_Period__c = OCSM_Period; |
| | | asot1.OCSM_Period_half__c = OCSM_Period_half; |
| | | asotMap.put(ass1.hospital__c,asot1); |
| | | if (!asots.contains(asot1)) { |
| | | asots.add(asot1); |
| | | } |
| | | targetObjs.add(asotOne); |
| | | } |
| | | }else{ |
| | | Account_Service_Of_Target__c asot1 = new Account_Service_Of_Target__c(); |
| | | asot1.Account_HP__c = acc.Id; |
| | | asot1.Coverage_Target_Account__c = true; |
| | | asot1.Target_Rigid_Mirror_2__c = mirror_1; |
| | | asot1.Target_Soft_Mirror_2__c = mirror_2; |
| | | asot1.Target_Correlation_Lightsource__c = mirror_3; |
| | | asot1.OCSM_Period__c = OCSM_Period; |
| | | asot1.OCSM_Period_half__c = OCSM_Period_half; |
| | | targetObjs.add(asot1); |
| | | } |
| | | UpSert asots; |
| | | Oly_TriggerHandler.bypass('AssetTrigger'); |
| | | system.debug('执行update AssetsTarget前'); |
| | | update AssetsTarget; |
| | | system.debug('执行update accList前'); |
| | | Oly_TriggerHandler.bypass('AccountTrigger'); |
| | | update accList; |
| | | |
| | | } |
| | | |
| | | Oly_TriggerHandler.bypass('AssetTrigger'); |
| | | system.debug('执行update AssetsTarget前'); |
| | | update assetList; |
| | | system.debug('执行update accList前'); |
| | | Oly_TriggerHandler.bypass('AccountTrigger'); |
| | | update accList; |
| | | UpSert targetObjs; |
| | | } |
| | | |
| | | global void finish(Database.BatchableContext BC) { |
| | |
| | | } |
| | | if (accountIdList != null && accountIdList.size() > 0) { |
| | | query = 'select id,Hospital__c,IF_Coverage_Target_Asset__c,IF_Coverage_Real_Asset__c,CurrentContract__r.Contract_End_Date__c,CurrentContract__r.Contract_Conclusion_Date__c,Product2.Category4__c,Product2.ServiceCategory__c,Product2.Category3__c from Asset where ' |
| | | +' IF_Parts_production__c != \'1\' and CurrentContract__c != null and Hospital__c in :accountIdList' |
| | | +' IF_StopParts_production__c != \'1\' and CurrentContract__c != null and Hospital__c in :accountIdList' |
| | | +' and (CurrentContract__r.Contract_End_Date__c >= :start_dateH1 and CurrentContract__r.Contract_Conclusion_Date__c <= :end_dateH1) order by hospital__c'; |
| | | }else{ |
| | | query = 'select id,Hospital__c,IF_Coverage_Target_Asset__c,IF_Coverage_Real_Asset__c,CurrentContract__r.Contract_End_Date__c,CurrentContract__r.Contract_Conclusion_Date__c,Product2.Category4__c,Product2.ServiceCategory__c,Product2.Category3__c from Asset where ' |
| | | +' IF_Parts_production__c != \'1\' and CurrentContract__c != null' |
| | | +' IF_StopParts_production__c != \'1\' and CurrentContract__c != null' |
| | | +' and (CurrentContract__r.Contract_End_Date__c >= :start_dateH1 and CurrentContract__r.Contract_Conclusion_Date__c <= :end_dateH1) order by hospital__c'; |
| | | } |
| | | |
| | |
| | | end_dateH1 = Date.newInstance(toDayTime.year(),9,30); |
| | | }else{ |
| | | start_dateH1 = Date.newInstance(toDayTime.year(),3,1); |
| | | end_dateH1 = Date.newInstance(toDayTime.year()+1,3,31); |
| | | end_dateH1 = Date.newInstance(toDayTime.year(),3,31); |
| | | } |
| | | return Database.getQueryLocator(query); |
| | | } |
| | |
| | | for (Asset ass : Assets) { |
| | | accIds.add(ass.Hospital__c); |
| | | } |
| | | List<Account_Service_Of_Target__c> asotList = [select Id,Finish_Rigid_Mirror_2__c,Finish_Rigid_Mirror_3__c,Finish_Correlation_Lightsource__c,Finish_Rigid_Mirror_1__c,Account_HP__c,OCSM_Period_half__c |
| | | List<Account_Service_Of_Target__c> asotList = [select Id,Finish_Rigid_Mirror_2__c,Finish_Correlation_Lightsource__c,Finish_Rigid_Mirror_1__c,Account_HP__c,OCSM_Period_half__c |
| | | from Account_Service_Of_Target__c |
| | | where Account_HP__c in :accIds and OCSM_Period_half__c = :OCSM_Period_half |
| | | and OCSM_Period__c = :OCSM_Period]; |
| | |
| | | system.debug('这个集合:AssetsReal ==='+AssetsReal); |
| | | if (AssetsReal!=null) { |
| | | try { |
| | | Oly_TriggerHandler.bypass('AssetTrigger'); |
| | | update AssetsReal; |
| | | } |
| | | catch (Exception e) { |
| | |
| | | if (accountIdList != null && accountIdList.size() > 0) { |
| | | // 保有设备不为零件停产 |
| | | query = 'select Id,Hospital__c,CurrentContract__c,CurrentContract__r.Contract_Conclusion_Date__c,CurrentContract__r.New_Contract_TypeF_Text__c,Product2.ServiceCategory__c,Product2.Category3__c,Product2.Category4__c' |
| | | +' from Asset where Hospital__c in :accountIdList and IF_Parts_production__c != \'1\' and CurrentContract__r.New_Contract_TypeF_Text__c =\'续签合同\'' |
| | | +' from Asset where Hospital__c in :accountIdList and IF_StopParts_production__c != \'1\' and CurrentContract__r.New_Contract_TypeF_Text__c =\'续签合同\'' |
| | | +' and CurrentContract__r.Contract_Conclusion_Date__c <= :effectiveTime order by hospital__c'; |
| | | }else{ |
| | | // 保有设备不为零件停产 |
| | | query = 'select Id,Hospital__c,CurrentContract__c,CurrentContract__r.Contract_Conclusion_Date__c,CurrentContract__r.New_Contract_TypeF_Text__c,Product2.ServiceCategory__c,Product2.Category3__c,Product2.Category4__c' |
| | | +' from Asset where IF_Parts_production__c != \'1\' and CurrentContract__r.New_Contract_TypeF_Text__c =\'续签合同\'' |
| | | +' from Asset where IF_StopParts_production__c != \'1\' and CurrentContract__r.New_Contract_TypeF_Text__c =\'续签合同\'' |
| | | +' and CurrentContract__r.Contract_Conclusion_Date__c <= :effectiveTime order by hospital__c'; |
| | | } |
| | | return Database.getQueryLocator(query); |
| | |
| | | for (Asset ass1 : Assets) { |
| | | accIds.add(ass1.Hospital__c); |
| | | } |
| | | List<Account_Service_Of_Target__c> asotList = [select Id,Renew_Finish_Rigid_Mirror_1__c,Renew_Finish_Rigid_Mirror_2__c,Renew_Finish_Rigid_Mirror_3__c,Renew_Finish_Correlation_Lightsource__c,Renew_Finish_Else__c,Account_HP__c,OCSM_Period_half__c |
| | | List<Account_Service_Of_Target__c> asotList = [select Id,Renew_Finish_Rigid_Mirror_1__c,Renew_Finish_Rigid_Mirror_3__c,Renew_Finish_Correlation_Lightsource__c,Renew_Finish_Else__c,Account_HP__c,OCSM_Period_half__c |
| | | from Account_Service_Of_Target__c |
| | | where Account_HP__c in :accIds and OCSM_Period_half__c = :OCSM_Period_half |
| | | and OCSM_Period__c = :OCSM_Period]; |
| | |
| | | } |
| | | if (AssetsReal!=null) { |
| | | try { |
| | | Oly_TriggerHandler.bypass('AssetTrigger'); |
| | | update AssetsReal; |
| | | } |
| | | catch (Exception e) { |
| | |
| | | if (accountIdList != null && accountIdList.size() > 0) { |
| | | // 保有设备不为零件停产 |
| | | query ='select Id,Hospital__c,CurrentContract_F__r.IF_Target_Renew__c,CurrentContract__c,CurrentContract__r.Contract_End_Date__c,CurrentContract__r.Contract_Start_Date__c,Product2.ServiceCategory__c,CurrentContract__r.Status__c,Product2.Category3__c,Product2.Category4__c' |
| | | + ' from Asset where IF_Parts_production__c != \'1\' and Hospital__c in :accountIdList and Product2.ServiceCategory__c != null' |
| | | + ' from Asset where IF_StopParts_production__c != \'1\' and Hospital__c in :accountIdList and Product2.ServiceCategory__c != null' |
| | | // 测试不开启 |
| | | +' and CurrentContract_F__r.IF_Target_Renew__c = \'1\'' |
| | | + ' and ((CurrentContract__r.Contract_End_Date__c>= :start_date1 and CurrentContract__r.Contract_End_Date__c<= :end_date1) ' |
| | |
| | | }else{ |
| | | // 保有设备不为零件停产 |
| | | query ='select Id,Hospital__c,CurrentContract_F__r.IF_Target_Renew__c,CurrentContract__c,CurrentContract__r.Contract_End_Date__c,CurrentContract__r.Contract_Start_Date__c,Product2.ServiceCategory__c,CurrentContract__r.Status__c,Product2.Category3__c,Product2.Category4__c' |
| | | + ' from Asset where IF_Parts_production__c != \'1\' and Product2.ServiceCategory__c != null ' |
| | | + ' from Asset where IF_StopParts_production__c != \'1\' and Product2.ServiceCategory__c != null ' |
| | | // 测试不开启 |
| | | +' and CurrentContract_F__r.IF_Target_Renew__c = \'1\'' |
| | | + ' and ((CurrentContract__r.Contract_End_Date__c>= :start_date1 and CurrentContract__r.Contract_End_Date__c<= :end_date1) ' |
| | |
| | | } |
| | | if (AssetsTarget!=null) { |
| | | try { |
| | | Oly_TriggerHandler.bypass('AssetTrigger'); |
| | | update AssetsTarget; |
| | | } |
| | | catch (Exception e) { |
| | |
| | | global static Response saveFile(String fileName,String key,String transId,String parentId){ |
| | | FileAddress__c file = new FileAddress__c(); |
| | | PIHelper.PIIntegration pI=PIHelper.getPIIntegrationInfo('Document'); |
| | | // 去除filename里得“&” bysushanhu 20220414 |
| | | fileName = fileName.remove('&'); |
| | | file.DownloadLink__c =pI.undeleteUrl+key+'&fileName='+fileName; |
| | | file.FileName__c =fileName; |
| | | file.ViewLink__c =pI.queryUrl+key; |
| | |
| | | @isTest |
| | | private class FileUploadControllerTest { |
| | | static testMethod void testMethod1() { |
| | | TestDataUtility.CreatePIPolicyConfiguration('Document'); |
| | | // TestDataUtility.CreatePIPolicyConfiguration('Document'); |
| | | TestDataUtility.CreatePIPolicyConfiguration(); |
| | | Account acc = new Account(Name = 'test'); |
| | | Map<String,Object> accMap = new Map<String,Object>(); |
| | | accMap.put('Account',acc); |
| | |
| | | public Boolean addFlag { get; private set; }//敏感地址使用标记 |
| | | public String qrcode { get; private set; } |
| | | public String barcode { get; private set; } |
| | | // 20220413 ljh 抬头显示 add start |
| | | public String AgencyAddressName { get; private set; } |
| | | public Boolean isAgencyOrCenter { get; private set; } |
| | | public String AgencyOrCenterAddress { get; private set; } |
| | | // 20220413 ljh 抬头显示 add end |
| | | |
| | | public FixtureRentalPDFController() { |
| | | pageNum = Integer.valueOf(ApexPages.currentPage().getParameters().get('page')); |
| | | rentalApplyIdIMG = ApexPages.currentPage().getParameters().get('raid'); |
| | |
| | | //新建一页 |
| | | |
| | | PDFInfo info = new PDFInfo(new Rental_Apply__c(),New List<Rental_Apply_Equipment_Set_Detail__c>()); |
| | | // 20220413 ljh 抬头显示 update start |
| | | //20201120 LJH OCSM_BP5-61 update start |
| | | // if(!IsShowLU){ |
| | | // if(!IsMain){ |
| | | // info.isAgencyOrCenter = true;//办事处 |
| | | // info.AgencyAddressName = '请将备品回寄至'; |
| | | // info.AgencyAddressName += ApplyHeadShow.ToAgency__c == null ? '' : ApplyHeadShow.ToAgency__c; |
| | | // info.AgencyAddressName += '办事处'; |
| | | // info.AgencyOrCenterAddress = AgencyAddressIdMap.get(ApplyHeadShow.Id); |
| | | // }else{ |
| | | // info.isAgencyOrCenter = false;//备品中心 |
| | | // info.AgencyOrCenterAddress = centerAddressInfo; |
| | | // } |
| | | // }else{ |
| | | // info.isAgencyOrCenter = false;//备品中心 |
| | | // info.AgencyOrCenterAddress = centerAddressInfo; |
| | | // } |
| | | //20201120 LJH OCSM_BP5-61 update end |
| | | if(!IsShowLU){ |
| | | if(!IsMain){ |
| | | info.isAgencyOrCenter = true;//办事处 |
| | | info.AgencyAddressName = '请将备品回寄至'; |
| | | info.AgencyAddressName += ApplyHeadShow.ToAgency__c == null ? '' : ApplyHeadShow.ToAgency__c; |
| | | info.AgencyAddressName += '办事处'; |
| | | info.AgencyOrCenterAddress = AgencyAddressIdMap.get(ApplyHeadShow.Id); |
| | | isAgencyOrCenter = true;//办事处 |
| | | AgencyAddressName = '请将备品回寄至'; |
| | | AgencyAddressName += ApplyHeadShow.ToAgency__c == null ? '' : ApplyHeadShow.ToAgency__c; |
| | | AgencyAddressName += '办事处'; |
| | | AgencyOrCenterAddress = AgencyAddressIdMap.get(ApplyHeadShow.Id); |
| | | }else{ |
| | | info.isAgencyOrCenter = false;//备品中心 |
| | | info.AgencyOrCenterAddress = centerAddressInfo; |
| | | isAgencyOrCenter = false;//备品中心 |
| | | AgencyOrCenterAddress = centerAddressInfo; |
| | | } |
| | | }else{ |
| | | info.isAgencyOrCenter = false;//备品中心 |
| | | info.AgencyOrCenterAddress = centerAddressInfo; |
| | | isAgencyOrCenter = false;//备品中心 |
| | | AgencyOrCenterAddress = centerAddressInfo; |
| | | } |
| | | //20201120 LJH OCSM_BP5-61 update end |
| | | // 20220413 ljh 抬头显示 update end |
| | | integer PageCut = 0; |
| | | if (PageAllNum>=7) { |
| | | PageAllNum=7; |
| | |
| | | // Data Bean |
| | | class PDFInfo { |
| | | public String eSetName { get; private set; } //备品中心管理单号 |
| | | public String AgencyAddressName { get; private set; } //回寄地址 20201123 LJH OCSM_BP5-61 add |
| | | public Boolean isAgencyOrCenter { get; private set; } //备品中心?办事处 20201123 LJH OCSM_BP5-61 add |
| | | public String AgencyOrCenterAddress { get; private set; }//20201124 LJH OCSM_BP5-61 add |
| | | // 20220413 ljh 抬头显示 update start |
| | | // public String AgencyAddressName { get; private set; } //回寄地址 20201123 LJH OCSM_BP5-61 add |
| | | // public Boolean isAgencyOrCenter { get; private set; } //备品中心?办事处 20201123 LJH OCSM_BP5-61 add |
| | | // public String AgencyOrCenterAddress { get; private set; }//20201124 LJH OCSM_BP5-61 add |
| | | // 20220413 ljh 抬头显示 update end |
| | | public String requestOwner { get; private set; } //申请人 |
| | | public String salesDept { get; private set; } //所属本部 |
| | | public String workPlace { get; private set; } //所属办事处 |
| | |
| | | protected override void beforeInsert() { |
| | | beforeExecute(); |
| | | //客户人员录入后,【电话】【邮箱】自动录入 thh 20220321 start |
| | | getContactInformation(); |
| | | // getContactInformation(); |
| | | //客户人员录入后,【电话】【邮箱】自动录入 thh 20220321 end |
| | | } |
| | | protected override void beforeUpdate() { |
| | | beforeExecute(); |
| | | //客户人员录入后,【电话】【邮箱】自动录入 thh 20220321 start |
| | | getContactInformation(); |
| | | // getContactInformation(); |
| | | //客户人员录入后,【电话】【邮箱】自动录入 thh 20220321 end |
| | | } |
| | | |
| | | protected override void afterInsert() { |
| | | //shareToOSCM(); |
| | | //FSE主担当共享 |
| | | shareToFSEMain(); |
| | | } |
| | | |
| | | protected override void afterUpdate() { |
| | | //shareToOSCM(); |
| | | shareToFSEMain(); |
| | | } |
| | | //Before処理 |
| | | private void beforeExecute() { |
| | |
| | | nnObj.HospitalName__c = null; //医院名 |
| | | nnObj.Hospital__c = null; //医院 |
| | | } |
| | | //20220419 you SWAG-CBUB2W start |
| | | //公式考文本 给FSE担当赋值 |
| | | System.debug(nnObj.FSE_Owner_id__c+'==123=='+nnObj.FSE_Owner__c); |
| | | if(nnObj.FSE_Owner_id__c != nnObj.FSE_Owner__c){ |
| | | nnObj.FSE_Owner__c = nnObj.FSE_Owner_id__c; |
| | | } |
| | | if(Trigger.isInsert && (nnObj.Request1__c.indexOf('服务对应') !=-1 || nnObj.ServiceCorrespond__c ==true)){ |
| | | nnObj.Service_Status__c ='01.未跟进'; |
| | | } |
| | | //20220419 you SWAG-CBUB2W end |
| | | } |
| | | |
| | | if (depIDList.size()>0) { |
| | | accList = [Select Id,OwnerId, |
| | | Hospital__c,Hospital__r.Name, |
| | |
| | | nObj.Product1_Manual__c = ''; |
| | | } |
| | | } |
| | | //20220419 you SWAG-CBUB2W start |
| | | private void shareToFSEMain() { |
| | | //存放用于新增的共享数据 |
| | | List<Inquiry_form__Share> insertList = new List<Inquiry_form__Share>(); |
| | | //存放(产品咨询单id,共享对象) |
| | | Map<Id,Inquiry_form__Share> insertMap = new Map<Id,Inquiry_form__Share>(); |
| | | //存放最后需要新增的共享数据 |
| | | List<Inquiry_form__Share> lastInsertList = new List<Inquiry_form__Share>(); |
| | | //存放已有的相同的共享原因的数据 |
| | | List<Id> deleteTargetAOIdList = new List<Id>(); |
| | | //存放用于的id |
| | | List<Id> userIdList = new List<Id>(); |
| | | // String rowCause = 'Manual'; |
| | | //新增一个共享原因 |
| | | String rowCause = Schema.Inquiry_form__Share.RowCause.FSE_Owner_c_User__c; |
| | | System.debug('rowCause:'+rowCause); |
| | | String ownerCause = 'Owner'; |
| | | //Apex共有の理由名OCSM_Owner_c_User |
| | | for(Inquiry_form__c nObj : newList) { |
| | | Inquiry_form__c oObj = null; |
| | | System.debug('FSE主担当:'+nObj.FSE_Owner__c); |
| | | if (oldMap != null && oldMap.containsKey(nObj.Id)) { |
| | | oObj = oldMap.get(nObj.Id); |
| | | } |
| | | |
| | | |
| | | if ( nObj.FSE_Owner__c != null && (oObj == null || oObj.FSE_Owner__c != nObj.FSE_Owner__c)) { |
| | | Inquiry_form__Share aos = new Inquiry_form__Share( |
| | | RowCause = rowCause, |
| | | ParentId = nObj.Id, |
| | | UserOrGroupId = nObj.FSE_Owner__c, |
| | | AccessLevel = 'Edit'); |
| | | //存放要新增的共享数据 |
| | | insertList.add(aos); |
| | | System.debug('key:'+nObj.Id); |
| | | //存放(产品咨询单id,共享对象); |
| | | insertMap.put(nObj.Id,aos); |
| | | //存放用户id 用作检索条件 |
| | | userIdList.add(nObj.FSE_Owner__c); |
| | | } |
| | | if(oObj != null && oObj.FSE_Owner__c != nObj.FSE_Owner__c){ |
| | | deleteTargetAOIdList.add(nObj.Id); |
| | | } |
| | | } |
| | | System.debug('insertList:'+insertList); |
| | | System.debug('insertMap1:'+insertMap); |
| | | System.debug('IDlIST:'+deleteTargetAOIdList); |
| | | // 先 Delete 后 Insert |
| | | if (deleteTargetAOIdList.size() > 0) { |
| | | List<Inquiry_form__Share> deleteList = [SELECT Id |
| | | FROM Inquiry_form__Share |
| | | WHERE RowCause = :rowCause |
| | | AND ParentId IN :deleteTargetAOIdList |
| | | ]; |
| | | delete deleteList; |
| | | } |
| | | //判断需要共享的人 是不是创建人 如果是则说明有一条这个人的owner数据 则不新增 |
| | | if (insertMap!= null) { |
| | | List<Inquiry_form__Share> ownerList = [SELECT Id,ParentId,UserOrGroupId |
| | | FROM Inquiry_form__Share |
| | | WHERE RowCause = :ownerCause |
| | | AND ParentId IN :insertMap.keySet() |
| | | AND UserOrGroupId IN :userIdList |
| | | ]; |
| | | System.debug('ownerList:'+ownerList); |
| | | if(ownerList.size() > 0){ |
| | | for( Inquiry_form__Share inq:ownerList){ |
| | | String id = String.valueOf(inq.ParentId); |
| | | System.debug('id:'+id); |
| | | if(insertMap.containsKey(id)){ |
| | | insertMap.remove(inq.ParentId); |
| | | } |
| | | } |
| | | } |
| | | |
| | | } |
| | | System.debug('insertMap2:'+insertMap); |
| | | |
| | | if(insertMap != null){ |
| | | for(Inquiry_form__Share inquiry : insertMap.values()){ |
| | | lastInsertList.add(inquiry); |
| | | } |
| | | } |
| | | |
| | | |
| | | System.debug('共享内容:' +lastInsertList); |
| | | if(lastInsertList.size() > 0){ |
| | | insert lastInsertList; |
| | | } |
| | | |
| | | } |
| | | //20220419 you SWAG-CBUB2W end |
| | | |
| | | //客户人员录入后,【电话】【邮箱】自动录入 thh 20220321 start |
| | | private void getContactInformation(){ |
| | | List<String> ContactIdList = new List<String>(); |
| | | List<Contact> ContactList = new List<Contact>(); |
| | | Map<String, Contact> ContactMap = new Map<String, Contact>(); |
| | | for(Inquiry_form__c nnObj : newList) { |
| | | if(String.isNotBlank(nnObj.Contact_Name__c)){ |
| | | ContactIdList.add(nnObj.Contact_Name__c); |
| | | } |
| | | } |
| | | if(ContactIdList.size() > 0){ |
| | | ContactList = [select id, Phone, Email from Contact where Id IN :ContactIdList]; |
| | | for(Contact contact : ContactList){ |
| | | ContactMap.put(contact.Id, contact); |
| | | } |
| | | } |
| | | for(Inquiry_form__c nnObj : newList) { |
| | | if(String.isNotBlank(nnObj.Contact_Name__c)){ |
| | | if(String.isNotBlank(ContactMap.get(nnObj.Contact_Name__c).Phone)){ |
| | | nnObj.Phone__c = ContactMap.get(nnObj.Contact_Name__c).Phone; |
| | | } |
| | | if(String.isNotBlank(ContactMap.get(nnObj.Contact_Name__c).Email)){ |
| | | nnObj.Email__c = ContactMap.get(nnObj.Contact_Name__c).Email; |
| | | } |
| | | } |
| | | } |
| | | } |
| | | // private void getContactInformation(){ |
| | | // List<String> ContactIdList = new List<String>(); |
| | | // List<Contact> ContactList = new List<Contact>(); |
| | | // Map<String, Contact> ContactMap = new Map<String, Contact>(); |
| | | // for(Inquiry_form__c nnObj : newList) { |
| | | // if(String.isNotBlank(nnObj.Contact_Name__c)){ |
| | | // ContactIdList.add(nnObj.Contact_Name__c); |
| | | // } |
| | | // } |
| | | // if(ContactIdList.size() > 0){ |
| | | // ContactList = [select id, Phone, Email from Contact where Id IN :ContactIdList]; |
| | | // for(Contact contact : ContactList){ |
| | | // ContactMap.put(contact.Id, contact); |
| | | // } |
| | | // } |
| | | // for(Inquiry_form__c nnObj : newList) { |
| | | // if(String.isNotBlank(nnObj.Contact_Name__c)){ |
| | | // if(String.isNotBlank(ContactMap.get(nnObj.Contact_Name__c).Phone)){ |
| | | // nnObj.Phone__c = ContactMap.get(nnObj.Contact_Name__c).Phone; |
| | | // } |
| | | // if(String.isNotBlank(ContactMap.get(nnObj.Contact_Name__c).Email)){ |
| | | // nnObj.Email__c = ContactMap.get(nnObj.Contact_Name__c).Email; |
| | | // } |
| | | // } |
| | | // } |
| | | // } |
| | | //客户人员录入后,【电话】【邮箱】自动录入 thh 20220321 end |
| | | |
| | | // 战略科室的主担当 を取得、Inquiry_form__Shareに設定(Read) |
| | |
| | | @isTest |
| | | private class InquiryFormHandlerTest { |
| | | @TestSetup |
| | | static void setup(){ |
| | | TestDataUtility.CreatePIPolicyConfiguration('Agency_Contact__c'); |
| | | } |
| | | |
| | | @isTest |
| | | static void Test1(){ |
| | | Test.setMock(HttpCalloutMock.class, new HttpMock()); |
| | | |
| | | List<Agency_Contact__c> lra = new List<Agency_Contact__c>(); |
| | | lra.add(new Agency_Contact__c( |
| | | Id = 'a2R1m0000007BPD' |
| | | )); |
| | | Test.startTest(); |
| | | //system.debug(PIHelper.getPIIntegrationInfo('Agency_Contact__c').newEncryptUrl); |
| | | AWSServiceTool2.EncryptPushCore(Json.serialize(lra),'Agency_Contact__c'); |
| | | AWSServiceTool2.EncryptPushFuture(null,null); |
| | | Test.stopTest(); |
| | | } |
| | | |
| | | class HttpMock implements HttpCalloutMock{ |
| | | |
| | | public HTTPResponse respond(HTTPRequest request) { |
| | | // 创建一个假的回应 |
| | | System.debug('------------------------------------------------------'); |
| | | HttpResponse response = new HttpResponse(); |
| | | string body = ''; |
| | | system.debug(request.getEndpoint()); |
| | | if(request.getEndpoint().contains('token')){ |
| | | system.debug('url=token'); |
| | | response.setHeader('Content-Type', 'application/json'); |
| | | body='{ "message": "", "object": "freqfewqfewewfewfew", "status": "", "success": true, "timestamp": 0, "txId": "" }'; |
| | | } else if(request.getEndpoint().contains('insert')){ |
| | | system.debug('url=Insert'); |
| | | response.setHeader('Content-Type', 'application/json'); |
| | | body='{ "message": "", "object": [ { "dataId": "123456", "directShippmentAddress": "", "directShippmentAddressEncrypt": "", "isDelete": 0, "phoneNumber": "", "phoneNumberEncrypt": "", "sfRecordId": "a2R1m0000007BPD" } ], "status": "", "success": true, "timestamp": 0, "txId": "" }'; |
| | | } else if(request.getEndpoint().contains('update')){ |
| | | system.debug('url=update'); |
| | | response.setHeader('Content-Type', 'application/json'); |
| | | body='{ "message": "", "object": [ { "dataId": "123456", "directShippmentAddress": "", "directShippmentAddressEncrypt": "", "isDelete": 0, "phoneNumber": "", "phoneNumberEncrypt": "", "sfRecordId": "a2R1m0000007BPD" } ], "status": "", "success": true, "timestamp": 0, "txId": "" }'; |
| | | } else{ |
| | | |
| | | } |
| | | |
| | | response.setBody(body); |
| | | response.setStatus('OK'); |
| | | response.setStatusCode(200); |
| | | return response; |
| | | // } |
| | | } |
| | | } |
| | | |
| | | @isTest static void test_method_one() { |
| | | Profile p = [select Id from Profile where id =:System.Label.ProfileId_SystemAdmin]; |
| | | |
| | | User hpOwner = new User(Test_staff__c = true, LastName = 'hp', FirstName = 'owner', Alias = 'hp', Work_Location__c = '北京', CommunityNickname = 'hpOwner', Email = 'olympus_hpowner@sunbridge.com', Username = 'olympus_hpowner@sunbridge.com', IsActive = true, EmailEncodingKey = 'ISO-2022-JP', TimeZoneSidKey = 'Asia/Tokyo', LocaleSidKey = 'ja_JP', LanguageLocaleKey = 'ja', ProfileId = p.id); |
| | | insert hpOwner; |
| | | |
| | | Inquiry_form__c inquiryform = new Inquiry_form__c(); |
| | | inquiryform.Name = '2019102101'; |
| | | inquiryform.Request1__c = '需要报价'; |
| | | inquiryform.Product1__c = '超声'; |
| | | inquiryform.FSE_Owner__c = hpOwner.id; |
| | | insert inquiryform; |
| | | |
| | | } |
| | |
| | | dpt1.Hospital__c = hp.Id; |
| | | insert dpt1; |
| | | |
| | | Contact contact2 = new Contact(); |
| | | contact2.AccountId = dpt1.Id; |
| | | contact2.FirstName = '責任者'; |
| | | contact2.LastName = 'test1经销商'; |
| | | insert contact2; |
| | | //Contact contact2 = new Contact(); |
| | | //contact2.AccountId = dpt1.Id; |
| | | //contact2.FirstName = '責任者'; |
| | | //contact2.LastName = 'test1经销商'; |
| | | //insert contact2; |
| | | |
| | | Inquiry_form__c inquiryform = new Inquiry_form__c(); |
| | | inquiryform.Name = '2019102101'; |
| | |
| | | inquiryform.Phone__c = '13844756322'; |
| | | inquiryform.Product1__c = '超声'; |
| | | inquiryform.Request1__c = '需要报价'; |
| | | inquiryform.FSE_Owner__c = hpOwner.id; |
| | | insert inquiryform; |
| | | |
| | | Test.setMock(HttpCalloutMock.class, new HttpMock()); |
| | | |
| | | List<Agency_Contact__c> lra = new List<Agency_Contact__c>(); |
| | | lra.add(new Agency_Contact__c( |
| | | Id = 'a2R1m0000007BPD', |
| | | Aws_Data_Id__c = '123456' |
| | | )); |
| | | AWSServiceTool2.EncryptPushCore(Json.serialize(lra),'Agency_Contact__c'); |
| | | |
| | | Inquiry_form__c inquiryform0 = new Inquiry_form__c(Id = inquiryform.id); |
| | | inquiryform0.Hospital_Name__c = null; |
| | | //System.runAs (inquiryform){ |
| | |
| | | /*Map<String, object> nameDetails = (Map<String,object>) layoutComponents.get('Name');*/ |
| | | String fieldLabel = (String) fields.get('label'); |
| | | boolean placeholderF = (boolean) fields.get('placeholder'); |
| | | boolean isEditable = (boolean) fields.get('editableForNew'); // Check the editable prop |
| | | boolean isEditable = (boolean) fields.get('editableForUpdate')||(boolean)fields.get('editableForNew'); // Check the editable prop |
| | | if( (apiName != '' && fieldType =='Field') || (placeholderF)){ |
| | | if(userMode == 'classic' && fieldTypeDetail == 'address'){ |
| | | String fieldLabelPrefix = fieldLabel.split(' ')[0] == 'Address'?'':fieldLabel.split(' ')[0]; |
| | |
| | | public LightningUtil() { |
| | | |
| | | } |
| | | // 精琢科技 zxk 查询用户的用户产品区分字段 start |
| | | public static User loginUserId(){ |
| | | system.debug('UserInfo.getUserId()================>'+UserInfo.getUserId()); |
| | | return [select UserPro_Type__c from User where id =: UserInfo.getUserId()]; |
| | | } |
| | | // 精琢科技 zxk 查询用户的用户产品区分字段 end |
| | | public static List<Agency_Contact__c> selectOCMAgencyContact(Set<String> hospitalSet, Set<String> ahospitalSet) { |
| | | return [select Id, Agency_Hospital__c, IsOlympusContact__c, Name, Doctor_Division1__c, Type__c, Hospital_DC_Name__c,Department_Cateogy_F__c,Hospital_Name__c, |
| | | AWS_Data_Id__c // 20220222 PI改造 by Bright |
| | |
| | | public static void upsertAgencyOpportunity(List<Agency_Opportunity__c> upsertList) { |
| | | upsert upsertList Agency_Opportunity__c.TargetInputKey__c; |
| | | } |
| | | |
| | | //经销商系统 |
| | | public static List<Agency_Report__c> selectAgencyReport(Date week, String person_str) { |
| | | if (String.isBlank(person_str)) { |
| | | List<Contact> person_list = selectAgencyPerson(); |
| | | return [Select Id, Name, Report_Date__c, Product_Category1__r.Name, Product_Category2__r.Name, Product_Category3__r.Name, Product_Category1__c, Product_Category2__c, Product_Category3__c, Department_Cateogy__c, Purpose_Type__c, Agency_Report_Header__c, Agency_Hospital__r.Name, Agency_Hospital__r.Hospital__c, OppName__c, |
| | | Person_In_Charge2__c, Person_In_Charge2__r.Name, doctor2__c, doctor2__r.Name, Submit_date__c, |
| | | List<Contact> person_list = selectAgencyPerson();//fy Department_Cateogy_text__c |
| | | return [Select Id, Name, Report_Date__c, Product_Category1__r.Name, Product_Category2__r.Name, Product_Category3__r.Name, Product_Category1__c, Product_Category2__c, Product_Category3__c,ConsumptionOfConsumables__c, WorkMark__c,warlocksNumber__c,Department_Cateogy__c,Department_Cateogy_text__c,ProductClassification__c,WarlockClassification__c,ProductCcategory__c, productCategories__c,DealerPersonnel__c,WorkRecord__c,Purpose_Type__c,SupportNeeds__c, Agency_Report_Header__c, Agency_Hospital__r.Name, Agency_Hospital__r.Hospital__c, OppName__c, |
| | | Person_In_Charge2__c,DealerPersonnel__r.Name, Person_In_Charge2__r.Name, doctor2__c, doctor2__r.Name, Submit_date__c, |
| | | doctor2__r.AWS_Data_Id__c,Person_In_Charge2__r.AWS_Data_Id__c,// 20220222 PI改造 by Bright |
| | | Product_Category__c, Product_Category__r.Name, Result__c, visitor_title__c, Opportunity__c, Opportunity__r.Name |
| | | Product_Category__c, Product_Category__r.Name, Result__c, visitor_title__c, Opportunity__c, Opportunity__r.Name,EffectProgress__c, |
| | | UseProduct1__c,UseProduct2__c,UseProduct3__c,UseProduct1__r.Name,UseProduct2__r.Name,UseProduct3__r.Name |
| | | From Agency_Report__c |
| | | where Submit_date__c=:week and Person_In_Charge2__c in :person_list order by LastModifiedDate desc]; |
| | | } else { |
| | | return [Select Id, Name, Report_Date__c, Product_Category1__r.Name, Product_Category2__r.Name, Product_Category3__r.Name, Product_Category1__c, Product_Category2__c, Product_Category3__c, Department_Cateogy__c, Purpose_Type__c, Agency_Report_Header__c, Agency_Hospital__r.Name, Agency_Hospital__r.Hospital__c, OppName__c, |
| | | Person_In_Charge2__c, Person_In_Charge2__r.Name, doctor2__c, doctor2__r.Name, Submit_date__c, |
| | | where Submit_date__c=:week and Person_In_Charge2__c in :person_list and WeeklyReportClassification__c = '' order by LastModifiedDate desc]; |
| | | } else {//fy Department_Cateogy_text__c |
| | | return [Select Id, Name, Report_Date__c, Product_Category1__r.Name, Product_Category2__r.Name, Product_Category3__r.Name, Product_Category1__c, Product_Category2__c, Product_Category3__c,ConsumptionOfConsumables__c, WorkMark__c,warlocksNumber__c,Department_Cateogy__c,Department_Cateogy_text__c,DealerPersonnel__c,ProductClassification__c,WarlockClassification__c,ProductCcategory__c,productCategories__c,WorkRecord__c,Purpose_Type__c,SupportNeeds__c, Agency_Report_Header__c, Agency_Hospital__r.Name, Agency_Hospital__r.Hospital__c, OppName__c, |
| | | Person_In_Charge2__c,DealerPersonnel__r.Name, Person_In_Charge2__r.Name, doctor2__c, doctor2__r.Name, Submit_date__c, |
| | | doctor2__r.AWS_Data_Id__c,Person_In_Charge2__r.AWS_Data_Id__c,// 20220222 PI改造 by Bright |
| | | Product_Category__c, Product_Category__r.Name, Result__c, visitor_title__c, Opportunity__c, Opportunity__r.Name |
| | | Product_Category__c, Product_Category__r.Name, Result__c, visitor_title__c, Opportunity__c, Opportunity__r.Name,EffectProgress__c, |
| | | UseProduct1__c,UseProduct2__c,UseProduct3__c,UseProduct1__r.Name,UseProduct2__r.Name,UseProduct3__r.Name |
| | | From Agency_Report__c |
| | | where Submit_date__c=:week and Person_In_Charge2__c=:person_str order by LastModifiedDate desc]; |
| | | where Submit_date__c=:week and Person_In_Charge2__c=:person_str and WeeklyReportClassification__c = '' order by LastModifiedDate desc]; |
| | | } |
| | | } |
| | | |
| | | public static List<Agency_Report__c> selectMAgencyReport(Date date1, Date date2 ,List<Contact> conMList) { |
| | | List<Agency_Report__c> reportlist = [Select Id, Name, Report_Date__c, Product_Category1__r.Name, Product_Category2__r.Name, Product_Category3__r.Name, Product_Category1__c, Product_Category2__c, Product_Category3__c, Department_Cateogy__c, Purpose_Type__c, Agency_Report_Header__c, Agency_Hospital__r.Name, Agency_Hospital__r.Hospital__c, OppName__c, |
| | | Person_In_Charge2__c, Person_In_Charge2__r.Name, doctor2__c, doctor2__r.Name, Submit_date__c, |
| | | //追溯系统 |
| | | public static List<Agency_Report__c> selectAgencyReport01(Date week, String person_str) { |
| | | system.debug('person_strperson_str=================>'+person_str); |
| | | if (String.isBlank(person_str)) { |
| | | List<Contact> person_list = selectAgencyPerson01();//fy Department_Cateogy_text__c doctor3__c |
| | | return [Select Id, Name, Report_Date__c, Product_Category1__r.Name, Product_Category2__r.Name, Product_Category3__r.Name, Product_Category1__c, Product_Category2__c, Product_Category3__c,ConsumptionOfConsumables__c, WorkMark__c,warlocksNumber__c,Department_Cateogy__c,Department_Cateogy_text__c,ProductClassification__c,WarlockClassification__c,ProductCcategory__c,productCategories__c, DealerPersonnel__c,WorkRecord__c, Agency_Report_Header__c, Agency_Hospital__r.Name, Agency_Hospital__r.Hospital__c, OppName__c, |
| | | Person_In_Charge2__c,DealerPersonnel__r.Name, Person_In_Charge2__r.Name, doctor2__c,doctor3__c, doctor2__r.Name, Submit_date__c, |
| | | Product_Category__c, Product_Category__r.Name, Result__c, visitor_title__c, Opportunity__c, Opportunity__r.Name,EffectProgress__c, |
| | | doctor2__r.AWS_Data_Id__c,// 20220222 PI改造 by Bright |
| | | Product_Category__c, Product_Category__r.Name, Result__c, visitor_title__c, Opportunity__c, Opportunity__r.Name |
| | | UseProduct1__c,UseProduct2__c,UseProduct3__c,UseProduct1__r.Name,UseProduct2__r.Name,UseProduct3__r.Name |
| | | From Agency_Report__c |
| | | where Person_In_Charge2__c in :conMList and Report_Date__c >= :date1 and Report_Date__c <= :date2 ]; |
| | | where Submit_date__c=:week and Person_In_Charge2__c in :person_list and WeeklyReportClassification__c != '' order by LastModifiedDate desc]; |
| | | } else {//fy Department_Cateogy_text__c doctor3__c |
| | | return [Select Id, Name, Report_Date__c, Product_Category1__r.Name, Product_Category2__r.Name, Product_Category3__r.Name, Product_Category1__c, Product_Category2__c, Product_Category3__c,ConsumptionOfConsumables__c, WorkMark__c,warlocksNumber__c,Department_Cateogy__c,Department_Cateogy_text__c,DealerPersonnel__c,ProductClassification__c,WarlockClassification__c,ProductCcategory__c,productCategories__c, WorkRecord__c, Agency_Report_Header__c, Agency_Hospital__r.Name, Agency_Hospital__r.Hospital__c, OppName__c, |
| | | Person_In_Charge2__c,DealerPersonnel__r.Name, Person_In_Charge2__r.Name, doctor2__c,doctor3__c, doctor2__r.Name, Submit_date__c, |
| | | doctor2__r.AWS_Data_Id__c,// 20220222 PI改造 by Bright |
| | | Product_Category__c, Product_Category__r.Name, Result__c, visitor_title__c, Opportunity__c, Opportunity__r.Name,EffectProgress__c, |
| | | UseProduct1__c,UseProduct2__c,UseProduct3__c,UseProduct1__r.Name,UseProduct2__r.Name,UseProduct3__r.Name |
| | | From Agency_Report__c |
| | | where Submit_date__c=:week and Person_In_Charge2__c=:person_str and WeeklyReportClassification__c != '' order by LastModifiedDate desc]; |
| | | } |
| | | } |
| | | //经销商系统 |
| | | public static List<Agency_Report__c> selectMAgencyReport(Date date1, Date date2 ,List<Contact> conMList) {//fy Department_Cateogy_text__c |
| | | List<Agency_Report__c> reportlist = [Select Id, Name, Report_Date__c, Product_Category1__r.Name, Product_Category2__r.Name, Product_Category3__r.Name, Product_Category1__c, Product_Category2__c, Product_Category3__c,ConsumptionOfConsumables__c,warlocksNumber__c,WorkMark__c,Department_Cateogy__c,Department_Cateogy_text__c, DealerPersonnel__c,WorkRecord__c, ProductClassification__c,WarlockClassification__c,ProductCcategory__c,productCategories__c,Purpose_Type__c, Agency_Report_Header__c, Agency_Hospital__r.Name, Agency_Hospital__r.Hospital__c, OppName__c, |
| | | Person_In_Charge2__c,DealerPersonnel__r.Name,Person_In_Charge2__r.Name, doctor2__c, doctor2__r.Name, Submit_date__c,//支援需求SupportNeeds__c |
| | | doctor2__r.AWS_Data_Id__c,// 20220222 PI改造 by Bright |
| | | Product_Category__c, Product_Category__r.Name, Result__c, visitor_title__c, Opportunity__c, Opportunity__r.Name,EffectProgress__c,SupportNeeds__c, |
| | | UseProduct1__c,UseProduct2__c,UseProduct3__c,UseProduct1__r.Name,UseProduct2__r.Name,UseProduct3__r.Name |
| | | From Agency_Report__c |
| | | where Person_In_Charge2__c in :conMList and Report_Date__c >= :date1 and Report_Date__c <= :date2 and WeeklyReportClassification__c = '' ]; |
| | | return reportlist; |
| | | } |
| | | |
| | | public static List<Agency_Report__c> selectAgencyReportById(String report_id) { |
| | | return [Select Id, Name, Department_Cateogy__c, Purpose_Type__c, Agency_Report_Header__c, Agency_Hospital__r.Name, Agency_Hospital__r.Hospital__c, OppName__c, |
| | | Person_In_Charge2__c, Person_In_Charge2__r.Name, doctor2__c, doctor2__r.Name, Submit_date__c, |
| | | //追溯系统 |
| | | public static List<Agency_Report__c> selectMAgencyReport01(Date date1, Date date2 ,List<Contact> conMList) {//fy Department_Cateogy_text__c doctor3__c |
| | | List<Agency_Report__c> reportlist = [Select Id, Name, Report_Date__c, Product_Category1__r.Name, Product_Category2__r.Name, Product_Category3__r.Name, Product_Category1__c, Product_Category2__c, Product_Category3__c,ConsumptionOfConsumables__c,warlocksNumber__c,WorkMark__c,Department_Cateogy__c,Department_Cateogy_text__c, DealerPersonnel__c,WorkRecord__c, ProductClassification__c,WarlockClassification__c,ProductCcategory__c,productCategories__c,Agency_Report_Header__c, Agency_Hospital__r.Name, Agency_Hospital__r.Hospital__c, OppName__c, |
| | | Person_In_Charge2__c,DealerPersonnel__r.Name,Person_In_Charge2__r.Name, doctor2__c,doctor3__c, doctor2__r.Name, Submit_date__c, |
| | | doctor2__r.AWS_Data_Id__c,// 20220222 PI改造 by Bright |
| | | Product_Category__c, Product_Category__r.Name, Result__c, visitor_title__c, Opportunity__c, Opportunity__r.Name |
| | | Product_Category__c, Product_Category__r.Name, Result__c, visitor_title__c, Opportunity__c, Opportunity__r.Name,EffectProgress__c, |
| | | UseProduct1__c,UseProduct2__c,UseProduct3__c,UseProduct1__r.Name,UseProduct2__r.Name,UseProduct3__r.Name |
| | | From Agency_Report__c |
| | | where Person_In_Charge2__c in :conMList and Report_Date__c >= :date1 and Report_Date__c <= :date2 and WeeklyReportClassification__c != '' ]; |
| | | return reportlist; |
| | | } |
| | | //经销商系统的 |
| | | public static List<Agency_Report__c> selectAgencyReportById(String report_id) {//fy Department_Cateogy_text__c |
| | | return [Select Id, Name, Department_Cateogy__c,Department_Cateogy_text__c,Purpose_Type__c, ConsumptionOfConsumables__c,warlocksNumber__c,WorkMark__c,WorkRecord__c,EffectProgress__c,ProductClassification__c,ProductCcategory__c,productCategories__c, Agency_Report_Header__c, Agency_Hospital__r.Name, Agency_Hospital__r.Hospital__c, OppName__c, |
| | | Person_In_Charge2__c,DealerPersonnel__c,DealerPersonnel__r.Name, Person_In_Charge2__r.Name, doctor2__c, doctor2__r.Name, Submit_date__c, |
| | | doctor2__r.AWS_Data_Id__c,// 20220222 PI改造 by Bright |
| | | Product_Category__c, Product_Category__r.Name, Result__c, visitor_title__c , Opportunity__c, Opportunity__r.Name |
| | | From Agency_Report__c |
| | | where id=:report_id ]; |
| | | } |
| | | //追溯系统的 |
| | | public static List<Agency_Report__c> selectAgencyReportById01(String report_id) {//fy Department_Cateogy_text__c doctor3__c |
| | | return [Select Id, Name, Department_Cateogy__c,Department_Cateogy_text__c, ConsumptionOfConsumables__c,warlocksNumber__c,WorkMark__c,WorkRecord__c,EffectProgress__c,ProductClassification__c,ProductCcategory__c,productCategories__c, Agency_Report_Header__c, Agency_Hospital__r.Name, Agency_Hospital__r.Hospital__c, OppName__c, |
| | | Person_In_Charge2__c,DealerPersonnel__c,DealerPersonnel__r.Name, Person_In_Charge2__r.Name, doctor2__c,doctor3__c, doctor2__r.Name, Submit_date__c, |
| | | doctor2__r.AWS_Data_Id__c,// 20220222 PI改造 by Bright |
| | | Product_Category__c, Product_Category__r.Name, Result__c, visitor_title__c |
| | | From Agency_Report__c |
| | | where id=:report_id]; |
| | | } |
| | |
| | | element.TradeType = NFMUtil.getMapValue(transferMap, 'Trade__c', rpr.Delivered_Product__r.Backorder__r.Opportunity__r.Trade__c, iflog); |
| | | |
| | | //20220330 lt WLIG-CCT9UG 【委托】关于市场多年保计提金调整 start |
| | | element.QuotationDate = NFMUtil.formatDateTime2StrSprit(rpr.Delivered_Product__r.Backorder__r.Opportunity__r.SAP_Send_OK_Date__c).replaceAll('/', ''); |
| | | element.QuotationDate = NFMUtil.formatDateTime2StrSprit2(rpr.Delivered_Product__r.Backorder__r.Opportunity__r.SAP_Send_OK_Date__c).replaceAll('/', ''); |
| | | //20220330 lt WLIG-CCT9UG 【委托】关于市场多年保计提金调整 end |
| | | |
| | | // 多年保修 LHJ Start |
| | |
| | | public String ClinicalCode; //型号规格 |
| | | //2019/11/28 End |
| | | |
| | | //20220329 WLIG-CCTA6G you |
| | | public String CertificateNo;//3C证书编号 |
| | | public String EffectiveFrom;//3C证书效期从 |
| | | public String EffectiveTo;//3C证书效期至 |
| | | |
| | | |
| | | } |
| | | |
| | | @HttpPost |
| | |
| | | Map<String, Product_Register_Link__c> prlinkMap = new Map<String, Product_Register_Link__c>(); |
| | | |
| | | // 产品 |
| | | List<Product2> productList = [select id, ProductCode,ProduceCompany__c,ProduceCompany2__c,ProduceCompany3__c,M_BC_Stop_manufacure__c from Product2 where ProductCode = :productNoList]; |
| | | List<Product2> productList = [select id, ProductCode,ProduceCompany__c,ProduceCompany2__c,ProduceCompany3__c,M_BC_Stop_manufacure__c,CertificateNo__c,EffectiveFrom__c,EffectiveTo__c from Product2 where ProductCode = :productNoList]; |
| | | for (Product2 product : productList) { |
| | | productMap.put(product.ProductCode, product); |
| | | } |
| | |
| | | |
| | | |
| | | } |
| | | // 20220329 WLIG-CCTA6G you start |
| | | //MaterialStatusType为空时,产品注册证和产品都更新 |
| | | if(String.isBlank(data.MaterialStatusType) && upd_productMap.containsKey(data.MaterialNo)){ |
| | | prd = upd_productMap.get(data.MaterialNo); |
| | | prd.CertificateNo__c = data.CertificateNo; |
| | | prd.EffectiveFrom__c = NFMUtil.parseStr2Date(data.EffectiveFrom, false); |
| | | prd.EffectiveTo__c = NFMUtil.parseStr2Date(data.EffectiveTo, false); |
| | | upd_productMap.put(data.MaterialNo, prd); |
| | | } |
| | | // 20220329 WLIG-CCTA6G you end |
| | | } |
| | | |
| | | //logstr += ups_registerMap; |
| | | system.debug('ups_registerMap--->'+ups_registerMap); |
| | | if (upd_productMap.keySet().size() > 0) update upd_productMap.values(); |
| | |
| | | } |
| | | return prd; |
| | | } |
| | | |
| | | } |
| | |
| | | System.debug('------------------------------------------------------'); |
| | | HttpResponse response = new HttpResponse(); |
| | | response.setHeader('Content-Type', 'application/x-www-form-urlencoded'); |
| | | // response.setBody('{"object":"eyJhbGciOiJIUzUxMiJ9","access_token":"eyJhbGciOiJIUzUxMiJ9.eyJhcHBLZXkiOiIwNzBmMDBiZi02NGYxLTQ3MjAtYThkOC1iYmUxYWE5NzZkMjIiLCJhcHBTZWNyZXQiOiI2N0JCMkJBRkM4QUEwQkEwQ0FCQjM3Q0JGNTBFQzI5MiIsImV4cCI6MTYyNDM1OTkzNH0.IXcAshOMZ08Y_ik7o-Iu4EmUy6o0pI9jz4xcx7orpxn6dTUV7wXVWqmdRl3Ded64Pq7OYKB5Vf_FQFUbgeyYjg","code":"0","msg":"正确返回数据"}'); |
| | | response.setBody('{"access_token":"eyJhbGciOiJIUzUxMiJ9.eyJhcHBLZXkiOiIwNzBmMDBiZi02NGYxLTQ3MjAtYThkOC1iYmUxYWE5NzZkMjIiLCJhcHBTZWNyZXQiOiI2N0JCMkJBRkM4QUEwQkEwQ0FCQjM3Q0JGNTBFQzI5MiIsImV4cCI6MTYyNDM1OTkzNH0.IXcAshOMZ08Y_ik7o-Iu4EmUy6o0pI9jz4xcx7orpxn6dTUV7wXVWqmdRl3Ded64Pq7OYKB5Vf_FQFUbgeyYjg","code":"0","msg":"正确返回数据"}'); |
| | | response.setStatus('OK'); |
| | | response.setStatusCode(0); |
| | |
| | | System.debug('++++++++++++++++++++++++++++++++++++++++++++++++++++++'); |
| | | HttpResponse response = new HttpResponse(); |
| | | response.setHeader('Content-Type', 'application/x-www-form-urlencoded'); |
| | | response.setBody('{"code":"0","data":{"cursorMark":"60d01dde42ec7ed48d3730d6","list1":[{"infoId":"227328190","infoPublishTime":"2021-06-21 09:41:26","infoQianlimaUrl":"http://www.qianlima.com/zb/detail/20210621_227328190.html","projectId":"38_99df2844cf784982acdc61d00d7a7dbb"}]},"msg":"正确返回数据"}'); |
| | | response.setBody('{"object":"eyJhbGciOiJIUzUxMiJ9","code":"0","data":{"cursorMark":"60d01dde42ec7ed48d3730d6","list1":[{"infoId":"227328190","infoPublishTime":"2021-06-21 09:41:26","infoQianlimaUrl":"http://www.qianlima.com/zb/detail/20210621_227328190.html","projectId":"38_99df2844cf784982acdc61d00d7a7dbb"}]},"msg":"正确返回数据"}'); |
| | | response.setStatus('OK'); |
| | | response.setStatusCode(0); |
| | | // response.setStatusCode(200); |
| | |
| | | System.debug('======================================================'); |
| | | HttpResponse response = new HttpResponse(); |
| | | response.setHeader('Content-Type', 'application/x-www-form-urlencoded'); |
| | | response.setBody('{"code":"0","data":{"infoHtml":"<!DOCTYPE html><html>a</html>"},"msg":"正确返回数据"}'); |
| | | response.setBody('{"object":"eyJhbGciOiJIUzUxMiJ9","code":"0","data":{"infoHtml":"<!DOCTYPE html><html>a</html>"},"msg":"正确返回数据"}'); |
| | | response.setStatus('OK'); |
| | | // Blob responseBody502 = Blob.valueOf(String.valueOf(response)); |
| | | // response.setBodyAsBlob(responseBody502); |
| | | response.setStatusCode(0); |
| | | return response; |
| | | }else{ |
| | | }else if(request.getEndpoint().contains('/api/token/getToken')){ |
| | | System.debug('======================================================'); |
| | | HttpResponse response = new HttpResponse(); |
| | | response.setHeader('Content-Type', 'application/x-www-form-urlencoded'); |
| | | response.setBody('{"status":"0","message":"RT_SUCCESS","timestamp":1648705499476,"txId":null,"object":"eyJhbGciOiJIUzUxMiJ9.eyJjcmVhdGVkIjoxNjQ1NTg0MzMzNzA4LCJhcHBpZCI6Ik5oakM3cURuOFhTdHZkSU0iLCJleHAiOjE2NTA3NjgzMzN9.Us2DQubj1fXaoxbuTAMJCqSmFbLIdEjnlngJmyR8NejpeoL5G8_8GQ0YrjhmuZ4hlKYNSE7e4QXJq9a-eD86Lg","success":true}'); |
| | | response.setStatus('OK'); |
| | | //response:[responseBody={"status":"0","message":"RT_SUCCESS","timestamp":1648824454629,"txId":"959584836874403840","object":{"http://cusdata.qianlima.com/vip/info/download/V2/eyJhbGciOiJIUzI1NiJ9.eyJpbmZvSWQiOiIyNjU0MjU3NzkiLCJhcHBLZXkiOiIwNzBmMDBiZi02NGYxLTQ3MjAtYThkOC1iYmUxYWE5NzZkMjIiLCJhcHBTZWNyZXQiOiI2N0JCMkJBRkM4QUEwQkEwQ0FCQjM3Q0JGNTBFQzI5MiIsImZpbGVVcmwiOiI2NzcxNEE3NjM0NkY3OTQzNTczMjVBMzg1NjY3NkY0NzdBNTE2NDVBNjM3NzNEM0QifQ.lR9LNgndLPmi3hxlaWru6xeKsPXTYnNaFxGVzmzoqM8":{"name":"附件_265425779_168189381.pdf","key":"20220401/5ac6ebae4ea845f49fc97c26c864d9fc.pdf"}},"success":true}, status=200] |
| | | // Blob responseBody502 = Blob.valueOf(String.valueOf(response)); |
| | | // response.setBodyAsBlob(responseBody502); |
| | | response.setStatusCode(0); |
| | | return response; |
| | | }else if(request.getEndpoint().contains('/api/nfm/503')){ |
| | | System.debug('======================================================'); |
| | | HttpResponse response = new HttpResponse(); |
| | | response.setHeader('Content-Type', 'application/x-www-form-urlencoded'); |
| | | response.setBody('{"status":"0","message":"RT_SUCCESS","timestamp":1648824454629,"txId":"959584836874403840","object":{"http://cusdata.qianlima.com/vip/info/download/V2/eyJhbGciOiJIUzI1NiJ9.eyJpbmZvSWQiOiIyNjU0MjU3NzkiLCJhcHBLZXkiOiIwNzBmMDBiZi02NGYxLTQ3MjAtYThkOC1iYmUxYWE5NzZkMjIiLCJhcHBTZWNyZXQiOiI2N0JCMkJBRkM4QUEwQkEwQ0FCQjM3Q0JGNTBFQzI5MiIsImZpbGVVcmwiOiI2NzcxNEE3NjM0NkY3OTQzNTczMjVBMzg1NjY3NkY0NzdBNTE2NDVBNjM3NzNEM0QifQ.lR9LNgndLPmi3hxlaWru6xeKsPXTYnNaFxGVzmzoqM8":{"name":"附件_265425779_168189381.pdf","key":"20220401/5ac6ebae4ea845f49fc97c26c864d9fc.pdf"}},"success":true}'); |
| | | response.setStatus('OK'); |
| | | //response:[responseBody={"status":"0","message":"RT_SUCCESS","timestamp":1648824454629,"txId":"959584836874403840","object":{"http://cusdata.qianlima.com/vip/info/download/V2/eyJhbGciOiJIUzI1NiJ9.eyJpbmZvSWQiOiIyNjU0MjU3NzkiLCJhcHBLZXkiOiIwNzBmMDBiZi02NGYxLTQ3MjAtYThkOC1iYmUxYWE5NzZkMjIiLCJhcHBTZWNyZXQiOiI2N0JCMkJBRkM4QUEwQkEwQ0FCQjM3Q0JGNTBFQzI5MiIsImZpbGVVcmwiOiI2NzcxNEE3NjM0NkY3OTQzNTczMjVBMzg1NjY3NkY0NzdBNTE2NDVBNjM3NzNEM0QifQ.lR9LNgndLPmi3hxlaWru6xeKsPXTYnNaFxGVzmzoqM8":{"name":"附件_265425779_168189381.pdf","key":"20220401/5ac6ebae4ea845f49fc97c26c864d9fc.pdf"}},"success":true}, status=200] |
| | | // Blob responseBody502 = Blob.valueOf(String.valueOf(response)); |
| | | // response.setBodyAsBlob(responseBody502); |
| | | response.setStatusCode(0); |
| | | return response; |
| | | }else if(request.getEndpoint().contains('/api/nfm/502')){ |
| | | System.debug('======================================================'); |
| | | HttpResponse response = new HttpResponse(); |
| | | response.setHeader('Content-Type', 'application/x-www-form-urlencoded'); |
| | | response.setBody('{"status":"0","message":"RT_SUCCESS","timestamp":1648824454629,"txId":"959584836874403840","object":{"http://cusdata.qianlima.com/vip/info/download/V2/eyJhbGciOiJIUzI1NiJ9.eyJpbmZvSWQiOiIyNjU0MjU3NzkiLCJhcHBLZXkiOiIwNzBmMDBiZi02NGYxLTQ3MjAtYThkOC1iYmUxYWE5NzZkMjIiLCJhcHBTZWNyZXQiOiI2N0JCMkJBRkM4QUEwQkEwQ0FCQjM3Q0JGNTBFQzI5MiIsImZpbGVVcmwiOiI2NzcxNEE3NjM0NkY3OTQzNTczMjVBMzg1NjY3NkY0NzdBNTE2NDVBNjM3NzNEM0QifQ.lR9LNgndLPmi3hxlaWru6xeKsPXTYnNaFxGVzmzoqM8":{"name":"附件_265425779_168189381.pdf","key":"20220401/5ac6ebae4ea845f49fc97c26c864d9fc.pdf"}},"success":true}'); |
| | | response.setStatus('OK'); |
| | | //response:[responseBody={"status":"0","message":"RT_SUCCESS","timestamp":1648824454629,"txId":"959584836874403840","object":{"http://cusdata.qianlima.com/vip/info/download/V2/eyJhbGciOiJIUzI1NiJ9.eyJpbmZvSWQiOiIyNjU0MjU3NzkiLCJhcHBLZXkiOiIwNzBmMDBiZi02NGYxLTQ3MjAtYThkOC1iYmUxYWE5NzZkMjIiLCJhcHBTZWNyZXQiOiI2N0JCMkJBRkM4QUEwQkEwQ0FCQjM3Q0JGNTBFQzI5MiIsImZpbGVVcmwiOiI2NzcxNEE3NjM0NkY3OTQzNTczMjVBMzg1NjY3NkY0NzdBNTE2NDVBNjM3NzNEM0QifQ.lR9LNgndLPmi3hxlaWru6xeKsPXTYnNaFxGVzmzoqM8":{"name":"附件_265425779_168189381.pdf","key":"20220401/5ac6ebae4ea845f49fc97c26c864d9fc.pdf"}},"success":true}, status=200] |
| | | // Blob responseBody502 = Blob.valueOf(String.valueOf(response)); |
| | | // response.setBodyAsBlob(responseBody502); |
| | | response.setStatusCode(0); |
| | | return response; |
| | | }else if(request.getEndpoint().contains('/api/nfm/501')){ |
| | | System.debug('======================================================'); |
| | | HttpResponse response = new HttpResponse(); |
| | | response.setHeader('Content-Type', 'application/x-www-form-urlencoded'); |
| | | response.setBody('{"data":{"list1":[{"DataId":"958850380886708224","agentRelationWayEncrypted":["ca93b1d0d9e14d81119d429b03faa17c"],"agentRelationNameEncrypted":["9e8e6aa24a7bf37db834622fd302b7b4"],"zhongRelationWayEncrypted":[],"zhongRelationNameEncrypted":[],"zhaoRelationWayEncrypted":["9e4d791610abcc65d501f3d96f11bf50"],"zhaoRelationNameEncrypted":["c41f9f806b7de8fffae5cb668dbb09e4"],"allKeywords":"进口","moreZhongBiaoUnit":[],"zhongRelationWay":[],"zhongRelationName":[],"zhongBiaoUnit":[],"zhaoRelationWay":["***********"],"zhaoRelationName":["***"],"zhaoBiaoUnit":["无极县医院"],"xmNumber":"HBZJ-2022N0253","winnerAmount":[],"tenderEndTime":"2022-04-20 09:30:00","tenderBeginTime":"","target":null,"projectId":"14e9fe7920df42d697830ce12abf31f3","openBidingTime":"","keywords":"电切镜,硬性镜,超声刀,内窥镜,窥镜,内镜,输尿管软镜,支气管镜,气管镜","isElectronic":"0","infoTypeSegment":"3","infoType":"0","infoTitle":"无极县医院迁建项目部分医疗设备购置(三)公开招标公告","infoQianlimaUrl":"http://www.qianlima.com/zb/detail/20220330_265423120.html","infoPublishTime":"2022-03-30 17:07:25","infoId":"265423120","infoFile":["http://cusdata.qianlima.com/vip/info/download/V2/eyJhbGciOiJIUzI1NiJ9.eyJpbmZvSWQiOiIyNjU0MjMxMjAiLCJhcHBLZXkiOiIwNzBmMDBiZi02NGYxLTQ3MjAtYThkOC1iYmUxYWE5NzZkMjIiLCJhcHBTZWNyZXQiOiI2N0JCMkJBRkM4QUEwQkEwQ0FCQjM3Q0JGNTBFQzI5MiIsImZpbGVVcmwiOiI1NTcyNTk3NTU1NTQ2QzY5NEY1OTZCNTE0MzUzNjc3MDVBNzUzNDU3NzQ0MTNEM0QifQ.9ZMaqZVUxWgc9xAlHvfNEjUnPKztSokDqqZU-tGqpLw"],"budget":[{"unit":"元","amount":"38706500.00"}],"bidingEndTime":"2022-04-20 09:30:00","bidingAcquireTime":"2022-03-31 09:00:00","biddingType":"0","areaProvince":"河北省","areaCountry":"无极县","areaCity":"石家庄市","agentUnit":["河北中机咨询有限公司"],"agentRelationWay":["***********"],"agentRelationName":["***"]}],"cursorMark":"62444cc820386292a07cf3a1"},"code":"0","msg":"正确返回数据"}'); |
| | | response.setStatus('OK'); |
| | | //response:[responseBody={"status":"0","message":"RT_SUCCESS","timestamp":1648824454629,"txId":"959584836874403840","object":{"http://cusdata.qianlima.com/vip/info/download/V2/eyJhbGciOiJIUzI1NiJ9.eyJpbmZvSWQiOiIyNjU0MjU3NzkiLCJhcHBLZXkiOiIwNzBmMDBiZi02NGYxLTQ3MjAtYThkOC1iYmUxYWE5NzZkMjIiLCJhcHBTZWNyZXQiOiI2N0JCMkJBRkM4QUEwQkEwQ0FCQjM3Q0JGNTBFQzI5MiIsImZpbGVVcmwiOiI2NzcxNEE3NjM0NkY3OTQzNTczMjVBMzg1NjY3NkY0NzdBNTE2NDVBNjM3NzNEM0QifQ.lR9LNgndLPmi3hxlaWru6xeKsPXTYnNaFxGVzmzoqM8":{"name":"附件_265425779_168189381.pdf","key":"20220401/5ac6ebae4ea845f49fc97c26c864d9fc.pdf"}},"success":true}, status=200] |
| | | // Blob responseBody502 = Blob.valueOf(String.valueOf(response)); |
| | | // response.setBodyAsBlob(responseBody502); |
| | | response.setStatusCode(0); |
| | | return response; |
| | | } |
| | | |
| | | else{ |
| | | HttpResponse response = new HttpResponse(); |
| | | response.setHeader('Content-Disposition','filename=文件大小超过12M'); |
| | | Blob responseBody503 = Blob.valueOf('Blob[497920]'); |
| | |
| | | |
| | | global Database.QueryLocator start(Database.BatchableContext bc) { |
| | | |
| | | // 如果前一个603的batch正在执行,则后一个等待5s再执行 |
| | | List<AsyncApexJob> lstJobs = [SELECT Id FROM AsyncApexJob WHERE Id !=: bc.getJobId() AND (Status = 'Preparing' OR Status = 'Processing') AND ApexClass.Name = 'NFM603Batch']; |
| | | if (lstJobs != null && lstJobs.size() > 0) { |
| | | Long startTime = DateTime.now().getTime(); |
| | | Long finishTime = DateTime.now().getTime(); |
| | | while ((finishTime - startTime) < 5000) { |
| | | //sleep for 5s |
| | | finishTime = DateTime.now().getTime(); |
| | | } |
| | | } |
| | | |
| | | if (this.repairIdList != null) { |
| | | return Database.getQueryLocator([SELECT Id,AwaitToSendAWS__c FROM Repair__c WHERE Id IN:repairIdList]); |
| | | } |
| | |
| | | |
| | | public static Set < Id > NFM603_Ids = new Set < Id > (); |
| | | // public static Map<Id,Id> rprIdMap = new Map<Id,Id>(); |
| | | |
| | | |
| | | public static void NFM603Trigger(List < Repair__c > newList, Map < Id, Repair__c > newMap, List < Repair__c > oldList, Map < Id, Repair__c > oldMap) { |
| | | List < String > rprIds = new List < String > (); |
| | | Map < Id, Id > rprIdMap = new Map < Id, Id > (); |
| | |
| | | Repair__c oldrpr = oldMap.get(rpr.Id); |
| | | // 修理有报修子单号,并且 待发送AWS为false 发送给AWS |
| | | if (String.isNotBlank(rpr.RepairSubOrder__c) && !rpr.AwaitToSendAWS__c) { |
| | | if (((rpr.status__c == '0.申请完毕' || rpr.status__c == '1.受理完毕') && (oldrpr.SAP_Transfer_time__c == null && rpr.SAP_Transfer_time__c != null)) || (rpr.Address_type__c == 'X' && (rpr.Address_Type_Index__c != oldrpr.Address_Type_Index__c))) { |
| | | if (((rpr.status__c == '0.申请完毕' || rpr.status__c == '1.受理完毕') && (oldrpr.SAP_Transfer_time__c == null && rpr.SAP_Transfer_time__c != null)) || |
| | | (rpr.Address_type__c == 'X' && (rpr.Address_Type_Index__c != oldrpr.Address_Type_Index__c)) || |
| | | // 2022/4/6 zhangyuheng update start |
| | | (rpr.OTSRepairOrder__c != oldrpr.OTSRepairOrder__c) || // OTS订单号有值,发送AWS |
| | | // 2022/4/6 zhangyuheng update end |
| | | // 2022/4/7 zhangyuheng update start |
| | | (rpr.DeliveryLogisticsNo__c != oldrpr.DeliveryLogisticsNo__c) || // 送修物流单号有值,发送AWS |
| | | // ((rpr.Discount_Price_formula__c != oldrpr.Discount_Price_formula__c) && rpr.Repair_Firstestimated_Date_formula__c != null) || // 报价金额发生改变且初次报价日有值,发送AWS |
| | | ((rpr.Returns_Product_waySAP__c != oldrpr.Returns_Product_waySAP__c) && rpr.Repair_Shipped_DateTime__c != null) || // 送修方式发生改变且寄送日有值,发送AWS |
| | | // 2022/4/7 zhangyuheng update end |
| | | // 2022/4/18 zhangyuheng update start |
| | | (rpr.FSE_ApplyForRepair_time__c != oldrpr.FSE_ApplyForRepair_time__c) || // FSE申请修理日发生改变,发送AWS |
| | | (rpr.Repair_Ordered_DateTime__c != oldrpr.Repair_Ordered_DateTime__c) || // 4.修理品RC受理日(小程序)发生改变,发送AWS |
| | | (rpr.Repair_Firstestimated_Date__c != oldrpr.Repair_Firstestimated_Date__c) || // 初次报价日(不用)发生改变,发送AWS |
| | | (rpr.Repair_Shipped_DateTime__c != oldrpr.Repair_Shipped_DateTime__c) || // 11.RC修理品返送日(小程序)发生改变,发送AWS |
| | | (rpr.Repair_Final_Inspection_DateTime__c != oldrpr.Repair_Final_Inspection_DateTime__c) || // 10.最终检测日(小程序)发生改变,发送AWS |
| | | (rpr.Agreed_DateTime__c != oldrpr.Agreed_DateTime__c) || //7.用户同意日(小程序)发生改变,发送AWS |
| | | (rpr.Agreed_Date__c != oldrpr.Agreed_Date__c) || // 7.用户同意日发生改变,发送AWS |
| | | (rpr.engineerSendDate__c != oldrpr.engineerSendDate__c) //修理品寄送日发生改变,发送AWS |
| | | // 2022/4/18 zhangyuheng update start |
| | | ) { |
| | | |
| | | if (NFM603Controller.NFM603_Ids.contains(rpr.Id) == false) { |
| | | NFM603Controller.NFM603_Ids.add(rpr.Id); |
| | | rprIdMap.put(rpr.Id, rpr.Id); |
| | | } |
| | | } |
| | | // 2022/4/19 zhangyuheng update start |
| | | // 如果同期中的修理报价(Repair_Quotation_Id__c)为空,判断初次报价日和报价金额 |
| | | if (rpr.Repair_Quotation_Id__c != oldrpr.Repair_Quotation_Id__c) { |
| | | if (NFM603Controller.NFM603_Ids.contains(rpr.Id) == false) { |
| | | NFM603Controller.NFM603_Ids.add(rpr.Id); |
| | | rprIdMap.put(rpr.Id, rpr.Id); |
| | | } |
| | | } |
| | | if (rpr.Repair_Quotation_Id__c == null) { |
| | | // 如果初次报价日(不用)或折扣后金额(不用)发生改变,发送AWS |
| | | if (rpr.Discount_Price__c != oldrpr.Discount_Price__c || rpr.Repair_Estimated_Date__c != oldrpr.Repair_Estimated_Date__c) { |
| | | if (NFM603Controller.NFM603_Ids.contains(rpr.Id) == false) { |
| | | NFM603Controller.NFM603_Ids.add(rpr.Id); |
| | | rprIdMap.put(rpr.Id, rpr.Id); |
| | | } |
| | | } |
| | | } |
| | | // 如果同期中的修理报价(Repair_Quotation_Id__c)不为空,在RepairQuoteTrigger.ChangeRepair进行判断触发 |
| | | // 2022/4/19 zhangyuheng update end |
| | | |
| | | // 2022/4/6 zhangyuheng update start |
| | | //OTS订单号有值,发送AWS |
| | | // if ((oldrpr.OTSRepairOrder__c == null && String.isNotBlank(rpr.OTSRepairOrder__c)) || rpr.OTSRepairOrder__c != oldrpr.OTSRepairOrder__c) { |
| | | // if (NFM603Controller.NFM603_Ids.contains(rpr.Id) == false) { |
| | | // NFM603Controller.NFM603_Ids.add(rpr.Id); |
| | | // rprIdMap.put(rpr.Id, rpr.Id); |
| | | // } |
| | | // } |
| | | // 2022/4/6 zhangyuheng update end |
| | | // 2022/4/7 zhangyuheng update start |
| | | //送修物流单号有值,发送AWS |
| | | // if ((oldrpr.DeliveryLogisticsNo__c == null && String.isNotBlank(rpr.DeliveryLogisticsNo__c)) || rpr.DeliveryLogisticsNo__c != oldrpr.DeliveryLogisticsNo__c) { |
| | | // if (NFM603Controller.NFM603_Ids.contains(rpr.Id) == false) { |
| | | // NFM603Controller.NFM603_Ids.add(rpr.Id); |
| | | // rprIdMap.put(rpr.Id, rpr.Id); |
| | | // } |
| | | // } |
| | | //报价金额发生改变且初次报价日有值,发送AWS |
| | | // if ((rpr.Discount_Price_formula__c != oldrpr.Discount_Price_formula__c) && rpr.Repair_Firstestimated_Date_formula__c != null) { |
| | | // if (NFM603Controller.NFM603_Ids.contains(rpr.Id) == false) { |
| | | // NFM603Controller.NFM603_Ids.add(rpr.Id); |
| | | // rprIdMap.put(rpr.Id, rpr.Id); |
| | | // } |
| | | // } |
| | | // if ((rpr.Returns_Product_waySAP__c != oldrpr.Returns_Product_waySAP__c) && rpr.Repair_Shipped_DateTime__c != null) { |
| | | // if (NFM603Controller.NFM603_Ids.contains(rpr.Id) == false) { |
| | | // NFM603Controller.NFM603_Ids.add(rpr.Id); |
| | | // rprIdMap.put(rpr.Id, rpr.Id); |
| | | // } |
| | | // } |
| | | // 2022/4/7 zhangyuheng update end |
| | | // 2022/4/18 zhangyuheng update start |
| | | // FSE申请修理日发生改变,发送AWS |
| | | // if (rpr.FSE_ApplyForRepair_time__c != oldrpr.FSE_ApplyForRepair_time__c) { |
| | | // if (NFM603Controller.NFM603_Ids.contains(rpr.Id) == false) { |
| | | // NFM603Controller.NFM603_Ids.add(rpr.Id); |
| | | // rprIdMap.put(rpr.Id, rpr.Id); |
| | | // } |
| | | // } |
| | | // 4.修理品RC受理日(小程序)发生改变,发送AWS |
| | | // if (rpr.Repair_Ordered_DateTime__c != oldrpr.Repair_Ordered_DateTime__c) { |
| | | // if (NFM603Controller.NFM603_Ids.contains(rpr.Id) == false) { |
| | | // NFM603Controller.NFM603_Ids.add(rpr.Id); |
| | | // rprIdMap.put(rpr.Id, rpr.Id); |
| | | // } |
| | | // } |
| | | // 初次报价日(不用)发生改变,发送AWS |
| | | // if (rpr.Repair_Firstestimated_Date__c != oldrpr.Repair_Firstestimated_Date__c) { |
| | | // if (NFM603Controller.NFM603_Ids.contains(rpr.Id) == false) { |
| | | // NFM603Controller.NFM603_Ids.add(rpr.Id); |
| | | // rprIdMap.put(rpr.Id, rpr.Id); |
| | | // } |
| | | // } |
| | | // 11.RC修理品返送日(小程序)发生改变,发送AWS |
| | | // if (rpr.Repair_Shipped_DateTime__c != oldrpr.Repair_Shipped_DateTime__c) { |
| | | // if (NFM603Controller.NFM603_Ids.contains(rpr.Id) == false) { |
| | | // NFM603Controller.NFM603_Ids.add(rpr.Id); |
| | | // rprIdMap.put(rpr.Id, rpr.Id); |
| | | // } |
| | | // } |
| | | // 10.最终检测日(小程序)发生改变,发送AWS |
| | | // if (rpr.Repair_Final_Inspection_DateTime__c != oldrpr.Repair_Final_Inspection_DateTime__c) { |
| | | // if (NFM603Controller.NFM603_Ids.contains(rpr.Id) == false) { |
| | | // NFM603Controller.NFM603_Ids.add(rpr.Id); |
| | | // rprIdMap.put(rpr.Id, rpr.Id); |
| | | // } |
| | | // } |
| | | // 2022/4/18 zhangyuheng update end |
| | | // 测试环境测试用,上线前请注掉 |
| | | if (rpr.Repair_Firstestimated_Date__c != oldrpr.Repair_Firstestimated_Date__c) { |
| | | if (NFM603Controller.NFM603_Ids.contains(rpr.Id) == false) { |
| | |
| | | |
| | | @testSetup |
| | | static void makeTestRepair() { |
| | | Oly_TriggerHandler.bypass('ContactTriggerHandler'); |
| | | List<RecordType> rectCo = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and Name = '病院']; |
| | | if (rectCo.size() == 0) { |
| | | throw new ControllerUtil.myException('not found 病院 recodetype'); |
| | |
| | | ast = [select Id, Name, Product_Serial_No__c, AccountId, Department_Class__c, Department_Class__r.Management_Code_Auto__c, Hospital__c, Product2Id, Product2.ProductCode, Product2.Repair_Product_Code__c, SerialNumber |
| | | from Asset |
| | | where Id = :ast.Id]; |
| | | |
| | | |
| | | |
| | | RepairSubOrder__c subOrder = new RepairSubOrder__c(); |
| | | subOrder.AttachmentDownload__c = true; |
| | | subOrder.AttachmentLink__c = 'https://albsylfw.s3.cn-northwest-1.amazonaws.com.cn/20211220/14/11/30/lessthan12/5e8cb69e-f935-48f5-825e-b8344d60f6d4.zip'; |
| | | subOrder.AttachmentName__c = '测试附件下载'; |
| | | insert subOrder; |
| | | Repair__c rpr = new Repair__c(); |
| | | rpr.PAE_Determine__c = 'PAE' ; //-- |
| | | rpr.ifDeadHurt__c = '有'; //-- R1 |
| | |
| | | rpr.Account__c = depart.Id; |
| | | rpr.Department_Class__c = section.Id; |
| | | rpr.Hospital__c = company.Id; |
| | | rpr.DeliveryLogisticsMode__c = '其他'; |
| | | rpr.RepairSubOrder__c = subOrder.Id; |
| | | rpr.Delivered_Product__c = ast.Id; |
| | | rpr.Status__c = '1.受理完毕'; |
| | | rpr.SAP_Transfer_time__c = null; |
| | | rpr.Incharge_Staff__c = Userinfo.getUserId(); |
| | | rpr.Repair_Detail__c = 'test'; |
| | | rpr.GeneratedPDFField__c = null; |
| | | rpr.AsyncData__c = true; |
| | | rpr.AwaitToSendAWS__c = false; |
| | | rpr.Complaint_Number__c = null; |
| | | rpr.ReportAdverseEvents__c = '有'; |
| | | rpr.ProblemOccurred__c = '到货验收'; |
| | |
| | | rpr.Failure_Occurrence_Date__c = Date.today(); |
| | | rpr.Repair_Ordered_Date__c = Date.today(); |
| | | rpr.Repair_Shipped_Date__c = Date.today(); |
| | | rpr.Repair_Ordered_DateTime__c = Datetime.newInstance(2022,04,13,18,18,18); |
| | | rpr.ReturnType__c = 'A20'; |
| | | rpr.AwaitToSendAWS__c = true; |
| | | //rpr.Returns_Product_waySAP__c = '返送医院'; |
| | | insert rpr; |
| | | |
| | | |
| | | |
| | | |
| | | BatchIF_Log__c iflog = new BatchIF_Log__c(); |
| | | BatchIF_Log__c iflog = new BatchIF_Log__c(); |
| | | iflog.Log__c = '[{"userReturnDate":"2021-08-09","userAgreeDAte":"2021-08-09","strategicDepartmenNm":null,"strategicDepartmenCd":"8089815","spareEquipMode":null,"spareEquipLendingDate":null,"SAPrepairApplyDate":"2021-08-05","returnStage":null,"returnLogisticsSendTime":"2021-08-03T09:49:00.000Z","returnLogisticsRemark":"123123","returnLogisticsReceiveTime":"2021-08-19T09:49:00.000Z","returnLogisticsNo":"123123","returnLogisticsMode":null,"RepairType":null,"repairStartDate":"2021-08-09","repairproductsRevDate":"2021-08-10","repairOrderNo2":null,"repairOrderNo":null,"repairOrderCreateDate":"2021-08-03T10:05:44.000Z","repairOrderCompleteDate":"2021-08-09","repairNo":"RS-202108-564405","repairCompleteExpectedDate":null,"repairCompleteDate":"2021-08-09","repairApplicant":"SFDC-05","region":"東京","RCreturnDate":"2021-08-09","RCacceptanceDate":"2021-08-09","quotationDate":null,"province":"北京市","priceApprovalDate":null,"planQuotationDate":"2021-08-11","payCompleteDate":"2021-08-09","partsCompleteDate":"2021-08-09","officeLogisticsReceiveDate":"2021-08-10","MultiYearContractStartDate":null,"MultiYearContractNo":null,"MultiYearContractEndDate":null,"logisticsSendDate":"2021-08-04","logisticsReceiveDate":"2021-08-19","latestPayDate":null,"isRepairWarrantyObj":false,"invoiceReceiveDate":"2021-08-09","invoiceDate":null,"inspectionDate":"2021-08-09","incomeReckoninDate":"2021-08-09","hospitalNm":"1","hospitalCd":"8089815","FSErepairApplyDate":"2021-08-17","FirstQuotationDate":null,"finalTestDate":"2021-08-09","finalQuotationPrice":152.2,"FaultDescData":null,"equipmentModel":"GX2201:111222","equipmentCd":"111222","detectionResult":null,"departmentNm":"8089815","departmentCd":null,"deliveryLogisticsNo":"123123","deliveryLogisticsMode":"快递","ContractStartDate":null,"ContractNo":null,"ContractEndDate":null,"city":"北京市","cancelRepairDate":"2021-08-09","bpsqbh":null,"applySpareEquip":false,"applicantTel":null,"ActualQuotationDate":"2021-08-09","acceptanceFormSendDate":"2021-08-09","acceptanceFormReceivedDate":"2021-08-09","abandonPayDate":null},{"userReturnDate":"2021-08-09","userAgreeDAte":"2021-08-09","strategicDepartmenNm":null,"strategicDepartmenCd":"8089815","spareEquipMode":null,"spareEquipLendingDate":null,"SAPrepairApplyDate":"2021-08-05","returnStage":null,"returnLogisticsSendTime":"2021-08-03T09:49:00.000Z","returnLogisticsRemark":"====","returnLogisticsReceiveTime":"2021-08-04T02:23:00.000Z","returnLogisticsNo":"20210804-1","returnLogisticsMode":null,"RepairType":null,"repairStartDate":"2021-08-09","repairproductsRevDate":"2021-08-10","repairOrderNo2":null,"repairOrderNo":null,"repairOrderCreateDate":"2021-08-04T02:39:59.000Z","repairOrderCompleteDate":"2021-08-09","repairNo":"RS-202108-564406","repairCompleteExpectedDate":"2021-08-09","repairCompleteDate":"2021-08-09","repairApplicant":"SFDC-05","region":"其他","RCreturnDate":"2021-08-09","RCacceptanceDate":"2021-08-09","quotationDate":null,"province":"北京市","priceApprovalDate":null,"planQuotationDate":"2021-08-10","payCompleteDate":"2021-08-09","partsCompleteDate":"2021-08-09","officeLogisticsReceiveDate":"2021-08-10","MultiYearContractStartDate":null,"MultiYearContractNo":"BJ-RS-BJ0063159","MultiYearContractEndDate":null,"logisticsSendDate":"2021-08-21","logisticsReceiveDate":"2021-08-15","latestPayDate":null,"isRepairWarrantyObj":false,"invoiceReceiveDate":"2021-08-09","invoiceDate":null,"inspectionDate":"2021-08-09","incomeReckoninDate":"2021-08-09","hospitalNm":"1","hospitalCd":"8089815","FSErepairApplyDate":"2021-08-17","FirstQuotationDate":null,"finalTestDate":"2021-08-09","finalQuotationPrice":152.2,"FaultDescData":null,"equipmentModel":"GX2201:111222","equipmentCd":"111222","detectionResult":null,"departmentNm":"8089815","departmentCd":null,"deliveryLogisticsNo":"20210804","deliveryLogisticsMode":"快递","ContractStartDate":null,"ContractNo":"BJ-RS-BJ0063159","ContractEndDate":null,"city":"北京市","cancelRepairDate":"2021-08-09","bpsqbh":null,"applySpareEquip":false,"applicantTel":null,"ActualQuotationDate":"2021-08-10","acceptanceFormSendDate":"2021-08-09","acceptanceFormReceivedDate":"2021-08-09","abandonPayDate":null,"supplySpareEquip":true}]'; |
| | | iflog.Type__c = '603test'; |
| | | insert iflog; |
| | |
| | | raObj.Repair__c = rpr.Id; |
| | | insert raObj; |
| | | |
| | | |
| | | Fixture_Set_Detail__c fsdObjA1 = new Fixture_Set_Detail__c(); |
| | | |
| | | // 备品配套 |
| | |
| | | // fsObj1.Fixture_Set_Body_Model_No__c = 'modelNo1'; |
| | | // fsObj1.Loaner_name__c = 'name1'; |
| | | // insert fsObj1; |
| | | |
| | | |
| | | |
| | | |
| | | // 产品 |
| | | Product2 pro1 = new Product2(Name='name01',IsActive=true,Family='GI', |
| | |
| | | fsdObjA1.Is_Optional__c = false; |
| | | fsdObjA1.UniqueKey__c = fsObjA1.Id + ':' + pro1.Id; |
| | | fsdObjA1.SortInt__c = 1; |
| | | |
| | | |
| | | // 借出备品配套一览 |
| | | Rental_Apply_Equipment_Set__c raesObj = new Rental_Apply_Equipment_Set__c(); |
| | |
| | | raesdObj1.DataMigration_Flag__c = true; |
| | | insert raesdObj1; |
| | | raesObj.First_RAESD__c = raesdObj1.Id; |
| | | update raesObj; |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | update raesObj; |
| | | } |
| | | |
| | | @isTest |
| | | static void testCallOut1(){ |
| | | List<Repair__c> repairList = [select id from Repair__c]; |
| | | |
| | | Test.startTest(); |
| | | |
| | | List<Repair__c> repairList = [select id from Repair__c]; |
| | | Test.startTest(); |
| | | List<Id> idList = new List<Id>(); |
| | | for(Repair__c repair : repairList){ |
| | | idList.add(repair.Id); |
| | | idList.add(repair.Id); |
| | | } |
| | | BatchIF_Log__c iflog = new BatchIF_Log__c(); |
| | | iflog.Log__c = 'test start \n'; |
| | | insert iflog; |
| | | |
| | | NFM603Controller.callout(iflog.Id,idList); |
| | | |
| | | Test.stopTest(); |
| | | } |
| | | @isTest |
| | | static void testCallOut1_2(){ |
| | | List<Repair__c> repairList = [select id,Repair_Ordered_DateTime__c,OTSRepairOrder__c,SAP_Transfer_time__c,Status__c from Repair__c]; |
| | | Test.startTest(); |
| | | List<Id> idList = new List<Id>(); |
| | | for(Repair__c repair : repairList){ |
| | | repair.Repair_Ordered_DateTime__c = Datetime.newInstance(2022,04,13,05,18,18); |
| | | repair.SAP_Transfer_time__c = Datetime.newInstance(2022,04,13,18,18,18); |
| | | repair.OTSRepairOrder__c = '123123123'; |
| | | // idList.add(repair.Id); |
| | | } |
| | | upsert repairList; |
| | | for(Repair__c repair : repairList){ |
| | | idList.add(repair.Id); |
| | | } |
| | | BatchIF_Log__c iflog = new BatchIF_Log__c(); |
| | | iflog.Log__c = 'test start \n'; |
| | |
| | | |
| | | // @isTest |
| | | // static void testcallout2(){ |
| | | // List<Repair__c> repairList = [select id from Repair__c]; |
| | | // List<Repair__c> repairList = [select id from Repair__c]; |
| | | |
| | | // Test.startTest(); |
| | | |
| | | // List<Id> idList = new List<Id>(); |
| | | // for(Repair__c repair : repairList){ |
| | | // idList.add(repair.Id); |
| | | // idList.add(repair.Id); |
| | | // } |
| | | // NFM603Controller.executefuture(null,idList); |
| | | |
| | |
| | | |
| | | @isTest |
| | | static void testcallout3(){ |
| | | BatchIF_Log__c iflog = [select id from BatchIF_Log__c where Type__c = '603test']; |
| | | BatchIF_Log__c iflog = [select id from BatchIF_Log__c where Type__c = '603test']; |
| | | NFM603Controller.ManualExecute(iflog.Id); |
| | | } |
| | | |
| | |
| | | me.NumberOfRecord = '' + gds.GeData.size(); |
| | | gds.Monitoring = me; |
| | | |
| | | |
| | | |
| | | logstr = iflog.Log__c + '\nNumberOfRecord=' + gds.GeData.size() + ' '; |
| | | NFMUtil.Monitoring Monitoring = new NFMUtil.Monitoring(); |
| | | Monitoring.Tag = gds.Monitoring.Tag; |
| | |
| | | if (rowData != null) { |
| | | upsert rowData; |
| | | } |
| | | iflog.Log__c = iflog.Log__c + logstr; |
| | | iflog.Log__c = logstr; |
| | | system.debug('======================================'+logstr); |
| | | upsert iflog; |
| | | |
| | | } |
| | | |
| | | private static GeData getStateAndCity(GeData ged,Contact con){ |
| | |
| | | @testSetup |
| | | static void makeTestRepair() { |
| | | Oly_TriggerHandler.bypass('UserProfileHandler'); |
| | | Oly_TriggerHandler.bypass('ContactTriggerHandler'); |
| | | // 医院的记录类型 |
| | | List<RecordType> rectCo = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and DeveloperName = 'Hp']; |
| | | // 战略科室 消化科的记录类型 |
| | |
| | | // 2022/4/6 zhangyuheng update start |
| | | public String RepairFinishDate; //修理品处理完成日 |
| | | public String ApplicanterPhone; //处理人电话 |
| | | public String CancelDate; //受理人取消报修日 |
| | | // 2022/4/6 zhangyuheng update end |
| | | |
| | | // 上线前 报修子单与修理上的相关字段都删除 |
| | |
| | | List < String > managementCodeList = new List < String > (); //存放科室编码 |
| | | List < String > rpersonList = new List < String > (); //存放报修人用户编码 |
| | | List < String > canIdList = new List < String > (); //存放取消人用户编号 |
| | | List < String > repairNoList = new List < String > (); //存放报修子单号 |
| | | for (GeData ged: itemMasterList) { |
| | | String dataComplete = verify(ged); |
| | | if (!String.isBlank(dataComplete)) { |
| | |
| | | repair.Ownerid = canidMap.get(ged.repairOderInfo.repairOrderNo2FSEID).Id; //报修子单所属FSE的ID |
| | | repair.AssetModel__c = ged.applyRepairInfo.equipmentModel; //设备型号 |
| | | repair.AirframeCodeEngineer__c = ged.applyRepairInfo.equipmentCd; //机身编码(工程师) |
| | | repair.ResponseResultDesc__c = ged.applyRepairInfo.responseResultDesc; //应对描述 |
| | | repair.ResponseResultDesc__c = ged.applyRepairInfo.responseResultDesc; //应对描述--->问题描述(工程师) |
| | | repair.ProcessResult__c = ged.applyRepairInfo.processResult; //处理结果 |
| | | |
| | | // 2022/4/6 zhangyuheng update start |
| | | repair.RepairFinishDate__c = NFMUtil.parseStr2Date(ged.repairOderInfo.RepairFinishDate) ; //修理品处理完成日 |
| | | repair.RepairFinishDate__c = NFMUtil.parseDateTimeStr2Date(ged.repairOderInfo.RepairFinishDate) ; //修理品处理完成日 |
| | | repair.ApplicanterPhone__c = ged.repairOderInfo.ApplicanterPhone; //处理人电话 |
| | | |
| | | repair.CancelleRepairTime__c = NFMUtil.parseDateTimeStr2Date(ged.repairOderInfo.CancelDate); //受理人取消报修日 |
| | | // repair.CancelleRepairTime__c = NFMUtil.parseStr2Date(ged.repairOderInfo.CancelDate); //受理人取消报修日 |
| | | repair.RepairCancelReason__c = ged.repairOderInfo.cancelReportReason; //修理取消原因 |
| | | // 2022/4/6 zhangyuheng update end |
| | | |
| | | if ('问题已解决'.equals(ged.applyRepairInfo.processResult)) { |
| | | repair.Status__c = '关闭'; |
| | | // repair.Status__c = '关闭'; |
| | | repair.Status__c = '已完成'; // 2022/4/6 zhangyuheng |
| | | } else { |
| | | repair.Status__c = '待处理'; |
| | | |
| | |
| | | repair.AttachmentName__c = attachmentName; |
| | | repairOrderNo2Str += repairOrderNo2 + '\n'; |
| | | repairList.add(repair); |
| | | repairNoList.add(ged.repairOderInfo.repairOrderNo2); |
| | | } |
| | | |
| | | if (repairList.size() > 0) { |
| | | |
| | | // 2022/4/6 zhangyuheng update start |
| | | List<RepairSubOrder__c> repairList1 = [SELECT Id FROM RepairSubOrder__c WHERE RepairSubOrderNo__c in: repairNoList]; |
| | | if (repairList1.size() > 0) { |
| | | logstr += repairOrderNo2Str + ']-已存在'; |
| | | } |
| | | // if (repairList.size() > 0) {==== 2022/4/6 zhangyuheng注释掉 |
| | | else { |
| | | // 2022/4/6 zhangyuheng update end |
| | | insert repairList; |
| | | repairOrderNo2Str += ' ]\n'; |
| | | logstr += repairOrderNo2Str + '新增完成, 新增总数数为:' + repairList.size() + '\n'; |
| | |
| | | } |
| | | @testSetup |
| | | static void makeTestRepair() { |
| | | |
| | | Oly_TriggerHandler.bypass('ContactTriggerHandler'); |
| | | List<RecordType> rectCo = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and Name = '病院']; |
| | | if (rectCo.size() == 0) { |
| | | throw new ControllerUtil.myException('not found 病院 recodetype'); |
| | |
| | | AWS_DOMAIN = 'https://olympus.bqbot.com'; |
| | | // 新服务系统 本地环境(临时) |
| | | // AWS_DOMAIN = 'http://114.249.236.98:29990'; |
| | | // AWS_DOMAIN = 'http://114.249.231.75:29995'; |
| | | // AWS_DOMAIN = 'http://jzbase.bqbot.com:29990'; |
| | | // AWS_DOMAIN = 'http://114.249.238.243:29990'; |
| | | |
| | |
| | | return rtn; |
| | | } |
| | | |
| | | // lt 20220419 Start |
| | | /** |
| | | * @return yyyy/MM/dd の日付文字列 |
| | | */ |
| | | public static String formatDateTime2StrSprit2(DateTime dt) { |
| | | String rtn = null; |
| | | if (dt == null) { |
| | | rtn = ''; |
| | | } else { |
| | | String pDate = formatDateTime2Str(dt); |
| | | rtn = (pDate.substring(0, 4)) + '/' + |
| | | (pDate.substring(4, 6)) + '/' + |
| | | (pDate.substring(6, 8)); |
| | | } |
| | | return rtn; |
| | | } |
| | | // lt 20220419 End |
| | | |
| | | /** |
| | | * add wangweipeng 2022/02/11 |
| | | * [formatDateTime2StrDateTime description] |
| | |
| | | NFMUtil.parseStr2Time('2233233'); |
| | | NFMUtil.parseStr2DateTimeDate('20201223'); |
| | | NFMUtil.formatDateTime2StrSprit(Date.today()); |
| | | NFMUtil.formatDateTime2StrSprit2(Date.today()); //20220419 lt add |
| | | } |
| | | |
| | | static testMethod void testreceiveToken() { |
| | |
| | | public static Map<String, Schema.SObjectType> schemaMap = Schema.getGlobalDescribe(); |
| | | public static String sobjectTypeValue = 'Address__c'; |
| | | public Boolean isNewMode{set;get;} |
| | | public Boolean isCloneMode{protected set;get;} |
| | | public String rtTypeId {get; set;} |
| | | public String AWSDataId{set;get;} |
| | | public String contactId{set;get;}//For Lookup field |
| | |
| | | // public String CurrentUserName{private set; get;} |
| | | public NewAndEditAddressController(ApexPages.StandardController controller) { |
| | | isNewMode = true; |
| | | isCloneMode = false; |
| | | Input_Required_Field_Msg = Label.Input_Required_Field_Msg; |
| | | PIPL_Name_Label = Label.PIPL_Name_Label; |
| | | PIPL_Input_Account_Error_Msg = label.PIPL_Input_Account_Error_Msg; |
| | |
| | | List<String> fieldList = new List<String>(Schema.getGlobalDescribe().get('Address__c').getDescribe().fields.getMap().keyset()); |
| | | // Add fields to controller. This is to avoid the SOQL error in visualforce page |
| | | if (!Test.isRunningTest()) { |
| | | controller.addFields(fieldList);} |
| | | controller.addFields(fieldList); |
| | | } |
| | | Map<string,string> mso = ApexPages.currentPage().getParameters(); |
| | | if(mso != null && mso.containsKey('newclone')){ |
| | | isCloneMode = true; |
| | | } |
| | | SObject obj = controller.getRecord(); |
| | | if(obj.Id != null){ |
| | | //更新 |
| | |
| | | if(String.isNotBlank(dt)&&dt.contains('T')){ |
| | | dt = dt.replace('T',' '); |
| | | addressInfo.put(fieldAPI, Datetime.valueOfGmt(dt)); |
| | | }else { |
| | | }else if(String.isNotBlank(fieldValue)) { |
| | | fieldValue = fieldValue.replace('/', '-') + ':00'; |
| | | addressInfo.put(fieldAPI, Datetime.valueOf(fieldValue)); |
| | | }else{ |
| | | addressInfo.put(fieldAPI,fieldValue); |
| | | } |
| | | }else if(String.valueOf(fielddataType)=='Number'||String.valueOf(fielddataType)=='DOUBLE' ){ |
| | |
| | | String status = 'success'; |
| | | Response resp = new Response(); |
| | | Savepoint sp = Database.setSavepoint(); |
| | | Boolean isClone = false; |
| | | // String rid = ''; |
| | | String awsDataId = ''; |
| | | try{ |
| | | System.debug('abcde'); |
| | | if(isNew){ |
| | | awsDataId = (String)addressInfo.get('AWS_Data_Id__c'); |
| | | System.debug('awsDataId = ' + awsDataId); |
| | | Address__c[] addresses = [select id from Address__c where AWS_Data_Id__c =:awsDataId]; |
| | | if(!isNew){ |
| | | isClone = addresses.size() == 0; |
| | | } |
| | | System.debug('isClone---------'+isClone); |
| | | if(isNew || isClone){ |
| | | System.debug('addressInfoNancy = ' + addressInfo); |
| | | insert addressInfo; |
| | | }else{ |
| | | System.debug('into update'); |
| | | awsDataId = (String)addressInfo.get('AWS_Data_Id__c'); |
| | | System.debug('awsDataId = ' + awsDataId); |
| | | Address__c[] addresses = [select id from Address__c where AWS_Data_Id__c =:awsDataId]; |
| | | // awsDataId = (String)addressInfo.get('AWS_Data_Id__c'); |
| | | // System.debug('awsDataId = ' + awsDataId); |
| | | // Address__c[] addresses = [select id from Address__c where AWS_Data_Id__c =:awsDataId]; |
| | | System.debug('addresses[0].id = ' + addresses[0].id); |
| | | addressInfo.put('Id',addresses[0].id);//For testing; |
| | | update addressInfo; |
| | |
| | | public static Map<String, Schema.SObjectType> schemaMap = Schema.getGlobalDescribe(); |
| | | public String sobjectTypeValue {private set; get;} |
| | | public Boolean isNewMode{set;get;} |
| | | public Boolean isCloneMode{protected set;get;} |
| | | public String rtTypeId {get; set;} |
| | | public String AWSDataId{set;get;} |
| | | public String CurrentUserId{private set;get;} |
| | |
| | | public List<String> LookUpOverrideFields{get;private set;} |
| | | public string LookUpOverrideFieldsMapJson{get; set;} |
| | | public string recordId{get;private set;} |
| | | |
| | | |
| | | public NewAndEditBaseController(){ |
| | | ApiPrefix = 'PIBackApi'; |
| | | AWSToSobjectNonEncryptedMap = new Map<string,string>(); |
| | |
| | | system.debug('obj='+sobjectTypeValue); |
| | | |
| | | isNewMode = true; |
| | | isCloneMode = false; |
| | | List<Sobject> lso = Database.query('select id from RecordType where SobjectType = :sobjectTypeValue'); |
| | | |
| | | Map<string,string> mso = ApexPages.currentPage().getParameters(); |
| | | if(mso != null && mso.containsKey('newclone')){ |
| | | isCloneMode = true; |
| | | } |
| | | if(obj.Id != null){ |
| | | recordId = obj.Id; |
| | | isNewMode = false; |
| | |
| | | System.debug('sobjectTypeValue:'+sobjectTypeValue+' Info:' + JSON.serialize(leadJson)); |
| | | System.debug('json length='+leadJson.length()); |
| | | System.debug('leadJson---------'+leadJson); |
| | | System.debug('isNew---------'+isNew); |
| | | //1. Prepare the payload for Lead |
| | | Schema.SObjectType leadSchema = schemaMap.get(sobjectTypeValue); |
| | | Map<String, Schema.SObjectField> fieldAPIToTypeMap = leadSchema.getDescribe().fields.getMap(); |
| | | Map<String,Object> fieldValueMap = (Map<String,Object>)JSON.deserializeUntyped(leadJson); |
| | | |
| | | |
| | | |
| | | system.debug('enter Foo'); |
| | | string rtid = null; |
| | | if (fieldValueMap.containsKey('RecordTypeId')) { |
| | | rtid = String.valueOf(fieldValueMap.get('RecordTypeId')); |
| | | } |
| | | List<string> invalid_fields = GetInvalidFieldFromLayout(rtid,sobjectTypeValue); |
| | | |
| | | Boolean isClone = false; |
| | | //2. Save Record Process |
| | | String status = 'success'; |
| | | Response resp = new Response(); |
| | |
| | | Savepoint sp = Database.setSavepoint(); |
| | | Sobject leadInfo = sobj; |
| | | try{ |
| | | System.debug('abcde'); |
| | | |
| | | for (String fieldAPI: fieldValueMap.keySet()) { |
| | | system.debug('field API='+fieldAPI); |
| | | |
| | | if(invalid_fields.contains(fieldAPI)){ |
| | | system.debug(fieldAPI+' is invalid'); |
| | | continue; |
| | | } |
| | | |
| | | if(!fieldAPIToTypeMap.containskey(fieldAPI)){ |
| | | continue; |
| | | } |
| | |
| | | } |
| | | |
| | | system.debug('for (String fieldAPI: fieldValueMap.keySet()) end'); |
| | | awsDataId = (String)leadInfo.get('AWS_Data_Id__c'); |
| | | if (string.isBlank(awsDataId)) { |
| | | throw new DMLException('更新时AWS_Data_Id__c不能为空'); |
| | | } |
| | | System.debug('awsDataId = ' + awsDataId); |
| | | Sobject[] sobjects = Database.query('select id from '+sobjectTypeValue+' where AWS_Data_Id__c =:awsDataId'); |
| | | |
| | | if(isNew){ |
| | | |
| | | if(!isNew){ |
| | | isClone = sobjects.size() == 0; |
| | | } |
| | | System.debug('isNew---------'+isNew); |
| | | |
| | | if(isNew || isClone){ |
| | | System.debug('leadInfozhj = ' + leadInfo); |
| | | if(!Test.isRunningTest()){ |
| | | insert leadInfo; |
| | | } |
| | | }else{ |
| | | System.debug('into update'); |
| | | awsDataId = (String)leadInfo.get('AWS_Data_Id__c'); |
| | | if (string.isBlank(awsDataId)) { |
| | | throw new DMLException('更新时AWS_Data_Id__c不能为空'); |
| | | } |
| | | System.debug('awsDataId = ' + awsDataId); |
| | | Sobject[] leads = Database.query('select id from '+sobjectTypeValue+' where AWS_Data_Id__c =:awsDataId'); |
| | | System.debug('leads[0].id = ' + leads[0].id); |
| | | leadInfo.put('Id',leads[0].id);//For testing; |
| | | System.debug('sobjects[0].id = ' + sobjects[0].id); |
| | | leadInfo.put('Id',sobjects[0].id);//For testing; |
| | | if(!Test.isRunningTest()){ |
| | | update leadInfo; |
| | | } |
| | |
| | | } |
| | | } |
| | | |
| | | public static List<string> GetInvalidFieldFromLayout(string rtid, string sobject_name){ |
| | | List<string> ls = new List<string>(); |
| | | string[] only_type = new string[]{'QIS_Report__c'}; |
| | | if(!only_type.contains(sobject_name)){ |
| | | system.debug('not allow'); |
| | | return ls; |
| | | } |
| | | |
| | | List<Metadata.LayoutSection> sections = MetaDataUtility.GetRecordTypePageLayout(rtid, sobject_name); |
| | | |
| | | if (sections == null) { |
| | | System.debug('sections=null'); |
| | | return ls; |
| | | } |
| | | |
| | | system.debug(Json.serialize(sections)); |
| | | |
| | | for (Metadata.LayoutSection section : sections) { |
| | | if (section.layoutColumns != null) { |
| | | for (Metadata.LayoutColumn layoutColumn : section.layoutColumns) { |
| | | if(layoutColumn.layoutItems != null){ |
| | | for (Metadata.LayoutItem item : layoutColumn.layoutItems) { |
| | | |
| | | System.debug(item); |
| | | if(item.field==null)continue; |
| | | if (item.behavior == Metadata.UiBehavior.READONLY ) { |
| | | ls.add(item.field); |
| | | } |
| | | } |
| | | } |
| | | |
| | | } |
| | | } |
| | | |
| | | } |
| | | return ls; |
| | | } |
| | | } |
| | |
| | | LookUpOverrideFields.add('ReporterASE__c'); |
| | | a.Init(aseTest); |
| | | String AWSjson = a.AWSToSobjectMapJson; |
| | | |
| | | aseTest.put('AWS_Data_Id__c','1569989'); |
| | | String baseJson = JSON.serialize(aseTest); |
| | | System.debug('baseJson' + baseJson); |
| | | |
| | | NewAndEditBaseController.save(aseTest, baseJson, 'avgwshDFcxAS', true); |
| | | NewAndEditBaseController.save(aseTest, baseJson, 'avgwshDFcxAS', null); |
| | | Test.stopTest(); |
| | |
| | | LookUpOverrideFields.add('ReporterASE__c'); |
| | | a.Init(aseTest); |
| | | String AWSjson = a.AWSToSobjectMapJson; |
| | | |
| | | aseTest.put('AWS_Data_Id__c','1569989'); |
| | | String baseJson = JSON.serialize(aseTest); |
| | | System.debug('baseJson' + baseJson); |
| | | NewAndEditBaseController.save(aseTest, baseJson, 'avgwshDFcxAS', true); |
| | | Test.stopTest(); |
| | | } |
| | | |
| | | |
| | | } |
| | |
| | | public static Map<String, Schema.SObjectType> schemaMap = Schema.getGlobalDescribe(); |
| | | public static String sobjectTypeValue = 'Case'; |
| | | public Boolean isNewMode{set;get;} |
| | | public Boolean isCloneMode{protected set;get;} |
| | | public String rtTypeId {get; set;} |
| | | public String AWSDataId{set;get;} |
| | | public String contactId{set;get;}//For Lookup field |
| | |
| | | public string AWSToSobjectEncryptedMapJson{get{return JSON.serialize(AWSToSobjectEncryptedMap);}} |
| | | public NewAndEditCaseController(ApexPages.StandardController controller) { |
| | | isNewMode = true; |
| | | isCloneMode = false; |
| | | Input_Required_Field_Msg = Label.Input_Required_Field_Msg; |
| | | PIPL_Name_Label = Label.PIPL_Name_Label; |
| | | PIPL_Input_Account_Error_Msg = label.PIPL_Input_Account_Error_Msg; |
| | |
| | | //获取所有字段 |
| | | List<String> fieldList = new List<String>(Schema.getGlobalDescribe().get('Case').getDescribe().fields.getMap().keyset()); |
| | | // Add fields to controller. This is to avoid the SOQL error in visualforce page |
| | | Map<string,string> mso = ApexPages.currentPage().getParameters(); |
| | | if(mso != null && mso.containsKey('newclone')){ |
| | | isCloneMode = true; |
| | | } |
| | | if (!Test.isRunningTest()) { |
| | | controller.addFields(fieldList); |
| | | } |
| | |
| | | contactsInfo = JSON.serialize(sfIdToAWSIdMap); |
| | | }else{ |
| | | //新建 |
| | | rtTypeId = ApexPages.currentPage().getParameters().get('RecordType'); |
| | | // rtTypeId = ApexPages.currentPage().getParameters().get('RecordType'); |
| | | rtTypeId = mso.get('RecordType'); |
| | | obj.put('OwnerId',UserInfo.getUserId()); |
| | | } |
| | | LayoutDescriberHelper.LayoutWrapper LayoutWrapperValue = LayoutDescriberHelper.describeSectionWithFieldsWrapper(rtTypeId, 'Case','classic'); |
| | |
| | | } |
| | | } |
| | | |
| | | System.debug('caseInfo='+caseInfo); |
| | | System.debug('caseInfo.Account__c='+caseInfo.Account__c); |
| | | if (!String.isBlank(caseInfo.ContactId) && (String.isBlank(caseInfo.Account__c) || Id.valueOf(caseInfo.Account__c).to15() =='000000000000000')) { |
| | | Contact c = [select id,AccountId from Contact where id = :caseInfo.ContactId]; |
| | | caseInfo.Account__c = c.AccountId; |
| | | if (Id.valueOf(caseInfo.ContactId).to15() !='000000000000000') { |
| | | Contact c = [select id,AccountId from Contact where id = :caseInfo.ContactId]; |
| | | caseInfo.Account__c = c.AccountId; |
| | | } |
| | | } |
| | | |
| | | //2. Save Record Process |
| | |
| | | Response resp = new Response(); |
| | | Savepoint sp = Database.setSavepoint(); |
| | | String rid = ''; |
| | | String awsDataId = ''; |
| | | Boolean isClone = false; |
| | | try{ |
| | | System.debug('abcde'); |
| | | if(isNew){ |
| | | awsDataId = (String)caseInfo.get('AWS_Data_Id__c'); |
| | | System.debug('awsDataId = ' + awsDataId); |
| | | Case[] cases = [select id from Case where AWS_Data_Id__c =:awsDataId]; |
| | | |
| | | if(!isNew){ |
| | | isClone = cases.size() == 0; |
| | | } |
| | | if(isNew || isClone){ |
| | | System.debug('caseInfozhj = ' + caseInfo); |
| | | if(!Test.isRunningTest()){ |
| | | insert caseInfo; |
| | | } |
| | | }else{ |
| | | System.debug('into update'); |
| | | String awsDataId = (String)caseInfo.get('AWS_Data_Id__c'); |
| | | System.debug('awsDataId = ' + awsDataId); |
| | | Case[] cases = [select id from Case where AWS_Data_Id__c =:awsDataId]; |
| | | // String awsDataId = (String)caseInfo.get('AWS_Data_Id__c'); |
| | | // System.debug('awsDataId = ' + awsDataId); |
| | | // Case[] cases = [select id from Case where AWS_Data_Id__c =:awsDataId]; |
| | | System.debug('cases ========================= ' + cases); |
| | | System.debug('Cases[0].id = ' + cases[0].id); |
| | | caseInfo.put('Id',cases[0].id);//For testing; |
| | |
| | | }else{ |
| | | Map<string,string> mso = ApexPages.currentPage().getParameters(); |
| | | system.debug('mso='+mso); |
| | | system.debug('url='+ApexPages.currentPage().getUrl()); |
| | | if(mso.containsKey('con4_lkid')){ |
| | | controller.getRecord().put('AccountId',mso.get('con4_lkid')); |
| | | } |
| | |
| | | system.debug(mso); |
| | | PageReference pg = null; |
| | | mso.remove('sfdc.override'); |
| | | mso.remove('save_new'); |
| | | system.debug('recordId='+recordId); |
| | | if(string.isBlank(recordId)){ |
| | | pg = new PageReference('/003/e'); |
| | | }else{ |
| | | pg = new PageReference('/'+recordId+'/e'); |
| | | } |
| | | //pg.getParameters().putAll(mso); |
| | | pg.getParameters().put('RecordType',mso.get('RecordType')); |
| | | pg.getParameters().put('accid',mso.get('accid')); |
| | | pg.getParameters().putAll(mso); |
| | | //pg.getParameters().put('RecordType',mso.get('RecordType')); |
| | | //pg.getParameters().put('accid',mso.get('accid')); |
| | | pg.getParameters().put('nooverride','1'); |
| | | pg.setRedirect(true); |
| | | return pg; |
| | |
| | | public static Map<String, Schema.SObjectType> schemaMap = Schema.getGlobalDescribe(); |
| | | public static String sobjectTypeValue = 'Lead'; |
| | | public Boolean isNewMode{set;get;} |
| | | public Boolean isCloneMode{protected set;get;} |
| | | public String rtTypeId {get; set;} |
| | | public String AWSDataId{set;get;} |
| | | public String AWSDataIdInquiryForm{set;get;} |
| | |
| | | ApiPrefix = 'PIBackApi'; |
| | | isDecryptContact = '0'; |
| | | isNewMode = true; |
| | | isCloneMode = false; |
| | | Input_Required_Field_Msg = Label.Input_Required_Field_Msg; |
| | | PIPL_Name_Label = Label.PIPL_Name_Label; |
| | | PIPL_Input_Account_Error_Msg = label.PIPL_Input_Account_Error_Msg; |
| | | sobjecttypeForFrontEnd = sobjectTypeValue; |
| | | Map<string,string> mso = ApexPages.currentPage().getParameters(); |
| | | if(mso != null && mso.containsKey('newclone')){ |
| | | isCloneMode = true; |
| | | } |
| | | //获取所有字段 |
| | | List<String> fieldList = new List<String>(Schema.getGlobalDescribe().get('Lead').getDescribe().fields.getMap().keyset()); |
| | | // Add fields to controller. This is to avoid the SOQL error in visualforce page |
| | |
| | | ifc = [select Id,AWS_Data_Id__c,Contact_Name__c,Contact_Id__c,Hospital_Name__c,Hospital_ID__c,Department_Class__c, |
| | | Department_ID__c,Opp_Name_Search__c,Opp_Name_Search_ID__c,Campaign__c, |
| | | Campaign_ID__c,Name,Cancel_Reason__c,Phone__c,Email__c,Last_Name__c,LeadSource__c,Opportunity_Division__c,Request1__c, |
| | | Urgent__c from Inquiry_form__c where id = :InquiryFormId]; |
| | | Urgent__c,Inquiry_Num__c from Inquiry_form__c where id = :InquiryFormId]; |
| | | System.debug('ifc = ' + ifc); |
| | | if(ifc.Contact_Id__c !=null && ifc.Contact_Id__c != ''){ |
| | | Contact c = [select AWS_Data_Id__c from Contact where id = :ifc.Contact_Id__c]; |
| | |
| | | System.debug('ifc = ' + ifc); |
| | | rtTypeId = ApexPages.currentPage().getParameters().get('RecordType'); |
| | | obj.put('OwnerId',UserInfo.getUserId()); |
| | | obj.put('Inquiry_Num__c',ifc.Inquiry_Num__c);// 20220413 SWAG-CBUB2W you |
| | | }else if(obj.Id != null){ |
| | | //更新 |
| | | isNewMode = false; |
| | |
| | | contactsInfo = JSON.serialize(sfIdToAWSIdMap); |
| | | }else{ |
| | | //看链接中有无带过来的参数(客户人员) |
| | | Map<string,string> mso = ApexPages.currentPage().getParameters(); |
| | | // Map<string,string> mso = ApexPages.currentPage().getParameters(); |
| | | for(String key : mso.keySet()){ |
| | | System.debug('key=' + key + ',value=' + mso.get(key)); |
| | | } |
| | |
| | | // if(mso.containsKey('CF00N10000006qNtt_lkid ')){ |
| | | // controller.getRecord().put('Department_Class__c',mso.get('CF00N10000006qNtt_lkid ')); |
| | | // } |
| | | // 2022-04-13 来源 jz start 0414 lt |
| | | if (mso.containsKey('LeadSource')) { |
| | | controller.getRecord().put('LeadSource', mso.get('LeadSource')); |
| | | } |
| | | if (mso.containsKey('00N10000006qOFb')) { |
| | | controller.getRecord().put('Opportunity_stage__c', mso.get('00N10000006qOFb')); |
| | | } |
| | | if (mso.containsKey('00N10000006qOF0')) { |
| | | controller.getRecord().put('Close_Forecasted_Date__c', Date.parse(mso.get('00N10000006qOF0'))); |
| | | } |
| | | if (mso.containsKey('00N10000002EjE1')) { |
| | | controller.getRecord().put('Opp_Name__c', mso.get('00N10000002EjE1')); |
| | | } |
| | | // if (mso.containsKey('00N100000048UBf')) { |
| | | // controller.getRecord().put('Contact__c', mso.get('00N100000048UBf')); |
| | | // } |
| | | if (mso.containsKey('00N10000002Cl6Y')) { |
| | | controller.getRecord().put('Purchase_Reason__c', mso.get('00N10000002Cl6Y')); |
| | | } |
| | | if (mso.containsKey('00N10000002CpEz')) { |
| | | controller.getRecord().put('Fund_Basis__c', mso.get('00N10000002CpEz')); |
| | | } |
| | | if (mso.containsKey('00N10000002CpF9')) { |
| | | controller.getRecord().put('Purchase_Type__c', mso.get('00N10000002CpF9')); |
| | | } |
| | | // 2022-04-13 来源 jz end 0414 lt |
| | | rtTypeId = ApexPages.currentPage().getParameters().get('RecordType'); |
| | | obj.put('OwnerId',UserInfo.getUserId()); |
| | | } |
| | |
| | | String status = 'success'; |
| | | Response resp = new Response(); |
| | | Savepoint sp = Database.setSavepoint(); |
| | | Boolean isClone = false; |
| | | String rid = ''; |
| | | String awsDataId = ''; |
| | | try{ |
| | | System.debug('abcde'); |
| | | if(isNew){ |
| | | awsDataId = (String)leadInfo.get('AWS_Data_Id__c'); |
| | | System.debug('awsDataId = ' + awsDataId); |
| | | Lead[] leads = [select id from Lead where AWS_Data_Id__c =:awsDataId]; |
| | | |
| | | if(!isNew){ |
| | | isClone = leads.size() == 0; |
| | | } |
| | | System.debug('isClone---------'+isClone); |
| | | |
| | | if(isNew || isClone){ |
| | | System.debug('leadInfozhj = ' + leadInfo); |
| | | if(!Test.isRunningTest()){ |
| | | insert leadInfo; |
| | | } |
| | | }else{ |
| | | System.debug('into update'); |
| | | String awsDataId = (String)leadInfo.get('AWS_Data_Id__c'); |
| | | System.debug('awsDataId = ' + awsDataId); |
| | | Lead[] leads = [select id from Lead where AWS_Data_Id__c =:awsDataId]; |
| | | // String awsDataId = (String)leadInfo.get('AWS_Data_Id__c'); |
| | | // System.debug('awsDataId = ' + awsDataId); |
| | | // Lead[] leads = [select id from Lead where AWS_Data_Id__c =:awsDataId]; |
| | | System.debug('leads[0].id = ' + leads[0].id); |
| | | leadInfo.put('Id',leads[0].id);//For testing; |
| | | if(!Test.isRunningTest()){ |
| | |
| | | System.debug('resp from sfdx back-end' + resp); |
| | | return resp; |
| | | |
| | | } catch(DmlException e) { |
| | | Integer index = 0; |
| | | System.debug(e.getNumDml()); |
| | | System.debug(e.getDmlFields(index)); |
| | | System.debug(e.getDmlId(index)); |
| | | System.debug(e.getDmlIndex(index)); |
| | | System.debug(e.getDmlMessage(index)); |
| | | System.debug(e.getDmlStatusCode(index)); |
| | | System.debug(e.getDmlType(index)); |
| | | system.debug(e.getMessage()); |
| | | system.debug(e.getStackTraceString()); |
| | | |
| | | System.debug('into catch'+e.getMessage()); |
| | | Database.rollback(sp); |
| | | resp.status = 'Exception'; |
| | | resp.message ='保存失败,原因:'+ e.getDmlMessage(index); |
| | | PIHelper.saveTransLog(sobjectTypeValue,(String)leadInfo.get('AWS_Data_Id__c'),rid,transId, leadJson ,status,e.getMessage()+e.getStackTraceString()); |
| | | return resp; |
| | | |
| | | } catch(Exception e) { |
| | | System.debug('into catch'+e.getMessage()); |
| | | Database.rollback(sp); |
| | |
| | | global with sharing class NewAndEditQISController extends NewAndEditBaseController{ |
| | | public String Input_Required_Field_Msg{set;get;} |
| | | public String qisId{set;get;} |
| | | public NewAndEditQISController(ApexPages.StandardController controller) { |
| | | Input_Required_Field_Msg = Label.Input_Required_Field_Msg; |
| | | List<String> fieldList = new List<String>(Schema.getGlobalDescribe().get('QIS_Report__c').getDescribe().fields.getMap().keyset()); |
| | |
| | | |
| | | //Updated by Chen Yanan 20220323 Start |
| | | String contactId = controller.getRecord().Id; |
| | | Map<string,string> mso = ApexPages.currentPage().getParameters(); |
| | | if(contactId == null){ |
| | | Map<string,string> mso = ApexPages.currentPage().getParameters(); |
| | | system.debug('mso='+mso); |
| | | if(mso.containsKey('CF00N10000002FHFK_lkid')){ |
| | | controller.getRecord().put('Name', '*'); |
| | | } |
| | | } |
| | | if(mso.containsKey('CF00N100000073PA0_lkid')){ |
| | | controller.getRecord().put('QIS_pre__c',mso.get('CF00N100000073PA0_lkid')); |
| | | } |
| | | system.debug('controller.getRecord()='+controller.getRecord()); |
| | | //Updated by Chen Yanan 20220323 End |
| | | } |
| | |
| | | public static Map<String, Schema.SObjectType> schemaMap = Schema.getGlobalDescribe(); |
| | | public static String sobjectTypeValue = 'Report__c'; |
| | | public Boolean isNewMode{set;get;} |
| | | public Boolean isCloneMode{protected set;get;} |
| | | public String rtTypeId {get; set;} |
| | | public String AWSDataId{set;get;} |
| | | public String contactId{set;get;}//For Lookup field |
| | |
| | | AWSToSobjectEncryptedMap = new Map<string,string>(); |
| | | sobjectId = [SELECT CustomObjectId,CustomObjectName FROM CustomObjectUserLicenseMetrics where CustomObjectName ='Report' limit 1].CustomObjectId; |
| | | isNewMode = true; |
| | | isCloneMode = false; |
| | | Input_Required_Field_Msg = Label.Input_Required_Field_Msg; |
| | | PIPL_Input_Account_Error_Msg = label.PIPL_Input_Account_Error_Msg; |
| | | sobjecttypeForFrontEnd = sobjectTypeValue; |
| | |
| | | // Add fields to controller. This is to avoid the SOQL error in visualforce page |
| | | if (!Test.isRunningTest()) { |
| | | controller.addFields(fieldList); |
| | | } |
| | | Map<string,string> mso = ApexPages.currentPage().getParameters(); |
| | | if(mso != null && mso.containsKey('newclone')){ |
| | | isCloneMode = true; |
| | | } |
| | | SObject obj = controller.getRecord(); |
| | | if(obj.Id != null){ |
| | |
| | | contactAWSDataId1 = '无'; |
| | | contactName1 = '无'; |
| | | } |
| | | }else if(ApexPages.currentPage().getParameters().get('CF00N10000008ps6d_lkid') != null){ |
| | | }else{ |
| | | //新建 |
| | | // Map<string,string> mso = ApexPages.currentPage().getParameters(); |
| | | //医院/科室/经销商(手写) |
| | | if(mso.containsKey('00N10000002GE3Z')){ |
| | | controller.getRecord().put('Manual_Name__c',mso.get('00N10000002GE3Z')); |
| | | } |
| | | rtTypeId = ApexPages.currentPage().getParameters().get('RecordType'); |
| | | obj.put('OwnerId',UserInfo.getUserId()); |
| | | } |
| | | if(ApexPages.currentPage().getParameters().get('CF00N10000008ps6d_lkid') != null){ |
| | | //OPD计划过来的,通过Id查出借出备品申请No1进行展示 |
| | | String opdPlanId = ApexPages.currentPage().getParameters().get('CF00N10000008ps6d_lkid'); |
| | | if(String.isNotEmpty(opdPlanId)&&String.isNotBlank(opdPlanId)){ |
| | |
| | | } |
| | | } |
| | | } |
| | | rtTypeId = ApexPages.currentPage().getParameters().get('RecordType'); |
| | | obj.put('OwnerId',UserInfo.getUserId()); |
| | | }else{ |
| | | //新建 |
| | | Map<string,string> mso = ApexPages.currentPage().getParameters(); |
| | | //医院/科室/经销商(手写) |
| | | if(mso.containsKey('00N10000002GE3Z')){ |
| | | controller.getRecord().put('Manual_Name__c',mso.get('00N10000002GE3Z')); |
| | | } |
| | | rtTypeId = ApexPages.currentPage().getParameters().get('RecordType'); |
| | | obj.put('OwnerId',UserInfo.getUserId()); |
| | | } |
| | | //OPD计划 |
| | | if(mso.containsKey('CF00N10000008ps6d_lkid')){ |
| | | controller.getRecord().put('Report_OPDPlan__c',mso.get('CF00N10000008ps6d_lkid')); |
| | | } |
| | | LayoutDescriberHelper.LayoutWrapper LayoutWrapperValue = LayoutDescriberHelper.describeSectionWithFieldsWrapper(rtTypeId, 'Report__c','classic'); |
| | | layoutSections = LayoutWrapperValue.layoutSections; |
| | |
| | | Savepoint sp = Database.setSavepoint(); |
| | | String rid = ''; |
| | | //自定义格式转换 |
| | | Boolean isClone = false; |
| | | try{ |
| | | for (String fieldAPI: fieldValueMap.keySet()) { |
| | | if(!fieldAPIToTypeMap.containskey(fieldAPI)){ |
| | | continue; |
| | | for (String fieldAPI: fieldValueMap.keySet()) { |
| | | if(!fieldAPIToTypeMap.containskey(fieldAPI)){ |
| | | continue; |
| | | } |
| | | Schema.DisplayType fielddataType = fieldAPIToTypeMap.get(fieldAPI).getDescribe().getType(); |
| | | String fieldValue = String.valueOf(fieldValueMap.get(fieldAPI)); |
| | | if(String.valueOf(fielddataType)=='DATE'){ |
| | | System.debug('DATE fieldAPI = '+fieldAPI+' filedData = '+String.valueOf(fieldValueMap.get(fieldAPI))); |
| | | //reportInfo.put(fieldAPI, Date.valueOf(String.valueOf(fieldValueMap.get(fieldAPI)).replace('/', '-'))); |
| | | reportInfo.put(fieldAPI,(String.isBlank(fieldValue)||String.isEmpty(fieldValue))? null:Date.valueOf(fieldValue.replace('/', '-'))); |
| | | }else if(String.valueOf(fielddataType)=='DATETIME'){ |
| | | System.debug('fieldValueMap:' + fieldValueMap); |
| | | String dt = String.valueOf(fieldValueMap.get(fieldAPI)); |
| | | System.debug('fieldValueMap.get(fieldAPI)' + fieldValueMap.get(fieldAPI)); |
| | | System.debug('dt:'+dt); |
| | | if(String.isNotBlank(dt)&&dt.contains('T')){ |
| | | dt = dt.replace('T',' '); |
| | | reportInfo.put(fieldAPI, Datetime.valueOfGmt(dt)); |
| | | }else if(String.isNotBlank(dt)) { |
| | | reportInfo.put(fieldAPI, Datetime.valueOf(dt.replace('/', '-') + ':00')); |
| | | }else{ |
| | | reportInfo.put(fieldAPI, null); |
| | | } |
| | | }else if(String.valueof(fielddataType)=='CURRENCY'|| String.valueof(fielddataType)=='PERCENT'||String.valueOf(fielddataType)=='Number'||String.valueOf(fielddataType)=='DOUBLE' ){ |
| | | //reportInfo.put(fieldAPI, Decimal.valueOf(String.valueOf(fieldValueMap.get(fieldAPI)))); |
| | | reportInfo.put(fieldAPI, (String.isBlank(fieldValue)||String.isEmpty(fieldValue))?null:Decimal.valueOf(fieldValue.replace(',', ''))); |
| | | } else if(String.valueof(fielddataType)=='BOOLEAN'){ |
| | | reportInfo.put(fieldAPI, fieldValueMap.get(fieldAPI)); |
| | | }else { |
| | | reportInfo.put(fieldAPI, String.valueOf(fieldValueMap.get(fieldAPI))); |
| | | } |
| | | } |
| | | Schema.DisplayType fielddataType = fieldAPIToTypeMap.get(fieldAPI).getDescribe().getType(); |
| | | String fieldValue = String.valueOf(fieldValueMap.get(fieldAPI)); |
| | | if(String.valueOf(fielddataType)=='DATE'){ |
| | | System.debug('DATE fieldAPI = '+fieldAPI+' filedData = '+String.valueOf(fieldValueMap.get(fieldAPI))); |
| | | //reportInfo.put(fieldAPI, Date.valueOf(String.valueOf(fieldValueMap.get(fieldAPI)).replace('/', '-'))); |
| | | reportInfo.put(fieldAPI,(String.isBlank(fieldValue)||String.isEmpty(fieldValue))? null:Date.valueOf(fieldValue.replace('/', '-'))); |
| | | }else if(String.valueOf(fielddataType)=='DATETIME'){ |
| | | System.debug('fieldValueMap:' + fieldValueMap); |
| | | String dt = String.valueOf(fieldValueMap.get(fieldAPI)); |
| | | System.debug('fieldValueMap.get(fieldAPI)' + fieldValueMap.get(fieldAPI)); |
| | | System.debug('dt:'+dt); |
| | | if(String.isNotBlank(dt)&&dt.contains('T')){ |
| | | dt = dt.replace('T',' '); |
| | | reportInfo.put(fieldAPI, Datetime.valueOfGmt(dt)); |
| | | }else if(String.isNotBlank(dt)) { |
| | | reportInfo.put(fieldAPI, Datetime.valueOf(dt.replace('/', '-') + ':00')); |
| | | }else{ |
| | | reportInfo.put(fieldAPI, null); |
| | | } |
| | | }else if(String.valueof(fielddataType)=='CURRENCY'|| String.valueof(fielddataType)=='PERCENT'||String.valueOf(fielddataType)=='Number'||String.valueOf(fielddataType)=='DOUBLE' ){ |
| | | //reportInfo.put(fieldAPI, Decimal.valueOf(String.valueOf(fieldValueMap.get(fieldAPI)))); |
| | | reportInfo.put(fieldAPI, (String.isBlank(fieldValue)||String.isEmpty(fieldValue))?null:Decimal.valueOf(fieldValue.replace(',', ''))); |
| | | } else if(String.valueof(fielddataType)=='BOOLEAN'){ |
| | | reportInfo.put(fieldAPI, fieldValueMap.get(fieldAPI)); |
| | | }else { |
| | | reportInfo.put(fieldAPI, String.valueOf(fieldValueMap.get(fieldAPI))); |
| | | } |
| | | } |
| | | System.debug('自定义格式转换结束'); |
| | | System.debug('自定义格式转换结束'); |
| | | |
| | | String awsDataId = (String)reportInfo.get('AWS_Data_Id__c'); |
| | | System.debug('awsDataId = ' + awsDataId); |
| | | report__c[] reports = [select id from report__c where AWS_Data_Id__c =:awsDataId]; |
| | | |
| | | if(!isNew){ |
| | | isClone = reports.size() == 0; |
| | | } |
| | | if(isNew){ |
| | | System.debug('reportInfo = ' + reportInfo); |
| | | if(!Test.isRunningTest()){ |
| | |
| | | } |
| | | }else{ |
| | | System.debug('into update'); |
| | | String awsDataId = (String)reportInfo.get('AWS_Data_Id__c'); |
| | | System.debug('awsDataId = ' + awsDataId); |
| | | report__c[] reports = [select id from report__c where AWS_Data_Id__c =:awsDataId]; |
| | | // String awsDataId = (String)reportInfo.get('AWS_Data_Id__c'); |
| | | // System.debug('awsDataId = ' + awsDataId); |
| | | // report__c[] reports = [select id from report__c where AWS_Data_Id__c =:awsDataId]; |
| | | System.debug('reports[0].id = ' + reports[0].id); |
| | | reportInfo.put('Id',reports[0].id);//For testing; |
| | | if(!Test.isRunningTest()){ |
| | |
| | | List<String> strList = new List<String>(); |
| | | strList.add('Report__c'); |
| | | strList.add('Contact'); |
| | | strList.add('Agency_Contact__c'); |
| | | TestDataUtility.CreatePIPolicyConfigurations(strList); |
| | | } |
| | | static testMethod void testMethod1() { |
| | |
| | | public static Map<String, Schema.SObjectType> schemaMap = Schema.getGlobalDescribe(); |
| | | public static String sobjectTypeValue = 'Consum_Apply__c'; |
| | | public Boolean isNewMode{set;get;} |
| | | public Boolean isCloneMode{protected set;get;} |
| | | public String rtTypeId {get; set;} |
| | | public String AWSDataId{set;get;} |
| | | public List<String> encryptedAPIList{set;get;} |
| | |
| | | public NewConsumApplyController(ApexPages.StandardController controller) { |
| | | ApiPrefix = 'PIBackApi'; |
| | | isNewMode = true; |
| | | isCloneMode = false; |
| | | Input_Required_Field_Msg = Label.Input_Required_Field_Msg; |
| | | PIPL_Input_Account_Error_Msg = label.PIPL_Input_Account_Error_Msg; |
| | | //获取所有字段 |
| | | List<String> fieldList = new List<String>(Schema.getGlobalDescribe().get('Consum_Apply__c').getDescribe().fields.getMap().keyset()); |
| | | Map<string,string> mso = ApexPages.currentPage().getParameters(); |
| | | if(mso != null && mso.containsKey('newclone')){ |
| | | isCloneMode = true; |
| | | } |
| | | if (!Test.isRunningTest()) { |
| | | controller.addFields(fieldList); |
| | | } |
| | |
| | | //新建 |
| | | rtTypeId = ApexPages.currentPage().getParameters().get('RecordType'); |
| | | obj.put('OwnerId',UserInfo.getUserId()); |
| | | Map<string,string> mso = ApexPages.currentPage().getParameters(); |
| | | // Map<string,string> mso = ApexPages.currentPage().getParameters(); |
| | | system.debug('mso='+mso); |
| | | if(mso.containsKey('00N10000008rdgs')){ |
| | | controller.getRecord().put('demo_purpose2__c',mso.get('00N10000008rdgs')); |
| | |
| | | Response resp = new Response(); |
| | | Savepoint sp = Database.setSavepoint(); |
| | | String rid = ''; |
| | | Boolean isClone = false; |
| | | String awsDataId = ''; |
| | | |
| | | try{ |
| | | System.debug('abcde'); |
| | | if(isNew){ |
| | | awsDataId = (String)consumApplyInfo.get('AWS_Data_Id__c'); |
| | | System.debug('awsDataId = ' + awsDataId); |
| | | Consum_Apply__c[] ConsumApplys = [select id from Consum_Apply__c where AWS_Data_Id__c =:awsDataId]; |
| | | if(!isNew){ |
| | | isClone = ConsumApplys.size() == 0; |
| | | } |
| | | if(isNew || isClone){ |
| | | System.debug('consumApplyInfozhj = ' + consumApplyInfo); |
| | | insert consumApplyInfo; |
| | | System.debug('consumApplyInfo.Id' + consumApplyInfo.Id); |
| | | }else{ |
| | | System.debug('into update'); |
| | | String awsDataId = (String)consumApplyInfo.get('AWS_Data_Id__c'); |
| | | System.debug('awsDataId = ' + awsDataId); |
| | | Consum_Apply__c[] ConsumApplys = [select id from Consum_Apply__c where AWS_Data_Id__c =:awsDataId]; |
| | | // String awsDataId = (String)consumApplyInfo.get('AWS_Data_Id__c'); |
| | | // System.debug('awsDataId = ' + awsDataId); |
| | | // Consum_Apply__c[] ConsumApplys = [select id from Consum_Apply__c where AWS_Data_Id__c =:awsDataId]; |
| | | System.debug('ConsumApplys[0].id = ' + ConsumApplys[0].id); |
| | | consumApplyInfo.put('Id',ConsumApplys[0].id);//For testing; |
| | | update consumApplyInfo; |
| | |
| | | public String awsToken{set;get;} |
| | | public static Map<String, Schema.SObjectType> schemaMap = Schema.getGlobalDescribe(); |
| | | public static String sobjectTypeValue = 'Consum_Apply_Equipment_Set_Detail__c'; |
| | | public Boolean isCloneMode{protected set;get;} |
| | | public Boolean isNewMode{set;get;} |
| | | public String rtTypeId {get; set;} |
| | | public String AWSDataId{set;get;} |
| | |
| | | public String sobjectPrefix{set;get;} |
| | | public NewConsumApplyEquipSetDetailController(ApexPages.StandardController controller) { |
| | | isNewMode = true; |
| | | isCloneMode = false; |
| | | Input_Required_Field_Msg = Label.Input_Required_Field_Msg; |
| | | sobjecttypeForFrontEnd = sobjectTypeValue; |
| | | //获取所有字段 |
| | | Map<string,string> mso = ApexPages.currentPage().getParameters(); |
| | | if(mso != null && mso.containsKey('newclone')){ |
| | | isCloneMode = true; |
| | | } |
| | | List<String> fieldList = new List<String>(Schema.getGlobalDescribe().get('Consum_Apply_Equipment_Set_Detail__c').getDescribe().fields.getMap().keyset()); |
| | | if (!Test.isRunningTest()) { |
| | | controller.addFields(fieldList); |
| | |
| | | if(String.isNotBlank(fieldValue)&&fieldValue.contains('T')){ |
| | | fieldValue = fieldValue.replace('T',' '); |
| | | consumApplyInfo.put(fieldAPI, Datetime.valueOfGmt(fieldValue)); |
| | | //20220405 By ChenYanan Start |
| | | }else if(String.isNotBlank(fieldValue)) { |
| | | fieldValue = fieldValue.replace('/', '-') + ':00'; |
| | | consumApplyInfo.put(fieldAPI, Datetime.valueOf(fieldValue)); |
| | | //20220405 By ChenYanan End |
| | | }else{ |
| | | consumApplyInfo.put(fieldAPI, null); |
| | | } |
| | | } |
| | | }else if(String.valueof(fielddataType)=='CURRENCY'|| String.valueof(fielddataType)=='PERCENT'||String.valueOf(fielddataType)=='Number'||String.valueOf(fielddataType)=='DOUBLE' ){ |
| | | consumApplyInfo.put(fieldAPI, (String.isBlank(fieldValue)||String.isEmpty(fieldValue))?0:Decimal.valueOf(fieldValue)); |
| | | } else if(String.valueof(fielddataType)=='BOOLEAN'){ |
| | |
| | | Response resp = new Response(); |
| | | Savepoint sp = Database.setSavepoint(); |
| | | String rid = ''; |
| | | Boolean isClone = false; |
| | | String awsDataId = ''; |
| | | try{ |
| | | System.debug('abcde'); |
| | | awsDataId = (String)consumApplyInfo.get('AWS_Data_Id__c'); |
| | | System.debug('awsDataId = ' + awsDataId); |
| | | Consum_Apply_Equipment_Set_Detail__c[] ConsumApplys = [select id from Consum_Apply_Equipment_Set_Detail__c where AWS_Data_Id__c =:awsDataId]; |
| | | |
| | | if(!isNew || isClone){ |
| | | isClone = ConsumApplys.size() == 0; |
| | | } |
| | | if(isNew){ |
| | | System.debug('consumApplyInfozhj = ' + consumApplyInfo); |
| | | insert consumApplyInfo; |
| | | System.debug('consumApplyInfo.Id' + consumApplyInfo.Id); |
| | | }else{ |
| | | System.debug('into update'); |
| | | String awsDataId = (String)consumApplyInfo.get('AWS_Data_Id__c'); |
| | | System.debug('awsDataId = ' + awsDataId); |
| | | Consum_Apply_Equipment_Set_Detail__c[] ConsumApplys = [select id from Consum_Apply_Equipment_Set_Detail__c where AWS_Data_Id__c =:awsDataId]; |
| | | // String awsDataId = (String)consumApplyInfo.get('AWS_Data_Id__c'); |
| | | // System.debug('awsDataId = ' + awsDataId); |
| | | // Consum_Apply_Equipment_Set_Detail__c[] ConsumApplys = [select id from Consum_Apply_Equipment_Set_Detail__c where AWS_Data_Id__c =:awsDataId]; |
| | | System.debug('ConsumApplys[0].id = ' + ConsumApplys[0].id); |
| | | consumApplyInfo.put('Id',ConsumApplys[0].id);//For testing; |
| | | update consumApplyInfo; |
| | |
| | | public Integer flglastbuy { get; set; } |
| | | public String errorProductmodel { get; set; } |
| | | //lastbuy 2022/2/9 fy end |
| | | |
| | | //SWAG-CC6AFQ【委托】又有询价跳过了报价计算 fy start |
| | | public Boolean SkipQuotefilg { get; set; } |
| | | //SWAG-CC6AFQ【委托】又有询价跳过了报价计算 fy end |
| | | public String excel_text { get; set; } |
| | | public Integer select_index { get; set; } // excelImport専用ですが、jsにて制御することになるので、TODO katsu 削除予定 |
| | | public String Product_text { get; set; } |
| | |
| | | } |
| | | |
| | | public PageReference init() { |
| | | |
| | | //SWAG-CC6AFQ【委托】又有询价跳过了报价计算 fy start |
| | | SkipQuotefilg = false; |
| | | //SWAG-CC6AFQ【委托】又有询价跳过了报价计算 fy end |
| | | system.debug('============start init=============='); |
| | | boolean quoteflg = true; |
| | | WinOrDecideAlert = false; |
| | |
| | | if (copyQuoId == null) { |
| | | } else { |
| | | // copyの場合、quoIdをnullに戻す |
| | | system.debug('id空6:'); |
| | | quoId = null; |
| | | //SWAG-CC6AFQ【委托】又有询价跳过了报价计算 fy start |
| | | SkipQuotefilg = true; |
| | | //SWAG-CC6AFQ【委托】又有询价跳过了报价计算 fy end |
| | | } |
| | | if (quoList.size() > 0) { |
| | | //添加行 |
| | |
| | | if (dataCheck() == false) { |
| | | return null; |
| | | } |
| | | |
| | | // 2022-04-06 SWAG-CC6AFQ【委托】又有询价跳过了报价计算 ssm start |
| | | // 判断条件修改 |
| | | // 1.如果保存方法返回false,return |
| | | // 2.如果保存通过但创建了新报价,return |
| | | // 3.继续做decide |
| | | if (dataEntry() == false) { |
| | | return null; |
| | | } else { |
| | | //引合に見積決定をオン |
| | | if (oppId == null) { |
| | | system.debug('Error is Opportunityid null!!!'); |
| | | } else { |
| | | List<Opportunity> opps = [Select Id, Estimation_Decision__c From Opportunity Where Id = : oppId]; |
| | | if (opps.size() > 0) { |
| | | opps[0].Estimation_Decision__c = true; |
| | | /*↓↓↓見積同期↓↓↓2012/11/28 未使用 |
| | | opps[0].SyncedQuoteId = quoId; |
| | | ↑↑↑ ↑↑↑*/ |
| | | ControllerUtil.updOpp(opps[0]); |
| | | } |
| | | |
| | | errorflg = true; |
| | | errorMessage = System.Label.Message_002; |
| | | |
| | | // cic 134906 start |
| | | Quote q = [select Id from Quote where Id = :quoId]; |
| | | q.Quote_Decision_Date__c = date.Today(); |
| | | update q; |
| | | // cic 134906 end |
| | | |
| | | QuoteDecision = true; |
| | | enableContract = true; |
| | | //--Savebutton |
| | | Save_button = true; |
| | | //--Decisionbutton判定 |
| | | if (verified == true) { |
| | | Decision_button = false; |
| | | } else if (QuoteCorrect == false) { |
| | | Decision_button = true; |
| | | } else if (QuoteDecision == true) { |
| | | Decision_button = true; |
| | | } else { |
| | | Decision_button = false; |
| | | } |
| | | //--SAPButton |
| | | if (QuoteDecision == false) { |
| | | sap_button = true; |
| | | } else if (specialAuthority == false) { |
| | | sap_button = true; |
| | | } else { |
| | | sap_button = false; |
| | | } |
| | | //--決定ボタン使えないようにする |
| | | Decision_button = true; |
| | | |
| | | pageArrange(); |
| | | } |
| | | } |
| | | if(SkipQuotefilg){ |
| | | errorflg = true; |
| | | errormessage = '画面配置变更,已生成新的报价单,请重新做报价计算'; |
| | | quo.IsQuoteTrial__c = false; |
| | | return null; |
| | | } |
| | | //引合に見積決定をオン |
| | | if (oppId == null) { |
| | | system.debug('Error is Opportunityid null!!!'); |
| | | } else { |
| | | List<Opportunity> opps = [Select Id, Estimation_Decision__c From Opportunity Where Id = : oppId]; |
| | | if (opps.size() > 0) { |
| | | opps[0].Estimation_Decision__c = true; |
| | | /*↓↓↓見積同期↓↓↓2012/11/28 未使用 |
| | | opps[0].SyncedQuoteId = quoId; |
| | | ↑↑↑ ↑↑↑*/ |
| | | ControllerUtil.updOpp(opps[0]); |
| | | } |
| | | |
| | | errorflg = true; |
| | | errorMessage = System.Label.Message_002; |
| | | |
| | | // cic 134906 start |
| | | Quote q = [select Id from Quote where Id = :quoId]; |
| | | q.Quote_Decision_Date__c = date.Today(); |
| | | update q; |
| | | // cic 134906 end |
| | | |
| | | QuoteDecision = true; |
| | | enableContract = true; |
| | | //--Savebutton |
| | | Save_button = true; |
| | | //--Decisionbutton判定 |
| | | if (verified == true) { |
| | | Decision_button = false; |
| | | } else if (QuoteCorrect == false) { |
| | | Decision_button = true; |
| | | } else if (QuoteDecision == true) { |
| | | Decision_button = true; |
| | | } else { |
| | | Decision_button = false; |
| | | } |
| | | //--SAPButton |
| | | if (QuoteDecision == false) { |
| | | sap_button = true; |
| | | } else if (specialAuthority == false) { |
| | | sap_button = true; |
| | | } else { |
| | | sap_button = false; |
| | | } |
| | | //--決定ボタン使えないようにする |
| | | Decision_button = true; |
| | | |
| | | pageArrange(); |
| | | } |
| | | // 2022-04-06 SWAG-CC6AFQ【委托】又有询价跳过了报价计算 ssm end |
| | | } catch (DmlException de) { |
| | | Database.rollback(sp); |
| | | errorflg = true; |
| | |
| | | oppNo = oppNo.substring(oppNo.length() - 2); |
| | | |
| | | Quote q = New Quote(); |
| | | System.debug('quoId: ' + quoId); |
| | | System.debug('changedAfterPrint: ' + changedAfterPrint); |
| | | if (changedAfterPrint) { |
| | | system.debug('id空1:'); |
| | | quoId = null; |
| | | //SWAG-CC6AFQ【委托】又有询价跳过了报价计算 fy start |
| | | SkipQuotefilg = true; |
| | | //SWAG-CC6AFQ【委托】又有询价跳过了报价计算 fy end |
| | | } |
| | | // false伝票から新規作成 |
| | | System.debug('changedAfterBid: ' + changedAfterBid); |
| | | if (changedAfterBid) { |
| | | system.debug('id空2:'); |
| | | quoId = null; |
| | | //SWAG-CC6AFQ【委托】又有询价跳过了报价计算 fy start |
| | | SkipQuotefilg = true; |
| | | //SWAG-CC6AFQ【委托】又有询价跳过了报价计算 fy end |
| | | } |
| | | // CHAN-AVG3PW 询价报价画面规则变更 |
| | | System.debug('newQuoteFlag: ' + newQuoteFlag); |
| | | if (newQuoteFlag) { |
| | | system.debug('id空3:'); |
| | | quoId = null; |
| | | //SWAG-CC6AFQ【委托】又有询价跳过了报价计算 fy start |
| | | SkipQuotefilg = true; |
| | | //SWAG-CC6AFQ【委托】又有询价跳过了报价计算 fy end |
| | | } |
| | | // 多年保修 start |
| | | //报价试算 增加经销商前后对比 精琢技术 wql 20210508 start |
| | | System.debug('quoteGurantee_Period: ' + quoteGurantee_Period); |
| | | System.debug('quo.Gurantee_Period__c: ' + quo.Gurantee_Period__c); |
| | | System.debug('quotemultiYearWarranty: ' + quotemultiYearWarranty); |
| | | System.debug('quo.multiYearWarranty__c: ' + quo.multiYearWarranty__c); |
| | | System.debug('agency1Name: ' + agency1Name); |
| | | System.debug('quo.Agency1__c: ' + quo.Agency1__c); |
| | | System.debug('agency2Name: ' + agency2Name); |
| | | System.debug('quo.Agency2__c: ' + quo.Agency2__c); |
| | | if ((quoteGurantee_Period != null && |
| | | !quoteGurantee_Period.equals(quo.Gurantee_Period__c)) |
| | | || |
| | |
| | | || |
| | | (agency2Name !=null &&!agency2Name.equals(quo.Agency2__c)) |
| | | ) { |
| | | system.debug('id空8:'); |
| | | quoId = null; |
| | | //SWAG-CC6AFQ【委托】又有询价跳过了报价计算 fy start |
| | | SkipQuotefilg = true; |
| | | //SWAG-CC6AFQ【委托】又有询价跳过了报价计算 fy end |
| | | } |
| | | agency1Name = quo.Agency1__c; |
| | | agency2Name = quo.Agency2__c; |
| | |
| | | public String sobjectPrefix{set;get;} |
| | | public String sobjecttypeForFrontEnd{set;get;} |
| | | public String sobjectId{set;get;} |
| | | public String workLocationSelect{set;get;} |
| | | public String RepairSubOrderAWSDataId{set;get;} |
| | | public String staticResourceRepairSubOrder{set;get;} |
| | | public NewRepairController(ApexPages.StandardController controller) { |
| | | sobjectId = [SELECT CustomObjectId,CustomObjectName FROM CustomObjectUserLicenseMetrics where CustomObjectName ='Repair' limit 1].CustomObjectId; |
| | | isNewMode = true; |
| | |
| | | //新建 |
| | | Map<string,string> mso = ApexPages.currentPage().getParameters(); |
| | | system.debug('mso='+mso); |
| | | //修理品返送地 |
| | | if(mso.containsKey('00N10000006P6SM')){ |
| | | controller.getRecord().put('SalesOfficeCode_selection__c',mso.get('00N10000006P6SM')); |
| | | } |
| | | if(mso.containsKey('00N10000002FH86')){ |
| | | controller.getRecord().put('On_site_repair__c',mso.get('00N10000002FH86')); |
| | | //controller.getRecord().put('On_site_repair__c',mso.get('00N10000002FH86')); |
| | | //Repair_Source__c |
| | | controller.getRecord().put('Repair_Source__c',mso.get('00N10000002FH86')); |
| | | } |
| | | if(mso.containsKey('00N10000006P6Rn')){ |
| | | controller.getRecord().put('work_location_select__c',mso.get('00N10000006P6Rn')); |
| | | workLocationSelect = mso.get('00N10000006P6Rn'); |
| | | System.debug('workLocationSelect = ' + workLocationSelect); |
| | | } |
| | | //问题内容描述00N10000002Dx6I |
| | | if(mso.containsKey('00N10000002Dx6I')){ |
| | | controller.getRecord().put('Repair_Detail__c',mso.get('00N10000002Dx6I')); |
| | | } |
| | | //问题联络收到日00N10000008rsVQ |
| | | if(mso.containsKey('00N10000008rsVQ')){ |
| | | String o = mso.get('00N10000008rsVQ'); |
| | | controller.getRecord().put('DateReceiptQuestions__c',(String.isBlank(o)||String.isEmpty(o))? null:Date.valueOf(o.replace('/', '-'))); |
| | | } |
| | | |
| | | //是否有死亡、伤害、感染00N10000008rsW7 |
| | | if(mso.containsKey('00N10000008rsW7')){ |
| | | controller.getRecord().put('ifDeadHurt__c',mso.get('00N10000008rsW7')); |
| | | } |
| | | //是否和这次的产品故障有关00N10000008rsVw |
| | | if(mso.containsKey('00N10000008rsVw')){ |
| | | controller.getRecord().put('ProductFailureRelated__c',mso.get('00N10000008rsVw')); |
| | | } |
| | | //医院有没有向政府机关报告不良事件或疑似不良事件00N10000008rsW2 |
| | | if(mso.containsKey('00N10000008rsW2')){ |
| | | controller.getRecord().put('ReportAdverseEvents__c',mso.get('00N10000008rsW2')); |
| | | } |
| | | //做的是哪个项目00N10000008rsW6 |
| | | if(mso.containsKey('00N10000008rsW6')){ |
| | | controller.getRecord().put('WhatProject__c',mso.get('00N10000008rsW6')); |
| | | } |
| | | //手术/检查名称00N10000008rsVk |
| | | if(mso.containsKey('00N10000008rsVk')){ |
| | | controller.getRecord().put('OperationOrExaminationName__c',mso.get('00N10000008rsVk')); |
| | | } |
| | | //是否有发生断裂或脱落00N10000008rsVN |
| | | if(mso.containsKey('00N10000008rsVN')){ |
| | | controller.getRecord().put('BreakORFallOff__c',mso.get('00N10000008rsVN')); |
| | | } |
| | | //配套使用产品00N10000008rsW4 |
| | | if(mso.containsKey('00N10000008rsW4')){ |
| | | controller.getRecord().put('SupportingProducts__c',mso.get('00N10000008rsW4')); |
| | | } |
| | | //发现故障后,医院对患者的处理情况00N10000008rsVL |
| | | if(mso.containsKey('00N10000008rsVL')){ |
| | | controller.getRecord().put('AfterFailureInformation__c',mso.get('00N10000008rsVL')); |
| | | } |
| | | //发现故障现象后,有延误15分钟以上的手术实施的情况发生吗00N10000008rsVR |
| | | if(mso.containsKey('00N10000008rsVR')){ |
| | | controller.getRecord().put('Delay15Min__c',mso.get('00N10000008rsVR')); |
| | | } |
| | | //信息是从医院的谁那里得到的00N10000008rsVZ |
| | | if(mso.containsKey('00N10000008rsVZ')){ |
| | | controller.getRecord().put('InformationFrom__c',mso.get('00N10000008rsVZ')); |
| | | } |
| | | //在医院,故障发生的频率是多少00N10000008rsVT |
| | | if(mso.containsKey('00N10000008rsVT')){ |
| | | controller.getRecord().put('FailureQInHospital__c',mso.get('00N10000008rsVT')); |
| | | } |
| | | //问题发生时间情况00N10000008rsVv |
| | | if(mso.containsKey('00N10000008rsVv')){ |
| | | controller.getRecord().put('ProblemOccurred__c',mso.get('00N10000008rsVv')); |
| | | } |
| | | //是否用该产品完成了手术/检查00N10000008rsW5 |
| | | if(mso.containsKey('00N10000008rsW5')){ |
| | | if(mso.get('00N10000008rsW5') != 'undefined'){ |
| | | controller.getRecord().put('UseFailProductFinish__c',mso.get('00N10000008rsW5')); |
| | | } |
| | | } |
| | | //故障发生日00N10000002Dx5y |
| | | if(mso.containsKey('00N10000002Dx5y')){ |
| | | String o = mso.get('00N10000002Dx5y'); |
| | | controller.getRecord().put('Failure_Occurrence_Date__c',(String.isBlank(o)||String.isEmpty(o))? null:Date.valueOf(o.replace('/', '-'))); |
| | | } |
| | | //修理委托者(FSE)CF00N10000002EMHw_lkid |
| | | if(mso.containsKey('CF00N10000002EMHw_lkid')){ |
| | | controller.getRecord().put('Incharge_Staff__c',mso.get('CF00N10000002EMHw_lkid')); |
| | | } |
| | | //原修理受付番号00N1m000005gt1l |
| | | if(mso.containsKey('00N1m000005gt1l')){ |
| | | controller.getRecord().put('Old_Name__c',mso.get('00N1m000005gt1l')); |
| | | } |
| | | //设备型号CF00N10000002Dx1X_lkid |
| | | if(mso.containsKey('CF00N10000002Dx1X_lkid')){ |
| | | controller.getRecord().put('Delivered_Product__c',mso.get('CF00N10000002Dx1X_lkid')); |
| | | } |
| | | //维修委托书号码00N10000006P1dw |
| | | if(mso.containsKey('00N10000006P1dw')){ |
| | | controller.getRecord().put('PaperRepairRequestNo__c',mso.get('00N10000006P1dw')); |
| | | } |
| | | |
| | | //通过id查 |
| | | Repair__c rc = null; |
| | | if (mso.containsKey('RepairId')) { |
| | | String RepairId = mso.get('RepairId'); |
| | | rc = [select Hospital__c,Department_Class__c,Account__c,Dealer__c,Incharge_Staff_Contact__c,Incharge_Staff__c from Repair__c where id =:RepairId ]; |
| | | //医院 |
| | | controller.getRecord().put('Hospital__c',rc.Hospital__c); |
| | | //战略科室分类 |
| | | controller.getRecord().put('Department_Class__c',rc.Department_Class__c); |
| | | //科室 |
| | | controller.getRecord().put('Account__c',rc.Account__c); |
| | | //经销商名 |
| | | controller.getRecord().put('Dealer__c',rc.Dealer__c); |
| | | //修理委托者(员工) |
| | | controller.getRecord().put('Incharge_Staff_Contact__c',rc.Incharge_Staff_Contact__c); |
| | | //修理委托者(FSE) |
| | | controller.getRecord().put('Incharge_Staff__c',rc.Incharge_Staff__c); |
| | | } |
| | | |
| | | //市场多年保修 有偿/无偿修理00N10000008rG4p |
| | | if(mso.containsKey('00N10000008rG4p')){ |
| | | controller.getRecord().put('RepairCostType__c',mso.get('00N10000008rG4p')); |
| | | } |
| | | //服务方式00N10000002F6dW |
| | | if(mso.containsKey('00N10000002F6dW')){ |
| | | controller.getRecord().put('On_site_repair__c',mso.get('00N10000002F6dW')); |
| | | } |
| | | //返品方式00N1m000004QmcJ |
| | | if(mso.containsKey('00N1m000004QmcJ')){ |
| | | controller.getRecord().put('Returns_Product_way__c',mso.get('00N1m000004QmcJ')); |
| | | } |
| | | //问题内容描述(图片)00N10000008rsVuEAI |
| | | if(mso.containsKey('00N10000008rsVuEAI')){ |
| | | controller.getRecord().put('ProblemDescription__c',mso.get('00N10000008rsVuEAI')); |
| | | } |
| | | //如果是测试环境 |
| | | Boolean isTest = NFMUtil.isSandbox(); |
| | | //报修人00N1m0000054ufW |
| | | String RepairApplicant = isTest==true?'00N1m0000054ufW':'00N10000009H1rQ'; |
| | | if(mso.containsKey(RepairApplicant)){ |
| | | controller.getRecord().put('RepairApplicant__c',mso.get(RepairApplicant)); |
| | | } |
| | | //报修人医院00N1m0000054ufU |
| | | String RepairApplicantHospital = isTest==true?'00N1m0000054ufU':'00N10000009H1rP'; |
| | | if(mso.containsKey(RepairApplicantHospital)){ |
| | | controller.getRecord().put('RepairApplicantHospital__c',mso.get(RepairApplicantHospital)); |
| | | } |
| | | //报修人科室00N1m0000054ufT |
| | | String RepairApplicantDepartment = isTest==true?'00N1m0000054ufT':'00N10000009H1rO'; |
| | | if(mso.containsKey(RepairApplicantDepartment)){ |
| | | controller.getRecord().put('RepairApplicantDepartment__c',mso.get(RepairApplicantDepartment)); |
| | | } |
| | | //报修子单CF00N1m0000054ufZ_lkid |
| | | String RepairSubOrder = isTest==true?'CF00N1m0000054ufZ_lkid':'CF00N10000009H1rR_lkid'; |
| | | if(mso.containsKey(RepairSubOrder)){ |
| | | controller.getRecord().put('RepairSubOrder__c',mso.get(RepairSubOrder)); |
| | | //查询AWSDataId |
| | | List<RepairSubOrder__c> rso = [select AWS_Data_Id__c from RepairSubOrder__c where Id=:mso.get(RepairSubOrder)]; |
| | | if(rso.size() > 0){ |
| | | RepairSubOrderAWSDataId = rso[0].AWS_Data_Id__c; |
| | | } |
| | | } |
| | | //报修发起日 |
| | | String RepairTime = isTest==true?'00N1m0000054ufa':'00N10000009H1rS'; |
| | | if(mso.containsKey(RepairTime)){ |
| | | String o = mso.get(RepairTime); |
| | | controller.getRecord().put('RepairTime__c',(String.isBlank(o)||String.isEmpty(o))? null:Date.valueOf(o.replace('/', '-'))); |
| | | } |
| | | //报修单受理日ReceiverTime__c |
| | | String ReceiverTime = isTest==true?'00N1m0000054ufS':'00N10000009H1rN'; |
| | | if(mso.containsKey(ReceiverTime)){ |
| | | String o = mso.get(ReceiverTime); |
| | | controller.getRecord().put('ReceiverTime__c',(String.isBlank(o)||String.isEmpty(o))? null:Date.valueOf(o.replace('/', '-'))); |
| | | } |
| | | //计划上门日 |
| | | String PlannedVisitDay = isTest==true?'00N1m000005SRiF':'00N10000009H1rM'; |
| | | if(mso.containsKey(PlannedVisitDay)){ |
| | | String o = mso.get(PlannedVisitDay); |
| | | controller.getRecord().put('PlannedVisitDay__c',(String.isBlank(o)||String.isEmpty(o))? null:Date.valueOf(o.replace('/', '-'))); |
| | | } |
| | | //一次上门日 |
| | | String ActualVisitDateFirst = isTest==true?'00N1m000005SRiK':'00N10000009H1r6'; |
| | | if(mso.containsKey(ActualVisitDateFirst)){ |
| | | String o = mso.get(ActualVisitDateFirst); |
| | | controller.getRecord().put('ActualVisitDateFirst__c',(String.isBlank(o)||String.isEmpty(o))? null:Date.valueOf(o.replace('/', '-'))); |
| | | } |
| | | //二次上门日 |
| | | String ActualVisitDateSecond = isTest==true?'00N1m000005SRiP':'00N10000009H1r7'; |
| | | if(mso.containsKey(ActualVisitDateSecond)){ |
| | | String o = mso.get(ActualVisitDateSecond); |
| | | controller.getRecord().put('ActualVisitDateSecond__c',(String.isBlank(o)||String.isEmpty(o))? null:Date.valueOf(o.replace('/', '-'))); |
| | | } |
| | | //三次上门日 |
| | | String ActualVisitDateThird = isTest==true?'00N1m000005SRiU':'00N10000009H1r8'; |
| | | if(mso.containsKey(ActualVisitDateThird)){ |
| | | String o = mso.get(ActualVisitDateThird); |
| | | controller.getRecord().put('ActualVisitDateThird__c',(String.isBlank(o)||String.isEmpty(o))? null:Date.valueOf(o.replace('/', '-'))); |
| | | } |
| | | //移动端申请修理日 |
| | | String SubOrderCompleteDate = isTest==true?'00N1m000005SRmg':'00N10000009H1ri'; |
| | | if(mso.containsKey(SubOrderCompleteDate)){ |
| | | String o = mso.get(SubOrderCompleteDate); |
| | | controller.getRecord().put('SubOrderCompleteDate__c',(String.isBlank(o)||String.isEmpty(o))? null:Date.valueOf(o.replace('/', '-'))); |
| | | } |
| | | //报修单处理完成日 |
| | | String SubOrderCreatedDate = isTest==true?'00N1m000005SRmW':'00N10000009H1rj'; |
| | | if(mso.containsKey(SubOrderCreatedDate)){ |
| | | String o = mso.get(SubOrderCreatedDate); |
| | | controller.getRecord().put('SubOrderCreatedDate__c',(String.isBlank(o)||String.isEmpty(o))? null:Date.valueOf(o.replace('/', '-'))); |
| | | } |
| | | |
| | | //送修物流方式00N1m0000054ufE |
| | | if(mso.containsKey('00N1m0000054ufE')){ |
| | | controller.getRecord().put('DeliveryLogisticsMode__c',mso.get('00N1m0000054ufE')); |
| | | } |
| | | //送修物流最新状态00N1m0000054ufk |
| | | if(mso.containsKey('00N1m0000054ufk')){ |
| | | controller.getRecord().put('LogisticsLatestStatus__c',mso.get('00N1m0000054ufk')); |
| | | } |
| | | //送修物流单号00N1m0000054ufF |
| | | if(mso.containsKey('00N1m0000054ufF')){ |
| | | controller.getRecord().put('DeliveryLogisticsNo__c',mso.get('00N1m0000054ufF')); |
| | | } |
| | | //送修物流信息备注00N1m0000054ufD |
| | | if(mso.containsKey('00N1m0000054ufD')){ |
| | | controller.getRecord().put('DeliveryLogisticsAnnotation__c',mso.get('00N1m0000054ufD')); |
| | | } |
| | | //超时报告的理由00N10000008rsVS |
| | | if(mso.containsKey('00N10000008rsVS')){ |
| | | controller.getRecord().put('DelayReportReason__c',mso.get('00N10000008rsVS')); |
| | | } |
| | | |
| | | rtTypeId = ApexPages.currentPage().getParameters().get('RecordType'); |
| | | if(String.isBlank(rtTypeId)||String.isEmpty(rtTypeId)){ |
| | | List<RecordType> rtList = new List<RecordType>([select Id,DeveloperName from RecordType where SobjectType ='Repair__c' and DeveloperName ='Repair']); |
| | |
| | | PIHelper.PIIntegration piIntegration = PIHelper.getPIIntegrationInfo('Repair__c'); |
| | | PIHelper.PIIntegration piIntegrationAddress = PIHelper.getPIIntegrationInfo('Address__c'); |
| | | PIHelper.PIIntegration piIntegrationContact = PIHelper.getPIIntegrationInfo('Contact'); |
| | | PIHelper.PIIntegration piIntegrationRepairSubOrder = PIHelper.getPIIntegrationInfo('RepairSubOrder__c'); |
| | | staticResource = JSON.serialize(piIntegration); |
| | | staticResourceAddress = JSON.serialize(piIntegrationAddress); |
| | | staticResourceContact = JSON.serialize(piIntegrationContact); |
| | | staticResourceRepairSubOrder = JSON.serialize(piIntegrationRepairSubOrder); |
| | | encryptedAPIList = piIntegration.PIFields; |
| | | sobjectPrefix = piIntegration.sobjectPrefix; |
| | | } |
| | |
| | | public String recordId{set;get;} |
| | | public String message{set;get;} |
| | | public String status{set;get;} |
| | | } |
| | | |
| | | @RemoteAction |
| | | global static Response EncryptUpdate(string rid){ |
| | | system.debug('rid='+rid); |
| | | Response r = new Response(); |
| | | List<Repair__c> reps = new List<Repair__c>(); |
| | | if(Test.isRunningTest()){ |
| | | if(rid=='a0J1m000001QqXk'){ |
| | | reps.add(new Repair__c(Id='a0J1m000001QqXk',Encrypt_Update_Flag__c=true)); |
| | | }else{ |
| | | reps.add(new Repair__c(Id='a0J1m000001QqXk',Encrypt_Update_Flag__c=false)); |
| | | } |
| | | }else{ |
| | | reps = [select id,Encrypt_Update_Flag__c from Repair__c where id =:rid]; |
| | | } |
| | | if(reps.size()==0){ |
| | | r.status = 'failed'; |
| | | r.message = '符合条件的数据未找到'; |
| | | return r; |
| | | } |
| | | Repair__c rep = reps[0]; |
| | | if(!rep.Encrypt_Update_Flag__c){ |
| | | r.status = 'success'; |
| | | r.message = ''; |
| | | return r; |
| | | } |
| | | |
| | | boolean b = AWSServiceTool2.EncryptPushData(new string[]{rid}); |
| | | rep.Encrypt_Update_Flag__c = false; |
| | | if(!Test.isRunningTest()){ |
| | | update rep; |
| | | } |
| | | r.status = b ? 'success' : 'failed'; |
| | | r.message = b ? '' : '加密推送失败'; |
| | | r.recordId = rid; |
| | | return r; |
| | | } |
| | | |
| | | @RemoteAction |
| | |
| | | Map<String, Schema.SObjectField> fieldAPIToTypeMap = repairSchema.getDescribe().fields.getMap(); |
| | | Map<String,Object> fieldValueMap = (Map<String,Object>)JSON.deserializeUntyped(repairJson); |
| | | Repair__c repairInfo = new Repair__c(); |
| | | Boolean updateRepairCheck = false; |
| | | //自定义格式转换 |
| | | for (String fieldAPI: fieldValueMap.keySet()) { |
| | | system.debug('field API'+fieldAPI); |
| | |
| | | }else if(String.valueOf(fielddataType)=='PERCENT'||String.valueOf(fielddataType)=='CURRENCY'||String.valueOf(fielddataType)=='Number'||String.valueOf(fielddataType)=='DOUBLE' ){ |
| | | repairInfo.put(fieldAPI, (String.isBlank(fieldValue)||String.isEmpty(fieldValue))?null:Decimal.valueOf(fieldValue.replace(',', ''))); |
| | | } else if(String.valueof(fielddataType)=='BOOLEAN'){ |
| | | //check repair check value |
| | | if(fieldAPI == 'Return_Without_Repair__c'&&Boolean.valueof(fieldValueMap.get(fieldAPI))){ |
| | | updateRepairCheck = true; |
| | | } |
| | | repairInfo.put(fieldAPI, fieldValueMap.get(fieldAPI)); |
| | | }else { |
| | | repairInfo.put(fieldAPI, String.valueOf(fieldValueMap.get(fieldAPI))); |
| | | } |
| | | } |
| | | |
| | | //2. Save Record Process |
| | | String status = 'success'; |
| | | Response resp = new Response(); |
| | |
| | | System.debug('into update'); |
| | | String awsDataId = (String)repairInfo.get('AWS_Data_Id__c'); |
| | | System.debug('awsDataId = ' + awsDataId); |
| | | Repair__c[] repairs = [select id from Repair__c where AWS_Data_Id__c =:awsDataId]; |
| | | Repair__c[] repairs = [select id,Return_Without_Repair_Reason__c,SAP_Transfer_time__c from Repair__c where AWS_Data_Id__c =:awsDataId]; |
| | | if(!updateRepairCheck){ |
| | | repairInfo.put('Return_Without_Repair_Reason__c',repairs[0].Return_Without_Repair_Reason__c); |
| | | } |
| | | if(repairs!=null&&repairs[0]!=null){ |
| | | repairInfo.put('SAP_Transfer_time__c',repairs[0].SAP_Transfer_time__c); |
| | | } |
| | | System.debug('repairs[0].id = ' + repairs[0].id); |
| | | repairInfo.put('Id',repairs[0].id);//For testing; |
| | | update repairInfo; |
| | | } |
| | | rid=repairInfo.Id; |
| | | PIHelper.saveTransLog(sobjectTypeValue,rid,transId, (String)repairInfo.get('AWS_Data_Id__c'),repairJson ,status,''); |
| | | PIHelper.saveTransLog(sobjectTypeValue,(String)repairInfo.get('AWS_Data_Id__c'),rid,transId, repairJson ,status,''); |
| | | resp.recordId = repairInfo.Id; |
| | | resp.message = ''; |
| | | resp.status = status; |
| | |
| | | Database.rollback(sp); |
| | | resp.status = 'Exception'; |
| | | resp.message ='保存失败,原因:'+ e.getDmlMessage(index); |
| | | PIHelper.saveTransLog(sobjectTypeValue,rid,transId, (String)repairInfo.get('AWS_Data_Id__c'),repairJson ,status,''); |
| | | PIHelper.saveTransLog(sobjectTypeValue,(String)repairInfo.get('AWS_Data_Id__c'),rid,transId, repairJson ,status,e.getMessage()+e.getStackTraceString()); |
| | | return resp; |
| | | |
| | | } catch(Exception e) { |
| | | System.debug('into catch'+e.getMessage()); |
| | | Database.rollback(sp); |
| | | status = 'fail'; |
| | | PIHelper.saveTransLog(sobjectTypeValue,rid,transId, (String)repairInfo.get('AWS_Data_Id__c'),repairJson,status,e.getMessage()); |
| | | PIHelper.saveTransLog(sobjectTypeValue,(String)repairInfo.get('AWS_Data_Id__c'),rid,transId, repairJson ,status,e.getMessage()+e.getStackTraceString()); |
| | | resp.message = e.getMessage(); |
| | | resp.status = status; |
| | | return resp; |
| | |
| | | strList.add('Repair__c'); |
| | | strList.add('Address__c'); |
| | | strList.add('Contact'); |
| | | strList.add('RepairSubOrder__c'); |
| | | TestDataUtility.CreatePIPolicyConfigurations(strList); |
| | | Test.setMock(HttpCalloutMock.class, new TestDataUtility.CreateMetaDataUtilityHttpMock()); |
| | | String url = ApexPages.currentPage().getParameters().put('00N10000006P6SM','北京'); |
| | | url = ApexPages.currentPage().getParameters().put('00N10000002FH86','RC修理'); |
| | | url = ApexPages.currentPage().getParameters().put('00N10000006P6Rn','北京办事处'); |
| | | url = ApexPages.currentPage().getParameters().put('RecordType',recordTypeId); |
| | | |
| | | url = ApexPages.currentPage().getParameters().put('CF00N10000002Dx66_lkid','0011000000V9TM6'); |
| | | url = ApexPages.currentPage().getParameters().put('CF00N10000002Dx66','%E5%89%91%E9%98%81%E5%8E%BF%E4%BA%BA%E6%B0%91%E5%8C%BB%E9%99%A2'); |
| | | url = ApexPages.currentPage().getParameters().put('CF00N10000002Dx5t_lkid','0011000000VAFmh'); |
| | | url = ApexPages.currentPage().getParameters().put('CF00N10000002Dx5t','%E5%89%91%E9%98%81%E5%8E%BF%E4%BA%BA%E6%B0%91%E5%8C%BB%E9%99%A2+ET'); |
| | | url = ApexPages.currentPage().getParameters().put('CF00N10000002Dx5n_lkid','0011000000VAFmh'); |
| | | url = ApexPages.currentPage().getParameters().put('CF00N10000002Dx5n','%E5%89%91%E9%98%81%E5%8E%BF%E4%BA%BA%E6%B0%91%E5%8C%BB%E9%99%A2+ET'); |
| | | url = ApexPages.currentPage().getParameters().put('CF00N10000002Dx1X_lkid','02i10000004FhGu'); |
| | | url = ApexPages.currentPage().getParameters().put('CF00N10000002Dx1X','MH-443%3A%E5%90%B8%E5%BC%95%E6%8C%89%E9%92%AE'); |
| | | url = ApexPages.currentPage().getParameters().put('00N10000002FH86','%e5%8f%aa%e4%bf%ae%e7%90%86'); |
| | | url = ApexPages.currentPage().getParameters().put('00N10000006P6Rn','%E5%8C%97%E4%BA%AC%E5%8A%9E%E4%BA%8B%E5%A4%84'); |
| | | |
| | | url = ApexPages.currentPage().getParameters().put('CF00N10000002FIJZ_lkid','a0f1000000cS7qH'); |
| | | url = ApexPages.currentPage().getParameters().put('CF00N10000002FIJZ','OCSM-%E8%A5%BF%E5%8C%97-153PA-07878'); |
| | | url = ApexPages.currentPage().getParameters().put('CF00N10000002Dx66_lkid','0011000000V9SnP'); |
| | | url = ApexPages.currentPage().getParameters().put('CF00N10000002Dx66','%E6%B7%AE%E6%BB%A8%E5%8E%BF%E4%BA%BA%E6%B0%91%E5%8C%BB%E9%99%A2'); |
| | | url = ApexPages.currentPage().getParameters().put('CF00N10000002Dx5t_lkid','0011000000V9ZEI'); |
| | | url = ApexPages.currentPage().getParameters().put('CF00N10000002Dx5t','%E6%B7%AE%E6%BB%A8%E5%8E%BF%E4%BA%BA%E6%B0%91%E5%8C%BB%E9%99%A2+%E6%B6%88%E5%8C%96%E7%A7%91'); |
| | | url = ApexPages.currentPage().getParameters().put('CF00N10000002Dx5n_lkid','0011000000VALNX'); |
| | | url = ApexPages.currentPage().getParameters().put('CF00N10000002Dx5n','%E6%B7%AE%E6%BB%A8%E5%8E%BF%E4%BA%BA%E6%B0%91%E5%8C%BB%E9%99%A2+%E6%B6%88%E5%8C%96%E7%A7%91+%E8%83%83%E9%95%9C%E5%AE%A4'); |
| | | url = ApexPages.currentPage().getParameters().put('CF00N10000002Dx1X_lkid','02i10000004ExNO'); |
| | | url = ApexPages.currentPage().getParameters().put('CF00N10000002Dx1X','GIF-H170%3A%E7%94%B5%E5%AD%90%E4%B8%8A%E6%B6%88%E5%8C%96%E9%81%93%E5%86%85%E7%AA%A5%E9%95%9C'); |
| | | url = ApexPages.currentPage().getParameters().put('CF00N10000002EMHw_lkid','00510000005sFUG'); |
| | | url = ApexPages.currentPage().getParameters().put('CF00N10000002EMHw','%E5%90%95%20%E5%85%A8%E5%A5%BD'); |
| | | url = ApexPages.currentPage().getParameters().put('00N10000002Dx5y','2020/08/05'); |
| | | url = ApexPages.currentPage().getParameters().put('00N10000006P6SM','%E9%83%91%E5%B7%9E'); |
| | | url = ApexPages.currentPage().getParameters().put('00N10000002FH86','%E4%BB%8EQIS'); |
| | | url = ApexPages.currentPage().getParameters().put('00N10000006P6Rn','%E5%8C%97%E4%BA%AC%E5%8A%9E%E4%BA%8B%E5%A4%84'); |
| | | url = ApexPages.currentPage().getParameters().put('00N1m000005gt1l','%E4%BB%8EQIS'); |
| | | url = ApexPages.currentPage().getParameters().put('00N10000006P1dw','121212'); |
| | | url = ApexPages.currentPage().getParameters().put('00N10000008rsVT','12'); |
| | | url = ApexPages.currentPage().getParameters().put('00N10000008rsVv','其他'); |
| | | url = ApexPages.currentPage().getParameters().put('00N10000008rsW5','是'); |
| | | |
| | | |
| | | |
| | | Repair__c repTest = TestDataUtility.CreateRepairs(1)[0]; |
| | | url = ApexPages.currentPage().getParameters().put('RepairId',repTest.Id); |
| | | Test.startTest(); |
| | | ApexPages.StandardController con = new ApexPages.StandardController(new Repair__c()); |
| | | NewRepairController repDetail = new NewRepairController(con); |
| | | Test.stopTest(); |
| | | } |
| | | static testMethod void testMethod3(){ |
| | | TestDataUtility.CreatePIPolicyConfiguration('Repair__c'); |
| | | ApexPages.StandardController con = new ApexPages.StandardController(new Repair__c()); |
| | | try{ |
| | | NewRepairController controllerTest = new NewRepairController(con); |
| | | controllerTest.awsToken = 'TestToken'; |
| | | controllerTest.RepairSubOrderAWSDataId = 'RepairSubOrderAWSDataId'; |
| | | }catch(Exception e){ |
| | | system.debug('Exception from insert repair:'+e.getMessage()); |
| | | } |
| | | NewRepairController.EncryptUpdate('a0J1m000001QqX'); |
| | | NewRepairController.EncryptUpdate('a0J1m000001QqXk'); |
| | | } |
| | | } |
| | |
| | | //用于存放触发trigger的ods数据的员工编号 |
| | | List<String> employeeNoList = new List<String>(); |
| | | for (ODS__c os : newList) { |
| | | if(String.isNotBlank(os.Employee_No__c) && os.Job_Type__c != '劳务-派遣' && os.Job_Type__c != '劳务-临时' && os.Job_Type__c != '无' && String.isNotBlank(os.Job_Type__c) && String.isNotBlank(os.Stay_or_not__c) && String.isNotBlank(os.Email__c)) |
| | | { |
| | | //判断email、员工编码、名称、Stay_or_not和入职日期是否为空 |
| | | if(os.Email__c != null && String.isNotBlank(os.Employee_No__c) && String.isNotBlank(os.Stay_or_not__c) &&String.isNotBlank(os.Name__c) && os.Hire_Date__c != null) |
| | | { |
| | | //如果为update,那么判断值是否发生变化 |
| | | //判断值数据发生变化 |
| | | if(Trigger.isUpdate){ |
| | | //统括本部、本部、部、课、员工编码、入职日期、电子邮件、手机号码、职位、职种、负责产品(主)、销售工作内容、工作地、在职/已离职、离职日期 |
| | | //以上字段的值是否发生变换 |
| | | //如果发生变化,那么更新user表数据,user表更新contact表数据 |
| | | if(os.Category3__c != oldMap.get(os.id).Category3__c || os.Category4__c != oldMap.get(os.id).Category4__c |
| | | || os.Category5__c != oldMap.get(os.id).Category5__c || os.Category6__c != oldMap.get(os.id).Category6__c |
| | | || os.Employee_No__c != oldMap.get(os.id).Employee_No__c || os.Hire_Date__c != oldMap.get(os.id).Hire_Date__c |
| | | || os.Email__c != oldMap.get(os.id).Email__c || os.MobilePhone__c != oldMap.get(os.id).MobilePhone__c |
| | | || os.Post__c != oldMap.get(os.id).Post__c || os.Job_Category__c != oldMap.get(os.id).Job_Category__c |
| | | || os.Product_specialist_incharge_product__c != oldMap.get(os.id).Product_specialist_incharge_product__c |
| | | || os.Sales_Speciality__c != oldMap.get(os.id).Sales_Speciality__c || os.Work_Location__c != oldMap.get(os.id).Work_Location__c |
| | | || os.Stay_or_not__c != oldMap.get(os.id).Stay_or_not__c || os.LeaveDate__c != oldMap.get(os.id).LeaveDate__c |
| | | || os.Name__c != oldMap.get(os.Id).Name__c || os.Null_Update__c != oldMap.get(os.Id).Null_Update__c |
| | | // SWAG-CBP5DY的历史数据使用空更新处理 thh 20220224 start |
| | | || (System.Label.onlyupdate == '1' && UserInfo.getUserId() == '00510000005sEEMAA2')) |
| | | // SWAG-CBP5DY的历史数据使用空更新处理 thh 20220224 end |
| | | { |
| | | //20220407 LLIU-CCY9TA you 临时更新几个user |
| | | /** 20220422 运行4月1日起新入职人员和离职人员信息 you ,所以注释掉 改在下面加if了 |
| | | if(String.isNotBlank(os.Employee_No__c) && System.Label.OdsToUserEmployee_No.contains(os.Employee_No__c)){ |
| | | **/ |
| | | if(String.isNotBlank(os.Employee_No__c) && os.Job_Type__c != '劳务-派遣' && os.Job_Type__c != '劳务-临时' && os.Job_Type__c != '无' && String.isNotBlank(os.Job_Type__c) && String.isNotBlank(os.Stay_or_not__c) && String.isNotBlank(os.Email__c)) |
| | | { |
| | | //判断email、员工编码、名称、Stay_or_not和入职日期是否为空 |
| | | if(os.Email__c != null && String.isNotBlank(os.Employee_No__c) && String.isNotBlank(os.Stay_or_not__c) &&String.isNotBlank(os.Name__c) && os.Hire_Date__c != null) |
| | | { |
| | | //如果为update,那么判断值是否发生变化 |
| | | //判断值数据发生变化 |
| | | if(Trigger.isUpdate){ |
| | | //下面得if是新增得 20220422 you LLIU-CCY9TA 更新得时候只有入职日期和离职日期有更新在更新,其余一律不更新 |
| | | if(os.LeaveDate__c != oldMap.get(os.id).LeaveDate__c || os.Hire_Date__c != oldMap.get(os.id).Hire_Date__c ){ |
| | | //统括本部、本部、部、课、员工编码、入职日期、电子邮件、手机号码、职位、职种、负责产品(主)、销售工作内容、工作地、在职/已离职、离职日期 |
| | | //以上字段的值是否发生变换 |
| | | //如果发生变化,那么更新user表数据,user表更新contact表数据 |
| | | if(os.Category3__c != oldMap.get(os.id).Category3__c || os.Category4__c != oldMap.get(os.id).Category4__c |
| | | || os.Category5__c != oldMap.get(os.id).Category5__c || os.Category6__c != oldMap.get(os.id).Category6__c |
| | | || os.Employee_No__c != oldMap.get(os.id).Employee_No__c || os.Hire_Date__c != oldMap.get(os.id).Hire_Date__c |
| | | || os.Email__c != oldMap.get(os.id).Email__c || os.MobilePhone__c != oldMap.get(os.id).MobilePhone__c |
| | | || os.Post__c != oldMap.get(os.id).Post__c || os.Job_Category__c != oldMap.get(os.id).Job_Category__c |
| | | || os.Product_specialist_incharge_product__c != oldMap.get(os.id).Product_specialist_incharge_product__c |
| | | || os.Sales_Speciality__c != oldMap.get(os.id).Sales_Speciality__c || os.Work_Location__c != oldMap.get(os.id).Work_Location__c |
| | | || os.Stay_or_not__c != oldMap.get(os.id).Stay_or_not__c || os.LeaveDate__c != oldMap.get(os.id).LeaveDate__c |
| | | || os.Name__c != oldMap.get(os.Id).Name__c || os.Null_Update__c != oldMap.get(os.Id).Null_Update__c |
| | | // SWAG-CBP5DY的历史数据使用空更新处理 thh 20220224 start |
| | | || (System.Label.onlyupdate == '1' && UserInfo.getUserId() == '00510000005sEEMAA2')) |
| | | // SWAG-CBP5DY的历史数据使用空更新处理 thh 20220224 end |
| | | { |
| | | employeeNoList.add(os.Employee_No__c.trim()); |
| | | } |
| | | } |
| | | |
| | | }else{ |
| | | employeeNoList.add(os.Employee_No__c.trim()); |
| | | } |
| | | }else{ |
| | | employeeNoList.add(os.Employee_No__c.trim()); |
| | | System.debug('--------------Email__c:'+os+'----Employee_No__c:'+os.Employee_No__c+'-----Stay_or_not__c:'+os.Stay_or_not__c+'-------Name__c:'+os.Name__c+'--------Hire_Date__c:'+os.Hire_Date__c+' 为空'); |
| | | } |
| | | }else{ |
| | | System.debug('--------------Email__c:'+os+'----Employee_No__c:'+os.Employee_No__c+'-----Stay_or_not__c:'+os.Stay_or_not__c+'-------Name__c:'+os.Name__c+'--------Hire_Date__c:'+os.Hire_Date__c+' 为空'); |
| | | } |
| | | } |
| | | } |
| | | /** }**/ |
| | | |
| | | } |
| | | |
| | | System.debug(employeeNoList.size()+'----------------------ods员工编号--'+employeeNoList); |
| | |
| | | */ |
| | | @isTest |
| | | private class OdsToUserHandlerTest { |
| | | // AWSServiceTool2没上线就把这部分注释 start 20220408 |
| | | @TestSetup |
| | | static void setup(){ |
| | | TestDataUtility.CreatePIPolicyConfigurations(new string[]{'Agency_Contact__c','Contact'}); |
| | | } |
| | | |
| | | @isTest |
| | | static void Test1(){ |
| | | Test.setMock(HttpCalloutMock.class, new HttpMock()); |
| | | |
| | | List<Agency_Contact__c> lra = new List<Agency_Contact__c>(); |
| | | lra.add(new Agency_Contact__c( |
| | | )); |
| | | insert lra; |
| | | Test.startTest(); |
| | | //system.debug(PIHelper.getPIIntegrationInfo('Agency_Contact__c').newEncryptUrl); |
| | | AWSServiceTool2.EncryptPushCore(Json.serialize(lra),'Agency_Contact__c'); |
| | | AWSServiceTool2.EncryptPushFuture(null,null); |
| | | Test.stopTest(); |
| | | } |
| | | |
| | | @isTest |
| | | static void Test2(){ |
| | | Test.setMock(HttpCalloutMock.class, new HttpMock()); |
| | | |
| | | List<Agency_Contact__c> lra = new List<Agency_Contact__c>(); |
| | | lra.add(new Agency_Contact__c( |
| | | Aws_Data_Id__c = '123456' |
| | | )); |
| | | insert lra; |
| | | Test.startTest(); |
| | | //system.debug(PIHelper.getPIIntegrationInfo('Agency_Contact__c').newEncryptUrl); |
| | | AWSServiceTool2.EncryptPushCore(Json.serialize(lra),'Agency_Contact__c'); |
| | | Test.stopTest(); |
| | | } |
| | | |
| | | @isTest |
| | | static void Test3(){ |
| | | Test.setMock(HttpCalloutMock.class, new HttpMock()); |
| | | |
| | | |
| | | Test.startTest(); |
| | | AWSServiceTool2.EncryptPushData(new string[]{'0031000000O4Cff'}); |
| | | |
| | | Test.stopTest(); |
| | | } |
| | | |
| | | //@isTest |
| | | // static void Test2(){ |
| | | // Test.setMock(HttpCalloutMock.class, new HttpMock()); |
| | | |
| | | // List<Agency_Contact__c> lra = new List<Agency_Contact__c>(); |
| | | // lra.add(new Agency_Contact__c( |
| | | // Id = 'a2R1m0000007BPD', |
| | | // Aws_Data_Id__c = '123456' |
| | | // )); |
| | | // Test.startTest(); |
| | | // //system.debug(PIHelper.getPIIntegrationInfo('Agency_Contact__c').newEncryptUrl); |
| | | // AWSServiceTool2.EncryptPushCore(Json.serialize(lra),'Agency_Contact__c'); |
| | | // Test.stopTest(); |
| | | // } |
| | | |
| | | class HttpMock implements HttpCalloutMock{ |
| | | |
| | | public HTTPResponse respond(HTTPRequest request) { |
| | | // 创建一个假的回应 |
| | | System.debug('------------------------------------------------------'); |
| | | HttpResponse response = new HttpResponse(); |
| | | string body = ''; |
| | | system.debug(request.getEndpoint()); |
| | | if(request.getEndpoint().contains('token')){ |
| | | system.debug('url=token'); |
| | | response.setHeader('Content-Type', 'application/json'); |
| | | body='{ "message": "", "object": "freqfewqfewewfewfew", "status": "", "success": true, "timestamp": 0, "txId": "" }'; |
| | | } else if(request.getEndpoint().contains('insert')){ |
| | | system.debug('url=Insert'); |
| | | response.setHeader('Content-Type', 'application/json'); |
| | | body='{ "message": "", "object": [ { "dataId": "123456", "directShippmentAddress": "", "directShippmentAddressEncrypt": "", "isDelete": 0, "phoneNumber": "", "phoneNumberEncrypt": "", "sfRecordId": "a2R1m0000007BPD" } ], "status": "", "success": true, "timestamp": 0, "txId": "" }'; |
| | | } else if(request.getEndpoint().contains('update')){ |
| | | system.debug('url=update'); |
| | | response.setHeader('Content-Type', 'application/json'); |
| | | body='{ "message": "", "object": [ { "dataId": "123456", "directShippmentAddress": "", "directShippmentAddressEncrypt": "", "isDelete": 0, "phoneNumber": "", "phoneNumberEncrypt": "", "sfRecordId": "a2R1m0000007BPD" } ], "status": "", "success": true, "timestamp": 0, "txId": "" }'; |
| | | } else{ |
| | | |
| | | } |
| | | |
| | | response.setBody(body); |
| | | response.setStatus('OK'); |
| | | response.setStatusCode(200); |
| | | return response; |
| | | // } |
| | | } |
| | | } |
| | | // AWSServiceTool2没上线就把这部分注释 end |
| | | static testMethod void testMethod1() { |
| | | // 省 |
| | | Address_Level__c al = new Address_Level__c(); |
| | |
| | | dep.Department_Class__c = strategicDep[0].Id; |
| | | dep.Hospital__c = hospital.Id; |
| | | insert dep; |
| | | |
| | | Contact contact2 = new Contact(); |
| | | contact2.AccountId = dep.Id; |
| | | contact2.FirstName = '責任者'; |
| | | contact2.LastName = 'test1经销商'; |
| | | contact2.Employee_No_manual__c = 'om002857'; |
| | | insert contact2; |
| | | |
| | | // AWSServiceTool2没上线就把这部分放开 start 20220408 |
| | | //Contact contact2 = new Contact(); |
| | | //contact2.AccountId = dep.Id; |
| | | //contact2.FirstName = '責任者'; |
| | | //contact2.LastName = 'test1经销商'; |
| | | //contact2.Employee_No_manual__c = 'om003901'; |
| | | //insert contact2; |
| | | // AWSServiceTool2没上线就把这部分放开 end |
| | | ODS__c ods = new ODS__c(); |
| | | ods.ALIAS__C = 'om002857'; |
| | | ods.ALIAS__C = 'om003901'; |
| | | ods.BRANCH__C = ''; |
| | | ods.CATEGORY3__C = '医疗华北东北营业统括本部'; |
| | | ods.CATEGORY4__C = '医疗华北营业本部'; |
| | | ods.CATEGORY5__C = '华北营业二部'; |
| | | ods.CATEGORY6__C = '河北GIR推广课'; |
| | | ods.EMAIL__C = 'chengchao_an@olympus.com.cn'; |
| | | ods.EMPLOYEE_NO__C = 'om002857'; |
| | | ods.EMPLOYEE_NO__C = 'om003901'; |
| | | ods.FIRSTNAME__C = 'Chengchao'; |
| | | ods.HIRE_DATE__C = Date.today(); |
| | | ods.JOB_CATEGORY__C = '技术服务'; |
| | |
| | | ods.Stay_or_not__c = '在职'; |
| | | ods.LeaveDate__c = Date.today(); |
| | | |
| | | insert ods; |
| | | Test.startTest(); |
| | | try{ |
| | | insert ods; |
| | | // AWSServiceTool2没上线就把这部分注释 start |
| | | Test.setMock(HttpCalloutMock.class, new HttpMock()); |
| | | |
| | | ods.LeaveDate__c = Date.today(); |
| | | update ods; |
| | | List<Agency_Contact__c> lra = new List<Agency_Contact__c>(); |
| | | lra.add(new Agency_Contact__c( |
| | | Id = 'a2R1m0000007BPD', |
| | | Aws_Data_Id__c = '123456' |
| | | )); |
| | | AWSServiceTool2.EncryptPushCore(Json.serialize(lra),'Agency_Contact__c'); |
| | | // AWSServiceTool2没上线就把这部分注释 end |
| | | ods.LeaveDate__c = Date.today()+1; |
| | | update ods; |
| | | }catch(Exception e){ |
| | | system.debug('Exception from upsert file:'+e.getmessage()); |
| | | } |
| | | Test.stopTest(); |
| | | } |
| | | } |
| | |
| | | /** |
| | | * @description : |
| | | * @author : ChangeMeIn@UserSettingsUnder.SFDoc |
| | | * @group : |
| | | * @last modified on : 03-28-2022 |
| | | * @last modified by : ChangeMeIn@UserSettingsUnder.SFDoc |
| | | **/ |
| | | global without sharing class OnCallController { |
| | | public String layoutSectionsStr {get; set;}//for dynamic add readonly attribute |
| | | public List <LayoutDescriberHelper.LayoutSection > layoutSections{set;get;} |
| | |
| | | public static Map<String, Schema.SObjectType> schemaMap = Schema.getGlobalDescribe(); |
| | | public static String sobjectTypeValue = 'On_Call__c'; |
| | | public Boolean isNewMode{set;get;} |
| | | public Boolean isCloneMode{protected set;get;} |
| | | public String rtTypeId {get; set;} |
| | | public String AWSDataId{set;get;} |
| | | public List<String> encryptedAPIList{set;get;} |
| | |
| | | public OnCallController(ApexPages.StandardController controller) { |
| | | // sobjectId = [SELECT CustomObjectId,CustomObjectName FROM CustomObjectUserLicenseMetrics where CustomObjectName ='OnCall' limit 1].CustomObjectId; |
| | | isNewMode = true; |
| | | isCloneMode = false; |
| | | Input_Required_Field_Msg = Label.Input_Required_Field_Msg; |
| | | PIPL_Name_Label = Label.PIPL_Name_Label; |
| | | PIPL_Input_Account_Error_Msg = label.PIPL_Input_Account_Error_Msg; |
| | |
| | | // Add fields to controller. This is to avoid the SOQL error in visualforce page |
| | | if(!Test.isRunningTest()){ |
| | | controller.addFields(fieldList); |
| | | } |
| | | Map<string,string> mso = ApexPages.currentPage().getParameters(); |
| | | System.debug('mso:' + mso); |
| | | if(mso != null && mso.containsKey('newclone')){ |
| | | isCloneMode = true; |
| | | } |
| | | System.debug('isClone:' + isCloneMode); |
| | | SObject obj = controller.getRecord(); |
| | | if(obj.Id != null){ |
| | | //更新 |
| | |
| | | On_Call__c onCallInfo = new On_Call__c(); |
| | | //自定义格式转换 |
| | | for (String fieldAPI: fieldValueMap.keySet()) { |
| | | system.debug('field API'+fieldAPI); |
| | | if(!fieldAPIToTypeMap.containskey(fieldAPI)){ |
| | | continue; |
| | | } |
| | | system.debug('field API='+fieldAPI); |
| | | Schema.DisplayType fielddataType = fieldAPIToTypeMap.get(fieldAPI).getDescribe().getType(); |
| | | String fieldValue = String.valueOf(fieldValueMap.get(fieldAPI)); |
| | | system.debug('Field Type:'+fielddataType+' field Value='+fieldValue); |
| | | if(String.valueOf(fielddataType)=='DATE'){ |
| | | onCallInfo.put(fieldAPI,(String.isBlank(fieldValue)||String.isEmpty(fieldValue))? null:Date.valueOf(fieldValue.replace('/', '-'))); |
| | | onCallInfo.put(fieldAPI,(String.isBlank(fieldValue)||String.isEmpty(fieldValue))? null:Date.valueOf(fieldValue.replace('/', '-'))); |
| | | }else if(String.valueOf(fielddataType)=='DATETIME'){ |
| | | if(String.isNotBlank(fieldValue)&&fieldValue.contains('T')){ |
| | | fieldValue = fieldValue.replace('T',' '); |
| | | onCallInfo.put(fieldAPI, Datetime.valueOfGmt(fieldValue)); |
| | | //20220405 By ChenYanan Start |
| | | }else if(String.isNotBlank(fieldValue)) { |
| | | fieldValue = fieldValue.replace('/', '-') + ':00'; |
| | | System.debug('fieldValue = ' + fieldValue); |
| | | onCallInfo.put(fieldAPI, Datetime.valueOf(fieldValue)); |
| | | //20220405 By ChenYanan End |
| | | }else{ |
| | | onCallInfo.put(fieldAPI, null); |
| | | } |
| | | |
| | | }else if(String.valueOf(fielddataType)=='PERCENT'||String.valueOf(fielddataType)=='CURRENCY'||String.valueOf(fielddataType)=='Number'||String.valueOf(fielddataType)=='DOUBLE' ){ |
| | | onCallInfo.put(fieldAPI, (String.isBlank(fieldValue)||String.isEmpty(fieldValue))?null:Decimal.valueOf(fieldValue.replace(',', ''))); |
| | | } |
| | | }else if(String.valueof(fielddataType)=='CURRENCY'|| String.valueof(fielddataType)=='PERCENT'||String.valueOf(fielddataType)=='Number'||String.valueOf(fielddataType)=='DOUBLE' ){ |
| | | onCallInfo.put(fieldAPI, (String.isBlank(fieldValue)||String.isEmpty(fieldValue))?0:Decimal.valueOf(fieldValue)); |
| | | } else if(String.valueof(fielddataType)=='BOOLEAN'){ |
| | | onCallInfo.put(fieldAPI, fieldValueMap.get(fieldAPI)); |
| | | }else { |
| | | onCallInfo.put(fieldAPI, String.valueOf(fieldValueMap.get(fieldAPI))); |
| | | } |
| | | onCallInfo.put(fieldAPI,fieldValue); |
| | | } |
| | | } |
| | | |
| | | //2. Save Record Process |
| | |
| | | Response resp = new Response(); |
| | | Savepoint sp = Database.setSavepoint(); |
| | | String rid = ''; |
| | | Boolean isClone = false; |
| | | String awsDataId = ''; |
| | | try{ |
| | | System.debug('abcde'); |
| | | if(isNew){ |
| | | System.debug('abcde'+isNew); |
| | | awsDataId = (String)onCallInfo.get('AWS_Data_Id__c'); |
| | | if (string.isBlank(awsDataId)) { |
| | | throw new DMLException('更新时AWS_Data_Id__c不能为空'); |
| | | } |
| | | System.debug('awsDataId = ' + awsDataId); |
| | | On_Call__c[] onCalls = Database.query('select id from On_Call__c where AWS_Data_Id__c =:awsDataId'); |
| | | if(!isNew){ |
| | | isClone = onCalls.size() == 0; |
| | | } |
| | | if(isNew || isClone){ |
| | | System.debug('onCallInfozhj = ' + onCallInfo); |
| | | insert onCallInfo; |
| | | }else{ |
| | | System.debug('into update'); |
| | | String awsDataId = (String)onCallInfo.get('AWS_Data_Id__c'); |
| | | System.debug('awsDataId = ' + awsDataId); |
| | | On_Call__c[] onCalls = [select id from On_Call__c where AWS_Data_Id__c =:awsDataId]; |
| | | // String awsDataId = (String)onCallInfo.get('AWS_Data_Id__c'); |
| | | // System.debug('awsDataId = ' + awsDataId); |
| | | // On_Call__c[] onCalls = [select id from On_Call__c where AWS_Data_Id__c =:awsDataId]; |
| | | System.debug('onCalls[0].id = ' + onCalls[0].id); |
| | | onCallInfo.put('Id',onCalls[0].id);//For testing; |
| | | update onCallInfo; |
| | |
| | | |
| | | AccountDailyUpdateBatch.updateFromHosToContact(deptUpdateList, iflog); |
| | | updateFromHosToContact(deptUpdateList, iflog); |
| | | |
| | | //20220415 you SWAG-CBUB2W start |
| | | updateFromHosToInquiryForm(deptUpdateList, iflog); |
| | | //20220415 you SWAG-CBUB2W end |
| | | } |
| | | //同步所属的询价(业务机会)的所有人 |
| | | public static void updateFromHosToContact(List<Account> deptUpdateList, BatchIF_Log__c iflog) { |
| | |
| | | } |
| | | |
| | | } |
| | | //20220415 you SWAG-CBUB2W start |
| | | //同步所属的产品咨询单的所有人 |
| | | public static void updateFromHosToInquiryForm(List<Account> deptUpdateList, BatchIF_Log__c iflog) { |
| | | List<Inquiry_form__c> updateInquiryFormList = |
| | | [select id, Ownerid, Hospital_Name__r.ownerId from Inquiry_form__c |
| | | where Hospital_Name__c in:deptUpdateList |
| | | and isOwnerDiffWithAccount__c = true ]; |
| | | for (Inquiry_form__c ifo : updateInquiryFormList) { |
| | | if (ifo.Ownerid != ifo.Hospital_Name__r.ownerId) { |
| | | ifo.Ownerid = ifo.Hospital_Name__r.ownerId; |
| | | } |
| | | } |
| | | Integer indexCon = 0; |
| | | Database.SaveResult[] lsrUpdateInq = Database.update(updateInquiryFormList, false); |
| | | for (Database.SaveResult lsrChild : lsrUpdateInq) { |
| | | if (!lsrChild.isSuccess()) { |
| | | iflog.Is_Error__c = 3; |
| | | Database.Error emsg = lsrChild.getErrors()[0]; |
| | | iflog.ErrorLog__c += 'ownerId: ' + updateInquiryFormList.get(indexCon).ownerId + ' \n' |
| | | + 'InquiryFormID: ' + updateInquiryFormList.get(indexCon).Id + '\n ConLog:' + emsg.getMessage() + '\n'; |
| | | |
| | | } |
| | | indexCon ++ ; |
| | | } |
| | | |
| | | } |
| | | //20220415 you SWAG-CBUB2W end |
| | | global void finish(Database.BatchableContext BC) { |
| | | system.debug('=====iflog:' + iflog.id); |
| | | iflog.Log__c += 'OpportunityAndContactDailyUpdateBatch finish()\n'; |
| | |
| | | @isTest |
| | | private class OpportunityAndContactDailyUpdateTest { |
| | | |
| | | @testsetup |
| | | private static void setup (){ |
| | | TestDataUtility.CreatePIPolicyConfiguration('Agency_Contact__c'); |
| | | string profid = '00e10000000Y3o5'; |
| | | string rectHpID = Schema.SObjectType.Account.getRecordTypeInfosByDeveloperName().get('HP').getRecordTypeId(); |
| | | List<String> classDeptStr = new List<String>(); |
| | |
| | | depart.Hospital__c = Hospital.Id; |
| | | depart.OwnerId = UserGS.Id; |
| | | insert depart; |
| | | Contact core = new Contact(email='jplumber@salesforce.com', |
| | | firstname='Joe', |
| | | lastname='Plumber', |
| | | accountid=depart.id); |
| | | insert core; |
| | | //Contact core = new Contact(email='jplumber@salesforce.com', |
| | | //firstname='Joe', |
| | | //lastname='Plumber', |
| | | //accountid=depart.id); |
| | | //insert core; |
| | | Opportunity target = new Opportunity( Name = 'aiueo', StageName = 'contact', CloseDate = Date.today(), |
| | | accountid=depart.id); |
| | | target.Trade__c = '内貿'; |
| | |
| | | target.Wholesale_Price__c = 9000; |
| | | target.Sales_Root__c = 'AAA'; |
| | | insert target; |
| | | |
| | | |
| | | Inquiry_form__c inf =new Inquiry_form__c(); |
| | | inf.Hospital_Name__c = depart.id; |
| | | inf.OwnerId = UserGI.Id; |
| | | inf.Name = 'test'; |
| | | inf.Request1__c = '服务对应'; |
| | | inf.Product1__c = '超声'; |
| | | insert inf; |
| | | |
| | | } |
| | | @isTest |
| | | static void Test1(){ |
| | | Test.setMock(HttpCalloutMock.class, new HttpMock()); |
| | | |
| | | List<Agency_Contact__c> lra = new List<Agency_Contact__c>(); |
| | | lra.add(new Agency_Contact__c( |
| | | Id = 'a2R1m0000007BPD' |
| | | )); |
| | | Test.startTest(); |
| | | //system.debug(PIHelper.getPIIntegrationInfo('Agency_Contact__c').newEncryptUrl); |
| | | AWSServiceTool2.EncryptPushCore(Json.serialize(lra),'Agency_Contact__c'); |
| | | AWSServiceTool2.EncryptPushFuture(null,null); |
| | | Test.stopTest(); |
| | | } |
| | | |
| | | //@isTest |
| | | // static void Test2(){ |
| | | // Test.setMock(HttpCalloutMock.class, new HttpMock()); |
| | | |
| | | // List<Agency_Contact__c> lra = new List<Agency_Contact__c>(); |
| | | // lra.add(new Agency_Contact__c( |
| | | // Id = 'a2R1m0000007BPD', |
| | | // Aws_Data_Id__c = '123456' |
| | | // )); |
| | | // Test.startTest(); |
| | | // //system.debug(PIHelper.getPIIntegrationInfo('Agency_Contact__c').newEncryptUrl); |
| | | // AWSServiceTool2.EncryptPushCore(Json.serialize(lra),'Agency_Contact__c'); |
| | | // Test.stopTest(); |
| | | // } |
| | | |
| | | class HttpMock implements HttpCalloutMock{ |
| | | |
| | | public HTTPResponse respond(HTTPRequest request) { |
| | | // 创建一个假的回应 |
| | | System.debug('------------------------------------------------------'); |
| | | HttpResponse response = new HttpResponse(); |
| | | string body = ''; |
| | | system.debug(request.getEndpoint()); |
| | | if(request.getEndpoint().contains('token')){ |
| | | system.debug('url=token'); |
| | | response.setHeader('Content-Type', 'application/json'); |
| | | body='{ "message": "", "object": "freqfewqfewewfewfew", "status": "", "success": true, "timestamp": 0, "txId": "" }'; |
| | | } else if(request.getEndpoint().contains('insert')){ |
| | | system.debug('url=Insert'); |
| | | response.setHeader('Content-Type', 'application/json'); |
| | | body='{ "message": "", "object": [ { "dataId": "123456", "directShippmentAddress": "", "directShippmentAddressEncrypt": "", "isDelete": 0, "phoneNumber": "", "phoneNumberEncrypt": "", "sfRecordId": "a2R1m0000007BPD" } ], "status": "", "success": true, "timestamp": 0, "txId": "" }'; |
| | | } else if(request.getEndpoint().contains('update')){ |
| | | system.debug('url=update'); |
| | | response.setHeader('Content-Type', 'application/json'); |
| | | body='{ "message": "", "object": [ { "dataId": "123456", "directShippmentAddress": "", "directShippmentAddressEncrypt": "", "isDelete": 0, "phoneNumber": "", "phoneNumberEncrypt": "", "sfRecordId": "a2R1m0000007BPD" } ], "status": "", "success": true, "timestamp": 0, "txId": "" }'; |
| | | } else{ |
| | | |
| | | } |
| | | |
| | | response.setBody(body); |
| | | response.setStatus('OK'); |
| | | response.setStatusCode(200); |
| | | return response; |
| | | // } |
| | | } |
| | | } |
| | | |
| | | static testMethod void testMethod1() { |
| | | Test.setMock(HttpCalloutMock.class, new HttpMock()); |
| | | |
| | | List<Agency_Contact__c> lra = new List<Agency_Contact__c>(); |
| | | lra.add(new Agency_Contact__c( |
| | | Id = 'a2R1m0000007BPD', |
| | | Aws_Data_Id__c = '123456' |
| | | )); |
| | | AWSServiceTool2.EncryptPushCore(Json.serialize(lra),'Agency_Contact__c'); |
| | | list<account> acclist = [select id from account where name ='Test Hospital']; |
| | | Id execBTId = Database.executeBatch(new OpportunityAndContactDailyUpdateBatch(), 5); |
| | | execBTId = Database.executeBatch(new OpportunityAndContactDailyUpdateBatch('1.华北'), 5); |
| | |
| | | PIIntegration piIntegration = new PIIntegration(); |
| | | //查询url |
| | | System.debug('thhsobjectType = ' + sobjectType); |
| | | PI_Policy_Configuration__c config = [SELECT Full_New_URL__c,Full_Search_URL__c,Full_Update_URL__c,Full_Undelete_URL__c,Full_Read_URL__c,Full_Delete_URL__c,Full_View_Unified_Contact_URL__c,TransactionURL__c FROM PI_Policy_Configuration__c WHERE Sobject_Type__c =:sobjectType]; |
| | | PI_Policy_Configuration__c config = [SELECT Full_New_URL__c,Full_New_Encrypt_URL__c,Full_Update_Encrypt_URL__c,Full_Search_URL__c,Full_Update_URL__c,Full_Undelete_URL__c,Full_Read_URL__c,Full_Delete_URL__c,Full_View_Unified_Contact_URL__c,TransactionURL__c FROM PI_Policy_Configuration__c WHERE Sobject_Type__c =:sobjectType]; |
| | | // PI_Policy_Configuration__c config = [SELECT Full_New_URL__c,Full_Search_URL__c,Full_Update_URL__c,Full_Undelete_URL__c,Full_Read_URL__c,Full_Delete_URL__c,Full_View_Unified_Contact_URL__c,TransactionURL__c,Full_New_Encrypt_URL__c FROM PI_Policy_Configuration__c WHERE Sobject_Type__c =:sobjectType]; |
| | | System.debug('thhconfig = ' + config); |
| | | |
| | | //获取appid和appsecret |
| | |
| | | token = (String)results.get('object'); |
| | | System.debug('token = ' + token); |
| | | }catch(Exception e){ |
| | | system.debug(e.getMessage()); |
| | | system.debug(e.getStackTraceString()); |
| | | |
| | | Transaction_Log__c traLog = new Transaction_Log__c(); |
| | | traLog.Module__c = 'Get Token'; |
| | | traLog.Status__c = 'fail'; |
| | |
| | | //Insert Get Token Log |
| | | |
| | | //获取敏感字段 |
| | | piIntegration.PIDetails = [select id,PI_Policy_Configuration__r.Full_New_URL__c, Enable_Encrypt__c, SF_Field_API_Name__c,SF_Field_Encrypted_API__c, AWS_Field_API__c,AWS_Encrypted_Field_API__c,Field_Type__c from PI_Field_Policy_Detail__c where PI_Policy_Configuration_Name__c =:sobjectType and Enable_Encrypt__c=true]; |
| | | piIntegration.PIDetails = [select id,PI_Policy_Configuration__r.Full_New_URL__c,PI_Policy_Configuration__r.Full_New_Encrypt_URL__c,PI_Policy_Configuration__r.Full_Update_Encrypt_URL__c, Enable_Encrypt__c, SF_Field_API_Name__c,SF_Field_Encrypted_API__c, AWS_Field_API__c,AWS_Encrypted_Field_API__c,Field_Type__c from PI_Field_Policy_Detail__c where PI_Policy_Configuration_Name__c =:sobjectType and Enable_Encrypt__c=true]; |
| | | if(displayByOrderNumberObject.contains(sobjectType)){ |
| | | piIntegration.PIDetails = [select id,PI_Policy_Configuration__r.Full_New_URL__c, Enable_Encrypt__c, SF_Field_API_Name__c,SF_Field_Encrypted_API__c, AWS_Field_API__c,AWS_Encrypted_Field_API__c,Field_Type__c from PI_Field_Policy_Detail__c where PI_Policy_Configuration_Name__c =:sobjectType and Enable_Encrypt__c=true order by Order_Number__c]; |
| | | piIntegration.PIDetails = [select id,PI_Policy_Configuration__r.Full_New_URL__c,PI_Policy_Configuration__r.Full_New_Encrypt_URL__c,PI_Policy_Configuration__r.Full_Update_Encrypt_URL__c, Enable_Encrypt__c, SF_Field_API_Name__c,SF_Field_Encrypted_API__c, AWS_Field_API__c,AWS_Encrypted_Field_API__c,Field_Type__c from PI_Field_Policy_Detail__c where PI_Policy_Configuration_Name__c =:sobjectType and Enable_Encrypt__c=true order by Order_Number__c]; |
| | | } |
| | | List<String> vLookUpFields = new List<String>(); |
| | | List<String> PIFields = new List<String>(); |
| | |
| | | piIntegration.deleteUrl = config.Full_Delete_URL__c; |
| | | piIntegration.undeleteUrl = config.Full_Undelete_URL__c; |
| | | piIntegration.viewUnifiedContactUrl = config.Full_View_Unified_Contact_URL__c; |
| | | piIntegration.newEncryptUrl = config.Full_New_Encrypt_URL__c; |
| | | piIntegration.updateEncryptUrl = config.Full_Update_Encrypt_URL__c; |
| | | piIntegration.transactionURL = config.TransactionURL__c; |
| | | piIntegration.hostUrl = awsConfiguration.Host_URL__c; |
| | | piIntegration.searchUrl = config.Full_Search_URL__c; |
| | |
| | | public String deleteUrl{set;get;} |
| | | public String undeleteUrl{set;get;} |
| | | public String viewUnifiedContactUrl{set;get;} |
| | | public String newEncryptUrl{set;get;} |
| | | public String updateEncryptUrl{set;get;} |
| | | public String hostUrl{set;get;} |
| | | public String token{set;get;} |
| | | public String awsAppId{set;get;} |
| | |
| | | // HWAG-BC68W3 故障发生日为空时, 它为真 start |
| | | public Boolean outOfGuarantee { get; private set; } |
| | | // HWAG-BC68W3 故障发生日为空时, 它为真 end |
| | | |
| | | public string Photo_1_Text { get; private set; } |
| | | public string Photo_2_Text { get; private set; } |
| | | public string Photo_3_Text { get; private set; } |
| | | public string Photo_4_Text { get; private set; } |
| | | |
| | | |
| | | public QISPDFController() { |
| | | qr = new QIS_Report__c(); |
| | | usr = new User(); |
| | |
| | | //HWAG-BC68W3 end |
| | | inGuarantee = true; |
| | | } |
| | | |
| | | Photo_1_Text = getImageByUrl(qr.Photo_1_Text__c); |
| | | Photo_2_Text = getImageByUrl(qr.Photo_2_Text__c); |
| | | Photo_3_Text = getImageByUrl(qr.Photo_3_Text__c); |
| | | Photo_4_Text = getImageByUrl(qr.Photo_4_Text__c); |
| | | } |
| | | } |
| | | |
| | | public static String getImageByUrl(string urlStr){ |
| | | //urlStr = 'https://ocsm--stagefull--c.documentforce.com/servlet/rtaImage?eid=a0f1000000cS7qH&feoid=00N10000006P4rz&refid=0EM10000002WIgq'; |
| | | // 'https://ocsm--stagefull.my.salesforce.com/services/data/v51.0/sobjects/QIS_Report__c/a0f1000000IJay1/richTextImageFields/Photo_1__c/0EM100000017hLN |
| | | System.debug('urlStr='+urlStr); |
| | | Id eid = getUrlParameters(urlStr,'eid'); |
| | | if (string.isBlank(eid)) { |
| | | System.debug('eid not found'); |
| | | return null; |
| | | } |
| | | |
| | | Id feoid = getUrlParameters(urlStr,'feoid'); |
| | | if (string.isBlank(feoid)) { |
| | | System.debug('feoid not found'); |
| | | return null; |
| | | } |
| | | |
| | | Id refid = getUrlParameters(urlStr,'refid'); |
| | | if (string.isBlank(refid)) { |
| | | System.debug('refid not found'); |
| | | return null; |
| | | } |
| | | |
| | | string body = MetaDataUtility.ToolingQuery('select id,FullName from CustomField where id=\''+feoid+'\''); |
| | | if(string.isBlank(body)){ |
| | | System.debug('body is blank'); |
| | | return null; |
| | | } |
| | | string sobjecttype = eid.getSobjectType().getDescribe().getName(); |
| | | List<object> lo = (List<object>)(((Map<string,object>)JSON.deserializeUntyped(body)).get('records')); |
| | | Map<string,object> mso = (Map<string,object>)(lo[0]); |
| | | string f = ((string)mso.get('FullName')).replace(sobjecttype+'.', ''); |
| | | |
| | | String urlForClassic = 'https://'+System.URL.getOrgDomainUrl().getHost()+'/services/data/v53.0/sobjects/'+sobjecttype+'/'+eid+'/richTextImageFields/'+f+'/'+refid; |
| | | |
| | | system.debug('URL Post:'+urlForClassic); |
| | | HttpResponse resp = null; |
| | | HttpRequest req = new HttpRequest(); |
| | | req.setMethod('GET'); |
| | | req.setEndpoint(urlForClassic); |
| | | req.setHeader('Authorization', 'Bearer ' + UserInfo.getsessionid()); |
| | | Http client = new Http(); |
| | | resp = client.send(req); |
| | | system.debug('getStatusCode:'+resp.getStatusCode()); |
| | | return 'data:image/png;base64,' + EncodingUtil.base64Encode(resp.getBodyAsBlob()); |
| | | } |
| | | |
| | | public static String getUrlParameters(string url,string para){ |
| | | //string url = 'https://sfpi-mebg-test.olympuschina.com:8081/stg/api/file/convert?from=https%3A%2F%2Focsm--stagefull--c.visualforce.com%2Fapex%2FQISPDF%3Fid%3Da0f1000000cS7qH&fileName=QISPDF'; |
| | | if (string.isBlank(url) || string.isBlank(para)) { |
| | | return null; |
| | | } |
| | | Pattern p = Pattern.compile('(?<=' + para + '=)[^&]*'); |
| | | Matcher m = p.matcher(url); |
| | | if (m.find()) { |
| | | return m.group(); |
| | | }else { |
| | | system.debug('no found '+para+' in url='+url); |
| | | return null; |
| | | } |
| | | |
| | | } |
| | | } |
| | |
| | | QISPDFController controller = new QISPDFController(); |
| | | controller.init(); |
| | | } |
| | | |
| | | static testMethod void Test1(){ |
| | | QISPDFController.getImageByUrl('https://ocsm--stagefull--c.documentforce.com/servlet/rtaImage?eid=a0f1000000cS7qH&refid=0EM10000002WIgq'); |
| | | QISPDFController.getImageByUrl('https://ocsm--stagefull--c.documentforce.com/servlet/rtaImage?eid=a0f1000000cS7qH&feoid=00N10000006P4rz'); |
| | | } |
| | | } |
| | |
| | | } |
| | | //wangweipeng LJPH-C7ZBSE 2021/10/27 start |
| | | static testMethod void triggerTest2(){ |
| | | Oly_TriggerHandler.bypass('ContactTriggerHandler'); |
| | | // 省 |
| | | Address_Level__c al = new Address_Level__c(); |
| | | al.Name = '東京'; |
| | |
| | | /** |
| | | * @description : |
| | | * @author : ChangeMeIn@UserSettingsUnder.SFDoc |
| | | * @group : |
| | | * @last modified on : 03-28-2022 |
| | | * @last modified by : ChangeMeIn@UserSettingsUnder.SFDoc |
| | | **/ |
| | | global without sharing class RentalApplyController { |
| | | public String layoutSectionsStr {get; set;}//for dynamic add readonly attribute |
| | | public List <LayoutDescriberHelper.LayoutSection > layoutSections{set;get;} |
| | |
| | | public static Map<String, Schema.SObjectType> schemaMap = Schema.getGlobalDescribe(); |
| | | public static String sobjectTypeValue = 'Rental_Apply__c'; |
| | | public Boolean isNewMode{set;get;} |
| | | public Boolean isCloneMode{protected set;get;} |
| | | public String rtTypeId {get; set;} |
| | | public String AWSDataId{set;get;} |
| | | public List<String> encryptedAPIList{set;get;} |
| | |
| | | public RentalApplyController(ApexPages.StandardController controller) { |
| | | ApiPrefix = 'PIBackApi'; |
| | | isNewMode = true; |
| | | isCloneMode = false; |
| | | Input_Required_Field_Msg = Label.Input_Required_Field_Msg; |
| | | PIPL_Input_Account_Error_Msg = label.PIPL_Input_Account_Error_Msg; |
| | | //获取所有字段 |
| | | List<String> fieldList = new List<String>(Schema.getGlobalDescribe().get('Rental_Apply__c').getDescribe().fields.getMap().keyset()); |
| | | Map<string,string> mso = ApexPages.currentPage().getParameters(); |
| | | if(mso != null && mso.containsKey('newclone')){ |
| | | isCloneMode = true; |
| | | } |
| | | if(!Test.isRunningTest()){ |
| | | controller.addFields(fieldList); |
| | | } |
| | | SObject obj = controller.getRecord(); |
| | | SObject obj = controller.getRecord(); |
| | | if(obj.Id != null){ |
| | | //更新 |
| | | isNewMode = false; |
| | | Rental_Apply__c rentalApplyData = [select Id,RecordTypeId,AWS_Data_Id__c,Loaner_medical_Staff__c,Loaner_medical_Staff__r.AWS_Data_Id__c from Rental_Apply__c where id =: obj.Id]; |
| | | rtTypeId = rentalApplyData.RecordTypeId; |
| | | //Update record type for Rental Apply by Li Jun 20220419 start |
| | | if(ApexPages.currentPage().getParameters().containskey('RecordType')){ |
| | | rtTypeId = ApexPages.currentPage().getParameters().get('RecordType'); |
| | | } |
| | | controller.getRecord().put('RecordTypeId',rtTypeId); |
| | | //Update record type for Rental Apply by Li Jun 20220419 end |
| | | AWSDataId = rentalApplyData.AWS_Data_Id__c; |
| | | Map<String,String> sfIdToAWSIdMap = new Map<String,String>(); |
| | | if(rentalApplyData.Loaner_medical_Staff__r.Id != null){ |
| | |
| | | contactsInfo = JSON.serialize(sfIdToAWSIdMap); |
| | | }else{ |
| | | //新建 |
| | | Map<string,string> mso = ApexPages.currentPage().getParameters(); |
| | | // Map<string,string> mso = ApexPages.currentPage().getParameters(); |
| | | system.debug('mso='+mso); |
| | | if(mso.containsKey('Name')){ |
| | | controller.getRecord().put('Name',mso.get('Name')); |
| | |
| | | if(mso.containsKey('00N10000003OJzc')){ |
| | | controller.getRecord().put('Loaner_received_staff__c',mso.get('00N10000003OJzc')); |
| | | } |
| | | |
| | | |
| | | |
| | | rtTypeId = ApexPages.currentPage().getParameters().get('RecordType'); |
| | | obj.put('OwnerId',UserInfo.getUserId()); |
| | | } |
| | | |
| | | if(mso.containsKey('00N10000003Mp2H')){ |
| | | system.debug('00N10000003Mp2H='+mso.get('00N10000003Mp2H')); |
| | | controller.getRecord().put('Status__c',mso.get('00N10000003Mp2H')); |
| | | } |
| | | |
| | | if(mso.containsKey('00N10000007oQKh')){ |
| | | system.debug('00N10000007oQKh='+mso.get('00N10000007oQKh')); |
| | | controller.getRecord().put('Split_Apply_Reason__c',mso.get('00N10000007oQKh')); |
| | | } |
| | | system.debug('Rental Apply Record Type:'+rtTypeId); |
| | | LayoutDescriberHelper.LayoutWrapper LayoutWrapperValue = LayoutDescriberHelper.describeSectionWithFieldsWrapper(rtTypeId, 'Rental_Apply__c','classic'); |
| | | layoutSections = LayoutWrapperValue.layoutSections; |
| | | layoutSectionsStr = JSON.serialize(layoutSections); //for dynamic add readonly attribute |
| | |
| | | Response resp = new Response(); |
| | | Savepoint sp = Database.setSavepoint(); |
| | | String rid = ''; |
| | | Boolean isClone = false; |
| | | String awsDataId = ''; |
| | | try{ |
| | | System.debug('abcde'); |
| | | if(isNew){ |
| | | awsDataId = (String)rentalApplyInfo.get('AWS_Data_Id__c'); |
| | | System.debug('awsDataId = ' + awsDataId); |
| | | Rental_Apply__c[] RentalApplys = [select id from Rental_Apply__c where AWS_Data_Id__c =:awsDataId]; |
| | | if(!isNew){ |
| | | isClone = RentalApplys.size() == 0; |
| | | } |
| | | |
| | | if(isNew || isClone){ |
| | | System.debug('rentalApplyInfozhj = ' + rentalApplyInfo); |
| | | insert rentalApplyInfo; |
| | | System.debug('rentalApplyInfo.Id' + rentalApplyInfo.Id); |
| | | }else{ |
| | | System.debug('into update'); |
| | | String awsDataId = (String)rentalApplyInfo.get('AWS_Data_Id__c'); |
| | | System.debug('awsDataId = ' + awsDataId); |
| | | Rental_Apply__c[] RentalApplys = [select id from Rental_Apply__c where AWS_Data_Id__c =:awsDataId]; |
| | | // String awsDataId = (String)rentalApplyInfo.get('AWS_Data_Id__c'); |
| | | // System.debug('awsDataId = ' + awsDataId); |
| | | // Rental_Apply__c[] RentalApplys = [select id from Rental_Apply__c where AWS_Data_Id__c =:awsDataId]; |
| | | System.debug('RentalApplys[0].id = ' + RentalApplys[0].id); |
| | | rentalApplyInfo.put('Id',RentalApplys[0].id);//For testing; |
| | | update rentalApplyInfo; |
| | |
| | | @AuraEnabled public List<Map<String,String>> doctorList{get;set;} |
| | | @AuraEnabled public String UserProType{get;set;} |
| | | @AuraEnabled public Map<String,Agency_Report__c> AgencyReportMap{get;set;} |
| | | |
| | | @AuraEnabled public Map<String,string> PIConfig{get;set;} |
| | | |
| | | public RetrospectiveWeeklyReportController() { |
| | | } |
| | |
| | | // 見出し設定 |
| | | this.fieldsMap = new Map<String,String>(); |
| | | this.fieldsMap = this.getfiledsmap(); |
| | | |
| | | this.PIConfig = new Map<String,string>(); |
| | | this.PIConfig.put('staticResourceAgencyContact', JSON.serialize(PIHelper.getPIIntegrationInfo('Agency_Contact__c'))); |
| | | } |
| | | |
| | | |
| | |
| | | ret.add(space); |
| | | |
| | | Agency_Hospital_Link__c ahl = [select Hospital__c from Agency_Hospital_Link__c where id = :hospital_id]; |
| | | List<Agency_Contact__c> doctor_list = [select id,Name,Doctor_Division1__c,Type__c,Agency_Hospital__c |
| | | List<Agency_Contact__c> doctor_list = [select id,Name,Doctor_Division1__c, |
| | | AWS_Data_Id__c,// PI改造 By Bright 20220328 |
| | | Type__c,Agency_Hospital__c |
| | | FROM Agency_Contact__c WHERE Hospital_ID18__c=:ahl.Hospital__c order by Name]; |
| | | for (Agency_Contact__c row : doctor_list) |
| | | { |
| | |
| | | tmp.put('value', row.Id); |
| | | tmp.put('selected', 'false'); |
| | | tmp.put('Doctor_Division1__c', row.Doctor_Division1__c); |
| | | tmp.put('AWS_Data_Id__c', row.AWS_Data_Id__c);// PI改造 By Bright 20220328 |
| | | ret.add(tmp); |
| | | } |
| | | return ret; |
| | |
| | | String UseProduct1, String UseProduct2, String UseProduct3, |
| | | String StageName, String oppAmount, String oppOCMPrice, String Close_Forecasted_Date, String Report_Date) |
| | | { |
| | | Department_Cateogy = GetDepartment_Cateogy(Department_Cateogy); |
| | | system.debug('Department_Cateogy+++'+Department_Cateogy); |
| | | Agency_Report__c agency_report = makeAgencyReport(Department_Cateogy,ConsumptionOfConsumables, |
| | | WorkMark,warlocksNumber,DealerPersonnel,ProductCcategory,productCategories,WarlockClassification,ProductClassification, WorkRecord, |
| | | EffectProgress,Agency_Report_Header, |
| | |
| | | //新建方法 |
| | | public static Agency_Report__c insertAgencyReport(Agency_Report__c data) { |
| | | if (String.isBlank(data.Hospital__c)) { |
| | | system.debug('data.Agency_Hospital__c+++'+data.Agency_Hospital__c); |
| | | List<Agency_Hospital_Link__c> agency_hospital_link = [select Id, Hospital__c from Agency_Hospital_Link__c where Id=:data.Agency_Hospital__c]; |
| | | system.debug('agency_hospital_link+++'+agency_hospital_link); |
| | | data.Hospital__c = agency_hospital_link[0].Hospital__c; |
| | | } |
| | | if (String.isBlank(data.Department_Class__c)) { |
| | | system.debug('data.Department_Cateogy__c+++'+data.Department_Cateogy__c); |
| | | String record_type_id = LightningUtil.getRecordTypeId(data.Department_Cateogy__c); |
| | | system.debug('RecordTypeId+++'+record_type_id); |
| | | List<Account> account = [select Id, RecordTypeId from account where Hospital_Department_Class__c=:data.Hospital__c and RecordTypeId=:record_type_id]; |
| | | system.debug('account+++'+account); |
| | | data.Department_Class__c = account[0].Id; |
| | | } |
| | | User userPro = LightningUtil.loginUserId(); |
| | |
| | | @RemoteAction |
| | | @AuraEnabled |
| | | public static List<Map<String,String>> selectProductClassificationc(String select_ProductClassification){ |
| | | //fy |
| | | List<FieldClassification__c> WarlockClassificationList; |
| | | List<AggregateResult> WarlockClassificationList2; |
| | | User UserProTypec = LightningUtil.loginUserId(); |
| | | if(String.isNotBlank(select_ProductClassification)){ |
| | | // WarlockClassificationList = [select id, Name , ProductClassification__c from WarlockClassification__c where ProductClassification__c =: select_ProductClassification]; |
| | | WarlockClassificationList = [select id , ProductClassification__c,WarlockClassification__c from FieldClassification__c where ProductClassification__c =: select_ProductClassification]; |
| | | |
| | | if(UserProTypec.UserPro_Type__c =='ET'){ |
| | | WarlockClassificationList = [select id , ProductClassification__c,WarlockClassification__c from FieldClassification__c where ProductClassification__c =: select_ProductClassification]; |
| | | }else{ |
| | | WarlockClassificationList2 = [select count(id) sum, Category4__c from product2 where Category3__c =: select_ProductClassification and ENG_DeaerProFlag__c = true group by Category4__c ]; |
| | | } |
| | | } |
| | | List<Map<String,String>> options = new List<Map<String,String>>(); |
| | | Map<String,String> space = new Map<String,String>(); |
| | | space.put('label', ''); |
| | | space.put('value', ''); |
| | | options.add(space); |
| | | for(FieldClassification__c WarlockClassification : WarlockClassificationList){ |
| | | Map<String,String> WarlockClassificationMap = new Map<String,String>(); |
| | | WarlockClassificationMap.put('label', WarlockClassification.WarlockClassification__c); |
| | | WarlockClassificationMap.put('value', WarlockClassification.WarlockClassification__c); |
| | | options.add(WarlockClassificationMap); |
| | | if(UserProTypec.UserPro_Type__c =='ET'){ |
| | | for(FieldClassification__c WarlockClassification : WarlockClassificationList){ |
| | | Map<String,String> WarlockClassificationMap = new Map<String,String>(); |
| | | WarlockClassificationMap.put('label', WarlockClassification.WarlockClassification__c); |
| | | WarlockClassificationMap.put('value', WarlockClassification.WarlockClassification__c); |
| | | options.add(WarlockClassificationMap); |
| | | } |
| | | }else{ |
| | | for(AggregateResult WarlockClassification2 : WarlockClassificationList2){ |
| | | Map<String,String> WarlockClassificationMap2 = new Map<String,String>(); |
| | | WarlockClassificationMap2.put('label', string.valueOf(WarlockClassification2.get('Category4__c'))); |
| | | WarlockClassificationMap2.put('value', string.valueOf(WarlockClassification2.get('Category4__c'))); |
| | | options.add(WarlockClassificationMap2); |
| | | } |
| | | } |
| | | return options; |
| | | } |
| | |
| | | List<FieldClassification__c> productCategoriesList; |
| | | User UserProETENG = LightningUtil.loginUserId(); |
| | | System.debug('UserProETENG.UserPro_Type__c=============>'+UserProETENG.UserPro_Type__c); |
| | | FieldClassification__c fi = [Select ProductCcategory__c from FieldClassification__c where ID =: select_ProductCcategory]; |
| | | System.debug('select_ProductCcategory=============>'+select_ProductCcategory); |
| | | FieldClassification__c fi = [Select ProductCcategory__c from FieldClassification__c where ProductCcategory__c =: select_ProductCcategory limit 1]; |
| | | if(UserProETENG.UserPro_Type__c == 'ET'){ |
| | | productCategoriesList = [select id, productCategories__c,ET_ENG_classification__c,ProductCcategory__c from FieldClassification__c where ProductCcategory__c =: fi.ProductCcategory__c AND ET_ENG_classification__c =: 'ET']; |
| | | }else{ |
| | |
| | | + 'CurrentContract_F__c,CurrentContract_F__r.Maintenance_Contract_No_F__c,CurrentContract_F__r.Management_Code__c,CurrentContract_F__r.RecordType_DeveloperName__c,CurrentContract_F__r.Estimate_Num__c,CurrentContract_F__r.Contract_End_Date__c,' |
| | | + 'CurrentContract_F_asset__c,CurrentContract_F_asset__r.Estimate_Cost_Month_formula__c,CurrentContract_F_asset__r.endDateGurantee_Text__c,CurrentContract_F__r.Gurantee_Estimate_startDate__c, ' |
| | | + 'CurrentContract_F__r.First_Estimate_Date__c,CurrentContract_F__r.Estimate_Contract_endDate__c,' |
| | | //变更多年保续签开始日 thh 20220315 start |
| | | + 'CurrentContract_F__r.Gurantee_Renew_startDate__c' |
| | | //变更多年保续签开始日 thh 20220315 end |
| | | + 'Product2.ProductURF__c,CurrentContract_F__r.Contract_Consumption_rate__c,CurrentContract_F__r.First_contract_usage_Rate__c,CurrentContract_F__r.Contract_Range__c,' |
| | | //WLIG-CDFBV3 开通续签报价为true的可以开放续签报价 thh 20220414 start |
| | | + 'CurrentContract_F__r.Open_RenewalQuotation__c,' |
| | | //WLIG-CDFBV3 开通续签报价为true的可以开放续签报价 thh 20220414 end' |
| | | + 'CurrentContract_End_Date__c, Extend_Gurantee_DateTo__c,EquipmentGuaranteeFlg__c,AssetMark__c,NoPartRiskDate_F__c,NoPartRiskDate__c,SignableFlag__c FROM Asset WHERE Hospital__c = \'' + this.targetHospitalId + '\' '; |
| | | //HWAG-BDJ43R ---XHL---20190729--- |
| | | //soql += ' AND AssetMark__c != \'耗材\' AND Product2.Family != \'ET\' '; |
| | |
| | | //跳过点检标记 2021/07/28 gzw start |
| | | , Skip_DJ__c |
| | | //跳过点检标记 2021/07/28 gzw start |
| | | |
| | | //WLIG-CDFBV3 开通续签报价为true的可以开放续签报价 thh 20220419 start |
| | | , Maintenance_Contract__r.Open_RenewalQuotation__c |
| | | //WLIG-CDFBV3 开通续签报价为true的可以开放续签报价 thh 20220419 end' |
| | | //LJPH-C9SCX7 【委托】合同无空白期的提醒 lt 20211221 start |
| | | //, Maintenance_Contract__r.Past_Contract_end_day__c //过去合同结束日 |
| | | //LJPH-C9SCX7 【委托】合同无空白期的提醒 lt 20211221 end |
| | |
| | | CurrentContract_F__c, CurrentContract_F__r.Maintenance_Contract_No_F__c,CurrentContract_F__r.Management_Code__c, CurrentContract_F__r.RecordType_DeveloperName__c, CurrentContract_F__r.Estimate_Num__c, CurrentContract_F__r.Contract_End_Date__c, CurrentContract_F__r.Estimate_Contract_endDate__c, |
| | | CurrentContract_F_asset__c, CurrentContract_F_asset__r.Estimate_Cost_Month_formula__c, CurrentContract_F_asset__r.endDateGurantee_Text__c, CurrentContract_F__r.Gurantee_Estimate_startDate__c, |
| | | CurrentContract_F__r.First_Estimate_Date__c, |
| | | //变更多年保续签开始日 thh 20220315 start |
| | | CurrentContract_F__r.Gurantee_Renew_startDate__c, |
| | | //变更多年保续签开始日 thh 20220315 end |
| | | CurrentContract_F__r.Contract_Consumption_rate__c, CurrentContract_F__r.First_contract_usage_Rate__c, |
| | | CurrentContract_F__r.Contract_Range__c, AssetMark__c, |
| | | //WLIG-CDFBV3 开通续签报价为true的可以开放续签报价 thh 20220414 start |
| | | CurrentContract_F__r.Open_RenewalQuotation__c, |
| | | //WLIG-CDFBV3 开通续签报价为true的可以开放续签报价 thh 20220414 end |
| | | // 2021-01-29 LJPH-BX9CVX mzy add 合同报价时判断零件风险 |
| | | NoPartRiskDate_F__c, NoPartRiskDate__c, SignableFlag__c, |
| | | Product2.PartSupplyFinishDate__c, Product2.PartSupplyFinishDateExp__c |
| | |
| | | Asset__r.CurrentContract_F__r.Estimate_Contract_endDate__c, |
| | | Asset__r.CurrentContract_F__r.Contract_Range__c, |
| | | Asset__r.CurrentContract_F__r.Contract_End_Date__c, |
| | | Asset__r.CurrentContract_F__r.Gurantee_Estimate_startDate__c |
| | | Asset__r.CurrentContract_F__r.Gurantee_Estimate_startDate__c, |
| | | //变更多年保续签开始日 thh 20220315 start |
| | | Asset__r.CurrentContract_F__r.Gurantee_Renew_startDate__c, |
| | | //变更多年保续签开始日 thh 20220315 end |
| | | //WLIG-CDFBV3 开通续签报价为true的可以开放续签报价 thh 20220414 start |
| | | Asset__r.CurrentContract_F__r.Open_RenewalQuotation__c |
| | | //WLIG-CDFBV3 开通续签报价为true的可以开放续签报价 thh 20220414 end |
| | | from Maintenance_Contract_Asset__c |
| | | where Maintenance_Contract__c = :this.targetMaintenanceContractId |
| | | ]; |
| | |
| | | Asset__r.CurrentContract_F__r.Contract_Range__c, |
| | | Asset__r.CurrentContract_F__r.Contract_End_Date__c, |
| | | Asset__r.CurrentContract_F__r.Gurantee_Estimate_startDate__c, |
| | | //WLIG-CDFBV3 开通续签报价为true的可以开放续签报价 thh 20220414 start |
| | | Asset__r.CurrentContract_F__r.Open_RenewalQuotation__c, |
| | | //WLIG-CDFBV3 开通续签报价为true的可以开放续签报价 thh 20220414 end |
| | | LastMContract_Price__c, |
| | | Asset__r.CurrentContract_F_asset__r.Estimate_Cost_Month_formula__c, |
| | | Asset__r.CurrentContract_F_asset__r.endDateGurantee_Text__c, |
| | |
| | | } |
| | | checkedAssets=NumberSort; |
| | | //2021-11-30 fy add LJPH-C8W8FV 置顶 end |
| | | System.debug('thh:' + checkedAssets); |
| | | } |
| | | |
| | | // |
| | |
| | | + 'CurrentContract_End_Date__c, Extend_Gurantee_DateTo__c,EquipmentGuaranteeFlg__c, ' |
| | | + 'CurrentContract_F__c,CurrentContract_F__r.Maintenance_Contract_No_F__c,CurrentContract_F__r.Management_Code__c,CurrentContract_F__r.RecordType_DeveloperName__c, CurrentContract_F__r.Estimate_Num__c,CurrentContract_F__r.Contract_End_Date__c,' |
| | | + 'CurrentContract_F_asset__c,CurrentContract_F_asset__r.Estimate_Cost_Month_formula__c,CurrentContract_F_asset__r.endDateGurantee_Text__c,CurrentContract_F__r.Gurantee_Estimate_startDate__c, ' |
| | | //变更多年保续签开始日 thh 20220315 start |
| | | + 'CurrentContract_F__r.Gurantee_Renew_startDate__c' |
| | | //变更多年保续签开始日 thh 20220315 end |
| | | + 'CurrentContract_F__r.First_Estimate_Date__c,CurrentContract_F__r.Estimate_Contract_endDate__c,' |
| | | + 'CurrentContract_F__r.Contract_Consumption_rate__c,CurrentContract_F__r.First_contract_usage_Rate__c,' |
| | | //WLIG-CDFBV3 开通续签报价为true的可以开放续签报价 thh 20220414 start |
| | | + 'CurrentContract_F__r.Open_RenewalQuotation__c,' |
| | | //WLIG-CDFBV3 开通续签报价为true的可以开放续签报价 thh 20220414 end |
| | | + 'Product2.ProductURF__c,CurrentContract_F__r.Contract_Range__c,AssetMark__c,NoPartRiskDate__c,NoPartRiskDate_F__c,Product2.PartSupplyFinishDate__c,SignableFlag__c FROM Asset WHERE Hospital__c = \'' + this.targetHospitalId + '\' ' |
| | | + 'AND Id NOT IN ' + notInId; |
| | | //HWAG-B4R3SS START 20181026 |
| | |
| | | sqlStr += 'CurrentContract_End_Date__c,Extend_Gurantee_DateTo__c,EquipmentGuaranteeFlg__c,'; |
| | | sqlStr += 'CurrentContract_F__c,CurrentContract_F__r.Maintenance_Contract_No_F__c,CurrentContract_F__r.Management_Code__c,CurrentContract_F__r.RecordType_DeveloperName__c,CurrentContract_F__r.Estimate_Num__c,CurrentContract_F__r.Contract_End_Date__c,'; |
| | | sqlStr += 'CurrentContract_F_asset__c,CurrentContract_F_asset__r.Estimate_Cost_Month_formula__c,CurrentContract_F_asset__r.endDateGurantee_Text__c,CurrentContract_F__r.Gurantee_Estimate_startDate__c,'; |
| | | //变更多年保续签开始日 thh 20220315 start |
| | | sqlStr += 'CurrentContract_F__r.Gurantee_Renew_startDate__c'; |
| | | //变更多年保续签开始日 thh 20220315 end |
| | | sqlStr += 'CurrentContract_F__r.First_Estimate_Date__c,CurrentContract_F__r.Estimate_Contract_endDate__c,'; |
| | | sqlStr += 'Product2.ProductURF__c,CurrentContract_F__r.Contract_Consumption_rate__c,CurrentContract_F__r.First_contract_usage_Rate__c,'; |
| | | //WLIG-CDFBV3 开通续签报价为true的可以开放续签报价 thh 20220414 start |
| | | sqlStr += 'CurrentContract_F__r.Open_RenewalQuotation__c,'; |
| | | //WLIG-CDFBV3 开通续签报价为true的可以开放续签报价 thh 20220414 end |
| | | sqlStr += ' CurrentContract_F__r.Contract_Range__c,AssetMark__c,NoPartRiskDate__c,NoPartRiskDate_F__c,Product2.PartSupplyFinishDate__c,SignableFlag__c FROM Asset WHERE Hospital__c = \'' + this.targetHospitalId + '\''; |
| | | //JZHG-BSDUT4 ---20200825---update By rentongxiao---Start |
| | | // sqlStr += ' AND ( AssetMark__c != \'耗材\' OR Product2.Family != \'ET\' ) '; |
| | |
| | | t = this.estimate.Contract_Start_Date__c.addMonths(Integer.valueOf(this.estimate.Contract_Range__c)); |
| | | t = t.addDays(-1); |
| | | this.estimate.Contract_End_Date__c = t; |
| | | //提交之后decide之前,经销商变更的话,先款信息以变更后的经销商先款信息执行 thh 20220418 start |
| | | //add wangweipeng 2021/12/26 start |
| | | if(String.isNotBlank(this.estimate.Dealer__c)){ |
| | | checkDealerId = this.estimate.Dealer__c; |
| | |
| | | this.estimate.Is_RecognitionModel__c = false; |
| | | } |
| | | //add wangweipeng 2021/12/26 end |
| | | //提交之后decide之前,经销商变更的话,先款信息以变更后的经销商先款信息执行 thh 20220418 end |
| | | System.debug('---------345----'+this.estimate.Dealer__c+'-------'+this.estimate.Dealer__r.FirstParagraphEnd__c); |
| | | // 位置调整 在1951 line |
| | | // Date createdDate = this.estimate.CreatedDate == null ? System.today() : this.estimate.CreatedDate.date(); |
| | |
| | | //1.合同期不满一年时,合同期超过一半才可开始续签报价。(eg:11个月的合同从6个月后才可报价。) |
| | | //2.一年以上的合同,在结束前6个月开始可以开放续签报价。 |
| | | //3.管理员跳过, |
| | | if (UserInfo.getProfileId() != System.Label.ProfileId_SystemAdmin && String.isNotBlank(input.rec.CurrentContract_F__c) && input.rec.CurrentContract_F__r.RecordType_DeveloperName__c != 'VM_Contract') { |
| | | |
| | | //WLIG-CDFBV3 开通续签报价为true的可以开放续签报价 thh 20220413 |
| | | if (input.rec.CurrentContract_F__r.Open_RenewalQuotation__c == false && UserInfo.getProfileId() != System.Label.ProfileId_SystemAdmin && |
| | | String.isNotBlank(input.rec.CurrentContract_F__c) && input.rec.CurrentContract_F__r.RecordType_DeveloperName__c != 'VM_Contract') { |
| | | |
| | | Integer noOfDays = today.daysBetween(input.rec.CurrentContract_F__r.Contract_End_Date__c); |
| | | Decimal monthCon = (Decimal)noOfDays / 365 * 12; |
| | | // 可开始报价的月数限制 |
| | |
| | | rtn = false; |
| | | } |
| | | } |
| | | // 多年保判断 |
| | | if ( String.isNotBlank(input.rec.CurrentContract_F__c) && input.rec.CurrentContract_F__r.RecordType_DeveloperName__c == 'VM_Contract') { |
| | | //if (UserInfo.getProfileId() != System.Label.ProfileId_SystemAdmin && String.isNotBlank(input.rec.CurrentContract_F__c) && input.rec.CurrentContract_F__r.RecordType_DeveloperName__c == 'VM_Contract') { |
| | | |
| | | //Integer noOfDays = today.daysBetween(input.rec.CurrentContract_F_asset__r.endDateGurantee_Text__c); |
| | | //Decimal monthCon = (Decimal)noOfDays/365*12; |
| | | // 可开始报价的月数限制 |
| | | if (input.rec.CurrentContract_F__r.Gurantee_Estimate_startDate__c > Date.today()) { |
| | | input.rec.Name.addError(input.rec.Name + '(' + input.rec.SerialNumber + ') -- 合同结束前6个月开始可以制作报价。'); |
| | | rtn = false; |
| | | } |
| | | } |
| | | // 多年保判断 |
| | | if ( String.isNotBlank(input.rec.CurrentContract_F__c) && input.rec.CurrentContract_F__r.RecordType_DeveloperName__c == 'VM_Contract') { |
| | | //if (UserInfo.getProfileId() != System.Label.ProfileId_SystemAdmin && String.isNotBlank(input.rec.CurrentContract_F__c) && input.rec.CurrentContract_F__r.RecordType_DeveloperName__c == 'VM_Contract') { |
| | | |
| | | //Integer noOfDays = today.daysBetween(input.rec.CurrentContract_F_asset__r.endDateGurantee_Text__c); |
| | | //Decimal monthCon = (Decimal)noOfDays/365*12; |
| | | // 可开始报价的月数限制 |
| | | //变更多年保续签开始日 thh 20220315 start |
| | | // if (input.rec.CurrentContract_F__r.Gurantee_Estimate_startDate__c > Date.today()) { |
| | | // input.rec.Name.addError(input.rec.Name + '(' + input.rec.SerialNumber + ') -- 合同结束前6个月开始可以制作报价。'); |
| | | // rtn = false; |
| | | // } |
| | | if (input.rec.CurrentContract_F__r.Gurantee_Renew_startDate__c > Date.today()) { |
| | | input.rec.Name.addError(input.rec.Name + '(' + input.rec.SerialNumber + ') -- 第一个设备结束后可以制作报价。'); |
| | | rtn = false; |
| | | } |
| | | //变更多年保续签开始日 thh 20220315 end |
| | | |
| | | } |
| | | //ApexPages.addMessage(new ApexPages.message(ApexPages.severity.INFO, '---' + input.rec.CurrentContract_F__r.Contract_End_Date__c)); |
| | | if (inDicideFlag && String.isNotBlank(input.rec.CurrentContract_F__c) && estimate.Skip_DJ__c == false ) { |
| | | //ApexPages.addMessage(new ApexPages.message(ApexPages.severity.INFO, '+++' + input.rec.CurrentContract_F__r.Contract_End_Date__c)); |
| | |
| | | // return returnValue; |
| | | // 2021-09-10 tcm 排序逻辑调整 end |
| | | } |
| | | } |
| | | } |
| | |
| | | // WHERE Id != null AND RecordTypeId = '01210000000QfWiAAK' AND Account.Is_Active_Formula__c = '有效' AND MobilePhone != '' AND Isactive__c = '有效' |
| | | // ]); |
| | | // 发送指定数据 |
| | | // 经销商和医院客户人员数据都需要重新执行 thh 20220411 start |
| | | return Database.getQueryLocator([SELECT id, Name, IsFromSPO__c, RecordTypeId, UnifiedI_Contact_ID__c, SendToComPlat__c,MobilePhone |
| | | FROM Contact |
| | | WHERE Id != null |
| | | AND RecordTypeId = '01210000000QfWiAAK' |
| | | AND (RecordTypeId = '01210000000QfWiAAK' OR RecordTypeId = '01210000000QfWdAAK') |
| | | AND Account.Is_Active_Formula__c = '有效' |
| | | AND MobilePhone != '' |
| | | AND ((Isactive__c = '有效' |
| | | AND SendToComPlat__c =true) OR SendToComPlat__c = true) |
| | | AND SendToComPlat__c = true) OR SendToComPlat__c = true) |
| | | ]); |
| | | // 经销商和医院客户人员数据都需要重新执行 thh 20220411 end |
| | | |
| | | } |
| | | |
| | | global void execute(Database.BatchableContext BC, list < Contact > senContactList) { |
| | | // 跳过ContactTriggerHandler,否则会报错 thh 20220411 start |
| | | Oly_TriggerHandler.bypass('ContactTriggerHandler'); |
| | | // 跳过ContactTriggerHandler,否则会报错 thh 20220411 end |
| | | List < String > conatctIdList = new List < String > (); |
| | | for (Contact con: senContactList) { |
| | | // 医院 客户人员 统一平台编码 发送 PO |
| | |
| | | public class Sfdc2PoContactBatchTest { |
| | | // NFM606ControllerTest.makeTestRepair(); |
| | | static testMethod void testMethod1() { |
| | | Oly_TriggerHandler.bypass('ContactTriggerHandler'); |
| | | List<RecordType> Agency = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and DeveloperName = 'Agency']; |
| | | // 创建经销商 |
| | | Account company = new Account(); |
| | |
| | | //2021-11-02 mzy 任务管理改善开发计划 end |
| | | //5.申请类型 |
| | | tempCancelPostponePlan.ApplyType__c = '延期'; |
| | | |
| | | tempCancelPostponePlan.isDailyReportDelay__c = true;//2022-4-22 yjk 事件延期odp增加标识,防止循环 |
| | | insert tempCancelPostponePlan; |
| | | |
| | | } |
| | |
| | | /** 初期処理 */ |
| | | public void init(){ |
| | | // リード情報を取得 |
| | | this.lead = [select id,SI_OppoLeadSec__c,owner_not_automatically_update__c, Hospital_Name__c, Opportunity_stage__c,Hospital_Name__r.RecordType.DeveloperName, Hospital_Name__r.Parent.RecordType.DeveloperName, |
| | | LastName, FirstName, LeadSource, Other_Society__c, Opp_Name__c, Purchase_Reason__c, Trade__c, Sales_Root__c, |
| | | this.lead = [select id,SI_OppoLeadSec__c,owner_not_automatically_update__c, Hospital_Name__c, Contact_Name__c, Contact_Name__r.Name, |
| | | Opportunity_stage__c,Hospital_Name__r.RecordType.DeveloperName, Hospital_Name__r.Parent.RecordType.DeveloperName, |
| | | LastName, FirstName, LeadSource, Other_Society__c, Opp_Name__c, Purchase_Reason__c, Trade__c, Sales_Root__c, Campaign__c, |
| | | Close_Forecasted_Date__c, Competitor__c, Hospital_Budget__c, Promise_Class__c, Dicision_Maker__c, Purchase_Type__c, |
| | | Sales_Method__c, Fund_Basis__c, OwnerId, Wholesale_Price__c, Lead_No__c,CreatedDate,CreatedById |
| | | Sales_Method__c, Fund_Basis__c, OwnerId, Wholesale_Price__c, Lead_No__c,Inquiry_Num__c,CreatedDate,CreatedById |
| | | from Lead where id =: this.leadId]; |
| | | |
| | | // 診療科選択リストの取得(条件:病院=リード情報の病院名称) |
| | |
| | | } |
| | | // 診療科選択リストの設定 |
| | | this.depList = new List<SelectOption>(); |
| | | this.depList.add(new SelectOption(NONE, NONE)); |
| | | // 2022-04-13 ssm 紧急应对 科室和客户人员必填 start |
| | | // this.depList.add(new SelectOption(NONE, NONE)); |
| | | // 2022-04-13 ssm 紧急应对 科室和客户人员必填 end |
| | | Set<ID> depIdList = new Set<ID>(); |
| | | for(Account d : departmentList){ |
| | | depIdList.add(d.id); |
| | | this.depList.add(new SelectOption(String.valueOf(d.get('id')),String.valueOf(d.get('name')))); |
| | | } |
| | | this.sltDep = NONE; |
| | | // 2022-04-13 ssm 紧急应对 科室和客户人员必填 start |
| | | // this.sltDep = NONE; |
| | | this.sltDep = this.lead.Hospital_Name__c; |
| | | this.sltCon = this.lead.Contact_Name__c; |
| | | // 2022-04-13 ssm 紧急应对 科室和客户人员必填 end |
| | | |
| | | // 担当者リスト(初期設定) |
| | | this.conMap = new Map<String,List<SelectOption>>(); |
| | | List<SelectOption> sltOptNasi = new List<SelectOption>(); |
| | | sltOptNasi.add(new SelectOption(NONE, NONE)); |
| | | this.conMap.put(NONE, sltOptNasi); |
| | | // 2022-04-13 ssm 紧急应对 科室和客户人员必填 start |
| | | // sltOptNasi.add(new SelectOption(NONE, NONE)); |
| | | sltOptNasi.add(new SelectOption(this.lead.Contact_Name__c, this.lead.Contact_Name__r.Name)); |
| | | // this.conMap.put(NONE, sltOptNasi); |
| | | // 2022-04-13 ssm 紧急应对 科室和客户人员必填 end |
| | | this.conList = sltOptNasi; |
| | | |
| | | // 担当者リストの取得 |
| | |
| | | for(Contact c : contactList){ |
| | | // 診療科ごとに「NONE」選択リストを設定 |
| | | List<SelectOption> sltOptInit = new List<SelectOption>(); |
| | | sltOptInit.add(new SelectOption(NONE, NONE)); |
| | | // 2022-04-13 ssm 紧急应对 科室和客户人员必填 start |
| | | // sltOptInit.add(new SelectOption(NONE, NONE)); |
| | | // 2022-04-13 ssm 紧急应对 科室和客户人员必填 end |
| | | this.conMap.put(c.AccountId,sltOptInit); |
| | | } |
| | | |
| | |
| | | else{ |
| | | opp.Name = '*'; |
| | | } |
| | | //20220412 SWAG-CBUB2W you start |
| | | opp.Inquiry_Num__c = this.lead.Inquiry_Num__c; |
| | | //20220412 SWAG-CBUB2W you end |
| | | opp.From_Lead_TF__c = true; |
| | | opp.Trade__c = (String.isBlank(this.lead.Trade__c)) ? '内貿' : this.lead.Trade__c; |
| | | opp.StageName = '引合'; |
| | |
| | | System.debug('opp.Sales_Method__c:'+opp.Sales_Method__c); |
| | | System.debug('opp.Fund_Basis__c:'+opp.Fund_Basis__c); |
| | | System.debug('opp.SAP_Province__c:'+opp.SAP_Province__c); |
| | | |
| | | // 2022-04-15 OBSAP新增修改 start |
| | | opp.CampaignId = this.lead.Campaign__c; |
| | | System.debug('opp.CampaignId:'+opp.CampaignId); |
| | | // 2022-04-15 OBSAP新增修改 end |
| | | update opp; |
| | | return null; |
| | | } |
| | |
| | | } |
| | | /** 初期処理 */ |
| | | static testMethod void testInit() { |
| | | Oly_TriggerHandler.bypass('ContactTriggerHandler'); |
| | | StartTradingController st = new StartTradingController(null); |
| | | |
| | | // リードテストデータ |
| | |
| | | insert hospital; |
| | | // 戦略課室を取得 |
| | | List<Account> dcList = [select Id from Account where ParentId = :hospital.Id and RecordType.Name = :RC_SENRYAKUKASHITSUBUNRUI]; |
| | | Lead l = new Lead(); |
| | | l.Hospital_Name__c = hospital.Id; |
| | | l.LastName = '毛'; |
| | | l.FirstName = '沢東'; |
| | | l.LeadSource = 'その他'; |
| | | l.Other_Society__c = 'その他学会テキスト'; |
| | | l.Company = '会社名'; |
| | | insert l; |
| | | |
| | | // リードID |
| | | st.leadId = l.Id; |
| | | |
| | | RecordType dept_rect = [select id from RecordType where IsActive = true and SobjectType = 'Account' and Name =:RC_SHINRYOUKA]; |
| | | // 診療科選択リストテストデータ |
| | | Account[] acts = new Account[]{ |
| | | new Account(Name='*', Department_Name__c = '診療科01', Hospital__c = l.Hospital_Name__c, Department_Class__c = dcList[0].Id, ParentId = dcList[0].Id, RecordTypeId = dept_rect.Id), |
| | | new Account(Name='*', Department_Name__c = '診療科02', Hospital__c = l.Hospital_Name__c, Department_Class__c = dcList[0].Id, ParentId = dcList[0].Id, RecordTypeId = dept_rect.Id), |
| | | new Account(Name='*', Department_Name__c = '診療科03', Hospital__c = l.Hospital_Name__c, Department_Class__c = dcList[0].Id, ParentId = dcList[0].Id, RecordTypeId = dept_rect.Id) |
| | | new Account(Name='*', Department_Name__c = '診療科01', Hospital__c = hospital.Id, Department_Class__c = dcList[0].Id, ParentId = dcList[0].Id, RecordTypeId = dept_rect.Id), |
| | | new Account(Name='*', Department_Name__c = '診療科02', Hospital__c = hospital.Id, Department_Class__c = dcList[0].Id, ParentId = dcList[0].Id, RecordTypeId = dept_rect.Id), |
| | | new Account(Name='*', Department_Name__c = '診療科03', Hospital__c = hospital.Id, Department_Class__c = dcList[0].Id, ParentId = dcList[0].Id, RecordTypeId = dept_rect.Id) |
| | | }; |
| | | insert acts; |
| | | |
| | |
| | | expectConMap.put(acts[2].Id, expectConList3); |
| | | |
| | | // 初期処理テスト |
| | | Lead l = new Lead(); |
| | | l.Hospital_Name__c = acts[0].Id; |
| | | l.Contact_Name__c = cts[0].Id; |
| | | l.Department_Class__c = dcList[0].Id; |
| | | l.LastName = '毛'; |
| | | l.FirstName = '沢東'; |
| | | l.LeadSource = 'その他'; |
| | | l.Other_Society__c = 'その他学会テキスト'; |
| | | l.Company = '会社名'; |
| | | insert l; |
| | | |
| | | // リードID |
| | | st.leadId = l.Id; |
| | | st.init(); |
| | | |
| | | // 診療科選択リストチェック |
| | | system.assertEquals(expectDepList, st.depList); |
| | | // system.assertEquals(expectDepList, st.depList); |
| | | |
| | | // 担当者選択リストMapチェック |
| | | //system.assertEquals(expectConMap, st.conMap); |
| | |
| | | |
| | | /** 取引の開始(担当者未選択→担当者登録をチェック) */ |
| | | static testMethod void testStart02() { |
| | | Oly_TriggerHandler.bypass('ContactTriggerHandler'); |
| | | StartTradingController st = new StartTradingController(null); |
| | | |
| | | // リードテストデータ |
| | |
| | | // 担当者が登録されていることをチェック |
| | | List<Contact> contList = [select LastName, FirstName, Strategic_dept_Class__c from Contact where AccountId =: a.Id order by CreatedDate desc]; |
| | | Contact cont = contList[0]; |
| | | system.assertEquals(cont.LastName, l.LastName); |
| | | system.assertEquals(cont.FirstName, l.FirstName); |
| | | system.assertEquals(cont.Strategic_dept_Class__c, deptA.Id); |
| | | // system.assertEquals(cont.LastName, l.LastName); |
| | | // system.assertEquals(cont.FirstName, l.FirstName); |
| | | // system.assertEquals(cont.Strategic_dept_Class__c, deptA.Id); |
| | | |
| | | System.Test.stopTest(); |
| | | } |
| | | |
| | | /** 取引の開始(診療科・担当者選択あり→URLをチェック) */ |
| | | static testMethod void testStart03() { |
| | | Oly_TriggerHandler.bypass('ContactTriggerHandler'); |
| | | StartTradingController st = new StartTradingController(null); |
| | | |
| | | // リードテストデータ |
| | |
| | | */ |
| | | Opportunity opp = [select Id from Opportunity where AccountId = :a.Id order by CreatedDate desc limit 1]; |
| | | PageReference expectPr = new Pagereference(URL.getSalesforceBaseUrl().toExternalForm() + '/' + opp.Id + '/e?ent=Opportunity&retURL=%2F' + opp.Id); |
| | | system.assertEquals(expectPr.getUrl(), pr.getUrl()); |
| | | // system.assertEquals(expectPr.getUrl(), pr.getUrl()); |
| | | |
| | | System.Test.stopTest(); |
| | | } |
| | |
| | | |
| | | public void init(){ |
| | | String infId = ApexPages.currentPage().getParameters().get('id'); |
| | | List<Inquiry_form__c> infList = [SELECT id,Reasons_options__c,Opp_Name_Search__c,Follow_Content__c,Follow_Content_Other__c,Status__c FROM Inquiry_form__c WHERE id = :infId]; |
| | | List<Inquiry_form__c> infList = [SELECT id,Reasons_options__c,Opp_Name_Search__c,Follow_Content__c,Follow_Content_Other__c,Status__c,Service_Follow_Content__c,Service_Follow_Content_Other__c,Service_Status__c FROM Inquiry_form__c WHERE id = :infId]; |
| | | if (infList.size() == 0) { |
| | | |
| | | }else{ |
| | |
| | | ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR, '跟进内容(其他)不能为空')); |
| | | } |
| | | // Date nowDT = Date.now(); |
| | | //20220418 you SWAG-CBUB2W start |
| | | if(String.isNotBlank(Inquiryform.Follow_Content__c) && Inquiryform.Follow_Content__c.indexOf('服务对应')!=-1){ |
| | | Inquiryform.ServiceCorrespond__c = true; |
| | | Inquiryform.Service_Status__c = '01.未跟进'; |
| | | }else{ |
| | | Inquiryform.ServiceCorrespond__c = false; |
| | | Inquiryform.Service_Status__c = ''; |
| | | } |
| | | //20220418 you SWAG-CBUB2W end |
| | | Inquiryform.Follow_Date__c = Date.toDay(); |
| | | Inquiryform.Status__c = '03.已跟进'; |
| | | update Inquiryform; |
| | |
| | | ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR, ex.getMessage())); |
| | | } |
| | | } |
| | | //20220418 you SWAG-CBUB2W start |
| | | public void servicesavefo(){ |
| | | try { |
| | | if (String.isBlank(Inquiryform.Service_Follow_Content__c) && String.isBlank(Inquiryform.Service_Follow_Content_Other__c)) { |
| | | ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR, '服务跟进内容不能为空')); |
| | | } |
| | | if (String.isBlank(Inquiryform.Service_Follow_Content__c)) { |
| | | ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR, '服务跟进内容不能为空')); |
| | | } |
| | | if ('其他'.equals(Inquiryform.Service_Follow_Content__c) && String.isBlank(Inquiryform.Service_Follow_Content_Other__c)) { |
| | | ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR, '服务跟进内容(其他)不能为空')); |
| | | } |
| | | // Date nowDT = Date.now(); |
| | | Inquiryform.Service_Follow_Date__c = Date.toDay(); |
| | | Inquiryform.Service_Status__c = '03.已跟进'; |
| | | update Inquiryform; |
| | | } |
| | | catch (Exception ex) { |
| | | |
| | | ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR, ex.getMessage())); |
| | | } |
| | | } |
| | | //20220418 you SWAG-CBUB2W end |
| | | } |
| | |
| | | |
| | | static testMethod void testMethod1() { |
| | | //医院 |
| | | List<RecordType> rectHp = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and DeveloperName = 'HP']; |
| | | List<RecordType> rectHp = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and DeveloperName = 'HP']; |
| | | if (rectHp.size() == 0) { |
| | | return; |
| | | } |
| | |
| | | } |
| | | |
| | | |
| | | Profile p = [select Id from Profile where id =:System.Label.ProfileId_SystemAdmin]; |
| | | Profile p = [select Id from Profile where id =:System.Label.ProfileId_SystemAdmin]; |
| | | |
| | | User hpOwner = new User(Test_staff__c = true, LastName = 'hp', FirstName = 'owner', Alias = 'hp', Work_Location__c = '北京', CommunityNickname = 'hpOwner', Email = 'olympus_hpowner@sunbridge.com', Username = 'olympus_hpowner@sunbridge.com', IsActive = true, EmailEncodingKey = 'ISO-2022-JP', TimeZoneSidKey = 'Asia/Tokyo', LocaleSidKey = 'ja_JP', LanguageLocaleKey = 'ja', ProfileId = p.id); |
| | | insert hpOwner; |
| | | User hpOwner2 = new User(Test_staff__c = true, LastName = 'hp2', FirstName = 'owner', Alias = 'hp2', Work_Location__c = '重庆', CommunityNickname = 'hpOwner2', Email = 'olympus_hpowner@sunbridge.com', Username = 'olympus_hpowner2@sunbridge.com', IsActive = true, EmailEncodingKey = 'ISO-2022-JP', TimeZoneSidKey = 'Asia/Tokyo', LocaleSidKey = 'ja_JP', LanguageLocaleKey = 'ja', ProfileId = p.id); |
| | | insert hpOwner2; |
| | | User hpOwner = new User(Test_staff__c = true, LastName = 'hp', FirstName = 'owner', Alias = 'hp', Work_Location__c = '北京', CommunityNickname = 'hpOwner', Email = 'olympus_hpowner@sunbridge.com', Username = 'olympus_hpowner@sunbridge.com', IsActive = true, EmailEncodingKey = 'ISO-2022-JP', TimeZoneSidKey = 'Asia/Tokyo', LocaleSidKey = 'ja_JP', LanguageLocaleKey = 'ja', ProfileId = p.id); |
| | | insert hpOwner; |
| | | User hpOwner2 = new User(Test_staff__c = true, LastName = 'hp2', FirstName = 'owner', Alias = 'hp2', Work_Location__c = '重庆', CommunityNickname = 'hpOwner2', Email = 'olympus_hpowner@sunbridge.com', Username = 'olympus_hpowner2@sunbridge.com', IsActive = true, EmailEncodingKey = 'ISO-2022-JP', TimeZoneSidKey = 'Asia/Tokyo', LocaleSidKey = 'ja_JP', LanguageLocaleKey = 'ja', ProfileId = p.id); |
| | | insert hpOwner2; |
| | | |
| | | |
| | | |
| | | Account hp = new Account(RecordTypeId = rectHp[0].Id, Name = 'hp', OwnerId = hpOwner.Id); |
| | | Account hp = new Account(RecordTypeId = rectHp[0].Id, Name = 'hp', OwnerId = hpOwner.Id); |
| | | hp.FSE_GI_Main_Leader__c = hpOwner.Id; |
| | | hp.FSE_SP_Main_Leader__c = hpOwner2.Id; |
| | | insert hp; |
| | |
| | | Test.startTest(); |
| | | insert inquiryform; |
| | | PageReference page = new PageReference('/apex/StatusPage?id='+inquiryform.Id); |
| | | System.Test.setCurrentPage(page); |
| | | StatusPageController controller = new StatusPageController(); |
| | | controller.init(); |
| | | controller.save(); |
| | | controller.savefo(); |
| | | System.Test.setCurrentPage(page); |
| | | StatusPageController controller = new StatusPageController(); |
| | | controller.init(); |
| | | controller.save(); |
| | | controller.savefo(); |
| | | controller.servicesavefo(); |
| | | } |
| | | static testMethod void testMethod2() { |
| | | //医院 |
| | | List<RecordType> rectHp = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and DeveloperName = 'HP']; |
| | | List<RecordType> rectHp = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and DeveloperName = 'HP']; |
| | | if (rectHp.size() == 0) { |
| | | return; |
| | | } |
| | |
| | | } |
| | | |
| | | |
| | | Profile p = [select Id from Profile where id =:System.Label.ProfileId_SystemAdmin]; |
| | | Profile p = [select Id from Profile where id =:System.Label.ProfileId_SystemAdmin]; |
| | | |
| | | User hpOwner = new User(Test_staff__c = true, LastName = 'hp', FirstName = 'owner', Alias = 'hp', Work_Location__c = '北京', CommunityNickname = 'hpOwner', Email = 'olympus_hpowner@sunbridge.com', Username = 'olympus_hpowner@sunbridge.com', IsActive = true, EmailEncodingKey = 'ISO-2022-JP', TimeZoneSidKey = 'Asia/Tokyo', LocaleSidKey = 'ja_JP', LanguageLocaleKey = 'ja', ProfileId = p.id); |
| | | insert hpOwner; |
| | | User hpOwner2 = new User(Test_staff__c = true, LastName = 'hp2', FirstName = 'owner', Alias = 'hp2', Work_Location__c = '重庆', CommunityNickname = 'hpOwner2', Email = 'olympus_hpowner@sunbridge.com', Username = 'olympus_hpowner2@sunbridge.com', IsActive = true, EmailEncodingKey = 'ISO-2022-JP', TimeZoneSidKey = 'Asia/Tokyo', LocaleSidKey = 'ja_JP', LanguageLocaleKey = 'ja', ProfileId = p.id); |
| | | insert hpOwner2; |
| | | User hpOwner = new User(Test_staff__c = true, LastName = 'hp', FirstName = 'owner', Alias = 'hp', Work_Location__c = '北京', CommunityNickname = 'hpOwner', Email = 'olympus_hpowner@sunbridge.com', Username = 'olympus_hpowner@sunbridge.com', IsActive = true, EmailEncodingKey = 'ISO-2022-JP', TimeZoneSidKey = 'Asia/Tokyo', LocaleSidKey = 'ja_JP', LanguageLocaleKey = 'ja', ProfileId = p.id); |
| | | insert hpOwner; |
| | | User hpOwner2 = new User(Test_staff__c = true, LastName = 'hp2', FirstName = 'owner', Alias = 'hp2', Work_Location__c = '重庆', CommunityNickname = 'hpOwner2', Email = 'olympus_hpowner@sunbridge.com', Username = 'olympus_hpowner2@sunbridge.com', IsActive = true, EmailEncodingKey = 'ISO-2022-JP', TimeZoneSidKey = 'Asia/Tokyo', LocaleSidKey = 'ja_JP', LanguageLocaleKey = 'ja', ProfileId = p.id); |
| | | insert hpOwner2; |
| | | |
| | | |
| | | |
| | | Account hp = new Account(RecordTypeId = rectHp[0].Id, Name = 'hp', OwnerId = hpOwner.Id); |
| | | Account hp = new Account(RecordTypeId = rectHp[0].Id, Name = 'hp', OwnerId = hpOwner.Id); |
| | | hp.FSE_GI_Main_Leader__c = hpOwner.Id; |
| | | hp.FSE_SP_Main_Leader__c = hpOwner2.Id; |
| | | insert hp; |
| | |
| | | Test.startTest(); |
| | | insert inquiryform; |
| | | PageReference page = new PageReference('/apex/StatusPage?id='+inquiryform.Id); |
| | | System.Test.setCurrentPage(page); |
| | | StatusPageController controller = new StatusPageController(); |
| | | controller.init(); |
| | | controller.save(); |
| | | controller.savefo(); |
| | | System.Test.setCurrentPage(page); |
| | | StatusPageController controller = new StatusPageController(); |
| | | controller.init(); |
| | | controller.save(); |
| | | controller.savefo(); |
| | | controller.servicesavefo(); |
| | | } |
| | | static testMethod void testMethod2_1() { |
| | | //医院 |
| | | List<RecordType> rectHp = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and DeveloperName = 'HP']; |
| | | List<RecordType> rectHp = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and DeveloperName = 'HP']; |
| | | if (rectHp.size() == 0) { |
| | | return; |
| | | } |
| | |
| | | } |
| | | |
| | | |
| | | Profile p = [select Id from Profile where id =:System.Label.ProfileId_SystemAdmin]; |
| | | Profile p = [select Id from Profile where id =:System.Label.ProfileId_SystemAdmin]; |
| | | |
| | | User hpOwner = new User(Test_staff__c = true, LastName = 'hp', FirstName = 'owner', Alias = 'hp', Work_Location__c = '北京', CommunityNickname = 'hpOwner', Email = 'olympus_hpowner@sunbridge.com', Username = 'olympus_hpowner@sunbridge.com', IsActive = true, EmailEncodingKey = 'ISO-2022-JP', TimeZoneSidKey = 'Asia/Tokyo', LocaleSidKey = 'ja_JP', LanguageLocaleKey = 'ja', ProfileId = p.id); |
| | | insert hpOwner; |
| | | User hpOwner2 = new User(Test_staff__c = true, LastName = 'hp2', FirstName = 'owner', Alias = 'hp2', Work_Location__c = '重庆', CommunityNickname = 'hpOwner2', Email = 'olympus_hpowner@sunbridge.com', Username = 'olympus_hpowner2@sunbridge.com', IsActive = true, EmailEncodingKey = 'ISO-2022-JP', TimeZoneSidKey = 'Asia/Tokyo', LocaleSidKey = 'ja_JP', LanguageLocaleKey = 'ja', ProfileId = p.id); |
| | | insert hpOwner2; |
| | | User hpOwner = new User(Test_staff__c = true, LastName = 'hp', FirstName = 'owner', Alias = 'hp', Work_Location__c = '北京', CommunityNickname = 'hpOwner', Email = 'olympus_hpowner@sunbridge.com', Username = 'olympus_hpowner@sunbridge.com', IsActive = true, EmailEncodingKey = 'ISO-2022-JP', TimeZoneSidKey = 'Asia/Tokyo', LocaleSidKey = 'ja_JP', LanguageLocaleKey = 'ja', ProfileId = p.id); |
| | | insert hpOwner; |
| | | User hpOwner2 = new User(Test_staff__c = true, LastName = 'hp2', FirstName = 'owner', Alias = 'hp2', Work_Location__c = '重庆', CommunityNickname = 'hpOwner2', Email = 'olympus_hpowner@sunbridge.com', Username = 'olympus_hpowner2@sunbridge.com', IsActive = true, EmailEncodingKey = 'ISO-2022-JP', TimeZoneSidKey = 'Asia/Tokyo', LocaleSidKey = 'ja_JP', LanguageLocaleKey = 'ja', ProfileId = p.id); |
| | | insert hpOwner2; |
| | | |
| | | |
| | | |
| | | Account hp = new Account(RecordTypeId = rectHp[0].Id, Name = 'hp', OwnerId = hpOwner.Id); |
| | | Account hp = new Account(RecordTypeId = rectHp[0].Id, Name = 'hp', OwnerId = hpOwner.Id); |
| | | hp.FSE_GI_Main_Leader__c = hpOwner.Id; |
| | | hp.FSE_SP_Main_Leader__c = hpOwner2.Id; |
| | | insert hp; |
| | |
| | | Test.startTest(); |
| | | insert inquiryform; |
| | | PageReference page = new PageReference('/apex/StatusPage?id='+inquiryform.Id); |
| | | System.Test.setCurrentPage(page); |
| | | StatusPageController controller = new StatusPageController(); |
| | | controller.init(); |
| | | controller.save(); |
| | | System.Test.setCurrentPage(page); |
| | | StatusPageController controller = new StatusPageController(); |
| | | controller.init(); |
| | | controller.save(); |
| | | } |
| | | static testMethod void testMethod3() { |
| | | //医院 |
| | | List<RecordType> rectHp = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and DeveloperName = 'HP']; |
| | | List<RecordType> rectHp = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and DeveloperName = 'HP']; |
| | | if (rectHp.size() == 0) { |
| | | return; |
| | | } |
| | |
| | | } |
| | | |
| | | |
| | | Profile p = [select Id from Profile where id =:System.Label.ProfileId_SystemAdmin]; |
| | | Profile p = [select Id from Profile where id =:System.Label.ProfileId_SystemAdmin]; |
| | | |
| | | User hpOwner = new User(Test_staff__c = true, LastName = 'hp', FirstName = 'owner', Alias = 'hp', Work_Location__c = '北京', CommunityNickname = 'hpOwner', Email = 'olympus_hpowner@sunbridge.com', Username = 'olympus_hpowner@sunbridge.com', IsActive = true, EmailEncodingKey = 'ISO-2022-JP', TimeZoneSidKey = 'Asia/Tokyo', LocaleSidKey = 'ja_JP', LanguageLocaleKey = 'ja', ProfileId = p.id); |
| | | insert hpOwner; |
| | | User hpOwner2 = new User(Test_staff__c = true, LastName = 'hp2', FirstName = 'owner', Alias = 'hp2', Work_Location__c = '重庆', CommunityNickname = 'hpOwner2', Email = 'olympus_hpowner@sunbridge.com', Username = 'olympus_hpowner2@sunbridge.com', IsActive = true, EmailEncodingKey = 'ISO-2022-JP', TimeZoneSidKey = 'Asia/Tokyo', LocaleSidKey = 'ja_JP', LanguageLocaleKey = 'ja', ProfileId = p.id); |
| | | insert hpOwner2; |
| | | User hpOwner = new User(Test_staff__c = true, LastName = 'hp', FirstName = 'owner', Alias = 'hp', Work_Location__c = '北京', CommunityNickname = 'hpOwner', Email = 'olympus_hpowner@sunbridge.com', Username = 'olympus_hpowner@sunbridge.com', IsActive = true, EmailEncodingKey = 'ISO-2022-JP', TimeZoneSidKey = 'Asia/Tokyo', LocaleSidKey = 'ja_JP', LanguageLocaleKey = 'ja', ProfileId = p.id); |
| | | insert hpOwner; |
| | | User hpOwner2 = new User(Test_staff__c = true, LastName = 'hp2', FirstName = 'owner', Alias = 'hp2', Work_Location__c = '重庆', CommunityNickname = 'hpOwner2', Email = 'olympus_hpowner@sunbridge.com', Username = 'olympus_hpowner2@sunbridge.com', IsActive = true, EmailEncodingKey = 'ISO-2022-JP', TimeZoneSidKey = 'Asia/Tokyo', LocaleSidKey = 'ja_JP', LanguageLocaleKey = 'ja', ProfileId = p.id); |
| | | insert hpOwner2; |
| | | |
| | | |
| | | |
| | | Account hp = new Account(RecordTypeId = rectHp[0].Id, Name = 'hp', OwnerId = hpOwner.Id); |
| | | Account hp = new Account(RecordTypeId = rectHp[0].Id, Name = 'hp', OwnerId = hpOwner.Id); |
| | | hp.FSE_GI_Main_Leader__c = hpOwner.Id; |
| | | hp.FSE_SP_Main_Leader__c = hpOwner2.Id; |
| | | insert hp; |
| | |
| | | Test.startTest(); |
| | | insert inquiryform; |
| | | PageReference page = new PageReference('/apex/FollowPage?id='+inquiryform.Id); |
| | | System.Test.setCurrentPage(page); |
| | | StatusPageController controller = new StatusPageController(); |
| | | controller.init(); |
| | | controller.savefo(); |
| | | System.Test.setCurrentPage(page); |
| | | StatusPageController controller = new StatusPageController(); |
| | | controller.init(); |
| | | controller.savefo(); |
| | | controller.servicesavefo(); |
| | | } |
| | | static testMethod void testMethod4() { |
| | | //医院 |
| | | List<RecordType> rectHp = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and DeveloperName = 'HP']; |
| | | List<RecordType> rectHp = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and DeveloperName = 'HP']; |
| | | if (rectHp.size() == 0) { |
| | | return; |
| | | } |
| | |
| | | } |
| | | |
| | | |
| | | Profile p = [select Id from Profile where id =:System.Label.ProfileId_SystemAdmin]; |
| | | Profile p = [select Id from Profile where id =:System.Label.ProfileId_SystemAdmin]; |
| | | |
| | | User hpOwner = new User(Test_staff__c = true, LastName = 'hp', FirstName = 'owner', Alias = 'hp', Work_Location__c = '北京', CommunityNickname = 'hpOwner', Email = 'olympus_hpowner@sunbridge.com', Username = 'olympus_hpowner@sunbridge.com', IsActive = true, EmailEncodingKey = 'ISO-2022-JP', TimeZoneSidKey = 'Asia/Tokyo', LocaleSidKey = 'ja_JP', LanguageLocaleKey = 'ja', ProfileId = p.id); |
| | | insert hpOwner; |
| | | User hpOwner2 = new User(Test_staff__c = true, LastName = 'hp2', FirstName = 'owner', Alias = 'hp2', Work_Location__c = '重庆', CommunityNickname = 'hpOwner2', Email = 'olympus_hpowner@sunbridge.com', Username = 'olympus_hpowner2@sunbridge.com', IsActive = true, EmailEncodingKey = 'ISO-2022-JP', TimeZoneSidKey = 'Asia/Tokyo', LocaleSidKey = 'ja_JP', LanguageLocaleKey = 'ja', ProfileId = p.id); |
| | | insert hpOwner2; |
| | | User hpOwner = new User(Test_staff__c = true, LastName = 'hp', FirstName = 'owner', Alias = 'hp', Work_Location__c = '北京', CommunityNickname = 'hpOwner', Email = 'olympus_hpowner@sunbridge.com', Username = 'olympus_hpowner@sunbridge.com', IsActive = true, EmailEncodingKey = 'ISO-2022-JP', TimeZoneSidKey = 'Asia/Tokyo', LocaleSidKey = 'ja_JP', LanguageLocaleKey = 'ja', ProfileId = p.id); |
| | | insert hpOwner; |
| | | User hpOwner2 = new User(Test_staff__c = true, LastName = 'hp2', FirstName = 'owner', Alias = 'hp2', Work_Location__c = '重庆', CommunityNickname = 'hpOwner2', Email = 'olympus_hpowner@sunbridge.com', Username = 'olympus_hpowner2@sunbridge.com', IsActive = true, EmailEncodingKey = 'ISO-2022-JP', TimeZoneSidKey = 'Asia/Tokyo', LocaleSidKey = 'ja_JP', LanguageLocaleKey = 'ja', ProfileId = p.id); |
| | | insert hpOwner2; |
| | | |
| | | |
| | | |
| | | Account hp = new Account(RecordTypeId = rectHp[0].Id, Name = 'hp', OwnerId = hpOwner.Id); |
| | | Account hp = new Account(RecordTypeId = rectHp[0].Id, Name = 'hp', OwnerId = hpOwner.Id); |
| | | hp.FSE_GI_Main_Leader__c = hpOwner.Id; |
| | | hp.FSE_SP_Main_Leader__c = hpOwner2.Id; |
| | | insert hp; |
| | |
| | | Test.startTest(); |
| | | insert inquiryform; |
| | | PageReference page = new PageReference('/apex/FollowPage?id='+inquiryform.Id); |
| | | System.Test.setCurrentPage(page); |
| | | StatusPageController controller = new StatusPageController(); |
| | | controller.init(); |
| | | controller.savefo(); |
| | | System.Test.setCurrentPage(page); |
| | | StatusPageController controller = new StatusPageController(); |
| | | controller.init(); |
| | | controller.savefo(); |
| | | controller.servicesavefo(); |
| | | } |
| | | } |
| | |
| | | newCon = new Contact(); |
| | | return null; |
| | | } |
| | | |
| | | //查询客户记录类型 |
| | | public PageReference queryRecordType(){ |
| | | if(insUpdData.Customer__c!=null){ |
| | |
| | | } |
| | | return null; |
| | | } |
| | | /* |
| | | //采用按钮 |
| | | public PageReference adoptSave(){ |
| | | //adoptId 要采用的地址数据id |
| | |
| | | } |
| | | rc.address_Telephone__c=tableData[i].address.Telephone__c; |
| | | rc.Detailed_Address__c=address; |
| | | update rc; |
| | | if(!Test.isRunningTest()){ |
| | | update rc; |
| | | } |
| | | |
| | | //保存数据到保有设备表中 |
| | | Asset ast = new Asset( |
| | |
| | | } |
| | | return null; |
| | | } |
| | | |
| | | */ |
| | | //重定向到 修理页面 |
| | | public PageReference redirectPag(){ |
| | | PageReference ref = new Pagereference('/' + RepairId); |
| | | ref.setRedirect(true); |
| | | return ref; |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 检索数据查询 |
| | |
| | | + ' RecordType.name,Parent.Parent.Id FROM Account WHERE ID = \'' + accId + '\''; |
| | | return AccountSql; |
| | | } |
| | | |
| | | @RemoteAction |
| | | public static string SaveEx(string repaire_json,string asset_json, string address_id){ |
| | | return SaveExCore(repaire_json,asset_json,address_id); |
| | | } |
| | | |
| | | public static string SaveExCore(string repaire_json,string asset_json, string address_id){ |
| | | string message = null; |
| | | string savemessage = null; |
| | | savepoint sp = Database.setsavepoint(); |
| | | try { |
| | | Repair__c r = (Repair__c)JSON.deserialize(repaire_json,Repair__c.class); |
| | | Asset ast = (Asset)JSON.deserialize(asset_json,Asset.class); |
| | | Address__c add = new Address__c(Id=address_id,Using_Datetime__c = Datetime.now()); |
| | | update r; |
| | | update ast; |
| | | update add; |
| | | }catch(DmlException e) { |
| | | Integer index = 0; |
| | | System.debug(e.getNumDml()); |
| | | System.debug(e.getDmlFields(index)); |
| | | System.debug(e.getDmlId(index)); |
| | | System.debug(e.getDmlIndex(index)); |
| | | System.debug(e.getDmlMessage(index)); |
| | | System.debug(e.getDmlStatusCode(index)); |
| | | System.debug(e.getDmlType(index)); |
| | | system.debug(e.getMessage()); |
| | | system.debug(e.getStackTraceString()); |
| | | |
| | | System.debug('into catch'+e.getMessage()); |
| | | Database.rollback(sp); |
| | | |
| | | message ='保存失败,原因:'+ e.getDmlMessage(index); |
| | | savemessage = e.getMessage()+e.getStackTraceString(); |
| | | } catch (Exception e) { |
| | | System.debug('into catch'+e.getMessage()); |
| | | Database.rollback(sp); |
| | | |
| | | savemessage = e.getMessage()+e.getStackTraceString(); |
| | | message = '保存失败'; |
| | | } finally { |
| | | PIHelper.saveTransLog('StraightBackAddressController',address_id,address_id,address_id, repaire_json ,asset_json,message); |
| | | } |
| | | return message; |
| | | } |
| | | |
| | | /** |
| | | * 为了方便前段table获取值 |
| | |
| | | strList.add('Address__c'); |
| | | strList.add('Contact'); |
| | | strList.add('Repair__c'); |
| | | strList.add('Agency_Contact__c'); |
| | | TestDataUtility.CreatePIPolicyConfigurations(strList); |
| | | } |
| | | @isTest |
| | |
| | | //测试构造器里面的代码 |
| | | PageReference peg = new PageReference('/apex/StraightBackAddress?id='+rpr.id); |
| | | System.Test.setCurrentPage(peg); |
| | | |
| | | |
| | | StraightBackAddressController sbac = new StraightBackAddressController(); |
| | | sbac.txtName = '北京'; |
| | | sbac.txtAddress = '市'; |
| | |
| | | sbac.insUpdData.Contacts__c = null; |
| | | sbac.insUpdData.Create_Contacts__c = '王五'; |
| | | sbac.save(); |
| | | sbac.adoptSave(); |
| | | //sbac.adoptSave(); |
| | | sbac.searchBtn(); |
| | | |
| | | sbac.insUpdData.Customer__c = depart.Id; |
| | | sbac.queryRecordType(); |
| | | |
| | | sbac.redirectPag(); |
| | | sbac.optionAddressClassification.Address_Classification__c = '经销商'; |
| | | sbac.searchBtn(); |
| | | /* |
| | | StraightBackAddressController ss = new StraightBackAddressController(); |
| | | ss.txtName = '经销商'; |
| | | ss.txtAddress = '哈哈'; |
| | | sbac.typeText = '办事处'; |
| | | ss.typeText = '经销商'; |
| | | ss.UpdId = ascc.id; |
| | | ss.adoptId = ascc.id; |
| | | ss.searchBtn(); |
| | | ss.init();//页面初始化方法 |
| | | |
| | | ss.onEditor();//修改按钮方法 |
| | | ss.onCopy();//复制按钮方法 |
| | | ss.insUpdData.Address_Classification__c = ''; |
| | |
| | | ss.insUpdData.Detailed_Address__c = null; |
| | | ss.insUpdData.Customer__c = null; |
| | | ss.save(); |
| | | ss.searchBtn(); |
| | | */ |
| | | } |
| | | |
| | | @isTest |
| | | static void testSaveEx() { |
| | | StraightBackAddressController.SaveExCore(null,null,null); |
| | | StraightBackAddressController.SaveExCore('{"attributes":{"type":"Repair__c"}}','{"attributes":{"type":"Asset"}}','a4R1m000000Lfme'); |
| | | |
| | | } |
| | | |
| | | /** |
| | | * 为了方便前段table获取值 |
| | | */ |
| New file |
| | |
| | | /* |
| | | * Author: Bubba Li |
| | | * Created Date: 04/22/2022 |
| | | * Purpose: sync agency contact to aws |
| | | * Test Class: SyncAccountContactToAWS_Test |
| | | * History: |
| | | * 04/22/2022 - Bubba Li - Initial Code. |
| | | * |
| | | * */ |
| | | global class SyncAccountContactToAWS implements Database.Batchable<SObject>,Database.AllowsCallouts{ |
| | | global String query; |
| | | |
| | | global SyncAccountContactToAWS(String query) { |
| | | this.query = query; |
| | | } |
| | | global SyncAccountContactToAWS() { |
| | | this.query = 'SELECT id,Doctor_Division1__c,Doctor_Division1_Encrypted__c,Name,Name_Encrypted__c,Type__c,Type_Encrypted__c,AWS_Data_Id__c,Contact__c, Contact__r.Doctor_Division1_Encrypted__c,Contact__r.LastName_Encrypted__c, Contact__r.Type_Encrypted__c FROM Agency_Contact__c WHERE AWS_Data_Id__c =\'\' And Contact__c != null'; |
| | | } |
| | | global Database.QueryLocator start(Database.BatchableContext bc) { |
| | | system.debug('Query by custom soql:'+this.query); |
| | | return Database.getQueryLocator(this.query); |
| | | } |
| | | global void execute(Database.BatchableContext BC, list<Agency_Contact__c> scope) { |
| | | if(scope!=null && scope.size()>0){ |
| | | for(Agency_Contact__c aContact:scope){ |
| | | aContact.Doctor_Division1_Encrypted__c = aContact.Contact__r.Doctor_Division1_Encrypted__c; |
| | | aContact.Name_Encrypted__c = aContact.Contact__r.LastName_Encrypted__c; |
| | | aContact.Type_Encrypted__c = aContact.Contact__r.Type_Encrypted__c; |
| | | aContact.AWS_Data_Id__c = ''; |
| | | } |
| | | system.debug('Agency Contact Info to AWS:'+JSON.serialize(scope)); |
| | | AWSServiceTool2.EncryptPushCore(JSON.serialize(scope),'Agency_Contact__c'); |
| | | } |
| | | } |
| | | |
| | | global void finish(Database.BatchableContext BC) { |
| | | |
| | | } |
| | | } |
| New file |
| | |
| | | <?xml version="1.0" encoding="UTF-8"?> |
| | | <ApexClass xmlns="http://soap.sforce.com/2006/04/metadata"> |
| | | <apiVersion>54.0</apiVersion> |
| | | <status>Active</status> |
| | | </ApexClass> |
| New file |
| | |
| | | @isTest |
| | | public class TestDataUtility { |
| | | public static void CreatePIPolicyConfiguration(){ |
| | | CreatePIPolicyConfigurations(null); |
| | | } |
| | | |
| | | public static void CreatePIPolicyConfiguration(string sobject_name){ |
| | | CreatePIPolicyConfigurations(new string []{sobject_name}); |
| | | } |
| | | |
| | | public static void CreatePIPolicyConfigurations(List<String> sobjectTypes){ |
| | | //system.debug(Json.serialize([select Delete_URL__c, Enable_Encrypt__c, New_URL__c, Read_URL__c, Search_URL__c, Sobject_Type__c, Undelete_URL__c, New_Encrypt_URL__c, Update_Encrypt_URL__c, Update_URL__c, View_Unified_Contact_URL__c, Whether_Enable_Migration__c from PI_Policy_Configuration__c])); |
| | | String piJson = '[{"attributes":{"type":"PI_Policy_Configuration__c","url":"/services/data/v54.0/sobjects/PI_Policy_Configuration__c/a5E1m00000068RvEAI"},"Enable_Encrypt__c":false,"New_URL__c":"/api/nfm/103","Sobject_Type__c":"NFM103","Whether_Enable_Migration__c":false,"Id":"a5E1m00000068RvEAI","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Policy_Configuration__c","url":"/services/data/v54.0/sobjects/PI_Policy_Configuration__c/a5E1m00000068T3EAI"},"Enable_Encrypt__c":false,"New_URL__c":"/api/nfm/624","Sobject_Type__c":"NFM624","Whether_Enable_Migration__c":false,"Id":"a5E1m00000068T3EAI","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Policy_Configuration__c","url":"/services/data/v54.0/sobjects/PI_Policy_Configuration__c/a5E1m00000068LdEAI"},"Delete_URL__c":"/api/task/delete","Enable_Encrypt__c":false,"New_URL__c":"/api/task/insert","Sobject_Type__c":"Event","Undelete_URL__c":"/api/task/undelete","Update_URL__c":"/api/task/update","Whether_Enable_Migration__c":false,"Id":"a5E1m00000068LdEAI","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Policy_Configuration__c","url":"/services/data/v54.0/sobjects/PI_Policy_Configuration__c/a5E1m00000068L4EAI"},"Delete_URL__c":"/api/inspectionreport/delete","Enable_Encrypt__c":false,"New_URL__c":"/api/inspectionreport/insert","Read_URL__c":"/api/inspectionreport/query","Sobject_Type__c":"Inspection_Report__c","Undelete_URL__c":"/api/inspectionreport/undelete","Update_URL__c":"/api/inspectionreport/update","Whether_Enable_Migration__c":true,"Id":"a5E1m00000068L4EAI","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Policy_Configuration__c","url":"/services/data/v54.0/sobjects/PI_Policy_Configuration__c/a5E1m00000068L5EAI"},"Delete_URL__c":"/api/campaignMember/delete","Enable_Encrypt__c":true,"New_URL__c":"/api/campaignMember/insert","Read_URL__c":"/api/campaignMember/query","Search_URL__c":"/api/report/search","Sobject_Type__c":"CampaignMember","Undelete_URL__c":"/api/campaignMember/undelete","Update_URL__c":"/api/campaignMember/update","Whether_Enable_Migration__c":true,"Id":"a5E1m00000068L5EAI","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Policy_Configuration__c","url":"/services/data/v54.0/sobjects/PI_Policy_Configuration__c/a5E1m00000068L6EAI"},"Delete_URL__c":"/api/tenderinfo/delete","Enable_Encrypt__c":false,"New_URL__c":"/api/tenderinfo/insert","Read_URL__c":"/api/tenderinfo/query","Sobject_Type__c":"Tender_information__c","Undelete_URL__c":"/api/tenderinfo/undelete","Update_URL__c":"/api/tenderinfo/update","Whether_Enable_Migration__c":true,"Id":"a5E1m00000068L6EAI","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Policy_Configuration__c","url":"/services/data/v54.0/sobjects/PI_Policy_Configuration__c/a5E1m00000068L7EAI"},"Delete_URL__c":"/api/repairsuborder/delete","Enable_Encrypt__c":false,"New_URL__c":"/api/repairsuborder/insert","Read_URL__c":"/api/repairsuborder/query","Sobject_Type__c":"RepairSubOrder__c","Undelete_URL__c":"/api/repairsuborder/undelete","Update_URL__c":"/api/repairsuborder/update","Whether_Enable_Migration__c":true,"Id":"a5E1m00000068L7EAI","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Policy_Configuration__c","url":"/services/data/v54.0/sobjects/PI_Policy_Configuration__c/a5E1m00000068L8EAI"},"Delete_URL__c":"/api/address/delete","Enable_Encrypt__c":false,"New_URL__c":"/api/address/insert","Read_URL__c":"/api/address/query","Search_URL__c":"/api/address/search","Sobject_Type__c":"Address__c","Undelete_URL__c":"/api/address/undelete","Update_URL__c":"/api/address/update","Whether_Enable_Migration__c":true,"Id":"a5E1m00000068L8EAI","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Policy_Configuration__c","url":"/services/data/v54.0/sobjects/PI_Policy_Configuration__c/a5E1m00000068L9EAI"},"Delete_URL__c":"/api/qisreport/delete","Enable_Encrypt__c":true,"New_URL__c":"/api/qisreport/insert","Read_URL__c":"/api/qisreport/query","Search_URL__c":"/api/qisreport/search","Sobject_Type__c":"QIS_Report__c","Undelete_URL__c":"/api/qisreport/undelete","Update_URL__c":"/api/qisreport/update","Whether_Enable_Migration__c":true,"Id":"a5E1m00000068L9EAI","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Policy_Configuration__c","url":"/services/data/v54.0/sobjects/PI_Policy_Configuration__c/a5E1m00000068LAEAY"},"Delete_URL__c":"/api/consumsetdetail/delete","Enable_Encrypt__c":true,"New_URL__c":"/api/consumsetdetail/insert","Read_URL__c":"/api/consumsetdetail/query","Search_URL__c":"/api/consumsetdetail/search","Sobject_Type__c":"Consum_Apply_Equipment_Set_Detail__c","Undelete_URL__c":"/api/consumsetdetail/undelete","Update_URL__c":"/api/consumsetdetail/update","Whether_Enable_Migration__c":true,"Id":"a5E1m00000068LAEAY","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Policy_Configuration__c","url":"/services/data/v54.0/sobjects/PI_Policy_Configuration__c/a5E1m00000068LBEAY"},"Delete_URL__c":"/api/repair/delete","Enable_Encrypt__c":true,"New_URL__c":"/api/repair/insert","Read_URL__c":"/api/repair/query","Sobject_Type__c":"Repair__c","Undelete_URL__c":"/api/repair/undelete","New_Encrypt_URL__c":"/api/repair/decryptinsert","Update_Encrypt_URL__c":"/api/repair/decryptupdate","Update_URL__c":"/api/repair/update","Whether_Enable_Migration__c":true,"Id":"a5E1m00000068LBEAY","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Policy_Configuration__c","url":"/services/data/v54.0/sobjects/PI_Policy_Configuration__c/a5E1m00000068LCEAY"},"Delete_URL__c":"/api/oncall/delete","Enable_Encrypt__c":true,"New_URL__c":"/api/oncall/insert","Read_URL__c":"/api/oncall/query","Sobject_Type__c":"On_Call__c","Undelete_URL__c":"/api/oncall/undelete","Update_URL__c":"/api/oncall/update","Whether_Enable_Migration__c":true,"Id":"a5E1m00000068LCEAY","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Policy_Configuration__c","url":"/services/data/v54.0/sobjects/PI_Policy_Configuration__c/a5E1m00000068LDEAY"},"Enable_Encrypt__c":false,"New_URL__c":"/api/nfm/501?","Sobject_Type__c":"QLMNFM501","Whether_Enable_Migration__c":true,"Id":"a5E1m00000068LDEAY","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Policy_Configuration__c","url":"/services/data/v54.0/sobjects/PI_Policy_Configuration__c/a5E1m00000068LEEAY"},"Delete_URL__c":"/api/report/delete","Enable_Encrypt__c":false,"New_URL__c":"/api/report/insert","Read_URL__c":"/api/report/query","Sobject_Type__c":"Report__c","Undelete_URL__c":"/api/report/undelete","Update_URL__c":"/api/report/update","Whether_Enable_Migration__c":true,"Id":"a5E1m00000068LEEAY","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Policy_Configuration__c","url":"/services/data/v54.0/sobjects/PI_Policy_Configuration__c/a5E1m00000068LFEAY"},"Enable_Encrypt__c":true,"New_URL__c":"/api/nfm/115","Sobject_Type__c":"Sample_order_list__c","Whether_Enable_Migration__c":true,"Id":"a5E1m00000068LFEAY","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Policy_Configuration__c","url":"/services/data/v54.0/sobjects/PI_Policy_Configuration__c/a5E1m00000068LGEAY"},"Enable_Encrypt__c":false,"New_URL__c":"/api/nfm/503?","Read_URL__c":"/api/file/preview?key=","Search_URL__c":"/api/tx/confirmfile","Sobject_Type__c":"NFM503","Undelete_URL__c":"/api/file/download?key=","Whether_Enable_Migration__c":true,"Id":"a5E1m00000068LGEAY","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Policy_Configuration__c","url":"/services/data/v54.0/sobjects/PI_Policy_Configuration__c/a5E1m00000068LHEAY"},"Enable_Encrypt__c":false,"New_URL__c":"/api/nfm/606","Sobject_Type__c":"NFM606","Whether_Enable_Migration__c":true,"Id":"a5E1m00000068LHEAY","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Policy_Configuration__c","url":"/services/data/v54.0/sobjects/PI_Policy_Configuration__c/a5E1m00000068LIEAY"},"Delete_URL__c":"/api/contact/delete","Enable_Encrypt__c":false,"New_URL__c":"/api/contact/insert","Read_URL__c":"/api/contact/query","Search_URL__c":"/api/contact/search","Sobject_Type__c":"Contact","Undelete_URL__c":"/api/contact/undelete","Update_URL__c":"/api/contact/update","View_Unified_Contact_URL__c":"/api/viewContact/query","Whether_Enable_Migration__c":true,"Id":"a5E1m00000068LIEAY","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Policy_Configuration__c","url":"/services/data/v54.0/sobjects/PI_Policy_Configuration__c/a5E1m00000068LJEAY"},"Delete_URL__c":"/api/consumapply/delete","Enable_Encrypt__c":false,"New_URL__c":"/api/consumapply/insert","Read_URL__c":"/api/consumapply/query","Sobject_Type__c":"Consum_Apply__c","Undelete_URL__c":"/api/consumapply/undelete","Update_URL__c":"/api/consumapply/update","View_Unified_Contact_URL__c":"/api/consumapply/decryptinsert","Whether_Enable_Migration__c":true,"Id":"a5E1m00000068LJEAY","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Policy_Configuration__c","url":"/services/data/v54.0/sobjects/PI_Policy_Configuration__c/a5E1m00000068LKEAY"},"Delete_URL__c":"/api/inquiryform/delete","Enable_Encrypt__c":false,"New_URL__c":"/api/inquiryform/insert","Read_URL__c":"/api/inquiryform/query","Sobject_Type__c":"Inquiry_form__c","Undelete_URL__c":"/api/inquiryform/undelete","Update_URL__c":"/api/inquiryform/update","Whether_Enable_Migration__c":true,"Id":"a5E1m00000068LKEAY","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Policy_Configuration__c","url":"/services/data/v54.0/sobjects/PI_Policy_Configuration__c/a5E1m00000068LLEAY"},"Delete_URL__c":"/api/rentalapply/delete","Enable_Encrypt__c":true,"New_URL__c":"/api/rentalapply/insert","Read_URL__c":"/api/rentalapply/query","Sobject_Type__c":"Rental_Apply__c","Undelete_URL__c":"/api/rentalapply/undelete","New_Encrypt_URL__c":"/api/rentalapply/decryptinsert","Update_URL__c":"/api/rentalapply/update","View_Unified_Contact_URL__c":"/api/rentalapply/decryptinsert","Whether_Enable_Migration__c":true,"Id":"a5E1m00000068LLEAY","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Policy_Configuration__c","url":"/services/data/v54.0/sobjects/PI_Policy_Configuration__c/a5E1m00000068LMEAY"},"Delete_URL__c":"/api/file/delete","Enable_Encrypt__c":false,"New_URL__c":"/api/file/upload","Read_URL__c":"/api/file/preview?key=","Sobject_Type__c":"Document","Undelete_URL__c":"/api/file/download?key=","Update_URL__c":"/api/tx/confirmfile","View_Unified_Contact_URL__c":"/api/file/convert","Whether_Enable_Migration__c":true,"Id":"a5E1m00000068LMEAY","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Policy_Configuration__c","url":"/services/data/v54.0/sobjects/PI_Policy_Configuration__c/a5E1m00000068LNEAY"},"Delete_URL__c":"/api/lead/delete","Enable_Encrypt__c":false,"New_URL__c":"/api/lead/insert","Read_URL__c":"/api/lead/query","Search_URL__c":"/api/lead/search","Sobject_Type__c":"Lead","Undelete_URL__c":"/api/lead/undelete","Update_URL__c":"/api/lead/update","Whether_Enable_Migration__c":true,"Id":"a5E1m00000068LNEAY","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Policy_Configuration__c","url":"/services/data/v54.0/sobjects/PI_Policy_Configuration__c/a5E1m00000068LOEAY"},"Delete_URL__c":"/api/aseactivity/delete","Enable_Encrypt__c":false,"New_URL__c":"/api/aseactivity/insert","Read_URL__c":"/api/aseactivity/query","Sobject_Type__c":"ASEActivity__c","Undelete_URL__c":"/api/aseactivity/undelete","Update_URL__c":"/api/aseactivity/update","Whether_Enable_Migration__c":true,"Id":"a5E1m00000068LOEAY","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Policy_Configuration__c","url":"/services/data/v54.0/sobjects/PI_Policy_Configuration__c/a5E1m00000068LPEAY"},"Enable_Encrypt__c":false,"New_URL__c":"/api/nfm/502?","Read_URL__c":"/api/file/preview?key=","Search_URL__c":"/api/tx/confirmfile","Sobject_Type__c":"NFM502","Undelete_URL__c":"/api/file/download?key=","Whether_Enable_Migration__c":true,"Id":"a5E1m00000068LPEAY","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Policy_Configuration__c","url":"/services/data/v54.0/sobjects/PI_Policy_Configuration__c/a5E1m00000068LQEAY"},"Enable_Encrypt__c":false,"New_URL__c":"/api/nfm/702","Sobject_Type__c":"NFM702","Whether_Enable_Migration__c":false,"Id":"a5E1m00000068LQEAY","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Policy_Configuration__c","url":"/services/data/v54.0/sobjects/PI_Policy_Configuration__c/a5E1m00000068LREAY"},"Delete_URL__c":"/api/agencycontact/delete","Enable_Encrypt__c":false,"New_URL__c":"/api/agencycontact/insert","Read_URL__c":"/api/agencycontact/query","Search_URL__c":"/api/agencycontact/search","Sobject_Type__c":"Agency_Contact__c","Undelete_URL__c":"/api/agencycontact/undelete","New_Encrypt_URL__c":"/api/agencycontact/decryptinsert","Update_Encrypt_URL__c":"/api/agencycontact/decryptupdate","Update_URL__c":"/api/agencycontact/update","Whether_Enable_Migration__c":true,"Id":"a5E1m00000068LREAY","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Policy_Configuration__c","url":"/services/data/v54.0/sobjects/PI_Policy_Configuration__c/a5E1m00000068LSEAY"},"Delete_URL__c":"/api/case/delete","Enable_Encrypt__c":false,"New_URL__c":"/api/case/insert","Read_URL__c":"/api/case/query","Sobject_Type__c":"Case","Undelete_URL__c":"/api/case/undelete","Update_URL__c":"/api/case/update","Whether_Enable_Migration__c":true,"Id":"a5E1m00000068LSEAY","CurrencyIsoCode":"CNY"}]'; |
| | | List<PI_Policy_Configuration__c> piList = (List<PI_Policy_Configuration__c>)JSON.deserialize(piJson,List<PI_Policy_Configuration__c>.class); |
| | | List<PI_Policy_Configuration__c> insertPiList = new List<PI_Policy_Configuration__c>(); |
| | | |
| | | for(PI_Policy_Configuration__c pi : piList){ |
| | | |
| | | PI_Policy_Configuration__c ipi = new PI_Policy_Configuration__c(); |
| | | ipi.Delete_URL__c = pi.Delete_URL__c; |
| | | ipi.Enable_Encrypt__c = pi.Enable_Encrypt__c; |
| | | ipi.New_URL__c = pi.New_URL__c; |
| | | ipi.Read_URL__c = pi.Read_URL__c; |
| | | ipi.Search_URL__c = pi.Search_URL__c; |
| | | ipi.Sobject_Type__c = pi.Sobject_Type__c; |
| | | ipi.Undelete_URL__c = pi.Undelete_URL__c; |
| | | ipi.New_Encrypt_URL__c = pi.New_Encrypt_URL__c; |
| | | ipi.Update_Encrypt_URL__c = pi.Update_Encrypt_URL__c; |
| | | ipi.Update_URL__c = pi.Update_URL__c; |
| | | ipi.View_Unified_Contact_URL__c = pi.View_Unified_Contact_URL__c; |
| | | ipi.Whether_Enable_Migration__c = pi.Whether_Enable_Migration__c; |
| | | |
| | | if(sobjectTypes==null || sobjectTypes.contains(pi.Sobject_Type__c)){ |
| | | system.debug(ipi); |
| | | insertPiList.add(ipi); |
| | | } |
| | | |
| | | } |
| | | insert insertPiList; |
| | | Map<String,String> typeIdMap = new Map<String,String>();//key: type value: id |
| | | for(PI_Policy_Configuration__c pi:insertPiList){ |
| | | typeIdMap.put(pi.Sobject_Type__c,pi.Id); |
| | | } |
| | | String pidJson = '[{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l000000979PAAQ"},"PI_Policy_Configuration_Name__c":"Report__c","PI_Policy_Configuration__c":"a4n0l0000008oddAAA","Enable_Encrypt__c":true,"Field_Type__c":"PickList","SF_Field_API_Name__c":"Practitioner5_Part__c","AWS_Field_API__c":"Practitioner5_Part__c","Id":"a4l0l000000979PAAQ","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l00000097HAAAY"},"PI_Policy_Configuration_Name__c":"ASEActivity__c","PI_Policy_Configuration__c":"a4n0l0000008pWKAAY","Enable_Encrypt__c":true,"Field_Type__c":"String","SF_Field_API_Name__c":"CustomerTel__c","AWS_Field_API__c":"customerTel","SF_Field_Encrypted_API__c":"CustomerTel_Encrypted__c","AWS_Encrypted_Field_API__c":"customerTelEncrypt","Id":"a4l0l00000097HAAAY","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l00000097NhAAI"},"PI_Policy_Configuration_Name__c":"Rental_Apply__c","PI_Policy_Configuration__c":"a4n0l0000008phIAAQ","Enable_Encrypt__c":true,"SF_Field_API_Name__c":"Phone_number__c","AWS_Field_API__c":"phoneNumber","SF_Field_Encrypted_API__c":"Phone_Number_Encrypt__c","AWS_Encrypted_Field_API__c":"phoneNumberEncrypt","Id":"a4l0l00000097NhAAI","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l00000097O1AAI"},"PI_Policy_Configuration_Name__c":"On_Call__c","PI_Policy_Configuration__c":"a4n0l0000008phXAAQ","Enable_Encrypt__c":true,"SF_Field_API_Name__c":"Responsible_Person_HP__c","AWS_Field_API__c":"responsiblePersonHP","SF_Field_Encrypted_API__c":"Responsible_PersonHP_Encrypt__c","AWS_Encrypted_Field_API__c":"responsiblePersonHPEncrypt","Id":"a4l0l00000097O1AAI","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l00000097HFAAY"},"PI_Policy_Configuration_Name__c":"ASEActivity__c","PI_Policy_Configuration__c":"a4n0l0000008pWKAAY","Enable_Encrypt__c":true,"Field_Type__c":"String","SF_Field_API_Name__c":"WorkPlace__c","AWS_Field_API__c":"workPlace","SF_Field_Encrypted_API__c":"WorkPlace_Encrypted__c","AWS_Encrypted_Field_API__c":"workPlaceEncrypt","Id":"a4l0l00000097HFAAY","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l00000097DwAAI"},"PI_Policy_Configuration_Name__c":"RepairSubOrder__c","PI_Policy_Configuration__c":"a4n0l0000008pWZAAY","Enable_Encrypt__c":true,"Field_Type__c":"String","SF_Field_API_Name__c":"RepairApplicantTel__c","AWS_Field_API__c":"repairApplicantTel","SF_Field_Encrypted_API__c":"RepairApplicantTel_Encrypted__c","AWS_Encrypted_Field_API__c":"repairApplicantTelEncrypt","Id":"a4l0l00000097DwAAI","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l00000097DrAAI"},"PI_Policy_Configuration_Name__c":"RepairSubOrder__c","PI_Policy_Configuration__c":"a4n0l0000008pWZAAY","Enable_Encrypt__c":true,"Field_Type__c":"String","SF_Field_API_Name__c":"RepairApplicantName__c","AWS_Field_API__c":"repairApplicantName","SF_Field_Encrypted_API__c":"RepairApplicantName_Encrypted__c","AWS_Encrypted_Field_API__c":"repairApplicantNameEncrypt","Id":"a4l0l00000097DrAAI","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l00000097D8AAI"},"PI_Policy_Configuration_Name__c":"CampaignMember","PI_Policy_Configuration__c":"a4n0l0000008pWPAAY","Enable_Encrypt__c":true,"SF_Field_API_Name__c":"Contact__c","AWS_Field_API__c":"contact","SF_Field_Encrypted_API__c":"Contact_Encrypted__c","AWS_Encrypted_Field_API__c":"contactEncrypt","Id":"a4l0l00000097D8AAI","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l00000097RAAAY"},"PI_Policy_Configuration_Name__c":"Event","PI_Policy_Configuration__c":"a4n0l0000008piuAAA","Enable_Encrypt__c":true,"Field_Type__c":"String","SF_Field_API_Name__c":"Visitor2__c","AWS_Field_API__c":"visitor2","SF_Field_Encrypted_API__c":"Visitor2_Encrypted__c","AWS_Encrypted_Field_API__c":"visitor2Encrypt","Id":"a4l0l00000097RAAAY","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l00000097R5AAI"},"PI_Policy_Configuration_Name__c":"Event","PI_Policy_Configuration__c":"a4n0l0000008piuAAA","Enable_Encrypt__c":true,"Field_Type__c":"String","SF_Field_API_Name__c":"Visitor1__c","AWS_Field_API__c":"visitor1","SF_Field_Encrypted_API__c":"Visitor1_Encrypted__c","AWS_Encrypted_Field_API__c":"visitor1Encrypt","Id":"a4l0l00000097R5AAI","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l000000979UAAQ"},"PI_Policy_Configuration_Name__c":"Report__c","PI_Policy_Configuration__c":"a4n0l0000008oddAAA","Enable_Encrypt__c":true,"Field_Type__c":"String","SF_Field_API_Name__c":"age__c","AWS_Field_API__c":"age__c","Id":"a4l0l000000979UAAQ","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l00000097DIAAY"},"PI_Policy_Configuration_Name__c":"Inquiry_form__c","PI_Policy_Configuration__c":"a4n0l0000008pWUAAY","Enable_Encrypt__c":true,"SF_Field_API_Name__c":"Email__c","AWS_Field_API__c":"email","SF_Field_Encrypted_API__c":"Email_Encrypted__c","AWS_Encrypted_Field_API__c":"emailEncrypted","Order_Number__c":2,"Id":"a4l0l00000097DIAAY","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l0000009787AAA"},"PI_Policy_Configuration_Name__c":"Report__c","PI_Policy_Configuration__c":"a4n0l0000008oddAAA","Enable_Encrypt__c":true,"Field_Type__c":"String","SF_Field_API_Name__c":"Caller_phone_c__c","AWS_Field_API__c":"Caller_phone_c__c","Id":"a4l0l0000009787AAA","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l00000097HeAAI"},"PI_Policy_Configuration_Name__c":"Agency_Contact__c","PI_Policy_Configuration__c":"a4n0l0000008pgtAAA","Enable_Encrypt__c":true,"Field_Type__c":"PickList","SF_Field_API_Name__c":"Doctor_Division1__c","AWS_Field_API__c":"doctorDivision1","SF_Field_Encrypted_API__c":"Doctor_Division1_Encrypted__c","AWS_Encrypted_Field_API__c":"doctorDivision1Encrypt","Id":"a4l0l00000097HeAAI","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l00000097RKAAY"},"PI_Policy_Configuration_Name__c":"Event","PI_Policy_Configuration__c":"a4n0l0000008piuAAA","Enable_Encrypt__c":true,"Field_Type__c":"String","SF_Field_API_Name__c":"Visitor4__c","AWS_Field_API__c":"visitor4","SF_Field_Encrypted_API__c":"Visitor4_Encrypted__c","AWS_Encrypted_Field_API__c":"visitor4Encrypt","Id":"a4l0l00000097RKAAY","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l00000097DDAAY"},"PI_Policy_Configuration_Name__c":"Inquiry_form__c","PI_Policy_Configuration__c":"a4n0l0000008pWUAAY","Enable_Encrypt__c":true,"Field_Type__c":"String","SF_Field_API_Name__c":"Phone__c","AWS_Field_API__c":"phone","SF_Field_Encrypted_API__c":"Phone_Encrypted__c","AWS_Encrypted_Field_API__c":"PhoneEncrypted","Order_Number__c":1,"Id":"a4l0l00000097DDAAY","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l000000978HAAQ"},"PI_Policy_Configuration_Name__c":"Report__c","PI_Policy_Configuration__c":"a4n0l0000008oddAAA","Enable_Encrypt__c":true,"Field_Type__c":"String","SF_Field_API_Name__c":"Person_In_Charge_Text__c","AWS_Field_API__c":"Person_In_Charge_Text__c","Id":"a4l0l000000978HAAQ","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l00000096uUAAQ"},"PI_Policy_Configuration_Name__c":"Lead","PI_Policy_Configuration__c":"a4n0l0000008o8JAAQ","Enable_Encrypt__c":true,"Field_Type__c":"String","SF_Field_API_Name__c":"Email","AWS_Field_API__c":"Email","Id":"a4l0l00000096uUAAQ","CurrencyIsoCode":"USD"},{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l000000977xAAA"},"PI_Policy_Configuration_Name__c":"Consum_Apply__c","PI_Policy_Configuration__c":"a4n0l0000008odYAAQ","Enable_Encrypt__c":true,"Field_Type__c":"String","SF_Field_API_Name__c":"direct_shippment_address__c","AWS_Field_API__c":"address","Id":"a4l0l000000977xAAA","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l0000009782AAA"},"PI_Policy_Configuration_Name__c":"Report__c","PI_Policy_Configuration__c":"a4n0l0000008oddAAA","Enable_Encrypt__c":true,"Field_Type__c":"String","SF_Field_API_Name__c":"VOC_Informer_Name__c","AWS_Field_API__c":"VOC_Informer_Name__c","Id":"a4l0l0000009782AAA","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l000000978CAAQ"},"PI_Policy_Configuration_Name__c":"Report__c","PI_Policy_Configuration__c":"a4n0l0000008oddAAA","Enable_Encrypt__c":true,"Field_Type__c":"String","SF_Field_API_Name__c":"VOC_Informer_Contact__c","AWS_Field_API__c":"VOC_Informer_Contact__c","Id":"a4l0l000000978CAAQ","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l000000979AAAQ"},"PI_Policy_Configuration_Name__c":"Report__c","PI_Policy_Configuration__c":"a4n0l0000008oddAAA","Enable_Encrypt__c":true,"Field_Type__c":"PickList","SF_Field_API_Name__c":"Practitioner2_Part__c","AWS_Field_API__c":"Practitioner2_Part__c","Id":"a4l0l000000979AAAQ","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l00000097CFAAY"},"PI_Policy_Configuration_Name__c":"Inspection_Report__c","PI_Policy_Configuration__c":"a4n0l0000008pWFAAY","Enable_Encrypt__c":true,"Field_Type__c":"String","SF_Field_API_Name__c":"Responsible_Person__c","AWS_Field_API__c":"responsiblePerson","SF_Field_Encrypted_API__c":"Responsible_Person_Encrypted__c","AWS_Encrypted_Field_API__c":"responsiblePersonEncrypt","Id":"a4l0l00000097CFAAY","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l00000097CPAAY"},"PI_Policy_Configuration_Name__c":"Inspection_Report__c","PI_Policy_Configuration__c":"a4n0l0000008pWFAAY","Enable_Encrypt__c":true,"Field_Type__c":"String","SF_Field_API_Name__c":"phone__c","AWS_Field_API__c":"phone","SF_Field_Encrypted_API__c":"phone_Encrypted__c","AWS_Encrypted_Field_API__c":"phoneEncrypt","Id":"a4l0l00000097CPAAY","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l00000097EQAAY"},"PI_Policy_Configuration_Name__c":"Consum_Apply_Equipment_Set_Detail__c","PI_Policy_Configuration__c":"a4n0l0000008pWeAAI","Enable_Encrypt__c":true,"SF_Field_API_Name__c":"Trial_User__c","AWS_Field_API__c":"trialUser","SF_Field_Encrypted_API__c":"Trial_User_Encrypt__c","AWS_Encrypted_Field_API__c":"trialUserEncrypt","Id":"a4l0l00000097EQAAY","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l00000097CjAAI"},"PI_Policy_Configuration_Name__c":"ASEActivity__c","PI_Policy_Configuration__c":"a4n0l0000008pWKAAY","Enable_Encrypt__c":true,"Field_Type__c":"String","SF_Field_API_Name__c":"VisitStaff__c","AWS_Field_API__c":"visitStaff","SF_Field_Encrypted_API__c":"VisitStaffEncrypt__c","AWS_Encrypted_Field_API__c":"visitStaffEncrypt","Id":"a4l0l00000097CjAAI","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l000000977YAAQ"},"PI_Policy_Configuration_Name__c":"Case","PI_Policy_Configuration__c":"a4n0l0000008odTAAQ","Enable_Encrypt__c":true,"Field_Type__c":"String","SF_Field_API_Name__c":"cic_telephone__c","AWS_Field_API__c":"cicTelephone","SF_Field_Encrypted_API__c":"cic_telephone_Encrypted__c","AWS_Encrypted_Field_API__c":"cicTelephoneEncrypted","Id":"a4l0l000000977YAAQ","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l000000979yAAA"},"PI_Policy_Configuration_Name__c":"Contact","PI_Policy_Configuration__c":"a4n0l0000008odOAAQ","Enable_Encrypt__c":true,"Field_Type__c":"String","SF_Field_API_Name__c":"Phone","AWS_Field_API__c":"phone","SF_Field_Encrypted_API__c":"Phone_Encrypted__c","AWS_Encrypted_Field_API__c":"phoneEncrypt","Id":"a4l0l000000979yAAA","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l000000979zAAA"},"PI_Policy_Configuration_Name__c":"Contact","PI_Policy_Configuration__c":"a4n0l0000008odOAAQ","Enable_Encrypt__c":true,"Field_Type__c":"String","SF_Field_API_Name__c":"MobilePhone","AWS_Field_API__c":"mobilePhone","SF_Field_Encrypted_API__c":"MobilePhone_Encrypted__c","AWS_Encrypted_Field_API__c":"mobilePhoneEncrypt","Id":"a4l0l000000979zAAA","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l00000097A0AAI"},"PI_Policy_Configuration_Name__c":"Contact","PI_Policy_Configuration__c":"a4n0l0000008odOAAQ","Enable_Encrypt__c":true,"Field_Type__c":"String","SF_Field_API_Name__c":"Title","AWS_Field_API__c":"title","SF_Field_Encrypted_API__c":"Title_Encrypted__c","AWS_Encrypted_Field_API__c":"titleEncrypt","Id":"a4l0l00000097A0AAI","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l00000097A1AAI"},"PI_Policy_Configuration_Name__c":"Contact","PI_Policy_Configuration__c":"a4n0l0000008odOAAQ","Enable_Encrypt__c":true,"Field_Type__c":"PickList","SF_Field_API_Name__c":"OLY_Assistant_Type__c","AWS_Field_API__c":"olyAssistantType","SF_Field_Encrypted_API__c":"OLY_Assistant_Type_Encrypted__c","AWS_Encrypted_Field_API__c":"olyAssistantTypeEncrypt","Id":"a4l0l00000097A1AAI","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l00000097A2AAI"},"PI_Policy_Configuration_Name__c":"Contact","PI_Policy_Configuration__c":"a4n0l0000008odOAAQ","Enable_Encrypt__c":true,"Field_Type__c":"PickList","SF_Field_API_Name__c":"Job_Category_picklist__c","AWS_Field_API__c":"jobCategoryPicklist","SF_Field_Encrypted_API__c":"Job_Category_picklist_Encrypted__c","AWS_Encrypted_Field_API__c":"jobCategoryPicklistEncrypt","Id":"a4l0l00000097A2AAI","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l00000097A3AAI"},"PI_Policy_Configuration_Name__c":"Contact","PI_Policy_Configuration__c":"a4n0l0000008odOAAQ","Enable_Encrypt__c":true,"Field_Type__c":"String","SF_Field_API_Name__c":"Contact_address__c","AWS_Field_API__c":"contactAddress","SF_Field_Encrypted_API__c":"Contact_address_Encrypted__c","AWS_Encrypted_Field_API__c":"contactAddressEncrypt","Id":"a4l0l00000097A3AAI","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l00000097A4AAI"},"PI_Policy_Configuration_Name__c":"Contact","PI_Policy_Configuration__c":"a4n0l0000008odOAAQ","Enable_Encrypt__c":true,"Field_Type__c":"PickList","SF_Field_API_Name__c":"Type__c","AWS_Field_API__c":"type","SF_Field_Encrypted_API__c":"Type_Encrypted__c","AWS_Encrypted_Field_API__c":"typeEncrypt","Id":"a4l0l00000097A4AAI","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l00000097A5AAI"},"PI_Policy_Configuration_Name__c":"Contact","PI_Policy_Configuration__c":"a4n0l0000008odOAAQ","Enable_Encrypt__c":true,"Field_Type__c":"PickList","SF_Field_API_Name__c":"Doctor_Division1__c","AWS_Field_API__c":"doctorDivision1","SF_Field_Encrypted_API__c":"Doctor_Division1_Encrypted__c","AWS_Encrypted_Field_API__c":"doctorDivision1Encrypt","Id":"a4l0l00000097A5AAI","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l00000097A6AAI"},"PI_Policy_Configuration_Name__c":"Contact","PI_Policy_Configuration__c":"a4n0l0000008odOAAQ","Enable_Encrypt__c":true,"Field_Type__c":"String","SF_Field_API_Name__c":"UniqueNumber__c","AWS_Field_API__c":"uniqueNumber","SF_Field_Encrypted_API__c":"UniqueNumber_Encrypted__c","AWS_Encrypted_Field_API__c":"uniqueNumberEncrypt","Id":"a4l0l00000097A6AAI","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l00000097A7AAI"},"PI_Policy_Configuration_Name__c":"Contact","PI_Policy_Configuration__c":"a4n0l0000008odOAAQ","Enable_Encrypt__c":true,"Field_Type__c":"String","SF_Field_API_Name__c":"Email","AWS_Field_API__c":"email","SF_Field_Encrypted_API__c":"Email_Encrypted__c","AWS_Encrypted_Field_API__c":"emailEncrypt","Id":"a4l0l00000097A7AAI","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l00000097A8AAI"},"PI_Policy_Configuration_Name__c":"Contact","PI_Policy_Configuration__c":"a4n0l0000008odOAAQ","Enable_Encrypt__c":true,"Field_Type__c":"String","SF_Field_API_Name__c":"MedicalStaff_Full_name__c","AWS_Field_API__c":"medicalStaffFullName","SF_Field_Encrypted_API__c":"MedicalStaff_Full_name_Encrypted__c","AWS_Encrypted_Field_API__c":"medicalStaffFullNameEncrypt","Id":"a4l0l00000097A8AAI","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l000000979oAAA"},"PI_Policy_Configuration_Name__c":"Contact","PI_Policy_Configuration__c":"a4n0l0000008odOAAQ","Enable_Encrypt__c":true,"Field_Type__c":"Multi PickList","SF_Field_API_Name__c":"ContactType__c","AWS_Field_API__c":"contactType","SF_Field_Encrypted_API__c":"ContactType_Encrypted__c","AWS_Encrypted_Field_API__c":"contactTypeEncrypt","Id":"a4l0l000000979oAAA","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l00000097ImAAI"},"PI_Policy_Configuration_Name__c":"Repair__c","PI_Policy_Configuration__c":"a4n0l0000008pgyAAA","Enable_Encrypt__c":true,"SF_Field_API_Name__c":"address_Contacts__c","AWS_Field_API__c":"addressContacts","SF_Field_Encrypted_API__c":"Address_Contacts_Encrypt__c","AWS_Encrypted_Field_API__c":"addressContactsEncrypt","Id":"a4l0l00000097ImAAI","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l00000097IcAAI"},"PI_Policy_Configuration_Name__c":"QIS_Report__c","PI_Policy_Configuration__c":"a4n0l0000008pdiAAA","Enable_Encrypt__c":true,"Field_Type__c":"String","SF_Field_API_Name__c":"Responsible_Person_HP__c","AWS_Field_API__c":"responsiblePersonHP","SF_Field_Encrypted_API__c":"Responsible_Person_HP_Encrypted__c","AWS_Encrypted_Field_API__c":"responsiblePersonHPEncrypt","Id":"a4l0l00000097IcAAI","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l00000097GqAAI"},"PI_Policy_Configuration_Name__c":"Tender_information__c","PI_Policy_Configuration__c":"a4n0l0000008pgjAAA","Enable_Encrypt__c":true,"Field_Type__c":"String","SF_Field_API_Name__c":"AgentRelationWay__c","AWS_Field_API__c":"agentRelationWay","SF_Field_Encrypted_API__c":"AgentRelationWay_Encrypted__c","AWS_Encrypted_Field_API__c":"agentRelationWayEncrypt","Id":"a4l0l00000097GqAAI","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l00000097GMAAY"},"PI_Policy_Configuration_Name__c":"Tender_information__c","PI_Policy_Configuration__c":"a4n0l0000008pgjAAA","Enable_Encrypt__c":true,"Field_Type__c":"String","SF_Field_API_Name__c":"ZhaoRelationName__c","AWS_Field_API__c":"zhaoRelationName","SF_Field_Encrypted_API__c":"ZhaoRelationName_Encrypted__c","AWS_Encrypted_Field_API__c":"zhaoRelationNameEncrypt","Id":"a4l0l00000097GMAAY","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l00000097J6AAI"},"PI_Policy_Configuration_Name__c":"Repair__c","PI_Policy_Configuration__c":"a4n0l0000008pgyAAA","Enable_Encrypt__c":true,"SF_Field_API_Name__c":"address_Contacts_Name__c","AWS_Field_API__c":"addressContactsName","SF_Field_Encrypted_API__c":"Address_Contacts_Name_Encrypt__c","AWS_Encrypted_Field_API__c":"addressContactsNameEncrypt","Id":"a4l0l00000097J6AAI","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l00000097JBAAY"},"PI_Policy_Configuration_Name__c":"Repair__c","PI_Policy_Configuration__c":"a4n0l0000008pgyAAA","Enable_Encrypt__c":true,"SF_Field_API_Name__c":"RepairApplicant__c","AWS_Field_API__c":"repairApplicant","SF_Field_Encrypted_API__c":"Repair_Applicant_Encrypt__c","AWS_Encrypted_Field_API__c":"repairApplicantEncrypt","Id":"a4l0l00000097JBAAY","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l00000097OuAAI"},"PI_Policy_Configuration_Name__c":"Inquiry_form__c","PI_Policy_Configuration__c":"a4n0l0000008pWUAAY","Enable_Encrypt__c":true,"SF_Field_API_Name__c":"Last_Name__c","AWS_Field_API__c":"lastName","SF_Field_Encrypted_API__c":"Last_Name_Encrypted__c","AWS_Encrypted_Field_API__c":"lastNameEncrypt","Order_Number__c":3,"Id":"a4l0l00000097OuAAI","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l00000097NcAAI"},"PI_Policy_Configuration_Name__c":"Rental_Apply__c","PI_Policy_Configuration__c":"a4n0l0000008phIAAQ","Enable_Encrypt__c":true,"SF_Field_API_Name__c":"direct_shippment_address__c","AWS_Field_API__c":"directShippmentAddress","SF_Field_Encrypted_API__c":"Direct_Shippment_Address_Encrypt__c","AWS_Encrypted_Field_API__c":"directShippmentAddressEncrypt","Id":"a4l0l00000097NcAAI","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l00000097NwAAI"},"PI_Policy_Configuration_Name__c":"On_Call__c","PI_Policy_Configuration__c":"a4n0l0000008phXAAQ","Enable_Encrypt__c":true,"SF_Field_API_Name__c":"Caller_phone__c","AWS_Field_API__c":"callerPhone","SF_Field_Encrypted_API__c":"Caller_Phone_Encrypt__c","AWS_Encrypted_Field_API__c":"callerPhoneEncrypt","Id":"a4l0l00000097NwAAI","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l00000097RPAAY"},"PI_Policy_Configuration_Name__c":"Event","PI_Policy_Configuration__c":"a4n0l0000008piuAAA","Enable_Encrypt__c":true,"Field_Type__c":"String","SF_Field_API_Name__c":"Visitor5__c","AWS_Field_API__c":"visitor5","SF_Field_Encrypted_API__c":"Visitor5_Encrypted__c","AWS_Encrypted_Field_API__c":"visitor5Encrypt","Id":"a4l0l00000097RPAAY","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l00000097HUAAY"},"PI_Policy_Configuration_Name__c":"Agency_Contact__c","PI_Policy_Configuration__c":"a4n0l0000008pgtAAA","Enable_Encrypt__c":true,"Field_Type__c":"PickList","SF_Field_API_Name__c":"Type__c","AWS_Field_API__c":"type","SF_Field_Encrypted_API__c":"Type_Encrypted__c","AWS_Encrypted_Field_API__c":"typeEncrypt","Id":"a4l0l00000097HUAAY","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l00000096uFAAQ"},"PI_Policy_Configuration_Name__c":"Lead","PI_Policy_Configuration__c":"a4n0l0000008o8JAAQ","Enable_Encrypt__c":true,"Field_Type__c":"String","SF_Field_API_Name__c":"Phone","AWS_Field_API__c":"phone","Id":"a4l0l00000096uFAAQ","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l000000977dAAA"},"PI_Policy_Configuration_Name__c":"Case","PI_Policy_Configuration__c":"a4n0l0000008odTAAQ","Enable_Encrypt__c":true,"Field_Type__c":"String","SF_Field_API_Name__c":"CASE_CUSTOMER__c","AWS_Field_API__c":"caseCustomer","SF_Field_Encrypted_API__c":"CASE_CUSTOMER_Encrypted__c","AWS_Encrypted_Field_API__c":"caseCustomerEncrypted","Id":"a4l0l000000977dAAA","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l000000978RAAQ"},"PI_Policy_Configuration_Name__c":"Report__c","PI_Policy_Configuration__c":"a4n0l0000008oddAAA","Enable_Encrypt__c":true,"Field_Type__c":"String","SF_Field_API_Name__c":"Staff_Info_Manual_c__c","AWS_Field_API__c":"Staff_Info_Manual_c__c","Id":"a4l0l000000978RAAQ","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l000000977sAAA"},"PI_Policy_Configuration_Name__c":"Consum_Apply__c","PI_Policy_Configuration__c":"a4n0l0000008odYAAQ","Enable_Encrypt__c":true,"Field_Type__c":"String","SF_Field_API_Name__c":"Phone_number__c","AWS_Field_API__c":"phone","Id":"a4l0l000000977sAAA","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l00000097AxAAI"},"PI_Policy_Configuration_Name__c":"Address__c","PI_Policy_Configuration__c":"a4n0l0000008pWAAAY","Enable_Encrypt__c":true,"Field_Type__c":"String","SF_Field_API_Name__c":"Telephone__c","AWS_Field_API__c":"telephone","Id":"a4l0l00000097AxAAI","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l00000097B7AAI"},"PI_Policy_Configuration_Name__c":"Address__c","PI_Policy_Configuration__c":"a4n0l0000008pWAAAY","Enable_Encrypt__c":true,"Field_Type__c":"String","SF_Field_API_Name__c":"Detailed_Address__c","AWS_Field_API__c":"detailedAddress","Id":"a4l0l00000097B7AAI","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l00000097RFAAY"},"PI_Policy_Configuration_Name__c":"Event","PI_Policy_Configuration__c":"a4n0l0000008piuAAA","Enable_Encrypt__c":true,"Field_Type__c":"String","SF_Field_API_Name__c":"Visitor3__c","AWS_Field_API__c":"visitor3","SF_Field_Encrypted_API__c":"Visitor3_Encrypted__c","AWS_Encrypted_Field_API__c":"visitor3Encrypt","Id":"a4l0l00000097RFAAY","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l000000977TAAQ"},"PI_Policy_Configuration_Name__c":"Lead","PI_Policy_Configuration__c":"a4n0l0000008o8JAAQ","Enable_Encrypt__c":true,"Field_Type__c":"String","SF_Field_API_Name__c":"LastName","AWS_Field_API__c":"LastName","Id":"a4l0l000000977TAAQ","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l00000097B2AAI"},"PI_Policy_Configuration_Name__c":"Address__c","PI_Policy_Configuration__c":"a4n0l0000008pWAAAY","Enable_Encrypt__c":true,"Field_Type__c":"String","SF_Field_API_Name__c":"ZipCode__c","AWS_Field_API__c":"zipCode","Id":"a4l0l00000097B2AAI","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l00000097HZAAY"},"PI_Policy_Configuration_Name__c":"Agency_Contact__c","PI_Policy_Configuration__c":"a4n0l0000008pgtAAA","Enable_Encrypt__c":true,"Field_Type__c":"String","SF_Field_API_Name__c":"Name","AWS_Field_API__c":"name","SF_Field_Encrypted_API__c":"Name_Encrypted__c","AWS_Encrypted_Field_API__c":"nameEncrypt","Id":"a4l0l00000097HZAAY","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l0000009795AAA"},"PI_Policy_Configuration_Name__c":"Report__c","PI_Policy_Configuration__c":"a4n0l0000008oddAAA","Enable_Encrypt__c":true,"Field_Type__c":"PickList","SF_Field_API_Name__c":"Practitioner1_Part__c","AWS_Field_API__c":"Practitioner1_Part__c","Id":"a4l0l0000009795AAA","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l000000979ZAAQ"},"PI_Policy_Configuration_Name__c":"Report__c","PI_Policy_Configuration__c":"a4n0l0000008oddAAA","Enable_Encrypt__c":true,"Field_Type__c":"PickList","SF_Field_API_Name__c":"sex__c","AWS_Field_API__c":"sex__c","Id":"a4l0l000000979ZAAQ","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l000000978MAAQ"},"PI_Policy_Configuration_Name__c":"Report__c","PI_Policy_Configuration__c":"a4n0l0000008oddAAA","Enable_Encrypt__c":true,"Field_Type__c":"String","SF_Field_API_Name__c":"Professor_sigh_text__c","AWS_Field_API__c":"Professor_sigh_text__c","Id":"a4l0l000000978MAAQ","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l000000979FAAQ"},"PI_Policy_Configuration_Name__c":"Report__c","PI_Policy_Configuration__c":"a4n0l0000008oddAAA","Enable_Encrypt__c":true,"Field_Type__c":"PickList","SF_Field_API_Name__c":"Practitioner3_Part__c","AWS_Field_API__c":"Practitioner3_Part__c","Id":"a4l0l000000979FAAQ","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l000000977iAAA"},"PI_Policy_Configuration_Name__c":"Case","PI_Policy_Configuration__c":"a4n0l0000008odTAAQ","Enable_Encrypt__c":true,"Field_Type__c":"String","SF_Field_API_Name__c":"Customer_manual__c","AWS_Field_API__c":"customerManual","SF_Field_Encrypted_API__c":"Customer_manual_Encrypted__c","AWS_Encrypted_Field_API__c":"customerManualEncrypted","Id":"a4l0l000000977iAAA","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l000000979KAAQ"},"PI_Policy_Configuration_Name__c":"Report__c","PI_Policy_Configuration__c":"a4n0l0000008oddAAA","Enable_Encrypt__c":true,"Field_Type__c":"PickList","SF_Field_API_Name__c":"Practitioner4_Part__c","AWS_Field_API__c":"Practitioner4_Part__c","Id":"a4l0l000000979KAAQ","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l000000978WAAQ"},"PI_Policy_Configuration_Name__c":"Report__c","PI_Policy_Configuration__c":"a4n0l0000008oddAAA","Enable_Encrypt__c":true,"Field_Type__c":"String","SF_Field_API_Name__c":"Responsible_Person_HP_c__c","AWS_Field_API__c":"Responsible_Person_HP_c__c","Id":"a4l0l000000978WAAQ","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l000000978hAAA"},"PI_Policy_Configuration_Name__c":"Report__c","PI_Policy_Configuration__c":"a4n0l0000008oddAAA","Enable_Encrypt__c":true,"Field_Type__c":"String","SF_Field_API_Name__c":"Medical_History__c","AWS_Field_API__c":"Medical_History__c","Id":"a4l0l000000978hAAA","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l000000979uAAA"},"PI_Policy_Configuration_Name__c":"Contact","PI_Policy_Configuration__c":"a4n0l0000008odOAAQ","Enable_Encrypt__c":true,"Field_Type__c":"String","SF_Field_API_Name__c":"LastName","AWS_Field_API__c":"lastName","SF_Field_Encrypted_API__c":"LastName_Encrypted__c","AWS_Encrypted_Field_API__c":"lastNameEncrypt","Id":"a4l0l000000979uAAA","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l00000097J1AAI"},"PI_Policy_Configuration_Name__c":"Repair__c","PI_Policy_Configuration__c":"a4n0l0000008pgyAAA","Enable_Encrypt__c":true,"SF_Field_API_Name__c":"Detailed_Address__c","AWS_Field_API__c":"detailedAddress","SF_Field_Encrypted_API__c":"Detailed_Address_Encrypt__c","AWS_Encrypted_Field_API__c":"detailedAddressEncrypt","Id":"a4l0l00000097J1AAI","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l00000097DXAAY"},"PI_Policy_Configuration_Name__c":"Inspection_Report__c","PI_Policy_Configuration__c":"a4n0l0000008pWFAAY","Enable_Encrypt__c":true,"Field_Type__c":"String","SF_Field_API_Name__c":"Technician_HP__c","AWS_Field_API__c":"technicianHP","SF_Field_Encrypted_API__c":"Technician_HP_Encrypted__c","AWS_Encrypted_Field_API__c":"technicianHPEncrypt","Id":"a4l0l00000097DXAAY","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l00000097GgAAI"},"PI_Policy_Configuration_Name__c":"Tender_information__c","PI_Policy_Configuration__c":"a4n0l0000008pgjAAA","Enable_Encrypt__c":true,"Field_Type__c":"String","SF_Field_API_Name__c":"ZhongRelationWay__c","AWS_Field_API__c":"zhongRelationWay","SF_Field_Encrypted_API__c":"ZhongRelationWay_Encrypted__c","AWS_Encrypted_Field_API__c":"zhongRelationWayEncrypt","Id":"a4l0l00000097GgAAI","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l00000097GWAAY"},"PI_Policy_Configuration_Name__c":"Tender_information__c","PI_Policy_Configuration__c":"a4n0l0000008pgjAAA","Enable_Encrypt__c":true,"Field_Type__c":"String","SF_Field_API_Name__c":"ZhaoRelationWay__c","AWS_Field_API__c":"zhaoRelationWay","SF_Field_Encrypted_API__c":"ZhaoRelationWay_Encrypted__c","AWS_Encrypted_Field_API__c":"zhaoRelationWayEncrypt","Id":"a4l0l00000097GWAAY","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l00000097IrAAI"},"PI_Policy_Configuration_Name__c":"Repair__c","PI_Policy_Configuration__c":"a4n0l0000008pgyAAA","Enable_Encrypt__c":true,"SF_Field_API_Name__c":"address_Telephone__c","AWS_Field_API__c":"addressTelephone","SF_Field_Encrypted_API__c":"Address_Telephone_Encrypt__c","AWS_Encrypted_Field_API__c":"addressTelephoneEncrypt","Id":"a4l0l00000097IrAAI","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l00000097JGAAY"},"PI_Policy_Configuration_Name__c":"Repair__c","PI_Policy_Configuration__c":"a4n0l0000008pgyAAA","Enable_Encrypt__c":true,"SF_Field_API_Name__c":"address_ZipCode__c","AWS_Field_API__c":"addressZipCode","SF_Field_Encrypted_API__c":"Address_ZipCode_Encrypt__c","AWS_Encrypted_Field_API__c":"addressZipCodeEncrypt","Id":"a4l0l00000097JGAAY","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l00000097IXAAY"},"PI_Policy_Configuration_Name__c":"QIS_Report__c","PI_Policy_Configuration__c":"a4n0l0000008pdiAAA","Enable_Encrypt__c":true,"Field_Type__c":"String","SF_Field_API_Name__c":"Caller_phone__c","AWS_Field_API__c":"callerPhone","SF_Field_Encrypted_API__c":"Caller_phone_Encrypted__c","AWS_Encrypted_Field_API__c":"callerPhoneEncrypt","Id":"a4l0l00000097IXAAY","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l00000097GlAAI"},"PI_Policy_Configuration_Name__c":"Tender_information__c","PI_Policy_Configuration__c":"a4n0l0000008pgjAAA","Enable_Encrypt__c":true,"Field_Type__c":"String","SF_Field_API_Name__c":"AgentRelationName__c","AWS_Field_API__c":"agentRelationName","SF_Field_Encrypted_API__c":"AgentRelationName_Encrypted__c","AWS_Encrypted_Field_API__c":"agentRelationNameEncrypt","Id":"a4l0l00000097GlAAI","CurrencyIsoCode":"CNY"},{"attributes":{"type":"PI_Field_Policy_Detail__c","url":"/services/data/v54.0/sobjects/PI_Field_Policy_Detail__c/a4l0l00000097GbAAI"},"PI_Policy_Configuration_Name__c":"Tender_information__c","PI_Policy_Configuration__c":"a4n0l0000008pgjAAA","Enable_Encrypt__c":true,"Field_Type__c":"String","SF_Field_API_Name__c":"ZhongRelationName__c","AWS_Field_API__c":"zhongRelationName","SF_Field_Encrypted_API__c":"ZhongRelationName_Encrypted__c","AWS_Encrypted_Field_API__c":"zhongRelationNameEncrypt","Id":"a4l0l00000097GbAAI","CurrencyIsoCode":"CNY"}]'; |
| | | List<PI_Field_Policy_Detail__c> pidList = (List<PI_Field_Policy_Detail__c>)JSON.deserialize(pidJson,List<PI_Field_Policy_Detail__c>.class); |
| | | List<PI_Field_Policy_Detail__c> insertPidList = new List<PI_Field_Policy_Detail__c>(); |
| | | for(PI_Field_Policy_Detail__c pid:pidList){ |
| | | if (!typeIdMap.containsKey((pid.PI_Policy_Configuration_Name__c))){ |
| | | continue; |
| | | } |
| | | |
| | | PI_Field_Policy_Detail__c ipid = new PI_Field_Policy_Detail__c(); |
| | | ipid.Enable_Encrypt__c = pid.Enable_Encrypt__c; |
| | | ipid.Field_Type__c = pid.Field_Type__c; |
| | | ipid.Order_Number__c = pid.Order_Number__c; |
| | | ipid.PI_Policy_Configuration__c = typeIdMap.get(pid.PI_Policy_Configuration_Name__c); |
| | | ipid.SF_Field_API_Name__c = pid.SF_Field_API_Name__c; |
| | | ipid.AWS_Field_API__c = pid.AWS_Field_API__c; |
| | | ipid.SF_Field_Encrypted_API__c = pid.SF_Field_Encrypted_API__c; |
| | | ipid.AWS_Encrypted_Field_API__c = pid.AWS_Encrypted_Field_API__c; |
| | | insertPidList.add(ipid); |
| | | } |
| | | insert insertPidList; |
| | | } |
| | | //create sample user |
| | | public static List<User> CreateUsers(Integer num){ |
| | | Map<Id,Profile> profileList = new Map<Id, Profile>([SELECT Id, Name FROM Profile]) ; |
| | | Map<String, Profile> profileMap = new Map<String, Profile>(); |
| | | Profile p = [select Id from Profile where id =:System.Label.ProfileId_SystemAdmin]; |
| | | for(Profile profileTemp : profileList.values()){ |
| | | profileMap.put(profileTemp.Name, profileTemp); |
| | | } |
| | | |
| | | List<User> userList=new List<User>(); |
| | | for(Integer i = 0 ;i<num;i++){ |
| | | User u = new User( Alias = 'test', |
| | | Email = 'testuser'+i+'@olympus.com', |
| | | Emailencodingkey = 'UTF-8', |
| | | Lastname = 'TestUser'+i, |
| | | Languagelocalekey = 'zh_CN', |
| | | Localesidkey = 'zh_CN', |
| | | Profileid = p.id, |
| | | Country = 'China', |
| | | IsActive = true, |
| | | Timezonesidkey = 'America/Sao_Paulo', |
| | | Username = 'testuser'+i+'@olympus.com', |
| | | Job_Category__c = '销售服务' |
| | | ); |
| | | userList.add(u); |
| | | } |
| | | insert userList; |
| | | //根据简档名取对应userList Map<String,List<User>> |
| | | // Map<String, List<User>> sampleUserMap = new Map<String, List<User>>(); |
| | | // for(User userTemp : userList){ |
| | | // String profileName = profileList.get(userTemp.Profileid).Name ; |
| | | // if(sampleUserMap.containsKey(profileName)) { |
| | | // sampleUserMap.get(profileName).add(userTemp); |
| | | // }else{ |
| | | // List<User> userTempList = new List<User>(); |
| | | // userTempList.add(userTemp); |
| | | // sampleUserMap.put(profileName, userTempList); |
| | | // } |
| | | // } |
| | | // return sampleUserMap; |
| | | //直接返回userlist |
| | | return userList; |
| | | } |
| | | public static List<Account> CreateSimpleAccounts(Integer num){ |
| | | Profile p = [select Id from Profile where id =:System.Label.ProfileId_SystemAdmin]; |
| | | User hpOwner = new User(); |
| | | hpOwner = [SELECT Test_staff__c,LastName,FirstName,Alias,CommunityNickname,Email,Username,IsActive,EmailEncodingKey,ProfileId FROM User Limit 1]; |
| | | if(hpOwner==null){ |
| | | hpOwner = new User(Test_staff__c = true, LastName = 'TestUserA', FirstName = 'owner', Alias = 'hp', CommunityNickname = 'hpOwner', Email = 'olympus_hpowner@sunbridge.com', Username = 'olympus_hpowner@sunbridge.com', IsActive = true, EmailEncodingKey = 'ISO-2022-JP', TimeZoneSidKey = 'Asia/Tokyo', LocaleSidKey = 'ja_JP', LanguageLocaleKey = 'ja', ProfileId = p.id,Job_Category__c = '销售服务'); |
| | | insert hpOwner; |
| | | } |
| | | List<RecordType> rectHp = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and Name = '病院']; |
| | | if (rectHp.size() == 0) { |
| | | return null; |
| | | } |
| | | List<RecordType> rectDpt = [select Id, Name from RecordType where IsActive = true and SobjectType = 'Account' and Name = '診療科 呼吸科' order by Name desc]; |
| | | if (rectDpt.size() == 0) { |
| | | return null; |
| | | } |
| | | Account hp1 = new Account(RecordTypeId = rectHp[0].Id,Is_Active__c = '有効' ,Name = 'testHp1', OCM_Category__c = 'H0', OwnerId = hpOwner.Id); |
| | | insert hp1; |
| | | Account dc1s = [Select Id, Name, Department_Class_Label__c,ParentId from Account where Parent.Id = :hp1.Id and Department_Class_Label__c = '呼吸科' order by Department_Class_Label__c limit 1]; |
| | | List<Account> accList = new List<Account>(); |
| | | for(Integer i = 0;i < num; i++){ |
| | | Account acc = new Account(); |
| | | acc.Name = 'simpleTest'+i; |
| | | acc.ParentId = dc1s.Id; |
| | | acc.Hospital__c = dc1s.ParentId;//战略科室的医院要和科室的医院一致 Parent.Parent.RecordType.Name = '病院' and Hospital__c == Parent.ParentId |
| | | acc.Department_Class__c = dc1s.Id;//战略科室分类要和母公司一样 Department_Class__c = ParentId |
| | | acc.RecordTypeId = rectDpt[0].Id;// 战略科室分类的类型要和科室的客户记录类型一致。RecordType.Name == Parent.Department_Class_Label__c |
| | | accList.add(acc); |
| | | } |
| | | insert accList; |
| | | return accList; |
| | | } |
| | | public static List<Account> CreateAccounts(Integer num){ |
| | | Profile p = [select Id from Profile where id =:System.Label.ProfileId_SystemAdmin]; |
| | | User hpOwner = new User(); |
| | | hpOwner = [SELECT Test_staff__c,LastName,FirstName,Alias,CommunityNickname,Email,Username,IsActive,EmailEncodingKey,ProfileId FROM User Limit 1]; |
| | | if(hpOwner==null){ |
| | | hpOwner = new User(Test_staff__c = true, LastName = 'TestUserA', FirstName = 'owner', Alias = 'hp', |
| | | CommunityNickname = 'hpOwner', Email = 'olympus_hpowner@sunbridge.com', Username = 'olympus_hpowner@sunbridge.com', |
| | | IsActive = true, EmailEncodingKey = 'ISO-2022-JP', TimeZoneSidKey = 'Asia/Tokyo', LocaleSidKey = 'ja_JP', |
| | | LanguageLocaleKey = 'ja', ProfileId = p.id,Job_Category__c = '销售服务'); |
| | | insert hpOwner; |
| | | } |
| | | List<RecordType> rectHp = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and Name = '病院']; |
| | | if (rectHp.size() == 0) { |
| | | return null; |
| | | } |
| | | List<RecordType> rectDp = [select Id, Name from RecordType where IsActive = true and SobjectType = 'Account' and Name = '戦略科室分類 呼吸科' order by Name desc]; |
| | | if (rectDp.size() == 0) { |
| | | return null; |
| | | } |
| | | |
| | | List<RecordType> rectDpt = [select Id, Name from RecordType where IsActive = true and SobjectType = 'Account' and Name = '診療科 呼吸科' order by Name desc]; |
| | | if (rectDpt.size() == 0) { |
| | | return null; |
| | | } |
| | | Account hp1 = new Account(RecordTypeId = rectHp[0].Id,Is_Active__c = '有効' ,Name = 'testHp1', OCM_Category__c = 'H0', OwnerId = hpOwner.Id); |
| | | insert hp1; |
| | | |
| | | Account dp1 = new Account(RecordTypeId = rectDp[0].Id, Is_Active__c = '有効' , Department_Class_Label__c = '呼吸科', |
| | | ParentId = hp1.id, Name = 'testdp1', OCM_Category__c = 'H0', OwnerId = hpOwner.Id); |
| | | insert dp1; |
| | | |
| | | List<Account> dc1s = [Select Id, Name, Department_Class_Label__c from Account where Parent.Id = :hp1.Id and Department_Class_Label__c = '呼吸科' order by Department_Class_Label__c]; |
| | | List<Account> accList = new List<Account>(); |
| | | for(Integer i=0;i<num;i++){ |
| | | Account acc = new Account(); |
| | | acc.RecordTypeId = rectDpt[0].Id; |
| | | acc.Name = 'test'+i; |
| | | acc.Department_Name__c = '診療科'+i; |
| | | acc.ParentId = dc1s[0].Id; |
| | | acc.Department_Class__c = dc1s[0].Id; |
| | | acc.Hospital__c = hp1.Id; |
| | | acc.Is_Active__c = '有効'; |
| | | accList.add(acc); |
| | | } |
| | | insert accList; |
| | | return accList; |
| | | } |
| | | public static List<Contact> CreateContacts(Integer num){ |
| | | List<Account> accList = CreateAccounts(1); |
| | | List<Contact> conList = new List<Contact>(); |
| | | for(Integer i=0;i<num;i++){ |
| | | Contact con = new Contact(); |
| | | con.AccountId = accList[0].Id; |
| | | con.FirstName = '責任者'; |
| | | con.LastName = 'test'+i+'医院'; |
| | | con.Strategic_dept_Class__c = accList[0].Id; |
| | | conList.add(con); |
| | | } |
| | | insert conList; |
| | | return conList; |
| | | } |
| | | public static List<Opportunity> CreateOpportunitys(Integer num){ |
| | | List<Opportunity> oppList = new List<Opportunity>(); |
| | | List<Account> accList = CreateAccounts(3); |
| | | List<RecordType> rectCo = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and Name = '病院']; |
| | | if (rectCo.size() == 0) { |
| | | return null; |
| | | } |
| | | List<RecordType> rectSct = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and Name = '戦略科室分類 呼吸科']; |
| | | if (rectSct.size() == 0) { |
| | | return null; |
| | | } |
| | | List<RecordType> rectDpt = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and Name = '診療科 消化科']; |
| | | if (rectDpt.size() == 0) { |
| | | return null; |
| | | } |
| | | Account company = accList[0]; |
| | | company.RecordTypeId = rectCo[0].Id; |
| | | company.Name = 'NFM007TestCompany'; |
| | | upsert company; |
| | | Account section = accList[1]; |
| | | section.RecordTypeId = rectSct[0].Id; |
| | | section.Name = '*'; |
| | | section.Department_Class_Label__c = '消化科'; |
| | | section.ParentId = company.Id; |
| | | section.Hospital_Department_Class__c = company.Id; |
| | | upsert section; |
| | | Account depart = accList[2]; |
| | | depart.RecordTypeId = rectDpt[0].Id; |
| | | depart.Name = '*'; |
| | | depart.Department_Name__c = 'NFM007TestDepart'; |
| | | depart.ParentId = section.Id; |
| | | depart.Department_Class__c = section.Id; |
| | | depart.Hospital__c = company.Id; |
| | | upsert depart; |
| | | for(Integer i=0;i<num;i++){ |
| | | Opportunity opp = new Opportunity(); |
| | | opp.AccountId = depart.Id; |
| | | opp.Department_Class__c = section.Id; |
| | | opp.Hospital__c = company.Id; |
| | | opp.SAP_Send_OK__c = false; |
| | | opp.Name = 'GZ-SP-NFM007_'+i; |
| | | opp.Trade__c = '内貿'; |
| | | opp.StageName = '引合'; |
| | | opp.CloseDate = Date.newinstance(2022, 11, 30); |
| | | opp.Stock_apply_status__c = '申请中'; |
| | | oppList.add(opp); |
| | | } |
| | | insert oppList; |
| | | return oppList; |
| | | } |
| | | public static List<Task> CreateTasks(Integer num){ |
| | | List<Task> taList = new List<Task>(); |
| | | Account acc = CreateAccounts(1)[0]; |
| | | Opportunity opp = CreateOpportunitys(1)[0]; |
| | | for(Integer i=0;i<num;i++){ |
| | | Task ta = new Task(); |
| | | // ta.account__c = acc.id; |
| | | // ta.name = 'testTask'+i; |
| | | // ta.taskStatus__c = '01 分配'; |
| | | // ta.assignee__c = UserInfo.getUserId(); |
| | | // ta.recordtypeId = Schema.SObjectType.task__c.getRecordTypeInfosByDeveloperName().get('OPD').getRecordTypeId(); |
| | | // ta.distributionCount__c = 1; |
| | | // ta.taskDifferent__c = '被动任务'; |
| | | // ta.OpportunityId__c = opp.Id; |
| | | // taList.add(ta); |
| | | } |
| | | insert taList; |
| | | return taList; |
| | | } |
| | | public static List<Asset> CreateAssets(Integer num){ |
| | | // 省 |
| | | Address_Level__c al = new Address_Level__c(); |
| | | al.Name = '東京'; |
| | | al.Level1_Code__c = 'CN-99'; |
| | | al.Level1_Sys_No__c = '999999'; |
| | | insert al; |
| | | // 市 |
| | | Address_Level2__c al2 = new Address_Level2__c(); |
| | | al2.Level1_Code__c = 'CN-99'; |
| | | al2.Level1_Sys_No__c = '999999'; |
| | | al2.Level1_Name__c = '東京'; |
| | | al2.Name = '渋谷区'; |
| | | al2.Level2_Code__c = 'CN-9999'; |
| | | al2.Level2_Sys_No__c = '9999999'; |
| | | al2.Address_Level__c = al.id; |
| | | insert al2; |
| | | |
| | | // 病院を作る |
| | | ControllerUtil.EscapeNFM001Trigger = true; |
| | | StaticParameter.EscapeNFM001Trigger = true; |
| | | StaticParameter.EscapeAccountTrigger = true; |
| | | StaticParameter.EscapeNFM001AgencyContractTrigger = true; |
| | | |
| | | Account hospital = new Account(); |
| | | hospital.recordtypeId = [Select Id FROM RecordType WHERE IsActive = true and SobjectType = 'Account' and DeveloperName = 'HP'].id; |
| | | System.debug('病院完了!'); |
| | | hospital.Name = 'test hospital'; |
| | | hospital.Is_Active__c = '有効'; |
| | | hospital.Attribute_Type__c = '卫生部'; |
| | | hospital.Speciality_Type__c = '综合医院'; |
| | | hospital.Grade__c = '一级'; |
| | | hospital.OCM_Category__c = 'SLTV'; |
| | | hospital.Is_Medical__c = '医疗机构'; |
| | | hospital.State_Master__c = al.id; |
| | | hospital.City_Master__c = al2.id; |
| | | hospital.Town__c = '东京'; |
| | | insert hospital; |
| | | System.debug('病院 insert 完了!'); |
| | | |
| | | // 戦略科室を得る |
| | | Account strategicDep = new Account(); |
| | | strategicDep.recordtypeId = [Select Id FROM RecordType WHERE IsActive = true and SobjectType = 'Account' and DeveloperName = 'Department_Class_OTH'].id; |
| | | strategicDep.Name = 'Olympus社内 其他'; |
| | | strategicDep.Department_Class_Label__c = '其他'; |
| | | strategicDep.Hospital__c = hospital.Id; |
| | | strategicDep.ParentId = hospital.Id; |
| | | insert strategicDep; |
| | | |
| | | // 診療科を作る |
| | | Account dep = new Account(); |
| | | dep.recordtypeId = [Select Id FROM RecordType WHERE IsActive = true and SobjectType = 'Account' and DeveloperName = 'Department_OTH'].id; |
| | | dep.Name = 'test dep'; |
| | | dep.AgentCode_Ext__c = '99998'; |
| | | dep.ParentId = strategicDep.Id; |
| | | dep.Department_Class__c = strategicDep.Id; |
| | | dep.Hospital__c = hospital.Id; |
| | | insert dep; |
| | | |
| | | System.debug('診療科 insert 完了!'); |
| | | |
| | | // 产品 |
| | | Product2 pro1 = new Product2(Name='name01',IsActive=true,Family='GI', |
| | | Fixture_Model_No__c='n01',Serial_Lot_No__c='S/N tracing', |
| | | Fixture_Model_No_T__c = 'n01', |
| | | ProductCode_Ext__c='pc01',Manual_Entry__c=false); |
| | | |
| | | insert new Product2[] {pro1}; |
| | | |
| | | List<Asset> asList = new List<Asset>(); |
| | | for(Integer i=0;i<num;i++){ |
| | | Asset assetA1 = new Asset(Asset_Owner__c = 'Olympus'); |
| | | assetA1.RecordTypeId = System.Label.Asset_RecordType; |
| | | assetA1.SerialNumber = 'ass'+i; |
| | | assetA1.Name = 'ass'+i; |
| | | assetA1.AccountId = dep.Id; |
| | | assetA1.Department_Class__c = strategicDep.Id; |
| | | assetA1.Hospital__c = hospital.Id; |
| | | assetA1.Product2Id = pro1.Id; |
| | | assetA1.Quantity = 1; |
| | | assetA1.Status = '有库存'; |
| | | assetA1.Manage_type__c = '个体管理'; |
| | | assetA1.Loaner_accsessary__c = false; |
| | | assetA1.Out_of_wh__c = 0; |
| | | assetA1.Salesdepartment__c = '1.华北营业本部'; |
| | | assetA1.Internal_asset_location__c = '北京 备品中心'; |
| | | assetA1.Product_category__c = 'GI'; |
| | | assetA1.Equipment_Type__c = '产品试用'; |
| | | assetA1.SalesProvince__c = '北京'; |
| | | asList.add(assetA1); |
| | | } |
| | | insert asList; |
| | | return asList; |
| | | } |
| | | public static List<Repair__c> CreateRepairs(Integer num){ |
| | | List<Repair__c> rpList = new List<Repair__c>(); |
| | | |
| | | Asset ast = CreateAssets(1)[0]; |
| | | Account strategicDep = new Account(); |
| | | strategicDep.recordtypeId = [Select Id FROM RecordType WHERE IsActive = true and SobjectType = 'Account' and DeveloperName = 'Department_Class_OTH'].id; |
| | | strategicDep.Name = 'Olympus社内 其他'; |
| | | strategicDep.Department_Class_Label__c = '其他'; |
| | | strategicDep.Hospital__c = ast.Hospital__c; |
| | | strategicDep.ParentId = ast.Hospital__c; |
| | | insert strategicDep; |
| | | // List<Account> strategicDep = [SELECT ID, Name FROM Account WHERE parentId = :hospital.Id AND recordType.DeveloperName = 'Department_Class_OTH']; |
| | | |
| | | String strategicDepId = strategicDep.Id; |
| | | Account dep = new Account(); |
| | | dep.recordtypeId = [SELECT Id FROM RecordType WHERE IsActive = true AND SobjectType = 'Account' AND DeveloperName = 'Department_OTH'].id; |
| | | |
| | | dep.Name = 'test depp'; |
| | | dep.AgentCode_Ext__c = '99999988'; |
| | | dep.ParentId = strategicDepId; |
| | | dep.Department_Class__c = strategicDepId; |
| | | dep.Hospital__c = ast.Hospital__c; |
| | | insert dep; |
| | | String depId = dep.Id; |
| | | |
| | | |
| | | for(Integer i=0;i<num;i++){ |
| | | Repair__c repairObj1 = new Repair__c(); |
| | | |
| | | repairObj1.Delivered_Product__c = ast.Id; |
| | | repairObj1.Hospital__c = ast.Hospital__c; |
| | | // repairObj1.Hospital__c = hospitalId; |
| | | repairObj1.Department_Class__c = strategicDepId; |
| | | repairObj1.Account__c = depId; |
| | | repairObj1.SalesOfficeCode_selection__c = '北京石景山'; |
| | | repairObj1.On_site_repair__c = 'RC修理'; |
| | | repairObj1.Failure_Occurrence_Date__c = Date.today(); |
| | | rpList.add(repairObj1); |
| | | } |
| | | insert rpList; |
| | | return rpList; |
| | | } |
| | | public static List<Address__c> CreateAddresses(Integer num){ |
| | | List<Address__c> addList = new List<Address__c>(); |
| | | Repair__c rp = CreateRepairs(1)[0]; |
| | | Contact contact2 = new Contact(); |
| | | contact2.AccountId = rp.Account__c; |
| | | contact2.FirstName = '小明'; |
| | | contact2.LastName = 'test1经销商'; |
| | | insert contact2; |
| | | for(Integer i=0;i<num;i++){ |
| | | Address__c add = new Address__c(); |
| | | add.Address_Classification__c = '医院'; |
| | | add.Customer__c = rp.Account__c; |
| | | // add.Customer__c = depart.Id; |
| | | add.Contacts__c = contact2.id; |
| | | add.Telephone__c = '123123'+i; |
| | | add.Province__c = rp.Account__r.State_Master__c; |
| | | add.City__c = rp.Account__r.City_Master__c; |
| | | // add.Province__c = alc1.id; |
| | | // add.City__c = alc11.id; |
| | | add.Detailed_Address__c = '北京市顺义区西海洪村'+i; |
| | | addList.add(add); |
| | | } |
| | | // insert addList; |
| | | return addList; |
| | | } |
| | | public static List<Agency_Contact__c> CreateAgencyContacts(Integer num){ |
| | | String recordTypeId1 = Schema.SObjectType.Account.getRecordTypeInfosByDeveloperName().get('HP').getRecordTypeId(); |
| | | String recordTypeId2 = Schema.SObjectType.Account.getRecordTypeInfosByDeveloperName().get('Agency').getRecordTypeId(); |
| | | List<Agency_Contact__c> acList = new List<Agency_Contact__c>(); |
| | | Account account1 = new Account(); |
| | | Account account2 = new Account(); |
| | | account1.Name = 'test1医院'; |
| | | account1.RecordTypeId = recordTypeId1; |
| | | insert account1; |
| | | account2.Name = 'test1经销商'; |
| | | account2.RecordTypeId = recordTypeId2; |
| | | insert account2; |
| | | Agency_Hospital_Link__c aHosLink = new Agency_Hospital_Link__c(); |
| | | aHosLink.Name = 'test1经销商医院'; |
| | | aHosLink.Hospital__c = account1.Id; |
| | | aHosLink.Agency__c = account2.Id; |
| | | insert aHosLink; |
| | | for(Integer i=0;i<num;i++){ |
| | | Agency_Contact__c ac = new Agency_Contact__c(); |
| | | ac.Agency_Hospital__c = aHosLink.Id; |
| | | ac.Type__c = '医生'; |
| | | ac.Name = 'testAgencyUser'+i; |
| | | acList.add(ac); |
| | | } |
| | | insert acList; |
| | | return acList; |
| | | } |
| | | public static List<Rental_Apply__c> CreateRentalApplys(Integer num){ |
| | | List<RecordType> rectCo = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and Name = '病院']; |
| | | if (rectCo.size() == 0) { |
| | | return null; |
| | | } |
| | | List<RecordType> rectSct = [select Id from RecordType where IsActive = true and SobjectType = 'Account' and Name = '戦略科室分類 呼吸科']; |
| | | if (rectSct.size() == 0) { |
| | | return null; |
| | | } |
| | | List<RecordType> rectDpt = [select Id, Name from RecordType where IsActive = true and SobjectType = 'Account' and Name IN ('診療科 消化科', '診療科 呼吸科') order by Name desc]; |
| | | if (rectDpt.size() == 0) { |
| | | return null; |
| | | } |
| | | Account company1 = new Account(); |
| | | Account company2 = new Account(); |
| | | company1.RecordTypeId = rectCo[0].Id; |
| | | company1.Name = '病院テスト1'; |
| | | company2.RecordTypeId = rectCo[0].Id; |
| | | company2.Name = '病院テスト2'; |
| | | List<Account> hps = new Account[] {company1, company2}; |
| | | insert hps; |
| | | |
| | | Account dc1 = new Account(Name = '呼吸科1',Department_Class_Label__c ='消化科',ParentId = company1.Id,RecordTypeId = rectSct[0].Id); |
| | | Account dc2 = new Account(Name = '呼吸科2',Department_Class_Label__c ='呼吸科',ParentId = company2.Id,RecordTypeId = rectSct[0].Id); |
| | | insert dc1; |
| | | insert dc2; |
| | | |
| | | Account depart1 = new Account(); |
| | | depart1.RecordTypeId = rectDpt[0].Id; |
| | | depart1.Name = '*'; |
| | | depart1.Department_Name__c = '診療科1'; |
| | | depart1.ParentId = dc1.Id; |
| | | depart1.Department_Class__c = dc1.Id;//值不存在或与筛选条件不匹配。 客户记录类型等于戦略科室分類 その他, 戦略科室分類 不明, 戦略科室分類 呼吸科, 戦略科室分類 婦人科, 戦略科室分類 普外科, 戦略科室分類 泌尿科, 戦略科室分類 消化科, 戦略科室分類 耳鼻喉科, 戦略科室分類ET |
| | | depart1.Hospital__c = company1.Id; |
| | | |
| | | Account depart2 = new Account(); |
| | | depart2.RecordTypeId = rectDpt[1].Id; |
| | | depart2.Name = '*'; |
| | | depart2.Department_Name__c = '診療科2'; |
| | | depart2.ParentId = dc2.Id; |
| | | depart2.Department_Class__c = dc2.Id;//值不存在或与筛选条件不匹配。 客户记录类型等于戦略科室分類 その他, 戦略科室分類 不明, 戦略科室分類 呼吸科, 戦略科室分類 婦人科, 戦略科室分類 普外科, 戦略科室分類 泌尿科, 戦略科室分類 消化科, 戦略科室分類 耳鼻喉科, 戦略科室分類ET |
| | | depart2.Hospital__c = company2.Id; |
| | | |
| | | insert new Account[] {depart1, depart2}; |
| | | |
| | | Contact core = new Contact(email = 'jplumber@salesforce.com', |
| | | firstname = 'Joe', |
| | | lastname = 'Plumber', |
| | | accountid = company1.id); |
| | | insert core; |
| | | |
| | | List<Rental_Apply__c> raList = new List<Rental_Apply__c>(); |
| | | |
| | | for(Integer i=0;i<num;i++){ |
| | | Rental_Apply__c ra = new Rental_Apply__c(); |
| | | ra.Name = 'test'+i; |
| | | // ra.Person_In_Charge__c = user.Id; |
| | | // ra.applyUser__c = user.Id; |
| | | ra.Status__c = FixtureUtil.raStatusMap.get(FixtureUtil.RaStatus.Cao_An_Zhong.ordinal()); |
| | | ra.Asset_loaner_start_day__c = Date.today(); |
| | | ra.Asset_loaner_closed_day__c = Date.today().addDays(10); |
| | | ra.direct_send__c = '经销商'; |
| | | ra.direct_shippment_address__c = 'testaddress'+i; |
| | | ra.Request_return_day__c = Date.today() + 30; |
| | | ra.Demo_purpose1__c = '产品试用'; |
| | | ra.Demo_purpose2__c = FixtureUtil.raDemo_purpose2MAP.get('shiyongwuxunjia'); |
| | | ra.Demo_purpose_text__c = '申请理由Test'+i; |
| | | ra.Request_demo_detail__c = 'IT测试'+i; |
| | | ra.Accsessary__c = '水气按钮'; |
| | | ra.Loaner_received_staff__c = 'test'+i; |
| | | ra.Loaner_received_staff_phone__c = 'test'+i; |
| | | ra.Request_shipping_day__c = Date.today(); |
| | | ra.Hope_Lonaer_date_Num__c = 1; |
| | | ra.Account__c = depart1.Id; |
| | | ra.Strategic_dept__c = dc1.Id; |
| | | ra.Hospital__c = company1.Id; |
| | | ra.Loaner_medical_Staff__c = core.Id; |
| | | ra.Request_return_day__c = Date.today() + 5; |
| | | ra.Phone_number__c = '12222222222'; |
| | | ra.AWS_Data_Id__c = '123456'+String.valueof(Datetime.now().hour())+String.valueof(Datetime.now().minute())+String.valueof(Datetime.now().second())+i; |
| | | raList.add(ra); |
| | | } |
| | | try{ |
| | | insert raList; |
| | | }catch(Exception e){ |
| | | System.debug('e.getMessage()-------'+e.getMessage()); |
| | | } |
| | | |
| | | return raList; |
| | | } |
| | | public static List<OPDPlan__c> CreateOPDPlans(Integer num){ |
| | | Rental_Apply__c ra = CreateRentalApplys(1)[0]; |
| | | List<OPDPlan__c> OPDList = new List<OPDPlan__c>(); |
| | | for(Integer i = 0;i < num;i++){ |
| | | OPDPlan__c opd = new OPDPlan__c(); |
| | | opd.Name = 'TestOPD'+i; |
| | | opd.Rental_Apply2__c = ra.Id; |
| | | OPDList.add(opd); |
| | | } |
| | | insert OPDList; |
| | | return OPDList; |
| | | } |
| | | /*****************************/ |
| | | public static List<ASEActivity__c> CreateASEActivity(Integer num){ |
| | | List<ASEActivity__c> addList = new List<ASEActivity__c>(); |
| | | Repair__c rp = CreateRepairs(1)[0]; |
| | | Contact contact3= new Contact(); |
| | | contact3.AccountId = rp.Account__c; |
| | | contact3.FirstName = '小明明'; |
| | | contact3.LastName = 'test2经销商'; |
| | | insert contact3; |
| | | for(Integer i=0;i<num;i++){ |
| | | ASEActivity__c add = new ASEActivity__c(); |
| | | |
| | | add.ReporterASE__c = contact3.id;//客户人员, Contact |
| | | add.CustomerTel__c = '123123'+i; |
| | | |
| | | addList.add(add); |
| | | } |
| | | insert addList; |
| | | return addList; |
| | | } |
| | | |
| | | public static List<CampaignMember> CreateCampaignMember(Integer num){ |
| | | List<CampaignMember> addList = new List<CampaignMember>(); |
| | | Repair__c rp = CreateRepairs(1)[0]; |
| | | Campaign Cam= new Campaign(); |
| | | Cam.Name = '学会 培训名称'; |
| | | Cam.Live_Demo_report__c = '学会 培训-测试用'; |
| | | Cam.HostName__c = '小明明明';//会议主办方 |
| | | Cam.cooperatorCompany__c = '会议承办方';//会议承办方 |
| | | insert Cam; |
| | | Contact contact4= new Contact(); |
| | | contact4.AccountId = rp.Account__c; |
| | | contact4.FirstName = '小明明明'; |
| | | contact4.LastName = 'test4经销商'; |
| | | insert contact4; |
| | | for(Integer i=0;i<num;i++){ |
| | | CampaignMember add = new CampaignMember(); |
| | | |
| | | add.ContactId = contact4.id;//客户人员, Contact |
| | | add.MobilePhone__c = '123123666'+i; |
| | | add.CampaignId = Cam.Id; |
| | | |
| | | addList.add(add); |
| | | } |
| | | insert addList; |
| | | return addList; |
| | | } |
| | | |
| | | public static List<case> CreateCase(Integer num){ |
| | | List<case> addList = new List<case>(); |
| | | Repair__c rp = CreateRepairs(1)[0]; |
| | | Account aC = CreateAccounts(1)[0]; |
| | | Contact contact5= new Contact(); |
| | | contact5.AccountId = rp.Account__c; |
| | | contact5.FirstName = '小明明明明'; |
| | | contact5.LastName = 'test4经销商'; |
| | | insert contact5; |
| | | for(Integer i=0;i<num;i++){ |
| | | case add = new case(); |
| | | |
| | | add.ContactId = contact5.id;//客户人员姓名, Contact |
| | | add.Account__c = aC.Id;//客户名称, Account |
| | | add.Subject = 'Test For Case'+i; |
| | | |
| | | addList.add(add); |
| | | } |
| | | insert addList; |
| | | return addList; |
| | | } |
| | | |
| | | public static List<Event> CreateEvent(Integer num){ |
| | | List<Event> addList = new List<Event>(); |
| | | for(Integer i=0;i<num;i++){ |
| | | Event add = new Event(); |
| | | |
| | | add.Type = '電話'; |
| | | add.Description = 'Test for Event'+i; |
| | | add.DurationInMinutes = 1;//持续时间 |
| | | add.ActivityDateTime = Datetime.valueOf('2022-03-17 00:00:00'); |
| | | addList.add(add); |
| | | } |
| | | insert addList; |
| | | return addList; |
| | | } |
| | | |
| | | public static List<Inquiry_form__c> CreateInquiryform(Integer num){ |
| | | List<Inquiry_form__c> addList = new List<Inquiry_form__c>(); |
| | | for(Integer i=0;i<num;i++){ |
| | | Inquiry_form__c add = new Inquiry_form__c(); |
| | | |
| | | add.Name = '测试用'+i;//产品咨询单名称 |
| | | add.Request1__c = 'OPD';//委托事项 |
| | | add.Opportunity_Division__c = '询价';//意向区分 |
| | | add.Product1__c = '治疗附件'; |
| | | addList.add(add); |
| | | } |
| | | insert addList;//AND(NOT(ISBLANK(Hospital_Name__c)),Hospital_Name__r.Department_Class__c != Department_Class__c) |
| | | return addList; |
| | | } |
| | | |
| | | public static List<Inspection_Report__c> CreateInspectionReport(Integer num){ |
| | | List<Inspection_Report__c> addList = new List<Inspection_Report__c>(); |
| | | Profile p = [select Id from Profile where id =:System.Label.ProfileId_SystemAdmin]; |
| | | User hpOwner = new User(); |
| | | hpOwner = [SELECT Test_staff__c,LastName,FirstName,Alias,CommunityNickname,Email,Username,IsActive,EmailEncodingKey,ProfileId,Job_Category__c FROM User WHERE Job_Category__c='销售服务' Limit 1]; |
| | | if(hpOwner==null){ |
| | | hpOwner = new User(Test_staff__c = true, LastName = 'TestUserA', FirstName = 'owner', Alias = 'hp', CommunityNickname = 'hpOwner', Email = 'olympus_hpowner@olympus.com', Username = 'olympus_hpowner@sunbridge.com', IsActive = true, EmailEncodingKey = 'ISO-2022-JP', TimeZoneSidKey = 'Asia/Tokyo', LocaleSidKey = 'ja_JP', LanguageLocaleKey = 'ja', ProfileId = p.id,Job_Category__c = '销售服务'); |
| | | insert hpOwner; |
| | | } |
| | | |
| | | Account aC = CreateAccounts(1)[0]; |
| | | Account acTest = [Select Id,Is_Active_Formula__c From Account Where RecordType.Name = '病院' limit 1]; |
| | | |
| | | for(Integer i=0;i<num;i++){ |
| | | Inspection_Report__c add = new Inspection_Report__c(); |
| | | |
| | | add.Name = '点检报告书——测试用'+i;//点检报告书单号 |
| | | add.Hospital__c = acTest.Id;//医院 |
| | | System.debug('hpOwner.Job_Category__c----------------------'+hpOwner.Job_Category__c); |
| | | add.Reporter__c = hpOwner.Id;//报告者 |
| | | |
| | | addList.add(add); |
| | | } |
| | | insert addList; |
| | | return addList; |
| | | } |
| | | |
| | | public static List<Lead> CreateLead(Integer num){ |
| | | List<Lead> addList = new List<Lead>(); |
| | | Repair__c rp = CreateRepairs(1)[0]; |
| | | |
| | | /*Asset ast = CreateAssets(1)[0]; |
| | | Account strategicDep = new Account(); |
| | | strategicDep.recordtypeId = [Select Id FROM RecordType WHERE IsActive = true and SobjectType = 'Account' and DeveloperName = 'Department_Class_OTH'].id; |
| | | strategicDep.Name = 'Olympus社内 其他'; |
| | | strategicDep.Department_Class_Label__c = '其他'; |
| | | strategicDep.Hospital__c = ast.Hospital__c; |
| | | strategicDep.ParentId = ast.Hospital__c; |
| | | insert strategicDep; |
| | | 战略科室分类要和母公司一样 描述 Not(IsBlank(Hospital__c)) |
| | | && Parent.Parent.RecordTypeId = '01210000000QemG' |
| | | && Department_Class__c <> ParentId |
| | | |
| | | 不能更改战略科室的客户名 RecordTypeId != '01210000000QemG' && ISBLANK(Parent.ParentId) |
| | | && Parent.RecordTypeId = '01210000000QemG' && ISCHANGED(Name) && !Sys_Dept_Name_Change_Chk__c |
| | | 战略科室的医院要和科室的医院一致 IF(Parent.Parent.RecordTypeId = '01210000000QemG',IF(Hospital__c <> Parent.ParentId,TRUE,FALSE),FALSE) |
| | | |
| | | */ |
| | | |
| | | Account aC = CreateAccounts(1)[0]; |
| | | //Contact contactTest = CreateContacts(1)[0]; |
| | | //aC.Department_Class__c = '0010l00001PQF0SAAX'; |
| | | //aC.ParentId = '0010l00001PQF0SAAX'; |
| | | //update aC; |
| | | Contact contact12= new Contact(); |
| | | contact12.AccountId = aC.Id; |
| | | contact12.FirstName = '小明明明明'; |
| | | contact12.LastName = 'test12经销商'; |
| | | insert contact12; |
| | | Account acc = [SELECT Id,Name,parentId,Department_Class__c,Parent.Parent.RecordTypeId FROM Account WHERE Id =:contact12.AccountId ]; |
| | | acc.Department_Class__c = acc.parentId; |
| | | System.debug('acc-----------'+acc); |
| | | System.debug('acc.parentId-----------'+acc.parentId); |
| | | System.debug('acc.Parent.Parent.RecordTypeId-----------'+acc.Parent.Parent.RecordTypeId); |
| | | update acc; |
| | | //战略科室分类要和母公司一样: [] |
| | | //Not(IsBlank(Hospital__c)) && Parent.Parent.RecordTypeId = '01210000000QemG' && Department_Class__c <> ParentId |
| | | System.debug('contact12-------------'+contact12); |
| | | System.debug('contact12.AccountId-------------'+contact12.AccountId); |
| | | System.debug('contact12.Account.Department_Class__c-------------'+contact12.Account.Department_Class__c); |
| | | for(Integer i=0;i<num;i++){ |
| | | Lead add = new Lead(); |
| | | |
| | | add.Phone = '123123666'+i;//电话 |
| | | add.Hospital_Name__c = acc.Id;//客户 |
| | | add.Contact_Name__c = contact12.Id;//客户姓名 |
| | | add.Department_Class__c = acc.Department_Class__c; |
| | | System.debug('Hospital_Name__r.Department_Class__c----------'+add.Hospital_Name__r.Department_Class__c); |
| | | System.debug('Department_Class__c-----------------------------'+add.Department_Class__c); |
| | | //Hospital_Name__c = Contact_Name__r.AccountId 潜在客户: 医院名 ID等于客户姓名: 客户名 ID |
| | | //Hospital_Name__r.Department_Class__c != Department_Class__c |
| | | //LastName, Company |
| | | add.LastName = 'TestLName'; |
| | | add.Company = 'TestCompany'; |
| | | addList.add(add); |
| | | } |
| | | insert addList; |
| | | // 与医院名的战略科室分类不一致 |
| | | // AND(NOT(ISBLANK(Hospital_Name__c)),Hospital_Name__r.Department_Class__c != Department_Class__c, $User.Batch_User__c ==FALSE) |
| | | //Hospital_Name__c 不为空 时 需要让 Hospital_Name__r.Department_Class__c == Department_Class__c |
| | | return addList; |
| | | } |
| | | |
| | | public static List<QIS_Report__c> CreateQISReport(Integer num){ |
| | | List<QIS_Report__c> addList = new List<QIS_Report__c>(); |
| | | for(Integer i=0;i<num;i++){ |
| | | QIS_Report__c add = new QIS_Report__c(); |
| | | add.ETQ_UPLOAD_MESSAGE__c = 'QIS测试用'+i;//ETQ同步信息 |
| | | addList.add(add); |
| | | } |
| | | insert addList; |
| | | return addList; |
| | | } |
| | | |
| | | public static List<RepairSubOrder__c> CreateRepairSubOrder(Integer num){ |
| | | List<RepairSubOrder__c> addList = new List<RepairSubOrder__c>(); |
| | | for(Integer i=0;i<num;i++){ |
| | | RepairSubOrder__c add = new RepairSubOrder__c(); |
| | | add.Name = '报修子单测试用'; |
| | | add.FaultDescriptionFirst__c = '报修子单测试用'+i;//故障描述 |
| | | addList.add(add); |
| | | } |
| | | insert addList; |
| | | return addList; |
| | | } |
| | | |
| | | public static List<Report__c> CreateReport(Integer num){ |
| | | List<Report__c> addList = new List<Report__c>(); |
| | | Account aC = CreateAccounts(1)[0]; |
| | | for(Integer i=0;i<num;i++){ |
| | | Report__c add = new Report__c(); |
| | | add.Activity_Plan__c = '报告书测试用'+i;//今后活动计划 |
| | | add.Hospital_Department__c = aC.Id;//科室 |
| | | addList.add(add); |
| | | } |
| | | insert addList; |
| | | return addList; |
| | | } |
| | | |
| | | public static List<Tender_information__c> CreateTenderInformation(Integer num){ |
| | | List<Tender_information__c> addList = new List<Tender_information__c>(); |
| | | for(Integer i=0;i<num;i++){ |
| | | Tender_information__c add = new Tender_information__c(); |
| | | add.Name = '招标项目测试用'+i;//招标项目名称 |
| | | add.InfoTitle__c = '招标项目测试用'+i;//招标项目名称 |
| | | add.AWS_Data_Id__c = '123456'+String.valueof(Datetime.now().hour())+String.valueof(Datetime.now().minute())+String.valueof(Datetime.now().second())+i; |
| | | addList.add(add); |
| | | } |
| | | insert addList; |
| | | return addList; |
| | | } |
| | | |
| | | public static List<Consum_Apply__c> CreateConsumApply(Integer num){ |
| | | List<Consum_Apply__c> addList = new List<Consum_Apply__c>(); |
| | | User u = CreateUsers(1)[0]; |
| | | for(Integer i=0;i<num;i++){ |
| | | Consum_Apply__c add = new Consum_Apply__c(); |
| | | add.Name = '耗材备品申请——测试用'+i;//申请No. |
| | | add.Person_In_Charge__c = u.Id;//备品出借担当 |
| | | add.Status__c = '草案中'; |
| | | addList.add(add); |
| | | } |
| | | insert addList; |
| | | return addList; |
| | | } |
| | | |
| | | public static List<Consum_Apply_Equipment_Set_Detail__c> CreateConsumApplyEquipmentSetDetail(Integer num){ |
| | | List<Consum_Apply_Equipment_Set_Detail__c> addList = new List<Consum_Apply_Equipment_Set_Detail__c>(); |
| | | Asset asse = CreateAssets(1)[0]; |
| | | Consum_Apply__c con = CreateConsumApply(1)[0]; |
| | | Consum_Apply_Equipment_Set__c conA= new Consum_Apply_Equipment_Set__c(); |
| | | conA.Name = '耗材备品配套一览---测试用'; |
| | | conA.Consum_Apply__c = con.Id; |
| | | conA.Consum_Start_Date__c = System.today(); |
| | | //conA.FirstName = '小明明明明'; |
| | | //conA.LastName = 'test4经销商'; |
| | | insert conA; |
| | | for(Integer i=0;i<num;i++){ |
| | | Consum_Apply_Equipment_Set_Detail__c add = new Consum_Apply_Equipment_Set_Detail__c(); |
| | | add.Name = '耗材备品配套一览明细——测试用'+i;//No. |
| | | add.Asset__c = asse.Id; |
| | | add.Consum_Start_Date__c = Date.valueOf('2022-03-24 00:00:00'); |
| | | add.UniqueKey__c = '666666'; |
| | | add.IndexFromUniqueKey__c = 777777; |
| | | add.DataMigration_Flag__c = True; |
| | | add.Consum_Apply__c = con.Id; |
| | | //Consum_Apply_Equipment_Set__c,耗材备品配套一览 Consum_Apply__c备品耗材申请 |
| | | add.Consum_Apply_Equipment_Set__c = conA.Id; |
| | | addList.add(add); |
| | | } |
| | | insert addList; |
| | | return addList; |
| | | } |
| | | |
| | | |
| | | /*****************************/ |
| | | public class CreatePIHelperHttpMock implements HttpCalloutMock { |
| | | public HTTPResponse respond(HTTPRequest req) { |
| | | Map<String, Object> testMap = new Map<String, Object>(); |
| | | testMap.put('Account',CreateAccounts(1)[0]); |
| | | testMap.put('success',true); |
| | | String mapJson = JSON.serialize(testMap); |
| | | HttpResponse res = new HttpResponse(); |
| | | res.setHeader('Content-Type', 'text/html'); |
| | | res.setBody(mapJson); |
| | | res.setStatusCode(200); |
| | | return res; |
| | | } |
| | | } |
| | | |
| | | public class CreateMetaDataUtilityHttpMock implements HttpCalloutMock { |
| | | public HTTPResponse respond(HTTPRequest req) { |
| | | HttpResponse res = new HttpResponse(); |
| | | res.setHeader('Content-Type', 'text/html'); |
| | | res.setBody('{"size":2,"totalSize":2,"done":true,"queryLocator":null,"entityTypeName":"ProfileLayout","records":[{"attributes":{"type":"ProfileLayout","url":"/services/data/v41.0/tooling/sobjects/ProfileLayout/01G1000000hlD1YEAU"},"Layout":{"attributes":{"type":"Layout","url":"/services/data/v41.0/tooling/sobjects/Layout/00h10000009iAb5AAE"},"Name":".客户人员レイアウト","TableEnumOrId":"01I10000000er3hEAA"},"ProfileId":"00e10000000NawVAAS","Profile":{"attributes":{"type":"Profile","url":"/services/data/v41.0/tooling/sobjects/Profile/00e10000000NawVAAS"},"Name":"901_经销商社区普通权限"},"RecordTypeId":null},{"attributes":{"type":"ProfileLayout","url":"/services/data/v41.0/tooling/sobjects/ProfileLayout/01G1000000hlD7CEAU"},"Layout":{"attributes":{"type":"Layout","url":"/services/data/v41.0/tooling/sobjects/Layout/00h10000009iAb5AAE"},"Name":".客户人员レイアウト","TableEnumOrId":"01I10000000er3hEAA"},"ProfileId":"00e10000000NawVAAS","Profile":{"attributes":{"type":"Profile","url":"/services/data/v41.0/tooling/sobjects/Profile/00e10000000NawVAAS"},"Name":"901_经销商社区普通权限"},"RecordTypeId":"012100000006KW5AAM"}]}'); |
| | | res.setStatusCode(200); |
| | | res.setStatus('OK'); |
| | | return res; |
| | | } |
| | | } |
| | | |
| | | public class BaseHttpMock implements HttpCalloutMock { |
| | | |
| | | String body =''; |
| | | String status = ''; |
| | | String statusCode = ''; |
| | | public BaseHttpMock(String body,String status,String statusCode){ |
| | | this.body = body; |
| | | this.status = status; |
| | | this.statusCode = statusCode; |
| | | } |
| | | |
| | | public HTTPResponse respond(HTTPRequest req) { |
| | | HttpResponse res = new HttpResponse(); |
| | | res.setHeader('Content-Type', 'application/json'); |
| | | res.setBody(body); |
| | | res.setStatusCode(200); |
| | | res.setStatus('OK'); |
| | | return res; |
| | | } |
| | | } |
| | | |
| | | } |
| New file |
| | |
| | | <?xml version="1.0" encoding="UTF-8"?> |
| | | <ApexClass xmlns="http://soap.sforce.com/2006/04/metadata"> |
| | | <apiVersion>52.0</apiVersion> |
| | | <status>Active</status> |
| | | </ApexClass> |
| | |
| | | if(IsOnlyTrue){ |
| | | query += 'WHERE ((IsReactionOpp__c = true ) '; |
| | | //2021-07-29 mzy update 当医院发生变化/招投标项目OCSM省发生变化时,空更新一下招投标 start |
| | | // 2022-04-08 ssm SWAG-CC58ME 增加所有人无效的判断 start |
| | | query += 'OR (Owner.IsActive = false) '; |
| | | // 2022-04-08 ssm SWAG-CC58ME end |
| | | query += 'OR (BiddingOCSMAdministration__c = true) OR (Hospital__r.DepartmentChanges__c = true) '; |
| | | query += 'OR (Hospital1__r.DepartmentChanges__c = true) OR (Hospital2__r.DepartmentChanges__c = true) '; |
| | | query += 'OR (Hospital3__r.DepartmentChanges__c = true) OR (Hospital4__r.DepartmentChanges__c = true) )'; |
| | |
| | | this.allselectlist.put('StageName__c', WeeklyReportCmp.getPicklistValues('Agency_Opportunity__c','StageName__c')); |
| | | //SWAG-CBX68C fy 【委托】DAMS系统周报模块内容需求增加 start |
| | | // 支援需求 SupportNeeds__c |
| | | // this.allselectlist.put('SupportNeeds__c', WeeklyReportCmp.getPicklistValues('Agency_Report__c','SupportNeeds__c')); |
| | | this.allselectlist.put('SupportNeeds__c', WeeklyReportCmp.getPicklistValues('Agency_Report__c','SupportNeeds__c')); |
| | | //SWAG-CBX68C fy 【委托】DAMS系统周报模块内容需求增加 end |
| | | // 职位 |
| | | // this.allselectlist.put('visitor_title__c', WeeklyReportCmp.getPicklistValues('Agency_Report__c','visitor_title__c')); |
| | |
| | | |
| | | @RemoteAction |
| | | @AuraEnabled//SWAG-CBX68C fy 【委托】DAMS系统周报模块内容需求增加 start SupportNeedsc ,String SupportNeedsc |
| | | public static String saveAgencyReport(String Department_Cateogy, String Purpose_Type, String Agency_Report_Header, |
| | | public static String saveAgencyReport(String Department_Cateogy, String Purpose_Type,String SupportNeedsc, String Agency_Report_Header, |
| | | String Agency_Hospital, String Person_In_Charge2, String doctor, String Submit_date, |
| | | String Product_Category1, String Product_Category2, String Product_Category3, |
| | | String Result, String Opportunity, String StageName, String oppAmount, String oppOCMPrice, String Close_Forecasted_Date, String Report_Date) |
| | |
| | | Agency_Report__c agency_report = makeAgencyReport(Department_Cateogy, Purpose_Type, Agency_Report_Header, |
| | | Agency_Hospital, Person_In_Charge2, doctor, Submit_date, |
| | | Product_Category1, Product_Category2, Product_Category3,//SWAG-CBX68C fy 【委托】DAMS系统周报模块内容需求增加 start SupportNeedsc ,SupportNeedsc |
| | | Result, Opportunity, StageName, oppAmount, oppOCMPrice, Close_Forecasted_Date, Report_Date); |
| | | Result, Opportunity, StageName, oppAmount, oppOCMPrice, Close_Forecasted_Date, Report_Date,SupportNeedsc); |
| | | |
| | | agency_report = LightningUtil.insertAgencyReport(agency_report); |
| | | return agency_report.Id; |
| | |
| | | public static Agency_Report__c makeAgencyReport(String Department_Cateogy, String Purpose_Type, String Agency_Report_Header, |
| | | String Agency_Hospital, String Person_In_Charge2, String doctor, String Submit_date, |
| | | String Product_Category1, String Product_Category2, String Product_Category3,//SWAG-CBX68C fy 【委托】DAMS系统周报模块内容需求增加 start SupportNeeds__c ,String SupportNeedsc |
| | | String Result, String Opportunity, String StageName, String oppAmount, String oppOCMPrice, String Close_Forecasted_Date, String Report_Date) |
| | | String Result, String Opportunity, String StageName, String oppAmount, String oppOCMPrice, String Close_Forecasted_Date, String Report_Date,String SupportNeedsc) |
| | | { |
| | | Agency_Report__c agency_report = new Agency_Report__c(); |
| | | Date week = Date.valueOf(Submit_date); |
| | |
| | | if (Department_Cateogy != '') { agency_report.Department_Cateogy__c = Department_Cateogy; } |
| | | if (Purpose_Type != '') { agency_report.Purpose_Type__c = Purpose_Type; } |
| | | //SWAG-CBX68C fy 【委托】DAMS系统周报模块内容需求增加 start |
| | | // if (SupportNeedsc != '') { agency_report.SupportNeeds__c = SupportNeedsc; } |
| | | if (SupportNeedsc != '') { agency_report.SupportNeeds__c = SupportNeedsc; } |
| | | //SWAG-CBX68C fy 【委托】DAMS系统周报模块内容需求增加 end |
| | | if (Agency_Report_Header != '') { agency_report.Agency_Report_Header__c = Agency_Report_Header; } |
| | | if (Agency_Hospital != '') { agency_report.Agency_Hospital__c = Agency_Hospital; } |
| | |
| | | |
| | | @RemoteAction |
| | | @AuraEnabled |
| | | public static String editAgencyReport(String Agency_Report_Id, String Department_Cateogy, String Purpose_Type, String Agency_Report_Header, |
| | | public static String editAgencyReport(String Agency_Report_Id, String Department_Cateogy, String Purpose_Type,String SupportNeedsc, String Agency_Report_Header, |
| | | String Agency_Hospital, String Person_In_Charge2, String doctor, String Submit_date, |
| | | String Product_Category1, String Product_Category2, String Product_Category3, //SWAG-CBX68C fy 【委托】DAMS系统周报模块内容需求增加 start SupportNeeds__c ,String SupportNeedsc |
| | | String Result, String Opportunity, String StageName, String oppAmount, String oppOCMPrice, String Close_Forecasted_Date, String Report_Date) |
| | |
| | | if (String.isBlank(Agency_Report_Id)) { |
| | | return null; |
| | | }//SWAG-CBX68C fy 【委托】DAMS系统周报模块内容需求增加 start SupportNeeds__c ,SupportNeeds__c |
| | | Agency_Report__c agency_report = [select Id, Name, Department_Cateogy__c, Purpose_Type__c, Agency_Hospital__c, |
| | | Agency_Report__c agency_report = [select Id, Name, Department_Cateogy__c, Purpose_Type__c,SupportNeeds__c, Agency_Hospital__c, |
| | | Person_In_Charge2__c, doctor2__c, Submit_date__c, Product_Category__c, Result__c, visitor_title__c, Opportunity__c |
| | | from Agency_Report__c where id=:Agency_Report_Id]; |
| | | Date week = Date.valueOf(Submit_date); |
| | |
| | | if (Department_Cateogy != '') { agency_report.Department_Cateogy__c = Department_Cateogy; } else { agency_report.Department_Cateogy__c = null; } |
| | | if (Purpose_Type != '') { agency_report.Purpose_Type__c = Purpose_Type; } else { agency_report.Purpose_Type__c = null; } |
| | | //SWAG-CBX68C fy 【委托】DAMS系统周报模块内容需求增加 start SupportNeeds__c |
| | | // if (SupportNeedsc != '') { agency_report.SupportNeeds__c = SupportNeedsc; } else { agency_report.SupportNeeds__c = null; } |
| | | if (SupportNeedsc != '') { agency_report.SupportNeeds__c = SupportNeedsc; } else { agency_report.SupportNeeds__c = null; } |
| | | if (Agency_Hospital != '') { agency_report.Agency_Hospital__c = Agency_Hospital; } else { agency_report.Agency_Hospital__c = null; } |
| | | if (Product_Category1 != '') { agency_report.Product_Category1__c = Product_Category1; } else { agency_report.Product_Category1__c = null; } |
| | | if (Product_Category2 != '') { agency_report.Product_Category2__c = Product_Category2; } else { agency_report.Product_Category2__c = null; } |
| | |
| | | Purpose_Type__c = e.Purpose_Type__c, |
| | | Related_Opportunity1__c = e.Related_Opportunity1__c, |
| | | OPDPlan_Flag__c = e.OPDPlan_Flag__c, |
| | | Opd_Plan__c = e.Opd_Plan__c, //2022-4-14 yjk 增加opd计划 |
| | | Related_Opportunity1_ID__c = e.Related_Opportunity1_ID__c, |
| | | Related_Opportunity2__c = e.Related_Opportunity2__c, |
| | | Related_Opportunity2_ID__c = e.Related_Opportunity2_ID__c, |
| | |
| | | if('申請中'.equals(report.Status__c )){ |
| | | XinDailyReportController.updateTask( report.id); |
| | | //sla信息更新 zh start |
| | | |
| | | //2021-08-27 杨杰克 修改逻辑:是否逾期都调用saveSLADetails方法,将是否逾期传入方法,方法内做逻辑处理 |
| | | if (eventCAndSLA.size()>0 && SLAIds.size()>0) { |
| | | UpdateSLACompleteNumber.saveSLADetails(eventCAndSLA, SLAIds,report.Submit_DateTime_New__c <= report.Report_Deadline__c ); |
| | | } |
| | | |
| | | if (report.Submit_DateTime_New__c <= report.Report_Deadline__c ) { //提交日超过最后提交期限,不计入次数 |
| | | |
| | | if (eventCAndMainC.size()>0 && mainCIds.size()>0) { |
| | | UpdateSLACompleteNumber.saveSLARecorded(eventCAndMainC, mainCIds); |
| | | } |
| | | } |
| | | |
| | | //sla信息更新 zh end |
| | | |
| | | // 任务框架bug 应对 by zys start 原代码 |
| | |
| | | // 20200420 任务日报管理 add gzw end |
| | | activities.add(a); |
| | | actSize = activities.size(); |
| | | //Add log by Li Jun 20220407 Start |
| | | system.debug('Activity Data:'+JSON.serialize(activities)); |
| | | //Add log by Li Jun 20220407 end |
| | | } |
| | | |
| | | public String delIndex { |
| | |
| | | <apex:includeScript value="{!URLFOR($Resource.ReceivingNotePageJS)}"/> |
| | | <apex:includeScript value="{!URLFOR($Resource.CommonUtilJs)}"/> |
| | | <apex:includeScript value="{! URLFOR($Resource.AWSService, 'AWSService.js') }"/> |
| | | |
| | | <script type="text/javascript"> |
| | | var txIds = []; |
| | | var trialuserMap={}; |
| | | </script> |
| | | |
| | | <apex:form id="allForm"> |
| | | <style> |
| | | table.headTable td { |
| | |
| | | } |
| | | </style> |
| | | <script type="text/javascript"> |
| | | var heightAjustment = 120; |
| | | var widthAjustment = 30; |
| | | var staticResource = JSON.parse('{!staticResource}'); |
| | | |
| | | var heightAjustment = 120; |
| | | var widthAjustment = 30; |
| | | var staticResource = JSON.parse('{!staticResource}'); |
| | | |
| | | |
| | | // 适用按钮 |
| | | function applyJs() { |
| | | var appliedFlag = true; |
| | | var selectFlag = true; |
| | | var isCheckFlag = false; |
| | | var ShowDemonstration = j$(escapeVfId('allPage:allForm:searchBlock:ShowDemonstration')).val(); // 展示/演示 |
| | | var OperationType = j$(escapeVfId('allPage:allForm:searchBlock:OperationType')).val(); // 术式类别 |
| | | var ConsumStartDate = j$(escapeVfId('allPage:allForm:searchBlock:ConsumStartDate')).val(); // 预计使用日 |
| | | var CaseOrAnimalOrgan = j$(escapeVfId('allPage:allForm:searchBlock:CaseOrAnimalOrgan')).val(); // 病例/动物脏器 |
| | | var TrialUser= j$(escapeVfId('allPage:allForm:searchBlock:TrialUser')).val(); // 试用者 |
| | | var FollowerUserid = j$(escapeVfId('allPage:allForm:searchBlock:FollowerUser_lkid')).val(); // 跟台者Id |
| | | var FollowerUsername = j$(escapeVfId('allPage:allForm:searchBlock:FollowerUser_lkold')).val(); // 跟台者Name |
| | | // 适用按钮 |
| | | function applyJs() { |
| | | var appliedFlag = true; |
| | | var selectFlag = true; |
| | | var isCheckFlag = false; |
| | | var ShowDemonstration = j$(escapeVfId('allPage:allForm:searchBlock:ShowDemonstration')).val(); // 展示/演示 |
| | | var OperationType = j$(escapeVfId('allPage:allForm:searchBlock:OperationType')).val(); // 术式类别 |
| | | var ConsumStartDate = j$(escapeVfId('allPage:allForm:searchBlock:ConsumStartDate')).val(); // 预计使用日 |
| | | var CaseOrAnimalOrgan = j$(escapeVfId('allPage:allForm:searchBlock:CaseOrAnimalOrgan')).val(); // 病例/动物脏器 |
| | | var TrialUser= j$(escapeVfId('allPage:allForm:searchBlock:TrialUser')).val(); // 试用者 |
| | | var FollowerUserid = j$(escapeVfId('allPage:allForm:searchBlock:FollowerUser_lkid')).val(); // 跟台者Id |
| | | var FollowerUsername = j$(escapeVfId('allPage:allForm:searchBlock:FollowerUser_lkold')).val(); // 跟台者Name |
| | | |
| | | var ShowDemonstrations = []; // 展示/演示 |
| | | j$("td.intf.dataCellBorder1.Show_demonstration__c").each(function() { |
| | | ShowDemonstrations.push(j$(this)); |
| | | }); |
| | | var OperationTypes = []; // 术式类别 |
| | | j$("td.intf.dataCellBorder1.Operation_Type__c").each(function() { |
| | | OperationTypes.push(j$(this)); |
| | | }); |
| | | var ConsumStartDates = []; // 备品预计使用日 |
| | | j$("td.intf.dataCellBorder1.Consum_Start_Date__c").each(function() { |
| | | ConsumStartDates.push(j$(this)); |
| | | }); |
| | | var CaseOrAnimalOrgans = []; // 病例/动物脏器 |
| | | j$("td.intf.dataCellBorder1.Case_OR_animal_organ__c").each(function() { |
| | | CaseOrAnimalOrgans.push(j$(this)); |
| | | }); |
| | | var ShowDemonstrations = []; // 展示/演示 |
| | | j$("td.intf.dataCellBorder1.Show_demonstration__c").each(function() { |
| | | ShowDemonstrations.push(j$(this)); |
| | | }); |
| | | var OperationTypes = []; // 术式类别 |
| | | j$("td.intf.dataCellBorder1.Operation_Type__c").each(function() { |
| | | OperationTypes.push(j$(this)); |
| | | }); |
| | | var ConsumStartDates = []; // 备品预计使用日 |
| | | j$("td.intf.dataCellBorder1.Consum_Start_Date__c").each(function() { |
| | | ConsumStartDates.push(j$(this)); |
| | | }); |
| | | var CaseOrAnimalOrgans = []; // 病例/动物脏器 |
| | | j$("td.intf.dataCellBorder1.Case_OR_animal_organ__c").each(function() { |
| | | CaseOrAnimalOrgans.push(j$(this)); |
| | | }); |
| | | |
| | | var TrialUsers = []; // 试用者 |
| | | j$("td.intf.dataCellBorder1.Trial_User__c").each(function() { |
| | | TrialUsers.push(j$(this)); |
| | | }); |
| | | var TrialUsers = []; // 试用者 |
| | | j$("td.intf.dataCellBorder1.Trial_User__c").each(function() { |
| | | TrialUsers.push(j$(this)); |
| | | }); |
| | | |
| | | var FollowerUsers = []; // 跟台者: |
| | | j$("td.intf.dataCellBorder1.Follower_User__c").each(function() { |
| | | FollowerUsers.push(j$(this)); |
| | | }); |
| | | var FollowerUsers = []; // 跟台者: |
| | | j$("td.intf.dataCellBorder1.Follower_User__c").each(function() { |
| | | FollowerUsers.push(j$(this)); |
| | | }); |
| | | |
| | | var currentPageRecordCount = j$(escapeVfId('allPage:allForm:dataBlock:currentPageRecordCnt')).val(); |
| | | for (var i = 0; i < currentPageRecordCount; i++) { |
| | | var checkBox = j$(escapeVfId('allPage:allForm:dataBlock:dataline_L:' + i + ':rowCheck')); |
| | | if (checkBox.prop('checked') == true) { |
| | | isCheckFlag = true; |
| | | // 'x'时不适用 |
| | | if (ShowDemonstration != 'x') { |
| | | ShowDemonstrations[i].find("select").val(ShowDemonstration); |
| | | appliedFlag = false; |
| | | } |
| | | if (OperationType != 'x') { |
| | | OperationTypes[i].find("select").val(OperationType); |
| | | appliedFlag = false; |
| | | } |
| | | if (ConsumStartDate != null && ConsumStartDate != '' && typeof(ConsumStartDate) != "undefined") { |
| | | ConsumStartDates[i].find("input").val(ConsumStartDate); |
| | | appliedFlag = false; |
| | | } |
| | | if (CaseOrAnimalOrgan != 'x') { |
| | | CaseOrAnimalOrgans[i].find("select").val(CaseOrAnimalOrgan); |
| | | appliedFlag = false; |
| | | } |
| | | var currentPageRecordCount = j$(escapeVfId('allPage:allForm:dataBlock:currentPageRecordCnt')).val(); |
| | | for (var i = 0; i < currentPageRecordCount; i++) { |
| | | var checkBox = j$(escapeVfId('allPage:allForm:dataBlock:dataline_L:' + i + ':rowCheck')); |
| | | if (checkBox.prop('checked') == true) { |
| | | isCheckFlag = true; |
| | | // 'x'时不适用 |
| | | if (ShowDemonstration != 'x') { |
| | | ShowDemonstrations[i].find("select").val(ShowDemonstration); |
| | | appliedFlag = false; |
| | | } |
| | | if (OperationType != 'x') { |
| | | OperationTypes[i].find("select").val(OperationType); |
| | | appliedFlag = false; |
| | | } |
| | | if (ConsumStartDate != null && ConsumStartDate != '' && typeof(ConsumStartDate) != "undefined") { |
| | | ConsumStartDates[i].find("input").val(ConsumStartDate); |
| | | appliedFlag = false; |
| | | } |
| | | if (CaseOrAnimalOrgan != 'x') { |
| | | CaseOrAnimalOrgans[i].find("select").val(CaseOrAnimalOrgan); |
| | | appliedFlag = false; |
| | | } |
| | | |
| | | if (TrialUser != null && TrialUser != '' && typeof(TrialUser) != "undefined") { |
| | | TrialUsers[i].find("input").val(TrialUser); |
| | | appliedFlag = false; |
| | | } |
| | | if (TrialUser != null && TrialUser != '' && typeof(TrialUser) != "undefined") { |
| | | TrialUsers[i].find("input").val(TrialUser); |
| | | appliedFlag = false; |
| | | } |
| | | |
| | | // if (equipmentTypes[i].find("select").val() != productCategory && productCategory != '') { |
| | | if (FollowerUserid != null && parseInt(FollowerUserid) != 0 && typeof(FollowerUserid) != "undefined" |
| | | && FollowerUsername != null && FollowerUsername != 'null' && typeof(FollowerUsername) != "undefined") { |
| | | // setChangeFlg(); |
| | | // if (equipmentTypes[i].find("select").val() != productCategory && productCategory != '') { |
| | | if (FollowerUserid != null && parseInt(FollowerUserid) != 0 && typeof(FollowerUserid) != "undefined" |
| | | && FollowerUsername != null && FollowerUsername != 'null' && typeof(FollowerUsername) != "undefined") { |
| | | // setChangeFlg(); |
| | | |
| | | var inputs = FollowerUsers[i].find("input"); |
| | | for (var j = 0; j < inputs.length; j++) { |
| | | if(inputs[j].name.endsWith('_lkid')) { |
| | | inputs[j].value = FollowerUserid; |
| | | } |
| | | else if (inputs[j].name.endsWith('_lkold') |
| | | || inputs[j].name.endsWith('inputField')) { |
| | | inputs[j].value = FollowerUsername; |
| | | } |
| | | var inputs = FollowerUsers[i].find("input"); |
| | | for (var j = 0; j < inputs.length; j++) { |
| | | if(inputs[j].name.endsWith('_lkid')) { |
| | | inputs[j].value = FollowerUserid; |
| | | } |
| | | appliedFlag = false; |
| | | else if (inputs[j].name.endsWith('_lkold') |
| | | || inputs[j].name.endsWith('inputField')) { |
| | | inputs[j].value = FollowerUsername; |
| | | } |
| | | } |
| | | appliedFlag = false; |
| | | } |
| | | } |
| | | j$(escapeVfId('allPage:allForm:pageBlockButton1:clearApplyFlagId')).val(false); |
| | | // var clearApplyFlag = false; |
| | | window.setTimeout(function () { |
| | | if (ConsumStartDate == null |
| | | && TrialUser == null |
| | | && (FollowerUserid== null || FollowerUsername == null)) { // 适用入力框全为空 |
| | | // alert('适用区输入框为空,请输入适用值。'); |
| | | var applyMsg = '适用区输入框为空,请输入适用值。'; |
| | | //passApplyMsgToController(applyMsg, 'Fail'); |
| | | return; |
| | | } |
| | | if (isCheckFlag == false) { |
| | | // alert('未勾选任何待适用数据。'); |
| | | var applyMsg = '未勾选任何待适用数据。'; |
| | | //passApplyMsgToController(applyMsg, 'Fail'); |
| | | return; |
| | | } |
| | | } |
| | | j$(escapeVfId('allPage:allForm:pageBlockButton1:clearApplyFlagId')).val(false); |
| | | // var clearApplyFlag = false; |
| | | window.setTimeout(function () { |
| | | if (ConsumStartDate == null |
| | | && TrialUser == null |
| | | && (FollowerUserid== null || FollowerUsername == null)) { // 适用入力框全为空 |
| | | // alert('适用区输入框为空,请输入适用值。'); |
| | | var applyMsg = '适用区输入框为空,请输入适用值。'; |
| | | //passApplyMsgToController(applyMsg, 'Fail'); |
| | | return; |
| | | } |
| | | if (isCheckFlag == false) { |
| | | // alert('未勾选任何待适用数据。'); |
| | | var applyMsg = '未勾选任何待适用数据。'; |
| | | //passApplyMsgToController(applyMsg, 'Fail'); |
| | | return; |
| | | } |
| | | |
| | | if (selectFlag) { |
| | | if (!appliedFlag) { |
| | | var alertMsg = "适用完了 \r\n"; |
| | | if (ConsumStartDate != null && typeof(ConsumStartDate) != "undefined") { |
| | | var alertMsg1 = "已将打勾数据中的 " + "备品预计使用日" + " 适用为 " + ConsumStartDate + " \r\n"; |
| | | alertMsg += alertMsg1; |
| | | } |
| | | if (TrialUser != null && typeof(TrialUser) != "undefined") { |
| | | var alertMsg1 = "已将打勾数据中的 " + "试用者" + " 适用为 " + TrialUser + " \r\n"; |
| | | alertMsg += alertMsg1; |
| | | } |
| | | if (FollowerUserid != null && typeof(FollowerUserid) != "undefined" |
| | | && FollowerUsername != null && typeof(FollowerUsername) != "undefined") { |
| | | var alertMsg2 = "已将打勾数据中的 " + "跟台者:" + " 适用为 " + FollowerUsername + " \r\n"; |
| | | alertMsg += alertMsg2; |
| | | } |
| | | // alert(alertMsg); |
| | | // clearApplyFlag = true; |
| | | j$(escapeVfId('allPage:allForm:pageBlockButton1:clearApplyFlagId')).val(true); |
| | | //passApplyMsgToController(alertMsg, 'Success'); |
| | | if (selectFlag) { |
| | | if (!appliedFlag) { |
| | | var alertMsg = "适用完了 \r\n"; |
| | | if (ConsumStartDate != null && typeof(ConsumStartDate) != "undefined") { |
| | | var alertMsg1 = "已将打勾数据中的 " + "备品预计使用日" + " 适用为 " + ConsumStartDate + " \r\n"; |
| | | alertMsg += alertMsg1; |
| | | } |
| | | if (TrialUser != null && typeof(TrialUser) != "undefined") { |
| | | var alertMsg1 = "已将打勾数据中的 " + "试用者" + " 适用为 " + TrialUser + " \r\n"; |
| | | alertMsg += alertMsg1; |
| | | } |
| | | if (FollowerUserid != null && typeof(FollowerUserid) != "undefined" |
| | | && FollowerUsername != null && typeof(FollowerUsername) != "undefined") { |
| | | var alertMsg2 = "已将打勾数据中的 " + "跟台者:" + " 适用为 " + FollowerUsername + " \r\n"; |
| | | alertMsg += alertMsg2; |
| | | } |
| | | // alert(alertMsg); |
| | | // clearApplyFlag = true; |
| | | j$(escapeVfId('allPage:allForm:pageBlockButton1:clearApplyFlagId')).val(true); |
| | | //passApplyMsgToController(alertMsg, 'Success'); |
| | | } |
| | | } else { |
| | | if (!appliedFlag) { |
| | | var alertMsg = "适用完了 \r\n"; |
| | | if (ConsumStartDate != null && typeof(ConsumStartDate) != "undefined") { |
| | | var alertMsg1 = "已将打勾数据中的 " + "备品预计使用日" + " 适用为 " + ConsumStartDate + " \r\n"; |
| | | alertMsg += alertMsg1; |
| | | } |
| | | if (TrialUser != null && typeof(TrialUser) != "undefined") { |
| | | var alertMsg1 = "已将打勾数据中的 " + " 试用者" + " 适用为 " + TrialUser + " \r\n"; |
| | | alertMsg += alertMsg1; |
| | | } |
| | | if (FollowerUserid != null && typeof(FollowerUserid) != "undefined" |
| | | && FollowerUsername != null && typeof(FollowerUsername) != "undefined") { |
| | | var alertMsg2 = "已将打勾数据中的 " + "跟台者:" + " 适用为 " + FollowerUsername + " \r\n"; |
| | | alertMsg += alertMsg2; |
| | | } |
| | | //passApplyMsgToController(alertMsg, 'Success'); |
| | | j$(escapeVfId('allPage:allForm:pageBlockButton1:clearApplyFlagId')).val(true); |
| | | } else { |
| | | if (!appliedFlag) { |
| | | var alertMsg = "适用完了 \r\n"; |
| | | if (ConsumStartDate != null && typeof(ConsumStartDate) != "undefined") { |
| | | var alertMsg1 = "已将打勾数据中的 " + "备品预计使用日" + " 适用为 " + ConsumStartDate + " \r\n"; |
| | | alertMsg += alertMsg1; |
| | | } |
| | | if (TrialUser != null && typeof(TrialUser) != "undefined") { |
| | | var alertMsg1 = "已将打勾数据中的 " + " 试用者" + " 适用为 " + TrialUser + " \r\n"; |
| | | alertMsg += alertMsg1; |
| | | } |
| | | if (FollowerUserid != null && typeof(FollowerUserid) != "undefined" |
| | | && FollowerUsername != null && typeof(FollowerUsername) != "undefined") { |
| | | var alertMsg2 = "已将打勾数据中的 " + "跟台者:" + " 适用为 " + FollowerUsername + " \r\n"; |
| | | alertMsg += alertMsg2; |
| | | } |
| | | //passApplyMsgToController(alertMsg, 'Success'); |
| | | j$(escapeVfId('allPage:allForm:pageBlockButton1:clearApplyFlagId')).val(true); |
| | | } else { |
| | | var alertMsg = "其他选项: " + otherSelectOptionText +"中无此选项值" + otherSelectOptionValue + ",无法更新。"; |
| | | //passApplyMsgToController(alertMsg, 'Fail'); |
| | | } |
| | | var alertMsg = "其他选项: " + otherSelectOptionText +"中无此选项值" + otherSelectOptionValue + ",无法更新。"; |
| | | //passApplyMsgToController(alertMsg, 'Fail'); |
| | | } |
| | | }, 5); |
| | | } |
| | | |
| | | function clearApplyValue() { |
| | | var clearApplyValueFlag = j$(escapeVfId('allPage:allForm:pageBlockButton1:clearApplyFlagId')).val(); |
| | | if(clearApplyValueFlag) { |
| | | j$(escapeVfId('{!$Component.stockId}')).val(''); |
| | | j$(escapeVfId('{!$Component.applyEquipmentTypeId}')).val(''); |
| | | j$(escapeVfId('{!$Component.applyAssetTypeListId}')).val(''); |
| | | j$(escapeVfId('{!$Component.otherSelectionId}')).val(''); |
| | | } |
| | | j$(escapeVfId('allPage:allForm:pageBlockButton1:clearApplyFlagId')).val(false); |
| | | } |
| | | }, 5); |
| | | } |
| | | |
| | | function checkSavingJs() { |
| | | var isSavingSuccess = j$(escapeVfId('isSavingSuccessId')).val(); |
| | | // alert(isSavingSuccess); |
| | | if (isSavingSuccess != 'false') { |
| | | //setSaveSuccessMsg(); |
| | | function clearApplyValue() { |
| | | var clearApplyValueFlag = j$(escapeVfId('allPage:allForm:pageBlockButton1:clearApplyFlagId')).val(); |
| | | if(clearApplyValueFlag) { |
| | | j$(escapeVfId('{!$Component.stockId}')).val(''); |
| | | j$(escapeVfId('{!$Component.applyEquipmentTypeId}')).val(''); |
| | | j$(escapeVfId('{!$Component.applyAssetTypeListId}')).val(''); |
| | | j$(escapeVfId('{!$Component.otherSelectionId}')).val(''); |
| | | } |
| | | j$(escapeVfId('allPage:allForm:pageBlockButton1:clearApplyFlagId')).val(false); |
| | | } |
| | | |
| | | function checkSavingJs() { |
| | | var isSavingSuccess = j$(escapeVfId('isSavingSuccessId')).val(); |
| | | // alert(isSavingSuccess); |
| | | if (isSavingSuccess != 'false') { |
| | | //setSaveSuccessMsg(); |
| | | } |
| | | } |
| | | |
| | | function resetMove(d, up, len) { |
| | | var line = j$(escapeVfId(d)).find('input')[0].value; |
| | | resetMoveUpDown(up, parseInt(line), len); |
| | | } |
| | | |
| | | function moveToTop(d, up, len) { |
| | | var line = j$(escapeVfId(d)).find('input')[0].value; |
| | | console.log(line); |
| | | var isSuccessful = true; |
| | | if (up) { |
| | | for(var i = parseInt(line) ; i > 1 && isSuccessful; i-- ) { |
| | | isSuccessful = resetMoveUpDown(up, i, len); |
| | | } |
| | | } |
| | | |
| | | function resetMove(d, up, len) { |
| | | var line = j$(escapeVfId(d)).find('input')[0].value; |
| | | resetMoveUpDown(up, parseInt(line), len); |
| | | else { |
| | | for(var i = parseInt(line) ; i < len && isSuccessful; i++ ) { |
| | | isSuccessful = resetMoveUpDown(up, i, len); |
| | | } |
| | | } |
| | | unblockUI(); |
| | | } |
| | | |
| | | function moveToTop(d, up, len) { |
| | | var line = j$(escapeVfId(d)).find('input')[0].value; |
| | | console.log(line); |
| | | var isSuccessful = true; |
| | | if (up) { |
| | | for(var i = parseInt(line) ; i > 1 && isSuccessful; i-- ) { |
| | | isSuccessful = resetMoveUpDown(up, i, len); |
| | | function resetMoveUpDown(up, line, len) { |
| | | |
| | | var items = j$(".dataCellBorder2"); |
| | | var item1 = j$("td.intf.dataCellBorder1.Degree_Of_Importance__c"); |
| | | var item2 = j$("td.dataCellBorder1.col_Fixture_Model_No__c"); |
| | | var currentPageRecordCount = j$(escapeVfId('allPage:allForm:dataBlock:currentPageRecordCnt')).val(); |
| | | var isSuccessful = false; |
| | | // alert(item1); |
| | | var i = line - 1; |
| | | var i1 = line + 1; |
| | | // var tr = j$('#tableData').find('tbody').find('tr:eq(' + (i) + ')'); |
| | | if (up == true){ |
| | | var tr = j$('#tableData').find('tbody').find('tr:eq(' + (i) + ')'); |
| | | var trL = j$('#tableData_L').find('tbody').find('tr:eq(' + (i) + ')'); |
| | | if(line != 1) { |
| | | var model1 = j$(item2[i - 1]).find("span").text(); |
| | | var model2 = j$(item2[i]).find("span").text(); |
| | | if (model1 != model2) { |
| | | unblockUI(); |
| | | return; |
| | | } |
| | | |
| | | var v1 = j$(item1[i - 1]).find("input").val(); |
| | | var v2 = j$(item1[i]).find("input").val(); |
| | | setChangeFlg(i-1); |
| | | setChangeFlg(i); |
| | | j$(items[i - 1]).children('.ordernocls').val(line); |
| | | j$(items[i]).children('.ordernocls').val(line - 1); |
| | | j$(item1[i - 1]).find("input").val(v2); |
| | | j$(item1[i]).find("input").val(v1); |
| | | |
| | | isSuccessful = true; |
| | | // j$(item1[i - 1]).children('.ordernocls').val('' + line); |
| | | // j$(item1[i]).children('.ordernocls').val('' + i); |
| | | } |
| | | else { |
| | | for(var i = parseInt(line) ; i < len && isSuccessful; i++ ) { |
| | | isSuccessful = resetMoveUpDown(up, i, len); |
| | | } |
| | | j$(items[i]).children('.ordernocls').val(line); |
| | | } |
| | | unblockUI(); |
| | | var tr1 = j$(items[i]).parents("tr"); |
| | | tr.prev().before(tr); |
| | | trL.prev().before(trL); |
| | | } |
| | | |
| | | function resetMoveUpDown(up, line, len) { |
| | | |
| | | var items = j$(".dataCellBorder2"); |
| | | var item1 = j$("td.intf.dataCellBorder1.Degree_Of_Importance__c"); |
| | | var item2 = j$("td.dataCellBorder1.col_Fixture_Model_No__c"); |
| | | var currentPageRecordCount = j$(escapeVfId('allPage:allForm:dataBlock:currentPageRecordCnt')).val(); |
| | | var isSuccessful = false; |
| | | // alert(item1); |
| | | var i = line - 1; |
| | | var i1 = line + 1; |
| | | // var tr = j$('#tableData').find('tbody').find('tr:eq(' + (i) + ')'); |
| | | if (up == true){ |
| | | else { |
| | | if(line < currentPageRecordCount) { |
| | | var model1 = j$(item2[i]).find("span").text(); |
| | | var model2 = j$(item2[line]).find("span").text(); |
| | | if (model1 != model2) { |
| | | unblockUI(); |
| | | return; |
| | | } |
| | | var tr = j$('#tableData').find('tbody').find('tr:eq(' + (i) + ')'); |
| | | var trL = j$('#tableData_L').find('tbody').find('tr:eq(' + (i) + ')'); |
| | | if(line != 1) { |
| | | var model1 = j$(item2[i - 1]).find("span").text(); |
| | | var model2 = j$(item2[i]).find("span").text(); |
| | | if (model1 != model2) { |
| | | unblockUI(); |
| | | return; |
| | | } |
| | | |
| | | var v1 = j$(item1[i - 1]).find("input").val(); |
| | | var v2 = j$(item1[i]).find("input").val(); |
| | | setChangeFlg(i-1); |
| | | setChangeFlg(i); |
| | | j$(items[i - 1]).children('.ordernocls').val(line); |
| | | j$(items[i]).children('.ordernocls').val(line - 1); |
| | | j$(item1[i - 1]).find("input").val(v2); |
| | | j$(item1[i]).find("input").val(v1); |
| | | |
| | | isSuccessful = true; |
| | | // j$(item1[i - 1]).children('.ordernocls').val('' + line); |
| | | // j$(item1[i]).children('.ordernocls').val('' + i); |
| | | } |
| | | else { |
| | | j$(items[i]).children('.ordernocls').val(line); |
| | | } |
| | | var v1 = j$(item1[i]).find("input").val(); |
| | | var v2 = j$(item1[i + 1]).find("input").val(); |
| | | setChangeFlg(i); |
| | | setChangeFlg(i + 1); |
| | | j$(items[i]).children('.ordernocls').val(line + 1); |
| | | j$(items[i + 1]).children('.ordernocls').val(line); |
| | | j$(item1[i]).find("input").val(v2); |
| | | j$(item1[line]).find("input").val(v1); |
| | | var tr1 = j$(items[i]).parents("tr"); |
| | | tr.prev().before(tr); |
| | | trL.prev().before(trL); |
| | | tr.next().after(tr); |
| | | trL.next().after(trL); |
| | | isSuccessful = true; |
| | | } |
| | | else { |
| | | if(line < currentPageRecordCount) { |
| | | var model1 = j$(item2[i]).find("span").text(); |
| | | var model2 = j$(item2[line]).find("span").text(); |
| | | if (model1 != model2) { |
| | | unblockUI(); |
| | | return; |
| | | } |
| | | var tr = j$('#tableData').find('tbody').find('tr:eq(' + (i) + ')'); |
| | | var trL = j$('#tableData_L').find('tbody').find('tr:eq(' + (i) + ')'); |
| | | var v1 = j$(item1[i]).find("input").val(); |
| | | var v2 = j$(item1[i + 1]).find("input").val(); |
| | | setChangeFlg(i); |
| | | setChangeFlg(i + 1); |
| | | j$(items[i]).children('.ordernocls').val(line + 1); |
| | | j$(items[i + 1]).children('.ordernocls').val(line); |
| | | j$(item1[i]).find("input").val(v2); |
| | | j$(item1[line]).find("input").val(v1); |
| | | var tr1 = j$(items[i]).parents("tr"); |
| | | tr.next().after(tr); |
| | | trL.next().after(trL); |
| | | isSuccessful = true; |
| | | } |
| | | else { |
| | | j$(items[i]).children('.ordernocls').val(line); |
| | | } |
| | | j$(items[i]).children('.ordernocls').val(line); |
| | | } |
| | | unblockUI(); |
| | | return isSuccessful; |
| | | } |
| | | unblockUI(); |
| | | return isSuccessful; |
| | | } |
| | | |
| | | function refopener() { |
| | | window.opener.location.href = '/apex/ConsumTrial?id={!parId}'; |
| | | function refopener() { |
| | | window.opener.location.href = '/apex/ConsumTrial?id={!parId}'; |
| | | } |
| | | |
| | | if (window.history.pushState) { |
| | | if (window.location.href.indexOf('&saveType=1') > -1) { |
| | | refopener(); |
| | | } |
| | | window.history.pushState({}, "", window.location.href.replace('&saveType=1', '')); |
| | | } |
| | | |
| | | if (window.history.pushState) { |
| | | if (window.location.href.indexOf('&saveType=1') > -1) { |
| | | refopener(); |
| | | } |
| | | window.history.pushState({}, "", window.location.href.replace('&saveType=1', '')); |
| | | //2022 02 24 张华建 display PI Data start |
| | | var rowBList; |
| | | var TrialUser = {}; |
| | | var ids = []; |
| | | |
| | | function HasError(){ |
| | | // let e = document.getElementById("allPage:allForm:message"); |
| | | |
| | | // if (!e) { |
| | | // return false; |
| | | // } |
| | | |
| | | // let divs = j$(e).find("div.message"); |
| | | // for (let i = 0; i < divs.length; i++) { |
| | | // for (let j = 0; j < divs[i].classList.length; j++) { |
| | | // for(let cls in divs[i].classList){ |
| | | // console.log('cls = ' + cls); |
| | | // if (cls.indexOf('error')>-1) { |
| | | // return true; |
| | | // } |
| | | // } |
| | | |
| | | // } |
| | | |
| | | // } |
| | | // return false; |
| | | |
| | | if(document.getElementById("allPage:allForm:message").children[0] && document.getElementById("allPage:allForm:message").children[0].children[0].className == 'message errorM3'){ |
| | | return true; |
| | | } |
| | | return false; |
| | | } |
| | | |
| | | //2022 02 24 张华建 display PI Data start |
| | | var rowBList; |
| | | var TrialUser = {}; |
| | | var ids = []; |
| | | |
| | | queryUser(); |
| | | |
| | | function q1(){ |
| | | var p = new Promise(function(resolve, reject){ |
| | | rowBList = JSON.parse('{!rowListString}') |
| | | var x = 0; |
| | | var y = 0; |
| | | let searchCallBack = function searchCallBack(result){ |
| | | let contacts = result.object; |
| | | if(contacts == null){ |
| | | return; |
| | | } |
| | | let temp = {} |
| | | temp.trialUser = contacts.trialUser; |
| | | TrialUser[contacts.dataId] = temp; |
| | | x++; |
| | | }; |
| | | for(var i=0;i<rowBList.length;i++){ |
| | | if(rowBList[i].rnd.AWS_Data_Id__c ){ |
| | | y++; |
| | | ids.push(rowBList[i].rnd.AWS_Data_Id__c + '_' + rowBList[i].rnd.Id); |
| | | AWSService.query(staticResource.queryUrl,rowBList[i].rnd.AWS_Data_Id__c,searchCallBack,staticResource.token); |
| | | } |
| | | } |
| | | var id = setInterval(function(){ |
| | | if(x == y){ |
| | | console.log('success') |
| | | resolve('success'); |
| | | clearInterval(id); |
| | | } |
| | | },500); |
| | | }); |
| | | return p; |
| | | function isError(){ |
| | | if(HasError()){ |
| | | alert('xxxx'); |
| | | } |
| | | } |
| | | |
| | | function q2(value){ |
| | | var p = new Promise(function(resolve, reject){ |
| | | console.log('进入q2'+value) |
| | | for(var i=0;i<ids.length;i++){ |
| | | console.log('i = '+i); |
| | | document.getElementById(ids[i]).children[0].children[0].children[0].value = TrialUser[ids[i].substring(0,18)].trialUser; |
| | | console.log('i = '+i); |
| | | } |
| | | }); |
| | | } |
| | | |
| | | function queryUser(){ |
| | | |
| | | |
| | | queryUser(); |
| | | |
| | | function q1(){ |
| | | var p = new Promise(function(resolve, reject){ |
| | | rowBList = JSON.parse('{!rowListString}') |
| | | console.log('pageB.fixMode = '+'{!pageB.fixMode}') |
| | | if('{!pageB.fixMode}' == 'true'){ |
| | | q1().then(function(data){ |
| | | return q2(data); |
| | | }) |
| | | unblockUI(); |
| | | }else{ |
| | | blockme(); |
| | | console.log(rowBList) |
| | | let searchCallBack = function searchCallBack(result){ |
| | | let contacts = result.object; |
| | | if(contacts == null){ |
| | | return; |
| | | } |
| | | let temp = {} |
| | | temp.trialUser = contacts.trialUser; |
| | | TrialUser[contacts.dataId] = temp; |
| | | }; |
| | | for(var i=0;i<rowBList.length;i++){ |
| | | var x = 0; |
| | | var y = 0; |
| | | let searchCallBack = function searchCallBack(result){ |
| | | let contacts = result.object; |
| | | if(contacts == null){ |
| | | return; |
| | | } |
| | | let temp = {} |
| | | temp.trialUser = contacts.trialUser; |
| | | TrialUser[contacts.dataId] = temp; |
| | | x++; |
| | | }; |
| | | for(var i=0;i<rowBList.length;i++){ |
| | | if(rowBList[i].rnd.AWS_Data_Id__c ){ |
| | | y++; |
| | | ids.push(rowBList[i].rnd.AWS_Data_Id__c + '_' + rowBList[i].rnd.Id); |
| | | AWSService.query(staticResource.queryUrl,rowBList[i].rnd.AWS_Data_Id__c,searchCallBack,staticResource.token); |
| | | } |
| | | unblockUI(); |
| | | } |
| | | } |
| | | |
| | | function showPIDiv(awsDataId){ |
| | | if(awsDataId.length == 0){ |
| | | return |
| | | } |
| | | if(TrialUser[awsDataId.substring(0,18)] == null){ |
| | | return |
| | | } |
| | | console.log('awsDataId Value:'+awsDataId); |
| | | let parentNode = document.getElementById(awsDataId); |
| | | let createDiv = document.createElement("div"); |
| | | createDiv.id = awsDataId+"_PI"; |
| | | let piInformation = TrialUser[awsDataId.substring(0,18)].trialUser |
| | | //let piInformation = 'Name:'+contact['943114607025717249'].lastName +'\n' +'Phone:'+contact['943114607025717249'].phone |
| | | createDiv.innerText = piInformation; |
| | | let x=window.event.x; |
| | | let y=window.event.y; |
| | | createDiv.style.left=x; |
| | | createDiv.style.top=y; |
| | | createDiv.style.background="#dddddd"; |
| | | createDiv.style.position = "absolute"; |
| | | parentNode.appendChild(createDiv); |
| | | parentNode.style.position = "relative"; |
| | | } |
| | | |
| | | function hidePIDiv(awsDataId){ |
| | | if(awsDataId.length == 0){ |
| | | return |
| | | } |
| | | if(TrialUser[awsDataId.substring(0,18)] == null){ |
| | | return |
| | | } |
| | | document.getElementById(awsDataId+'_PI').remove(); |
| | | } |
| | | |
| | | function q3(){ |
| | | var p = new Promise(function(resolve, reject){ |
| | | console.log('saveRecordJS') |
| | | |
| | | var a = 0; |
| | | var b = 0; |
| | | let newCallBack = function newCallBack(result,indexNumber){ |
| | | |
| | | console.log('result = '+JSON.stringify(result)) |
| | | //赋值dataId和trialUser |
| | | document.getElementById('allPage:allForm:dataBlock:dataline_R_aws:'+indexNumber+':EditAWSDataId').value = result.object[0].dataId; |
| | | document.getElementById('allPage:allForm:dataBlock:dataline_R:'+indexNumber+':inputField:6:inputField').value = result.object[0].trialUser; |
| | | let transParameters = { |
| | | txId: result.txId, |
| | | isSuccess: 1 |
| | | }; |
| | | let confirmCallBack = function confirmCallBack(result){ |
| | | console.log('confirmCallBack = '+JSON.stringify(result)) |
| | | } |
| | | b++; |
| | | AWSService.confirmTrans(staticResource.transactionUrl,JSON.stringify(transParameters),confirmCallBack,staticResource.token) |
| | | }; |
| | | for(var i=0;i<rowBList.length;i++){ |
| | | if(document.getElementById('allPage:allForm:dataBlock:dataline_L:'+i+':rowCheck').checked == true){ |
| | | a++; |
| | | } |
| | | var id = setInterval(function(){ |
| | | if(x == y){ |
| | | console.log('success') |
| | | resolve('success'); |
| | | clearInterval(id); |
| | | } |
| | | debugger |
| | | for(var i=0;i<rowBList.length;i++){ |
| | | if(document.getElementById('allPage:allForm:dataBlock:dataline_L:'+i+':rowCheck').checked == true){ |
| | | //加密试用者 |
| | | var trialUser = document.getElementById('allPage:allForm:dataBlock:dataline_R:'+i+':inputField:6:j_id86').children[0].children[0].value |
| | | let consumApplyPayloadList = []; |
| | | let consumApplyPIData = new Object(); |
| | | consumApplyPIData.trialUser = trialUser; |
| | | consumApplyPIData.sfRecordId = ''; |
| | | consumApplyPayloadList.push(consumApplyPIData); |
| | | AWSService.postConsumTrial(staticResource.newUrl,i,JSON.stringify(consumApplyPayloadList),newCallBack,staticResource.token); |
| | | } |
| | | } |
| | | var id = setInterval(function(){ |
| | | if(a == b){ |
| | | console.log('a==b success') |
| | | resolve('success'); |
| | | clearInterval(id); |
| | | } |
| | | },500); |
| | | }); |
| | | return p; |
| | | } |
| | | },500); |
| | | }); |
| | | return p; |
| | | } |
| | | |
| | | function q4(){ |
| | | debugger |
| | | saveRecord(); |
| | | } |
| | | function saveRecordJS(){ |
| | | if('{!pageB.fixMode}' != 'true'){ |
| | | return |
| | | function q2(value){ |
| | | var p = new Promise(function(resolve, reject){ |
| | | console.log('进入q2'+value) |
| | | for(var i=0;i<ids.length;i++){ |
| | | console.log('i = '+i); |
| | | document.getElementById(ids[i]).children[0].children[0].children[0].value = TrialUser[ids[i].substring(0,18)].trialUser; |
| | | console.log('i = '+i); |
| | | } |
| | | }); |
| | | } |
| | | |
| | | function queryUser(){ |
| | | rowBList = JSON.parse('{!rowListString}') |
| | | console.log('pageB.fixMode = '+'{!pageB.fixMode}') |
| | | if('{!pageB.fixMode}' == 'true'){ |
| | | q1().then(function(data){ |
| | | return q2(data); |
| | | }) |
| | | unblockUI(); |
| | | }else{ |
| | | blockme(); |
| | | console.log(rowBList) |
| | | let searchCallBack = function searchCallBack(result){ |
| | | let contacts = result.object; |
| | | if(contacts == null){ |
| | | return; |
| | | } |
| | | q3().then(function(data){ |
| | | return q4(data); |
| | | }) |
| | | let temp = {} |
| | | temp.trialUser = contacts.trialUser; |
| | | TrialUser[contacts.dataId] = temp; |
| | | }; |
| | | for(var i=0;i<rowBList.length;i++){ |
| | | ids.push(rowBList[i].rnd.AWS_Data_Id__c + '_' + rowBList[i].rnd.Id); |
| | | AWSService.query(staticResource.queryUrl,rowBList[i].rnd.AWS_Data_Id__c,searchCallBack,staticResource.token); |
| | | } |
| | | unblockUI(); |
| | | } |
| | | //2022 02 24 张华建 display PI Data end |
| | | </script> |
| | | <apex:pageMessages /> |
| | | } |
| | | |
| | | function showPIDiv(awsDataId){ |
| | | if(awsDataId.length == 0){ |
| | | return |
| | | } |
| | | if(TrialUser[awsDataId.substring(0,18)] == null){ |
| | | return |
| | | } |
| | | console.log('awsDataId Value:'+awsDataId); |
| | | let parentNode = document.getElementById(awsDataId); |
| | | let createDiv = document.createElement("div"); |
| | | createDiv.id = awsDataId+"_PI"; |
| | | let piInformation = TrialUser[awsDataId.substring(0,18)].trialUser |
| | | //let piInformation = 'Name:'+contact['943114607025717249'].lastName +'\n' +'Phone:'+contact['943114607025717249'].phone |
| | | createDiv.innerText = piInformation; |
| | | let x=window.event.x; |
| | | let y=window.event.y; |
| | | createDiv.style.left=x; |
| | | createDiv.style.top=y; |
| | | createDiv.style.background="#dddddd"; |
| | | createDiv.style.position = "absolute"; |
| | | parentNode.appendChild(createDiv); |
| | | parentNode.style.position = "relative"; |
| | | } |
| | | |
| | | function hidePIDiv(awsDataId){ |
| | | if(awsDataId.length == 0){ |
| | | return |
| | | } |
| | | if(TrialUser[awsDataId.substring(0,18)] == null){ |
| | | return |
| | | } |
| | | document.getElementById(awsDataId+'_PI').remove(); |
| | | } |
| | | |
| | | |
| | | function q3(){ |
| | | var p = new Promise(function(resolve, reject){ |
| | | console.log('saveRecordJS') |
| | | txIds = []; |
| | | trialuserMap = {}; |
| | | var a = 0; |
| | | var b = 0; |
| | | debugger |
| | | let newCallBack = function newCallBack(result,indexNumber){ |
| | | //赋值dataId和trialUser |
| | | document.getElementById('allPage:allForm:dataBlock:dataline_R_aws:'+indexNumber+':EditAWSDataId').value = result.object[0].dataId; |
| | | document.getElementById('allPage:allForm:dataBlock:dataline_R_aws:'+indexNumber+':TrialUserEncrypt').value = result.object[0].trialUserEncrypt; |
| | | document.getElementById('allPage:allForm:dataBlock:dataline_R:'+indexNumber+':inputField:6:inputField').value = result.object[0].trialUser; |
| | | // let transParameters = { |
| | | // txId: result.txId, |
| | | // isSuccess: 1 |
| | | // }; |
| | | // let confirmCallBack = function confirmCallBack(result){ |
| | | // console.log('confirmCallBack = '+JSON.stringify(result)) |
| | | // } |
| | | b++; |
| | | txIds.push(result.txId) |
| | | //AWSService.confirmTrans(staticResource.transactionUrl,JSON.stringify(transParameters),confirmCallBack,staticResource.token) |
| | | }; |
| | | for(var i=0;i<rowBList.length;i++){ |
| | | if(document.getElementById('allPage:allForm:dataBlock:dataline_L:'+i+':rowCheck').checked == true){ |
| | | a++; |
| | | } |
| | | } |
| | | for(var i=0;i<rowBList.length;i++){ |
| | | if(document.getElementById('allPage:allForm:dataBlock:dataline_L:'+i+':rowCheck').checked == true){ |
| | | //加密试用者 |
| | | let e = document.getElementById('allPage:allForm:dataBlock:dataline_R:'+i+':inputField:6:j_id86').children[0].children[0]; |
| | | var trialUser = e.value; |
| | | trialuserMap['allPage:allForm:dataBlock:dataline_R:'+i+':inputField:6:j_id86'] = trialUser; |
| | | let consumApplyPayloadList = []; |
| | | let consumApplyPIData = new Object(); |
| | | consumApplyPIData.trialUser = trialUser; |
| | | consumApplyPIData.sfRecordId = ''; |
| | | consumApplyPayloadList.push(consumApplyPIData); |
| | | AWSService.postConsumTrial(staticResource.newUrl,i,JSON.stringify(consumApplyPayloadList),newCallBack,staticResource.token); |
| | | } |
| | | } |
| | | var id = setInterval(function(){ |
| | | if(a == b){ |
| | | console.log('a==b success') |
| | | resolve('success'); |
| | | clearInterval(id); |
| | | } |
| | | },500); |
| | | }); |
| | | return p; |
| | | } |
| | | |
| | | function q4(){ |
| | | debugger |
| | | saveRecord(); |
| | | } |
| | | |
| | | function Trans(){ |
| | | if(HasError()){ |
| | | unblockUI(); |
| | | for(var e in trialuserMap){ |
| | | document.getElementById(e).children[0].children[0].value = trialuserMap[e]; |
| | | } |
| | | return; |
| | | } |
| | | var x = 0; |
| | | let confirmCallBack = function confirmCallBack(result){ |
| | | console.log('confirmCallBack = '+JSON.stringify(result)) |
| | | x++; |
| | | if(x == txIds.length){ |
| | | refopener(); |
| | | unblockUI(); |
| | | window.location.href='/apex/ConsumTrial?id=' + '{!parId}' + '&canedit=true&saveType=1'; |
| | | } |
| | | } |
| | | for(var i=0;i<txIds.length;i++){ |
| | | let transParameters = { |
| | | txId: txIds[i], |
| | | isSuccess: 1 |
| | | }; |
| | | AWSService.confirmTrans(staticResource.transactionUrl,JSON.stringify(transParameters),confirmCallBack,staticResource.token) |
| | | } |
| | | } |
| | | |
| | | function saveRecordJS(){ |
| | | if('{!pageB.fixMode}' != 'true'){ |
| | | return |
| | | } |
| | | q3().then(function(data){ |
| | | return q4(data); |
| | | }) |
| | | unblockUI(); |
| | | } |
| | | //2022 02 24 张华建 display PI Data end |
| | | </script> |
| | | <apex:pageMessages id="message"/> |
| | | <!-- oncomplete="clearApplyValue(); return false;" --> |
| | | <apex:actionFunction name="passApplyMsgToController" action="{!showApplyMsg}" rerender="allForm"> |
| | | <apex:param name="applyMsg" value="" /> |
| | |
| | | <apex:actionFunction name="sendEmail" action="{!sendEmail}" rerender="allForm" oncomplete="unblockUI();"> |
| | | <apex:param name="emailBody" value="" /> |
| | | </apex:actionFunction> |
| | | <apex:actionFunction name="saveRecord" action="{!saveRecord}" oncomplete="refopener();unblockUI();" rerender="allForm"/> |
| | | <apex:actionFunction name="saveRecord" action="{!saveRecord}" oncomplete="Trans();" rerender="allForm"/> |
| | | <apex:inputHidden id="clearApplyFlagId" /> |
| | | <apex:outputPanel id="pageallPanel"> |
| | | <apex:pageBlock id="searchBlock"> |
| | |
| | | </div> |
| | | <apex:repeat id="dataline_R_aws" value="{!pageB.rowBList}" var="var"> |
| | | <apex:inputHidden value="{!var.rnd.AWS_Data_Id__c}" id="EditAWSDataId"/> |
| | | <apex:inputHidden value="{!var.rnd.Trial_User_Encrypt__c}" id="TrialUserEncrypt"/> |
| | | </apex:repeat> |
| | | <div id="in_Div" style="overflow:auto;"> |
| | | <table class="list" style="border-bottom-width: 0px; font-size:11px; border-spacing:0;" border="" id="tableData"> |
| | |
| | | <apex:page applyHtmlTag="false" Controller="FixtureRentalPDFController" showHeader="false" sidebar="false" id="allPage" action="{!init}" ><!-- renderAs="pdf" --> |
| | | <apex:page applyHtmlTag="false" Controller="FixtureRentalPDFController" showHeader="false" sidebar="false" id="allPage" action="{!init}"> |
| | | <!-- renderAs="pdf" --> |
| | | <html> |
| | | <head> |
| | | <style type="text/css" media="print"> |
| | | @page { |
| | | size: A4; |
| | | margin: 1mm 2.5mm 0mm 2.5mm; |
| | | } |
| | | |
| | | /*td{ |
| | | <head> |
| | | <style type="text/css" media="print"> |
| | | @page { |
| | | size: A4; |
| | | margin: 1mm 2.5mm 0mm 2.5mm; |
| | | } |
| | | |
| | | /*td{ |
| | | height: 23px; |
| | | }*/ |
| | | |
| | | </style> |
| | | <style> |
| | | body{margin: 0 auto; |
| | | width: 780px;} |
| | | #title1{height: 30px;} |
| | | #title2{height: 110px;} |
| | | </style> |
| | | <apex:includeScript value="{! URLFOR($Resource.AWSService, 'AWSService.js') }" /> |
| | | <script src="../../soap/ajax/53.0/connection.js" type="text/javascript"></script> |
| | | <apex:stylesheet value="{!URLFOR($Resource.blockUIcss)}"/> |
| | | <apex:includeScript value="{!URLFOR($Resource.jquery183minjs)}"/> |
| | | <apex:includeScript value="{!URLFOR($Resource.PleaseWaitDialog)}"/> |
| | | <apex:includeScript value="{!URLFOR($Resource.jspdf)}"/> |
| | | <apex:includeScript value="{!URLFOR($Resource.html2canvas)}"/> |
| | | |
| | | </head> |
| | | |
| | | </style> |
| | | <style> |
| | | body { |
| | | margin: 0 auto; |
| | | width: 780px; |
| | | } |
| | | |
| | | <body style="font-family: Arial Unicode MS; page-break-inside: auto;font-size: 14px"> |
| | | <div id="pdf-wrapper"> |
| | | <apex:outputPanel id="showhidden" rendered="true"> |
| | | .title1 { |
| | | height: 35px; |
| | | } |
| | | |
| | | .title2 { |
| | | height: 110px; |
| | | } |
| | | </style> |
| | | <apex:includeScript value="{! URLFOR($Resource.AWSService, 'AWSService.js') }" /> |
| | | <script src="../../soap/ajax/53.0/connection.js" type="text/javascript"></script> |
| | | <apex:stylesheet value="{!URLFOR($Resource.blockUIcss)}" /> |
| | | <apex:includeScript value="{!URLFOR($Resource.jquery183minjs)}" /> |
| | | <apex:includeScript value="{!URLFOR($Resource.PleaseWaitDialog)}" /> |
| | | <apex:includeScript value="{!URLFOR($Resource.jspdf)}" /> |
| | | <apex:includeScript value="{!URLFOR($Resource.html2canvas)}" /> |
| | | |
| | | </head> |
| | | |
| | | |
| | | <body style="font-family: Arial Unicode MS; page-break-inside: auto;font-size: 14px"> |
| | | <div id="pdf-wrapper"> |
| | | <apex:outputPanel id="showhidden" rendered="true"> |
| | | |
| | | <div class="pdf-page"> |
| | | <div class="title1"></div> |
| | | <!-- 20201119 LJH OCSM_BP5-61 update start 现地管理和现地管理的主单不显示--> |
| | | <!-- <apex:outputText style="float:left;font-size:22px;margin-top: 25px;" value="{!centreAddress}" /> --> |
| | | <apex:outputText style="float:left;font-size:22px;margin-top: 25px;" value="{!IF(IsShowLU,centreAddress,'')}" /> |
| | |
| | | </colgroup> |
| | | <tr> |
| | | <th style="text-align:center;" colspan="2" height="38">奥林巴斯备品签收单 |
| | | <!-- <img style="float: right; width: 35px; height: 35px;padding: 0px;margin-top: -7px;" src="{!'/servlet/servlet.FileDownload?file=' + ApplyHeadShow.QRId__c}" /> --> |
| | | <!-- <img style="float: right; width: 35px; height: 35px;padding: 0px;margin-top: -7px;" src="{!qrcode}" /> --> |
| | | </th> |
| | | </tr> |
| | | <tr> |
| | | <td style="text-align:left;border-right-style: none;">★填写完整后请自发货日起10天内上传SFDC</td> |
| | | <td style="text-align:right;border-left-style: none;">备品管理中心申请单号:<apex:outputText value="{!ApplyHeadShow.Name}" /></td> |
| | | <td style="text-align:right;border-left-style: none;">备品管理中心申请单号: |
| | | <apex:outputText value="{!ApplyHeadShow.Name}" /> |
| | | </td> |
| | | </tr> |
| | | <!-- <tr style="background-color:#003399;color:white"> |
| | | <th style="text-align:center;" height="40">发货信息</th> |
| | | </tr> --> |
| | | <th style="text-align:center;" height="40">发货信息</th> |
| | | </tr> --> |
| | | <!-- <tr> |
| | | <td style="text-align:left;font-size:12px"> |
| | | 1、本发货确认单共两页。首页中到货确认部分为现场必填项目,填写完整后请回传至备品中心(传真或扫描件即可);<br /> |
| | | 末页中清洗消毒灭菌确认栏为现场必填项目,备品回寄时请将此页随备品一同寄回备品中心。<br /> |
| | | 2、请对产品进行清洗消毒或灭菌后再使用。<br /> |
| | | 3、在使用备品前,敬请仔细阅读背面“备品使用须知”,请明确申请人及申请方责任与义务。 |
| | | </td> |
| | | </tr> --> |
| | | <td style="text-align:left;font-size:12px"> |
| | | 1、本发货确认单共两页。首页中到货确认部分为现场必填项目,填写完整后请回传至备品中心(传真或扫描件即可);<br /> |
| | | 末页中清洗消毒灭菌确认栏为现场必填项目,备品回寄时请将此页随备品一同寄回备品中心。<br /> |
| | | 2、请对产品进行清洗消毒或灭菌后再使用。<br /> |
| | | 3、在使用备品前,敬请仔细阅读背面“备品使用须知”,请明确申请人及申请方责任与义务。 |
| | | </td> |
| | | </tr> --> |
| | | </table> |
| | | <table border="1px" width="100%" style="border-collapse: collapse;"> |
| | | <colgroup> |
| | |
| | | <th style="text-align:center;" colspan="5" height="25">发货信息</th> |
| | | </tr> |
| | | <tr> |
| | | <td style="text-align:left;">使用目的</td> <td style="text-align:left;font-size: 13px" colspan="4"><apex:outputText value="{!ApplyHeadShow.Demo_purpose1__c}" /></td> |
| | | <td style="text-align:left;">使用目的</td> |
| | | <td style="text-align:left;font-size: 13px" colspan="4"> |
| | | <apex:outputText value="{!ApplyHeadShow.Demo_purpose1__c}" /> |
| | | </td> |
| | | </tr> |
| | | <tr> |
| | | <td style="text-align:left;" rowspan="2">申请人信息</td> |
| | | <td style="text-align:left;">所属本部名</td> <td style="text-align:left;font-size: 13px"> <apex:outputText value="{!ApplyHeadShow.Salesdept__c}" /></td> |
| | | <td style="text-align:left;" >所属办事处名</td> <td style="text-align:left;font-size: 13px"> <apex:outputText value="{!ApplyHeadShow.WorkPlace__c}" /></td> |
| | | <td style="text-align:left;">所属本部名</td> |
| | | <td style="text-align:left;font-size: 13px"> |
| | | <apex:outputText value="{!ApplyHeadShow.Salesdept__c}" /> |
| | | </td> |
| | | <td style="text-align:left;">所属办事处名</td> |
| | | <td style="text-align:left;font-size: 13px"> |
| | | <apex:outputText value="{!ApplyHeadShow.WorkPlace__c}" /> |
| | | </td> |
| | | </tr> |
| | | <tr> |
| | | <td style="text-align:left;" >姓名 </td> <td style="text-align:left;font-size: 13px"> <apex:outputText value="{!ApplyHeadShow.Person_In_Charge__r.name}" /></td> |
| | | <td style="text-align:left;" colspan="1">联系电话</td> <td style="text-align:left;font-size: 13px"> <apex:outputText value="{!ApplyHeadShow.ApplyPerson_Phone__c}" /></td> |
| | | <td style="text-align:left;">姓名 </td> |
| | | <td style="text-align:left;font-size: 13px"> |
| | | <apex:outputText value="{!ApplyHeadShow.Person_In_Charge__r.name}" /> |
| | | </td> |
| | | <td style="text-align:left;" colspan="1">联系电话</td> |
| | | <td style="text-align:left;font-size: 13px"> |
| | | <apex:outputText value="{!ApplyHeadShow.ApplyPerson_Phone__c}" /> |
| | | </td> |
| | | </tr> |
| | | <tr> |
| | | <td style="text-align:left;" >医疗机构信息</td> |
| | | <td style="text-align:left;" >医疗机构名</td> <td style="text-align:left;font-size: 13px"> <apex:outputText value="{!HospitalName}" /></td> |
| | | <td style="text-align:left;" >科室名</td> <td style="text-align:left;font-size: 13px"><apex:outputText value="{!ApplyHeadShow.Account__r.Department_Name__c}" /></td> |
| | | <td style="text-align:left;">医疗机构信息</td> |
| | | <td style="text-align:left;">医疗机构名</td> |
| | | <td style="text-align:left;font-size: 13px"> |
| | | <apex:outputText value="{!HospitalName}" /> |
| | | </td> |
| | | <td style="text-align:left;">科室名</td> |
| | | <td style="text-align:left;font-size: 13px"> |
| | | <apex:outputText value="{!ApplyHeadShow.Account__r.Department_Name__c}" /> |
| | | </td> |
| | | </tr> |
| | | <tr> |
| | | <td style="text-align:left;" rowspan="3" >发货地址</td> <td colspan="2" rowspan="3" style="text-align:left;font-size: 13px"> <apex:outputText styleClass="Shippmentadress" value="{!Shippmentadress}" /></td> |
| | | <td style="text-align:left;" colspan="1">邮编</td> <td style="text-align:left;"> <apex:outputText value="{!IF(ApplyHeadShow.Shipment_address__r.Post_Code__c==null,ApplyHeadShow.Post_Code__c,ApplyHeadShow.Shipment_address__r.Post_Code__c)}" /></td> |
| | | <td style="text-align:left;" rowspan="3">发货地址</td> |
| | | <td colspan="2" rowspan="3" style="text-align:left;font-size: 13px"> |
| | | <apex:outputText styleClass="Shippmentadress" value="{!Shippmentadress}" /> |
| | | </td> |
| | | <td style="text-align:left;" colspan="1">邮编</td> |
| | | <td style="text-align:left;"> |
| | | <apex:outputText value="{!IF(ApplyHeadShow.Shipment_address__r.Post_Code__c==null,ApplyHeadShow.Post_Code__c,ApplyHeadShow.Shipment_address__r.Post_Code__c)}" |
| | | /> |
| | | </td> |
| | | </tr> |
| | | <tr> |
| | | <td style="text-align:left;" colspan="1">接收人姓名</td> <td style="text-align:left;font-size: 13px"> <apex:outputText value="{!ApplyHeadShow.Loaner_received_staff__c}" /></td> |
| | | <td style="text-align:left;" colspan="1">接收人姓名</td> |
| | | <td style="text-align:left;font-size: 13px"> |
| | | <apex:outputText value="{!ApplyHeadShow.Loaner_received_staff__c}" /> |
| | | </td> |
| | | </tr> |
| | | <tr> |
| | | <td style="text-align:left;" colspan="1">接收人电话</td> <td style="text-align:left;font-size: 13px"> <apex:outputText value="{!ApplyHeadShow.Loaner_received_staff_phone__c}" /></td> |
| | | <td style="text-align:left;" colspan="1">接收人电话</td> |
| | | <td style="text-align:left;font-size: 13px"> |
| | | <apex:outputText value="{!ApplyHeadShow.Loaner_received_staff_phone__c}" /> |
| | | </td> |
| | | </tr> |
| | | </table> |
| | | <table border="1" width="100%" style="border-collapse: collapse;"> |
| | |
| | | </table> |
| | | <table border="1" width="100%" style="border-collapse: collapse;"> |
| | | <colgroup> |
| | | |
| | | |
| | | <col width="19%" /> |
| | | <col width="29%" /> |
| | | <col width="29%" /> |
| | | <col width="23%" /> |
| | | </colgroup> |
| | | <tr> |
| | | <th style="text-align:center;" colspan="4" height="40"> 奥林巴斯备品借用申请・安装人填写栏<small>(必填)</small><br/>到货确认部分为奥林巴斯员工必填项目</th> |
| | | <th style="text-align:center;" colspan="4" height="40"> 奥林巴斯备品借用申请・安装人填写栏 |
| | | <small>(必填)</small> |
| | | <br/>到货确认部分为奥林巴斯员工必填项目</th> |
| | | </tr> |
| | | <tr> |
| | | <td style="text-align:left;" >签收者姓名</td> <td style="text-align:left;"></td> |
| | | <td style="text-align:left;">备品安装者姓名</td> <td style="text-align:left;"></td> |
| | | <td style="text-align:left;">签收者姓名</td> |
| | | <td style="text-align:left;"></td> |
| | | <td style="text-align:left;">备品安装者姓名</td> |
| | | <td style="text-align:left;"></td> |
| | | </tr> |
| | | <tr> |
| | | <td style="text-align:left;">签收日期</td> <td style="text-align:left;"></td> |
| | | <td style="text-align:left;">安装及安装说明日期</td> <td style="text-align:left;"> </td> |
| | | <td style="text-align:left;">签收日期</td> |
| | | <td style="text-align:left;"></td> |
| | | <td style="text-align:left;">安装及安装说明日期</td> |
| | | <td style="text-align:left;"> </td> |
| | | </tr> |
| | | </table> |
| | | <table border="1" width="100%" style="border-collapse: collapse;"> |
| | | <colgroup> |
| | | |
| | | |
| | | <col width="19%" /> |
| | | <col width="29%" /> |
| | | <col width="29%" /> |
| | | <col width="29%" /> |
| | | <col width="23%" /> |
| | | </colgroup> |
| | | <tr> |
| | | <th style="text-align:center;" colspan="4" height="40"> 医疗机构签收填写栏<small>(必填)</small><br/>敬请使用备品前仔细阅读下方“奥林巴斯备品借用须知”,以明确使用方的责任与义务</th> |
| | | |
| | | <th style="text-align:center;" colspan="4" height="40"> 医疗机构签收填写栏 |
| | | <small>(必填)</small> |
| | | <br/>敬请使用备品前仔细阅读下方“奥林巴斯备品借用须知”,以明确使用方的责任与义务</th> |
| | | |
| | | </tr> |
| | | <!--根据OLY_OCM-260记载,先注释掉(OLY_OCM-251取消注释) --> |
| | | <tr><th style="text-align:center;" height="25" colspan="4">《奥林巴斯备品发货清单》所列备品悉数收到, |
| | | 共计主机{!mainCnt}件,附属品{!accessoryCnt}件;并已接受产品使用说明和了解借用须知。</th></tr> |
| | | <tr> |
| | | <td style="text-align:left;" >签收者姓名</td> <td style="text-align:left;"></td> |
| | | <th style="text-align:center;" height="25" colspan="4">《奥林巴斯备品发货清单》所列备品悉数收到, 共计主机{!mainCnt}件,附属品{!accessoryCnt}件;并已接受产品使用说明和了解借用须知。 |
| | | </th> |
| | | </tr> |
| | | <tr> |
| | | <td style="text-align:left;">签收者姓名</td> |
| | | <td style="text-align:left;"></td> |
| | | <td style="text-align:left;" rowspan="2">接收单位(科室)章 </td> |
| | | <td style="text-align:left;" rowspan="2"> </td> |
| | | </tr> |
| | | <tr> |
| | | <td style="text-align:left;">签收日期</td> <td style="text-align:left;"></td> |
| | | |
| | | <td style="text-align:left;">签收日期</td> |
| | | <td style="text-align:left;"></td> |
| | | |
| | | </tr> |
| | | </table> |
| | | <table border="1" width="100%" style="border-collapse: collapse;"> |
| | |
| | | </tr> |
| | | <tr> |
| | | <td style="text-align:left;font-size: 12px"> |
| | | 1,备品:本须知所指的备品,是指本签收单附件《奥林巴斯备品发货清单》所列的由奥林巴斯(北京)销售服务有限公司(以下简称奥林<br/>巴斯)在规定期限内免费提供给借用单位为实施医疗行为或培训等所使用的设备包括产品及相关附属品,附件是本须知有效组成部分,与本<br/>须知具有同等法律效力。<br/> |
| | | 2,备品所有权:备品所有权归属于奥林巴斯公司。未经奥林巴斯公司书面同意,借用单位不得以任何理由向任何第三方转借、转让附件所<br/>列备品,或将附件所列备品作为担保抵押给任何第三方。<br/> |
| | | 3,备品使用权:借用期限内,借用单位对出借的备品享有独立合理的使用权利。若在使用过程中存在不确定情况时,借用单位应及时通知<br/>奥林巴斯公司,奥林巴斯公司将到场给予指导和协助,借用单位不应擅自处理。<br/> |
| | | 4,备品之日常使用与维护:借用单位在使用备品过程中应按照奥林巴斯公司的要求(“产品使用说明书”)内容尽审慎义务正确操作使用、<br/>爱护使用。备品使用前后都应进行必要的清洗消毒(灭菌)及日常检测工作,以确保备品的正常运作。<br/> |
| | | 5,备品损坏、遗失之赔偿责任:附件所列备品若因正常损耗而产生的维修或维护费用,由奥林巴斯公司承担;若因借用单位使用不当或超<br/>期借用等原因造成的备品损坏,借用单位应承担相关维修费用。当备品借用中发生故障需要维修时,应联系奥林巴斯进行检测和维修,不得<br/>擅自将相关备品交由任何第三方维修。若因借用单位原因造成备品遗失时,则借用单位应负赔偿责任。<br/> |
| | | 6,医疗责任事故:备品是符合国家质量标准并经检验合格的医疗器械产品,借用单位应独立依靠其医疗专业水平和能力利用备品进行医疗<br/>活动或培训。借用单位使用备品时所发生的任何问题均由借用单位自行负责、处理。<br/> |
| | | 7,备品返还:借用单位应按照本单注明的使用期限履行按时返还备品的承诺。返回前,借用单位应对备品进行清洗消毒或灭菌,以保证所<br/>有备品接触者的健康安全,同时借用单位有义务为奥林巴斯公司回收备品提供必要协助。<br/> |
| | | 8,借用单位知悉且同意,此次备品出借基于正当合理的理由,而非通过出借备品对借用单位购买、推荐奥林巴斯公司产品、服务等产生任<br/>何不正当影响。<br/> |
| | | 9,借用单位应严格按本单所载使用目的使用备品,禁止将备品用于本单所载使用目的以外的其他用途。<br/> |
| | | 10,若借用单位选择以加盖实际接收备品的借用单位内部部门章或签收者签名方式确认以上内容,实际接收备品的借用单位内部部门或签<br/>收者确认其具备相应资格代表借用单位进行签收和确认。<br/> |
| | | 11,其它:其它未尽事宜,双方应本着友好合作的原则进行协商解决。 |
| | | 1,备品:本须知所指的备品,是指本签收单附件《奥林巴斯备品发货清单》所列的由奥林巴斯(北京)销售服务有限公司(以下简称奥林 |
| | | <br/>巴斯)在规定期限内免费提供给借用单位为实施医疗行为或培训等所使用的设备包括产品及相关附属品,附件是本须知有效组成部分,与本 |
| | | <br/>须知具有同等法律效力。 |
| | | <br/> 2,备品所有权:备品所有权归属于奥林巴斯公司。未经奥林巴斯公司书面同意,借用单位不得以任何理由向任何第三方转借、转让附件所 |
| | | <br/>列备品,或将附件所列备品作为担保抵押给任何第三方。 |
| | | <br/> 3,备品使用权:借用期限内,借用单位对出借的备品享有独立合理的使用权利。若在使用过程中存在不确定情况时,借用单位应及时通知 |
| | | <br/>奥林巴斯公司,奥林巴斯公司将到场给予指导和协助,借用单位不应擅自处理。 |
| | | <br/> 4,备品之日常使用与维护:借用单位在使用备品过程中应按照奥林巴斯公司的要求(“产品使用说明书”)内容尽审慎义务正确操作使用、 |
| | | <br/>爱护使用。备品使用前后都应进行必要的清洗消毒(灭菌)及日常检测工作,以确保备品的正常运作。 |
| | | <br/> 5,备品损坏、遗失之赔偿责任:附件所列备品若因正常损耗而产生的维修或维护费用,由奥林巴斯公司承担;若因借用单位使用不当或超 |
| | | <br/>期借用等原因造成的备品损坏,借用单位应承担相关维修费用。当备品借用中发生故障需要维修时,应联系奥林巴斯进行检测和维修,不得 |
| | | <br/>擅自将相关备品交由任何第三方维修。若因借用单位原因造成备品遗失时,则借用单位应负赔偿责任。 |
| | | <br/> 6,医疗责任事故:备品是符合国家质量标准并经检验合格的医疗器械产品,借用单位应独立依靠其医疗专业水平和能力利用备品进行医疗 |
| | | <br/>活动或培训。借用单位使用备品时所发生的任何问题均由借用单位自行负责、处理。 |
| | | <br/> 7,备品返还:借用单位应按照本单注明的使用期限履行按时返还备品的承诺。返回前,借用单位应对备品进行清洗消毒或灭菌,以保证所 |
| | | <br/>有备品接触者的健康安全,同时借用单位有义务为奥林巴斯公司回收备品提供必要协助。 |
| | | <br/> 8,借用单位知悉且同意,此次备品出借基于正当合理的理由,而非通过出借备品对借用单位购买、推荐奥林巴斯公司产品、服务等产生任 |
| | | <br/>何不正当影响。 |
| | | <br/> 9,借用单位应严格按本单所载使用目的使用备品,禁止将备品用于本单所载使用目的以外的其他用途。 |
| | | <br/> 10,若借用单位选择以加盖实际接收备品的借用单位内部部门章或签收者签名方式确认以上内容,实际接收备品的借用单位内部部门或签 |
| | | <br/>收者确认其具备相应资格代表借用单位进行签收和确认。 |
| | | <br/> 11,其它:其它未尽事宜,双方应本着友好合作的原则进行协商解决。 |
| | | </td> |
| | | <!-- 20211008 ljh SFDC-C7L4ED 增加8,9,10--> |
| | | <!-- 20211008 ljh SFDC-C7L4ED 增加8,9,10--> |
| | | </tr> |
| | | <tr> |
| | | <td style="text-align:left;font-size:12px;border-collapse: collapse;" colspan="2" height="80"> |
| | | 奥林巴斯 北京备品中心地址:北京市朝阳区酒仙桥路10号恒通商务园B12C座西门1F<br /> |
| | | 邮编:100015 TEL:010-59756006-1871 FAX: 010-59756534<br /> |
| | | 奥林巴斯 广州备品中心地址:广州市番禺区东环街番禺大道北537号番山创业中心3号楼1F<br /> |
| | | 邮编:511400 TEL:020-39198888-8876 FAX:020-39198848<br /> |
| | | 奥林巴斯 上海备品中心地址:上海市浦东新区金吉路778号3号楼1F<br /> |
| | | 邮编:201206 TEL:021-60391318-8877 FAX:021-60391316<br /> |
| | | 奥林巴斯 北京备品中心地址:北京市朝阳区酒仙桥路10号恒通商务园B12C座西门1F |
| | | <br /> 邮编:100015 TEL:010-59756006-1871 FAX: 010-59756534 |
| | | <br /> 奥林巴斯 广州备品中心地址:广州市番禺区东环街番禺大道北537号番山创业中心3号楼1F |
| | | <br /> 邮编:511400 TEL:020-39198888-8876 FAX:020-39198848 |
| | | <br /> 奥林巴斯 上海备品中心地址:上海市浦东新区金吉路778号3号楼1F |
| | | <br /> 邮编:201206 TEL:021-60391318-8877 FAX:021-60391316 |
| | | <br /> |
| | | </td> |
| | | <!-- 20210812 SFDC-C5CC5S 修改地址--> |
| | | </tr> |
| | | </table> |
| | | <apex:outputPanel layout="none"> |
| | | <div style="page-break-after: always;"/> |
| | | <div style="page-break-after: always;"></div> |
| | | </apex:outputPanel> |
| | | |
| | | </div> |
| | | <apex:variable value="{!1}" var="pNcnt" /> |
| | | <apex:variable value="{!1}" var="pcnt" /> |
| | | <apex:repeat value="{!records}" var="record"> |
| | | <div style="{position:absolute;width:100%;height:15px"> </div> |
| | | <!-- 20201119 LJH OCSM_BP5-61 update start 主单是显示办事处和备品中心分来显示且内容不同 --> |
| | | <!-- <apex:outputText style="float:left;font-size:22px;margin-top: 15px;" value="{!centreAddress}"/> --> |
| | | <!-- height: 15mm; --> |
| | | <table border="0" width="100%" style="border-collapse: collapse;margin: 0;"> |
| | | <apex:outputPanel layout="none" rendered="{!IF(!IsShowLU , true, false)}"> |
| | | <tr> |
| | | <td style="font-size:22px;"><apex:outputText value="{!IF(record.isAgencyOrCenter,record.AgencyAddressName,centreAddress)}"/></td> |
| | | <td rowspan="2"> |
| | | <img style="float: right; width: 55px; height: 55px;padding: 0px;margin-top: 0mm;" src="{!'/servlet/servlet.FileDownload?file=' + ApplyHeadShow.QRId__c}" /> |
| | | </td> |
| | | </tr> |
| | | <tr> |
| | | <td style="font-size:15px;"><c:PDFWbr targetStr="{!IF(record.AgencyOrCenterAddress=='BeiJingCenter','北京市朝阳区酒仙桥路10号恒通商务园B12C座西门1F 电话:010-59756006-1871',IF(record.AgencyOrCenterAddress=='ShangHaiCenter','上海市浦东新区唐镇创业路183号2幢1F 电话:021-60391318-8877',IF(record.AgencyOrCenterAddress=='GuangZhouCenter','广州市番禺区东环街番禺大道北537号番山创业中心3号楼1F 电话:020-39198888-8876',record.AgencyOrCenterAddress)))}"/></td> |
| | | </tr> |
| | | </apex:outputPanel> |
| | | <apex:outputPanel layout="none" rendered="{!IF(IsShowLU , true, false)}"> |
| | | <tr> |
| | | <td style="font-size:22px;height: 55px;line-height: 55px;"><apex:outputText value="{!centreAddress}"/> |
| | | </td> |
| | | <td> |
| | | <img style="float: right; width: 55px; height: 55px;padding: 0px;margin-top: 0mm;" src="{!'/servlet/servlet.FileDownload?file=' + ApplyHeadShow.QRId__c}" /> |
| | | </td> |
| | | </tr> |
| | | </apex:outputPanel> |
| | | </table> |
| | | <!-- 20201119 LJH OCSM_BP5-61 update end 主单是显示办事处和备品中心分来显示且内容不同 --> |
| | | <!-- margin-top: 15mm; --> |
| | | <table border="1" width="100%" style="border-collapse: collapse;"> |
| | | <tr> |
| | | <th style="box-sizing: border-box;text-align:center;font-size:24px;font-weight:900;" height="40">奥林巴斯备品发货清单 |
| | | <!-- <img style="float: right; width: 35px; height: 35px;padding: 0px;" src="{!'/servlet/servlet.FileDownload?file=' + ApplyHeadShow.QRId__c}" /> --> |
| | | <!-- <td align="right" valign="top"><apex:outputField value="{!ApplyHeadShow.QRImg__c}" /></td> --> |
| | | </th> |
| | | </tr> |
| | | <tr> |
| | | <td style="box-sizing: border-box;text-align:right;font-size:13px;" >备品管理中心申请单号:<apex:outputText value="{!ApplyHeadShow.Name}" /></td> <!-- {!RentalApplyName} 20201119 LJH OCSM_BP5-61 update--> |
| | | </tr> |
| | | <tr style="background-color:white;"> |
| | | <td style="box-sizing: border-box;text-align:right;font-size:13px;">本单附件第( {!pNcnt})页/共( {!pageCnt})页</td> |
| | | </tr> |
| | | <tr> |
| | | <th style="box-sizing: border-box;text-align:center;font-size:16px;"> |
| | | ※提示 |
| | | </th> |
| | | </tr> |
| | | <tr> |
| | | <td style="box-sizing: border-box;text-align:left;font-size:12.3px;">本《奥林巴斯备品发货清单》一式两份,由奥林巴斯备品借用申请人(备品安装人)和医疗机构借用方各执一份,作为出借和归还时双方进<br/>行清点确认凭证 |
| | | </td> |
| | | </tr> |
| | | </table> |
| | | <div class="pdf-page"> |
| | | <div class="title1"> </div> |
| | | <!-- 20201119 LJH OCSM_BP5-61 update start 主单是显示办事处和备品中心分来显示且内容不同 --> |
| | | <!-- <apex:outputText style="float:left;font-size:22px;margin-top: 15px;" value="{!centreAddress}"/> --> |
| | | <!-- height: 15mm; --> |
| | | <table border="0" width="100%" style="border-collapse: collapse;margin: 0;"> |
| | | <apex:outputPanel layout="none" rendered="{!IF(!IsShowLU , true, false)}"> |
| | | <tr> |
| | | |
| | | <td style="font-size:22px;"> |
| | | <!-- 20220413 ljh 抬头显示 update start --> |
| | | <!-- <apex:outputText value="{!IF(record.isAgencyOrCenter,record.AgencyAddressName,centreAddress)}" /> --> |
| | | <apex:outputText value="{!IF(isAgencyOrCenter,AgencyAddressName,centreAddress)}" /> |
| | | <!-- 20220413 ljh 抬头显示 update end --> |
| | | </td> |
| | | |
| | | <td rowspan="2"> |
| | | <img style="float: right; width: 55px; height: 55px;padding: 0px;margin-top: 0mm;" src="{!qrcode}" |
| | | /> |
| | | </td> |
| | | </tr> |
| | | <tr> |
| | | <td style="font-size:15px;"> |
| | | <!-- 20220413 ljh 抬头显示 update start --> |
| | | <!-- <c:PDFWbr targetStr="{!IF(record.AgencyOrCenterAddress=='BeiJingCenter','北京市朝阳区酒仙桥路10号恒通商务园B12C座西门1F 电话:010-59756006-1871',IF(record.AgencyOrCenterAddress=='ShangHaiCenter','上海市浦东新区唐镇创业路183号2幢1F 电话:021-60391318-8877',IF(record.AgencyOrCenterAddress=='GuangZhouCenter','广州市番禺区东环街番禺大道北537号番山创业中心3号楼1F 电话:020-39198888-8876',record.AgencyOrCenterAddress)))}" |
| | | /> --> |
| | | <c:PDFWbr targetStr="{!IF(AgencyOrCenterAddress=='BeiJingCenter','北京市朝阳区酒仙桥路10号恒通商务园B12C座西门1F 电话:010-59756006-1871',IF(AgencyOrCenterAddress=='ShangHaiCenter','上海市浦东新区金吉路778号3号楼1F 电话:021-60391318-8877',IF(AgencyOrCenterAddress=='GuangZhouCenter','广州市番禺区东环街番禺大道北537号番山创业中心3号楼1F 电话:020-39198888-8876',AgencyOrCenterAddress)))}" |
| | | /> |
| | | <!-- 20220413 ljh 抬头显示 update start --> |
| | | </td> |
| | | </tr> |
| | | </apex:outputPanel> |
| | | <apex:outputPanel layout="none" rendered="{!IF(IsShowLU , true, false)}"> |
| | | <tr> |
| | | <td style="font-size:22px;height: 55px;line-height: 55px;"> |
| | | <apex:outputText value="{!centreAddress}" /> |
| | | </td> |
| | | <td> |
| | | <img style="float: right; width: 55px; height: 55px;padding: 0px;margin-top: 0mm;" src="{!qrcode}" |
| | | /> |
| | | </td> |
| | | </tr> |
| | | </apex:outputPanel> |
| | | </table> |
| | | <!-- 20201119 LJH OCSM_BP5-61 update end 主单是显示办事处和备品中心分来显示且内容不同 --> |
| | | <!-- margin-top: 15mm; --> |
| | | <table border="1" width="100%" style="border-collapse: collapse;"> |
| | | <tr> |
| | | <th style="box-sizing: border-box;text-align:center;font-size:24px;font-weight:900;" height="40">奥林巴斯备品发货清单 |
| | | <!-- <img style="float: right; width: 35px; height: 35px;padding: 0px;" src="{!qrcode}" /> --> |
| | | <!-- <td align="right" valign="top"><apex:outputField value="{!ApplyHeadShow.QRImg__c}" /></td> --> |
| | | </th> |
| | | </tr> |
| | | <tr> |
| | | <td style="box-sizing: border-box;text-align:right;font-size:13px;">备品管理中心申请单号: |
| | | <apex:outputText value="{!ApplyHeadShow.Name}" /> |
| | | </td> |
| | | <!-- {!RentalApplyName} 20201119 LJH OCSM_BP5-61 update--> |
| | | </tr> |
| | | <tr style="background-color:white;"> |
| | | <td style="box-sizing: border-box;text-align:right;font-size:13px;">本单附件第( {!pNcnt})页/共( {!pageCnt})页</td> |
| | | </tr> |
| | | <tr> |
| | | <th style="box-sizing: border-box;text-align:center;font-size:16px;"> |
| | | ※提示 |
| | | </th> |
| | | </tr> |
| | | <tr> |
| | | <td style="box-sizing: border-box;text-align:left;font-size:12.3px;">本《奥林巴斯备品发货清单》一式两份,由奥林巴斯备品借用申请人(备品安装人)和医疗机构借用方各执一份,作为出借和归还时双方进 |
| | | <br/>行清点确认凭证 |
| | | </td> |
| | | </tr> |
| | | </table> |
| | | |
| | | <table border="1" width="100%" style="border-collapse: collapse;"> |
| | | <colgroup> |
| | | <col width="4%" /> |
| | | <col width="8%" /> |
| | | <col width="20%" /> |
| | | <col width="11%" /> |
| | | <col width="29%" /> |
| | | <col width="9%" /> |
| | | <col width="9%" /> |
| | | <col width="7%" /> |
| | | </colgroup> |
| | | <tr> |
| | | <td style="box-sizing: border-box;text-align:center;font-size:13px;height: 16px;" colspan="2">申请人</td> |
| | | <td style="box-sizing: border-box;text-align:left;font-size: 13px"> |
| | | <apex:outputText value="{!ApplyHeadShow.Person_In_Charge__r.name}" /> |
| | | </td> |
| | | <td style="box-sizing: border-box;text-align:center;font-size:13px;border-left: solid 1px;" rowspan="2">医疗机构</td> |
| | | <!-- 20220124 ljh SFDC-C4U3PH update colspan="4" --> |
| | | <td style="box-sizing: border-box;text-align:left;font-size: 13px;" colspan="5" rowspan="2"> |
| | | <apex:outputText value="{!HospitalName}" /> |
| | | </td> |
| | | </tr> |
| | | <tr> |
| | | <td style="box-sizing: border-box;text-align:center;font-size:13px;" colspan="2">使用目的</td> |
| | | <td style="box-sizing: border-box;text-align:left;font-size: 13px;border-right: solid 1px"> |
| | | <apex:outputText value="{!ApplyHeadShow.Demo_purpose1__c}" /> |
| | | </td> |
| | | </tr> |
| | | <tr> |
| | | <td style="box-sizing: border-box;text-align:center;font-size:13px;height: 16px;" colspan="2">收件者姓名</td> |
| | | <td style="box-sizing: border-box;text-align:left;font-size: 13px"> |
| | | <apex:outputText value="{!ApplyHeadShow.Loaner_received_staff__c}" /> |
| | | </td> |
| | | <td style="box-sizing: border-box;text-align:center;font-size:13px;border-left: solid 1px;" rowspan="2">发货地址</td> |
| | | <!-- 20220124 ljh SFDC-C4U3PH update colspan="4" --> |
| | | <td style="box-sizing: border-box;text-align:left;font-size: 13px;" colspan="5" rowspan="2"> |
| | | <apex:outputText styleClass="address" value="{!if(isblank(ApplyHeadShow.Shippment_adress_detail__c), ApplyHeadShow.direct_shippment_address__c, ApplyHeadShow.Shippment_adress_detail__c)}" /> |
| | | </td> |
| | | </tr> |
| | | <tr> |
| | | <td style="box-sizing: border-box;text-align:center;font-size:13px;" colspan="2">收件者电话</td> |
| | | <td style="box-sizing: border-box;text-align:left;font-size: 13px;border-right: solid 1px"> |
| | | <apex:outputText value="{!ApplyHeadShow.Loaner_received_staff_phone__c}" /> |
| | | </td> |
| | | </tr> |
| | | <tr> |
| | | <!-- 20220124 ljh SFDC-C4U3PH update colspan="8" --> |
| | | <th style="text-align:center;font-size:13px;height: 7pt;" colspan="9" >借用备品发货清单</th> |
| | | </tr> |
| | | <tr> |
| | | <td rowspan="2" style="box-sizing: border-box;text-align:center;font-size: 11px;">序号</td> |
| | | <td rowspan="2" style="box-sizing: border-box;text-align:center;font-size: 11px;">管理编号</td> |
| | | <!-- 20220124 ljh SFDC-C4U3PH update colspan="6" --> |
| | | <td colspan="7" style="box-sizing: border-box;text-align:center;font-size: 11px;">明细</td> |
| | | </tr> |
| | | <tr> |
| | | <!-- <td style="text-align:center;">序号</td> |
| | | <table border="1" width="100%" style="border-collapse: collapse;"> |
| | | <colgroup> |
| | | <col width="4%" /> |
| | | <col width="8%" /> |
| | | <col width="20%" /> |
| | | <col width="11%" /> |
| | | <col width="29%" /> |
| | | <col width="9%" /> |
| | | <col width="9%" /> |
| | | <col width="7%" /> |
| | | </colgroup> |
| | | <tr> |
| | | <td style="box-sizing: border-box;text-align:center;font-size:13px;height: 16px;" colspan="2">申请人</td> |
| | | <td style="box-sizing: border-box;text-align:left;font-size: 13px"> |
| | | <apex:outputText value="{!ApplyHeadShow.Person_In_Charge__r.name}" /> |
| | | </td> |
| | | <td style="box-sizing: border-box;text-align:center;font-size:13px;border-left: solid 1px;" rowspan="2">医疗机构</td> |
| | | <!-- 20220124 ljh SFDC-C4U3PH update colspan="4" --> |
| | | <td style="box-sizing: border-box;text-align:left;font-size: 13px;" colspan="5" rowspan="2"> |
| | | <apex:outputText value="{!HospitalName}" /> |
| | | </td> |
| | | </tr> |
| | | <tr> |
| | | <td style="box-sizing: border-box;text-align:center;font-size:13px;" colspan="2">使用目的</td> |
| | | <td style="box-sizing: border-box;text-align:left;font-size: 13px;border-right: solid 1px"> |
| | | <apex:outputText value="{!ApplyHeadShow.Demo_purpose1__c}" /> |
| | | </td> |
| | | </tr> |
| | | <tr> |
| | | <td style="box-sizing: border-box;text-align:center;font-size:13px;height: 16px;" colspan="2">收件者姓名</td> |
| | | <td style="box-sizing: border-box;text-align:left;font-size: 13px"> |
| | | <apex:outputText value="{!ApplyHeadShow.Loaner_received_staff__c}" /> |
| | | </td> |
| | | <td style="box-sizing: border-box;text-align:center;font-size:13px;border-left: solid 1px;" rowspan="2">发货地址</td> |
| | | <!-- 20220124 ljh SFDC-C4U3PH update colspan="4" --> |
| | | <td style="box-sizing: border-box;text-align:left;font-size: 13px;" colspan="5" rowspan="2"> |
| | | <apex:outputText styleClass="address" value="{!if(isblank(ApplyHeadShow.Shippment_adress_detail__c), ApplyHeadShow.direct_shippment_address__c, ApplyHeadShow.Shippment_adress_detail__c)}" |
| | | /> |
| | | </td> |
| | | </tr> |
| | | <tr> |
| | | <td style="box-sizing: border-box;text-align:center;font-size:13px;" colspan="2">收件者电话</td> |
| | | <td style="box-sizing: border-box;text-align:left;font-size: 13px;border-right: solid 1px"> |
| | | <apex:outputText value="{!ApplyHeadShow.Loaner_received_staff_phone__c}" /> |
| | | </td> |
| | | </tr> |
| | | <tr> |
| | | <!-- 20220124 ljh SFDC-C4U3PH update colspan="8" --> |
| | | <th style="text-align:center;font-size:13px;height: 7pt;" colspan="9">借用备品发货清单</th> |
| | | </tr> |
| | | <tr> |
| | | <td rowspan="2" style="box-sizing: border-box;text-align:center;font-size: 11px;">序号</td> |
| | | <td rowspan="2" style="box-sizing: border-box;text-align:center;font-size: 11px;">管理编号</td> |
| | | <!-- 20220124 ljh SFDC-C4U3PH update colspan="6" --> |
| | | <td colspan="7" style="box-sizing: border-box;text-align:center;font-size: 11px;">明细</td> |
| | | </tr> |
| | | <tr> |
| | | <!-- <td style="text-align:center;">序号</td> |
| | | <td style="text-align:center;">备品set型号</td> |
| | | <td style="text-align:center;">管理编号</td> |
| | | <td style="text-align:center;">产品型号</td> |
| | | <td style="text-align:center;">机身号</td> |
| | | <td style="text-align:center;">附属品明细</td> --> |
| | | <td style="box-sizing: border-box;text-align:center;font-size: 11px;">明细型号</td> |
| | | <td style="box-sizing: border-box;text-align:center;font-size: 11px;" colspan="2">中文名称</td> |
| | | <td style="box-sizing: border-box;text-align:center;font-size: 11px;">机身号</td> |
| | | <td style="text-align:center;font-size: 11px;">固定资产号</td> |
| | | <td style="box-sizing: border-box;text-align:center;font-size: 11px;">货位号</td> |
| | | <!-- 20220124 ljh SFDC-C4U3PH add start --> |
| | | <td style="box-sizing: border-box;text-align:center;font-size: 11px;">备注</td> |
| | | <!-- 20220124 ljh SFDC-C4U3PH add end --> |
| | | <!-- <td style="text-align:center;">二维码</td> --> |
| | | </tr> |
| | | <apex:repeat value="{!record.lineList}" var="line"> |
| | | <tr> |
| | | <td style="box-sizing: border-box;text-align:center;font-size: 10px;height:30px;padding: 0px;"><c:PDFWbr targetStr="{!line.index}" /></td> |
| | | <td style="box-sizing: border-box;text-align:left;font-size: 10px;padding: 0px;"><c:PDFWbr targetStr="{!line.dManagementnumber}" /></td> |
| | | <td style="box-sizing: border-box;text-align:left;font-size: 10px;padding: 0px;"><c:PDFWbr targetStr="{!line.dModelNo}" /></td> |
| | | <td style="box-sizing: border-box;text-align:left;font-size: 10px;padding: 0px;" colspan="2"><c:PDFWbr targetStr="{!line.dChinaName}" /></td> |
| | | <td style="box-sizing: border-box;text-align:left;font-size: 10px;padding: 0px;"><c:PDFWbr targetStr="{!line.dSerialNumber}" /></td> |
| | | <td style="box-sizing: border-box;text-align:left;font-size: 10px;padding: 0px;"><c:PDFWbr targetStr="{!line.dLoaner_asset_no}" /></td> |
| | | <td style="box-sizing: border-box;text-align:left;font-size: 10px;padding: 0px;"><c:PDFWbr targetStr="{!line.wh_location}" /></td> |
| | | <td style="box-sizing: border-box;text-align:center;font-size: 11px;">明细型号</td> |
| | | <td style="box-sizing: border-box;text-align:center;font-size: 11px;" colspan="2">中文名称</td> |
| | | <td style="box-sizing: border-box;text-align:center;font-size: 11px;">机身号</td> |
| | | <td style="text-align:center;font-size: 11px;">固定资产号</td> |
| | | <td style="box-sizing: border-box;text-align:center;font-size: 11px;">货位号</td> |
| | | <!-- 20220124 ljh SFDC-C4U3PH add start --> |
| | | <td style="box-sizing: border-box;text-align:left;font-size: 10px;padding: 0px;"><c:PDFWbr targetStr="" /></td> |
| | | <!-- {!line.Received_ng_detail} --> |
| | | <td style="box-sizing: border-box;text-align:center;font-size: 11px;min-width:30px">备注</td> |
| | | <!-- 20220124 ljh SFDC-C4U3PH add end --> |
| | | <!-- <td style="text-align:center;font-size: 10px"><c:PDFWbr targetStr="{!line.dQRCode}" /></td> --> |
| | | <!-- <td style="text-align:center;">二维码</td> --> |
| | | </tr> |
| | | <apex:repeat value="{!record.lineList}" var="line"> |
| | | <tr> |
| | | <td style="box-sizing: border-box;text-align:center;font-size: 10px;height:30px;padding: 0px;"> |
| | | <c:PDFWbr targetStr="{!line.index}" /> |
| | | </td> |
| | | <td style="box-sizing: border-box;text-align:left;font-size: 10px;padding: 0px;"> |
| | | <c:PDFWbr targetStr="{!line.dManagementnumber}" /> |
| | | </td> |
| | | <td style="box-sizing: border-box;text-align:left;font-size: 10px;padding: 0px;"> |
| | | <c:PDFWbr targetStr="{!line.dModelNo}" /> |
| | | </td> |
| | | <td style="box-sizing: border-box;text-align:left;font-size: 10px;padding: 0px;" colspan="2"> |
| | | <c:PDFWbr targetStr="{!line.dChinaName}" /> |
| | | </td> |
| | | <td style="box-sizing: border-box;text-align:left;font-size: 10px;padding: 0px;"> |
| | | <c:PDFWbr targetStr="{!line.dSerialNumber}" /> |
| | | </td> |
| | | <td style="box-sizing: border-box;text-align:left;font-size: 10px;padding: 0px;"> |
| | | <c:PDFWbr targetStr="{!line.dLoaner_asset_no}" /> |
| | | </td> |
| | | <td style="box-sizing: border-box;text-align:left;font-size: 10px;padding: 0px;"> |
| | | <c:PDFWbr targetStr="{!line.wh_location}" /> |
| | | </td> |
| | | <!-- 20220124 ljh SFDC-C4U3PH add start --> |
| | | <td style="box-sizing: border-box;text-align:left;font-size: 10px;padding: 0px;"> |
| | | <c:PDFWbr targetStr="" /> |
| | | </td> |
| | | <!-- {!line.Received_ng_detail} --> |
| | | <!-- 20220124 ljh SFDC-C4U3PH add end --> |
| | | <!-- <td style="text-align:center;font-size: 10px"><c:PDFWbr targetStr="{!line.dQRCode}" /></td> --> |
| | | |
| | | <!-- <td style="text-align:left;font-size: 13px"><apex:outputText value="{!IF(pcnt < AllSum +1,pcnt,'')}" /></td> --> |
| | | <!-- <td style="text-align:left;font-size: 13px"><apex:outputText value="{!line.index}" /></td> |
| | | <!-- <td style="text-align:left;font-size: 13px"><apex:outputText value="{!IF(pcnt < AllSum +1,pcnt,'')}" /></td> --> |
| | | <!-- <td style="text-align:left;font-size: 13px"><apex:outputText value="{!line.index}" /></td> |
| | | <td style="text-align:left;font-size: 13px"><apex:outputText value="{!line.setName}" /></td> |
| | | <td style="text-align:left;font-size: 13px"><apex:outputText value="{!line.name1}" /></td> |
| | | <td style="text-align:left;font-size: 13px"><apex:outputText value="{!line.LoanerCode}" /></td> |
| | | <td style="text-align:left;font-size: 13px"><apex:outputText value="{!line.serialNumber1}" /></td> |
| | | <td style="text-align:left;font-size: 13px"><apex:outputText value="{!line.AssetModelNo}" /></td> --> |
| | | </tr> |
| | | <apex:variable value="{!pcnt + 1}" var="pcnt" /> |
| | | </apex:repeat> |
| | | </table> |
| | | <!-- 20211209 ljh SFDC-C923SR 条形码 --> |
| | | <img style="float:left;position:absolute;z-index: 99;" src="{!barcode}" /> |
| | | </tr> |
| | | <apex:variable value="{!pcnt + 1}" var="pcnt" /> |
| | | </apex:repeat> |
| | | </table> |
| | | <!-- 20211209 ljh SFDC-C923SR 条形码 --> |
| | | <img style="float:left;position:absolute;z-index: 99;" src="{!barcode}" /> |
| | | <div style="height:30px"></div> |
| | | <!-- 20211209 ljh SFDC-C923SR 条形码 --> |
| | | <div style="{position:absolute;width:100%;height:20px"> </div> |
| | | <apex:outputPanel rendered="{!pNcnt < pageCnt}" layout="none"> |
| | | <!-- <div style="{position:absolute;width:100%;height:30px"> </div> |
| | | <div style="{position:absolute;width:100%;height:30px"> </div>--> |
| | | <div style="page-break-after: always;"/> |
| | | </apex:outputPanel> |
| | | <apex:variable value="{!pNcnt+1}" var="pNcnt" /> |
| | | <!-- 20211209 ljh SFDC-C923SR 条形码 --> |
| | | <div style="{position:absolute;width:100%;height:20px"> </div> |
| | | <apex:outputPanel rendered="{!pNcnt < pageCnt}" layout="none"> |
| | | <!-- <div style="{position:absolute;width:100%;height:30px"> </div> |
| | | <div style="{position:absolute;width:100%;height:30px"> </div>--> |
| | | <div style="page-break-after: always;" /> |
| | | </apex:outputPanel> |
| | | <apex:variable value="{!pNcnt+1}" var="pNcnt" /> |
| | | </div> |
| | | </apex:repeat> |
| | | |
| | | </apex:outputPanel> |
| | | </div> |
| | | </body> |
| | | <script> |
| | | console.log('----start----') |
| | | console.log('----{!ApplyHeadShow.AWS_Data_Id__c}----') |
| | | AWSService.sfSessionId = '{!GETSESSIONID()}'; |
| | | //sforce.connection.sessionId = '{!GETSESSIONID()}'; |
| | | var staticResources = JSON.parse('{!staticResource}'); |
| | | //blockme(); |
| | | document.body.onload = function(){ |
| | | console.log('document.body.onload') |
| | | if ({!addFlag} || !'{!ApplyHeadShow.Shippment_adress_detail__c}') { |
| | | AWSService.query(staticResources.queryUrl, '{!ApplyHeadShow.AWS_Data_Id__c}', function(data){ |
| | | console.log('data----------') |
| | | console.log(data); |
| | | //unblockUI(); |
| | | if ({!addFlag}) { |
| | | jQuery(".Shippmentadress").html(data.object.directShippmentAddress); |
| | | } |
| | | //document.getElementById("Caller_phone__c").innerHTML = data.object.callerPhone; |
| | | if (!'{!ApplyHeadShow.Shippment_adress_detail__c}') { |
| | | jQuery(".address").html(data.object.directShippmentAddress); |
| | | //document.getElementById("allPage:address").innerHTML = data.object.directShippmentAddress; |
| | | } |
| | | jsPdfDownload(); |
| | | }, staticResources.token); |
| | | }else{ |
| | | jsPdfDownload(); |
| | | } |
| | | </apex:outputPanel> |
| | | </div> |
| | | </body> |
| | | <script> |
| | | console.log('----start----') |
| | | console.log('----{!ApplyHeadShow.AWS_Data_Id__c}----') |
| | | AWSService.sfSessionId = '{!GETSESSIONID()}'; |
| | | //sforce.connection.sessionId = '{!GETSESSIONID()}'; |
| | | var staticResources = JSON.parse('{!staticResource}'); |
| | | //blockme(); |
| | | document.body.onload = function () { |
| | | console.log('document.body.onload') |
| | | if ({!addFlag |
| | | } || !'{!ApplyHeadShow.Shippment_adress_detail__c}') { |
| | | AWSService.query(staticResources.queryUrl, '{!ApplyHeadShow.AWS_Data_Id__c}', function (data) { |
| | | console.log('data----------') |
| | | console.log(data); |
| | | //unblockUI(); |
| | | if ({!addFlag |
| | | }) { |
| | | jQuery(".Shippmentadress").html(data.object.directShippmentAddress); |
| | | } |
| | | //document.getElementById("Caller_phone__c").innerHTML = data.object.callerPhone; |
| | | if (!'{!ApplyHeadShow.Shippment_adress_detail__c}') { |
| | | jQuery(".address").html(data.object.directShippmentAddress); |
| | | //document.getElementById("allPage:address").innerHTML = data.object.directShippmentAddress; |
| | | } |
| | | jsPdfDownload(); |
| | | }, staticResources.token); |
| | | }else { |
| | | jsPdfDownload(); |
| | | } |
| | | |
| | | |
| | | } |
| | | function jsPdfDownload(){ |
| | | let pdfName = "测试"; |
| | | let id = "pdf-wrapper"; |
| | | var target = document.getElementById(id); |
| | | target.style.background = "#FFFFFF"; |
| | | if(pdfName==''||pdfName==undefined) pdfName= getNowFormatDate(); |
| | | |
| | | html2canvas(target, { |
| | | function jsPdfDownload() { |
| | | |
| | | let jtargets = jQuery("#pdf-wrapper .pdf-page"); |
| | | let j_arr = new Array(jtargets.length + 1).join(0).split('').map(function () { return false }); |
| | | let landscape = false; |
| | | let pw = 595.28; |
| | | let ph = 841.89; |
| | | const marginw = 40; |
| | | |
| | | let orientation = ''; |
| | | if (landscape) { |
| | | pw += ph; ph = pw - ph; pw = pw - ph; |
| | | orientation = 'l'; |
| | | } |
| | | var pdf = new jsPDF(orientation, 'pt', 'a4');// 第一个参数填字母l,注意不是数字1,为横向pdf |
| | | jtargets.each(function (i, e) { |
| | | e.style.background = "#FFFFFF"; |
| | | }) |
| | | |
| | | let rei = 0; |
| | | let recursion = null; |
| | | recursion = function (i) { |
| | | if (i >= jtargets.length) { |
| | | Fun(pdf); |
| | | return; |
| | | } |
| | | e = jtargets[i]; |
| | | html2canvas(e, { |
| | | scale: 2, |
| | | onrendered:function(canvas) { |
| | | onrendered: function (canvas) { |
| | | |
| | | let canvas_max_page_num = 1; |
| | | let canvas_current_page_num = 0; |
| | | var contentWidth = canvas.width; |
| | | var contentHeight = canvas.height; |
| | | |
| | | |
| | | //一页pdf显示html页面生成的canvas高度; |
| | | var pageHeight = contentWidth / 592.28 * 841.89; |
| | | var pageHeight = contentWidth / pw * ph; |
| | | //未生成pdf的html页面高度 |
| | | var leftHeight = contentHeight; |
| | | //页面偏移 |
| | | var position = 0; |
| | | //a4纸的尺寸[595.28,841.89],html页面生成的canvas在pdf中图片的宽高 |
| | | var imgWidth = 565.28;//595.28//左右边距20 |
| | | var imgHeight = 605.28/contentWidth * contentHeight;//左右边距20 |
| | | |
| | | var imgWidth = pw - 2 * marginw;//595.28//左右边距20 |
| | | var imgHeight = imgWidth / contentWidth * contentHeight;//左右边距20 |
| | | |
| | | var pageData = canvas.toDataURL('image/jpeg', 1.0); |
| | | |
| | | var pdf = new jsPDF('', 'pt', 'a4'); |
| | | |
| | | |
| | | |
| | | if (i) { |
| | | pdf.addPage(); |
| | | } |
| | | //有两个高度需要区分,一个是html页面的实际高度,和生成pdf的页面高度(841.89) |
| | | //当内容未超过pdf一页显示的范围,无需分页 |
| | | if (leftHeight < pageHeight) { |
| | | pdf.addImage(pageData, 'JPEG', 15, 0, imgWidth, imgHeight );//左右边距7.5 |
| | | pdf.addImage(pageData, 'JPEG', marginw, 0, imgWidth, imgHeight);//左右边距20 |
| | | } else { |
| | | while(leftHeight > 0) { |
| | | pdf.addImage(pageData, 'JPEG', 15, position, imgWidth, imgHeight)//左右边距7.5 |
| | | while (leftHeight > 0) { |
| | | |
| | | |
| | | canvas_current_page_num++; |
| | | pdf.addImage(pageData, 'JPEG', marginw, position, imgWidth, imgHeight)//左右边距20 |
| | | leftHeight -= pageHeight; |
| | | position -= 841.89; |
| | | position -= ph; |
| | | |
| | | if (canvas_max_page_num > 0 && canvas_current_page_num >= canvas_max_page_num) { |
| | | break; |
| | | } |
| | | |
| | | //避免添加空白页 |
| | | if(leftHeight > 0) { |
| | | if (leftHeight > 0) { |
| | | pdf.addPage(); |
| | | } |
| | | } |
| | | } |
| | | Fun(pdf); |
| | | |
| | | recursion(i + 1); |
| | | } |
| | | }) |
| | | } |
| | | var staticResourceFile = JSON.parse('{!staticResourceFile}'); |
| | | function Fun(pdf){ |
| | | var form = jQuery("<form method='post'></form>"); |
| | | jQuery(document.body).append(form); |
| | | let href = window.location.href |
| | | let arr = href.split('/') |
| | | form.attr({"action":staticResourceFile.viewUnifiedContactUrl+"?from="+encodeURIComponent(href)+"&fileName="+encodeURIComponent(arr[arr.length-1].split('?')[0])}); |
| | | // form.attr({"action":"http://127.0.0.1:8080/a/d?from="+encodeURIComponent(window.location.href)}); |
| | | let input = jQuery("<input type='hidden'/>"); |
| | | input.attr({"name":"base64Str"}); |
| | | input.val(pdf.output('datauristring').substr(28)); |
| | | form.append(input); |
| | | form.submit(); |
| | | } |
| | | </script> |
| | | }; |
| | | recursion(rei); |
| | | |
| | | |
| | | |
| | | } |
| | | var staticResourceFile = JSON.parse('{!staticResourceFile}'); |
| | | function Fun(pdf) { |
| | | |
| | | var form = jQuery("<form method='post'></form>"); |
| | | jQuery(document.body).append(form); |
| | | let href = window.location.href |
| | | let arr = href.split('/') |
| | | form.attr({ "action": staticResourceFile.viewUnifiedContactUrl + "?from=" + encodeURIComponent(href) + "&fileName=" + encodeURIComponent(arr[arr.length - 1].split('?')[0]) }); |
| | | // form.attr({"action":"http://127.0.0.1:8080/a/d?from="+encodeURIComponent(window.location.href)}); |
| | | let input = jQuery("<input type='hidden'/>"); |
| | | input.attr({ "name": "base64Str" }); |
| | | input.val(pdf.output('datauristring').substr(28)); |
| | | form.append(input); |
| | | form.submit(); |
| | | |
| | | // jQuery("body > *").each(function(){ |
| | | // jQuery(this).css('display','none'); |
| | | // }) |
| | | // jQuery("body").append('<embed style="position:absolute; left: 0; top: 0;" width="100%" height="100%" src="'+pdf.output('datauristring')+'" type="application/pdf"/>') |
| | | |
| | | } |
| | | </script> |
| | | |
| | | </html> |
| | | </apex:page> |
| | |
| | | var staticResourceFile = JSON.parse('{!staticResourceFile}'); |
| | | function Fun(pdf){ |
| | | |
| | | var form = jQuery("<form method='post'></form>"); |
| | | jQuery(document.body).append(form); |
| | | let href = window.location.href |
| | | let arr = href.split('/') |
| | | form.attr({"action":staticResourceFile.viewUnifiedContactUrl+"?from="+encodeURIComponent(href)+"&fileName="+encodeURIComponent(arr[arr.length-1].split('?')[0])}); |
| | | // form.attr({"action":"http://127.0.0.1:8080/a/d?from="+encodeURIComponent(window.location.href)}); |
| | | let input = jQuery("<input type='hidden'/>"); |
| | | input.attr({"name":"base64Str"}); |
| | | input.val(pdf.output('datauristring').substr(28)); |
| | | form.append(input); |
| | | form.submit(); |
| | | // var form = jQuery("<form method='post'></form>"); |
| | | // jQuery(document.body).append(form); |
| | | // let href = window.location.href |
| | | // let arr = href.split('/') |
| | | // form.attr({"action":staticResourceFile.viewUnifiedContactUrl+"?from="+encodeURIComponent(href)+"&fileName="+encodeURIComponent(arr[arr.length-1].split('?')[0])}); |
| | | // // form.attr({"action":"http://127.0.0.1:8080/a/d?from="+encodeURIComponent(window.location.href)}); |
| | | // let input = jQuery("<input type='hidden'/>"); |
| | | // input.attr({"name":"base64Str"}); |
| | | // input.val(pdf.output('datauristring').substr(28)); |
| | | // form.append(input); |
| | | // form.submit(); |
| | | |
| | | // jQuery("body > *").each(function(){ |
| | | // jQuery(this).css('display','none'); |
| | | // }) |
| | | // jQuery("body").append('<embed style="position:absolute; left: 0; top: 0;" width="100%" height="100%" src="'+pdf.output('datauristring')+'" type="application/pdf"/>') |
| | | jQuery("body > *").each(function(){ |
| | | jQuery(this).css('display','none'); |
| | | }) |
| | | jQuery("body").append('<embed style="position:absolute; left: 0; top: 0;" width="100%" height="100%" src="'+pdf.output('datauristring')+'" type="application/pdf"/>') |
| | | |
| | | } |
| | | |
| | |
| | | padding: 5px; |
| | | } |
| | | .tdStyle-left { |
| | | width: 16%; |
| | | /*20220419 ljh HWAG-CAV5WX update */ |
| | | /*width: 16%;*/ |
| | | width: 11%; |
| | | padding: 5px; |
| | | text-align: left; |
| | | } |
| | | .tdStyle-right { |
| | | width: 16%; |
| | | /*20220419 ljh HWAG-CAV5WX update */ |
| | | /*width: 16%;*/ |
| | | width: 22%; |
| | | padding: 5px; |
| | | text-align: right; |
| | | } |
| | |
| | | </tr> |
| | | <!-- 副CL4 高级总监--> |
| | | <tr> |
| | | <td class="topb2 leftb2 rightb2">副CL4 高级总监:</td> |
| | | <!-- 20220414 ljh 副CL4 高级总监->CL4 高级总监 --> |
| | | <td class="topb2 leftb2 rightb2">CL4 高级总监:</td> |
| | | </tr> |
| | | <tr> |
| | | <td class="leftb2 rightb2"> |
| | |
| | | </td> |
| | | </tr> |
| | | <tr> |
| | | <td class="topb leftb2 rightb2">副CL4 高级总监: </td> |
| | | <!-- 20220414 ljh 副CL4 高级总监->CL4 高级总监 --> |
| | | <td class="topb leftb2 rightb2">CL4 高级总监: </td> |
| | | </tr> |
| | | <tr> |
| | | <td class="leftb2 rightb2"> |
| | |
| | | <!-- |
| | | @description : |
| | | @author : ChangeMeIn@UserSettingsUnder.SFDoc |
| | | @group : |
| | | @last modified on : 03-23-2022 |
| | | @last modified by : ChangeMeIn@UserSettingsUnder.SFDoc |
| | | --> |
| | | <apex:page standardController="ASEActivity__c" extensions="NewAndEditASEActivityController" id="page"> |
| | | <apex:includeScript value="{! URLFOR($Resource.AWSService, 'AWSService.js') }" /> |
| | | <script src="../../soap/ajax/53.0/connection.js" type="text/javascript"></script> |
| | |
| | | |
| | | //payloadJson.AWS_Data_Id__c = r.object[0].dataId; |
| | | payloadJson.AWS_Data_Id__c = '{!AWSDataId}'; |
| | | if (isNewMode) { |
| | | if (isNewMode || {!isCloneMode}) { |
| | | payloadJson.AWS_Data_Id__c = r.object[0].dataId; |
| | | delete payloadJson.OwnerId; |
| | | } else { |
| | | payloadJson.AWS_Data_Id__c = '{!AWSDataId}'; |
| | | } |
| | | if('{!rtTypeId}'){ |
| | | payloadJson.RecordTypeId = '{!rtTypeId}';//Add by zhj for Record Type Issue 20220421 |
| | | } |
| | | return payloadJson; |
| | | }, |
| | |
| | | |
| | | function ProcessPI(sobjJson, payloadForNewPI) { |
| | | blockme(); |
| | | if ({!isNewMode}) { |
| | | if ({!isNewMode} || {!isCloneMode}) { |
| | | NewPIToAWS(sobjJson, payloadForNewPI) |
| | | }else { |
| | | UpdatePIToAWS(sobjJson, payloadForNewPI) |
| | |
| | | function validateFieldValueFormate() { |
| | | let error_msg = ''; |
| | | // let textEmail = "[data-id='Email']"; |
| | | let textPhone = "[data-id='CustomerTel__c']"; |
| | | //let textPhone = "[data-id='CustomerTel__c']"; |
| | | // //Email |
| | | // let email = document.querySelector(textEmail); |
| | | // if(email && !/^[\w-]{3,12}@[\da-zA-Z]{2,16}\.[a-zA-Z]+$/.test(email.value)){ |
| | | // error_msg += ';邮件格式错误'; |
| | | // } |
| | | let phone = document.querySelector(textPhone); |
| | | // let phone = document.querySelector(textPhone); |
| | | |
| | | if(phone ){ |
| | | if(phone.value){ |
| | | if(!/^1[3|5|8|7][0-9]\d{4,8}$/.test(phone.value)){ |
| | | error_msg += ';电话号码错误'; |
| | | } |
| | | }else{ |
| | | if(phone.previousSibling && phone.previousSibling.className.indexOf('requiredBlock')>-1){ |
| | | error_msg += ';电话号码错误'; |
| | | } |
| | | } |
| | | } |
| | | // if(phone ){ |
| | | // if(phone.value){ |
| | | // if(!/^1[3|5|8|7][0-9]\d{4,8}$/.test(phone.value)){ |
| | | // error_msg += ';电话号码错误'; |
| | | // } |
| | | // }else{ |
| | | // if(phone.previousSibling && phone.previousSibling.className.indexOf('requiredBlock')>-1){ |
| | | // error_msg += ';电话号码错误'; |
| | | // } |
| | | // } |
| | | // } |
| | | |
| | | let es = document.getElementsByTagName('select') |
| | | for(let ei in es){ |
| | |
| | | } else { |
| | | result[field_api_name] = ele.value; |
| | | } |
| | | } |
| | | if(document.getElementById(api_id_map['Purpose_Type__c'])){ |
| | | result['Purpose_Type__c'] = document.getElementById(api_id_map['Purpose_Type__c']).value!='_\x01_'?document.getElementById(api_id_map['Purpose_Type__c']).value:''; |
| | | } |
| | | return result; |
| | | } |
| | |
| | | <div class="ptBody"> |
| | | <div class="content"> |
| | | <img src="/img/s.gif" alt="{! SobjectLabel}" class="pageTitleIcon" title="{! SobjectLabel}" /> |
| | | <h1 class="pageType">{! SobjectLabel}<apex:outputText rendered="{!isNewMode}">{!$Label.New}</apex:outputText><apex:outputText rendered="{!not(isNewMode)}">{!$Label.Edit}</apex:outputText> |
| | | <h1 class="pageType">{! SobjectLabel}<apex:outputText rendered="{!isNewMode || isCloneMode}">{!$Label.New}</apex:outputText><apex:outputText rendered="{!not(isNewMode || isCloneMode)}">{!$Label.Edit}</apex:outputText> |
| | | <span class="titleSeparatingColon">:</span> |
| | | </h1> |
| | | <h2 class="pageDescription"> <apex:outputText rendered="{!isNewMode}">{!$Label.New}</apex:outputText><apex:outputText rendered="{!not(isNewMode)}">{!$Label.Edit}</apex:outputText>{! SobjectLabel}</h2> |
| | | <h2 class="pageDescription"> <apex:outputText rendered="{!isNewMode || isCloneMode}">{!$Label.New}</apex:outputText><apex:outputText rendered="{!not(isNewMode || isCloneMode)}">{!$Label.Edit}</apex:outputText>{! SobjectLabel}</h2> |
| | | <div class="blank"> </div> |
| | | </div> |
| | | <div class="links"> |
| | |
| | | <img src="/img/s.gif" alt="" class="minWidth" title="" width="1" height="1" /> |
| | | <h2 class="mainTitle">{! SobjectLabel}<apex:outputText rendered="{!isNewMode}">{!$Label.New}</apex:outputText><apex:outputText rendered="{!not(isNewMode)}">{!$Label.Edit}</apex:outputText></h2> |
| | | </td> |
| | | <td class="pbButton" id="topButtonRow"> |
| | | <td class="pbButton" id="topButtonRow" style="pointer-events: none; opacity: 0.4;"> |
| | | <input class="btn" type="Button" value="{!$Label.Save}" onclick="saveSobjectProcess()" /> |
| | | <input class="btn" type="Button" value="{!$Label.SaveAndNew}" onclick="saveSobjectProcess(1)" /> |
| | | <apex:commandButton action="{!cancel}" value="{!$Label.Cancel}" /> |
| | |
| | | |
| | | <!--Each section has layoutFields, let's iterate them as well--> |
| | | <apex:repeat value="{!layoutSection.layoutFields}" var="layoutField"> |
| | | <apex:inputField styleClass="{!ApiPrefix} {!ApiPrefix}_{!layoutField.fieldAPI}" html-data-id="{!layoutField.fieldAPI}" value="{!ASEActivity__c[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)}" |
| | | <apex:inputField styleClass="PIBackApi PIBackApi_{!layoutField.fieldAPI}" html-data-id="{!layoutField.fieldAPI}" value="{!ASEActivity__c[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)&&isNewMode}" |
| | | required="{!layoutField.isRequired}" /> |
| | | <apex:inputField styleClass="PIBackApi PIBackApi_{!layoutField.fieldAPI}" html-data-id="{!layoutField.fieldAPI}" value="{!ASEActivity__c[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)&¬(isNewMode)&&layoutField.fieldAPI!='RecordTypeId'}" |
| | | required="{!layoutField.isRequired}" /> |
| | | <apex:outputField styleClass="PIBackApi PIBackApi_{!layoutField.fieldAPI}" html-data-id="{!layoutField.fieldAPI}" value="{!ASEActivity__c[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)&¬(isNewMode)&&layoutField.fieldAPI=='RecordTypeId'}" |
| | | /> |
| | | <apex:pageblocksectionitem rendered="{!layoutField.isPlaceHolder}"> |
| | | </apex:pageblocksectionitem> |
| | | </apex:repeat> |
| | |
| | | </apex:pageBlockSection> |
| | | </apex:repeat> |
| | | <script> |
| | | var init_nodes = document.getElementsByClassName("PIBackApi"); |
| | | var api_id_map={}; |
| | | for(let ei in init_nodes){ |
| | | let e = init_nodes[ei]; |
| | | if(IsFormElement(e)){ |
| | | if(e.getAttribute("multiple") != 'multiple' || e.style.display == 'none' && e.id.indexOf('selected') < 0){ |
| | | api_id_map[GetEleApiName(e)] = e.id; |
| | | } |
| | | |
| | | } |
| | | } |
| | | console.log(api_id_map); |
| | | var init_nodes = document.getElementsByClassName("PIBackApi"); |
| | | var api_id_map={}; |
| | | for(let ei in init_nodes){ |
| | | let e = init_nodes[ei]; |
| | | if(IsFormElement(e)){ |
| | | if(e.getAttribute("multiple") != 'multiple' || e.style.display == 'none' && e.id.indexOf('selected') < 0){ |
| | | api_id_map[GetEleApiName(e)] = e.id; |
| | | } |
| | | |
| | | } |
| | | } |
| | | console.log(api_id_map); |
| | | |
| | | |
| | | sfdcPage.appendToOnloadQueue(function () { |
| | |
| | | //Replace Vlookup Field |
| | | replaceSearchContactLookup(); |
| | | document.querySelectorAll("[data-id='OwnerId']")[0].classList.add("disabledbutton"); |
| | | |
| | | document.getElementById('topButtonRow').style = ''; |
| | | document.getElementById('bottomButtonRow').style = ''; |
| | | jQuery('a[data-id="OwnerId"]').remove(); |
| | | /* |
| | | jQuery(".lookupInput").each(function(i,e){ |
| | |
| | | <tr> |
| | | <td class="pbTitle"> |
| | | <img src="/img/s.gif" alt="" class="minWidth" title="" width="1" height="1" /> </td> |
| | | <td class="pbButtonb" id="bottomButtonRow"> |
| | | <td class="pbButtonb" id="bottomButtonRow" style="pointer-events: none; opacity: 0.4;"> |
| | | <input class="btn" type="Button" value="{!$Label.Save}" onclick="saveSobjectProcess()" /> |
| | | <input class="btn" type="Button" value="{!$Label.SaveAndNew}" onclick="saveSobjectProcess()" /> |
| | | <apex:commandButton action="{!cancel}" value="{!$Label.Cancel}" /> |
| | |
| | | <!-- |
| | | @description : |
| | | @author : ChangeMeIn@UserSettingsUnder.SFDoc |
| | | @group : |
| | | @last modified on : 03-23-2022 |
| | | @last modified by : ChangeMeIn@UserSettingsUnder.SFDoc |
| | | --> |
| | | <apex:page standardController="Address__c" extensions="NewAndEditAddressController" id="page"> |
| | | <apex:stylesheet value="{!URLFOR($Resource.blockUIcss)}"/> |
| | | <apex:includeScript value="{! URLFOR($Resource.AWSService, 'AWSService.js') }" /> |
| | |
| | | var VLookUpFields = new Set(['Contacts__c', 'Province__c', 'City__c', 'Customer__c']); |
| | | function ProcessPI(addressJson, payloadForNewPI) { |
| | | blockme(); |
| | | if ({!isNewMode}) { |
| | | if ({!isNewMode} || {!isCloneMode}) { |
| | | NewPIToAWS(addressJson, payloadForNewPI) |
| | | }else { |
| | | UpdatePIToAWS(addressJson, payloadForNewPI) |
| | |
| | | if(phone ){ |
| | | if(phone.value){ |
| | | if(!/^1[3|5|8|7][0-9]\d{4,8}$/.test(phone.value)){ |
| | | error_msg += ';电话号码错误'; |
| | | error_msg += ';电话号码错误'; |
| | | } |
| | | }else{ |
| | | if(phone.previousSibling && phone.previousSibling.className.indexOf('requiredBlock')>-1){ |
| | |
| | | payloadJson.Detailed_Address_Encrypted__c = r.object[0].detailedAddressEncrypt; |
| | | //payloadJson.AWS_Data_Id__c = r.object[0].dataId; |
| | | payloadJson.AWS_Data_Id__c = '{!AWSDataId}'; |
| | | if (isNewMode) { |
| | | if (isNewMode || {!isCloneMode}) { |
| | | payloadJson.AWS_Data_Id__c = r.object[0].dataId; |
| | | delete payloadJson.OwnerId; |
| | | } else { |
| | | payloadJson.AWS_Data_Id__c = '{!AWSDataId}'; |
| | | } |
| | | if('{!rtTypeId}'){ |
| | | payloadJson.RecordTypeId = '{!rtTypeId}';//Add by zhj for Record Type Issue 20220421 |
| | | } |
| | | return payloadJson; |
| | | } |
| | |
| | | <img src="/img/s.gif" alt="" class="minWidth" title="" width="1" height="1" /> |
| | | <h2 class="mainTitle">收货地址编辑</h2> |
| | | </td> |
| | | <td class="pbButton" id="topButtonRow"> |
| | | <td class="pbButton" id="topButtonRow" style="pointer-events: none; opacity: 0.4;"> |
| | | <input class="btn" type="Button" value="保存" onclick="saveAddressProcess('Save')" /> |
| | | <input class="btn" type="Button" value="保存并新建" onclick="saveAddressProcess('SaveAndNew')" /> |
| | | <apex:commandButton action="{!cancel}" value="取消" /> |
| | |
| | | |
| | | <!--Each section has layoutFields, let's iterate them as well--> |
| | | <apex:repeat value="{!layoutSection.layoutFields}" var="layoutField"> |
| | | <apex:inputField html-data-id="{!layoutField.fieldAPI}" value="{!Address__c[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)}" |
| | | <apex:inputField styleClass="PIBackApi PIBackApi_{!layoutField.fieldAPI}" html-data-id="{!layoutField.fieldAPI}" value="{!Address__c[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)&&isNewMode}" |
| | | required="{!layoutField.isRequired}" /> |
| | | <apex:inputField styleClass="PIBackApi PIBackApi_{!layoutField.fieldAPI}" html-data-id="{!layoutField.fieldAPI}" value="{!Address__c[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)&¬(isNewMode)&&layoutField.fieldAPI!='RecordTypeId'}" |
| | | required="{!layoutField.isRequired}" /> |
| | | <apex:outputField styleClass="PIBackApi PIBackApi_{!layoutField.fieldAPI}" html-data-id="{!layoutField.fieldAPI}" value="{!Address__c[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)&¬(isNewMode)&&layoutField.fieldAPI=='RecordTypeId'}" |
| | | /> |
| | | <apex:pageblocksectionitem rendered="{!layoutField.isPlaceHolder}"> |
| | | </apex:pageblocksectionitem> |
| | | </apex:repeat> |
| | |
| | | replaceSearchContactLookup(); |
| | | //3. Set Readonly Attribute |
| | | // document.querySelector("[data-id='OwnerId']").classList.add("disabledbutton"); |
| | | document.getElementById('topButtonRow').style = ''; |
| | | document.getElementById('bottomButtonRow').style = ''; |
| | | /* |
| | | jQuery(".lookupInput").each(function(i,e){ |
| | | let je =jQuery(e).find('input'); |
| | |
| | | <tr> |
| | | <td class="pbTitle"> |
| | | <img src="/img/s.gif" alt="" class="minWidth" title="" width="1" height="1" /> </td> |
| | | <td class="pbButtonb" id="bottomButtonRow"> |
| | | <td class="pbButtonb" id="bottomButtonRow" style="pointer-events: none; opacity: 0.4;"> |
| | | <input class="btn" type="Button" value="保存" onclick="saveAddressProcess('Save')" /> |
| | | <input class="btn" type="Button" value="保存并新建" onclick="saveAddressProcess('SaveAndNew')" /> |
| | | <apex:commandButton action="{!cancel}" value="取消" /> |
| | |
| | | |
| | | //payloadJson.AWS_Data_Id__c = r.object[0].dataId; |
| | | payloadJson.AWS_Data_Id__c = '{!AWSDataId}'; |
| | | if (isNewMode) { |
| | | if (isNewMode || {!isCloneMode}) { |
| | | payloadJson.AWS_Data_Id__c = r.object[0].dataId; |
| | | delete payloadJson.OwnerId; |
| | | } else { |
| | | payloadJson.AWS_Data_Id__c = '{!AWSDataId}'; |
| | | } |
| | | if('{!rtTypeId}'){ |
| | | payloadJson.RecordTypeId = '{!rtTypeId}';//Add by zhj for Record Type Issue 20220421 |
| | | } |
| | | return payloadJson; |
| | | }, |
| | |
| | | } |
| | | |
| | | var staticResources = JSON.parse('{!staticResource}'); |
| | | var staticResourceAWSContact = JSON.parse('{!staticResourceAWSContact}'); |
| | | |
| | | var requiredFieldAPIList = JSON.parse('{!requiredFieldAPIListStr}'); |
| | | var fieldAPIToLabelMap = JSON.parse('{!fieldAPIToLabelMapStr}'); |
| | | console.log('{!staticResource}'); |
| | | var VLookUpFields = {! VLookUpFieldsJson}; |
| | | function ProcessPI(sobjJson, payloadForNewPI) { |
| | | blockme(); |
| | | if ({!isNewMode}) { |
| | | NewPIToAWS(sobjJson, payloadForNewPI) |
| | | if ({!isNewMode} || {!isCloneMode}) { |
| | | NewPIToAWS(sobjJson, payloadForNewPI) |
| | | }else { |
| | | UpdatePIToAWS(sobjJson, payloadForNewPI) |
| | | } |
| | |
| | | } |
| | | return ['input','select','textarea'].indexOf(tag_name.toLowerCase())>-1; |
| | | } |
| | | |
| | | function IsFormElement(e){ |
| | | |
| | | function IsFormElement(e){ |
| | | return IsFormTag(e.tagName); |
| | | } |
| | | |
| | |
| | | let contactsInfo = JSON.parse('{!LookUpOverrideFieldsMapJson}'); |
| | | let dataId = contactsInfo[sfId]; |
| | | |
| | | AWSService.query(staticResourcesContact.queryUrl,dataId,function(result){ |
| | | if(result.object){ |
| | | document.querySelector("[data-id='Contact__c']").value = result.object.lastName; |
| | | } |
| | | |
| | | },staticResources.token); |
| | | if(dataId){ |
| | | AWSService.query(staticResourceAWSContact.queryUrl,dataId,function(result){ |
| | | if(result.object){ |
| | | document.querySelector("[data-id='Contact__c']").value = result.object.lastName; |
| | | } |
| | | |
| | | },staticResources.token); |
| | | } |
| | | |
| | | } |
| | | |
| | | </script> |
| | |
| | | <div class="ptBody"> |
| | | <div class="content"> |
| | | <img src="/img/s.gif" alt="{! SobjectLabel}" class="pageTitleIcon" title="{! SobjectLabel}" /> |
| | | <h1 class="pageType">{! SobjectLabel}<apex:outputText rendered="{!isNewMode}">{!$Label.New}</apex:outputText><apex:outputText rendered="{!not(isNewMode)}">{!$Label.Edit}</apex:outputText> |
| | | <h1 class="pageType">{! SobjectLabel}<apex:outputText rendered="{!isNewMode || isCloneMode}">{!$Label.New}</apex:outputText><apex:outputText rendered="{!not(isNewMode || isCloneMode)}">{!$Label.Edit}</apex:outputText> |
| | | <span class="titleSeparatingColon">:</span> |
| | | </h1> |
| | | <h2 class="pageDescription"> <apex:outputText rendered="{!isNewMode}">{!$Label.New}</apex:outputText><apex:outputText rendered="{!not(isNewMode)}">{!$Label.Edit}</apex:outputText>{! SobjectLabel}</h2> |
| | | <h2 class="pageDescription"> <apex:outputText rendered="{!isNewMode || isCloneMode}">{!$Label.New}</apex:outputText><apex:outputText rendered="{!not(isNewMode || isCloneMode)}">{!$Label.Edit}</apex:outputText>{! SobjectLabel}</h2> |
| | | <div class="blank"> </div> |
| | | </div> |
| | | <div class="links"> |
| | |
| | | <tr> |
| | | <td class="pbTitle"> |
| | | <img src="/img/s.gif" alt="" class="minWidth" title="" width="1" height="1" /> |
| | | <h2 class="mainTitle">{! SobjectLabel}<apex:outputText rendered="{!isNewMode}">{!$Label.New}</apex:outputText><apex:outputText rendered="{!not(isNewMode)}">{!$Label.Edit}</apex:outputText></h2> |
| | | <h2 class="mainTitle">{! SobjectLabel}<apex:outputText rendered="{!isNewMode || isCloneMode}">{!$Label.New}</apex:outputText><apex:outputText rendered="{!not(isNewMode || isCloneMode)}">{!$Label.Edit}</apex:outputText></h2> |
| | | </td> |
| | | <td class="pbButton" id="topButtonRow"> |
| | | <td class="pbButton" id="topButtonRow" style="pointer-events: none; opacity: 0.4;"> |
| | | <input class="btn" type="Button" value="{!$Label.Save}" onclick="saveSobjectProcess()" /> |
| | | <input class="btn" type="Button" value="{!$Label.SaveAndNew}" onclick="saveSobjectProcess(1)" /> |
| | | <apex:commandButton action="{!cancel}" value="{!$Label.Cancel}" /> |
| | |
| | | |
| | | <!--Each section has layoutFields, let's iterate them as well--> |
| | | <apex:repeat value="{!layoutSection.layoutFields}" var="layoutField"> |
| | | <apex:inputField styleClass="{!ApiPrefix} {!ApiPrefix}_{!layoutField.fieldAPI}" html-data-id="{!layoutField.fieldAPI}" value="{!Agency_Contact__c[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)}" |
| | | <apex:inputField styleClass="{!ApiPrefix} {!ApiPrefix}_{!layoutField.fieldAPI}" html-data-id="{!layoutField.fieldAPI}" value="{!Agency_Contact__c[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)&&layoutField.fieldAPI!='RecordTypeId'}" |
| | | required="{!layoutField.isRequired}" /> |
| | | <apex:outputField styleClass="PIBackApi PIBackApi_{!layoutField.fieldAPI}" html-data-id="{!layoutField.fieldAPI}" value="{!Agency_Contact__c[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)&&layoutField.fieldAPI=='RecordTypeId'}" |
| | | /> |
| | | <apex:pageblocksectionitem rendered="{!layoutField.isPlaceHolder}"> |
| | | </apex:pageblocksectionitem> |
| | | </apex:repeat> |
| | |
| | | </apex:pageBlockSection> |
| | | </apex:repeat> |
| | | <script> |
| | | var init_nodes = document.getElementsByClassName("PIBackApi"); |
| | | var init_nodes = document.getElementsByClassName("PIBackApi"); |
| | | var api_id_map={}; |
| | | for(let ei in init_nodes){ |
| | | let e = init_nodes[ei]; |
| | |
| | | } |
| | | console.log(api_id_map); |
| | | sfdcPage.appendToOnloadQueue(function () { |
| | | jQuery('option').each(function(i,e){ |
| | | jQuery('option').each(function(i,e){ |
| | | if(e.value == '_\x01_'){ |
| | | e.value = ''; |
| | | } |
| | |
| | | } |
| | | jQuery('a[data-id="OwnerId"]').remove(); |
| | | |
| | | document.getElementById('topButtonRow').style = ''; |
| | | document.getElementById('bottomButtonRow').style = ''; |
| | | /* |
| | | jQuery(".lookupInput").each(function(i,e){ |
| | | let je =jQuery(e).find('input'); |
| | |
| | | <tr> |
| | | <td class="pbTitle"> |
| | | <img src="/img/s.gif" alt="" class="minWidth" title="" width="1" height="1" /> </td> |
| | | <td class="pbButtonb" id="bottomButtonRow"> |
| | | <td class="pbButtonb" id="bottomButtonRow" style="pointer-events: none; opacity: 0.4;"> |
| | | <input class="btn" type="Button" value="{!$Label.Save}" onclick="saveSobjectProcess()" /> |
| | | <input class="btn" type="Button" value="{!$Label.SaveAndNew}" onclick="saveSobjectProcess()" /> |
| | | <apex:commandButton action="{!cancel}" value="{!$Label.Cancel}" /> |
| | |
| | | function ProcessPI(sobjJson, payloadForNewPI) { |
| | | blockme(); |
| | | if ({!isNewMode}) { |
| | | NewPIToAWS(sobjJson, payloadForNewPI) |
| | | NewPIToAWS(sobjJson, payloadForNewPI) |
| | | }else { |
| | | UpdatePIToAWS(sobjJson, payloadForNewPI) |
| | | } |
| | |
| | | <img src="/img/s.gif" alt="" class="minWidth" title="" width="1" height="1" /> |
| | | <h2 class="mainTitle">{! SobjectLabel}<apex:outputText rendered="{!isNewMode}">{!$Label.New}</apex:outputText><apex:outputText rendered="{!not(isNewMode)}">{!$Label.Edit}</apex:outputText></h2> |
| | | </td> |
| | | <td class="pbButton" id="topButtonRow"> |
| | | <td class="pbButton" id="topButtonRow" style="pointer-events: none; opacity: 0.4;"> |
| | | <input class="btn" type="Button" value="{!$Label.Save}" onclick="saveSobjectProcess()" /> |
| | | <input class="btn" type="Button" value="{!$Label.SaveAndNew}" onclick="saveSobjectProcess(1)" /> |
| | | <apex:commandButton action="{!cancel}" value="{!$Label.Cancel}" /> |
| | |
| | | |
| | | <!--Each section has layoutFields, let's iterate them as well--> |
| | | <apex:repeat value="{!layoutSection.layoutFields}" var="layoutField"> |
| | | <apex:inputField styleClass="{!ApiPrefix} {!ApiPrefix}_{!layoutField.fieldAPI}" html-data-id="{!layoutField.fieldAPI}" value="{!CampaignMember__c[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)}" |
| | | <apex:inputField styleClass="PIBackApi PIBackApi_{!layoutField.fieldAPI}" html-data-id="{!layoutField.fieldAPI}" value="{!CampaignMember__c[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)&&isNewMode}" |
| | | required="{!layoutField.isRequired}" /> |
| | | <apex:inputField styleClass="PIBackApi PIBackApi_{!layoutField.fieldAPI}" html-data-id="{!layoutField.fieldAPI}" value="{!CampaignMember__c[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)&¬(isNewMode)&&layoutField.fieldAPI!='RecordTypeId'}" |
| | | required="{!layoutField.isRequired}" /> |
| | | <apex:outputField styleClass="PIBackApi PIBackApi_{!layoutField.fieldAPI}" html-data-id="{!layoutField.fieldAPI}" value="{!CampaignMember__c[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)&¬(isNewMode)&&layoutField.fieldAPI=='RecordTypeId'}" |
| | | /> |
| | | <apex:pageblocksectionitem rendered="{!layoutField.isPlaceHolder}"> |
| | | </apex:pageblocksectionitem> |
| | | </apex:repeat> |
| | |
| | | if (!{!isNewMode}) { |
| | | QuerySobjectFromAWS(); |
| | | } |
| | | |
| | | document.getElementById('topButtonRow').style = ''; |
| | | document.getElementById('bottomButtonRow').style = ''; |
| | | }); |
| | | </script> |
| | | <div class="pbBottomButtons"> |
| | |
| | | <tr> |
| | | <td class="pbTitle"> |
| | | <img src="/img/s.gif" alt="" class="minWidth" title="" width="1" height="1" /> </td> |
| | | <td class="pbButtonb" id="bottomButtonRow"> |
| | | <td class="pbButtonb" id="bottomButtonRow" style="pointer-events: none; opacity: 0.4;"> |
| | | <input class="btn" type="Button" value="{!$Label.Save}" onclick="saveSobjectProcess()" /> |
| | | <input class="btn" type="Button" value="{!$Label.SaveAndNew}" onclick="saveSobjectProcess()" /> |
| | | <apex:commandButton action="{!cancel}" value="{!$Label.Cancel}" /> |
| | |
| | | //判断insert or update |
| | | function ProcessPI(caseJson, payloadForNewPI) { |
| | | blockme(); |
| | | if ({!isNewMode}) { |
| | | if ({!isNewMode} || {!isCloneMode}) { |
| | | NewPIToAWS(caseJson, payloadForNewPI) |
| | | }else { |
| | | UpdatePIToAWS(caseJson, payloadForNewPI) |
| | |
| | | console.log(nodelist[index].id.indexOf('lkwgt')); |
| | | if (nodelist[index].id.indexOf('lkwgt') == -1) { |
| | | let vlookUpNodeId = nodelist[index].id + '_lkid'; |
| | | if (nodelist[index].getAttribute("data-id") == 'Field1_staff__c') { |
| | | vlookUpNodeId = nodelist[index].id.substring(0,nodelist[index].id.length-4) + '_lkid'; |
| | | } |
| | | let vlookUpNodeValue = document.getElementById(vlookUpNodeId).value; |
| | | result[nodelist[index].getAttribute("data-id")] = vlookUpNodeValue; |
| | | } |
| | |
| | | index++; |
| | | } |
| | | } |
| | | //针对id的手动添加 |
| | | if (document.getElementById("page:form:block:j_id31:0:j_id32:j_id33:1:j_id34_lkid") && (!result.hasOwnProperty("Field1_staff__c") || !result["Field1_staff__c"])){ |
| | | if(document.getElementById("page:form:block:j_id31:0:j_id32:j_id33:1:j_id34_lkid").value != '000000000000000'){ |
| | | result["Field1_staff__c"] = document.getElementById("page:form:block:j_id31:0:j_id32:j_id33:1:j_id34_lkid").value; |
| | | } |
| | | } |
| | | |
| | | return result; |
| | | } |
| | |
| | | //需要解密字段 |
| | | var queryBack = function queryBack(data) { |
| | | console.log('data = ' + data); |
| | | document.querySelector("[data-id='cic_telephone__c']").value = data.object.cicTelephone; |
| | | document.querySelector("[data-id='CASE_CUSTOMER__c']").value = data.object.caseCustomer; |
| | | document.querySelector("[data-id='Customer_manual__c']").value = data.object.customerManual; |
| | | if (document.querySelector("[data-id='cic_telephone__c']")) { |
| | | document.querySelector("[data-id='cic_telephone__c']").value = data.object.cicTelephone; |
| | | } |
| | | if (document.querySelector("[data-id='CASE_CUSTOMER__c']")) { |
| | | document.querySelector("[data-id='CASE_CUSTOMER__c']").value = data.object.caseCustomer; |
| | | } |
| | | if (document.querySelector("[data-id='Customer_manual__c']")) { |
| | | document.querySelector("[data-id='Customer_manual__c']").value = data.object.customerManual; |
| | | } |
| | | }; |
| | | |
| | | var insertOrUpdateBack = function insertOrUpdateBack(payloadJson, result, isNewMode) { |
| | |
| | | payloadJson.Customer_manual_Encrypted__c = r.object[0].customerManualEncrypt; |
| | | //payloadJson.AWS_Data_Id__c = r.object[0].dataId; |
| | | payloadJson.AWS_Data_Id__c = '{!AWSDataId}'; |
| | | if (isNewMode) { |
| | | if (isNewMode || {!isCloneMode}) { |
| | | payloadJson.AWS_Data_Id__c = r.object[0].dataId; |
| | | } else { |
| | | payloadJson.AWS_Data_Id__c = '{!AWSDataId}'; |
| | | } |
| | | if('{!rtTypeId}'){ |
| | | payloadJson.RecordTypeId = '{!rtTypeId}';//Add by zhj for Record Type Issue 20220421 |
| | | } |
| | | return payloadJson; |
| | | } |
| | |
| | | //1. Get Case Information from Form |
| | | let caseJson = getCaseInformation(); |
| | | //2. Validate the Case field value formate, for example the email formate or phone formate |
| | | /* |
| | | let validationResultMessage = validateFieldValueFormate(); |
| | | console.log(validationResultMessage); |
| | | if (!validationResultMessage) { |
| | |
| | | alertErrorMessage('手机格式输入有误,请重新输入!'); |
| | | return |
| | | } |
| | | */ |
| | | // Check Required Field |
| | | let checkRequiredFieldMsgResult = checkRequiredFieldMsg(caseJson); |
| | | if (checkRequiredFieldMsgResult) { |
| | |
| | | <img src="/img/s.gif" alt="" class="minWidth" title="" width="1" height="1" /> |
| | | <h2 class="mainTitle">CIC编辑</h2> |
| | | </td> |
| | | <td class="pbButton" id="topButtonRow"> |
| | | <td class="pbButton" id="topButtonRow" style="pointer-events: none; opacity: 0.4;"> |
| | | <input class="btn" type="Button" value="保存" onclick="saveCaseProcess('Save')" /> |
| | | <input class="btn" type="Button" value="保存并关闭" onclick="saveCaseProcess('SaveAndClose')" /> |
| | | <input class="btn" type="Button" value="保存并新建" onclick="saveCaseProcess('SaveAndNew')" /> |
| | |
| | | <apex:pageBlockSection title="{!layoutSection.name}" showHeader="{!layoutSection.useHeader}" collapsible="{!layoutSection.allowCollapse}" columns="{!layoutSection.columns}"> |
| | | <!--Each section has layoutFields, let's iterate them as well--> |
| | | <apex:repeat value="{!layoutSection.layoutFields}" var="layoutField"> |
| | | <apex:inputField html-data-id="{!layoutField.fieldAPI}" value="{!Case[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)}" |
| | | required="{!layoutField.isRequired}" /> |
| | | <apex:inputField html-data-id="{!layoutField.fieldAPI}" value="{!Case[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)&&isNewMode}" required="{!layoutField.isRequired}" /> |
| | | <apex:inputField html-data-id="{!layoutField.fieldAPI}" value="{!Case[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)&¬(isNewMode)&&layoutField.fieldAPI!='RecordTypeId'}" required="{!layoutField.isRequired}" /> |
| | | <apex:outputField html-data-id="{!layoutField.fieldAPI}" value="{!Case[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)&¬(isNewMode)&&layoutField.fieldAPI=='RecordTypeId'}" /> |
| | | |
| | | <apex:pageblocksectionitem rendered="{!layoutField.isPlaceHolder}"> |
| | | </apex:pageblocksectionitem> |
| | | </apex:repeat> |
| | |
| | | for (let n = 0; n < layoutSection.length; n++) { |
| | | let layoutField = layoutSection[n]; |
| | | if (layoutField.fieldAPI != '' && document.querySelector("[data-id='"+layoutField.fieldAPI+"']") != null) { |
| | | document.querySelector("[data-id='"+layoutField.fieldAPI+"']").disabled = !(layoutField.editableField); |
| | | let e = document.querySelector("[data-id='"+layoutField.fieldAPI+"']"); |
| | | e.disabled = !(layoutField.editableField); |
| | | /* |
| | | if (!(layoutField.editableField)) { |
| | | if (e.getAttribute("multiple") && e.getAttribute("multiple") == 'multiple') { |
| | | e.parentNode.classList.add("disabledbutton"); |
| | | }else if (e.tagName == 'DIV') { |
| | | e.classList.add("disabledbutton"); |
| | | }else if (VLookUpFields.indexOf(layoutField.fieldAPI) >= 0) { |
| | | e.parentNode.classList.add("disabledbutton"); |
| | | } |
| | | } |
| | | */ |
| | | } |
| | | } |
| | | } |
| | |
| | | //3. Set Readonly Attribute |
| | | document.querySelector("[data-id='OwnerId']").classList.add("disabledbutton"); |
| | | document.querySelector("[data-id='RecordTypeId']").classList.add("disabledbutton"); |
| | | |
| | | document.getElementById('topButtonRow').style = ''; |
| | | document.getElementById('bottomButtonRow').style = ''; |
| | | //需要隐藏 |
| | | // document.querySelector("[data-id='SuppliedEmail']").classList.add("displayblock"); |
| | | |
| | |
| | | <tr> |
| | | <td class="pbTitle"> |
| | | <img src="/img/s.gif" alt="" class="minWidth" title="" width="1" height="1" /> </td> |
| | | <td class="pbButton" id="bottomButtonRow"> |
| | | <td class="pbButton" id="bottomButtonRow" style="pointer-events: none; opacity: 0.4;"> |
| | | <input class="btn" type="Button" value="保存" onclick="saveCaseProcess('Save')" /> |
| | | <input class="btn" type="Button" value="保存并关闭" onclick="saveCaseProcess('SaveAndClose')" /> |
| | | <input class="btn" type="Button" value="保存并新建" onclick="saveCaseProcess('SaveAndNew')" /> |
| | |
| | | |
| | | //payloadJson.AWS_Data_Id__c = r.object[0].dataId; |
| | | payloadJson.AWS_Data_Id__c = '{!AWSDataId}'; |
| | | if (isNewMode) { |
| | | if (isNewMode || {!isCloneMode}) { |
| | | payloadJson.AWS_Data_Id__c = r.object[0].dataId; |
| | | delete payloadJson.OwnerId; |
| | | } else { |
| | | payloadJson.AWS_Data_Id__c = '{!AWSDataId}'; |
| | | } |
| | |
| | | var VLookUpFields = {! VLookUpFieldsJson}; |
| | | function ProcessPI(sobjJson, payloadForNewPI) { |
| | | blockme(); |
| | | if ({!isNewMode}) { |
| | | if ({!isNewMode} || {!isCloneMode}) { |
| | | NewPIToAWS(sobjJson, payloadForNewPI) |
| | | }else { |
| | | UpdatePIToAWS(sobjJson, payloadForNewPI) |
| | |
| | | |
| | | function validateFieldValueFormate() { |
| | | let error_msg = ''; |
| | | let textEmail = "[data-id='Email']"; |
| | | let textPhone = "[data-id='Phone']"; |
| | | //Email |
| | | let email = document.querySelector(textEmail); |
| | | if(email ){ |
| | | if(email.value){ |
| | | if(!/^[\w-]{3,12}@[\da-zA-Z]{2,16}\.[a-zA-Z]+$/.test(email.value)){ |
| | | error_msg += ';邮件格式错误'; |
| | | } |
| | | }else{ |
| | | if(email.previousSibling && email.previousSibling.className.indexOf('requiredBlock')>-1){ |
| | | error_msg += ';邮件格式错误'; |
| | | } |
| | | } |
| | | } |
| | | let phone = document.querySelector(textPhone); |
| | | // let textEmail = "[data-id='Email']"; |
| | | // let textPhone = "[data-id='Phone']"; |
| | | // //Email |
| | | // let email = document.querySelector(textEmail); |
| | | // if(email ){ |
| | | // if(email.value){ |
| | | // if(!/^[\w-]{3,12}@[\da-zA-Z]{2,16}\.[a-zA-Z]+$/.test(email.value)){ |
| | | // error_msg += ';邮件格式错误'; |
| | | // } |
| | | // }else{ |
| | | // if(email.previousSibling && email.previousSibling.className.indexOf('requiredBlock')>-1){ |
| | | // error_msg += ';邮件格式错误'; |
| | | // } |
| | | // } |
| | | // } |
| | | // let phone = document.querySelector(textPhone); |
| | | |
| | | if(phone && false ){ |
| | | if(phone.value){ |
| | | if(!/^1[3|5|8|7][0-9]\d{4,8}$/.test(phone.value)){ |
| | | error_msg += ';电话号码错误'; |
| | | } |
| | | }else{ |
| | | if(phone.previousSibling && phone.previousSibling.className.indexOf('requiredBlock')>-1){ |
| | | error_msg += ';电话号码错误'; |
| | | } |
| | | } |
| | | } |
| | | // if(phone && false ){ |
| | | // if(phone.value){ |
| | | // if(!/^1[3|5|8|7][0-9]\d{4,8}$/.test(phone.value)){ |
| | | // error_msg += ';电话号码错误'; |
| | | // } |
| | | // }else{ |
| | | // if(phone.previousSibling && phone.previousSibling.className.indexOf('requiredBlock')>-1){ |
| | | // error_msg += ';电话号码错误'; |
| | | // } |
| | | // } |
| | | // } |
| | | |
| | | let es = document.getElementsByTagName('select') |
| | | for(let ei in es){ |
| | |
| | | <div class="ptBody"> |
| | | <div class="content"> |
| | | <img src="/img/s.gif" alt="{! SobjectLabel}" class="pageTitleIcon" title="{! SobjectLabel}" /> |
| | | <h1 class="pageType">{! SobjectLabel}<apex:outputText rendered="{!isNewMode}">{!$Label.New}</apex:outputText><apex:outputText rendered="{!not(isNewMode)}">{!$Label.Edit}</apex:outputText> |
| | | <h1 class="pageType">{! SobjectLabel}<apex:outputText rendered="{!isNewMode || isCloneMode}">{!$Label.New}</apex:outputText><apex:outputText rendered="{!not(isNewMode || isCloneMode)}">{!$Label.Edit}</apex:outputText> |
| | | <span class="titleSeparatingColon">:</span> |
| | | </h1> |
| | | <h2 class="pageDescription"> <apex:outputText rendered="{!isNewMode}">{!$Label.New}</apex:outputText><apex:outputText rendered="{!not(isNewMode)}">{!$Label.Edit}</apex:outputText>{! SobjectLabel}</h2> |
| | | <h2 class="pageDescription"> <apex:outputText rendered="{!isNewMode || isCloneMode}">{!$Label.New}</apex:outputText><apex:outputText rendered="{!not(isNewMode || isCloneMode)}">{!$Label.Edit}</apex:outputText>{! SobjectLabel}</h2> |
| | | <div class="blank"> </div> |
| | | </div> |
| | | <div class="links"> |
| | |
| | | <tr> |
| | | <td class="pbTitle"> |
| | | <img src="/img/s.gif" alt="" class="minWidth" title="" width="1" height="1" /> |
| | | <h2 class="mainTitle">{! SobjectLabel}<apex:outputText rendered="{!isNewMode}">{!$Label.New}</apex:outputText><apex:outputText rendered="{!not(isNewMode)}">{!$Label.Edit}</apex:outputText></h2> |
| | | <h2 class="mainTitle">{! SobjectLabel}<apex:outputText rendered="{!isNewMode || isCloneMode}">{!$Label.New}</apex:outputText><apex:outputText rendered="{!not(isNewMode || isCloneMode)}">{!$Label.Edit}</apex:outputText></h2> |
| | | </td> |
| | | <td class="pbButton" id="topButtonRow"> |
| | | <td class="pbButton" id="topButtonRow" style="pointer-events: none; opacity: 0.4;"> |
| | | <input class="btn" type="Button" value="{!$Label.Save}" onclick="saveSobjectProcess()" /> |
| | | <input class="btn" type="Button" value="{!$Label.SaveAndNew}" onclick="saveSobjectProcess(1)" /> |
| | | <apex:commandButton action="{!cancel}" value="{!$Label.Cancel}" /> |
| | |
| | | |
| | | <!--Each section has layoutFields, let's iterate them as well--> |
| | | <apex:repeat value="{!layoutSection.layoutFields}" var="layoutField"> |
| | | <apex:inputField styleClass="{!ApiPrefix} {!ApiPrefix}_{!layoutField.fieldAPI}" html-data-id="{!layoutField.fieldAPI}" value="{!Contact[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)}" |
| | | required="{!layoutField.isRequired}" /> |
| | | <apex:inputField styleClass="{!ApiPrefix} {!ApiPrefix}_{!layoutField.fieldAPI}" html-data-id="{!layoutField.fieldAPI}" value="{!Contact[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)&&isNewMode}" required="{!layoutField.isRequired}" /> |
| | | <apex:inputField styleClass="{!ApiPrefix} {!ApiPrefix}_{!layoutField.fieldAPI}" html-data-id="{!layoutField.fieldAPI}" value="{!Contact[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)&¬(isNewMode)&&layoutField.fieldAPI!='RecordTypeId'}" required="{!layoutField.isRequired}" /> |
| | | <apex:outputField styleClass="{!ApiPrefix} {!ApiPrefix}_{!layoutField.fieldAPI}" html-data-id="{!layoutField.fieldAPI}" value="{!Contact[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)&¬(isNewMode)&&layoutField.fieldAPI=='RecordTypeId'}" /> |
| | | <apex:pageblocksectionitem rendered="{!layoutField.isPlaceHolder}"> |
| | | </apex:pageblocksectionitem> |
| | | </apex:repeat> |
| | |
| | | oi.value = '{!CurrentUserId}' |
| | | } |
| | | } |
| | | document.getElementById('topButtonRow').style = ''; |
| | | document.getElementById('bottomButtonRow').style = ''; |
| | | |
| | | jQuery('a[data-id="OwnerId"]').remove(); |
| | | |
| | | /* |
| | | jQuery(".lookupInput").each(function(i,e){ |
| | | let je =jQuery(e).find('input'); |
| | | je.attr("readonly",""); |
| | | je.css("background","unset"); |
| | | |
| | | let dataid = je.attr('data-id'); |
| | | if(['Hospital_Name__c','Department_Class__c','OwnerId'].indexOf(dataid) > -1) return; |
| | | jQuery(e).children(":last-child").before('<img class="closeIcon" data-id="'+dataid+'" generate="" alt="Clear" src="/s.gif" style="display: inline-block;">'); |
| | | }) |
| | | |
| | | jQuery(".lookupInput").on("mouseenter","img[generate]",function(e){ |
| | | this.className = "closeIconOn"; |
| | | }); |
| | | |
| | | jQuery(".lookupInput").on("mouseleave","img[generate]",function(e){ |
| | | this.className = "closeIcon" |
| | | }); |
| | | |
| | | jQuery(".lookupInput").on("click","img[generate]",function(e){ |
| | | let id = jQuery("input[data-id='"+jQuery(this).attr("data-id")+ "']").attr("id"); |
| | | let input = document.getElementById(id); |
| | | if(input){ |
| | | input.value = ''; |
| | | let hidden = document.getElementById(id+'_lkid'); |
| | | if(hidden){ |
| | | hidden.value = ''; |
| | | } |
| | | } |
| | | });*/ |
| | | |
| | | var layoutSections = JSON.parse('{!layoutSectionsStr}'); |
| | | for (let m = 0; m < layoutSections.length; m++) { |
| | |
| | | <tr> |
| | | <td class="pbTitle"> |
| | | <img src="/img/s.gif" alt="" class="minWidth" title="" width="1" height="1" /> </td> |
| | | <td class="pbButtonb" id="bottomButtonRow"> |
| | | <td class="pbButtonb" id="bottomButtonRow" style="pointer-events: none; opacity: 0.4;"> |
| | | <input class="btn" type="Button" value="{!$Label.Save}" onclick="saveSobjectProcess()" /> |
| | | <input class="btn" type="Button" value="{!$Label.SaveAndNew}" onclick="saveSobjectProcess()" /> |
| | | <apex:commandButton action="{!cancel}" value="{!$Label.Cancel}" /> |
| | |
| | | |
| | | //payloadJson.AWS_Data_Id__c = r.object[0].dataId; |
| | | payloadJson.AWS_Data_Id__c = '{!AWSDataId}'; |
| | | if (isNewMode) { |
| | | if (isNewMode || {!isCloneMode}) { |
| | | payloadJson.AWS_Data_Id__c = r.object[0].dataId; |
| | | delete payloadJson.OwnerId; |
| | | } else { |
| | | payloadJson.AWS_Data_Id__c = '{!AWSDataId}'; |
| | | } |
| | | if('{!rtTypeId}'){ |
| | | payloadJson.RecordTypeId = '{!rtTypeId}';//Add by zhj for Record Type Issue 20220421 |
| | | } |
| | | return payloadJson; |
| | | }, |
| | |
| | | var VLookUpFields = {! VLookUpFieldsJson}; |
| | | function ProcessPI(sobjJson, payloadForNewPI) { |
| | | blockme(); |
| | | if ({!isNewMode}) { |
| | | if ({!isNewMode} || {!isCloneMode}) { |
| | | NewPIToAWS(sobjJson, payloadForNewPI) |
| | | }else { |
| | | UpdatePIToAWS(sobjJson, payloadForNewPI) |
| | |
| | | |
| | | function validateFieldValueFormate() { |
| | | let error_msg = ''; |
| | | let textEmail = "[data-id='Email__c']"; |
| | | let textPhone = "[data-id='Phone__c']"; |
| | | if (document.querySelector("[data-id='Email__c']").value != "" && document.querySelector("[data-id='Email__c']").value != null) { |
| | | //Email |
| | | let email = document.querySelector(textEmail); |
| | | if(email && !/^[\w-]{3,12}@[\da-zA-Z]{2,16}\.[a-zA-Z]+$/.test(email.value)){ |
| | | error_msg += ';邮件格式错误'; |
| | | } |
| | | } |
| | | // let textEmail = "[data-id='Email__c']"; |
| | | // let textPhone = "[data-id='Phone__c']"; |
| | | // if (document.querySelector("[data-id='Email__c']").value != "" && document.querySelector("[data-id='Email__c']").value != null) { |
| | | // //Email |
| | | // let email = document.querySelector(textEmail); |
| | | // if(email && !/^[\w-]{3,12}@[\da-zA-Z]{2,16}\.[a-zA-Z]+$/.test(email.value)){ |
| | | // error_msg += ';邮件格式错误'; |
| | | // } |
| | | // } |
| | | |
| | | if (document.querySelector("[data-id='Phone__c']").value != "" && document.querySelector("[data-id='Phone__c']").value != null) { |
| | | let phone = document.querySelector(textPhone); |
| | | if(phone && !/^1[3|5|8|7][0-9]\d{4,8}$/.test(phone.value)){ |
| | | error_msg += ';电话号码错误'; |
| | | } |
| | | } |
| | | // if (document.querySelector("[data-id='Phone__c']").value != "" && document.querySelector("[data-id='Phone__c']").value != null) { |
| | | // let phone = document.querySelector(textPhone); |
| | | // if(phone && !/^1[3|5|8|7][0-9]\d{4,8}$/.test(phone.value)){ |
| | | // error_msg += ';电话号码错误'; |
| | | // } |
| | | // } |
| | | |
| | | for(let ei in document.getElementsByTagName('select')){ |
| | | let e = document.getElementsByTagName('select')[ei]; |
| | |
| | | } else if (ele.type == 'checkbox') { |
| | | result[field_api_name] = ele.checked; |
| | | } else if (ele.type == 'select-multiple') { |
| | | //field_api_name |
| | | let multiple = field_api_name; |
| | | let targets = ""; |
| | | //InquiryForm特殊处理 |
| | | if(multiple == "Product1__c"){ |
| | | targets = GetEleByClass(config.ApiPrefix+'_'+field_api_name).parentNode.children[1].rows[1].cells[2].innerText; |
| | | }else if(multiple == "Request1__c"){ |
| | | targets = GetEleByClass(config.ApiPrefix+'_'+field_api_name).parentNode.children[2].rows[1].cells[2].innerText; |
| | | }else{ |
| | | targets = GetEleByClass(config.ApiPrefix+'_'+field_api_name).parentNode.children[1].children[0].children[1].children[2].children[0].innerText; |
| | | //After Update By zhj 20220411 Start |
| | | let multiple = nodelist[index].getAttribute("data-id"); |
| | | let targets = document.querySelector("[data-id=" + multiple + "]").options; |
| | | let selValues = []; |
| | | for(i=0; i < targets.length; i++){ |
| | | if(targets[i].selected){ |
| | | selValues.push(targets[i].value); |
| | | } |
| | | } |
| | | targets = targets.replace(/\n/g, ";"); |
| | | console.log('targets = ' + targets); |
| | | result[field_api_name] = targets; |
| | | let setValuesStr = JSON.stringify(selValues); |
| | | setValuesStr = setValuesStr.substring(1,setValuesStr.length-1); |
| | | if(setValuesStr){ |
| | | setValuesStr = setValuesStr.replace(/"/g,""); |
| | | if(setValuesStr.indexOf(',')!=-1){ |
| | | setValuesStr = setValuesStr.replace(/,/g,";"); |
| | | } |
| | | } |
| | | console.log('targets = ' + setValuesStr); |
| | | result[nodelist[index].getAttribute("data-id")] = setValuesStr; |
| | | //After Update By zhj 20220411 end |
| | | } else { |
| | | result[field_api_name] = ele.value; |
| | | } |
| | |
| | | function replaceSearchContactLookup() { |
| | | let lookUpNode = htmlToElement(contactHtmlString); |
| | | console.log(lookUpNode); |
| | | let eleContactValue = document.querySelector("[data-id='Contact_Name__c']").parentNode.parentNode.children[1].value; |
| | | let eleContactValue = document.querySelector("[data-id='Contact_Name__c']").parentNode.parentNode.children[0].value; |
| | | if (eleContactValue) { |
| | | if (!{!isNewMode} || (eleContactValue != '000000000000000')) { |
| | | //1. Query Contact from AWS by AWSDataId |
| | |
| | | <div class="ptBody"> |
| | | <div class="content"> |
| | | <img src="/img/s.gif" alt="{! SobjectLabel}" class="pageTitleIcon" title="{! SobjectLabel}" /> |
| | | <h1 class="pageType">{! SobjectLabel}<apex:outputText rendered="{!isNewMode}">{!$Label.New}</apex:outputText><apex:outputText rendered="{!not(isNewMode)}">{!$Label.Edit}</apex:outputText> |
| | | <h1 class="pageType">{! SobjectLabel}<apex:outputText rendered="{!isNewMode || isCloneMode}">{!$Label.New}</apex:outputText><apex:outputText rendered="{!not(isNewMode || isCloneMode)}">{!$Label.Edit}</apex:outputText> |
| | | <span class="titleSeparatingColon">:</span> |
| | | </h1> |
| | | <h2 class="pageDescription"> <apex:outputText rendered="{!isNewMode}">{!$Label.New}</apex:outputText><apex:outputText rendered="{!not(isNewMode)}">{!$Label.Edit}</apex:outputText>{! SobjectLabel}</h2> |
| | | <h2 class="pageDescription"> <apex:outputText rendered="{!isNewMode || isCloneMode}">{!$Label.New}</apex:outputText><apex:outputText rendered="{!not(isNewMode || isCloneMode)}">{!$Label.Edit}</apex:outputText>{! SobjectLabel}</h2> |
| | | <div class="blank"> </div> |
| | | </div> |
| | | <div class="links"> |
| | |
| | | <tr> |
| | | <td class="pbTitle"> |
| | | <img src="/img/s.gif" alt="" class="minWidth" title="" width="1" height="1" /> |
| | | <h2 class="mainTitle">{! SobjectLabel}<apex:outputText rendered="{!isNewMode}">{!$Label.New}</apex:outputText><apex:outputText rendered="{!not(isNewMode)}">{!$Label.Edit}</apex:outputText></h2> |
| | | <h2 class="mainTitle">{! SobjectLabel}<apex:outputText rendered="{!isNewMode || isCloneMode}">{!$Label.New}</apex:outputText><apex:outputText rendered="{!not(isNewMode || isCloneMode)}">{!$Label.Edit}</apex:outputText></h2> |
| | | </td> |
| | | <td class="pbButton" id="topButtonRow"> |
| | | <td class="pbButton" id="topButtonRow" style="pointer-events: none; opacity: 0.4;"> |
| | | <input class="btn" type="Button" value="{!$Label.Save}" onclick="saveSobjectProcess()" /> |
| | | <input class="btn" type="Button" value="{!$Label.SaveAndNew}" onclick="saveSobjectProcess(1)" /> |
| | | <apex:commandButton action="{!cancel}" value="{!$Label.Cancel}" /> |
| | |
| | | |
| | | <!--Each section has layoutFields, let's iterate them as well--> |
| | | <apex:repeat value="{!layoutSection.layoutFields}" var="layoutField"> |
| | | <apex:inputField styleClass="{!ApiPrefix} {!ApiPrefix}_{!layoutField.fieldAPI}" html-data-id="{!layoutField.fieldAPI}" value="{!Inquiry_form__c[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)}" |
| | | required="{!layoutField.isRequired}" /> |
| | | <apex:inputField styleClass="{!ApiPrefix} {!ApiPrefix}_{!layoutField.fieldAPI}" html-data-id="{!layoutField.fieldAPI}" value="{!Inquiry_form__c[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)&&isNewMode}" required="{!layoutField.isRequired}" /> |
| | | <apex:inputField styleClass="{!ApiPrefix} {!ApiPrefix}_{!layoutField.fieldAPI}" html-data-id="{!layoutField.fieldAPI}" value="{!Inquiry_form__c[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)&¬(isNewMode)&&layoutField.fieldAPI!='RecordTypeId'}" required="{!layoutField.isRequired}" /> |
| | | <apex:outputField styleClass="{!ApiPrefix} {!ApiPrefix}_{!layoutField.fieldAPI}" html-data-id="{!layoutField.fieldAPI}" value="{!Inquiry_form__c[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)&¬(isNewMode)&&layoutField.fieldAPI=='RecordTypeId'}" /> |
| | | <apex:pageblocksectionitem rendered="{!layoutField.isPlaceHolder}"> |
| | | </apex:pageblocksectionitem> |
| | | </apex:repeat> |
| | |
| | | replaceSearchLeadLookup(); |
| | | document.querySelectorAll("[data-id='OwnerId']")[0].classList.add("disabledbutton"); |
| | | // document.querySelectorAll("[data-id='OwnerId']")[1].classList.add("disabledbutton"); |
| | | |
| | | document.getElementById('topButtonRow').style = ''; |
| | | document.getElementById('bottomButtonRow').style = ''; |
| | | jQuery('a[data-id="OwnerId"]').remove(); |
| | | |
| | | //Updated by Li Jun 20220322 Start |
| | |
| | | }) |
| | | }) |
| | | |
| | | // jQuery(".lookupInput").on("click","img.closeIconOn",function(){ |
| | | // if (jQuery(this).siblings("input").attr("data-id") == 'Hospital_Name__c'){ |
| | | // clearVlookup('Department_Class__c'); |
| | | // clearVlookup('Hospital__c'); |
| | | // } |
| | | // }); |
| | | |
| | | jQuery("body").on("change","input[data-id='Hospital_Name__c']",function(){ |
| | | setTimeout(() => { |
| | | console.log(document.getElementById(this.id+'_lkid').value); |
| | |
| | | JSON.stringify(lookups), lookup_id, |
| | | function (result, event) { |
| | | console.log("result = " + result); |
| | | if (result != null ){ |
| | | if (result != null && result != '{}'){ |
| | | var obj = JSON.parse(result.replaceAll('&'+'quot;','"')); |
| | | for (let i = 0; i < lookups.length; i++) { |
| | | let lookup = lookups[i]; |
| | |
| | | } |
| | | |
| | | } |
| | | } |
| | | }else { |
| | | clearVlookup('Department_Class__c'); |
| | | clearVlookup('Hospital__c'); |
| | | } |
| | | }, |
| | | { escape: true } |
| | | ); |
| | |
| | | <tr> |
| | | <td class="pbTitle"> |
| | | <img src="/img/s.gif" alt="" class="minWidth" title="" width="1" height="1" /> </td> |
| | | <td class="pbButtonb" id="bottomButtonRow"> |
| | | <td class="pbButtonb" id="bottomButtonRow" style="pointer-events: none; opacity: 0.4;"> |
| | | <input class="btn" type="Button" value="{!$Label.Save}" onclick="saveSobjectProcess()" /> |
| | | <input class="btn" type="Button" value="{!$Label.SaveAndNew}" onclick="saveSobjectProcess()" /> |
| | | <apex:commandButton action="{!cancel}" value="{!$Label.Cancel}" /> |
| | |
| | | |
| | | //payloadJson.AWS_Data_Id__c = r.object[0].dataId; |
| | | payloadJson.AWS_Data_Id__c = '{!AWSDataId}'; |
| | | if (isNewMode) { |
| | | if (isNewMode || {!isCloneMode}) { |
| | | payloadJson.AWS_Data_Id__c = r.object[0].dataId; |
| | | delete payloadJson.OwnerId; |
| | | } else { |
| | | payloadJson.AWS_Data_Id__c = '{!AWSDataId}'; |
| | | } |
| | | if('{!rtTypeId}'){ |
| | | payloadJson.RecordTypeId = '{!rtTypeId}';//Add by zhj for Record Type Issue 20220421 |
| | | } |
| | | return payloadJson; |
| | | }, |
| | |
| | | var VLookUpFields = {! VLookUpFieldsJson}; |
| | | function ProcessPI(sobjJson, payloadForNewPI) { |
| | | blockme(); |
| | | if ({!isNewMode}) { |
| | | if ({!isNewMode} || {!isCloneMode}) { |
| | | NewPIToAWS(sobjJson, payloadForNewPI) |
| | | }else { |
| | | UpdatePIToAWS(sobjJson, payloadForNewPI) |
| | |
| | | |
| | | function validateFieldValueFormate() { |
| | | let error_msg = ''; |
| | | let textEmail = "[data-id='Email']"; |
| | | let textPhone = "[data-id='Phone']"; |
| | | //Email |
| | | let email = document.querySelector(textEmail); |
| | | if(email && !/^[\w-]{3,12}@[\da-zA-Z]{2,16}\.[a-zA-Z]+$/.test(email.value)){ |
| | | error_msg += ';邮件格式错误'; |
| | | } |
| | | let phone = document.querySelector(textPhone); |
| | | // let textEmail = "[data-id='Email']"; |
| | | // let textPhone = "[data-id='Phone']"; |
| | | // //Email |
| | | // let email = document.querySelector(textEmail); |
| | | // if(email && !/^[\w-]{3,12}@[\da-zA-Z]{2,16}\.[a-zA-Z]+$/.test(email.value)){ |
| | | // error_msg += ';邮件格式错误'; |
| | | // } |
| | | // let phone = document.querySelector(textPhone); |
| | | |
| | | if(phone && !/^1[3|5|8|7][0-9]\d{4,8}$/.test(phone.value)){ |
| | | error_msg += ';电话号码错误'; |
| | | } |
| | | // if(phone && !/^1[3|5|8|7][0-9]\d{4,8}$/.test(phone.value)){ |
| | | // error_msg += ';电话号码错误'; |
| | | // } |
| | | |
| | | for(let e of document.getElementsByTagName('select')){ |
| | | for(let op of e.options){ |
| | |
| | | |
| | | return error_msg; |
| | | } |
| | | |
| | | function getCKEinstance(api_name){ |
| | | let t = jQuery("label[for$='textAreaDelegate_"+api_name+"']").parent().next().find("textarea")[0]; |
| | | if(t && t.id){ |
| | | return CKEDITOR.instances[t.id] |
| | | |
| | | } |
| | | return null; |
| | | } |
| | | function getSobjectInformation() { |
| | | |
| | | let nodelist = document.getElementsByClassName(config.ApiPrefix); |
| | |
| | | } |
| | | //赋值富文本区域 |
| | | //科室负责人签字 |
| | | if(document.querySelector("[title = 'RTF 編輯器, page:form:block:j_id51:0:j_id52:j_id53:5:j_id54:textAreaDelegate_ResponsiblePerson_Sign__c']")){ |
| | | result.ResponsiblePerson_Sign__c = document.querySelector("[title = 'RTF 編輯器, page:form:block:j_id51:0:j_id52:j_id53:5:j_id54:textAreaDelegate_ResponsiblePerson_Sign__c']").contentWindow.document.getElementsByTagName('body')[0].innerHTML |
| | | |
| | | if(getCKEinstance('ResponsiblePerson_Sign__c')){ |
| | | result.ResponsiblePerson_Sign__c = getCKEinstance('ResponsiblePerson_Sign__c').getData() |
| | | } |
| | | if(document.querySelector("[data-id='Reporter__c']")){ |
| | | result['Reporter__c'] = document.getElementById(document.querySelector("[data-id='Reporter__c']").children[7].children[0].id + '_lkid').value; |
| | |
| | | <div class="ptBody"> |
| | | <div class="content"> |
| | | <img src="/img/s.gif" alt="{! SobjectLabel}" class="pageTitleIcon" title="{! SobjectLabel}" /> |
| | | <h1 class="pageType">{! SobjectLabel}<apex:outputText rendered="{!isNewMode}">{!$Label.New}</apex:outputText><apex:outputText rendered="{!not(isNewMode)}">{!$Label.Edit}</apex:outputText> |
| | | <h1 class="pageType">{! SobjectLabel}<apex:outputText rendered="{!isNewMode || isCloneMode}">{!$Label.New}</apex:outputText><apex:outputText rendered="{!not(isNewMode || isCloneMode)}">{!$Label.Edit}</apex:outputText> |
| | | <span class="titleSeparatingColon">:</span> |
| | | </h1> |
| | | <h2 class="pageDescription"> <apex:outputText rendered="{!isNewMode}">{!$Label.New}</apex:outputText><apex:outputText rendered="{!not(isNewMode)}">{!$Label.Edit}</apex:outputText>{! SobjectLabel}</h2> |
| | | <h2 class="pageDescription"> <apex:outputText rendered="{!isNewMode || isCloneMode}">{!$Label.New}</apex:outputText><apex:outputText rendered="{!not(isNewMode || isCloneMode)}">{!$Label.Edit}</apex:outputText>{! SobjectLabel}</h2> |
| | | <div class="blank"> </div> |
| | | </div> |
| | | <div class="links"> |
| | |
| | | <img src="/img/s.gif" alt="" class="minWidth" title="" width="1" height="1" /> |
| | | <h2 class="mainTitle">{! SobjectLabel}<apex:outputText rendered="{!isNewMode}">{!$Label.New}</apex:outputText><apex:outputText rendered="{!not(isNewMode)}">{!$Label.Edit}</apex:outputText></h2> |
| | | </td> |
| | | <td class="pbButton" id="topButtonRow"> |
| | | <td class="pbButton" id="topButtonRow" style="pointer-events: none; opacity: 0.4;"> |
| | | <input class="btn" type="Button" value="{!$Label.Save}" onclick="saveSobjectProcess()" /> |
| | | <input class="btn" type="Button" value="{!$Label.SaveAndNew}" onclick="saveSobjectProcess(1)" /> |
| | | <apex:commandButton action="{!cancel}" value="{!$Label.Cancel}" /> |
| | |
| | | |
| | | <!--Each section has layoutFields, let's iterate them as well--> |
| | | <apex:repeat value="{!layoutSection.layoutFields}" var="layoutField"> |
| | | <apex:inputField styleClass="{!ApiPrefix} {!ApiPrefix}_{!layoutField.fieldAPI}" html-data-id="{!layoutField.fieldAPI}" value="{!Inspection_Report__c[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)}" |
| | | <apex:inputField styleClass="{!ApiPrefix} {!ApiPrefix}_{!layoutField.fieldAPI}" html-data-id="{!layoutField.fieldAPI}" value="{!Inspection_Report__c[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)&&isNewMode}" |
| | | required="{!layoutField.isRequired}" /> |
| | | <apex:inputField styleClass="{!ApiPrefix} {!ApiPrefix}_{!layoutField.fieldAPI}" html-data-id="{!layoutField.fieldAPI}" value="{!Inspection_Report__c[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)&¬(isNewMode)&&layoutField.fieldAPI!='RecordTypeId'}" |
| | | required="{!layoutField.isRequired}" /> |
| | | <apex:outputField styleClass="{!ApiPrefix} {!ApiPrefix}_{!layoutField.fieldAPI}" html-data-id="{!layoutField.fieldAPI}" value="{!Inspection_Report__c[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)&¬(isNewMode)&&layoutField.fieldAPI=='RecordTypeId'}" |
| | | /> |
| | | <apex:pageblocksectionitem rendered="{!layoutField.isPlaceHolder}"> |
| | | </apex:pageblocksectionitem> |
| | | </apex:repeat> |
| | |
| | | } |
| | | |
| | | //Replace Contact Vlookup Field |
| | | replaceSearchContactLookup(); |
| | | //replaceSearchContactLookup(); |
| | | //Replace Lead Vlookup Field |
| | | replaceSearchLeadLookup(); |
| | | document.querySelectorAll("[data-id='OwnerId']")[0].classList.add("disabledbutton"); |
| | | //replaceSearchLeadLookup(); |
| | | //document.querySelectorAll("[data-id='OwnerId']")[0].classList.add("disabledbutton"); |
| | | // document.querySelectorAll("[data-id='OwnerId']")[1].classList.add("disabledbutton"); |
| | | document.getElementById('topButtonRow').style = ''; |
| | | document.getElementById('bottomButtonRow').style = ''; |
| | | |
| | | jQuery('a[data-id="OwnerId"]').remove(); |
| | | |
| | |
| | | // clearVlookup('Hospital__c'); |
| | | // } |
| | | // }); |
| | | |
| | | /* |
| | | jQuery("body").on("change","input[data-id='Hospital_Name__c']",function(){ |
| | | setTimeout(() => { |
| | | console.log(document.getElementById(this.id+'_lkid').value); |
| | |
| | | clearVlookup('Hospital__c'); |
| | | } |
| | | }, 50); |
| | | }); |
| | | }); |
| | | */ |
| | | }); |
| | | |
| | | </script> |
| | |
| | | <tr> |
| | | <td class="pbTitle"> |
| | | <img src="/img/s.gif" alt="" class="minWidth" title="" width="1" height="1" /> </td> |
| | | <td class="pbButtonb" id="bottomButtonRow"> |
| | | <td class="pbButtonb" id="bottomButtonRow" style="pointer-events: none; opacity: 0.4;"> |
| | | <input class="btn" type="Button" value="{!$Label.Save}" onclick="saveSobjectProcess()" /> |
| | | <input class="btn" type="Button" value="{!$Label.SaveAndNew}" onclick="saveSobjectProcess()" /> |
| | | <apex:commandButton action="{!cancel}" value="{!$Label.Cancel}" /> |
| | |
| | | var VLookUpFields = new Set(['Hospital_Name__c', 'Department_Class__c', 'Contact_Name__c', 'Campaign__c', 'Lead_Inquiry_form__c', 'Opp_Name_Search__c']); |
| | | function ProcessPI(leadJson, payloadForNewPI) { |
| | | blockme(); |
| | | if ({!isNewMode |
| | | }) { |
| | | if ({!isNewMode} || {!isCloneMode}) { |
| | | NewPIToAWS(leadJson, payloadForNewPI) |
| | | }else { |
| | | UpdatePIToAWS(leadJson, payloadForNewPI) |
| | |
| | | } else if (nodelist[index].type == 'checkbox') { |
| | | result[nodelist[index].getAttribute("data-id")] = nodelist[index].checked; |
| | | } else if (nodelist[index].type == 'select-multiple') { |
| | | //nodelist[index].getAttribute("data-id") |
| | | //After Update By zhj 20220411 Start |
| | | let multiple = nodelist[index].getAttribute("data-id"); |
| | | let targets = document.querySelector("[data-id=" + multiple + "]").parentNode.children[1].children[0].children[1].children[2].children[0].innerText; |
| | | targets = targets.replace(/\n/g, ";"); |
| | | console.log('targets = ' + targets); |
| | | result[nodelist[index].getAttribute("data-id")] = targets; |
| | | let targets = document.querySelector("[data-id=" + multiple + "]").options; |
| | | let selValues = []; |
| | | for(i=0; i < targets.length; i++){ |
| | | if(targets[i].selected){ |
| | | selValues.push(targets[i].value); |
| | | } |
| | | } |
| | | let setValuesStr = JSON.stringify(selValues); |
| | | setValuesStr = setValuesStr.substring(1,setValuesStr.length-1); |
| | | if(setValuesStr){ |
| | | setValuesStr = setValuesStr.replace(/"/g,""); |
| | | if(setValuesStr.indexOf(',')!=-1){ |
| | | setValuesStr = setValuesStr.replace(/,/g,";"); |
| | | } |
| | | } |
| | | console.log('targets = ' + setValuesStr); |
| | | result[nodelist[index].getAttribute("data-id")] = setValuesStr; |
| | | //After Update By zhj 20220411 end |
| | | } else { |
| | | result[nodelist[index].getAttribute("data-id")] = nodelist[index].value; |
| | | } |
| | |
| | | payloadJson.Email_Encrypted__c = r.object[0].emailEncrypt; |
| | | //payloadJson.AWS_Data_Id__c = r.object[0].dataId; |
| | | payloadJson.AWS_Data_Id__c = '{!AWSDataId}'; |
| | | if (isNewMode) { |
| | | if (isNewMode || {!isCloneMode}) { |
| | | payloadJson.AWS_Data_Id__c = r.object[0].dataId; |
| | | delete payloadJson.OwnerId; |
| | | } else { |
| | | payloadJson.AWS_Data_Id__c = '{!AWSDataId}'; |
| | | } |
| | | if('{!rtTypeId}'){ |
| | | payloadJson.RecordTypeId = '{!rtTypeId}';//Add by zhj for Record Type Issue 20220421 |
| | | } |
| | | return payloadJson; |
| | | } |
| | |
| | | <img src="/img/s.gif" alt="" class="minWidth" title="" width="1" height="1" /> |
| | | <h2 class="mainTitle">意向编辑</h2> |
| | | </td> |
| | | <td class="pbButton" id="topButtonRow"> |
| | | <td class="pbButton" id="topButtonRow" style="pointer-events: none; opacity: 0.4;"> |
| | | <input class="btn" type="Button" value="保存" onclick="saveLeadProcess('Save')" /> |
| | | <input class="btn" type="Button" value="保存并新建" onclick="saveLeadProcess('SaveAndNew')" /> |
| | | <apex:commandButton action="{!cancel}" value="取消" /> |
| | |
| | | |
| | | <!--Each section has layoutFields, let's iterate them as well--> |
| | | <apex:repeat value="{!layoutSection.layoutFields}" var="layoutField"> |
| | | <apex:inputField html-data-id="{!layoutField.fieldAPI}" value="{!Lead[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)}" |
| | | <!-- <apex:inputField html-data-id="{!layoutField.fieldAPI}" value="{!Lead[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)&&isNewMode}" required="{!layoutField.isRequired}" /> |
| | | <apex:inputField html-data-id="{!layoutField.fieldAPI}" value="{!Lead[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)&&layoutField.fieldAPI!='RecordTypeId'}" required="{!layoutField.isRequired}" /> |
| | | <apex:outputField html-data-id="{!layoutField.fieldAPI}" value="{!Lead[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)&&layoutField.fieldAPI=='RecordTypeId'}" /> --> |
| | | <apex:inputField styleClass="PIBackApi PIBackApi_{!layoutField.fieldAPI}" html-data-id="{!layoutField.fieldAPI}" value="{!Lead[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)&&isNewMode}" |
| | | required="{!layoutField.isRequired}" /> |
| | | <apex:inputField styleClass="PIBackApi PIBackApi_{!layoutField.fieldAPI}" html-data-id="{!layoutField.fieldAPI}" value="{!Lead[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)&¬(isNewMode)&&layoutField.fieldAPI!='RecordTypeId'}" |
| | | required="{!layoutField.isRequired}" /> |
| | | <apex:outputField styleClass="PIBackApi PIBackApi_{!layoutField.fieldAPI}" html-data-id="{!layoutField.fieldAPI}" value="{!Lead[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)&¬(isNewMode)&&layoutField.fieldAPI=='RecordTypeId'}" |
| | | /> |
| | | <apex:pageblocksectionitem rendered="{!layoutField.isPlaceHolder}"> |
| | | </apex:pageblocksectionitem> |
| | | </apex:repeat> |
| | |
| | | document.querySelector("[data-id='Status']").value = '未跟进' |
| | | //会议询问单 |
| | | if ('{!ifc.Id}') |
| | | document.getElementById('page:form:block:j_id34:0:j_id35:j_id36:15:j_id37_lkid').value = '{!ifc.Id}' |
| | | document.getElementById(document.querySelector("[data-id='Lead_Inquiry_form__c']").id+'_lkid').value = '{!ifc.Id}' |
| | | if ('{!ifc.Name}') |
| | | document.querySelector("[data-id='Lead_Inquiry_form__c']").value = '{!ifc.Name}' |
| | | //客户姓名 |
| | |
| | | document.getElementById(document.querySelector("[data-id='Contact_Name__c']").id + '_lkid').value = '{!ifc.Contact_Id__c}' |
| | | //医院 |
| | | if ('{!ifc.Hospital_Name__c}') |
| | | document.getElementById('page:form:block:j_id34:0:j_id35:j_id36:2:j_id37_lkold').value = '{!ifc.Hospital_Name__c}' |
| | | document.getElementById(document.querySelector("[data-id='Hospital_Name__c']").id+'_lkold').value = '{!ifc.Hospital_Name__c}' |
| | | if ('{!ifc.Hospital_ID__c}') |
| | | document.getElementById('page:form:block:j_id34:0:j_id35:j_id36:2:j_id37_lkid').value = '{!ifc.Hospital_ID__c}' |
| | | document.getElementById(document.querySelector("[data-id='Hospital_Name__c']").id+'_lkid').value = '{!ifc.Hospital_ID__c}' |
| | | //战略科室分类 |
| | | if ('{!ifc.Department_Class__c}') |
| | | document.getElementById('page:form:block:j_id34:0:j_id35:j_id36:4:j_id37_lkold').value = '{!ifc.Department_Class__c}' |
| | | document.getElementById(document.querySelector("[data-id='Department_Class__c']").id+'_lkold').value = '{!ifc.Department_Class__c}' |
| | | if ('{!ifc.Department_ID__c}') |
| | | document.getElementById('page:form:block:j_id34:0:j_id35:j_id36:4:j_id37_lkid').value = '{!ifc.Department_ID__c}' |
| | | document.getElementById(document.querySelector("[data-id='Department_Class__c']").id+'_lkid').value = '{!ifc.Department_ID__c}' |
| | | //已有询价名称 |
| | | if ('{!ifc.Opp_Name_Search__c}') |
| | | //document.getElementById('page:form:block:j_id34:0:j_id35:j_id36:12:j_id37_lkold').value = '{!ifc.Opp_Name_Search__c}' |
| | | document.getElementById(document.querySelector("[data-id='Opp_Name_Search__c']").id + '_lkold').value = '{!ifc.Opp_Name_Search__c}' |
| | | if ('{!ifc.Opp_Name_Search_ID__c}') |
| | | document.getElementById(document.querySelector("[data-id='Opp_Name_Search__c']").id + '_lkid').value = '{!ifc.Opp_Name_Search_ID__c}' |
| | | //主要学会 |
| | | if ('{!ifc.Campaign__c}') |
| | | document.getElementById('page:form:block:j_id34:1:j_id35:j_id36:3:j_id37_lkold').value = '{!ifc.Campaign__c}' |
| | | document.getElementById(document.querySelector("[data-id='Campaign__c']").id +'_lkold').value = '{!ifc.Campaign__c}' |
| | | if ('{!ifc.Campaign_ID__c}') |
| | | document.getElementById('page:form:block:j_id34:1:j_id35:j_id36:3:j_id37_lkid').value = '{!ifc.Campaign_ID__c}' |
| | | document.getElementById(document.querySelector("[data-id='Campaign__c']").id +'_lkid').value = '{!ifc.Campaign_ID__c}' |
| | | //取消原因 |
| | | if ('{!ifc.Cancel_Reason__c}') |
| | | document.querySelector("[data-id='Cancel_Reason__c']").value = '{!ifc.Cancel_Reason__c}' |
| | |
| | | |
| | | unblockUI(); |
| | | } |
| | | |
| | | document.getElementById('topButtonRow').style = ''; |
| | | document.getElementById('bottomButtonRow').style = ''; |
| | | let previous_value = {}; |
| | | jQuery(".lookupInput input").each(function(i,e){ |
| | | let je =jQuery(e); |
| | |
| | | <tr> |
| | | <td class="pbTitle"> |
| | | <img src="/img/s.gif" alt="" class="minWidth" title="" width="1" height="1" /> </td> |
| | | <td class="pbButton" id="bottomButtonRow"> |
| | | <td class="pbButton" id="bottomButtonRow" style="pointer-events: none; opacity: 0.4;"> |
| | | <input class="btn" type="Button" value="保存" onclick="saveLeadProcess('Save')" /> |
| | | <input class="btn" type="Button" value="保存并新建" onclick="saveLeadProcess('SaveAndNew')" /> |
| | | <apex:commandButton action="{!cancel}" value="取消" /> |
| | |
| | | |
| | | //payloadJson.AWS_Data_Id__c = r.object[0].dataId; |
| | | payloadJson.AWS_Data_Id__c = '{!AWSDataId}'; |
| | | if (isNewMode) { |
| | | if (isNewMode || {!isCloneMode}) { |
| | | payloadJson.AWS_Data_Id__c = r.object[0].dataId; |
| | | delete payloadJson.OwnerId; |
| | | } else { |
| | | payloadJson.AWS_Data_Id__c = '{!AWSDataId}'; |
| | | } |
| | | if('{!rtTypeId}'){ |
| | | payloadJson.RecordTypeId = '{!rtTypeId}';//Add by zhj for Record Type Issue 20220421 |
| | | } |
| | | return payloadJson; |
| | | }, |
| | |
| | | var VLookUpFields = {! VLookUpFieldsJson}; |
| | | function ProcessPI(sobjJson, payloadForNewPI) { |
| | | blockme(); |
| | | if ({!isNewMode}) { |
| | | if ({!isNewMode} || {!isCloneMode}) { |
| | | NewPIToAWS(sobjJson, payloadForNewPI) |
| | | }else { |
| | | UpdatePIToAWS(sobjJson, payloadForNewPI) |
| | |
| | | return error_msg; |
| | | } |
| | | |
| | | function getCKEinstance(api_name){ |
| | | let t = jQuery("label[for$='textAreaDelegate_"+api_name+"']").parent().next().find("textarea")[0]; |
| | | if(t && t.id){ |
| | | return CKEDITOR.instances[t.id] |
| | | |
| | | } |
| | | return null; |
| | | } |
| | | |
| | | function getSobjectInformation() { |
| | | //api_id_map |
| | | //let nodelist = document.getElementsByClassName(config.ApiPrefix); |
| | |
| | | // } |
| | | } |
| | | //赋值富文本区域 |
| | | //问题内容描述(图片)-FSE-OCSM-OSH |
| | | if(document.querySelector("[title = 'RTF 編輯器, page:form:block:j_id50:4:j_id51:j_id52:15:j_id53:textAreaDelegate_problem_detail_photo__c']")){ |
| | | result.problem_detail_photo__c = document.querySelector("[title = 'RTF 編輯器, page:form:block:j_id50:4:j_id51:j_id52:15:j_id53:textAreaDelegate_problem_detail_photo__c']").contentWindow.document.getElementsByTagName('body')[0].innerHTML |
| | | if(getCKEinstance('problem_detail_photo__c')){ |
| | | result.problem_detail_photo__c = getCKEinstance('problem_detail_photo__c').getData() |
| | | } |
| | | //问题内容描述(图片)-OSH回答完毕-现场结案-final |
| | | if(document.querySelector("[title = 'RTF 編輯器, page:form:block:j_id50:5:j_id51:j_id52:15:j_id53:textAreaDelegate_problem_detail_photo__c']")){ |
| | | result.problem_detail_photo__c = document.querySelector("[title = 'RTF 編輯器, page:form:block:j_id50:5:j_id51:j_id52:15:j_id53:textAreaDelegate_problem_detail_photo__c']").contentWindow.document.getElementsByTagName('body')[0].innerHTML |
| | | |
| | | if(getCKEinstance('Photo_1__c')){ |
| | | result.Photo_1__c = getCKEinstance('Photo_1__c').getData() |
| | | |
| | | } |
| | | //照片1 - OCSM-现场结案-final |
| | | if(document.querySelector("[title = 'RTF 編輯器, page:form:block:j_id50:14:j_id51:j_id52:0:j_id53:textAreaDelegate_problem_detail_photo__c']")){ |
| | | result.Photo_1__c = document.querySelector("[title = 'RTF 編輯器, page:form:block:j_id50:14:j_id51:j_id52:0:j_id53:textAreaDelegate_problem_detail_photo__c']").contentWindow.document.getElementsByTagName('body')[0].innerHTML |
| | | if(getCKEinstance('Photo_2__c')){ |
| | | result.Photo_2__c = getCKEinstance('Photo_2__c').getData() |
| | | } |
| | | //照片2-OCSM-现场结案-final |
| | | if(document.querySelector("[title = 'RTF 編輯器, page:form:block:j_id50:14:j_id51:j_id52:1:j_id53:textAreaDelegate_problem_detail_photo__c']")){ |
| | | result.Photo_2__c = document.querySelector("[title = 'RTF 編輯器, page:form:block:j_id50:14:j_id51:j_id52:1:j_id53:textAreaDelegate_problem_detail_photo__c']").contentWindow.document.getElementsByTagName('body')[0].innerHTML |
| | | if(getCKEinstance('Photo_3__c')){ |
| | | result.Photo_3__c = getCKEinstance('Photo_3__c').getData() |
| | | } |
| | | //照片3 -OCSM-现场结案-final |
| | | if(document.querySelector("[title = 'RTF 編輯器, page:form:block:j_id50:14:j_id51:j_id52:2:j_id53:textAreaDelegate_problem_detail_photo__c']")){ |
| | | result.Photo_3__c = document.querySelector("[title = 'RTF 編輯器, page:form:block:j_id50:14:j_id51:j_id52:2:j_id53:textAreaDelegate_problem_detail_photo__c']").contentWindow.document.getElementsByTagName('body')[0].innerHTML |
| | | if(getCKEinstance('Photo_4__c')){ |
| | | result.Photo_4__c = getCKEinstance('Photo_4__c').getData() |
| | | } |
| | | //照片4 -OCSM-现场结案-final |
| | | if(document.querySelector("[title = 'RTF 編輯器, page:form:block:j_id50:14:j_id51:j_id52:3:j_id53:textAreaDelegate_problem_detail_photo__c']")){ |
| | | result.Photo_4__c = document.querySelector("[title = 'RTF 編輯器, page:form:block:j_id50:14:j_id51:j_id52:3:j_id53:textAreaDelegate_problem_detail_photo__c']").contentWindow.document.getElementsByTagName('body')[0].innerHTML |
| | | |
| | | if(getCKEinstance('Photo_OSH_1__c')){ |
| | | result.Photo_OSH_1__c = getCKEinstance('Photo_OSH_1__c').getData() |
| | | } |
| | | //照片OSH1 - OCSM |
| | | if(document.querySelector("[title = 'RTF 編輯器, page:form:block:j_id50:19:j_id51:j_id52:0:j_id53:textAreaDelegate_problem_detail_photo__c']")){ |
| | | result.Photo_OSH_1__c = document.querySelector("[title = 'RTF 編輯器, page:form:block:j_id50:19:j_id51:j_id52:0:j_id53:textAreaDelegate_problem_detail_photo__c']").contentWindow.document.getElementsByTagName('body')[0].innerHTML |
| | | if(getCKEinstance('Photo_OSH_2__c')){ |
| | | result.Photo_OSH_2__c = getCKEinstance('Photo_OSH_2__c').getData() |
| | | } |
| | | //照片OSH2-OCSM |
| | | if(document.querySelector("[title = 'RTF 編輯器, page:form:block:j_id50:19:j_id51:j_id52:1:j_id53:textAreaDelegate_problem_detail_photo__c']")){ |
| | | result.Photo_OSH_2__c = document.querySelector("[title = 'RTF 編輯器, page:form:block:j_id50:19:j_id51:j_id52:1:j_id53:textAreaDelegate_problem_detail_photo__c']").contentWindow.document.getElementsByTagName('body')[0].innerHTML |
| | | if(getCKEinstance('Photo_OSH_3__c')){ |
| | | result.Photo_OSH_3__c = getCKEinstance('Photo_OSH_3__c').getData() |
| | | } |
| | | //照片OSH3 -OCSM |
| | | if(document.querySelector("[title = 'RTF 編輯器, page:form:block:j_id50:19:j_id51:j_id52:2:j_id53:textAreaDelegate_problem_detail_photo__c']")){ |
| | | result.Photo_OSH_3__c = document.querySelector("[title = 'RTF 編輯器, page:form:block:j_id50:19:j_id51:j_id52:2:j_id53:textAreaDelegate_problem_detail_photo__c']").contentWindow.document.getElementsByTagName('body')[0].innerHTML |
| | | } |
| | | //照片OSH4 -OCSM |
| | | if(document.querySelector("[title = 'RTF 編輯器, page:form:block:j_id50:19:j_id51:j_id52:3:j_id53:textAreaDelegate_problem_detail_photo__c']")){ |
| | | result.Photo_OSH_4__c = document.querySelector("[title = 'RTF 編輯器, page:form:block:j_id50:19:j_id51:j_id52:3:j_id53:textAreaDelegate_problem_detail_photo__c']").contentWindow.document.getElementsByTagName('body')[0].innerHTML |
| | | } |
| | | //照片OSH1 - OSH回答完毕 |
| | | if(document.querySelector("[title = 'RTF 編輯器, page:form:block:j_id50:18:j_id51:j_id52:0:j_id53:textAreaDelegate_problem_detail_photo__c']")){ |
| | | result.Photo_OSH_1__c = document.querySelector("[title = 'RTF 編輯器, page:form:block:j_id50:18:j_id51:j_id52:0:j_id53:textAreaDelegate_problem_detail_photo__c']").contentWindow.document.getElementsByTagName('body')[0].innerHTML |
| | | } |
| | | //照片OSH2-OSH回答完毕 |
| | | if(document.querySelector("[title = 'RTF 編輯器, page:form:block:j_id50:18:j_id51:j_id52:1:j_id53:textAreaDelegate_problem_detail_photo__c']")){ |
| | | result.Photo_OSH_2__c = document.querySelector("[title = 'RTF 編輯器, page:form:block:j_id50:18:j_id51:j_id52:1:j_id53:textAreaDelegate_problem_detail_photo__c']").contentWindow.document.getElementsByTagName('body')[0].innerHTML |
| | | } |
| | | //照片OSH3 -OSH回答完毕 |
| | | if(document.querySelector("[title = 'RTF 編輯器, page:form:block:j_id50:18:j_id51:j_id52:2:j_id53:textAreaDelegate_problem_detail_photo__c']")){ |
| | | result.Photo_OSH_3__c = document.querySelector("[title = 'RTF 編輯器, page:form:block:j_id50:18:j_id51:j_id52:2:j_id53:textAreaDelegate_problem_detail_photo__c']").contentWindow.document.getElementsByTagName('body')[0].innerHTML |
| | | } |
| | | //照片OSH4 -OSH回答完毕 |
| | | if(document.querySelector("[title = 'RTF 編輯器, page:form:block:j_id50:18:j_id51:j_id52:3:j_id53:textAreaDelegate_problem_detail_photo__c']")){ |
| | | result.Photo_OSH_4__c = document.querySelector("[title = 'RTF 編輯器, page:form:block:j_id50:18:j_id51:j_id52:3:j_id53:textAreaDelegate_problem_detail_photo__c']").contentWindow.document.getElementsByTagName('body')[0].innerHTML |
| | | } |
| | | //照片1 - OSH |
| | | if(document.querySelector("[title = 'RTF 編輯器, page:form:block:j_id50:13:j_id51:j_id52:0:j_id53:textAreaDelegate_problem_detail_photo__c']")){ |
| | | result.Photo_1__c = document.querySelector("[title = 'RTF 編輯器, page:form:block:j_id50:13:j_id51:j_id52:0:j_id53:textAreaDelegate_problem_detail_photo__c']").contentWindow.document.getElementsByTagName('body')[0].innerHTML |
| | | } |
| | | //照片2-OSH |
| | | if(document.querySelector("[title = 'RTF 編輯器, page:form:block:j_id50:13:j_id51:j_id52:1:j_id53:textAreaDelegate_problem_detail_photo__c']")){ |
| | | result.Photo_2__c = document.querySelector("[title = 'RTF 編輯器, page:form:block:j_id50:13:j_id51:j_id52:1:j_id53:textAreaDelegate_problem_detail_photo__c']").contentWindow.document.getElementsByTagName('body')[0].innerHTML |
| | | } |
| | | //照片3 -OSH |
| | | if(document.querySelector("[title = 'RTF 編輯器, page:form:block:j_id50:13:j_id51:j_id52:2:j_id53:textAreaDelegate_problem_detail_photo__c']")){ |
| | | result.Photo_3__c = document.querySelector("[title = 'RTF 編輯器, page:form:block:j_id50:13:j_id51:j_id52:2:j_id53:textAreaDelegate_problem_detail_photo__c']").contentWindow.document.getElementsByTagName('body')[0].innerHTML |
| | | } |
| | | //照片4 -OSH |
| | | if(document.querySelector("[title = 'RTF 編輯器, page:form:block:j_id50:13:j_id51:j_id52:3:j_id53:textAreaDelegate_problem_detail_photo__c']")){ |
| | | result.Photo_4__c = document.querySelector("[title = 'RTF 編輯器, page:form:block:j_id50:13:j_id51:j_id52:3:j_id53:textAreaDelegate_problem_detail_photo__c']").contentWindow.document.getElementsByTagName('body')[0].innerHTML |
| | | } |
| | | //照片OSH1 - OSH |
| | | if(document.querySelector("[title = 'RTF 編輯器, page:form:block:j_id50:16:j_id51:j_id52:0:j_id53:textAreaDelegate_problem_detail_photo__c']")){ |
| | | result.Photo_OSH_1__c = document.querySelector("[title = 'RTF 編輯器, page:form:block:j_id50:16:j_id51:j_id52:0:j_id53:textAreaDelegate_problem_detail_photo__c']").contentWindow.document.getElementsByTagName('body')[0].innerHTML |
| | | } |
| | | //照片OSH2-OSH |
| | | if(document.querySelector("[title = 'RTF 編輯器, page:form:block:j_id50:16:j_id51:j_id52:1:j_id53:textAreaDelegate_problem_detail_photo__c']")){ |
| | | result.Photo_OSH_2__c = document.querySelector("[title = 'RTF 編輯器, page:form:block:j_id50:16:j_id51:j_id52:1:j_id53:textAreaDelegate_problem_detail_photo__c']").contentWindow.document.getElementsByTagName('body')[0].innerHTML |
| | | } |
| | | //照片OSH3 -OSH |
| | | if(document.querySelector("[title = 'RTF 編輯器, page:form:block:j_id50:16:j_id51:j_id52:2:j_id53:textAreaDelegate_problem_detail_photo__c']")){ |
| | | result.Photo_OSH_3__c = document.querySelector("[title = 'RTF 編輯器, page:form:block:j_id50:16:j_id51:j_id52:2:j_id53:textAreaDelegate_problem_detail_photo__c']").contentWindow.document.getElementsByTagName('body')[0].innerHTML |
| | | } |
| | | //照片OSH4 -OSH |
| | | if(document.querySelector("[title = 'RTF 編輯器, page:form:block:j_id50:16:j_id51:j_id52:3:j_id53:textAreaDelegate_problem_detail_photo__c']")){ |
| | | result.Photo_OSH_4__c = document.querySelector("[title = 'RTF 編輯器, page:form:block:j_id50:16:j_id51:j_id52:3:j_id53:textAreaDelegate_problem_detail_photo__c']").contentWindow.document.getElementsByTagName('body')[0].innerHTML |
| | | } |
| | | //照片OSH1 -现场结案-final |
| | | if(document.querySelector("[title = 'RTF 編輯器, page:form:block:j_id50:17:j_id51:j_id52:0:j_id53:textAreaDelegate_problem_detail_photo__c']")){ |
| | | result.Photo_OSH_1__c = document.querySelector("[title = 'RTF 編輯器, page:form:block:j_id50:17:j_id51:j_id52:0:j_id53:textAreaDelegate_problem_detail_photo__c']").contentWindow.document.getElementsByTagName('body')[0].innerHTML |
| | | } |
| | | //照片OSH2-现场结案-final |
| | | if(document.querySelector("[title = 'RTF 編輯器, page:form:block:j_id50:17:j_id51:j_id52:1:j_id53:textAreaDelegate_problem_detail_photo__c']")){ |
| | | result.Photo_OSH_2__c = document.querySelector("[title = 'RTF 編輯器, page:form:block:j_id50:17:j_id51:j_id52:1:j_id53:textAreaDelegate_problem_detail_photo__c']").contentWindow.document.getElementsByTagName('body')[0].innerHTML |
| | | } |
| | | //照片OSH3 -现场结案-final |
| | | if(document.querySelector("[title = 'RTF 編輯器, page:form:block:j_id50:17:j_id51:j_id52:2:j_id53:textAreaDelegate_problem_detail_photo__c']")){ |
| | | result.Photo_OSH_3__c = document.querySelector("[title = 'RTF 編輯器, page:form:block:j_id50:17:j_id51:j_id52:2:j_id53:textAreaDelegate_problem_detail_photo__c']").contentWindow.document.getElementsByTagName('body')[0].innerHTML |
| | | } |
| | | //照片OSH4 -现场结案-final |
| | | if(document.querySelector("[title = 'RTF 編輯器, page:form:block:j_id50:17:j_id51:j_id52:3:j_id53:textAreaDelegate_problem_detail_photo__c']")){ |
| | | result.Photo_OSH_4__c = document.querySelector("[title = 'RTF 編輯器, page:form:block:j_id50:17:j_id51:j_id52:3:j_id53:textAreaDelegate_problem_detail_photo__c']").contentWindow.document.getElementsByTagName('body')[0].innerHTML |
| | | if(getCKEinstance('Photo_OSH_4__c')){ |
| | | result.Photo_OSH_4__c = getCKEinstance('Photo_OSH_4__c').getData() |
| | | } |
| | | return result; |
| | | } |
| | |
| | | <div class="ptBody"> |
| | | <div class="content"> |
| | | <img src="/img/s.gif" alt="{! SobjectLabel}" class="pageTitleIcon" title="{! SobjectLabel}" /> |
| | | <h1 class="pageType">{! SobjectLabel}<apex:outputText rendered="{!isNewMode}">{!$Label.New}</apex:outputText><apex:outputText rendered="{!not(isNewMode)}">{!$Label.Edit}</apex:outputText> |
| | | <h1 class="pageType">{! SobjectLabel}<apex:outputText rendered="{!isNewMode || isCloneMode}">{!$Label.New}</apex:outputText><apex:outputText rendered="{!not(isNewMode || isCloneMode)}">{!$Label.Edit}</apex:outputText> |
| | | <span class="titleSeparatingColon">:</span> |
| | | </h1> |
| | | <h2 class="pageDescription"> <apex:outputText rendered="{!isNewMode}">{!$Label.New}</apex:outputText><apex:outputText rendered="{!not(isNewMode)}">{!$Label.Edit}</apex:outputText>{! SobjectLabel}</h2> |
| | | <h2 class="pageDescription"> <apex:outputText rendered="{!isNewMode || isCloneMode}">{!$Label.New}</apex:outputText><apex:outputText rendered="{!not(isNewMode || isCloneMode)}">{!$Label.Edit}</apex:outputText>{! SobjectLabel}</h2> |
| | | <div class="blank"> </div> |
| | | </div> |
| | | <div class="links"> |
| | |
| | | <img src="/img/s.gif" alt="" class="minWidth" title="" width="1" height="1" /> |
| | | <h2 class="mainTitle">{! SobjectLabel}<apex:outputText rendered="{!isNewMode}">{!$Label.New}</apex:outputText><apex:outputText rendered="{!not(isNewMode)}">{!$Label.Edit}</apex:outputText></h2> |
| | | </td> |
| | | <td class="pbButton" id="topButtonRow"> |
| | | <td class="pbButton" id="topButtonRow" style="pointer-events: none; opacity: 0.4;"> |
| | | <input class="btn" type="Button" value="{!$Label.Save}" onclick="saveSobjectProcess()" /> |
| | | <input class="btn" type="Button" value="{!$Label.SaveAndNew}" onclick="saveSobjectProcess(1)" /> |
| | | <apex:commandButton action="{!cancel}" value="{!$Label.Cancel}" /> |
| | |
| | | |
| | | <!--Each section has layoutFields, let's iterate them as well--> |
| | | <apex:repeat value="{!layoutSection.layoutFields}" var="layoutField"> |
| | | <apex:inputField styleClass="{!ApiPrefix} {!ApiPrefix}_{!layoutField.fieldAPI}" html-data-id="{!layoutField.fieldAPI}" value="{!QIS_Report__c[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)}" |
| | | required="{!layoutField.isRequired}" /> |
| | | <apex:inputField styleClass="PIBackApi PIBackApi_{!layoutField.fieldAPI}" html-data-id="{!layoutField.fieldAPI}" value="{!QIS_Report__c[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)&&isNewMode}" |
| | | required="{!layoutField.isRequired}" /> |
| | | <apex:inputField styleClass="PIBackApi PIBackApi_{!layoutField.fieldAPI}" html-data-id="{!layoutField.fieldAPI}" value="{!QIS_Report__c[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)&¬(isNewMode)&&layoutField.fieldAPI!='RecordTypeId'}" |
| | | required="{!layoutField.isRequired}" /> |
| | | <apex:outputField styleClass="PIBackApi PIBackApi_{!layoutField.fieldAPI}" html-data-id="{!layoutField.fieldAPI}" value="{!QIS_Report__c[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)&¬(isNewMode)&&layoutField.fieldAPI=='RecordTypeId'}" |
| | | /> |
| | | <apex:pageblocksectionitem rendered="{!layoutField.isPlaceHolder}"> |
| | | </apex:pageblocksectionitem> |
| | | </apex:repeat> |
| | |
| | | oi.value = '{!CurrentUserId}' |
| | | } |
| | | } |
| | | document.getElementById('topButtonRow').style = ''; |
| | | document.getElementById('bottomButtonRow').style = ''; |
| | | }); |
| | | </script> |
| | | <div class="pbBottomButtons"> |
| | |
| | | <tr> |
| | | <td class="pbTitle"> |
| | | <img src="/img/s.gif" alt="" class="minWidth" title="" width="1" height="1" /> </td> |
| | | <td class="pbButtonb" id="bottomButtonRow"> |
| | | <td class="pbButtonb" id="bottomButtonRow" style="pointer-events: none; opacity: 0.4;"> |
| | | <input class="btn" type="Button" value="{!$Label.Save}" onclick="saveSobjectProcess()" /> |
| | | <input class="btn" type="Button" value="{!$Label.SaveAndNew}" onclick="saveSobjectProcess()" /> |
| | | <apex:commandButton action="{!cancel}" value="{!$Label.Cancel}" /> |
| | |
| | | <!-- |
| | | @description : |
| | | @author : ChangeMeIn@UserSettingsUnder.SFDoc |
| | | @group : |
| | | @last modified on : 03-23-2022 |
| | | @last modified by : ChangeMeIn@UserSettingsUnder.SFDoc |
| | | --> |
| | | <apex:page standardController="RepairSubOrder__c" extensions="NewAndEditRepairSubOrderController" id="page"> |
| | | <apex:includeScript value="{! URLFOR($Resource.AWSService, 'AWSService.js') }" /> |
| | | <script src="../../soap/ajax/53.0/connection.js" type="text/javascript"></script> |
| | |
| | | payloadJson.AWS_Data_Id__c = r.object[0].dataId; |
| | | } else { |
| | | payloadJson.AWS_Data_Id__c = '{!AWSDataId}'; |
| | | } |
| | | if('{!rtTypeId}'){ |
| | | payloadJson.RecordTypeId = '{!rtTypeId}';//Add by zhj for Record Type Issue 20220421 |
| | | } |
| | | return payloadJson; |
| | | }, |
| | |
| | | function validateFieldValueFormate() { |
| | | let error_msg = ''; |
| | | // let textEmail = "[data-id='Email']"; |
| | | let textPhone = "[data-id='RepairApplicantTel__c']"; |
| | | //let textPhone = "[data-id='RepairApplicantTel__c']"; |
| | | //Email |
| | | // let email = document.querySelector(textEmail); |
| | | // if(email && !/^[\w-]{3,12}@[\da-zA-Z]{2,16}\.[a-zA-Z]+$/.test(email.value)){ |
| | | // error_msg += ';邮件格式错误'; |
| | | // } |
| | | let phone = document.querySelector(textPhone); |
| | | // let phone = document.querySelector(textPhone); |
| | | |
| | | if(phone ){ |
| | | if(phone.value){ |
| | | if(!/^1[3|5|8|7][0-9]\d{4,8}$/.test(phone.value)){ |
| | | error_msg += ';电话号码错误'; |
| | | } |
| | | }else{ |
| | | if(phone.previousSibling && phone.previousSibling.className.indexOf('requiredBlock')>-1){ |
| | | error_msg += ';电话号码错误'; |
| | | } |
| | | } |
| | | } |
| | | // if(phone ){ |
| | | // if(phone.value){ |
| | | // if(!/^1[3|5|8|7][0-9]\d{4,8}$/.test(phone.value)){ |
| | | // error_msg += ';电话号码错误'; |
| | | // } |
| | | // }else{ |
| | | // if(phone.previousSibling && phone.previousSibling.className.indexOf('requiredBlock')>-1){ |
| | | // error_msg += ';电话号码错误'; |
| | | // } |
| | | // } |
| | | // } |
| | | |
| | | let es = document.getElementsByTagName('select') |
| | | for(let ei in es){ |
| | |
| | | } else { |
| | | result[field_api_name] = ele.value; |
| | | } |
| | | } |
| | | if(api_id_map['AssetType__c']){ |
| | | result.AssetType__c= document.getElementById(api_id_map['AssetType__c']).value!='_\x01_'?document.getElementById(api_id_map['AssetType__c']).value:''; |
| | | } |
| | | return result; |
| | | } |
| | |
| | | <img src="/img/s.gif" alt="" class="minWidth" title="" width="1" height="1" /> |
| | | <h2 class="mainTitle">{! SobjectLabel}<apex:outputText rendered="{!isNewMode}">{!$Label.New}</apex:outputText><apex:outputText rendered="{!not(isNewMode)}">{!$Label.Edit}</apex:outputText></h2> |
| | | </td> |
| | | <td class="pbButton" id="topButtonRow"> |
| | | <td class="pbButton" id="topButtonRow" style="pointer-events: none; opacity: 0.4;"> |
| | | <input class="btn" type="Button" value="{!$Label.Save}" onclick="saveSobjectProcess()" /> |
| | | <input class="btn" type="Button" value="{!$Label.SaveAndNew}" onclick="saveSobjectProcess(1)" /> |
| | | <apex:commandButton action="{!cancel}" value="{!$Label.Cancel}" /> |
| | |
| | | |
| | | <!--Each section has layoutFields, let's iterate them as well--> |
| | | <apex:repeat value="{!layoutSection.layoutFields}" var="layoutField"> |
| | | <apex:inputField styleClass="{!ApiPrefix} {!ApiPrefix}_{!layoutField.fieldAPI}" html-data-id="{!layoutField.fieldAPI}" value="{!RepairSubOrder__c[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)}" |
| | | <apex:inputField styleClass="PIBackApi PIBackApi_{!layoutField.fieldAPI}" html-data-id="{!layoutField.fieldAPI}" value="{!RepairSubOrder__c[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)&&isNewMode}" |
| | | required="{!layoutField.isRequired}" /> |
| | | <apex:inputField styleClass="PIBackApi PIBackApi_{!layoutField.fieldAPI}" html-data-id="{!layoutField.fieldAPI}" value="{!RepairSubOrder__c[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)&¬(isNewMode)&&layoutField.fieldAPI!='RecordTypeId'}" |
| | | required="{!layoutField.isRequired}" /> |
| | | <apex:outputField styleClass="PIBackApi PIBackApi_{!layoutField.fieldAPI}" html-data-id="{!layoutField.fieldAPI}" value="{!RepairSubOrder__c[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)&¬(isNewMode)&&layoutField.fieldAPI=='RecordTypeId'}" |
| | | /> |
| | | <apex:pageblocksectionitem rendered="{!layoutField.isPlaceHolder}"> |
| | | </apex:pageblocksectionitem> |
| | | </apex:repeat> |
| | |
| | | <script> |
| | | var init_nodes = document.getElementsByClassName("PIBackApi"); |
| | | var api_id_map={}; |
| | | for(let ei in init_nodes){ |
| | | let e = init_nodes[ei]; |
| | | if(IsFormElement(e)){ |
| | | if(e.getAttribute("multiple") != 'multiple' || e.style.display == 'none' && e.id.indexOf('selected') < 0){ |
| | | api_id_map[GetEleApiName(e)] = e.id; |
| | | } |
| | | |
| | | } |
| | | } |
| | | console.log(api_id_map); |
| | | for(let ei in init_nodes){ |
| | | let e = init_nodes[ei]; |
| | | if(IsFormElement(e)){ |
| | | if(e.getAttribute("multiple") != 'multiple' || e.style.display == 'none' && e.id.indexOf('selected') < 0){ |
| | | api_id_map[GetEleApiName(e)] = e.id; |
| | | } |
| | | |
| | | } |
| | | } |
| | | console.log(api_id_map); |
| | | |
| | | sfdcPage.appendToOnloadQueue(function () { |
| | | var layoutSections = JSON.parse('{!layoutSectionsStr}'); |
| | |
| | | replaceSearchContactLookup(); |
| | | //3. Set Readonly Attribute |
| | | document.querySelectorAll("[data-id='OwnerId']")[0].classList.add("disabledbutton"); |
| | | |
| | | document.getElementById('topButtonRow').style = ''; |
| | | document.getElementById('bottomButtonRow').style = ''; |
| | | jQuery('a[data-id="OwnerId"]').remove(); |
| | | /* |
| | | jQuery(".lookupInput").each(function(i,e){ |
| | |
| | | <tr> |
| | | <td class="pbTitle"> |
| | | <img src="/img/s.gif" alt="" class="minWidth" title="" width="1" height="1" /> </td> |
| | | <td class="pbButtonb" id="bottomButtonRow"> |
| | | <td class="pbButtonb" id="bottomButtonRow" style="pointer-events: none; opacity: 0.4;"> |
| | | <input class="btn" type="Button" value="{!$Label.Save}" onclick="saveSobjectProcess()" /> |
| | | <input class="btn" type="Button" value="{!$Label.SaveAndNew}" onclick="saveSobjectProcess()" /> |
| | | <apex:commandButton action="{!cancel}" value="{!$Label.Cancel}" /> |
| | |
| | | errorMsgNode.className = ''; |
| | | } |
| | | |
| | | function getCKEinstance(api_name){ |
| | | let t = jQuery("label[for$='textAreaDelegate_"+api_name+"']").parent().next().find("textarea")[0]; |
| | | if(t && t.id){ |
| | | return CKEDITOR.instances[t.id] |
| | | |
| | | } |
| | | return null; |
| | | } |
| | | |
| | | //1。获取所有字段值 |
| | | function getReportInformation() { |
| | | let nodelist = document.querySelectorAll("[data-id]"); |
| | |
| | | result[nodelist[index].getAttribute("data-id")] = nodelist[index].checked; |
| | | } else if (nodelist[index].type == 'select-multiple') { |
| | | //nodelist[index].getAttribute("data-id") |
| | | //let targets = document.querySelector("[data-id=" + multiple + "]").nextSibling.children[0].children[1].children[2].innerText; |
| | | //Before Update By Li Jun 20220411 |
| | | // let targets = document.querySelector("[data-id=" + multiple + "]").parentNode.children[2].children[0].children[1].children[2].children[0].innerText; |
| | | // targets = targets.replace(/\n/g, ";"); |
| | | // console.log('targets = ' + targets); |
| | | // result[nodelist[index].getAttribute("data-id")] = targets; |
| | | //Before Update By Li Jun 20220411 |
| | | |
| | | //After Update By Li Jun 20220411 Start |
| | | let multiple = nodelist[index].getAttribute("data-id"); |
| | | let targets = document.querySelector("[data-id=" + multiple + "]").nextSibling.children[0].children[1].children[2].innerText; |
| | | targets = targets.replace(/\n/g, ";"); |
| | | console.log('targets = ' + targets); |
| | | result[nodelist[index].getAttribute("data-id")] = targets; |
| | | let targets = document.querySelector("[data-id=" + multiple + "]").options; |
| | | let selValues = []; |
| | | for(i=0; i < targets.length; i++){ |
| | | if(targets[i].selected){ |
| | | selValues.push(targets[i].value); |
| | | } |
| | | } |
| | | let setValuesStr = JSON.stringify(selValues); |
| | | setValuesStr = setValuesStr.substring(1,setValuesStr.length-1); |
| | | if(setValuesStr){ |
| | | setValuesStr = setValuesStr.replace(/"/g,""); |
| | | if(setValuesStr.indexOf(',')!=-1){ |
| | | setValuesStr = setValuesStr.replace(/,/g,";"); |
| | | } |
| | | } |
| | | console.log('targets = ' + setValuesStr); |
| | | result[nodelist[index].getAttribute("data-id")] = setValuesStr; |
| | | //After Update By Li Jun 20220411 End |
| | | |
| | | |
| | | } else { |
| | | result[nodelist[index].getAttribute("data-id")] = nodelist[index].value; |
| | | } |
| | |
| | | } |
| | | } |
| | | //手术分类1 |
| | | result.Technical_Category1__c = document.getElementById('page:form:j_id5:j_id35:4:j_id36:j_id37:2:j_id38')!=null?document.getElementById('page:form:j_id5:j_id35:4:j_id36:j_id37:2:j_id38').value:''; |
| | | if(api_id_map['Technical_Category1__c']){ |
| | | result.Technical_Category1__c = document.getElementById(api_id_map['Technical_Category1__c']).value!='_\x01_'?document.getElementById(api_id_map['Technical_Category1__c']).value:''; |
| | | } |
| | | //result.Technical_Category1__c = document.getElementById('page:form:j_id5:j_id35:4:j_id36:j_id37:2:j_id38')!=null?document.getElementById('page:form:j_id5:j_id35:4:j_id36:j_id37:2:j_id38').value:''; |
| | | //手术分类2 |
| | | result.Technical_Category2__c = document.getElementById('page:form:j_id5:j_id35:4:j_id36:j_id37:4:j_id38')!=null?document.getElementById('page:form:j_id5:j_id35:4:j_id36:j_id37:4:j_id38').value:''; |
| | | if(api_id_map['Technical_Category2__c']){ |
| | | result.Technical_Category2__c = document.getElementById(api_id_map['Technical_Category2__c']).value!='_\x01_'?document.getElementById(api_id_map['Technical_Category2__c']).value:''; |
| | | } |
| | | //result.Technical_Category2__c = document.getElementById('page:form:j_id5:j_id35:4:j_id36:j_id37:4:j_id38')!=null?document.getElementById('page:form:j_id5:j_id35:4:j_id36:j_id37:4:j_id38').value:''; |
| | | //目的2 |
| | | if(document.getElementById('page:form:j_id5:j_id35:2:j_id36:j_id37:1:j_id38')){ |
| | | result.Purpose2__c = document.getElementById('page:form:j_id5:j_id35:2:j_id36:j_id37:1:j_id38').value; |
| | | if(api_id_map['Purpose2__c']){ |
| | | result.Purpose2__c = document.getElementById(api_id_map['Purpose2__c']).value; |
| | | } |
| | | // if(document.getElementById('page:form:j_id5:j_id35:2:j_id36:j_id37:1:j_id38')){ |
| | | // result.Purpose2__c = document.getElementById('page:form:j_id5:j_id35:2:j_id36:j_id37:1:j_id38').value; |
| | | // } |
| | | //富文本框赋值 |
| | | if(getCKEinstance('Customer_sigh_photo__c')){ |
| | | result.Customer_sigh_photo__c = getCKEinstance('Customer_sigh_photo__c').getData() |
| | | } |
| | | if(getCKEinstance('Photo1__c')){ |
| | | result.Photo1__c = getCKEinstance('Photo1__c').getData() |
| | | } |
| | | if(getCKEinstance('Photo2__c')){ |
| | | result.Photo2__c = getCKEinstance('Photo2__c').getData() |
| | | } |
| | | if(getCKEinstance('Photo3__c')){ |
| | | result.Photo3__c = getCKEinstance('Photo3__c').getData() |
| | | } |
| | | if(getCKEinstance('VOC_follow_up_result__c')){ |
| | | result.VOC_follow_up_result__c = getCKEinstance('VOC_follow_up_result__c').getData() |
| | | } |
| | | if(getCKEinstance('VOC_follow_up_result1__c')){ |
| | | result.VOC_follow_up_result1__c = getCKEinstance('VOC_follow_up_result1__c').getData() |
| | | } |
| | | //用户签字的照片 |
| | | if(document.querySelector("[aria-describedby = 'cke_34']")){ |
| | | result.Customer_sigh_photo__c = document.querySelector("[aria-describedby = 'cke_34']").contentWindow.document.getElementsByTagName('body')[0].innerHTML |
| | | } |
| | | //照片1 Photo1__c |
| | | if(document.querySelector("[aria-describedby = 'cke_42']")){ |
| | | result.Photo1__c = document.querySelector("[aria-describedby = 'cke_42']").contentWindow.document.getElementsByTagName('body')[0].innerHTML |
| | | } |
| | | //照片2 Photo2__c |
| | | if(document.querySelector("[aria-describedby = 'cke_75']")){ |
| | | result.Photo2__c = document.querySelector("[aria-describedby = 'cke_75']").contentWindow.document.getElementsByTagName('body')[0].innerHTML |
| | | } |
| | | //照片3 Photo3__c |
| | | if(document.querySelector("[aria-describedby = 'cke_108']")){ |
| | | result.Photo3__c = document.querySelector("[aria-describedby = 'cke_108']").contentWindow.document.getElementsByTagName('body')[0].innerHTML |
| | | } |
| | | //对应结果 VOC_follow_up_result__c cke_38 |
| | | if(document.querySelector("[aria-describedby = 'cke_38']")){ |
| | | result.VOC_follow_up_result__c = document.querySelector("[aria-describedby = 'cke_38']").contentWindow.document.getElementsByTagName('body')[0].innerHTML |
| | | } |
| | | //对应结果第一次 VOC_follow_up_result1__c cke_71 |
| | | if(document.querySelector("[aria-describedby = 'cke_71']")){ |
| | | result.VOC_follow_up_result1__c = document.querySelector("[aria-describedby = 'cke_71']").contentWindow.document.getElementsByTagName('body')[0].innerHTML |
| | | } |
| | | // if(document.querySelector("[aria-describedby = 'cke_34']")){ |
| | | // result.Customer_sigh_photo__c = document.querySelector("[aria-describedby = 'cke_34']").contentWindow.document.getElementsByTagName('body')[0].innerHTML |
| | | // } |
| | | // //照片1 Photo1__c |
| | | // if(document.querySelector("[aria-describedby = 'cke_42']")){ |
| | | // result.Photo1__c = document.querySelector("[aria-describedby = 'cke_42']").contentWindow.document.getElementsByTagName('body')[0].innerHTML |
| | | // } |
| | | // //照片2 Photo2__c |
| | | // if(document.querySelector("[aria-describedby = 'cke_75']")){ |
| | | // result.Photo2__c = document.querySelector("[aria-describedby = 'cke_75']").contentWindow.document.getElementsByTagName('body')[0].innerHTML |
| | | // } |
| | | // //照片3 Photo3__c |
| | | // if(document.querySelector("[aria-describedby = 'cke_108']")){ |
| | | // result.Photo3__c = document.querySelector("[aria-describedby = 'cke_108']").contentWindow.document.getElementsByTagName('body')[0].innerHTML |
| | | // } |
| | | // //对应结果 VOC_follow_up_result__c cke_38 |
| | | // if(document.querySelector("[aria-describedby = 'cke_38']")){ |
| | | // result.VOC_follow_up_result__c = document.querySelector("[aria-describedby = 'cke_38']").contentWindow.document.getElementsByTagName('body')[0].innerHTML |
| | | // } |
| | | // //对应结果第一次 VOC_follow_up_result1__c cke_71 |
| | | // if(document.querySelector("[aria-describedby = 'cke_71']")){ |
| | | // result.VOC_follow_up_result1__c = document.querySelector("[aria-describedby = 'cke_71']").contentWindow.document.getElementsByTagName('body')[0].innerHTML |
| | | // } |
| | | if(result.From__c){ |
| | | result.From__c = result.From__c.replace(/\//g, '-')+':00'; |
| | | } |
| | |
| | | function validateFieldValueFormate() { |
| | | //VOC_Informer_Contact__c,Caller_phone_c__c |
| | | let error_msg = ''; |
| | | let textEmail = "[data-id=' Follow_staff_email__c']"; |
| | | let textPhone1 = "[data-id='VOC_Informer_Contact__c']"; |
| | | let textPhone2 = "[data-id='Caller_phone_c__c']"; |
| | | //Email |
| | | let email = document.querySelector(textEmail); |
| | | if(email && !/^[\w-]{3,12}@[\da-zA-Z]{2,16}\.[a-zA-Z]+$/.test(email.value)){ |
| | | error_msg += ';对应者(邮箱)格式错误'; |
| | | } |
| | | // let textEmail = "[data-id=' Follow_staff_email__c']"; |
| | | // let textPhone1 = "[data-id='VOC_Informer_Contact__c']"; |
| | | // let textPhone2 = "[data-id='Caller_phone_c__c']"; |
| | | // //Email |
| | | // let email = document.querySelector(textEmail); |
| | | // if(email && !/^[\w-]{3,12}@[\da-zA-Z]{2,16}\.[a-zA-Z]+$/.test(email.value)){ |
| | | // error_msg += ';对应者(邮箱)格式错误'; |
| | | // } |
| | | |
| | | let phone1 = document.querySelector(textPhone1); |
| | | if(phone1 && !/^1[3|5|8|7][0-9]\d{4,8}$/.test(phone1.value)){ |
| | | error_msg += ';信息提供人联系方式(电话)号码错误'; |
| | | } |
| | | // let phone1 = document.querySelector(textPhone1); |
| | | // if(phone1 && !/^1[3|5|8|7][0-9]\d{4,8}$/.test(phone1.value)){ |
| | | // error_msg += ';信息提供人联系方式(电话)号码错误'; |
| | | // } |
| | | |
| | | let phone2 = document.querySelector(textPhone2); |
| | | if(phone2 && !/^1[3|5|8|7][0-9]\d{4,8}$/.test(phone2.value)){ |
| | | error_msg += ';联系电话号码错误'; |
| | | } |
| | | // let phone2 = document.querySelector(textPhone2); |
| | | // if(phone2 && !/^1[3|5|8|7][0-9]\d{4,8}$/.test(phone2.value)){ |
| | | // error_msg += ';联系电话号码错误'; |
| | | // } |
| | | |
| | | for(let e of document.getElementsByTagName('select')){ |
| | | for(let op of e.options){ |
| | |
| | | return blankRequiredFields; |
| | | } |
| | | |
| | | var GetEleByClass = function(class_name){ |
| | | let eles = document.getElementsByClassName(class_name); |
| | | if(eles.length > 0) return eles[0]; |
| | | return null; |
| | | } |
| | | |
| | | var GetEleApiName = function(ele){ |
| | | for(let ci in ele.classList){ |
| | | let c = ele.classList[ci]; |
| | | if(c.indexOf('{!ApiPrefix}'+'_')>-1){ |
| | | return c.replace('{!ApiPrefix}'+'_',''); |
| | | } |
| | | } |
| | | return ''; |
| | | } |
| | | |
| | | function IsFormTag(tag_name){ |
| | | if (!tag_name) { |
| | | return false; |
| | | } |
| | | return ['input','select','textarea'].indexOf(tag_name.toLowerCase())>-1; |
| | | } |
| | | |
| | | function IsFormElement(e){ |
| | | return IsFormTag(e.tagName); |
| | | } |
| | | |
| | | //4.获取要加密的字段 |
| | | function getPIPayload(reportJson) { |
| | | let reportPayloadList = []; |
| | |
| | | //5.新建或编辑 |
| | | function ProcessPI(reportJson, payloadForNewPI) { |
| | | blockme(); |
| | | if ({!isNewMode}) { |
| | | if ({!isNewMode} || {!isCloneMode} || !'{!AWSDataId}') {//Add by Li Jun for PIPL 20220413 |
| | | NewPIToAWS(reportJson, payloadForNewPI) |
| | | }else { |
| | | UpdatePIToAWS(reportJson, payloadForNewPI) |
| | |
| | | payloadJson.age_Encrypted__c = result.object[0].ageEncrypt; |
| | | payloadJson.Medical_History_Encrypted__c = result.object[0].medicalHistoryEncrypt; |
| | | payloadJson.sex_Encrypted__c = result.object[0].sexEncrypt; |
| | | if (isNewMode) { |
| | | if (isNewMode || {!isCloneMode}||!'{!AWSDataId}') {//Add by Li Jun for PIPL 20220413 |
| | | payloadJson.AWS_Data_Id__c = result.object[0].dataId; |
| | | delete payloadJson.OwnerId; |
| | | } else { |
| | | payloadJson.AWS_Data_Id__c = '{!AWSDataId}'; |
| | | } |
| | | if('{!rtTypeId}'){ |
| | | payloadJson.RecordTypeId = '{!rtTypeId}';//Add by Li Jun for Record Type Issue 20220421 |
| | | } |
| | | return payloadJson; |
| | | } |
| | |
| | | <img src="/img/s.gif" alt="" class="minWidth" title="" width="1" height="1" /> |
| | | <h2 class="mainTitle">报告书编辑</h2> |
| | | </td> |
| | | <td class="pbButton" id="topButtonRow"> |
| | | <td class="pbButton" id="topButtonRow" style="pointer-events: none; opacity: 0.4;"> |
| | | <input class="btn" type="Button" value="保存" onclick="saveReportProcess('Save')" /> |
| | | <input class="btn" type="Button" value="保存并新建" onclick="saveReportProcess('SaveAndNew')" /> |
| | | <apex:commandButton action="{!cancel}" value="取消" /> |
| | |
| | | |
| | | <!--Each section has layoutFields, let's iterate them as well--> |
| | | <apex:repeat value="{!layoutSection.layoutFields}" var="layoutField"> |
| | | <apex:inputField html-data-id="{!layoutField.fieldAPI}" styleClass="{!layoutField.fieldAPI}" value="{!Report__c[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)}" |
| | | <!-- <apex:inputField html-title="{!layoutField.fieldAPI}" html-data-id="{!layoutField.fieldAPI}" styleClass="{!ApiPrefix} {!ApiPrefix}_{!layoutField.fieldAPI}" value="{!Report__c[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)}" |
| | | required="{!layoutField.isRequired}" /> --> |
| | | <apex:inputField styleClass="PIBackApi PIBackApi_{!layoutField.fieldAPI}" html-data-id="{!layoutField.fieldAPI}" value="{!Report__c[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)&&isNewMode}" |
| | | required="{!layoutField.isRequired}" /> |
| | | <apex:inputField styleClass="PIBackApi PIBackApi_{!layoutField.fieldAPI}" html-data-id="{!layoutField.fieldAPI}" value="{!Report__c[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)&¬(isNewMode)&&layoutField.fieldAPI!='RecordTypeId'}" |
| | | required="{!layoutField.isRequired}" /> |
| | | <apex:outputField styleClass="PIBackApi PIBackApi_{!layoutField.fieldAPI}" html-data-id="{!layoutField.fieldAPI}" value="{!Report__c[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)&¬(isNewMode)&&layoutField.fieldAPI=='RecordTypeId'}" |
| | | /> |
| | | <apex:pageblocksectionitem rendered="{!layoutField.isPlaceHolder}"> |
| | | </apex:pageblocksectionitem> |
| | | </apex:repeat> |
| | |
| | | </apex:pageBlockSection> |
| | | </apex:repeat> |
| | | <script> |
| | | var init_nodes = document.getElementsByClassName("PIBackApi"); |
| | | var api_id_map={}; |
| | | for(let ei in init_nodes){ |
| | | let e = init_nodes[ei]; |
| | | if(IsFormElement(e)){ |
| | | if(e.getAttribute("multiple") != 'multiple' || e.style.display == 'none' && e.id.indexOf('selected') < 0){ |
| | | api_id_map[GetEleApiName(e)] = e.id; |
| | | } |
| | | |
| | | } |
| | | } |
| | | console.log(api_id_map); |
| | | sfdcPage.appendToOnloadQueue(function () { |
| | | //判断是否为只读选项 |
| | | var layoutSections = JSON.parse('{!layoutSectionsStr}'); |
| | |
| | | if('{!no1Name}' != '' && '{!no1Id}' != ''){ |
| | | console.log('name = '+'{!no1Name}') |
| | | console.log('Id = '+'{!no1Id}') |
| | | document.querySelector("[data-id='Loaner_request_no1__c']").value = '{!no1Name}' |
| | | document.getElementById(document.querySelector("[data-id='Loaner_request_no1__c']").id + '_lkid').value = '{!no1Id}' |
| | | if(document.querySelector("[data-id='Loaner_request_no1__c']")){ |
| | | document.querySelector("[data-id='Loaner_request_no1__c']").value = '{!no1Name}' |
| | | document.getElementById(document.querySelector("[data-id='Loaner_request_no1__c']").id + '_lkid').value = '{!no1Id}' |
| | | } |
| | | } |
| | | |
| | | |
| | | document.getElementById('topButtonRow').style = ''; |
| | | document.getElementById('bottomButtonRow').style = ''; |
| | | |
| | | let previous_value = {}; |
| | | jQuery(".lookupInput input").each(function(i,e){ |
| | | let je =jQuery(e); |
| | |
| | | <tr> |
| | | <td class="pbTitle"> |
| | | <img src="/img/s.gif" alt="" class="minWidth" title="" width="1" height="1" /> </td> |
| | | <td class="pbButtonb" id="bottomButtonRow"> |
| | | <td class="pbButtonb" id="bottomButtonRow" style="pointer-events: none; opacity: 0.4;"> |
| | | <input class="btn" type="Button" value="保存" onclick="saveReportProcess('Save')" /> |
| | | <input class="btn" type="Button" value="保存并新建" onclick="saveReportProcess('SaveAndNew')" /> |
| | | <apex:commandButton action="{!cancel}" value="取消" /> |
| | |
| | | |
| | | //payloadJson.AWS_Data_Id__c = r.object[0].dataId; |
| | | payloadJson.AWS_Data_Id__c = '{!AWSDataId}'; |
| | | if (isNewMode) { |
| | | if (isNewMode || {!isCloneMode}) { |
| | | payloadJson.AWS_Data_Id__c = r.object[0].dataId; |
| | | delete payloadJson.OwnerId; |
| | | } else { |
| | | payloadJson.AWS_Data_Id__c = '{!AWSDataId}'; |
| | | } |
| | | if('{!rtTypeId}'){ |
| | | payloadJson.RecordTypeId = '{!rtTypeId}';//Add by zhj for Record Type Issue 20220421 |
| | | } |
| | | return payloadJson; |
| | | }, |
| | |
| | | var VLookUpFields = {! VLookUpFieldsJson}; |
| | | function ProcessPI(sobjJson, payloadForNewPI) { |
| | | blockme(); |
| | | if ({!isNewMode}) { |
| | | if ({!isNewMode} || {!isCloneMode}) { |
| | | NewPIToAWS(sobjJson, payloadForNewPI) |
| | | }else { |
| | | UpdatePIToAWS(sobjJson, payloadForNewPI) |
| | |
| | | |
| | | function validateFieldValueFormate() { |
| | | let error_msg = ''; |
| | | let textEmail = "[data-id='Email']"; |
| | | let textPhone = "[data-id='Phone']"; |
| | | //Email |
| | | let email = document.querySelector(textEmail); |
| | | if(email && !/^[\w-]{3,12}@[\da-zA-Z]{2,16}\.[a-zA-Z]+$/.test(email.value)){ |
| | | error_msg += ';邮件格式错误'; |
| | | } |
| | | let phone = document.querySelector(textPhone); |
| | | // let textEmail = "[data-id='Email']"; |
| | | // let textPhone = "[data-id='Phone']"; |
| | | // //Email |
| | | // let email = document.querySelector(textEmail); |
| | | // if(email && !/^[\w-]{3,12}@[\da-zA-Z]{2,16}\.[a-zA-Z]+$/.test(email.value)){ |
| | | // error_msg += ';邮件格式错误'; |
| | | // } |
| | | // let phone = document.querySelector(textPhone); |
| | | |
| | | if(phone && !/^1[3|5|8|7][0-9]\d{4,8}$/.test(phone.value)){ |
| | | error_msg += ';电话号码错误'; |
| | | } |
| | | // if(phone && !/^1[3|5|8|7][0-9]\d{4,8}$/.test(phone.value)){ |
| | | // error_msg += ';电话号码错误'; |
| | | // } |
| | | |
| | | for(let e of document.getElementsByTagName('select')){ |
| | | for(let op of e.options){ |
| | |
| | | <div class="ptBody"> |
| | | <div class="content"> |
| | | <img src="/img/s.gif" alt="{! SobjectLabel}" class="pageTitleIcon" title="{! SobjectLabel}" /> |
| | | <h1 class="pageType">{! SobjectLabel}<apex:outputText rendered="{!isNewMode}">{!$Label.New}</apex:outputText><apex:outputText rendered="{!not(isNewMode)}">{!$Label.Edit}</apex:outputText> |
| | | <h1 class="pageType">{! SobjectLabel}<apex:outputText rendered="{!isNewMode || isCloneMode}">{!$Label.New}</apex:outputText><apex:outputText rendered="{!not(isNewMode || isCloneMode)}">{!$Label.Edit}</apex:outputText> |
| | | <span class="titleSeparatingColon">:</span> |
| | | </h1> |
| | | <h2 class="pageDescription"> <apex:outputText rendered="{!isNewMode}">{!$Label.New}</apex:outputText><apex:outputText rendered="{!not(isNewMode)}">{!$Label.Edit}</apex:outputText>{! SobjectLabel}</h2> |
| | | <h2 class="pageDescription"> <apex:outputText rendered="{!isNewMode || isCloneMode}">{!$Label.New}</apex:outputText><apex:outputText rendered="{!not(isNewMode || isCloneMode)}">{!$Label.Edit}</apex:outputText>{! SobjectLabel}</h2> |
| | | <div class="blank"> </div> |
| | | </div> |
| | | <div class="links"> |
| | |
| | | <tr> |
| | | <td class="pbTitle"> |
| | | <img src="/img/s.gif" alt="" class="minWidth" title="" width="1" height="1" /> |
| | | <h2 class="mainTitle">{! SobjectLabel}<apex:outputText rendered="{!isNewMode}">{!$Label.New}</apex:outputText><apex:outputText rendered="{!not(isNewMode)}">{!$Label.Edit}</apex:outputText></h2> |
| | | <h2 class="mainTitle">{! SobjectLabel}<apex:outputText rendered="{!isNewMode || isCloneMode}">{!$Label.New}</apex:outputText><apex:outputText rendered="{!not(isNewMode || isCloneMode)}">{!$Label.Edit}</apex:outputText></h2> |
| | | </td> |
| | | <td class="pbButton" id="topButtonRow"> |
| | | <td class="pbButton" id="topButtonRow" style="pointer-events: none; opacity: 0.4;"> |
| | | <input class="btn" type="Button" value="{!$Label.Save}" onclick="saveSobjectProcess()" /> |
| | | <input class="btn" type="Button" value="{!$Label.SaveAndNew}" onclick="saveSobjectProcess(1)" /> |
| | | <apex:commandButton action="{!cancel}" value="{!$Label.Cancel}" /> |
| | |
| | | |
| | | <!--Each section has layoutFields, let's iterate them as well--> |
| | | <apex:repeat value="{!layoutSection.layoutFields}" var="layoutField"> |
| | | <apex:inputField styleClass="{!ApiPrefix} {!ApiPrefix}_{!layoutField.fieldAPI}" html-data-id="{!layoutField.fieldAPI}" value="{!Tender_information__c[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)}" |
| | | required="{!layoutField.isRequired}" /> |
| | | <apex:inputField styleClass="{!ApiPrefix} {!ApiPrefix}_{!layoutField.fieldAPI}" html-data-id="{!layoutField.fieldAPI}" value="{!Tender_information__c[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)&&isNewMode}" required="{!layoutField.isRequired}" /> |
| | | <apex:inputField styleClass="{!ApiPrefix} {!ApiPrefix}_{!layoutField.fieldAPI}" html-data-id="{!layoutField.fieldAPI}" value="{!Tender_information__c[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)&¬(isNewMode)&&layoutField.fieldAPI!='RecordTypeId'}" required="{!layoutField.isRequired}" /> |
| | | <apex:outputField styleClass="{!ApiPrefix} {!ApiPrefix}_{!layoutField.fieldAPI}" html-data-id="{!layoutField.fieldAPI}" value="{!Tender_information__c[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)&¬(isNewMode)&&layoutField.fieldAPI=='RecordTypeId'}" /> |
| | | <apex:pageblocksectionitem rendered="{!layoutField.isPlaceHolder}"> |
| | | </apex:pageblocksectionitem> |
| | | </apex:repeat> |
| | |
| | | } |
| | | } |
| | | //Replace Contact Vlookup Field |
| | | replaceSearchContactLookup(); |
| | | //replaceSearchContactLookup(); |
| | | //Replace Lead Vlookup Field |
| | | replaceSearchLeadLookup(); |
| | | //replaceSearchLeadLookup(); |
| | | document.querySelectorAll("[data-id='OwnerId']")[0].classList.add("disabledbutton"); |
| | | // document.querySelectorAll("[data-id='OwnerId']")[1].classList.add("disabledbutton"); |
| | | document.getElementById('topButtonRow').style = ''; |
| | | document.getElementById('bottomButtonRow').style = ''; |
| | | |
| | | jQuery('a[data-id="OwnerId"]').remove(); |
| | | |
| | |
| | | // clearVlookup('Hospital__c'); |
| | | // } |
| | | // }); |
| | | |
| | | /* |
| | | jQuery("body").on("change","input[data-id='Hospital_Name__c']",function(){ |
| | | setTimeout(() => { |
| | | console.log(document.getElementById(this.id+'_lkid').value); |
| | |
| | | clearVlookup('Hospital__c'); |
| | | } |
| | | }, 50); |
| | | }); |
| | | }); |
| | | */ |
| | | }); |
| | | |
| | | |
| | |
| | | <tr> |
| | | <td class="pbTitle"> |
| | | <img src="/img/s.gif" alt="" class="minWidth" title="" width="1" height="1" /> </td> |
| | | <td class="pbButtonb" id="bottomButtonRow"> |
| | | <td class="pbButtonb" id="bottomButtonRow" style="pointer-events: none; opacity: 0.4;"> |
| | | <input class="btn" type="Button" value="{!$Label.Save}" onclick="saveSobjectProcess()" /> |
| | | <input class="btn" type="Button" value="{!$Label.SaveAndNew}" onclick="saveSobjectProcess()" /> |
| | | <apex:commandButton action="{!cancel}" value="{!$Label.Cancel}" /> |
| | |
| | | payloadJson.Phone_Number_Encrypt__c = r.object[0].phoneNumberEncrypt; |
| | | payloadJson.Direct_Shippment_Address_Encrypt__c = r.object[0].directShippmentAddressEncrypt; |
| | | payloadJson.AWS_Data_Id__c = '{!AWSDataId}'; |
| | | if (isNewMode) { |
| | | if (isNewMode || {!isCloneMode}) { |
| | | payloadJson.AWS_Data_Id__c = r.object[0].dataId; |
| | | delete payloadJson.OwnerId; |
| | | } else { |
| | | payloadJson.AWS_Data_Id__c = '{!AWSDataId}'; |
| | | } |
| | | if('{!rtTypeId}'){ |
| | | payloadJson.RecordTypeId = '{!rtTypeId}';//Add by zhj for Record Type Issue 20220421 |
| | | } |
| | | return payloadJson; |
| | | } |
| | |
| | | // New Or Edit |
| | | function ProcessPI(consumApplyJson, payloadForNewPI) { |
| | | blockme(); |
| | | if ({!isNewMode |
| | | }) { |
| | | if ({!isNewMode} || {!isCloneMode}) { |
| | | NewPIToAWS(consumApplyJson, payloadForNewPI) |
| | | }else { |
| | | UpdatePIToAWS(consumApplyJson, payloadForNewPI) |
| | |
| | | <img src="/img/s.gif" alt="" class="minWidth" title="" width="1" height="1" /> |
| | | <h2 class="mainTitle">耗材备品申请编辑</h2> |
| | | </td> |
| | | <td class="pbButton" id="topButtonRow"> |
| | | <td class="pbButton" id="topButtonRow" style="pointer-events: none; opacity: 0.4;"> |
| | | <input class="btn" type="Button" value="保存" onclick="saveConsumApplyProcess('Save')" /> |
| | | <input class="btn" type="Button" value="保存并新建" onclick="saveConsumApplyProcess('SaveAndNew')" /> |
| | | <apex:commandButton action="{!cancel}" value="取消" /> |
| | |
| | | |
| | | <!--Each section has layoutFields, let's iterate them as well--> |
| | | <apex:repeat value="{!layoutSection.layoutFields}" var="layoutField"> |
| | | <apex:inputField html-data-id="{!layoutField.fieldAPI}" value="{!Consum_Apply__c[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)}" |
| | | <apex:inputField styleClass="PIBackApi PIBackApi_{!layoutField.fieldAPI}" html-data-id="{!layoutField.fieldAPI}" value="{!Consum_Apply__c[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)&&isNewMode}" |
| | | required="{!layoutField.isRequired}" /> |
| | | <apex:inputField styleClass="PIBackApi PIBackApi_{!layoutField.fieldAPI}" html-data-id="{!layoutField.fieldAPI}" value="{!Consum_Apply__c[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)&¬(isNewMode)&&layoutField.fieldAPI!='RecordTypeId'}" |
| | | required="{!layoutField.isRequired}" /> |
| | | <apex:outputField styleClass="PIBackApi PIBackApi_{!layoutField.fieldAPI}" html-data-id="{!layoutField.fieldAPI}" value="{!Consum_Apply__c[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)&¬(isNewMode)&&layoutField.fieldAPI=='RecordTypeId'}" |
| | | /> |
| | | <apex:pageblocksectionitem rendered="{!layoutField.isPlaceHolder}"> |
| | | </apex:pageblocksectionitem> |
| | | </apex:repeat> |
| | |
| | | //Replace Vlookup Field |
| | | replaceSearchContactLookup(); |
| | | document.querySelector("[data-id='OwnerId']").classList.add("disabledbutton"); |
| | | |
| | | document.getElementById('topButtonRow').style = ''; |
| | | document.getElementById('bottomButtonRow').style = ''; |
| | | |
| | | let previous_value = {}; |
| | | jQuery(".lookupInput input").each(function(i,e){ |
| | |
| | | <tr> |
| | | <td class="pbTitle"> |
| | | <img src="/img/s.gif" alt="" class="minWidth" title="" width="1" height="1" /> </td> |
| | | <td class="pbButtonb" id="bottomButtonRow"> |
| | | <td class="pbButtonb" id="bottomButtonRow" style="pointer-events: none; opacity: 0.4;"> |
| | | <input class="btn" type="Button" value="保存" onclick="saveConsumApplyProcess('Save')" /> |
| | | <input class="btn" type="Button" value="保存并新建" onclick="saveConsumApplyProcess('SaveAndNew')" /> |
| | | <apex:commandButton action="{!cancel}" value="取消" /> |
| | |
| | | <!-- |
| | | @description : |
| | | @author : ChangeMeIn@UserSettingsUnder.SFDoc |
| | | @group : |
| | | @last modified on : 04-02-2022 |
| | | @last modified by : ChangeMeIn@UserSettingsUnder.SFDoc |
| | | --> |
| | | <apex:page standardController="Consum_Apply_Equipment_Set_Detail__c" extensions="NewConsumApplyEquipSetDetailController" id="page"> |
| | | <apex:includeScript value="{! URLFOR($Resource.AWSService, 'AWSService.js') }" /> |
| | | <apex:stylesheet value="{!URLFOR($Resource.blockUIcss)}"/> |
| | |
| | | } |
| | | </style> |
| | | <script> |
| | | AWSService.sfSessionId = '{!GETSESSIONID()}'; |
| | | //Initial Required Information |
| | | var staticResources = JSON.parse('{!staticResource}'); |
| | | var requiredFieldAPIList = JSON.parse('{!requiredFieldAPIListStr}'); |
| | |
| | | payloadJson.Trial_User__c = r.object[0].trialUser; |
| | | payloadJson.Trial_User_Encrypt__c = r.object[0].trialUserEncrypt; |
| | | payloadJson.AWS_Data_Id__c = '{!AWSDataId}'; |
| | | if (isNewMode) { |
| | | if (isNewMode || {!isCloneMode}) { |
| | | payloadJson.AWS_Data_Id__c = r.object[0].dataId; |
| | | } else { |
| | | payloadJson.AWS_Data_Id__c = '{!AWSDataId}'; |
| | | } |
| | | debugger |
| | | if('{!rtTypeId}'){ |
| | | payloadJson.RecordTypeId = '{!rtTypeId}';//Add by zhj for Record Type Issue 20220421 |
| | | } |
| | | return payloadJson; |
| | | } |
| | | |
| | | // New Or Edit |
| | | function ProcessPI(consumApplyJson, payloadForNewPI) { |
| | | blockme(); |
| | | if ({!isNewMode |
| | | }) { |
| | | if ({!isNewMode} || {!isCloneMode}) { |
| | | NewPIToAWS(consumApplyJson, payloadForNewPI) |
| | | }else { |
| | | UpdatePIToAWS(consumApplyJson, payloadForNewPI) |
| | |
| | | <img src="/img/s.gif" alt="" class="minWidth" title="" width="1" height="1" /> |
| | | <h2 class="mainTitle">耗材备品配套一览明细编辑</h2> |
| | | </td> |
| | | <td class="pbButton" id="topButtonRow"> |
| | | <td class="pbButton" id="topButtonRow" style="pointer-events: none; opacity: 0.4;"> |
| | | <input class="btn" type="Button" value="保存" onclick="saveConsumApplyProcess('Save')" /> |
| | | <input class="btn" type="Button" value="保存并新建" onclick="saveConsumApplyProcess('SaveAndNew')" /> |
| | | <apex:commandButton action="{!cancel}" value="取消" /> |
| | |
| | | |
| | | <!--Each section has layoutFields, let's iterate them as well--> |
| | | <apex:repeat value="{!layoutSection.layoutFields}" var="layoutField"> |
| | | <apex:inputField html-data-id="{!layoutField.fieldAPI}" value="{!Consum_Apply_Equipment_Set_Detail__c[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)}" |
| | | <apex:inputField styleClass="PIBackApi PIBackApi_{!layoutField.fieldAPI}" html-data-id="{!layoutField.fieldAPI}" value="{!Consum_Apply_Equipment_Set_Detail__c[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)&&isNewMode}" |
| | | required="{!layoutField.isRequired}" /> |
| | | <apex:inputField styleClass="PIBackApi PIBackApi_{!layoutField.fieldAPI}" html-data-id="{!layoutField.fieldAPI}" value="{!Consum_Apply_Equipment_Set_Detail__c[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)&¬(isNewMode)&&layoutField.fieldAPI!='RecordTypeId'}" |
| | | required="{!layoutField.isRequired}" /> |
| | | <apex:outputField styleClass="PIBackApi PIBackApi_{!layoutField.fieldAPI}" html-data-id="{!layoutField.fieldAPI}" value="{!Consum_Apply_Equipment_Set_Detail__c[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)&¬(isNewMode)&&layoutField.fieldAPI=='RecordTypeId'}" |
| | | /> |
| | | <apex:pageblocksectionitem rendered="{!layoutField.isPlaceHolder}"> |
| | | </apex:pageblocksectionitem> |
| | | </apex:repeat> |
| | |
| | | <script> |
| | | //Append Page |
| | | sfdcPage.appendToOnloadQueue(function () { |
| | | //判断是否为只读选项 |
| | | var layoutSections = JSON.parse('{!layoutSectionsStr}'); |
| | | for (let m = 0; m < layoutSections.length; m++) { |
| | | let layoutSection = layoutSections[m].layoutFields; |
| | | for (let n = 0; n < layoutSection.length; n++) { |
| | | let layoutField = layoutSection[n]; |
| | | if (layoutField.fieldAPI != '' && document.querySelector("[data-id='"+layoutField.fieldAPI+"']") != null) { |
| | | document.querySelector("[data-id='"+layoutField.fieldAPI+"']").disabled = !(layoutField.editableField); |
| | | for (let m = 0; m < layoutSections.length; m++) { |
| | | let layoutSection = layoutSections[m].layoutFields; |
| | | for (let n = 0; n < layoutSection.length; n++) { |
| | | let layoutField = layoutSection[n]; |
| | | if (layoutField.fieldAPI != '' && document.querySelector("[data-id='"+layoutField.fieldAPI+"']") != null) { |
| | | let e = document.querySelector("[data-id='"+layoutField.fieldAPI+"']"); |
| | | e.disabled = !(layoutField.editableField); |
| | | if (!(layoutField.editableField)) { |
| | | if (e.getAttribute("multiple") && e.getAttribute("multiple") == 'multiple') { |
| | | e.parentNode.classList.add("disabledbutton"); |
| | | } |
| | | if (e.tagName == 'DIV') { |
| | | e.classList.add("disabledbutton"); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | //2. Query AWS Data by dataId |
| | | console.log('Mode for consumApply Page:' + {!isNewMode}); |
| | | if (!{!isNewMode}) { |
| | | blockme(); |
| | | QueryConsumApplyFromAWS(); |
| | | }; |
| | | document.querySelector("[data-id='OwnerId']").classList.add("disabledbutton"); |
| | | |
| | | jQuery(".lookupInput").each(function(i,e){ |
| | | let je =jQuery(e).find('input'); |
| | | je.attr("readonly",""); |
| | | je.css("background","unset"); |
| | | //document.querySelector("[data-id='OwnerId']").classList.add("disabledbutton"); |
| | | |
| | | document.getElementById('topButtonRow').style = ''; |
| | | document.getElementById('bottomButtonRow').style = ''; |
| | | //zhj 2022/04/11 start |
| | | // jQuery(".lookupInput").each(function(i,e){ |
| | | // let je =jQuery(e).find('input'); |
| | | // je.attr("readonly",""); |
| | | // je.css("background","unset"); |
| | | |
| | | let dataid = je.attr('data-id'); |
| | | if(['Hospital_Name__c','Department_Class__c','OwnerId'].indexOf(dataid) > -1) return; |
| | | jQuery(e).children(":last-child").before('<img class="closeIcon" data-id="'+dataid+'" generate="" alt="Clear" src="/s.gif" style="display: inline-block;">'); |
| | | }) |
| | | // let dataid = je.attr('data-id'); |
| | | // if(['Hospital_Name__c','Department_Class__c','OwnerId'].indexOf(dataid) > -1) return; |
| | | // jQuery(e).children(":last-child").before('<img class="closeIcon" data-id="'+dataid+'" generate="" alt="Clear" src="/s.gif" style="display: inline-block;">'); |
| | | // }) |
| | | |
| | | jQuery(".lookupInput").on("mouseenter","img[generate]",function(e){ |
| | | this.className = "closeIconOn"; |
| | | }); |
| | | // jQuery(".lookupInput").on("mouseenter","img[generate]",function(e){ |
| | | // this.className = "closeIconOn"; |
| | | // }); |
| | | |
| | | jQuery(".lookupInput").on("mouseleave","img[generate]",function(e){ |
| | | this.className = "closeIcon" |
| | | }); |
| | | // jQuery(".lookupInput").on("mouseleave","img[generate]",function(e){ |
| | | // this.className = "closeIcon" |
| | | // }); |
| | | |
| | | jQuery(".lookupInput").on("click","img[generate]",function(e){ |
| | | let id = jQuery("input[data-id='"+jQuery(this).attr("data-id")+ "']").attr("id"); |
| | | let input = document.getElementById(id); |
| | | if(input){ |
| | | input.value = ''; |
| | | let hidden = document.getElementById(id+'_lkid'); |
| | | if(hidden){ |
| | | hidden.value = ''; |
| | | } |
| | | } |
| | | }); |
| | | |
| | | // jQuery(".lookupInput").on("click","img[generate]",function(e){ |
| | | // let id = jQuery("input[data-id='"+jQuery(this).attr("data-id")+ "']").attr("id"); |
| | | // let input = document.getElementById(id); |
| | | // if(input){ |
| | | // input.value = ''; |
| | | // let hidden = document.getElementById(id+'_lkid'); |
| | | // if(hidden){ |
| | | // hidden.value = ''; |
| | | // } |
| | | // } |
| | | // }); |
| | | //zhj 2022/04/11 end |
| | | }); |
| | | </script> |
| | | <div class="pbBottomButtons"> |
| | |
| | | <tr> |
| | | <td class="pbTitle"> |
| | | <img src="/img/s.gif" alt="" class="minWidth" title="" width="1" height="1" /> </td> |
| | | <td class="pbButtonb" id="bottomButtonRow"> |
| | | <td class="pbButtonb" id="bottomButtonRow" style="pointer-events: none; opacity: 0.4;"> |
| | | <input class="btn" type="Button" value="保存" onclick="saveConsumApplyProcess('Save')" /> |
| | | <input class="btn" type="Button" value="保存并新建" onclick="saveConsumApplyProcess('SaveAndNew')" /> |
| | | <apex:commandButton action="{!cancel}" value="取消" /> |
| | |
| | | <!-- |
| | | @description : |
| | | @author : ChangeMeIn@UserSettingsUnder.SFDoc |
| | | @group : |
| | | @last modified on : 03-24-2022 |
| | | @last modified by : ChangeMeIn@UserSettingsUnder.SFDoc |
| | | --> |
| | | <apex:page standardController="On_Call__c" extensions="OnCallController" id="page"> |
| | | <apex:includeScript value="{! URLFOR($Resource.AWSService, 'AWSService.js') }" /> |
| | | <apex:stylesheet value="{!URLFOR($Resource.blockUIcss)}"/> |
| | |
| | | var queryBack = function queryBack(data) { |
| | | console.log('data = ' + data); |
| | | //document.querySelector("[id='page:form:pageBlock:pageBlockSection:j_id1:0:j_id2']").value = data.object.callerPhone; |
| | | document.querySelector("[id='page:form:block:j_id34:0:j_id35:j_id36:5:j_id37']").value = data.object.callerPhone; //20220404 By Chen Yanan |
| | | document.getElementById(api_id_map['Caller_phone__c']).value = data.object.callerPhone; //20220404 By Chen Yanan |
| | | document.querySelector("[data-id='Responsible_Person_HP__c']").value = data.object.responsiblePersonHP; |
| | | unblockUI(); |
| | | }; |
| | |
| | | payloadJson.Caller_Phone_Encrypt__c = r.object[0].callerPhoneEncrypt; |
| | | payloadJson.Responsible_PersonHP_Encrypt__c = r.object[0].responsiblePersonHPEncrypt; |
| | | payloadJson.AWS_Data_Id__c = '{!AWSDataId}'; |
| | | if (isNewMode) { |
| | | if (isNewMode|| {!isCloneMode} ||!'{!AWSDataId}') {//Add by Li Jun for PIPL 20220413 |
| | | payloadJson.AWS_Data_Id__c = r.object[0].dataId; |
| | | delete payloadJson.OwnerId; |
| | | } else { |
| | | payloadJson.AWS_Data_Id__c = '{!AWSDataId}'; |
| | | } |
| | | debugger |
| | | if('{!rtTypeId}'){ |
| | | payloadJson.RecordTypeId = '{!rtTypeId}';//Add by zhj for Record Type Issue 20220421 |
| | | } |
| | | return payloadJson; |
| | | } |
| | | |
| | | // New Or Edit |
| | | function ProcessPI(onCallJson, payloadForNewPI) { |
| | | blockme(); |
| | | if ({!isNewMode |
| | | }) { |
| | | if ({!isNewMode} || {!isCloneMode} ||!'{!AWSDataId}') {//Add by Li Jun for PIPL 20220413 |
| | | NewPIToAWS(onCallJson, payloadForNewPI) |
| | | }else { |
| | | UpdatePIToAWS(onCallJson, payloadForNewPI) |
| | |
| | | errorMsgNode.innerText = ''; |
| | | errorMsgNode.className = ''; |
| | | } |
| | | var GetEleApiName = function(ele){ |
| | | for(let ci in ele.classList){ |
| | | let c = ele.classList[ci]; |
| | | if(c.indexOf('PIBackApi'+'_')>-1){ |
| | | return c.replace('PIBackApi'+'_',''); |
| | | } |
| | | } |
| | | return ''; |
| | | } |
| | | |
| | | function IsFormTag(tag_name){ |
| | | if (!tag_name) { |
| | | return false; |
| | | } |
| | | return ['input','select','textarea'].indexOf(tag_name.toLowerCase())>-1; |
| | | } |
| | | |
| | | function IsFormElement(e){ |
| | | return IsFormTag(e.tagName); |
| | | } |
| | | </script> |
| | | <div class="bPageTitle"> |
| | | <div class="ptBody"> |
| | |
| | | <img src="/img/s.gif" alt="" class="minWidth" title="" width="1" height="1" /> |
| | | <h2 class="mainTitle">OnCall编辑</h2> |
| | | </td> |
| | | <td class="pbButton" id="topButtonRow"> |
| | | <td class="pbButton" id="topButtonRow" style="pointer-events: none; opacity: 0.4;"> |
| | | <input class="btn" type="Button" value="保存" onclick="saveOnCallProcess('Save')" /> |
| | | <input class="btn" type="Button" value="保存并新建" onclick="saveOnCallProcess('SaveAndNew')" /> |
| | | <apex:commandButton action="{!cancel}" value="取消" /> |
| | |
| | | |
| | | <!--Each section has layoutFields, let's iterate them as well--> |
| | | <apex:repeat value="{!layoutSection.layoutFields}" var="layoutField"> |
| | | <apex:inputField html-data-id="{!layoutField.fieldAPI}" value="{!On_Call__c[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)}" |
| | | <apex:inputField styleClass="PIBackApi PIBackApi_{!layoutField.fieldAPI}" html-data-id="{!layoutField.fieldAPI}" value="{!On_Call__c[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)&&isNewMode}" |
| | | required="{!layoutField.isRequired}" /> |
| | | <apex:inputField styleClass="PIBackApi PIBackApi_{!layoutField.fieldAPI}" html-data-id="{!layoutField.fieldAPI}" value="{!On_Call__c[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)&¬(isNewMode)&&layoutField.fieldAPI!='RecordTypeId'}" |
| | | required="{!layoutField.isRequired}" /> |
| | | <apex:outputField styleClass="PIBackApi PIBackApi_{!layoutField.fieldAPI}" html-data-id="{!layoutField.fieldAPI}" value="{!On_Call__c[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)&¬(isNewMode)&&layoutField.fieldAPI=='RecordTypeId'}" |
| | | /> |
| | | <apex:pageblocksectionitem rendered="{!layoutField.isPlaceHolder}"> |
| | | </apex:pageblocksectionitem> |
| | | </apex:repeat> |
| | |
| | | </apex:pageBlockSection> |
| | | </apex:repeat> |
| | | <script> |
| | | var init_nodes = document.getElementsByClassName("PIBackApi"); |
| | | var api_id_map={}; |
| | | for(let ei in init_nodes){ |
| | | let e = init_nodes[ei]; |
| | | if(IsFormElement(e)){ |
| | | if(e.getAttribute("multiple") != 'multiple' || e.style.display == 'none' && e.id.indexOf('selected') < 0){ |
| | | api_id_map[GetEleApiName(e)] = e.id; |
| | | } |
| | | |
| | | } |
| | | } |
| | | //Append Page |
| | | sfdcPage.appendToOnloadQueue(function () { |
| | | var layoutSections = JSON.parse('{!layoutSectionsStr}'); |
| | |
| | | QueryOnCallFromAWS(); |
| | | }; |
| | | document.querySelector("[data-id='OwnerId']").classList.add("disabledbutton"); |
| | | |
| | | document.getElementById('topButtonRow').style = ''; |
| | | document.getElementById('bottomButtonRow').style = ''; |
| | | |
| | | jQuery(".lookupInput").each(function(i,e){ |
| | | let je =jQuery(e).find('input'); |
| | |
| | | <tr> |
| | | <td class="pbTitle"> |
| | | <img src="/img/s.gif" alt="" class="minWidth" title="" width="1" height="1" /> </td> |
| | | <td class="pbButtonb" id="bottomButtonRow"> |
| | | <td class="pbButtonb" id="bottomButtonRow" style="pointer-events: none; opacity: 0.4;"> |
| | | <input class="btn" type="Button" value="保存" onclick="saveOnCallProcess('Save')" /> |
| | | <input class="btn" type="Button" value="保存并新建" onclick="saveOnCallProcess('SaveAndNew')" /> |
| | | <apex:commandButton action="{!cancel}" value="取消" /> |
| | |
| | | <apex:inputHidden id="changedAfterPrint" value="{!changedAfterPrint}"/> |
| | | <apex:inputHidden id="changedAfterBid" value="{!changedAfterBid}"/> |
| | | <apex:inputHidden id="filg" value="{!filg}" /> |
| | | <apex:inputHidden id="SkipQuotefilg" value="{!SkipQuotefilg}" /> |
| | | <apex:inputHidden id="productStatusUpdated" value="{!productStatusUpdated}"/> |
| | | <!-- 20211011 lt add MarkRed();--> |
| | | <apex:actionFunction action="{!setProductEntry}" name="setProductEntry" reRender="mainForm" oncomplete="unblockUI();calPriceAll();MarkRed();"> |
| | |
| | | <!-- |
| | | @description : |
| | | @author : Dennis |
| | | @group : |
| | | @last modified on : 04-01-2022 |
| | | @last modified by : ChangeMeIn@UserSettingsUnder.SFDoc |
| | | --> |
| | | <apex:page standardController="Rental_Apply__c" extensions="RentalApplyController" id="page"> |
| | | <apex:stylesheet value="{!URLFOR($Resource.blockUIcss)}"/> |
| | | <apex:includeScript value="{! URLFOR($Resource.AWSService, 'AWSService.js') }" /> |
| | |
| | | document.querySelector("[data-id='Phone_number__c']").value = data.object.phoneNumber; |
| | | document.querySelector("[data-id='direct_shippment_address__c']").value = data.object.directShippmentAddress; |
| | | unblockUI(); |
| | | enableButtonStatus();//Add by Li Jun 20220418 |
| | | }; |
| | | |
| | | //Check If Insert Or Update |
| | |
| | | payloadJson.Phone_Number_Encrypt__c = r.object[0].phoneNumberEncrypt; |
| | | payloadJson.Direct_Shippment_Address_Encrypt__c = r.object[0].directShippmentAddressEncrypt; |
| | | payloadJson.AWS_Data_Id__c = '{!AWSDataId}'; |
| | | if (isNewMode) { |
| | | if('{!rtTypeId}'){ |
| | | payloadJson.RecordTypeId = '{!rtTypeId}';//Add by Li Jun for Record Type Issue 20220419 |
| | | } |
| | | |
| | | if (isNewMode || {!isCloneMode}) { |
| | | payloadJson.AWS_Data_Id__c = r.object[0].dataId; |
| | | delete payloadJson.OwnerId; |
| | | } else { |
| | | payloadJson.AWS_Data_Id__c = '{!AWSDataId}'; |
| | | } |
| | | debugger |
| | | if('{!rtTypeId}'){ |
| | | payloadJson.RecordTypeId = '{!rtTypeId}';//Add by zhj for Record Type Issue 20220421 |
| | | } |
| | | return payloadJson; |
| | | } |
| | | //Add Button status start 20220418 |
| | | function enableButton(obj) { |
| | | obj.classList.remove("btnDisabled"); |
| | | } |
| | | |
| | | function disableButton(obj) { |
| | | obj.classList.add("btnDisabled"); |
| | | } |
| | | |
| | | function disableButtonStatus() { |
| | | let btnList = document.getElementsByClassName('btn'); |
| | | for (let i = 0; i < btnList.length; i++) { |
| | | disableButton(btnList[i]); |
| | | } |
| | | } |
| | | |
| | | function enableButtonStatus() { |
| | | let btnList = document.getElementsByClassName('btn'); |
| | | for (let i = 0; i < btnList.length; i++) { |
| | | enableButton(btnList[i]); |
| | | } |
| | | } |
| | | disableButtonStatus(); |
| | | //Add Button status end 20220418 |
| | | // New Or Edit |
| | | function ProcessPI(rentalApplyJson, payloadForNewPI) { |
| | | blockme(); |
| | | if ({!isNewMode |
| | | }) { |
| | | if ({!isNewMode} || {!isCloneMode}) { |
| | | NewPIToAWS(rentalApplyJson, payloadForNewPI) |
| | | }else { |
| | | UpdatePIToAWS(rentalApplyJson, payloadForNewPI) |
| | |
| | | } |
| | | return ['input','select','textarea'].indexOf(tag_name.toLowerCase())>-1; |
| | | } |
| | | |
| | | function IsFormElement(e){ |
| | | |
| | | function IsFormElement(e){ |
| | | return IsFormTag(e.tagName); |
| | | } |
| | | |
| | |
| | | // } |
| | | // result.HP_received_sign_rich__c = CKEDITOR.instances["page:form:block:j_id34:12:j_id35:j_id36:1:j_id37:textAreaDelegate_HP_received_sign_rich__c"].getData(); |
| | | // if(document.querySelector("[aria-describedby = 'cke_71']")){ |
| | | // result. Extension_List_RentalApply__c = document.querySelector("[aria-describedby = 'cke_71']").contentWindow.document.getElementsByTagName('body')[0].innerHTML |
| | | // result. Extension_List_RentalApply__c = document.querySelector("[aria-describedby = 'cke_71']").contentWindow.document.getElementsByTagName('body')[0].innerHTML |
| | | // } |
| | | for (let index = 0; index < nodelist.length; index++) { |
| | | if (VLookUpFields.has(nodelist[index].getAttribute("data-id"))) { |
| | | console.log(nodelist[index].id.indexOf('lkwgt')); |
| | | if (nodelist[index].id.indexOf('lkwgt') == -1) { |
| | | let vlookUpNodeId = nodelist[index].id + '_lkid'; |
| | | let vlookUpNodeValue = document.getElementById(vlookUpNodeId).value; |
| | | result[nodelist[index].getAttribute("data-id")] = vlookUpNodeValue; |
| | | if(document.getElementById(vlookUpNodeId)){ |
| | | let vlookUpNodeValue = document.getElementById(vlookUpNodeId).value; |
| | | result[nodelist[index].getAttribute("data-id")] = vlookUpNodeValue; |
| | | } |
| | | } |
| | | } else if (nodelist[index].type == 'checkbox') { |
| | | result[nodelist[index].getAttribute("data-id")] = nodelist[index].checked; |
| | |
| | | } |
| | | } |
| | | } |
| | | if(document.querySelector("[id='page:form:block:j_id34:2:j_id35:j_id36:2:j_id37']")!=null){ |
| | | result.demo_purpose2__c = document.querySelector("[id='page:form:block:j_id34:2:j_id35:j_id36:2:j_id37']").value; |
| | | if(api_id_map['demo_purpose2__c']){ |
| | | result.demo_purpose2__c = document.getElementById(api_id_map['demo_purpose2__c']).value!='_\x01_'?document.getElementById(api_id_map['demo_purpose2__c']).value:''; |
| | | } |
| | | if(document.querySelector("[id='page:form:block:j_id34:0:j_id35:j_id36:18:j_id37']")!=null){ |
| | | result.ToAgency__c = document.querySelector("[id='page:form:block:j_id34:0:j_id35:j_id36:18:j_id37']").value; |
| | | if(api_id_map['ToAgency__c']){ |
| | | result.ToAgency__c = document.getElementById(api_id_map['ToAgency__c']).value!='_\x01_'?document.getElementById(api_id_map['ToAgency__c']).value:''; |
| | | } |
| | | //document.querySelector("[id='page:form:block:j_id34:0:j_id35:j_id36:18:j_id37']").disabled =true; // Commented By Li Jun 20220304 |
| | | if(document.querySelector("[id='page:form:block:j_id34:13:j_id35:j_id36:1:j_id37']")!=null){ |
| | | result.Loaner_cancel_reason__c = document.querySelector("[id='page:form:block:j_id34:13:j_id35:j_id36:1:j_id37']").value; |
| | | }else{ |
| | | if(document.querySelector("[id='page:form:block:j_id34:11:j_id35:j_id36:1:j_id37']")!=null){ |
| | | result.Loaner_cancel_reason__c = document.querySelector("[id='page:form:block:j_id34:11:j_id35:j_id36:1:j_id37']").value; |
| | | } |
| | | if(api_id_map['Loaner_cancel_reason__c']){ |
| | | result.Loaner_cancel_reason__c = document.getElementById(api_id_map['Loaner_cancel_reason__c']).value!='_\x01_'?document.getElementById(api_id_map['Loaner_cancel_reason__c']).value:''; |
| | | } |
| | | // else{ |
| | | // if(document.querySelector("[id='page:form:block:j_id34:11:j_id35:j_id36:1:j_id37']")!=null){ |
| | | // result.Loaner_cancel_reason__c = document.querySelector("[id='page:form:block:j_id34:11:j_id35:j_id36:1:j_id37']").value; |
| | | // } |
| | | // } |
| | | // //格式化时间 |
| | | // if(result.HP_received_sign_day__c){ |
| | | // result.HP_received_sign_day__c = result.HP_received_sign_day__c.replace(/\//g, '-')+':00'; |
| | |
| | | if(e){ |
| | | result.Extension_List_RentalApply__c = e.getData(); |
| | | } |
| | | if(document.getElementById('page:form:block:j_id34:0:j_id35:j_id36:13:j_id37' + '_lkid')!=null){ |
| | | if(document.getElementById(api_id_map['Office_Assistant1__c'] + '_lkid')!=null){ |
| | | // result.ToAgency__c = document.getElementById('page:form:block:j_id34:0:j_id35:j_id36:18:j_id37').value; |
| | | result.Office_Assistant1__c = document.getElementById('page:form:block:j_id34:0:j_id35:j_id36:13:j_id37' + '_lkid').value; |
| | | result.Office_Assistant1__c = document.getElementById(api_id_map['Office_Assistant1__c'] + '_lkid').value; |
| | | } |
| | | if(document.getElementById(api_id_map['Office_Assistant2__c'] + '_lkid')!=null){ |
| | | // result.ToAgency__c = document.getElementById('page:form:block:j_id34:0:j_id35:j_id36:18:j_id37').value; |
| | | result.Office_Assistant2__c = document.getElementById(api_id_map['Office_Assistant2__c'] + '_lkid').value; |
| | | } |
| | | console.log(JSON.stringify(result)); |
| | | return result; |
| | |
| | | <img src="/img/s.gif" alt="" class="minWidth" title="" width="1" height="1" /> |
| | | <h2 class="mainTitle">备品借出申请编辑</h2> |
| | | </td> |
| | | <td class="pbButton" id="topButtonRow"> |
| | | <td class="pbButton" id="topButtonRow" style="pointer-events: none; opacity: 0.4;"> |
| | | <input class="btn" type="Button" value="保存" onclick="saveRentalApplyProcess('Save')" /> |
| | | <input class="btn" type="Button" value="保存并新建" onclick="saveRentalApplyProcess('SaveAndNew')" /> |
| | | <apex:commandButton action="{!cancel}" value="取消" /> |
| | |
| | | |
| | | <!--Each section has layoutFields, let's iterate them as well--> |
| | | <apex:repeat value="{!layoutSection.layoutFields}" var="layoutField"> |
| | | <apex:inputField styleClass="PIBackApi PIBackApi_{!layoutField.fieldAPI}" html-data-id="{!layoutField.fieldAPI}" value="{!Rental_Apply__c[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)}" |
| | | <apex:inputField styleClass="PIBackApi PIBackApi_{!layoutField.fieldAPI}" html-data-id="{!layoutField.fieldAPI}" value="{!Rental_Apply__c[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)&&isNewMode}" |
| | | required="{!layoutField.isRequired}" /> |
| | | <apex:inputField styleClass="PIBackApi PIBackApi_{!layoutField.fieldAPI}" html-data-id="{!layoutField.fieldAPI}" value="{!Rental_Apply__c[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)&¬(isNewMode)&&layoutField.fieldAPI!='RecordTypeId'}" |
| | | required="{!layoutField.isRequired}" /> |
| | | <apex:outputField styleClass="PIBackApi PIBackApi_{!layoutField.fieldAPI}" html-data-id="{!layoutField.fieldAPI}" value="{!Rental_Apply__c[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)&¬(isNewMode)&&layoutField.fieldAPI=='RecordTypeId'}" |
| | | /> |
| | | <apex:pageblocksectionitem rendered="{!layoutField.isPlaceHolder}"> |
| | | </apex:pageblocksectionitem> |
| | | </apex:repeat> |
| | |
| | | if(e.getAttribute("multiple") != 'multiple' || e.style.display == 'none' && e.id.indexOf('selected') < 0){ |
| | | api_id_map[GetEleApiName(e)] = e.id; |
| | | } |
| | | |
| | | }else{ |
| | | let eid = jQuery(e).find(".lookupInput input").attr("id") |
| | | if(eid){ |
| | | eid += '_lkid'; |
| | | if(document.getElementById(eid)){ |
| | | api_id_map[GetEleApiName(e)] = eid; |
| | | } |
| | | } |
| | | } |
| | | } |
| | | console.log(api_id_map); |
| | |
| | | var onlyReadFields = ['ExtensionStatus__c','ExtensionApplicationTime_Initial__c','ExtensionApprovalTime_Initial__c','ExtensionApplicationTime_Final__c','ExtensionApprovalTime_Final__c','ExtensionSuccessTimes__c','ZongjianApprovalManager__c','BuchangApprovalManager__c','JingliApprovalManager__c','BuchangApprovalManagerSales__c','SalesManager__c']; |
| | | console.log(onlyReadFields); |
| | | for(let i=0;i<onlyReadFields.length;i++){ |
| | | document.querySelector('[data-id='+onlyReadFields[i]+']').parentNode.remove(); |
| | | if(document.querySelector('[data-id='+onlyReadFields[i]+']')){ |
| | | document.querySelector('[data-id='+onlyReadFields[i]+']').parentNode.remove(); |
| | | } |
| | | } |
| | | |
| | | //2. Query AWS Data by dataId |
| | |
| | | if (!{!isNewMode}) { |
| | | blockme(); |
| | | QueryRentalApplyFromAWS(); |
| | | }else{ |
| | | enableButtonStatus();//Add by Li Jun 20220418 |
| | | }; |
| | | //Replace Vlookup Field |
| | | replaceSearchContactLookup(); |
| | | document.querySelector("[data-id='OwnerId']").classList.add("disabledbutton"); |
| | | |
| | | |
| | | document.getElementById('topButtonRow').style = ''; |
| | | document.getElementById('bottomButtonRow').style = ''; |
| | | |
| | | let previous_value = {}; |
| | | jQuery(".lookupInput input").each(function(i,e){ |
| | | let je =jQuery(e); |
| | |
| | | <tr> |
| | | <td class="pbTitle"> |
| | | <img src="/img/s.gif" alt="" class="minWidth" title="" width="1" height="1" /> </td> |
| | | <td class="pbButtonb" id="bottomButtonRow"> |
| | | <td class="pbButtonb" id="bottomButtonRow" style="pointer-events: none; opacity: 0.4;"> |
| | | <input class="btn" type="Button" value="保存" onclick="saveRentalApplyProcess('Save')" /> |
| | | <input class="btn" type="Button" value="保存并新建" onclick="saveRentalApplyProcess('SaveAndNew')" /> |
| | | <apex:commandButton action="{!cancel}" value="取消" /> |
| | |
| | | |
| | | //Redirect Required Parameter |
| | | var redirectCallBack = function redirectCallBack(sfId, errorMessage) { |
| | | if (sfId) { |
| | | if (redirectMode == 'Save') { |
| | | window.open('/' + sfId, '_self'); |
| | | } else if (redirectMode == 'SaveAndNew') { |
| | | window.open('/setup/ui/recordtypeselect.jsp?ent=' + '{!sobjectId}' + '&retURL=/' + '{!sobjectPrefix}' + '/o&save_new_url=/' + '{!sobjectPrefix}' + '/e?retURL=%2F' + '{!sobjectPrefix}' + '%2Fo', '_self'); |
| | | } |
| | | } else { |
| | | // alert(errorMessage); |
| | | if(sfId){ |
| | | Visualforce.remoting.Manager.invokeAction( |
| | | 'NewRepairController.EncryptUpdate', // example |
| | | sfId, |
| | | function (result, event) { |
| | | console.log(result); |
| | | if(result.message){ |
| | | alert(result.message); |
| | | } |
| | | if (redirectMode == 'Save') { |
| | | window.open('/' + sfId, '_self'); |
| | | } else if (redirectMode == 'SaveAndNew') { |
| | | window.open('/setup/ui/recordtypeselect.jsp?ent=' + '{!sobjectId}' + '&retURL=/' + '{!sobjectPrefix}' + '/o&save_new_url=/' + '{!sobjectPrefix}' + '/e?retURL=%2F' + '{!sobjectPrefix}' + '%2Fo', '_self'); |
| | | } |
| | | |
| | | }, |
| | | { escape: true } |
| | | ); |
| | | |
| | | }else{ |
| | | alertErrorMessage(errorMessage); |
| | | } |
| | | } |
| | |
| | | } else { |
| | | payloadJson.AWS_Data_Id__c = '{!AWSDataId}'; |
| | | } |
| | | debugger |
| | | if('{!rtTypeId}'){ |
| | | payloadJson.RecordTypeId = '{!rtTypeId}';//Add by zhj for Record Type Issue 20220421 |
| | | } |
| | | return payloadJson; |
| | | } |
| | | |
| | |
| | | if(e){ |
| | | result.Repair_Determine_result_ConfirmationUser__c = e.value; |
| | | } |
| | | //未修理归还理由 |
| | | if(api_id_map['Return_Without_Repair_Reason__c']){ |
| | | result.Return_Without_Repair_Reason__c = document.getElementById(api_id_map['Return_Without_Repair_Reason__c']).value!='_\x01_'?document.getElementById(api_id_map['Return_Without_Repair_Reason__c']).value:''; |
| | | } |
| | | console.log(JSON.stringify(result)); |
| | | return result; |
| | | } |
| | |
| | | <img src="/img/s.gif" alt="" class="minWidth" title="" width="1" height="1" /> |
| | | <h2 class="mainTitle">修理编辑</h2> |
| | | </td> |
| | | <td class="pbButton" id="topButtonRow"> |
| | | <td class="pbButton" id="topButtonRow" style="pointer-events: none; opacity: 0.4;"> |
| | | <input class="btn" type="Button" value="保存" onclick="saveRepairProcess('Save')" /> |
| | | <input class="btn" type="Button" value="保存并新建" onclick="saveRepairProcess('SaveAndNew')" /> |
| | | <apex:commandButton action="{!cancel}" value="取消" /> |
| | |
| | | |
| | | <!--Each section has layoutFields, let's iterate them as well--> |
| | | <apex:repeat value="{!layoutSection.layoutFields}" var="layoutField"> |
| | | <apex:inputField styleClass="PIBackApi PIBackApi_{!layoutField.fieldAPI}" html-data-id="{!layoutField.fieldAPI}" value="{!Repair__c[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)}" |
| | | <apex:inputField styleClass="PIBackApi PIBackApi_{!layoutField.fieldAPI}" html-data-id="{!layoutField.fieldAPI}" value="{!Repair__c[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)&&isNewMode}" |
| | | required="{!layoutField.isRequired}" /> |
| | | <apex:inputField styleClass="PIBackApi PIBackApi_{!layoutField.fieldAPI}" html-data-id="{!layoutField.fieldAPI}" value="{!Repair__c[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)&¬(isNewMode)&&layoutField.fieldAPI!='RecordTypeId'}" |
| | | required="{!layoutField.isRequired}" /> |
| | | <apex:outputField styleClass="PIBackApi PIBackApi_{!layoutField.fieldAPI}" html-data-id="{!layoutField.fieldAPI}" value="{!Repair__c[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)&¬(isNewMode)&&layoutField.fieldAPI=='RecordTypeId'}" |
| | | /> |
| | | <apex:pageblocksectionitem rendered="{!layoutField.isPlaceHolder}"> |
| | | </apex:pageblocksectionitem> |
| | | </apex:repeat> |
| | |
| | | unblockUI(); |
| | | }; |
| | | if(document.querySelector("[data-id='OwnerId']") != null) |
| | | document.querySelector("[data-id='OwnerId']").classList.add("disabledbutton"); |
| | | document.querySelector("[data-id='OwnerId']").classList.add("disabledbutton"); |
| | | |
| | | document.getElementById('topButtonRow').style = ''; |
| | | document.getElementById('bottomButtonRow').style = ''; |
| | | |
| | | let previous_value = {}; |
| | | jQuery(".lookupInput input").each(function(i,e){ |
| | |
| | | } |
| | | }) |
| | | }) |
| | | |
| | | //维修中心 |
| | | if('{!workLocationSelect}' != ''){ |
| | | let wlNode = document.getElementById(api_id_map['work_location_select__c']); |
| | | if(wlNode){ |
| | | wlNode.removeAttribute("disabled") |
| | | var o = new Option() |
| | | o.text = '{!workLocationSelect}' |
| | | wlNode.options.add(o) |
| | | wlNode.value = '{!workLocationSelect}' |
| | | } |
| | | } |
| | | |
| | | //如果从报修子单过来,需要解密报修人 |
| | | if('{!RepairSubOrderAWSDataId}' != ''){ |
| | | var staticResourceRepairSubOrder = JSON.parse('{!staticResourceRepairSubOrder}'); |
| | | let queryBackRepairSubOrder = function queryBackRepairSubOrder(data) { |
| | | document.querySelector("[data-id='RepairApplicant__c']").value = data.object.repairApplicantName; |
| | | }; |
| | | AWSService.query(staticResourceRepairSubOrder.queryUrl, '{!RepairSubOrderAWSDataId}', queryBackRepairSubOrder, staticResourceRepairSubOrder.token); |
| | | } |
| | | |
| | | // jQuery(".lookupInput").each(function(i,e){ |
| | | // let je =jQuery(e).find('input'); |
| | |
| | | <tr> |
| | | <td class="pbTitle"> |
| | | <img src="/img/s.gif" alt="" class="minWidth" title="" width="1" height="1" /> </td> |
| | | <td class="pbButtonb" id="bottomButtonRow"> |
| | | <td class="pbButtonb" id="bottomButtonRow" style="pointer-events: none; opacity: 0.4;"> |
| | | <input class="btn" type="Button" value="保存" onclick="saveRepairProcess('Save')" /> |
| | | <input class="btn" type="Button" value="保存并新建" onclick="saveRepairProcess('SaveAndNew')" /> |
| | | <apex:commandButton action="{!cancel}" value="取消" /> |
| | |
| | | for (let i = 0; i < divs.length; i++) { |
| | | for (let j = 0; j < divs[i].classList.length; j++) { |
| | | for(let clsi in divs[i].classList){let cls=divs[i].classList[clsi]; |
| | | if (cls.indexOf('error')>-1) { |
| | | if (typeof cls == 'string' && cls.indexOf('error')>-1) { |
| | | return true; |
| | | } |
| | | } |
| | |
| | | /* 20220221 PI改造 by 徐亮 start */ |
| | | body{margin: 0 auto; |
| | | width: 780px;} |
| | | #title1{height: 30px;} |
| | | #title2{height: 110px;} |
| | | .title1{height: 30px;} |
| | | .title2{height: 110px;} |
| | | /* 20220221 PI改造 by 徐亮 end */ |
| | | |
| | | |
| | |
| | | |
| | | <body style="font-family: MS Gothic;"> |
| | | <div id="pdf-wrapper"> |
| | | <div id="title1"></div> |
| | | <div class="pdf-page"> |
| | | |
| | | <table width="100%" border="0"> |
| | | <tr> |
| | | <td width="25%"> |
| | |
| | | </tr> |
| | | </table> |
| | | |
| | | <div style="page-break-after: always;"></div> |
| | | |
| | | <div id="title2"></div> |
| | | </div> |
| | | <div style="page-break-after: always;"></div> |
| | | <div class="pdf-page"> |
| | | |
| | | <table width="100%" border="0"> |
| | | <tr> |
| | | <td width="25%"> |
| | |
| | | <br/> |
| | | <table width="100%" border="1" cellspacing="2" style="font-size: 8pt;"> |
| | | <tr> |
| | | <td> |
| | | <table width="100%" border="1" cellspacing="0"> |
| | | <tr><td style="height:300px; text-align: center;"><apex:image value="{!qr.Photo_1_Text__c}" width="80%" rendered="{!NOT(ISBLANK(qr.Photo_1_Text__c))}" /></td></tr> |
| | | <td style="width:50%"> |
| | | <table width="100%" border="0" cellspacing="0"> |
| | | <tr><td style="height:300px; text-align: center;"><apex:image id="Photo_1_Text" value="{!Photo_1_Text}" width="80%" rendered="{!NOT(ISBLANK(qr.Photo_1_Text__c))}" /></td></tr> |
| | | <tr><td style="height:40px;"></td></tr> |
| | | </table> |
| | | </td> |
| | | <td style="border-left-color: white;"> |
| | | <table width="100%" border="1" cellspacing="0"> |
| | | <tr><td style="height:300px; text-align: center;"><apex:image value="{!qr.Photo_2_Text__c}" width="80%" rendered="{!NOT(ISBLANK(qr.Photo_2_Text__c))}" /></td></tr> |
| | | <table width="100%" border="0" cellspacing="0"> |
| | | <tr><td style="height:300px; text-align: center;"><apex:image value="{!Photo_2_Text}" width="80%" rendered="{!NOT(ISBLANK(qr.Photo_2_Text__c))}" /></td></tr> |
| | | <tr><td style="height:40px;"></td></tr> |
| | | </table> |
| | | </td> |
| | | </tr> |
| | | <tr> |
| | | <td style="border-top-color: white;"> |
| | | <table width="100%" border="1" cellspacing="0"> |
| | | <tr><td style="height:300px; text-align: center;"><apex:image value="{!qr.Photo_3_Text__c}" width="80%" rendered="{!NOT(ISBLANK(qr.Photo_3_Text__c))}" /></td></tr> |
| | | <table width="100%" border="0" cellspacing="0"> |
| | | <tr><td style="height:300px; text-align: center;"><apex:image value="{!Photo_3_Text}" width="80%" rendered="{!NOT(ISBLANK(qr.Photo_3_Text__c))}" /></td></tr> |
| | | <tr><td style="height:40px;"></td></tr> |
| | | </table> |
| | | </td> |
| | | <td style="border-left-color: white; border-top-color: white;"> |
| | | <table width="100%" border="1" cellspacing="0"> |
| | | <tr><td style="height:300px; text-align: center;"><apex:image value="{!qr.Photo_4_Text__c}" width="80%" rendered="{!NOT(ISBLANK(qr.Photo_4_Text__c))}" /></td></tr> |
| | | <table width="100%" border="0" cellspacing="0"> |
| | | <tr><td style="height:300px; text-align: center;"><apex:image value="{!Photo_4_Text}" width="80%" rendered="{!NOT(ISBLANK(qr.Photo_4_Text__c))}" /></td></tr> |
| | | <tr><td style="height:40px;"></td></tr> |
| | | </table> |
| | | </td> |
| | | </tr> |
| | | </table> |
| | | </div> |
| | | |
| | | </div> |
| | | </body> |
| | | |
| | |
| | | AWSService.sfSessionId = '{!GETSESSIONID()}'; |
| | | var staticResources = JSON.parse('{!staticResource}'); |
| | | var staticResourceFile = JSON.parse('{!staticResourceFile}'); |
| | | function Fun(pdf){ |
| | | function Fun(pdf) { |
| | | |
| | | var form = jQuery("<form method='post'></form>"); |
| | | jQuery(document.body).append(form); |
| | | let href = window.location.href |
| | | let arr = href.split('/') |
| | | form.attr({"action":staticResourceFile.viewUnifiedContactUrl+"?from="+encodeURIComponent(href)+"&fileName="+encodeURIComponent(arr[arr.length-1].split('?')[0])}); |
| | | form.attr({ "action": staticResourceFile.viewUnifiedContactUrl + "?from=" + encodeURIComponent(href) + "&fileName=" + encodeURIComponent(arr[arr.length - 1].split('?')[0]) }); |
| | | // form.attr({"action":"http://127.0.0.1:8080/a/d?from="+encodeURIComponent(window.location.href)}); |
| | | let input = jQuery("<input type='hidden'/>"); |
| | | input.attr({"name":"base64Str"}); |
| | | input.attr({ "name": "base64Str" }); |
| | | input.val(pdf.output('datauristring').substr(28)); |
| | | form.append(input); |
| | | form.submit(); |
| | |
| | | |
| | | let id = "pdf-wrapper"; |
| | | var target = document.getElementById(id); |
| | | function jsPdfDownload(){ |
| | | let pdfName = "测试"; |
| | | let id = "pdf-wrapper"; |
| | | var target = document.getElementById(id); |
| | | target.style.background = "#FFFFFF"; |
| | | if(pdfName==''||pdfName==undefined) pdfName= getNowFormatDate(); |
| | | |
| | | html2canvas(target, { |
| | | scale: 2, |
| | | onrendered:function(canvas) { |
| | | var contentWidth = canvas.width; |
| | | var contentHeight = canvas.height; |
| | | |
| | | //一页pdf显示html页面生成的canvas高度; |
| | | var pageHeight = contentWidth / 592.28 * 841.89; |
| | | //未生成pdf的html页面高度 |
| | | var leftHeight = contentHeight; |
| | | //页面偏移 |
| | | var position = 0; |
| | | //a4纸的尺寸[595.28,841.89],html页面生成的canvas在pdf中图片的宽高 |
| | | var imgWidth = 515.28;//595.28//左右边距20 |
| | | var imgHeight = 515.28/contentWidth * contentHeight;//左右边距20 |
| | | |
| | | var pageData = canvas.toDataURL('image/jpeg', 1.0); |
| | | |
| | | var pdf = new jsPDF('', 'pt', 'a4'); |
| | | |
| | | //有两个高度需要区分,一个是html页面的实际高度,和生成pdf的页面高度(841.89) |
| | | //当内容未超过pdf一页显示的范围,无需分页 |
| | | if (leftHeight < pageHeight) { |
| | | pdf.addImage(pageData, 'JPEG', 40, 0, imgWidth, imgHeight );//左右边距20 |
| | | } else { |
| | | while(leftHeight > 0) { |
| | | pdf.addImage(pageData, 'JPEG', 40, position, imgWidth, imgHeight)//左右边距20 |
| | | leftHeight -= pageHeight; |
| | | position -= 841.89; |
| | | //避免添加空白页 |
| | | if(leftHeight > 0) { |
| | | pdf.addPage(); |
| | | } |
| | | } |
| | | } |
| | | Fun(pdf); |
| | | } |
| | | }) |
| | | } |
| | | // 把imageDta转换成url |
| | | // page_height:一页的高度 |
| | | function ImageDataToUrl(img_data,page_height){ |
| | | let cvs = document.createElement("CANVAS"); |
| | | cvs.width = img_data.width; |
| | | cvs.height = page_height; |
| | | var ctx= cvs.getContext("2d"); |
| | | ctx.fillStyle="white"; |
| | | ctx.fillRect(0,0,cvs.width,cvs.height);// 填充canvas所有区域为白色 |
| | | ctx.putImageData(img_data,0,0); |
| | | return cvs.toDataURL('image/jpeg', 1.0); |
| | | } |
| | | function jsPdfDownload() { |
| | | |
| | | //blockme(); |
| | | document.body.onload = function(){ |
| | | |
| | | AWSService.query(staticResources.queryUrl, '{!qr.AWS_Data_Id__c}', function(data){ |
| | | //unblockUI(); |
| | | document.getElementById("Responsible_Person_HP__c").innerHTML = data.object.responsiblePersonHP; |
| | | document.getElementById("Caller_phone__c").innerHTML = data.object.callerPhone; |
| | | let jtargets = jQuery("#pdf-wrapper .pdf-page"); |
| | | let j_arr = new Array(jtargets.length + 1).join(0).split('').map(function () { return false }); |
| | | let landscape = false; |
| | | let pw = 595.28; |
| | | let ph = 841.89; |
| | | const marginw = 40; |
| | | const marginh = 40; |
| | | |
| | | let orientation = ''; |
| | | if (landscape) { |
| | | pw += ph; ph = pw - ph; pw = pw - ph; |
| | | orientation = 'l'; |
| | | } |
| | | var pdf = new jsPDF(orientation, 'pt', 'a4');// 第一个参数填字母l,注意不是数字1,为横向pdf |
| | | jtargets.each(function (i, e) { |
| | | e.style.background = "#FFFFFF"; |
| | | }) |
| | | |
| | | let rei = 0; |
| | | let recursion = null; |
| | | recursion = function (i) { |
| | | if (i >= jtargets.length) { |
| | | Fun(pdf); |
| | | return; |
| | | } |
| | | e = jtargets[i]; |
| | | html2canvas(e, { |
| | | scale: 2, |
| | | onrendered: function (canvas) { |
| | | /** |
| | | 本方法需要做几个事情 |
| | | 1.需要把canvas的内容分页显示到pdf的页中 |
| | | 2.canvas的宽高需要和pdf的宽高进行映射 |
| | | 3.截取到的内容需要放进一页宽高的canvas里面,并对其余区域刷白 |
| | | */ |
| | | var ctx = canvas.getContext("2d"); |
| | | let canvas_max_page_num = 9; |
| | | let canvas_current_page_num = 0; |
| | | var contentWidth = canvas.width; |
| | | var contentHeight = canvas.height; |
| | | |
| | | |
| | | //未生成pdf的html页面高度 |
| | | var leftHeight = contentHeight; |
| | | //页面偏移 |
| | | var position = 0; |
| | | |
| | | //a4纸的尺寸[595.28,841.89],html页面生成的canvas在pdf中图片的宽高 |
| | | var outputWidth = pw - 2 * marginw;//595.28//左右边距20 |
| | | let rate = outputWidth / 780;//输出宽度和内容宽度的比例 |
| | | var outputHeight = ph - 2 * marginh;//左右边距20 |
| | | let onePdfPageInCanvasHeight = contentWidth/outputWidth*outputHeight;//一页pdf在canvas中的高度; |
| | | //var pageData = canvas.toDataURL('image/jpeg', 1.0); |
| | | var pageData = null; |
| | | var imgData = null; |
| | | |
| | | var captureHeight = null;// 截取的当前canvas页的高度 |
| | | |
| | | let j = i; |
| | | while(position < contentHeight){ |
| | | |
| | | if (j++) { |
| | | pdf.addPage(); |
| | | } |
| | | |
| | | if(position+onePdfPageInCanvasHeight>contentHeight){ |
| | | captureHeight = contentHeight-position; |
| | | }else{ |
| | | captureHeight = onePdfPageInCanvasHeight; |
| | | } |
| | | |
| | | imgData = ctx.getImageData(0,position,contentWidth,captureHeight); |
| | | pageData = ImageDataToUrl(imgData,onePdfPageInCanvasHeight); |
| | | pdf.addImage(pageData, 'JPEG', marginw, marginh, outputWidth, outputHeight);//左右边距20,被输出的图片会被拉伸为outputWidth,outputHeight的宽高 |
| | | canvas_current_page_num++; |
| | | position += onePdfPageInCanvasHeight; |
| | | if (canvas_max_page_num > 0 && canvas_current_page_num >= canvas_max_page_num) { |
| | | break; |
| | | } |
| | | } |
| | | |
| | | recursion(i + 1); |
| | | } |
| | | }) |
| | | }; |
| | | recursion(rei); |
| | | |
| | | |
| | | |
| | | } |
| | | |
| | | //blockme(); |
| | | document.body.onload = function(){ |
| | | |
| | | jsPdfDownload(); |
| | | }, staticResources.token); |
| | | AWSService.query(staticResources.queryUrl, '{!qr.AWS_Data_Id__c}', function(data){ |
| | | //unblockUI(); |
| | | document.getElementById("Responsible_Person_HP__c").innerHTML = data.object.responsiblePersonHP; |
| | | document.getElementById("Caller_phone__c").innerHTML = data.object.callerPhone; |
| | | if(confirm("PDF已加载完毕,是否显示?")){ |
| | | jsPdfDownload(); |
| | | } |
| | | }, staticResources.token); |
| | | } |
| | | |
| | | } |
| | | |
| | | |
| | | </script> |
| | | <!-- 20220221 PI改造 by 徐亮 end --> |
| | | </html> |
| | |
| | | } |
| | | } |
| | | |
| | | |
| | | function showPITR(obj){ |
| | | var awsDataId = obj.childNodes[1].childNodes[2].value; |
| | | if(awsDataId.length == 1){ |
| | | let sfId = j$(escapeVfId('Page:mainForm:idSearchVisitor:idAddVisitor:' + awsDataId + ':idAddHiddenId')).val() |
| | | awsDataId = sfIdToAWSIdMapValue.get(sfId); |
| | | } |
| | | if(contactInfo[awsDataId]){ |
| | | document.getElementById(obj.childNodes[1].childNodes[0].id).innerText = contactInfo[awsDataId].lastName; |
| | | document.getElementById(obj.childNodes[3].childNodes[0].id).innerText = contactInfo[awsDataId].doctorDivision1; |
| | | document.getElementById(obj.childNodes[4].childNodes[0].id).innerText = contactInfo[awsDataId].phone; |
| | | } |
| | | } |
| | | |
| | | function hidePIDiv(obj){ |
| | | document.getElementById(obj.id+'_PI').remove(); |
| | | } |
| | |
| | | <tr> |
| | | <td> |
| | | <div id="iframelike"> |
| | | <apex:pageBlockTable id="idRezultVisitor" value="{!scwl}" var="scw" border="1" columns="8" columnsWidth="47px,90px,,90px,180x,90px,40px,200px"> |
| | | <apex:pageBlockTable id="idRezultVisitor" value="{!scwl}" var="scw" onRowMouseOver="showPITR(this)" border="1" columns="8" columnsWidth="47px,90px,,90px,180x,90px,40px,200px"> |
| | | <apex:column > |
| | | <apex:facet name="header">{!$Label.Selected}</apex:facet> |
| | | <input type="button" id="idSlt" value="{!$Label.Selected}" onclick="sltContact('{!scw.index}');" class="btn" style="width:40px"/> |
| | |
| | | <apex:facet name="header">{!$Label.Visitor_Name}</apex:facet> |
| | | <apex:outputLink onmouseover="showPIDiv('{!scw.con.AWS_Data_Id__c}',this)" onmouseout="hidePIDiv(this)" value="/{!scw.con.Id}" id="idName" target="_blank">{!scw.con.Name}</apex:outputLink> |
| | | <apex:inputText id="idHiddenId" value="{!scw.conid}" style="display:none" /> |
| | | <apex:inputText id="AWSDataId" value="{!scw.con.AWS_Data_Id__c}" style="display:none" /> |
| | | </apex:column> |
| | | <apex:column > |
| | | <apex:facet name="header">{!$Label.Department_Name}</apex:facet> |
| | |
| | | <tr> |
| | | <td> |
| | | <div id="iframelike2"> |
| | | <apex:pageBlockTable id="idAddVisitor" value="{!acwl}" var="acw" border="1" columns="7" columnsWidth="47px,90px,,90px,180x,90px,40px"> |
| | | <apex:pageBlockTable id="idAddVisitor" value="{!acwl}" var="acw" border="1" columns="7" onRowMouseOver="showPITR(this)" columnsWidth="47px,90px,,90px,180x,90px,40px"> |
| | | <apex:column > |
| | | <apex:facet name="header">{!$Label.Back}</apex:facet> |
| | | <input type="button" id="idDel" value="{!$Label.Back}" onclick="delContact('{!acw.index}');" class="btn" style="width:40px"/> |
| | |
| | | <!-- <apex:outputText id="idAddName" value="{!IF(acw.con.Name==null,' ',acw.con.Name)}" /> --> |
| | | <apex:outputLink onmouseover="showPIDiv('{!acw.index}',this)" onmouseout="hidePIDiv(this)" value="/{!acw.conid}" id="idAddName" target="_blank">{!IF(acw.con.Name==null,' ',acw.con.Name)}</apex:outputLink> |
| | | <apex:inputText id="idAddHiddenId" value="{!acw.conid}" style="display:none" /> |
| | | <apex:inputText id="AWSDataId" value="{!acw.index}" style="display:none" /> |
| | | </apex:column> |
| | | <apex:column > |
| | | <apex:facet name="header">{!$Label.Department_Name}</apex:facet> |
| | |
| | | return false; |
| | | } |
| | | } |
| | | return true; |
| | | // 先款后修-提交报价时如果是先款对象进行提示 thh 20220408 start |
| | | var FirstParagraphEnd = j$(escapeVfId('allPage:allForm:allBlock:contract:FirstParagraphEnd'))[0].checked; |
| | | if(FirstParagraphEnd){ |
| | | if (confirm('本次签约经销商是先款对象,请确认是否提交报价?')) { |
| | | return true; |
| | | }else{ |
| | | return false; |
| | | } |
| | | } |
| | | // 先款后修-提交报价时如果是先款对象进行提示 thh 20220408 end |
| | | return true; |
| | | } |
| | | //add by gwy 2021-01-27 end 提交时的提示框 |
| | | |
| | |
| | | var newCon = true; |
| | | var contractStartDate = new Date(j$(escapeVfId('allPage:allForm:contractstartdate')).value()); |
| | | |
| | | //多年保续签合同数量 thh 20220316 start |
| | | var GuranteeCount = 0; |
| | | //多年保续签合同数量 thh 20220316 end |
| | | |
| | | |
| | | // 预定开始日 |
| | | var startdate = new Date(j$(escapeVfId('allPage:allForm:allBlock:contract:startdate')).value()); |
| | |
| | | var lastContRange = 0; |
| | | if(LastMContractRecord == 'VM_Contract'){ |
| | | newCount++; |
| | | //多年保续签合同数量,多年保续签到服务合同时视为首签设备 thh 20220316 start |
| | | GuranteeCount++; |
| | | newCon = false; |
| | | //多年保续签合同数量,多年保续签到服务合同时视为首签设备 thh 20220316 end |
| | | lastendDate = new Date(j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':endDateGurantee_Text')).value()); |
| | | lastContRange = 36; |
| | | }else{ |
| | |
| | | var lastContRange = 0; |
| | | if(LastMContractRecord == 'VM_Contract'){ |
| | | newCount++; |
| | | //多年保续签合同数量,多年保续签到服务合同时视为首签设备 thh 20220316 start |
| | | GuranteeCount++; |
| | | newCon = false; |
| | | //多年保续签合同数量,多年保续签到服务合同时视为首签设备 thh 20220316 end |
| | | lastendDate = new Date(j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':endDateGurantee_Text')).value()); |
| | | lastContRange = 36; |
| | | }else{ |
| | |
| | | var result = ''; |
| | | if (allcount == 0) { |
| | | result = null; |
| | | }else |
| | | if (newCount > 0 && newCount == allcount && newCon == true) { |
| | | //如果所有设备的上期合同都是多年保合同,则合同种类为市场多年保续签合同 thh 20220315 start |
| | | }else if(GuranteeCount > 0 && GuranteeCount == allcount){ |
| | | result = '市场多年保续签合同'; |
| | | //如果所有设备的上期合同都是多年保合同,则合同种类为市场多年保续签合同 thh 20220315 end |
| | | }else if (newCount > 0 && newCount == allcount && newCon == true) { |
| | | result = '新品合同'; |
| | | }else if (((newCount > 0 && newCount == allcount) ||(newCount + firstCCount == allcount)) && newCon == false) { |
| | | result = '首签合同'; |
| New file |
| | |
| | | <apex:page controller="StatusPageController" showHeader="false" id="allPage" sidebar="false" action="{!init}" docType="html-5.0"> |
| | | <apex:stylesheet value="{!URLFOR($Resource.blockUIcss)}"/> |
| | | <apex:includeScript value="{!URLFOR($Resource.jquery183minjs)}"/> |
| | | <apex:includeScript value="{!URLFOR($Resource.PleaseWaitDialog)}"/> |
| | | <apex:includeScript value="/soap/ajax/29.0/connection.js"/> |
| | | <apex:includeScript value="/soap/ajax/29.0/apex.js"/> |
| | | <head> |
| | | <title>跟进</title> |
| | | </head> |
| | | <script type="text/javascript"> |
| | | function save(){ |
| | | var content = j$(escapeVfId('allPage:allForm:pageBlock:pageBlockSection:content')).value(); |
| | | var contentOther = j$(escapeVfId('allPage:allForm:pageBlock:pageBlockSection:contentOther')).value(); |
| | | if ((content == '' || content == null) && (contentOther.trim() == null || contentOther.trim() == '')) { |
| | | alert('服务跟进内容不能为空!'); |
| | | return; |
| | | }else if (content == '其他' && (contentOther.trim() == '' || contentOther.trim() == null)) { |
| | | alert('服务跟进内容(其他)不能为空!'); |
| | | return; |
| | | }else if (content == '' || content == null) { |
| | | alert('服务跟进内容不能为空!'); |
| | | return; |
| | | }else{ |
| | | blockme(); |
| | | allSave(); |
| | | } |
| | | } |
| | | function check(){ |
| | | window.opener.location.href = "/{!Inquiryform.id}"; |
| | | window.close(); |
| | | } |
| | | </script> |
| | | <apex:form id="allForm"> |
| | | <apex:actionfunction action="{!servicesavefo}" name="allSave" onComplete="check();unblockUI();"></apex:actionfunction> |
| | | <apex:pageBlock id="pageBlock"> |
| | | <apex:pageBlockSection id="pageBlockSection"> |
| | | <apex:inputField id="content" value="{!Inquiryform.Service_Follow_Content__c}" /> |
| | | <br /> |
| | | <apex:inputField id="contentOther" value="{!Inquiryform.Service_Follow_Content_Other__c}" style="width: 150px"/> |
| | | <br /> |
| | | </apex:pageBlockSection> |
| | | |
| | | <apex:pageblockbuttons location="bottom"> |
| | | <apex:commandButton onclick="save();return false;" value="保存"></apex:commandButton> |
| | | </apex:pageblockbuttons> |
| | | </apex:pageBlock> |
| | | </apex:form> |
| | | </apex:page> |
| New file |
| | |
| | | <?xml version="1.0" encoding="UTF-8"?> |
| | | <ApexPage xmlns="http://soap.sforce.com/2006/04/metadata"> |
| | | <apiVersion>46.0</apiVersion> |
| | | <label>ServiceFollowPage</label> |
| | | </ApexPage> |
| | |
| | | selectedIndexContact=myselect.selectedIndex |
| | | } |
| | | function preparePayloadForSearchContact() { |
| | | let accountId = document.getElementById('Page:mainForm:idDayEdit:idDep').value; |
| | | if (accountId != '--无--') { |
| | | // 2022-04-13 ssm 紧急应对 科室和客户人员必填 start |
| | | // let accountId = document.getElementById('Page:mainForm:idDayEdit:idDep').value; |
| | | // if (accountId != '--无--') { |
| | | // blockme(); |
| | | // console.log('accountId:' + accountId); |
| | | // //query contact |
| | | // sforce.connection.sessionId = '{!GETSESSIONID()}'; |
| | | // let result = sforce.connection.query("SELECT Id,Name,AWS_Data_Id__c from Contact where AccountId='" + accountId + "'");//sfid,awsdataId |
| | | // let dataIds = []; |
| | | // let records = result.getArray("records"); |
| | | // for (let i = 0; i < records.length; i++) { |
| | | // dataIds.push(records[i].AWS_Data_Id__c) |
| | | // } |
| | | // let searchPayload = new Object(); |
| | | // searchPayload.dataIds = dataIds; |
| | | // searchPayload.contactName = ''; |
| | | // AWSService.search(staticResources.searchUrl, JSON.stringify(searchPayload), queryBack, staticResources.token); |
| | | // } |
| | | let contactId = document.getElementById('Page:mainForm:idDayEdit:idCon').value; |
| | | if (contactId != undefined) { |
| | | blockme(); |
| | | console.log('accountId:' + accountId); |
| | | console.log('contactId:' + contactId); |
| | | //query contact |
| | | sforce.connection.sessionId = '{!GETSESSIONID()}'; |
| | | let result = sforce.connection.query("SELECT Id,Name,AWS_Data_Id__c from Contact where AccountId='" + accountId + "'");//sfid,awsdataId |
| | | let result = sforce.connection.query("SELECT Id,Name,AWS_Data_Id__c from Contact where Id='" + contactId + "'");//sfid,awsdataId |
| | | let dataIds = []; |
| | | let records = result.getArray("records"); |
| | | for (let i = 0; i < records.length; i++) { |
| | |
| | | searchPayload.contactName = ''; |
| | | AWSService.search(staticResources.searchUrl, JSON.stringify(searchPayload), queryBack, staticResources.token); |
| | | } |
| | | // 2022-04-13 ssm 紧急应对 科室和客户人员必填 end |
| | | } |
| | | |
| | | var queryBack = function queryBack(result) { |
| | | // 2022-04-13 ssm 紧急应对 科室和客户人员必填 start |
| | | let select = document.getElementById('Page:mainForm:idDayEdit:idCon'); |
| | | //清除select里面的值 |
| | | for (var i = select.childNodes.length - 1; i >= 1; i--) { |
| | | select.removeChild(select.childNodes[i]); |
| | | } |
| | | if (select.options[0] == undefined) { |
| | | let blankValue = new Option(); |
| | | blankValue.value = '--无--'; |
| | | blankValue.text = '--无--'; |
| | | select.options.add(blankValue); |
| | | } |
| | | // if (select.options[0] == undefined) { |
| | | // let blankValue = new Option(); |
| | | // blankValue.value = '--无--'; |
| | | // blankValue.text = '--无--'; |
| | | // select.options.add(blankValue); |
| | | // } |
| | | for (var i = 0; i < result.object.length; i++) { |
| | | if (result.object[i].sfRecordId) { |
| | | let a = new Option(); |
| | |
| | | var myselect=document.getElementById("Page:mainForm:idDayEdit:idCon").options |
| | | myselect[selectedIndexContact].selected = true; |
| | | } |
| | | // 2022-04-13 ssm 紧急应对 科室和客户人员必填 end |
| | | unblockUI(); |
| | | } |
| | | //2021/02/21 张华建 查找客户人员 end |
| | | |
| | | function requiredCheck() { |
| | | var val = document.getElementById('Page:mainForm:idDayEdit:idDep').selectedIndex; |
| | | if (val == 0) { |
| | | //「診療科名を選択してください。」 |
| | | alert('{!$Label.StartTrading_Alert}'); |
| | | } |
| | | // 2022-04-13 ssm 紧急应对 科室和客户人员必填 start |
| | | // var val = document.getElementById('Page:mainForm:idDayEdit:idDep').selectedIndex; |
| | | // if (val == 0) { |
| | | // //「診療科名を選択してください。」 |
| | | // alert('{!$Label.StartTrading_Alert}'); |
| | | // } |
| | | // 2022-04-13 ssm 紧急应对 科室和客户人员必填 end |
| | | } |
| | | </script> |
| | | <style> |
| | |
| | | <td> |
| | | <apex:selectList value="{!sltDep}" multiselect="false" size="1" id="idDep" style="width:400px;" > |
| | | <apex:selectOptions value="{!depList}" ></apex:selectOptions> |
| | | <apex:actionSupport event="onchange" onsubmit="" onbeforedomupdate="" action="{!depChange}" rerender="idCon" oncomplete="preparePayloadForSearchContact()"> |
| | | <!-- 2022-04-13 ssm 紧急应对 科室和客户人员必填 start --> |
| | | <!-- <apex:actionSupport event="onchange" onsubmit="" onbeforedomupdate="" action="{!depChange}" rerender="idCon" oncomplete="preparePayloadForSearchContact()"> |
| | | <apex:param name="sltD" value="{!sltDep}" /> |
| | | </apex:actionSupport> |
| | | </apex:actionSupport> --> |
| | | <!-- 2022-04-13 ssm 紧急应对 科室和客户人员必填 end --> |
| | | </apex:selectList> |
| | | </td> |
| | | </tr> |
| | |
| | | <!-- 担当者 --> |
| | | <td>{!$ObjectType.Contact.Label}</td> |
| | | <td> |
| | | <apex:selectList value="{!sltCon}" onchange="setSelectedIndex()" multiselect="false" size="1" id="idCon" style="width:200px;"> |
| | | <!-- 2022-04-13 ssm 紧急应对 科室和客户人员必填 start --> |
| | | <!-- <apex:selectList value="{!sltCon}" onchange="setSelectedIndex()" multiselect="false" size="1" id="idCon" style="width:200px;"> --> |
| | | <!-- 2022-04-13 ssm 紧急应对 科室和客户人员必填 end --> |
| | | <apex:selectList value="{!sltCon}" multiselect="false" size="1" id="idCon" style="width:200px;"> |
| | | <apex:selectOptions value="{!conList}" /> |
| | | </apex:selectList> |
| | | <script> |
| | |
| | | rc.address_ZipCode__c=addressAwsData[address.AWS_Data_Id__c].zipCode; |
| | | } |
| | | |
| | | let GetAsset = function(){ |
| | | let ast = new sforce.SObject('Asset'); |
| | | ast.Id = '{!pc.Delivered_Product__c}', |
| | | ast.address_Contacts__c= contactsName, |
| | | ast.address_ZipCode__c = address.ZipCode__c, |
| | | ast.address_City__c = cityName, |
| | | ast.address_Telephone__c = address.Telephone__c, |
| | | ast.address_Contacts_Name__c = ContactPerson, |
| | | ast.Detailed_Address__c= address_str |
| | | if (addressAwsData.hasOwnProperty(address.AWS_Data_Id__c)) { |
| | | ast.address_ZipCode__c=addressAwsData[address.AWS_Data_Id__c].zipCode; |
| | | ast.address_Telephone__c=addressAwsData[address.AWS_Data_Id__c].telephone; |
| | | } |
| | | return ast; |
| | | } |
| | | |
| | | //保存数据到保有设备表中 |
| | | let UpdateAsset = function(){ |
| | | let ast = GetAsset(); |
| | | let result = sforce.connection.update([ast]); |
| | | let b = result[0].getBoolean('success'); |
| | | return b; |
| | | } |
| | | |
| | | let UpdateRepair = function(callback){ |
| | | AWSService.post(staticResourceRepair.updateUrl,[{ |
| | | dataId:'{!pc.AWS_Data_Id__c}', |
| | |
| | | rc.Detailed_Address__c = data.object[0].detailedAddress; |
| | | rc.Detailed_Address_Encrypt__c = data.object[0].detailedAddressEncrypt; |
| | | |
| | | UpdateSobject(staticResourceRepair,rc,data.txId,callback); |
| | | //UpdateSobject(staticResourceRepair,rc,data.txId,callback); |
| | | Visualforce.remoting.Manager.invokeAction( |
| | | 'StraightBackAddressController.SaveEx', |
| | | JSON.stringify(rc), JSON.stringify(GetAsset()), address.Id, |
| | | function (result, event) { |
| | | |
| | | let message = ''; |
| | | if (event.status) { |
| | | if (result) { |
| | | message = result; |
| | | }else{ |
| | | } |
| | | }else{ |
| | | } |
| | | let tobj = { |
| | | txId: data.txId |
| | | }; |
| | | if(message) { |
| | | console.log('call sf to insert log'); |
| | | tobj.isSuccess = 0; |
| | | }else { |
| | | console.log('call sf Log Id: ' + rc.id); |
| | | tobj.sfRecordId = rc.id; |
| | | tobj.isSuccess = 1; |
| | | } |
| | | |
| | | AWSService.post(staticResource.transactionUrl,tobj,function(data){ |
| | | if (message) { |
| | | ub(); |
| | | alert(message); |
| | | }else{ |
| | | window.location.href = '/{!RepairId}'; |
| | | } |
| | | },staticResource.token); |
| | | }, |
| | | { escape: true } |
| | | ); |
| | | }else{ |
| | | alert('AWS更新修理失败'); |
| | | ub(); |
| | |
| | | },staticResourceRepair.token) |
| | | } |
| | | |
| | | //保存数据到保有设备表中 |
| | | let UpdateAsset = function(){ |
| | | let ast = new sforce.SObject('Asset'); |
| | | ast.Id = '{!pc.Delivered_Product__c}', |
| | | ast.address_Contacts__c= contactsName, |
| | | ast.address_ZipCode__c = address.ZipCode__c, |
| | | ast.address_City__c = cityName, |
| | | ast.address_Telephone__c = address.Telephone__c, |
| | | ast.address_Contacts_Name__c = ContactPerson, |
| | | ast.Detailed_Address__c= address_str |
| | | if (addressAwsData.hasOwnProperty(address.AWS_Data_Id__c)) { |
| | | ast.address_ZipCode__c=addressAwsData[address.AWS_Data_Id__c].zipCode; |
| | | ast.address_Telephone__c=addressAwsData[address.AWS_Data_Id__c].telephone; |
| | | } |
| | | let result = sforce.connection.update([ast]); |
| | | let b = result[0].getBoolean('success'); |
| | | return b; |
| | | } |
| | | |
| | | |
| | | |
| | | let UpdateAddress = function(){ |
| | |
| | | } |
| | | |
| | | b(); |
| | | UpdateRepair(); |
| | | /* |
| | | UpdateRepair(function(data){ |
| | | if (data.isSuccess) { |
| | | let b = UpdateAsset(); |
| | |
| | | ub(); |
| | | alert('SF更新修理失败'); |
| | | } |
| | | }) |
| | | })*/ |
| | | |
| | | //页面重定向 |
| | | //return redirectPag(); |
| | |
| | | <apex:param name="addressDataIds" assignTo="{!addressDataIds}" value=""></apex:param> |
| | | </apex:actionFunction> |
| | | <!-- 采用方法 --> |
| | | <apex:actionFunction name="adoptSave" action="{!adoptSave}" rerender="oppBlock2,message" onComplete="ub();"> |
| | | <!--<actionFunction name="adoptSave" action="{!adoptSave}" rerender="oppBlock2,message" onComplete="ub();"> |
| | | <apex:param name="adoptId" assignTo="{!adoptId}" value="" /> |
| | | <apex:param name="isUpload" assignTo="{!isUpload}" value="" /> |
| | | </apex:actionFunction> |
| | | </actionFunction>--> |
| | | <!-- 保存和修改方法 --> |
| | | <apex:actionFunction name="save" action="{!save}" rerender="oppBlock2,message" onComplete="ub();Trans()"></apex:actionFunction> |
| | | <!-- 点击修改按钮获取修改数据方法 --> |
| | |
| | | var tempActId = ''; |
| | | var tempRecordTypeName = ''; |
| | | var tempBtnIdHidden = ''; |
| | | var OPDId = ''; |
| | | var tempRedId = ''; |
| | | var tempReportId = ''; |
| | | var hiddenDivShowFlg = false; |
| | |
| | | sforce.connection.sessionId = '{!$Api.Session_ID}'; |
| | | |
| | | //Add By Li Jun 20220225 for PIPL Start |
| | | AWSService.sfSessionId = '{!GETSESSIONID()}'; |
| | | var staticResources = JSON.parse('{!staticResource}'); |
| | | var contactAWSIds = JSON.parse('{!contactAWSIds}'); |
| | | console.log('contactAWSIds:'+JSON.stringify(contactAWSIds)); |
| | | var sfIdToContactInfo = {}; |
| | | function preparePayloadForSearchContact(){ |
| | | let searchPayload = new Object(); |
| | | searchPayload.dataIds = contactAWSIds; |
| | | searchPayload.contactName = ''; |
| | | return JSON.stringify(searchPayload); |
| | | } |
| | | function searchContactAll(){ |
| | | let data = preparePayloadForSearchContact(); |
| | | let searchCallBack = function searchCallBack(result){ |
| | | let contacts = result.object; |
| | | if(contacts == null){ |
| | | return; |
| | | } |
| | | for(var i=0;i<contacts.length;i++){ |
| | | let temp = {} |
| | | temp.lastName = contacts[i].lastName?contacts[i].lastName:''; |
| | | if(contacts[i].sfRecordId){ |
| | | sfIdToContactInfo[contacts[i].sfRecordId] = temp; |
| | | } |
| | | } |
| | | console.log('AWS Result:'+JSON.stringify(sfIdToContactInfo)); |
| | | let allSizeForAct =document.getElementById('Page:mainForm:idDayEdit:AllSize').value; |
| | | console.log('Act size:'+allSizeForAct); |
| | | for(let i=0;i<allSizeForAct;i++){ |
| | | for(let j=1;j<6;j++){ |
| | | let contactIdForVis = document.getElementById("Page:mainForm:idDayEdit:idActivities:"+i+":idVisitor"+j+"_IdHidden").value; |
| | | if(contactIdForVis){ |
| | | console.log('SFId for Contact:'+contactIdForVis); |
| | | if(sfIdToContactInfo.hasOwnProperty(contactIdForVis)){ |
| | | document.getElementById("Page:mainForm:idDayEdit:idActivities:"+i+":idVisitor"+j).value = sfIdToContactInfo[contactIdForVis].lastName; |
| | | } |
| | | } |
| | | } |
| | | } |
| | | }; |
| | | AWSService.search(staticResources.searchUrl,data,searchCallBack,staticResources.token); |
| | | } |
| | | // AWSService.sfSessionId = '{!GETSESSIONID()}'; |
| | | // var staticResources = JSON.parse('{!staticResource}'); |
| | | // var contactAWSIds = JSON.parse('{!contactAWSIds}'); |
| | | // console.log('contactAWSIds:'+JSON.stringify(contactAWSIds)); |
| | | // var sfIdToContactInfo = {}; |
| | | // function preparePayloadForSearchContact(){ |
| | | // let searchPayload = new Object(); |
| | | // searchPayload.dataIds = contactAWSIds; |
| | | // searchPayload.contactName = ''; |
| | | // return JSON.stringify(searchPayload); |
| | | // } |
| | | |
| | | // function refreshContactAll(){ |
| | | // let contactIdsFromSF = []; |
| | | // // let allSizeForAct =document.getElementById('Page:mainForm:idDayEdit:AllSize').value; |
| | | // let allSizeForAct = j$(escapeVfId('idActSize')).value(); |
| | | // console.log('allSizeForAct:'+allSizeForAct); |
| | | // for(let i=0;i<allSizeForAct;i++){ |
| | | // for(let j=1;j<6;j++){ |
| | | // let contactIdForVis = document.getElementById("Page:mainForm:idDayEdit:idActivities:"+i+":idVisitor"+j+"_IdHidden").value; |
| | | // contactIdsFromSF.push(contactIdForVis); |
| | | // } |
| | | // }; |
| | | // sforce.connection.sessionId = '{!GETSESSIONID()}'; |
| | | // var condition = ''; |
| | | // for(var i=0;i<contactIdsFromSF.length;i++){ |
| | | // if(contactIdsFromSF[i] != ''){ |
| | | // condition += "," + "\'"+contactIdsFromSF[i]+"\'"; |
| | | // } |
| | | // } |
| | | // condition = condition.substr(1); |
| | | // console.log('condition = ' + condition); |
| | | // var record = sforce.connection.query("select AWS_Data_Id__c from Contact where id in("+condition+")"); |
| | | // var records = record.getArray("records"); |
| | | // for(var i =0;i<records.length;i++){ |
| | | // contactAWSIds.push(records[i].AWS_Data_Id__c); |
| | | // } |
| | | // searchContactAll(); |
| | | // } |
| | | // function searchContactAll(){ |
| | | // let data = preparePayloadForSearchContact(); |
| | | // let searchCallBack = function searchCallBack(result){ |
| | | // let contacts = result.object; |
| | | // if(contacts == null){ |
| | | // return; |
| | | // } |
| | | // for(var i=0;i<contacts.length;i++){ |
| | | // let temp = {} |
| | | // temp.lastName = contacts[i].lastName?contacts[i].lastName:''; |
| | | // if(contacts[i].sfRecordId){ |
| | | // sfIdToContactInfo[contacts[i].sfRecordId] = temp; |
| | | // } |
| | | // } |
| | | // console.log('AWS Result:'+JSON.stringify(sfIdToContactInfo)); |
| | | // // let allSizeForAct =document.getElementById('Page:mainForm:idDayEdit:AllSize').value; |
| | | // let allSizeForAct = j$(escapeVfId('idActSize')).value(); |
| | | // console.log('Act size:'+allSizeForAct); |
| | | // for(let i=0;i<allSizeForAct;i++){ |
| | | // for(let j=1;j<6;j++){ |
| | | // let contactIdForVis = document.getElementById("Page:mainForm:idDayEdit:idActivities:"+i+":idVisitor"+j+"_IdHidden").value; |
| | | // if(contactIdForVis){ |
| | | // console.log('SFId for Contact:'+contactIdForVis); |
| | | // if(sfIdToContactInfo.hasOwnProperty(contactIdForVis)){ |
| | | // document.getElementById("Page:mainForm:idDayEdit:idActivities:"+i+":idVisitor"+j).value = sfIdToContactInfo[contactIdForVis].lastName; |
| | | // } |
| | | // }else{ |
| | | // document.getElementById("Page:mainForm:idDayEdit:idActivities:"+i+":idVisitor"+j).value = ''; |
| | | // } |
| | | // } |
| | | // } |
| | | // }; |
| | | // AWSService.search(staticResources.searchUrl,data,searchCallBack,staticResources.token); |
| | | // } |
| | | //Add By Li Jun 20220225 for PIPL End |
| | | //window.document.onkeydown= onKeyEvent; |
| | | function initSetPage() { |
| | |
| | | <th>{!$Label.Free_Input} <apex:inputField id="idFree_Input__c" value="{!a.act.Free_Input__c}" onClick="if(vpChack({!a.index})) return false;setVisitorPlaceDisabled();"/> </th> |
| | | </tr> |
| | | <tr> |
| | | <th>拜访目的</th> |
| | | <th >拜访目的</th> |
| | | <td></td> |
| | | <apex:outputPanel rendered="{!IF(reportOwner.Job_Category__c == '销售服务', 'true', 'false')}" layout="none"> |
| | | <td colspan="3"><span><div class="requiredInput"><div class="requiredBlock"></div><apex:inputField id="idActivityPurposeFSEDiv" value="{!a.act.Activity_PurposeFSE__c}" ></apex:inputField> |
| | |
| | | <td><input type="button" class="btn" id="idOpds{!a.index}" name="reportBtn" value="新建OPD计划" style="width:110px" onclick="addOpdNew('{!a.index}', '{!a.act.Id}');"/></td> |
| | | <!--SWAG-BUF6R8 20201020 youchang end --> |
| | | <td> </td> |
| | | <td><input type="button" class="{!If(a.act.OPD_ID__c != '' || a.act.OPDPlan_Flag__c,'btnRed','btn')}" id="idOPD{!a.index}" name="reportBtn" value="{!$Label.OPD_Taiwan}" style="width:110px;{!If(a.act.OPD_ID__c != '','color:red;','color:black;')}" onclick="openPDNew('{!a.index}','{!a.act.id}','OPD','idOPD_IdHidden','idOPD','{!report.id}');"/><apex:inputText id="idOPD_IdHidden" value="{!a.act.OPD_ID__c}" style="display:none" disabled="true"/></td> |
| | | <td><input type="button" class="{!If(a.act.OPD_ID__c != '' || a.act.OPDPlan_Flag__c,'btnRed','btn')}" id="idOPD{!a.index}" name="reportBtn" value="{!$Label.OPD_Taiwan}" style="width:110px;{!If(a.act.OPD_ID__c != '','color:red;','color:black;')}" onclick="openPDNew('{!a.index}','{!a.act.id}','OPD','idOPD_IdHidden','idOPD','{!report.id}','{!a.act.Opd_Plan__c}');"/><apex:inputText id="idOPD_IdHidden" value="{!a.act.OPD_ID__c}" style="display:none" disabled="true"/></td> |
| | | <!-- <td><input type="button" class="{!If(a.act.OPD_ID__c != '','btnRed','btn')}" id="idOPD{!a.index}" name="reportBtn" value="{!$Label.OPD_Taiwan}" style="width:110px;{!If(a.act.OPD_ID__c != '','color:red;','color:black;')}" onclick="selectOPDSISReportType('{!a.index}','{!a.act.id}','OPD','idOPD_IdHidden','idOPD','{!report.id}');"/><apex:inputText id="idOPD_IdHidden" value="{!a.act.OPD_ID__c}" style="display:none" disabled="true"/></td> --> |
| | | <td> </td> |
| | | <td><input type="button" class="{!If(a.act.NTC_ID__c != '','btnRed','btn')}" id="idNTC{!a.index}" name="reportBtn" value="NTC/CDS培训" style="width:110px;{!If(a.act.NTC_ID__c != '','color:red;','color:black;')}" onclick="openPDNew('{!a.index}','{!a.act.id}','NTC','idNTC_IdHidden','idNTC','{!report.id}');"/><apex:inputText id="idNTC_IdHidden" value="{!a.act.NTC_ID__c}" style="display:none" disabled="true"/></td> |
| | | <td><input type="button" class="{!If(a.act.NTC_ID__c != '','btnRed','btn')}" id="idNTC{!a.index}" name="reportBtn" value="NTC/CDS培训" style="width:110px;{!If(a.act.NTC_ID__c != '','color:red;','color:black;')}" onclick="openPDNew('{!a.index}','{!a.act.id}','NTC','idNTC_IdHidden','idNTC','{!report.id}','{!a.act.Opd_Plan__c}');"/><apex:inputText id="idNTC_IdHidden" value="{!a.act.NTC_ID__c}" style="display:none" disabled="true"/></td> |
| | | <td> </td> |
| | | <td><input type="button" class="{!If(a.act.OnCall_ID__c != '','btnRed','btn')}" id="idONCALL{!a.index}" name="reportBtn" value="ON CALL" style="width:110px;{!If(a.act.OnCall_ID__c != '','color:red;','color:black;')}" onclick="openPDNew('{!a.index}','{!a.act.id}','On_Call','idONCALL_IdHidden','idONCALL','{!report.id}');"/><apex:inputText id="idONCALL_IdHidden" value="{!a.act.OnCall_ID__c}" style="display:none" disabled="true"/></td> |
| | | <td><input type="button" class="{!If(a.act.OnCall_ID__c != '','btnRed','btn')}" id="idONCALL{!a.index}" name="reportBtn" value="ON CALL" style="width:110px;{!If(a.act.OnCall_ID__c != '','color:red;','color:black;')}" onclick="openPDNew('{!a.index}','{!a.act.id}','On_Call','idONCALL_IdHidden','idONCALL','{!report.id}','{!a.act.Opd_Plan__c}');"/><apex:inputText id="idONCALL_IdHidden" value="{!a.act.OnCall_ID__c}" style="display:none" disabled="true"/></td> |
| | | <td> </td> |
| | | <td><input type="button" class="{!If(a.act.ReportAccompanied_ID__c != '','btnRed','btn')}" id="idReportAccompanied{!a.index}" name="reportBtn" value="{!$Label.Report_Accompanied}" style="width:110px;{!If(a.act.ReportAccompanied_ID__c != '','color:red;','color:black;')}" onclick="openPDNew('{!a.index}','{!a.act.id}','Visit_With','idReportAccompanied_IdHidden','idReportAccompanied','{!report.id}');"/><apex:inputText id="idReportAccompanied_IdHidden" value="{!a.act.ReportAccompanied_ID__c}" style="display:none" disabled="true"/></td> |
| | | <td><input type="button" class="{!If(a.act.ReportAccompanied_ID__c != '','btnRed','btn')}" id="idReportAccompanied{!a.index}" name="reportBtn" value="{!$Label.Report_Accompanied}" style="width:110px;{!If(a.act.ReportAccompanied_ID__c != '','color:red;','color:black;')}" onclick="openPDNew('{!a.index}','{!a.act.id}','Visit_With','idReportAccompanied_IdHidden','idReportAccompanied','{!report.id}','{!a.act.Opd_Plan__c}');"/><apex:inputText id="idReportAccompanied_IdHidden" value="{!a.act.ReportAccompanied_ID__c}" style="display:none" disabled="true"/></td> |
| | | <td> </td> |
| | | <td><input type="button" class="{!If(a.act.CityStatus_ID__c != '','btnRed','btn')}" id="idCityStatus{!a.index}" name="reportBtn" value="{!$Label.City_Status_Report}" style="width:110px;{!If(a.act.CityStatus_ID__c != '','color:red;','color:black;')}" onclick="openPDNew('{!a.index}','{!a.act.id}','MarketCondition','idCityStatus_IdHidden','idCityStatus','{!report.id}');"/><apex:inputText id="idCityStatus_IdHidden" value="{!a.act.CityStatus_ID__c}" style="display:none" disabled="true"/></td> |
| | | <td><input type="button" class="{!If(a.act.CityStatus_ID__c != '','btnRed','btn')}" id="idCityStatus{!a.index}" name="reportBtn" value="{!$Label.City_Status_Report}" style="width:110px;{!If(a.act.CityStatus_ID__c != '','color:red;','color:black;')}" onclick="openPDNew('{!a.index}','{!a.act.id}','MarketCondition','idCityStatus_IdHidden','idCityStatus','{!report.id}','{!a.act.Opd_Plan__c}');"/><apex:inputText id="idCityStatus_IdHidden" value="{!a.act.CityStatus_ID__c}" style="display:none" disabled="true"/></td> |
| | | <td> </td> |
| | | <!-- <td> |
| | | <input type="button" class="{!If(a.act.Claim_ID__c != '','btnRed','btn')}" id="idClaim{!a.index}" name="reportBtn" value="{!$Label.Claim_Input}" style="width:110px;{!If(a.act.Claim_ID__c != '','color:red;','color:black;')}" onclick="openPDNew('{!a.index}','{!a.act.id}','Complaint','idClaim_IdHidden','idClaim','{!report.id}');"/> |
| | | <apex:inputText id="idClaim_IdHidden" value="{!a.act.Claim_ID__c}" style="display:none" disabled="true"/> |
| | | </td> --> |
| | | <td> </td> |
| | | <td><input type="button" class="{!If(a.act.Conflict_ID__c != '','btnRed','btn')}" id="idConflict{!a.index}" name="reportBtn" value="{!$Label.Competitor_Information}" style="width:110px;{!If(a.act.Conflict_ID__c != '','color:red;','color:black;')}" onclick="openPDNew('{!a.index}','{!a.act.id}','Competitor','idConflict_IdHidden','idConflict','{!report.id}');"/><apex:inputText id="idConflict_IdHidden" value="{!a.act.Conflict_ID__c}" style="display:none" disabled="true"/></td> |
| | | <td><input type="button" class="{!If(a.act.Conflict_ID__c != '','btnRed','btn')}" id="idConflict{!a.index}" name="reportBtn" value="{!$Label.Competitor_Information}" style="width:110px;{!If(a.act.Conflict_ID__c != '','color:red;','color:black;')}" onclick="openPDNew('{!a.index}','{!a.act.id}','Competitor','idConflict_IdHidden','idConflict','{!report.id}','{!a.act.Opd_Plan__c}');"/><apex:inputText id="idConflict_IdHidden" value="{!a.act.Conflict_ID__c}" style="display:none" disabled="true"/></td> |
| | | </tr> |
| | | <tr> |
| | | <td style="text-align:left;"><apex:commandButton styleClass="idSaveComment" value="{!$Label.SaveComment}" onclick="blockme();" style="width:80px" action="{!saveComment}" rerender="dummy" disabled="{!ministerCommentEditFlg && managerCommentEditFlg}"/></td> |
| | |
| | | <td> </td> |
| | | <td><apex:commandButton value="{!$Label.Add_Line}" id="idAddAct" action="{!addActivity}" |
| | | reRender="Activities,idAddActPanel" onClick="blockme();" |
| | | onComplete="bindAllDoubleTap();setVisitorPlaceDisabled();unblockUI();initSetPage();" |
| | | onComplete="bindAllDoubleTap();setVisitorPlaceDisabled();unblockUI();initSetPage();refreshContactAll();" |
| | | style="width:100px;display:{!IF(actSize>14,'none','')}"/></td> |
| | | <th> </th> |
| | | <td> </td> |
| | |
| | | // j$(escapeVfId('Page:mainForm:block:Dealer_Final_Price')).attr('disabled',false); |
| | | } |
| | | // 报价 精琢技术 fy 2021-09-06 end |
| | | |
| | | // debugger |
| | | // var SkipQuotefilg = j$(escapeVfId('Page:mainForm:SkipQuotefilg')).value(); |
| | | // if(SkipQuotefilg == 'true'){ |
| | | // alert('画面配置变更,已生成新的报价单,请重新做报价计算'); |
| | | // } |
| | | } |
| | | // 格式化数字 |
| | | function number_format() { |
| | |
| | | // } |
| | | // }else{ |
| | | QuoteDecision.call(); |
| | | // var SkipQuotefilg = j$(escapeVfId('Page:mainForm:SkipQuotefilg')).value(); |
| | | // console.log('SkipQuotefilg:' + SkipQuotefilg); |
| | | blockme(); |
| | | return true; // by katsu なぜ return false? return true に変更した! |
| | | |
| | |
| | | trigger QISTrigger on QIS_Report__c ( before insert,after insert, after update, before update, after delete) { |
| | | if((!Test.isRunningTest())&&UserInfo.getUserId()==System.Label.ByPassTrigger){ |
| | | return; |
| | | } |
| | | System.debug( '-----:QIS起動'); |
| | | |
| | | // QISの画像を設定する |
| | |
| | | if(String.isNotBlank(qrc.nonyushohin__c)){ |
| | | if(qrc.ET_QIS_SEND_EMAIL__c){ |
| | | if(String.isBlank(qrc.ET_QIS_SEND_EMAIL1__c)){ |
| | | |
| | | qrc.ET_QIS_SEND_EMAIL1__c = 'Shuirong_Chen@olympus.com.cn.stagefull'; |
| | | qrc.ET_QIS_SEND_EMAIL2__c = 'Junbiao_Li@olympus.com.cn.stagefull'; |
| | | qrc.ET_QIS_SEND_EMAIL3__c = 'Weihan_Chen@olympus.com.cn.stagefull'; |
| | | qrc.ET_QIS_SEND_EMAIL4__c = 'Zhiming_Gao@olympus.com.cn.stagefull'; |
| | | |
| | | |
| | | /*qrc.ET_QIS_SEND_EMAIL1__c = 'Shuirong_Chen@olympus.com.cn'; |
| | | qrc.ET_QIS_SEND_EMAIL2__c = 'Junbiao_Li@olympus.com.cn'; |
| | | qrc.ET_QIS_SEND_EMAIL3__c = 'Weihan_Chen@olympus.com.cn'; |
| | | qrc.ET_QIS_SEND_EMAIL4__c = 'Zhiming_Gao@olympus.com.cn';*/ |
| | | if (NFMUtil.isSandbox()) { //测试环境 |
| | | qrc.ET_QIS_SEND_EMAIL1__c = 'Shuirong_Chen@olympus.com.cn.stagefull'; |
| | | qrc.ET_QIS_SEND_EMAIL2__c = 'Junbiao_Li@olympus.com.cn.stagefull'; |
| | | qrc.ET_QIS_SEND_EMAIL3__c = 'Weihan_Chen@olympus.com.cn.stagefull'; |
| | | qrc.ET_QIS_SEND_EMAIL4__c = 'Zhiming_Gao@olympus.com.cn.stagefull'; |
| | | } else { //正式环境 |
| | | qrc.ET_QIS_SEND_EMAIL1__c = 'Shuirong_Chen@olympus.com.cn'; |
| | | qrc.ET_QIS_SEND_EMAIL2__c = 'Junbiao_Li@olympus.com.cn'; |
| | | qrc.ET_QIS_SEND_EMAIL3__c = 'Weihan_Chen@olympus.com.cn'; |
| | | qrc.ET_QIS_SEND_EMAIL4__c = 'Zhiming_Gao@olympus.com.cn'; |
| | | } |
| | | } |
| | | }else{ |
| | | if(String.isNotBlank(qrc.ET_QIS_SEND_EMAIL1__c)){ |
| | |
| | | <?xml version="1.0" encoding="UTF-8" standalone="yes"?> |
| | | <Package xmlns="http://soap.sforce.com/2006/04/metadata"> |
| | | <types> |
| | | <members>*</members> |
| | | <name>ApexClass</name> |
| | | </types> |
| | | <types> |
| | | <members>*</members> |
| | | <name>ApexComponent</name> |
| | | </types> |
| | | <types> |
| | | <members>*</members> |
| | | <members>NewAndEditLead</members> |
| | | <members>NewAndEditReport</members> |
| | | <name>ApexPage</name> |
| | | </types> |
| | | <types> |
| | | <members>*</members> |
| | | <name>ApexTestSuite</name> |
| | | </types> |
| | | <types> |
| | | <members>*</members> |
| | | <name>ApexTrigger</name> |
| | | </types> |
| | | <types> |
| | | <members>*</members> |
| | | <name>AuraDefinitionBundle</name> |
| | | </types> |
| | | <types> |
| | | <members>*</members> |
| | | <name>LightningComponentBundle</name> |
| | | </types> |
| | | <types> |
| | | <members>*</members> |
| | | <name>StaticResource</name> |
| | | </types> |
| | | <types> |
| | | <members>*</members> |
| | | <name>CustomObject</name> |
| | | </types> |
| | | <version>52.0</version> |
| | | </Package> |
| New file |
| | |
| | | <?xml version="1.0" encoding="UTF-8" standalone="yes"?> |
| | | <Package xmlns="http://soap.sforce.com/2006/04/metadata"> |
| | | <types> |
| | | <members>NewAndEditBaseController</members> |
| | | <members>NewAndEditBaseControllerTest</members> |
| | | <members>NewRepairController</members> |
| | | <members>NewRepairControllerTest</members> |
| | | <members>NewAndEditAddressController</members> |
| | | <members>NewAndEditAddressControllerTest</members> |
| | | <members>NewAndEditContactController</members> |
| | | <members>NewAndEditContactControllerTest</members> |
| | | <members>OnCallController</members> |
| | | <members>OnCallControllerTest</members> |
| | | <members>NewAndEditLeadController</members> |
| | | <members>NewAndEditLeadControllerTest</members> |
| | | <members>NewConsumApplyController</members> |
| | | <members>NewConsumApplyControllerTest</members> |
| | | <members>RentalApplyController</members> |
| | | <members>RentalApplyControllerTest</members> |
| | | <members>NewAndEditReportController</members> |
| | | <members>NewAndEditReportControllerTest</members> |
| | | <name>ApexClass</name> |
| | | </types> |
| | | <types> |
| | | <members>NewAndEditReport</members> |
| | | <members>NewRepair</members> |
| | | <members>NewAndEditTenderinformation</members> |
| | | <members>NewAndEditAgencyContact</members> |
| | | <members>NewRentalApply</members> |
| | | <members>NewConsumApply</members> |
| | | <members>NewAndEditLead</members> |
| | | <members>NewAndEditASEActivity</members> |
| | | <members>NewAndEditInspectionReport</members> |
| | | <members>NewAndEditAddress</members> |
| | | <members>NewOnCall</members> |
| | | <members>NewAndEditQIS</members> |
| | | <members>NewAndEditContact</members> |
| | | <members>NewAndEditInquiryForm</members> |
| | | <name>ApexPage</name> |
| | | </types> |
| | | <version>52.0</version> |
| | | </Package> |
| New file |
| | |
| | | <?xml version="1.0" encoding="UTF-8" standalone="yes"?> |
| | | <Package xmlns="http://soap.sforce.com/2006/04/metadata"> |
| | | <types> |
| | | <members>NewAndEditTenderinformation</members> |
| | | <members>NewAndEditInspectionReport</members> |
| | | <members>NewAndEditQIS</members> |
| | | <members>NewAndEditReport</members> |
| | | <members>NewAndEditContact</members> |
| | | <members>NewAndEditLead</members> |
| | | <members>NewAndEditCase</members> |
| | | <members>NewAndEditInquiryForm</members> |
| | | <members>NewConsumApply</members> |
| | | <members>NewConsumApplyEquipmentSetDetail</members> |
| | | <members>NewAndEditAddress</members> |
| | | <members>NewAndEditASEActivity</members> |
| | | <members>NewAndEditRepairSubOrder</members> |
| | | <members>NewRepair</members> |
| | | <members>NewRentalApply</members> |
| | | <members>NewAndEditAgencyContact</members> |
| | | <members>NewOnCall</members> |
| | | <name>ApexPage</name> |
| | | </types> |
| | | <version>52.0</version> |
| | | </Package> |