/*
|
* @Description:
|
* @version:
|
* @Author: chen jing wu
|
* @Date: 2023-04-23 10:09:31
|
* @LastEditors: chen jing wu
|
* @LastEditTime: 2023-10-10 17:39:34
|
*/
|
import { api, wire,LightningElement } from 'lwc';
|
import { CurrentPageReference } from "lightning/navigation";
|
import { CloseActionScreenEvent } from 'lightning/actions';
|
import { updateRecord } from 'lightning/uiRecordApi';
|
import { ShowToastEvent } from 'lightning/platformShowToastEvent';
|
import init from '@salesforce/apex/OpportunityLightingButtonController.initForOpporSpliteButton';
|
import initCopy from '@salesforce/apex/OpportunityLightingButtonController.initCopy';
|
import { NavigationMixin } from 'lightning/navigation';
|
import { encodeDefaultFieldValues } from 'lightning/pageReferenceUtils';
|
import lwcCSS from '@salesforce/resourceUrl/lwcCSS';
|
import {loadStyle} from 'lightning/platformResourceLoader';
|
export default class LexOpporSplite extends NavigationMixin(LightningElement) {
|
@api recordId;
|
authorizedDBNo;
|
estimationDecision;
|
siDecideID;
|
name;
|
opportunityNo;
|
isAuthorized;
|
recordTypeId
|
@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(){
|
Promise.all([
|
loadStyle(this, lwcCSS)
|
]);
|
init({
|
recordId: this.recordId
|
}).then(result=>{
|
console.log(result);
|
this.authorizedDBNo = result.authorizedDBNo == undefined ? '' : result.authorizedDBNo;
|
this.estimationDecision = result.estimationDecision == undefined ? '' : result.estimationDecision;
|
this.siDecideID = result.siDecideID == undefined ? '' : result.siDecideID;
|
this.name = result.name == undefined ? '' : result.name;
|
this.opportunityNo = result.opportunityNo == undefined ? '' : result.opportunityNo;
|
this.isAuthorized = result.isAuthorized == undefined ? '' : result.isAuthorized;
|
this.recordTypeId = result.recordTypeId;
|
this.opporSplite();
|
})
|
}
|
opporSplite(){
|
if(this.recordId == '已终止'){
|
this.showToast("需求表已终止,不能拆单","error");
|
this.dispatchEvent(new CloseActionScreenEvent());
|
}else if(this.authorizedDBNo == ''){
|
this.showToast("没有合同授权编码,不能拆单","error");
|
this.dispatchEvent(new CloseActionScreenEvent());
|
}else if(this.estimationDecision == true){
|
this.showToast("报价已经Decided,不能拆单","error");
|
this.dispatchEvent(new CloseActionScreenEvent());
|
}else if(this.siDecideID == ''){
|
this.showToast("需求表未批准,不能拆单","error");
|
this.dispatchEvent(new CloseActionScreenEvent());
|
}else if(this.recordId != '草案中' && this.recordId != '已提交' && this.recordId != '已终止'){
|
initCopy({
|
recordId: this.recordId
|
}).then(result=>{
|
var changeData = 'Opportunity_No__c=*,Old_Opportunity_ID__c=' + this.recordId
|
+ ',old_Oppo_No__c=' + this.opportunityNo
|
+ ',IsAuthorized__c=' + this.isAuthorized
|
+ ',SeparateBillMark__c=1,Estimation_No__c=,Estimation_Name__c=,Estimation_List_Price__c=,NotesApprovedNo__c=,Assistant_Applied_Date__c=,Contract_DB_SalesDept_complite_day__c=,Contract_DB_complite_day__c=,Closing_Bid_Date__c=';
|
this[NavigationMixin.Navigate]({
|
type: 'standard__objectPage',
|
attributes: {
|
actionName: 'new',
|
objectApiName: 'Opportunity'
|
},
|
state: {
|
defaultFieldValues: result + ',' + changeData,
|
recordTypeId: this.recordTypeId
|
}
|
});
|
this.dispatchEvent(new CloseActionScreenEvent());
|
});
|
|
}
|
}
|
showToast(msg,type) {
|
if(type == 'success'){
|
const event = new ShowToastEvent({
|
message: msg,
|
variant: type,
|
});
|
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 }});
|
}
|
}
|