| | |
| | | * @Author: chen jing wu |
| | | * @Date: 2023-06-20 14:37:24 |
| | | * @LastEditors: chen jing wu |
| | | * @LastEditTime: 2023-06-20 17:50:52 |
| | | * @LastEditTime: 2023-10-11 16:54:13 |
| | | */ |
| | | import { api, wire,LightningElement } from 'lwc'; |
| | | import { api, wire,LightningElement, track } from 'lwc'; |
| | | import { CurrentPageReference } from "lightning/navigation"; |
| | | import { CloseActionScreenEvent } from 'lightning/actions'; |
| | | import updateSubmitSolutionForApprovalButton from '@salesforce/apex/lexSolutionProjectRequirementsController.updateSubmitSolutionForApprovalButton'; |
| | | import init from '@salesforce/apex/lexSolutionProjectRequirementsController.initSubmitSolutionForApprovalButton'; |
| | | import queryForAttachments from '@salesforce/apex/lexSolutionProjectRequirementsController.queryForAttachments'; |
| | | import { updateRecord } from 'lightning/uiRecordApi'; |
| | | import { updateRecord,getRecord } from 'lightning/uiRecordApi'; |
| | | import STATUS_FIELD from "@salesforce/schema/SolutionProjectRequirements__c.Status__c"; |
| | | import { refreshApex } from '@salesforce/apex'; |
| | | import { ShowToastEvent } from 'lightning/platformShowToastEvent'; |
| | | import LightningConfirm from 'lightning/confirm'; |
| | | import lwcCSS from '@salesforce/resourceUrl/lwcCSS'; |
| | | import {loadStyle} from 'lightning/platformResourceLoader'; |
| | | |
| | | export default class LexSubmitSolutionForApproval extends LightningElement { |
| | | @wire(getRecord, { recordId: '$recordId', fields: [STATUS_FIELD] }) |
| | | record; |
| | | @api recordId; |
| | | status; |
| | | submitDateYouWant; |
| | |
| | | } |
| | | } |
| | | showToast(msg,type) { |
| | | const event = new ShowToastEvent({ |
| | | title: '', |
| | | message: msg, |
| | | variant: type |
| | | }); |
| | | this.dispatchEvent(event); |
| | | 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=>{ |
| | | this.status = result.status; |
| | | this.submitDateYouWant = result.submitDateYouWant; |
| | | this.createdDate = result.createdDate; |
| | | this.departmentClassId = result.departmentClassId; |
| | | this.userId = result.userId; |
| | | this.userName = result.userName; |
| | | this.submitSolutionForApproval(); |
| | | console.log(result); |
| | | if(result.res){ |
| | | this.status = result.res.status; |
| | | this.submitDateYouWant = new Date(result.res.submitDateYouWant); |
| | | // this.createdDate = result.res.createdDate; |
| | | this.createdDate = new Date(result.res.createdDate); |
| | | this.productLeader = result.res.productLeader; |
| | | this.departmentClassId = result.res.departmentClassId; |
| | | this.userId = result.res.userId; |
| | | this.userName = result.res.userName; |
| | | this.submitSolutionForApproval(); |
| | | } |
| | | }); |
| | | } |
| | | |
| | |
| | | this.dispatchEvent(new CloseActionScreenEvent()); |
| | | return; |
| | | } |
| | | if(this.submitDateYouWant < this.createdDate + 3){ |
| | | this.createdDate.setDate(this.createdDate.getDate() + 3); |
| | | if(this.submitDateYouWant.getTime() < this.createdDate.getTime()){ |
| | | this.showToast('希望提交日期不得小于三天,如紧急需求请邮件联络Solution担当','error'); |
| | | this.dispatchEvent(new CloseActionScreenEvent()); |
| | | return; |
| | |
| | | queryForAttachments({ |
| | | Id: this.departmentClassId |
| | | }).then(result=>{ |
| | | console.log("start"); |
| | | var records = result; |
| | | var header = this.productLeader; |
| | | var usrname = this.userName; |
| | | var rtn = ''; |
| | | if(header.contains(usrname.replaceAll(' ', ''))){ |
| | | console.log("start"); |
| | | if(header != undefined && header != null && header != '' && header.includes(usrname)){ |
| | | rtn = 'Y'; |
| | | }else{ |
| | | rtn = 'N'; |
| | | } |
| | | |
| | | if(records.length > 0){ |
| | | if(rtn != 'Y' && this.userId != records[0].Department_Class__r.OwnerId && this.userId != records[0].Department_Class__r.Owner.SalesManager__c){ |
| | | this.showToast('只允其战略科室主担、产品担当及省经理提交solution项目需求!','error'); |
| | |
| | | return; |
| | | } |
| | | } |
| | | |
| | | //111111111111111111111111111111111111111111 |
| | | this.handleConfirmClick('一旦提交此记录以待批准,根据您的设置您可能不再能够编辑此记录或将他从批准过程中调回。是否继续?'); |
| | | |
| | | }); |
| | |
| | | const result = await LightningConfirm.open({ |
| | | message: msg, |
| | | variant: 'headerless', |
| | | label: 'this is the aria-label value', |
| | | label: 'this is the aria-label value' |
| | | }); |
| | | console.log(result); |
| | | if(result){ |
| | |
| | | if(results){ |
| | | this.showToast(results,"error"); |
| | | this.dispatchEvent(new CloseActionScreenEvent()); |
| | | } |
| | | } else{ |
| | | setTimeout(() => { |
| | | refreshApex(this.record); |
| | | this.dispatchEvent(new CloseActionScreenEvent()); |
| | | }, 1000); |
| | | |
| | | } |
| | | } catch (error) { |
| | | if(err.faultstring !=undefined && err.faultstring.indexOf('INVALID_SESSION_ID') != -1) { |
| | | this.showToast('当前网页已登出,请您重新登录后刷新该网页!','error'); |
| | |
| | | } |
| | | return; |
| | | } |
| | | this.updateRecordView(this.recordId); |
| | | }); |
| | | // isopd.Id = "{!SolutionProjectRequirements__c.Id}"; |
| | | // isopd.Submint_TF__c = true; |