| force-app/main/default/classes/LexEquipmentRentalApply_FromQISCtl.cls | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| force-app/main/default/classes/LexEquipmentRentalApply_FromQISCtl.cls-meta.xml | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| force-app/main/default/lwc/lexEquipmentRentalApply_FromQIS2/lexEquipmentRentalApply_FromQIS2.html | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| force-app/main/default/lwc/lexEquipmentRentalApply_FromQIS2/lexEquipmentRentalApply_FromQIS2.js | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| force-app/main/default/lwc/lexEquipmentRentalApply_FromQIS2/lexEquipmentRentalApply_FromQIS2.js-meta.xml | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
force-app/main/default/classes/LexEquipmentRentalApply_FromQISCtl.cls
New file @@ -0,0 +1,84 @@ public with sharing class LexEquipmentRentalApply_FromQISCtl { public LexEquipmentRentalApply_FromQISCtl() { } @AuraEnabled public static List<Rental_Apply__c> rentalApp(String recordId){ try { List<Rental_Apply__c> rep = [select Id from Rental_Apply__c where QIS_number__c =: recordId and Status__c <> '取消' and Status__c <> '删除']; return rep; } catch (Exception e) { throw new AuraHandledException(e.getMessage()); } } //获取当前登录人的 id @AuraEnabled public static UserResult UserInfo_Owner() { UserResult result = new UserResult(); ID myUserID = UserInfo.getUserId(); try { User tempUser = [select Id,isFormal_Stuff__c,FirstName,LastName from user where id = : myUserID ]; result.id = tempUser.Id; result.isFormalStuff = tempUser.isFormal_Stuff__c; result.firstName = tempUser.FirstName; result.lastName = tempUser.LastName; } catch (exception e) { result.result = e.getMessage(); } return result; } @AuraEnabled public static InitData init(String recordId){ InitData res = new initData(); try { QIS_Report__c rep = [select Id,next_action__c,QIS_Status__c,Hospital__c,Department_Class__c,Hospital_Department__c,Name,Repair__c from QIS_Report__c where Id =: recordId]; res.nextAction = rep.next_action__c; res.qISStatus = rep.QIS_Status__c; res.hospital = rep.Hospital__c; res.departmentClass = rep.Department_Class__c; res.hospitalDepartment = rep.Hospital_Department__c; res.name = rep.Name; res.repair = rep.Repair__c; return res; } catch (Exception e) { throw new AuraHandledException(e.getMessage()); } } public class InitData{ @AuraEnabled public String nextAction; @AuraEnabled public String qISStatus; @AuraEnabled public String hospital; @AuraEnabled public String departmentClass; @AuraEnabled public String hospitalDepartment; @AuraEnabled public String name; @AuraEnabled public String repair; } public class UserResult { @AuraEnabled public string result; public UserResult( ) { result = 'Success'; } @AuraEnabled public string id; @AuraEnabled public Boolean isFormalStuff; @AuraEnabled public string firstName; @AuraEnabled public string lastName; } } force-app/main/default/classes/LexEquipmentRentalApply_FromQISCtl.cls-meta.xml
New file @@ -0,0 +1,5 @@ <?xml version="1.0" encoding="UTF-8"?> <ApexClass xmlns="http://soap.sforce.com/2006/04/metadata"> <apiVersion>56.0</apiVersion> <status>Active</status> </ApexClass> force-app/main/default/lwc/lexEquipmentRentalApply_FromQIS2/lexEquipmentRentalApply_FromQIS2.html
New file @@ -0,0 +1,5 @@ <template> <div class="dispatchOCSMQARAHolder" if:true={IsLoading}> <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner> </div> </template> force-app/main/default/lwc/lexEquipmentRentalApply_FromQIS2/lexEquipmentRentalApply_FromQIS2.js
New file @@ -0,0 +1,132 @@ import { LightningElement,wire,track,api} from 'lwc'; import { CurrentPageReference, NavigationMixin} from "lightning/navigation"; import { CloseActionScreenEvent } from 'lightning/actions'; import init from '@salesforce/apex/lexEquipmentRentalApply_FromQISCtl.rentalApp'; import rentalApp from '@salesforce/apex/lexEquipmentRentalApply_FromQISCtl.init'; import UserInfo_Owner from '@salesforce/apex/lexEquipmentRentalApply_FromQISCtl.UserInfo_Owner'; import { ShowToastEvent } from 'lightning/platformShowToastEvent'; import { encodeDefaultFieldValues } from 'lightning/pageReferenceUtils'; // 新建备品借出申请(QIS) export default class LexEquipmentRentalApply_FromQIS2 extends LightningElement { @api recordId; IsLoading = true; @wire(CurrentPageReference) getStateParameters(currentPageReference) { console.log(111); console.log(currentPageReference); if (currentPageReference) { const urlValue = currentPageReference.state.recordId; if (urlValue) { let str = `${urlValue}`; console.log("str"); console.log(str); this.recordId = str; } } } connectedCallback(){ console.log(this.recordId); rentalApp({ recordId: this.recordId }).then(result => { console.log('rentalApp============' + result); if(result.lenth > 0){ const evt = new ShowToastEvent({ title : 'Error', message : '同一个QIS记录不能重复申请备品', variant : 'error' }); this.dispatchEvent(evt); return; } init({ recordId: this.recordId }).then(result => { this.IsLoading = false; if (result != null) { if(result.nextAction=='送回'){ this.showToast('QIS对应方法为“送回”,不能申请','warning'); return; } if(result.qISStatus=='草案中'){ this.showToast('QIS状态为草案中,不能申请','warning'); return; } if(result.qISStatus=='FSE填写完毕'){ this.showToast('QIS状态为FSE填写完毕,不能申请','warning'); return; } if(result.qISStatus=='取消'){ this.showToast('QIS状态为取消,不能申请','warning'); return; } if('{!$User.isFormal_Stuff__c}'=='true'){ alert('试用期内,不能申请'); }else{ var url = "/a0t/e?retURL=%2F{!URLENCODE(QIS_Report__c.Id)}&CF00N10000003Mp1d={!URLENCODE(QIS_Report__c.Hospital__c)}&CF00N10000003Mp1d_lkid={!URLENCODE(QIS_Report__c.HospitalId__c)}&CF00N10000003O3V6={!URLENCODE(QIS_Report__c.Department_Class__c)}&CF00N10000003O3V6_lkid={!URLENCODE(QIS_Report__c.Department_ClassId__c)}&CF00N10000003Mp2R={!URLENCODE(QIS_Report__c.Hospital_Department__c)}&CF00N10000003Mp2R_lkid={!URLENCODE(QIS_Report__c.Hospital_DepartmentId__c)}&00N10000003Msk0={!URLENCODE('维修代用')}&00N10000003Msk5={!URLENCODE('索赔QIS')}&Name={!URLENCODE('*')}&CF00N10000005HzRr={!URLENCODE($User.LastName&' '&$User.FirstName)}&CF00N10000005HzRr_lkid={!URLENCODE($User.Id)}&CF00N10000005HzRz={!URLENCODE($User.LastName&' '&$User.FirstName)}&CF00N10000005HzRz_lkid={!URLENCODE($User.Id)}&00N10000003OJzc={!URLENCODE($User.LastName&' '&$User.FirstName)}&CF00N10000004o2Mg={!URLENCODE(QIS_Report__c.Name)}&CF00N10000004o2Mg_lkid={!URLENCODE(QIS_Report__c.Id)}&CF00N10000008r73m={!URLENCODE( QIS_Report__c.Repair__c)}&CF00N10000008r73m_lkid={!URLENCODE( QIS_Report__c.RepairId__c )}&"; window.top.location.href=url; } UserInfo_Owner({}).then(res=>{ if(res.isFormalStuff == 'true'){ this.showToast('试用期内,不能申请','warning'); return; }else{ const defaultValues = encodeDefaultFieldValues({ QIS_Report__c: this.recordId, Hospital: result.hospital, Strategic_dept: result.departmentClass, Account:result.hospitalDepartment, Demo_purpose1:'维修代用', demo_purpose2:'索赔QIS', Name:'*', Person_In_Charge:res.lastName + res.firstName, applyUser:res.lastName + res.firstName, Loaner_received_staff:res.lastName + res.firstName, QIS_number:result.name, QISRepair:result.repair }); this[NavigationMixin.Navigate]({ type: 'standard__objectPage', attributes: { objectApiName: 'Rental_Apply__c', actionName: 'new' }, state:{ defaultFieldValues: this.defaultValues } }) } }) this.dispatchEvent(new CloseActionScreenEvent()); // window.location.reload(); } }).catch(error => { console.log("error"); console.log(error); }).finally(() => { }); }).catch(error => { console.log("error"); console.log(error); }).finally(() => { }); } showToast(message, type) { const evt = new ShowToastEvent({ title: '', message: message, variant: type }); this.dispatchEvent(evt); } } force-app/main/default/lwc/lexEquipmentRentalApply_FromQIS2/lexEquipmentRentalApply_FromQIS2.js-meta.xml
New file @@ -0,0 +1,21 @@ <?xml version="1.0" encoding="UTF-8"?> <LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata"> <apiVersion>56.0</apiVersion> <isExposed>false</isExposed> <targets> <target>lightning__AppPage</target> <target>lightning__RecordPage</target> <target>lightning__HomePage</target> <target>lightning__RecordAction</target> <!-- 屏幕流配置 --> <target>lightning__FlowScreen</target> </targets> <!-- 定义变量 --> <targetConfigs> <targetConfig targets="lightning__FlowScreen"> <!-- name js中使用的变量,从屏幕流中获取参数 label 在屏幕流的该LWC的设置中显示 --> <property name="recordId" type="String" label="recordId"/> <!-- <property name="rentalApplyIds" type="String[]" label="rentalApplyIds"/> --> </targetConfig> </targetConfigs> </LightningComponentBundle>