import { LightningElement, track, wire, api } from 'lwc';
|
import { CurrentPageReference,NavigationMixin } from 'lightning/navigation';
|
import { CloseActionScreenEvent } from 'lightning/actions';
|
import { ShowToastEvent } from 'lightning/platformShowToastEvent';
|
import { updateRecord } from 'lightning/uiRecordApi';
|
|
import init from '@salesforce/apex/LexLoanerArrangedEmailController.init';
|
import getRentalApplyEquipmentSet from '@salesforce/apex/LexLoanerArrangedEmailController.getRentalApplyEquipmentSet';
|
import approvalCheck from '@salesforce/apex/RentalApplyWebService.approvalCheck';
|
import setShipment_request from '@salesforce/apex/RentalApplyWebService.setShipment_request';
|
import TradeComplianceStatusFlagBP from '@salesforce/label/c.TradeComplianceStatusFlagBP';
|
import IFTradeComplianceAlertBP from '@salesforce/label/c.IFTradeComplianceAlertBP';
|
import lwcCSS from '@salesforce/resourceUrl/lwcCSS';
|
import {loadStyle} from 'lightning/platformResourceLoader';
|
|
export default class lexLoanerArrangedEmail extends LightningElement {
|
@api recordId;
|
IsLoading = true;
|
|
@wire(CurrentPageReference)
|
getStateParameters(currentPageReference) {
|
if(currentPageReference) {
|
const urlValue = currentPageReference.state.recordId;
|
if(urlValue) {
|
let str = `${urlValue}`;
|
this.recordId = str;
|
}
|
}
|
}
|
|
async connectedCallback() {
|
Promise.all([
|
loadStyle(this,lwcCSS)
|
]);
|
|
await init({
|
recordId: this.recordId
|
}).then(result => {
|
let id = result.id;
|
let statusArr = result.statusList;
|
console.log('result==='+JSON.stringify(result));
|
if(result != null) {
|
|
//贸易合规 you
|
//var EquipmentGuaranteeFlg = '{!Rental_Apply__c.EquipmentGuaranteeFlg__c}';
|
if(TradeComplianceStatusFlagBP){
|
//if(EquipmentGuaranteeFlg==false){
|
if(result.accDealerBlacklist == '1'){
|
this.showToast(IFTradeComplianceAlertBP,'warning');
|
return;
|
}
|
//}
|
}
|
//贸易合规 you
|
|
if( result.weiAssignedCnt > 0 ) {
|
this.showToast("申请单内存在未分配的配套,请分配备品或分割申请单",'error');
|
// 20231007 ljh start
|
// }else if(result.campaignStatus == "取消") {
|
// this.showToast("学会取消,不可出库指示",'error');
|
}else if(result.campaignStatus == '取消' || result.campaignStatus == '取消申请中'){
|
this.showToast("学会取消申请中或者已取消,不可出库指示");
|
// 20231007 ljh end
|
}else if (result.raStatus == "已出库指示" && result.assignedNotShipment == 0){
|
this.showToast("所有的借出备品Set一览都进行过出库指示了",'error');
|
}else if (result.assignedNotShipment == 0) {
|
this.showToast("没有可以出库指示的明细",'error');
|
}else if (result.demoPurpose1 == "长期借出" && result.contractPdfUpdated == false){
|
this.showToast("长期借出时,必须先上传契约书",'error');
|
}else if (result.repairId != '' && (result.repairFinalInspectionDateF != null && result.repairFinalInspectionDateF != '') || (result.rCReturnToOffice != null && result.rCReturnToOffice != '')){
|
this.showToast("修理有最终检测日或修理品返送日,不可出库指示",'error');
|
}else if (result.iFApproved == true && (result.meetingApprovedNo == null || result.meetingApprovedNo == "")){
|
this.showToast("没有决裁号的,暂不能出借,请更新裁决信息。",'error');
|
}else if (result.iFApproved == true && result.meetingApprovedNo != "" && statusArr.indexOf(result.approvedStatus) != -1){
|
this.showToast("已申请决裁但决裁状态不符合条件。",'error');
|
}else{
|
approvalCheck({
|
rentalApplyId: this.recordId
|
}).then(res1 =>{
|
if (res1 != '1') {
|
this.showToast(res1,'error');
|
}else{
|
//bp2 var rs2 = sforce.apex.execute("RentalApplyWebService", "reserve", {rentalApplyId: raid});
|
//bp2 if (rs2 != '1') {
|
//bp2 alert(rs2);
|
//bp2 } else {
|
//var rs1 = sforce.apex.execute("RentalApplyWebService", "setShipment_request", {raid : "{!Rental_Apply__c.Id}"});
|
setShipment_request({
|
raid: this.recordId
|
}).then(res=>{
|
console.log('res==',res);
|
if (res == '状态更新到已出库指示') {
|
this.showToast('状态更新到已出库指示','success');
|
// 20230928 ljh update start
|
// print();
|
// this.updateRecordView(this.recordId);
|
// return;
|
getRentalApplyEquipmentSet({recordId: this.recordId}).then(result => {
|
window.open("/apex/FixtureRentalPDF?raid=" + this.recordId + "&page=" + result);
|
})
|
// 20230928 ljh update end
|
}else {
|
console.log('else==',res);
|
const evt = new ShowToastEvent({
|
// title: 'Error',// 20231007 ljh 注释
|
message:res,
|
variant: 'error',
|
mode: 'sticky'// 20231007 ljh add
|
});
|
this.dispatchEvent(evt);
|
this.dispatchEvent(new CloseActionScreenEvent());
|
}
|
}).catch(e=>{
|
console.log('approvalCheck==='+e);
|
})
|
}
|
}).catch(e=>{
|
console.log('setShipment_request==='+e);
|
})
|
}
|
}
|
})
|
}
|
// 20230928 ljh 注释 start
|
// print() {
|
// getRentalApplyEquipmentSet({
|
// recordId: this.recordId
|
// }).then(result => {
|
// window.open("/apex/FixtureRentalPDF?raid=" + this.recordId + "&page=" + result);
|
// })
|
// }
|
// 20230928 ljh 注释 end
|
fixDate(date){
|
var Month = fixTime(date.getMonth() + 1);
|
var Day = fixTime(date.getDate());
|
var UTC = date.toUTCString();
|
var Time = UTC.substring(UTC.indexOf(':')-2, UTC.indexOf(':')+6);
|
var Minutes = fixTime(date.getMinutes());
|
var Seconds = fixTime(date.getSeconds());
|
return date.getFullYear() + "-" + Month + "-" + Day + "T" + Time;
|
}
|
|
showToast(msg,type) {
|
if(type == 'success'){
|
const event = new ShowToastEvent({
|
message: msg,
|
variant: type
|
});
|
this.updateRecordView(this.recordId);
|
this.dispatchEvent(event);
|
this.dispatchEvent(new CloseActionScreenEvent());
|
}else{
|
const event = new ShowToastEvent({
|
message: msg,
|
variant: type,
|
mode: 'sticky'
|
});
|
this.dispatchEvent(event);
|
this.dispatchEvent(new CloseActionScreenEvent());
|
}
|
}
|
|
updateRecordView(recordId) {
|
updateRecord({fields: { Id: recordId }});
|
}
|
}
|