/*
|
* @Description:
|
* @version:
|
* @Author: chen jing wu
|
* @Date: 2023-06-26 11:10:52
|
* @LastEditors: chen jing wu
|
* @LastEditTime: 2023-10-10 17:37:14
|
*/
|
|
import { api, wire,LightningElement } from 'lwc';
|
import { CurrentPageReference } from "lightning/navigation";
|
import { CloseActionScreenEvent } from 'lightning/actions';
|
import init from '@salesforce/apex/lexSolutionProgrammaController.initForNewSolutionProgramma';
|
import { updateRecord } from 'lightning/uiRecordApi';
|
import { ShowToastEvent } from 'lightning/platformShowToastEvent';
|
import LightningConfirm from 'lightning/confirm';
|
import { NavigationMixin } from 'lightning/navigation';
|
import { encodeDefaultFieldValues } from 'lightning/pageReferenceUtils';
|
import lwcCSS from '@salesforce/resourceUrl/lwcCSS';
|
import {loadStyle} from 'lightning/platformResourceLoader';
|
export default class LexNewSolutionProgramma extends NavigationMixin(LightningElement) {
|
@api recordId;
|
status;
|
girWindowDirectorApproved;
|
hospitalOwnerId;
|
profileId;
|
m2profileId;
|
@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;
|
}
|
}
|
}
|
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());
|
}
|
}
|
connectedCallback(){
|
Promise.all([
|
loadStyle(this, lwcCSS)
|
]);
|
|
init({
|
recordId: this.recordId
|
}).then(result=>{
|
console.log(result);
|
this.status = result.status;
|
this.girWindowDirectorApproved = result.girWindowDirectorApproved;
|
this.hospitalOwnerId = result.hospitalOwnerId;
|
this.profileId = result.profileId;
|
this.m2profileId = result.m2profileId;
|
this.newSolutionProgramma();
|
});
|
}
|
newSolutionProgramma(){
|
console.log(this.girWindowDirectorApproved);
|
if(this.profileId != this.m2profileId){
|
this.showToast('只有GIR窗口才能新建方案','error');
|
this.dispatchEvent(new CloseActionScreenEvent());
|
}else if(this.status == '07结案'){
|
this.showToast('结案后不能新建方案','error');
|
this.dispatchEvent(new CloseActionScreenEvent());
|
}else if(this.status == '01草案中' || this.status == '02需求已提交'){
|
this.dispatchEvent(new CloseActionScreenEvent());
|
}else if(!this.girWindowDirectorApproved){
|
this.showToast('项目需求还未通过审批不能新建方案','error');
|
this.dispatchEvent(new CloseActionScreenEvent());
|
}else{
|
console.log("start");
|
console.log(this.hospitalOwnerId);
|
const defaultValues = encodeDefaultFieldValues({
|
SolutionProjectRequirements__c: this.recordId,
|
Business_Promotion__c: this.hospitalOwnerId
|
});
|
this[NavigationMixin.Navigate]({
|
type: 'standard__objectPage',
|
attributes: {
|
objectApiName: 'Solution_Programme__c',
|
actionName: 'new'
|
},
|
state: {
|
nooverride: '1',
|
defaultFieldValues: defaultValues
|
|
}
|
});
|
this.dispatchEvent(new CloseActionScreenEvent());
|
}
|
}
|
}
|