/*
|
* @Description:
|
* @version:
|
* @Author: chen jing wu
|
* @Date: 2023-04-14 13:04:53
|
* @LastEditors: chen jing wu
|
* @LastEditTime: 2023-04-14 17:54:56
|
*/
|
import { api, wire,LightningElement } from 'lwc';
|
import { CurrentPageReference } from "lightning/navigation";
|
import { CloseActionScreenEvent } from 'lightning/actions';
|
import updateForStockApplyButton from '@salesforce/apex/OpportunityLightingButtonController.updateForStockApplyButton';
|
import init from '@salesforce/apex/OpportunityLightingButtonController.initForStockApplyButton';
|
import { updateRecord } from 'lightning/uiRecordApi';
|
import { ShowToastEvent } from 'lightning/platformShowToastEvent';
|
import { loadScript } from "lightning/platformResourceLoader";
|
import connection from '@salesforce/resourceUrl/connection20';
|
export default class LexStockApply extends LightningElement {
|
@api recordId;
|
stockApplyStatus;
|
lastOpportunityFileId;
|
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(){
|
init({
|
recordId: this.recordId
|
}).then(result=>{
|
console.log(result);
|
this.stockApplyStatus = result.stockApplyStatus;
|
this.lastOpportunityFileId = result.lastOpportunityFileId;
|
this.stockApply();
|
})
|
}
|
stockApply(){
|
var status = this.stockApplyStatus;
|
if (status != '草案中' && status != '填写完毕' && status != '不批准' && status != '' && status != undefined) {
|
this.showToast("备货申请状态不正确,不能提交备货申请。","error");
|
return;
|
}
|
var oppfile = this.lastOpportunityFileId;
|
if (oppfile == undefined || oppfile == '') {
|
this.showToast("请上传询价文件。","error");
|
return;
|
}
|
|
if (!confirm("一旦提交此记录以待批准,根据您的设置您可能不再能够编辑此记录或将他从批准过程中调回。是否继续?")) {
|
this.dispatchEvent(new CloseActionScreenEvent);
|
return;
|
}
|
|
updateForStockApplyButton({
|
recordId: this.recordId,
|
flag: true
|
}).then(result=>{
|
if(result){
|
this.showToast(result,"error");
|
return;
|
}
|
Promise.all([
|
loadScript(this,connection)
|
]).then(() =>{
|
var request = new window.sforce.ProcessSubmitRequest();
|
request.objectId = this.recordId;
|
console.log("s");
|
console.log(request);
|
console.log("e");
|
var processResults = window.sforce.Connection.prototype.process([request]);
|
console.log(processResults);
|
if (processResults[0].errors != null) {
|
updateForStockApplyButton({
|
recordId: this.recordId,
|
flag: false
|
}).then(result=>{
|
if(result){
|
this.showToast(result,"error");
|
return;
|
}
|
this.IsLoading = false;
|
this.updateRecordView(this.recordId);
|
this.dispatchEvent(new CloseActionScreenEvent);
|
})
|
}
|
});
|
}).catch(error=>{
|
console.log(error);
|
})
|
}
|
showToast(msg,type) {
|
const event = new ShowToastEvent({
|
title: '',
|
message: msg,
|
variant: type
|
});
|
this.dispatchEvent(event);
|
this.dispatchEvent(new CloseActionScreenEvent);
|
}
|
updateRecordView(recordId) {
|
updateRecord({fields: { Id: recordId }});
|
}
|
}
|