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/LoanerArrangedEmailController.init';
|
import getRentalApplyEquipmentSet from '@salesforce/apex/LoanerArrangedEmailController.getRentalApplyEquipmentSet';
|
import approvalCheck from '@salesforce/apex/RentalApplyWebService.approvalCheck';
|
import setShipment_request from '@salesforce/apex/RentalApplyWebService.approvalCheck';
|
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;
|
}
|
}
|
}
|
|
connectedCallback() {
|
init({
|
recordId: this.recordId
|
}).then(result => {
|
let statusArr = result.statusList;
|
console.log('result==='+JSON.stringify(result));
|
if(result != null) {
|
if( result.weiAssignedCnt > 0 ) {
|
this.showToast("申请单内存在未分配的配套,请分配备品或分割申请单",'error');
|
}else if(result.campaignStatus == "取消") {
|
this.showToast("学会取消,不可出库指示",'error');
|
}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}"});
|
console.log('setShipment_request==');
|
setShipment_request({
|
raid: this.recordId
|
}).then(res=>{
|
console.log('res==',res);
|
if (res == "状态更新到已出库指示") {
|
this.showToast("状态更新到已出库指示",'success');
|
print();
|
// setTimeout(function() {
|
// location.href = "/{!Rental_Apply__c.Id}";
|
// },100);
|
}else {
|
this.showToast(res,'error');
|
}
|
}).catch(e=>{
|
console.log('approvalCheck==='+e);
|
})
|
}
|
}).catch(e=>{
|
console.log('setShipment_request==='+e);
|
})
|
}
|
this.dispatchEvent(new CloseActionScreenEvent());
|
}
|
})
|
}
|
|
print() {
|
getRentalApplyEquipmentSet({
|
recordId: this.recordId
|
}).then(result => {
|
window.open("https://ocsm--partial.sandbox.lightning.force.com/apex/FixtureRentalPDF?raid=" + this.recordId + "&page=" + result);
|
})
|
}
|
|
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) {
|
const event = new ShowToastEvent({
|
message: msg,
|
variant: type
|
});
|
if(type == 'success'){
|
this.updateRecordView();
|
}
|
this.dispatchEvent(event);
|
this.dispatchEvent(new CloseActionScreenEvent());
|
}
|
|
updateRecordView(recordId) {
|
updateRecord({fields: { Id: recordId }});
|
}
|
}
|