import { LightningElement, wire, api } from 'lwc'; import { CurrentPageReference } from "lightning/navigation"; import { CloseActionScreenEvent } from 'lightning/actions'; import init from '@salesforce/apex/buttonQISReportCtl.init'; import initUserName from '@salesforce/apex/buttonQISReportCtl.initUserName'; import selecctAccountByAccountId from '@salesforce/apex/buttonQISReportCtl.selecctAccountByAccountId'; import { NavigationMixin } from 'lightning/navigation'; import { encodeDefaultFieldValues } from 'lightning/pageReferenceUtils'; import { ShowToastEvent } from 'lightning/platformShowToastEvent'; import lwcCSS from '@salesforce/resourceUrl/lwcCSS'; import {loadStyle} from 'lightning/platformResourceLoader' export default class LexCreateRepairFromQIS extends NavigationMixin(LightningElement) { @api recordId; str; IsLoading = true; Id; Name; RepairSalesPointProvinceChinaC; Hospital; HospitalId; nextAction; SpecialFollow; HPID; SourceOnCall; DepartmentClassId; DepartmentClass; HospitalDepartment; nonyushohin; TrableOccurDaYCollect; sourceForRepair; OCMJudgementC HospitalDepartmentId; userId; SourceOnCallId; nonyushohinId; @wire(CurrentPageReference) getStateParameters(currentPageReference) { if (currentPageReference) { const urlValue = currentPageReference.state.recordId; if (urlValue) { let str = `${urlValue}`; this.recordId = str; } } } connectedCallback() { Promise.all([ loadStyle(this, lwcCSS) ]); init({ recordId: this.recordId }).then(result => { console.log(result); if (result != null) { this.Id = result.Id; this.Name = result.Name; this.SourceOnCallId = result.SourceOnCallId == undefined ? "" : result.SourceOnCallId; this.nonyushohinId = result.nonyushohinId == undefined ? "" : result.nonyushohinId; this.Hospital = result.Hospital == undefined ? "" : result.Hospital; this.HospitalId = result.HospitalId == undefined ? "" : result.HospitalId; this.nextAction = result.nextAction == undefined ? "" : result.nextAction; this.SpecialFollow = result.SpecialFollow == undefined ? "" : result.SpecialFollow; this.HPID = result.HPID == undefined ? "" : result.HPID; this.SourceOnCall = result.SourceOnCall == undefined ? "" : result.SourceOnCall; this.DepartmentClassId = result.DepartmentClassId == undefined ? "" : result.DepartmentClassId; this.DepartmentClass = result.DepartmentClass == undefined ? "" : result.DepartmentClass; this.HospitalDepartment = result.HospitalDepartment == undefined ? "" : result.HospitalDepartment; this.nonyushohin = result.nonyushohin == undefined ? "" : result.nonyushohin; this.TrableOccurDaYCollect = result.TrableOccurDaYCollect == undefined ? "" : result.TrableOccurDaYCollect; this.sourceForRepair = result.sourceForRepair == undefined ? "" : result.sourceForRepair; this.OCMJudgementC = result.OCMJudgementC == undefined ? "" : result.OCMJudgementC; this.HospitalDepartmentId = result.HospitalDepartmentId == undefined ? "" : result.HospitalDepartmentId; this.userId = result.userId; initUserName({ userId: this.userId }).then(result => { console.log(result); if (result != null) { this.RepairSalesPointProvinceChinaC = result[0].RepairSalesPoint_Province_China__c; } this.CreateRepairFromQIS(); }) } }).catch(error => { console.log(error); }) } //新建修理QIS CreateRepairFromQIS() { var newflag = false; if ((this.OCMJudgementC == '质量问题' && this.nextAction == '无偿维修' && this.SpecialFollow == '0') || (this.OCMJudgementC == '非质量问题' && this.nextAction == '无偿维修' && this.SpecialFollow == '1') || (this.OCMJudgementC == '非质量问题' && this.nextAction == '有偿维修' && this.SpecialFollow == '0') || (this.OCMJudgementC == '质量问题+非质量问题' && this.nextAction == '无偿维修' && this.SpecialFollow == '1') || (this.OCMJudgementC == '质量问题+非质量问题' && this.nextAction == '有偿维修+无偿维修' && this.SpecialFollow == '0')) { newflag = true; } console.log(newflag); if (newflag) { selecctAccountByAccountId({ HospitalDepartmentId: this.HospitalDepartmentId }).then(List => { console.log(List); var RecordTypeId; var Incharge_Staff = ''; var Incharge_Staff_id = ''; var Work_Location = ''; if (List.length > 0) { if (List[0]['ParentId'] != null) { RecordTypeId = List[0]['Parent']['RecordType_DeveloperName__c']; console.log(RecordTypeId,'ididididid'); var FSE_GI_Main_Leader__id = ''; var FSE_GI_Main_Leader__name = ''; var FSE_SP_Main_Leader__id = ''; var FSE_SP_Main_Leader__name = ''; if (List[0]['Parent']['Parent']['FSE_GI_Main_Leader__c'] != null) { FSE_GI_Main_Leader__id = List[0]['Parent']['Parent']['FSE_GI_Main_Leader__c'].substring(0, 15); FSE_GI_Main_Leader__name = List[0]['Parent']['Parent']['FSE_GI_Main_Leader__r']['Name']; } if (List[0]['Parent']['Parent']['FSE_SP_Main_Leader__c'] != null) { FSE_SP_Main_Leader__id = List[0]['Parent']['Parent']['FSE_SP_Main_Leader__c'].substring(0, 15); FSE_SP_Main_Leader__name = List[0]['Parent']['Parent']['FSE_SP_Main_Leader__r']['Name']; } if (List[0]['Parent']['RecordType_DeveloperName__c'] != null || List[0]['Parent']['RecordType_DeveloperName__c'] != undefined) { var recordId = List[0]['Parent']['RecordType_DeveloperName__c'].substring(0, 15); if (recordId == 'Department_Class_GI' || recordId == 'Department_Class_BF' || recordId == 'Department_Class_ET') { if (List[0]['Parent']['Parent']['FSE_GI_Main_Leader__c'] != null) { Work_Location = List[0]['Parent']['Parent']['FSE_GI_Main_Leader__r']['Work_Location__c']; } } else if (recordId == 'Department_Class_GS' || recordId == 'Department_Class_URO' || recordId == 'Department_Class_ENT' || recordId == 'Department_Class_GYN' || recordId == 'Department_Class_OTH') { if (List[0]['Parent']['Parent']['FSE_SP_Main_Leader__c'] != null) { Work_Location = List[0]['Parent']['Parent']['FSE_SP_Main_Leader__r']['Work_Location__c']; } } } if (RecordTypeId == 'Department_Class_GI') { Incharge_Staff = FSE_GI_Main_Leader__name; Incharge_Staff_id = FSE_GI_Main_Leader__id; } if (RecordTypeId == 'Department_Class_BF') { Incharge_Staff = FSE_GI_Main_Leader__name; Incharge_Staff_id = FSE_GI_Main_Leader__id; } if (RecordTypeId == 'Department_Class_ET') { Incharge_Staff = FSE_GI_Main_Leader__name; Incharge_Staff_id = FSE_GI_Main_Leader__id; } if (RecordTypeId == 'Department_Class_GS') { Incharge_Staff = FSE_SP_Main_Leader__name; Incharge_Staff_id = FSE_SP_Main_Leader__id; } if (RecordTypeId == 'Department_Class_URO') { Incharge_Staff = FSE_SP_Main_Leader__name; Incharge_Staff_id = FSE_SP_Main_Leader__id; } if (RecordTypeId == 'Department_Class_ENT') { Incharge_Staff = FSE_SP_Main_Leader__name; Incharge_Staff_id = FSE_SP_Main_Leader__id; } if (RecordTypeId == 'Department_Class_GYN') { Incharge_Staff = FSE_SP_Main_Leader__name; Incharge_Staff_id = FSE_SP_Main_Leader__id; } if (RecordTypeId == 'Department_Class_OTH') { Incharge_Staff = FSE_SP_Main_Leader__name; Incharge_Staff_id = FSE_SP_Main_Leader__id; } } } const url = encodeDefaultFieldValues({ On_Call_ID__c: this.SourceOnCall, QIS_ID__c: this.Id, Hospital__c: this.Hospital, Department_Class__c: this.DepartmentClass, Account__c: this.HospitalDepartment, Delivered_Product__c: this.nonyushohin, Incharge_Staff__c: Incharge_Staff_id, Failure_Occurrence_Date__c: this.TrableOccurDaYCollect, SalesOfficeCode_selection__c: encodeURI(Work_Location), Repair_Source__c: this.sourceForRepair, work_location_select__c: this.RepairSalesPointProvinceChinaC }); this[NavigationMixin.Navigate]({ type: 'standard__objectPage', attributes: { objectApiName: 'Repair__c', actionName: 'new' }, state: { //2023/ 8/07 update by 王雪琴 PIPL Start // nooverride: '1', //2023/ 8/07 update by 王雪琴 PIPL End defaultFieldValues: url } }); this.dispatchEvent(new CloseActionScreenEvent()); // window.open("/a0J/e?CF00N10000002FIJU_lkid=" + this.SourceOnCallId + "&CF00N10000002FIJU=" + this.SourceOnCall + // "&CF00N10000002FIJZ_lkid=" + this.Id + "&CF00N10000002FIJZ=" + this.Name + // "&CF00N10000002Dx66_lkid=" + this.HospitalId + "&CF00N10000002Dx66=" + this.Hospital + // "&CF00N10000002Dx5t_lkid=" + this.DepartmentClassId + "&CF00N10000002Dx5t=" + this.DepartmentClass + // "&CF00N10000002Dx5n_lkid=" + this.HospitalDepartmentId + "&CF00N10000002Dx5n=" + this.HospitalDepartment + // "&CF00N10000002Dx1X_lkid=" + this.nonyushohinId + "&CF00N10000002Dx1X=" + this.nonyushohin + // "&CF00N10000002EMHw_lkid=" + Incharge_Staff_id + "&CF00N10000002EMHw=" + Incharge_Staff + // "&00N10000002Dx5y=" + this.TrableOccurDaYCollect + "&00N10000006P6SM=" + encodeURI(Work_Location) + // "&00N10000002FH86=" + this.sourceForRepair + "&00N10000006P6Rn=" + this.RepairSalesPointProvinceChinaC + // "&retURL=%2F" + this.Id); }) } else { this.ShowToastEvent("不能新建修理", "error"); this.dispatchEvent(new CloseActionScreenEvent()); } } ShowToastEvent(msg, type) { if(type == 'success'){ const event = new ShowToastEvent({ message: msg, variant: type }); this.dispatchEvent(event); }else{ const event = new ShowToastEvent({ message: msg, variant: type, mode:'Sticky' }); this.dispatchEvent(event); } } }