import { LightningElement,api, track, wire } from 'lwc'; import {CurrentPageReference} from 'lightning/navigation'; import { CloseActionScreenEvent } from 'lightning/actions'; import init from '@salesforce/apex/lexLoanerArrangedEmailLWCController.initFromLoanerArrangedEmailLButton'; import selectRentalApplyCByName from '@salesforce/apex/lexLoanerArrangedEmailLWCController.selectRentalApplyCByName'; import selectCampaignById from '@salesforce/apex/lexLoanerArrangedEmailLWCController.selectCampaignById'; import selectRaesById1 from '@salesforce/apex/lexLoanerArrangedEmailLWCController.selectRaesById1'; import selectRaesById2 from '@salesforce/apex/lexLoanerArrangedEmailLWCController.selectRaesById2'; import getSessionId from '@salesforce/apex/lexLoanerArrangedEmailLWCController.getSessionId'; import approvalCheck from '@salesforce/apex/lexLoanerArrangedEmailLWCController.approvalCheck'; import setRaesShipment_request from '@salesforce/apex/lexLoanerArrangedEmailLWCController.setRaesShipment_request'; // import { label } from '@salesforce/label'; import STATUS_PROCESS_STATE from '@salesforce/label/c.StatusProcessState'; import { ShowToastEvent } from 'lightning/platformShowToastEvent'; import { updateRecord } from 'lightning/uiRecordApi'; import getStatusList from '@salesforce/apex/lexLoanerArrangedEmailLWCController.getStatusList'; import lwcCSS from '@salesforce/resourceUrl/lwcCSS'; import {loadStyle} from 'lightning/platformResourceLoader'; import TradeComplianceStatusFlagBP from '@salesforce/label/c.TradeComplianceStatusFlagBP'; import IFTradeComplianceAlertBP from '@salesforce/label/c.IFTradeComplianceAlertBP'; import IFTradeComplianceAlert2 from '@salesforce/label/c.IFTradeComplianceAlert2'; import LightningConfirm from 'lightning/confirm'; import IFTradeComplianceAlertName from '@salesforce/label/c.IFTradeComplianceAlertName'; // WYL 贸易合规2期 add import tradeTempleSend from '@salesforce/apex/SendEmailUtil.tradeTempleSend'; //贸易合规二期 发邮件20240130 export default class lexLoanerArrangedEmailLWC extends LightningElement { @api recordId; @track TradeComplianceStatusFlagBP = TradeComplianceStatusFlagBP; @track IFTradeComplianceAlertBP = IFTradeComplianceAlertBP; id; IsLoading=true; ra; @track statusStringg = STATUS_PROCESS_STATE; @wire(CurrentPageReference) getStateParameters(currentPageReference){ console.log(currentPageReference); if(currentPageReference){ const urvalue=currentPageReference.state.recordId; if(urvalue){ let str=`${urvalue}`; this.recordId=str; } } } connectedCallback(){ Promise.all([ loadStyle(this, lwcCSS) ]); let raes; let campaign; let campaignStatus; init({ recordId: this.recordId }).then(res=>{ //一览数据 raes = res; let statusList = res.statusList; //获取备品借出申请数据 selectRentalApplyCByName({recordId: raes.RentalApplyC}).then(result=>{ this.ra = result[0]; console.log("this.ra.Campaign__c===="+this.ra.Campaign__c); if(this.ra.Campaign__c != null){ //获取学会数据 selectCampaignById({recordId: this.ra.Campaign__c}).then(campaignRes=>{ campaign = campaignRes[0]; campaignStatus = campaignRes[0].Status; }) } console.log(JSON.stringify(raes)+'==='+JSON.stringify(this.ra)+'==='+JSON.stringify(campaign)+'==='+statusList); //贸易合规 you //var EquipmentGuaranteeFlg = '{!Rental_Apply__c.EquipmentGuaranteeFlg__c}'; if(TradeComplianceStatusFlagBP=='true'){ //if(EquipmentGuaranteeFlg==false){ // if(raes.accDealerBlacklist == '1'){ // this.showToast(IFTradeComplianceAlertBP,'warning'); // return; // } //} // WYL 贸易合规2期 update start if(raes.accDealerBlacklist2 == '1'){ this.showToast('医院在黑名单中,存在贸易合规风险,无法出库指示,有问题请联系法务部贸易合规窗口'+IFTradeComplianceAlertName+'。','error'); tradeTempleSend({rentalId: raes.RentalApplyC, stepName:'出库指示'}); //贸易合规二期add return; }else if (raes.accDealerBlacklist2 == '2') { this.showToast('医院在冻结清单中,可能存在贸易合规风险,目前正在评估中(一般需5-10个工作日),暂时无法出库指示,有问题请联系法务部贸易合规窗口'+IFTradeComplianceAlertName+'。','error'); tradeTempleSend({rentalId: raes.RentalApplyC, stepName:'出库指示'}); //贸易合规二期add return; } // WYL 贸易合规2期 update end } console.log("贸易合规"); console.log(this.TradeComplianceStatusFlagBP); console.log(this.IFTradeComplianceAlertBP); console.log(result.accDealerBlacklist); //贸易合规 you //判断条件 if(this.ra.Wei_Assigned_Cnt__c > 0){ this.showToast("申请单内存在未分配的配套,请分配备品或分割申请单",'warning'); return; }else if( campaignStatus == '取消'){ this.showToast("学会取消,不可出库指示",'warning'); return; }else if(raes.AssignedNotShipmentC == 0){ this.showToast("没有可以出库指示的明细",'warning'); return; }else if(this.ra.Demo_purpose1__c =='长期借出' && this.ra.Contract_pdf_updated__c == 0){ this.showToast("长期借出时,必须先上传契约书",'warning'); return; }else if(this.ra.Repair__c != '' && this.ra.Repair__c != null && (this.ra.Repair_Final_Inspection_Date_F__c !=null && this.ra.Repair_Final_Inspection_Date_F__c != '') || (this.ra.RC_return_to_office__c != null && this.ra.RC_return_to_office__c !='')){ this.showToast("修理有最终检测日或修理品返送日,不可出库指示",'warning'); return; } // 20220217 ljh add OBPM市场活动联动 start else if(campaign!= null && campaign.IF_Approved__c ==true && (campaign.Meeting_Approved_No__c ==null || campaign.Meeting_Approved_No__c == '')){ this.showToast("没有决裁号的,暂不能出借,请更新裁决信息。",'warning'); return; }else if(campaign!= null && campaign.IF_Approved__c ==true && campaign.Meeting_Approved_No__c != '' && statusList.indexOf(campaign.Approved_Status__c)!= -1){ this.showToast("已申请决裁但决裁状态不符合条件。",'warning'); return; }// 20220217 ljh add OBPM市场活动联动 end else{ //154p 1388 yc 20211020 let raidString = this.ra.Id+";"+ this.recordId; approvalCheck({ rentalApplyId: raidString }).then(rs1=>{ rs1 = 1; if(rs1 != '1'){ this.showToast(rs1, 'warning'); }else{ //20231219 贸易合规二期 sx add start console.log('贸易合规二期'+TradeComplianceStatusFlagBP + ' '+ raes.accDealerBlacklist + raes.tradeComplianceStatus); if(TradeComplianceStatusFlagBP=='true' && raes.accDealerBlacklist == '2' && raes.tradeComplianceStatus == '0'){ LightningConfirm.open({ message: '您此次申请的业务可能存在贸易合规风险,是否继续保存,'+ IFTradeComplianceAlert2 +'(一般需5-10个工作日)', variant: 'headerless', label: 'this is the aria-label value', }).then(confirm=>{ if(!confirm){ this.dispatchEvent(new CloseActionScreenEvent()); return; }else{ this.updateStatus(); } }) }else{ this.updateStatus(); } //20231219 贸易合规二期 sx add end } }).catch(err=>{ console.log('approvalCheck==='+err); }) } }).catch(err=>{ console.log('selectRentalApplyCByName==='+err); }) }).catch(err=>{ console.log('initerr===='+err); }) } updateStatus(){ setRaesShipment_request({ raesid: this.recordId }).then(finalResult=>{ console.log('finalResult==='+finalResult); if(finalResult == "状态更新到已出库指示"){ this.showToast("状态更新到已出库指示",'success'); if(this.ra.Bollow_Date__c==undefined || this.ra.Bollow_Date__c == ''){ selectRaesById2({recordId2:this.ra.Id}).then(sqlResult=>{ let size = sqlResult.length; console.log('sqlResult2==='+size%10 == 0 ? size/10 : parseInt(size/10) +1); let length = size%10 == 0 ? size/10 : parseInt(size/10) +1; for(let i = 0; i{ let size = sqlResult.length; let length = size%10 == 0 ? size/10 : parseInt(size/10) +1; for(let i = 0; i{ console.log('setRaesShipment_requestErr==='+err); }) } print(raid, bollowDate){ let sqlResult; let size; let length; console.log('id===='+raid + 'bollowDate==='+bollowDate); if(bollowDate != ''){ selectRaesById1({recordId1:raid}).then(res=>{ sqlResult = res; console.log('sqlResult1==='+sqlResult); size = sqlResult.length; length = size%10 == 0 ? size/10 : parseInt(size/10) +1; for(let i = 0; i