import { LightningElement, track, wire, api } from 'lwc';
|
import { CurrentPageReference,NavigationMixin } from 'lightning/navigation';
|
import { CloseActionScreenEvent } from 'lightning/actions';
|
import { updateRecord } from 'lightning/uiRecordApi';
|
import { ShowToastEvent } from 'lightning/platformShowToastEvent';
|
import LightningConfirm from 'lightning/confirm';
|
import lwcCSS from '@salesforce/resourceUrl/lwcCSS';
|
import {loadStyle} from 'lightning/platformResourceLoader';
|
|
import init from '@salesforce/apex/LexInventoryHeaderClearStatusController.init';
|
import updateStatus from '@salesforce/apex/LexInventoryHeaderClearStatusController.updateStatus';
|
export default class lexInventoryHeaderClearStatus extends LightningElement {
|
@api recordId;
|
IsLoading = true;
|
|
@wire(CurrentPageReference)
|
getStateParameters(currentPageReference) {
|
if (currentPageReference) {
|
const urlValue = currentPageReference.state.recordId;
|
if (urlValue) {
|
let str = `${urlValue}`;
|
console.log("str:"+str);
|
this.recordId = str;
|
}
|
}
|
}
|
|
connectedCallback(){
|
Promise.all([
|
loadStyle(this,lwcCSS)
|
]);
|
init({
|
recordId:this.recordId
|
}).then(results=>{
|
for(var i =0; i<results.length;i++){
|
if(results[i].Inventory_Status__c != '处理中' && results[i].Inventory_Status__c != null){
|
this.showToast(results[i].Name+'的盘点状态为【'+results[i].Inventory_Status__c+'】,不能清除此盘点状态。','warning');
|
return;
|
}
|
}
|
|
LightningConfirm.open({
|
message: "请确认是否要清除盘点状态?",
|
variant: 'headerless',
|
label: '提示信息',
|
}).then(result=>{
|
if (!result) {
|
return this.dispatchEvent(new CloseActionScreenEvent());
|
}
|
|
updateStatus({
|
inventoryList: results
|
}).then(res=>{
|
if(res == '清除盘点状态完毕'){
|
this.showToast('清除盘点状态完毕', 'success');
|
return;
|
}else{
|
this.showToast(res, 'error');
|
return;
|
}
|
})
|
})
|
|
|
})
|
}
|
|
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 }});
|
}
|
}
|