From 600af396ba134ee34b09f732c6b899eee8e7f984 Mon Sep 17 00:00:00 2001
From: KKbes <1620284052@qq.com>
Date: 星期三, 26 七月 2023 16:06:57 +0800
Subject: [PATCH] 任务
---
force-app/main/default/aura/lexExistingInquiryAura/lexExistingInquiryAuraController.js | 5
force-app/main/default/lwc/lexExistingInquiry/lexExistingInquiry.js-meta.xml | 11 +
force-app/main/default/aura/lexExistingInquiryAura/lexExistingInquiryAura.cmp | 8 +
force-app/main/default/aura/lexExistingInquiryAura/lexExistingInquiryAura.css | 2
force-app/main/default/aura/lexExistingInquiryAura/lexExistingInquiryAuraHelper.js | 5
force-app/main/default/classes/LexInquiryController.cls-meta.xml | 5
force-app/main/default/lwc/lexExistingInquiry/lexExistingInquiry.html | 5
force-app/main/default/classes/LexInquiryController.cls | 105 +++++++++++++++++
force-app/main/default/aura/lexExistingInquiryAura/lexExistingInquiryAura.cmp-meta.xml | 5
force-app/main/default/lwc/lexExistingInquiry/lexExistingInquiry.js | 199 +++++++++++++++++++++++++++++++++
10 files changed, 350 insertions(+), 0 deletions(-)
diff --git a/force-app/main/default/aura/lexExistingInquiryAura/lexExistingInquiryAura.cmp b/force-app/main/default/aura/lexExistingInquiryAura/lexExistingInquiryAura.cmp
new file mode 100644
index 0000000..9d6c40c
--- /dev/null
+++ b/force-app/main/default/aura/lexExistingInquiryAura/lexExistingInquiryAura.cmp
@@ -0,0 +1,8 @@
+<aura:component implements="flexipage:availableForAllPageTypes,force:lightningQuickActionWithoutHeader,force:hasRecordId,lightning:actionOverride,lightning:isUrlAddressable" access="global">
+ <aura:attribute name="recordId" type="String" />
+ <aura:handler name="render" value="{!this}" action="{!c.closeModal}" />
+ <aura:attribute name="isDoneRendering" type="Boolean" default="false"/>
+ <div class="exampleHolder">
+ <c:lexExistingInquiry recordId="{!v.recordId}" />
+ </div>
+</aura:component>
\ No newline at end of file
diff --git a/force-app/main/default/aura/lexExistingInquiryAura/lexExistingInquiryAura.cmp-meta.xml b/force-app/main/default/aura/lexExistingInquiryAura/lexExistingInquiryAura.cmp-meta.xml
new file mode 100644
index 0000000..632b900
--- /dev/null
+++ b/force-app/main/default/aura/lexExistingInquiryAura/lexExistingInquiryAura.cmp-meta.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<AuraDefinitionBundle xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>54.0</apiVersion>
+ <description>A Lightning Component Bundle</description>
+</AuraDefinitionBundle>
diff --git a/force-app/main/default/aura/lexExistingInquiryAura/lexExistingInquiryAura.css b/force-app/main/default/aura/lexExistingInquiryAura/lexExistingInquiryAura.css
new file mode 100644
index 0000000..a5839d4
--- /dev/null
+++ b/force-app/main/default/aura/lexExistingInquiryAura/lexExistingInquiryAura.css
@@ -0,0 +1,2 @@
+.THIS {
+}
\ No newline at end of file
diff --git a/force-app/main/default/aura/lexExistingInquiryAura/lexExistingInquiryAuraController.js b/force-app/main/default/aura/lexExistingInquiryAura/lexExistingInquiryAuraController.js
new file mode 100644
index 0000000..bb1e8ab
--- /dev/null
+++ b/force-app/main/default/aura/lexExistingInquiryAura/lexExistingInquiryAuraController.js
@@ -0,0 +1,5 @@
+({
+ myAction : function(component, event, helper) {
+
+ }
+})
\ No newline at end of file
diff --git a/force-app/main/default/aura/lexExistingInquiryAura/lexExistingInquiryAuraHelper.js b/force-app/main/default/aura/lexExistingInquiryAura/lexExistingInquiryAuraHelper.js
new file mode 100644
index 0000000..24be77e
--- /dev/null
+++ b/force-app/main/default/aura/lexExistingInquiryAura/lexExistingInquiryAuraHelper.js
@@ -0,0 +1,5 @@
+({
+ helperMethod : function() {
+
+ }
+})
\ No newline at end of file
diff --git a/force-app/main/default/classes/LexInquiryController.cls b/force-app/main/default/classes/LexInquiryController.cls
new file mode 100644
index 0000000..4d1621f
--- /dev/null
+++ b/force-app/main/default/classes/LexInquiryController.cls
@@ -0,0 +1,105 @@
+//author 锛� kkbes
+public with sharing class LexInquiryController {
+
+
+ @AuraEnabled
+ public static Task init(String recordId){
+ Task res = new Task();
+
+ try{
+ res=[SELECT Id,Related_Opportunity1__c,QuoteIraiId__c ,Status FROM Task WHERE Id = : recordId ];
+ }
+ catch(Exception e){
+ System.debug(LoggingLevel.INFO, '*** e: ' + e);
+ }
+
+ return res;
+ }
+
+
+ @AuraEnabled
+ public static List<Opportunity> getOpportunityIds(String RelatedOpportunity1){
+ List<Opportunity> res = new List<Opportunity>();
+ try{
+ res=[SELECT id FROM Opportunity WHERE Opportunity_No__c = : RelatedOpportunity1];
+ }
+ catch(Exception e){
+ System.debug(LoggingLevel.INFO, '*** e: ' + e);
+ }
+ return res;
+ }
+
+
+ @AuraEnabled
+ public static QuoteIrai__c getQuoteIrai(String QuoteIraiId){
+ QuoteIrai__c res = new QuoteIrai__c();
+ try{
+ res=[SELECT Id,Lead__c FROM QuoteIrai__c
+ WHERE Id = : QuoteIraiId ];
+ }
+ catch(Exception e){
+ System.debug(LoggingLevel.INFO, '*** e: ' + e);
+ }
+
+ return res;
+ }
+
+
+
+ @AuraEnabled
+ public static String makeAndUpdateLead(String leadId,String Id,String QuoteIraiId){
+ Lead res = new Lead();
+ try{
+ res.Id = leadId;
+ res.Opp_Name_Search__c = Id;
+ if(QuoteIraiId != ''){
+ res.LatestQuotationEntrustment__c=QuoteIraiId;
+ }
+ update res;
+ return 'success';
+ }
+ catch(Exception e){
+ System.debug(LoggingLevel.INFO, '*** e: ' + e);
+ String a = e.getMessage()+' And '+e.getCause();
+ return a;
+ }
+
+ }
+
+ @AuraEnabled
+ public static String makeAndUpdateTask(String Status,String Id){
+ Task res = new Task();
+ try{
+ res.Id = Id;
+ res.Status = Status;
+ res.Quotation_request_completed_time__c = System.now();
+ update res;
+ return 'success';
+ }
+ catch(Exception e){
+ System.debug(LoggingLevel.INFO, '*** e: ' + e);
+ return e.getMessage();
+ }
+
+ }
+
+ @AuraEnabled
+ public static String makeAndUpdateQuoteIrai(String QuoteIraiStatus,String Id){
+ QuoteIrai__c res = new QuoteIrai__c();
+ try{
+ res.Id = Id;
+ res.QuoteIrai_Status__c = QuoteIraiStatus;
+ update res;
+ return 'success';
+ }
+ catch(Exception e){
+ System.debug(LoggingLevel.INFO, '*** e: ' + e);
+ return e.getMessage();
+ }
+
+ }
+
+
+
+
+}
\ No newline at end of file
diff --git a/force-app/main/default/classes/LexInquiryController.cls-meta.xml b/force-app/main/default/classes/LexInquiryController.cls-meta.xml
new file mode 100644
index 0000000..d75b058
--- /dev/null
+++ b/force-app/main/default/classes/LexInquiryController.cls-meta.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ApexClass xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>51.0</apiVersion>
+ <status>Active</status>
+</ApexClass>
diff --git a/force-app/main/default/lwc/lexExistingInquiry/lexExistingInquiry.html b/force-app/main/default/lwc/lexExistingInquiry/lexExistingInquiry.html
new file mode 100644
index 0000000..c444cc3
--- /dev/null
+++ b/force-app/main/default/lwc/lexExistingInquiry/lexExistingInquiry.html
@@ -0,0 +1,5 @@
+<template>
+ <div class="Attachment" if:true={IsLoading}>
+ <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
+ </div>
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexExistingInquiry/lexExistingInquiry.js b/force-app/main/default/lwc/lexExistingInquiry/lexExistingInquiry.js
new file mode 100644
index 0000000..bd43c23
--- /dev/null
+++ b/force-app/main/default/lwc/lexExistingInquiry/lexExistingInquiry.js
@@ -0,0 +1,199 @@
+//author : kk
+//self review 鏇存柊澶辫触杩斿洖鐨勯敊璇俊鎭病鏈変箣鍓峜lass鐨勫ソ銆傜粰鍑虹殑閮芥槸鎰忎箟涓嶆槑鐨勬姤閿�
+
+import { LightningElement, track, wire , api } from 'lwc';
+
+import { CurrentPageReference } from "lightning/navigation";
+import { CloseActionScreenEvent } from 'lightning/actions';
+
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+import init from '@salesforce/apex/LexInquiryController.init';
+import getOpportunityIds from '@salesforce/apex/LexInquiryController.getOpportunityIds';
+import getQuoteIrai from '@salesforce/apex/LexInquiryController.getQuoteIrai';
+import makeAndUpdateLead from '@salesforce/apex/LexInquiryController.makeAndUpdateLead';
+import makeAndUpdateTask from '@salesforce/apex/LexInquiryController.makeAndUpdateTask';
+import makeAndUpdateQuoteIrai from '@salesforce/apex/LexInquiryController.makeAndUpdateQuoteIrai';
+
+
+
+
+
+ const event1 = new ShowToastEvent({
+ message:
+ '璇峰~鍐欒浠风殑缂栫爜',
+ variant : 'error'
+ });
+
+ const event2 = new ShowToastEvent({
+ message:
+ '鏇存柊宸插畬鎴�',
+ variant : 'success'
+ });
+
+ const event3 = new ShowToastEvent({
+ message:
+ '鎶ヤ环濮旀墭鏈叧鑱旀剰鍚�',
+ variant : 'error'
+ });
+
+ const event4 = new ShowToastEvent({
+ message:
+ '缂栫爜鏈夎!璇风‘璁ゆ纭殑缂栫爜',
+ variant : 'error'
+ });
+ const event5 = new ShowToastEvent({
+ message:
+ '浠诲姟宸茬粨鏉燂紝濡傞渶淇敼璇疯仈绯荤鐞嗗憳',
+ variant : 'error'
+ });
+export default class lexExistingInquiry extends LightningElement {
+
+ @api recordId;
+ Task;
+ QuoteIrai;
+ Opportunity;
+ NewLead;
+ NewTask;
+ NewQuoteIrai;
+ IsLoading=true;
+
+
+
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ this.recordId = str;
+ }
+ }
+ }
+
+
+
+ connectedCallback(){
+ console.log(this.recordId);
+ init({
+ recordId: this.recordId
+ }).then(result => {
+ console.log(result);
+ if (result != null) {
+ this.Task = result;
+ this.ExistingInquiry().then(result=>{
+ IsLoading=false;
+ this.dispatchEvent(new CloseActionScreenEvent());
+ });
+ }
+ }).catch(error => {
+ console.log("error");
+ console.log(error);
+ });
+
+ }
+
+
+
+
+ async ExistingInquiry(){
+ var judage = 0;
+ if( this.Task.Status == '鏈潃鎵�'|| this.Task.Status == '閫茶涓�'){
+ if(this.Task.Related_Opportunity1__c == undefined || this.Task.Related_Opportunity1__c ==''){
+ this.dispatchEvent(event1);
+ }
+ else{
+ await getOpportunityIds({ RelatedOpportunity1 : this.Task.Related_Opportunity1__c
+ }).then(res =>{
+ this.Opportunity=res;
+
+ });
+ if(this.Opportunity.length>0){
+ await getQuoteIrai({QuoteIraiId : this.Task.QuoteIraiId__c
+ }).then(res=>{
+ this.NewTask=res;
+ }).catch(err=>{
+ console.log("err:",err.message);
+ });
+
+ if(this.NewTask.Lead__c){
+ // Lead浣滄垚骞舵洿
+ await makeAndUpdateLead({ Lead_c : this.Opportunity.Lead__c, Id : this.NewTask.Id,
+ QuoteIraiId__c : this.Task.QuoteIraiId__c
+ }).then(res=>{
+ if(res !='success'){
+ const event6 = new ShowToastEvent({
+ message:
+ res+',Lead鏇存柊閿欒',
+ variant : 'error'
+ });
+ judage +=1;
+ this.dispatchEvent(event6);
+ }
+ });
+ if(judage!=0){
+ return;
+ }
+ // 鍒ゆ柇鎶ヤ环濮旀墭
+ if( this.Task.QuoteIraiId__c != '') {
+ // 鎶ヤ环濮旀墭浣滄垚
+ await makeAndUpdateQuoteIrai({ QuoteIraiStatus : "宸叉湁璇环", Id : this.Task.QuoteIraiId__c
+ }).then(res=>{
+ if(res!= 'success'){
+ const event8 = new ShowToastEvent({
+ message:
+ res+',QuoteIrai鏇存柊閿欒',
+ variant : 'error'
+ });
+ this.dispatchEvent(event8);
+ judage +=1;
+ }
+ });
+ if(judage!=0){
+ return;
+ }
+
+ }
+ // Task鍋氭垚骞舵洿鏂�
+ await makeAndUpdateTask({
+ Status : "宸叉湁璇环", Id : this.Task.Id
+ }).then(res=>{
+ if(res !='success'){
+ const event7 = new ShowToastEvent({
+ message:
+ res+',Task鏇存柊閿欒',
+ variant : 'error'
+ });
+ this.dispatchEvent(event7);
+ judage +=1;
+ }
+ else{
+ this.dispatchEvent(event2);
+ //鍙戦�佹垚鍔熷悗锛屽笇鏈涜嚜鍔ㄥ埛鏂扮敾闈€��
+ location.reload();
+ }
+ if(judage!=0){
+ return;
+ }
+
+ });
+ }
+ else{
+ this.dispatchEvent(event3);
+ }
+ }
+ else{
+ this.dispatchEvent(event4);
+ }
+ }
+ }
+
+ else{
+ this.dispatchEvent(event5);
+ }
+
+ }
+
+
+
+}
diff --git a/force-app/main/default/lwc/lexExistingInquiry/lexExistingInquiry.js-meta.xml b/force-app/main/default/lwc/lexExistingInquiry/lexExistingInquiry.js-meta.xml
new file mode 100644
index 0000000..5286b86
--- /dev/null
+++ b/force-app/main/default/lwc/lexExistingInquiry/lexExistingInquiry.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata" fqn="lexExistingInquiry">
+ <apiVersion>51.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__AppPage</target>
+ <target>lightning__RecordPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
--
Gitblit v1.9.1