/*
|
* @Author: zhangchunxu
|
* @Date: 2023-08-13 18:57:20
|
* @LastEditors: zhangchunxu
|
* @LastEditTime: 2023-09-14 10:58:50
|
*
|
*/
|
import { LightningElement,wire,track,api} from 'lwc';
|
import { CurrentPageReference ,NavigationMixin} from "lightning/navigation";
|
import { CloseActionScreenEvent } from 'lightning/actions';
|
import init from '@salesforce/apex/TenderingButtonController.initTenderingController';
|
import sqlResult from '@salesforce/apex/TenderingButtonController.sqlResult';
|
import { ShowToastEvent } from 'lightning/platformShowToastEvent';
|
import LightningConfirm from 'lightning/confirm';
|
import lwcCSS from '@salesforce/resourceUrl/lwcCSS';
|
import {loadStyle} from 'lightning/platformResourceLoader'
|
import { encodeDefaultFieldValues } from 'lightning/pageReferenceUtils';
|
export default class lexTenderingLostButton extends NavigationMixin(LightningElement) {
|
@api recordId;//当前这条数据的id
|
@api url;
|
status;//状态
|
profileId;//profileId id
|
systemProfileId;
|
TwoS1_Sales_Hospital;
|
TwoS4_Sales_Manager;
|
IsLoading = true;
|
@track
|
flag = false;
|
|
@wire(CurrentPageReference)
|
getStateParameters(currentPageReference) {
|
if (currentPageReference) {
|
this.url = currentPageReference.state.backgroundContext;
|
const urlValue = currentPageReference.state.recordId;
|
if (urlValue) {
|
let str = `${urlValue}`;
|
this.recordId = str;
|
}
|
}
|
}
|
|
|
connectedCallback(){
|
Promise.all([
|
loadStyle(this, lwcCSS)
|
]);
|
init({
|
recordId: this.recordId
|
}).then(result => {
|
this.IsLoading = false;
|
this.status = result.status;
|
this.profileId = result.profileId;
|
this.systemProfileId = result.systemProfileId;
|
this.TwoS1_Sales_Hospital = result.TwoS1_Sales_Hospital;
|
this.TwoS4_Sales_Manager = result.TwoS4_Sales_Manager;
|
this.LoseButton();
|
})
|
}
|
|
//招标项目 失单
|
LoseButton(){
|
console.log(this.url,'xxx')
|
sqlResult({id: this.recordId}).then(result=>{
|
//简档权限 2S1_销售医院担当 2S4_销售管理者 系统管理员
|
if (this.profileId != this.TwoS1_Sales_Hospital && this.profileId != this.TwoS4_Sales_Manager && this.profileId != this.systemProfileId) {
|
this.showToast("您没有权限,无法创建询价提交失单。","error");
|
return;
|
}
|
// 判断内部确认状态
|
if(this.status == '01.待确认'|| this.status == '02.不相关'){
|
this.showToast("状态为待确认或不相关,不可以做失单。","error");
|
return;
|
}
|
// 判断是否需要新建询价
|
if(this.status == '05.询价中'|| this.status == '06.成交' || this.status == '07.部分成交' || this.status == '08.失单' || result.length > 0){
|
LightningConfirm.open({
|
message: '此项目已关联询价,请确实是否新建询价提交失单。',
|
variant: 'headerless',
|
label: 'this is the aria-label value',
|
}).then(res=>{
|
if(res) {
|
this.flag = true
|
// window.open(`/apex/TenderLostPage?id=${this.recordId}`,'','height=500,width=800,top=200,left=250,location=no');
|
// const defaultValues = encodeDefaultFieldValues({
|
// oppId :this.id,
|
// pageStatus:'',
|
// lostType :"",
|
|
// });
|
// this[NavigationMixin.Navigate]({
|
// type: 'standard__objectPage',
|
// attributes: {
|
// objectApiName: 'Tender_information__c',
|
// actionName: 'new'
|
// },
|
// state:{
|
// defaultFieldValues: defaultValues
|
// }
|
// });
|
// this.dispatchEvent(new CloseActionScreenEvent());
|
}else{
|
this.dispatchEvent(new CloseActionScreenEvent());
|
return;
|
}
|
});
|
}
|
if(this.status == "04.待关联询价" || this.status == "03.不应标" || this.status == "09.终止"){
|
this.flag = true
|
// window.open(`/apex/TenderLostPage?id=${this.recordId}`,'','height=500,width=800,top=200,left=250,location=no');
|
// const defaultValues = encodeDefaultFieldValues({
|
// oppId :this.id,
|
// pageStatus:'',
|
// lostType :"",
|
|
// });
|
// this[NavigationMixin.Navigate]({
|
// type: 'standard__objectPage',
|
// attributes: {
|
// objectApiName: 'Tender_information__c',
|
// actionName: 'new'
|
// },
|
// state:{
|
// defaultFieldValues: defaultValues
|
// }
|
// });
|
// this.dispatchEvent(new CloseActionScreenEvent());
|
}
|
})
|
}
|
showToast(msg,type) {
|
const event = new ShowToastEvent({
|
message: msg,
|
variant: type
|
});
|
this.dispatchEvent(event);
|
this.dispatchEvent(new CloseActionScreenEvent());
|
}
|
}
|