From 8749760be3e1ba64edd4ada506bdf628e5bee852 Mon Sep 17 00:00:00 2001
From: unknown <sunxia@prec-tech.com>
Date: 星期三, 23 八月 2023 14:54:38 +0800
Subject: [PATCH] 再修理返品分析-修理 按钮
---
force-app/main/default/lwc/lexRepairReturnAnalysis/lexRepairReturnAnalysis.js | 78 +++++++++++++++
force-app/main/default/classes/lexRepairAgainAnController.cls | 195 +++++++++++++++++++++++++++++++++++++++
force-app/main/default/lwc/lexRepairReturnAnalysis/lexRepairReturnAnalysis.js-meta.xml | 11 ++
force-app/main/default/classes/lexRepairAgainAnController.cls-meta.xml | 5 +
force-app/main/default/lwc/lexRepairReturnAnalysis/lexRepairReturnAnalysis.html | 3
5 files changed, 292 insertions(+), 0 deletions(-)
diff --git a/force-app/main/default/classes/lexRepairAgainAnController.cls b/force-app/main/default/classes/lexRepairAgainAnController.cls
new file mode 100644
index 0000000..d3e5329
--- /dev/null
+++ b/force-app/main/default/classes/lexRepairAgainAnController.cls
@@ -0,0 +1,195 @@
+/**
+ * *
+ ODescription:
+ GAuthor: sun xia
+ @Date: 2023-07-17 14:31:56
+ GIastEditors: sun xia
+ @IastEditTime: 2023-07-27 14:31:56
+ * */
+public without sharing class lexRepairAgainAnController{
+
+ @AuraEnabled
+ public static InitData initRepair(String recordId){
+ InitData res = new InitData();
+ try {
+ List<Repair__c> reList = [SELECT Id, Name, SAP_Service_Repair_No__c FROM Repair__c WHERE Id = :recordId];
+ List<RepairAgainAn__c> raaList = [SELECT Id, Repair__c, RepairAgain_Status__c, ActionOCM__c, Technical_Responsibility__c,
+ OCM_Confirmer__c, RepairAgainAn_Approve_status__c, JudgementOSH__c, AnalysisOSH__c, AnalysisReasonOSH__c, ActionOSH__c,
+ JudgementOSH2__c, AnalysisOSH2__c, AnalysisReasonOSH2__c, ActionOSH2__c, RC_Confirmer__c, RepairLast__c FROM RepairAgainAn__c where Repair__c = :recordId];
+ if(reList.size()>0){
+ res.sAPServiceRepairNo = reList[0].SAP_Service_Repair_No__c;
+ }
+ if(raaList.size()>0){
+ res.repairAgainAnLength = raaList.size();
+ }
+ }
+ catch (Exception e) {
+ System.debug('lexRepairAgainAnController==='+e.getMessage());
+ }
+
+
+ return res;
+ }
+
+ //浠庝慨鐞嗗崟鑾峰彇Id 鏌ユ湁鏃犲啀淇悊杩斿搧鍒嗘瀽
+ @AuraEnabled
+ public static InitData init(String recordId){
+ InitData res = new InitData();
+ try {
+ List<Repair__c> reList = [SELECT Id, Name, SAP_Service_Repair_No__c FROM Repair__c WHERE Id = :recordId];
+ List<RepairAgainAn__c> raaList = [SELECT Id, Repair__c, RepairAgain_Status__c, ActionOCM__c, Technical_Responsibility__c,
+ OCM_Confirmer__c, RepairAgainAn_Approve_status__c, JudgementOSH__c, AnalysisOSH__c, AnalysisReasonOSH__c, ActionOSH__c,
+ JudgementOSH2__c, AnalysisOSH2__c, AnalysisReasonOSH2__c, ActionOSH2__c, RC_Confirmer__c, RepairLast__c FROM RepairAgainAn__c where Id = :recordId];
+ //Repair__c =:recordId AND RepairAgain_Status__c !='鍙栨秷'
+ if(raaList.size()>0){
+ res.repairAgainAnLength = raaList.size();
+ res.repairAgainStatus = raaList[0].RepairAgain_Status__c;
+ res.actionOCM = raaList[0].ActionOCM__c;
+ res.oCMConfirmer = raaList[0].OCM_Confirmer__c;
+ res.technicalResponsibility = raaList[0].Technical_Responsibility__c;
+ res.repairAgainAnApproveStatus = raaList[0].RepairAgainAn_Approve_status__c;
+ res.judgementOSH = raaList[0].JudgementOSH__c;
+ res.analysisOSH = raaList[0].AnalysisOSH__c;
+ res.analysisReasonOSH = raaList[0].AnalysisReasonOSH__c;
+ res.actionOSH = raaList[0].ActionOSH__c;
+ res.judgementOSH2 = raaList[0].JudgementOSH2__c;
+ res.analysisOSH2 = raaList[0].AnalysisOSH2__c;
+ res.analysisReasonOSH2 = raaList[0].AnalysisReasonOSH2__c;
+ res.actionOSH2 = raaList[0].ActionOSH2__c;
+ res.rCConfirmer = raaList[0].RC_Confirmer__c;
+ res.repairLast = raaList[0].RepairLast__c;
+ res.repairAgainAnName = raaList[0].Name;
+ }else{
+ res.repairAgainAnLength = 0;
+ }
+
+ if(reList.size()>0){
+ res.sAPServiceRepairNo = reList[0].SAP_Service_Repair_No__c;
+ }
+ System.debug('reList======='+reList);
+ System.debug('lexRepairAgainAnController==='+res);
+ }
+ catch (Exception e) {
+ System.debug('lexRepairAgainAnController==='+e.getMessage());
+ }
+ return res;
+ }
+
+ //鏇存柊OCSM鎻愪氦鐘舵��
+ @AuraEnabled
+ public static String updateStatus(String recordId, String updateStatus){
+ RepairAgainAn__c updateRepairAgainAn = new RepairAgainAn__c();
+ try {
+ updateRepairAgainAn.Id = recordId;
+ updateRepairAgainAn.OCSM_Approve_Status__c = updateStatus;
+ UPDATE updateRepairAgainAn;
+ return 'SUCCESS';
+ }
+ catch (Exception e) {
+ System.debug('lexRepairAgainAnController===updateStatus'+e.getMessage());
+ return 'ERROR';
+ }
+ }
+
+ //鏇存柊鍐嶄慨鐞嗚繑鍝佸垎鏋愮姸鎬�
+ @AuraEnabled
+ public static String updateRepairAgainStatus(String recordId, String updateStatus){
+ RepairAgainAn__c updateRepairAgainAn = new RepairAgainAn__c();
+ try {
+ updateRepairAgainAn.Id = recordId;
+ updateRepairAgainAn.RepairAgain_Status__c = updateStatus;
+ UPDATE updateRepairAgainAn;
+
+ // Approval.ProcessSubmitRequest req = new Approval.ProcessSubmitRequest();
+ // req.setObjectId(recordId);
+ // // 璁剧疆瀵硅薄ID锛屽彲浠ユ槸瑕佹彁浜ゅ鎵圭殑璁板綍ID
+ // Approval.ProcessResult result = Approval.process(req);
+ // if (result.isSuccess()) { System.debug('Approval request successfully submitted.'); }
+ // else { System.debug('Approval request submission failed: ' + result.getErrors()[0].getMessage()); }
+ return 'SUCCESS';
+ }
+ catch (Exception e) {
+ System.debug('lexRepairAgainAnController===updateRepairAgainStatus'+e.getMessage());
+ return 'ERROR';
+ }
+ }
+
+ //鏇存柊OSH瀹℃壒鐘舵��
+ @AuraEnabled
+ public static String updateRepairAgainAnApproveStatus(String recordId, String updateStatus){
+ RepairAgainAn__c updateRepairAgainAn = new RepairAgainAn__c();
+ try {
+ updateRepairAgainAn.Id = recordId;
+ updateRepairAgainAn.RepairAgainAn_Approve_status__c = updateStatus;
+ updateRepairAgainAn.OSH_Detector__c = UserInfo.getUserId();
+ UPDATE updateRepairAgainAn;
+ return 'SUCCESS';
+ }
+ catch (Exception e) {
+ System.debug('lexRepairAgainAnController===updateRepairAgainAnApproveStatus'+e.getMessage());
+ return 'ERROR';
+ }
+ }
+
+
+ //鏇存柊OSH瀹℃壒鐘舵�� 浜屾
+ @AuraEnabled
+ public static String updateRepairAgainAnApproveStatus2(String recordId, String judgementOSH2){
+ RepairAgainAn__c updateRepairAgainAn = new RepairAgainAn__c();
+ try {
+ updateRepairAgainAn.Id = recordId;
+ if(judgementOSH2.equals('鏁呴殰鏈啀鐜�')){
+ updateRepairAgainAn.RepairAgain_Status__c = 'OSH濉啓瀹屾瘯';
+ }else{
+ updateRepairAgainAn.RepairAgainAn_Approve_status2__c = '宸叉彁浜�';
+ }
+ updateRepairAgainAn.OSH_Detector2__c = UserInfo.getUserId();
+ UPDATE updateRepairAgainAn;
+ return 'SUCCESS';
+ }
+ catch (Exception e) {
+ System.debug('lexRepairAgainAnController===updateRepairAgainAnApproveStatus2'+e.getMessage());
+ return 'ERROR';
+ }
+
+ }
+
+ public class InitData{
+ @AuraEnabled
+ public Integer repairAgainAnLength; //鍐嶄慨鐞嗚繑鍝佷釜鏁�
+ @AuraEnabled
+ public String repairAgainAnName;
+ @AuraEnabled
+ public String sAPServiceRepairNo; //淇悊.SAP_Service_Repair_No__c
+ @AuraEnabled
+ public String repairAgainStatus; //鐘舵��
+ @AuraEnabled
+ public String actionOCM; //瀹㈡埛瀵瑰簲锛圤CSM锛�
+ @AuraEnabled
+ public String technicalResponsibility; //鎶�鏈媴褰�
+ @AuraEnabled
+ public String oCMConfirmer; //OCSM纭鑰�
+ @AuraEnabled
+ public String repairAgainAnApproveStatus; //OSH瀹℃壒鐘舵��
+ @AuraEnabled
+ public String judgementOSH; //缁撹锛圤SH锛�
+ @AuraEnabled
+ public String analysisOSH; //鎶�鏈娴嬪垎鏋愶紙OSH鍖荤枟鍝佽川淇濋殰閮ㄥ~鍐欙級
+ @AuraEnabled
+ public String analysisReasonOSH; //鎶�鏈娴嬪垎鏋愬師鍥�
+ @AuraEnabled
+ public String actionOSH; //鎶�鏈搴�
+ @AuraEnabled
+ public String judgementOSH2; //缁撹锛圤SH锛変簩娆�
+ @AuraEnabled
+ public String analysisOSH2; //鎶�鏈娴嬪垎鏋愶紙OSH鍖荤枟鍝佽川淇濋殰閮ㄥ~鍐欙級浜屾
+ @AuraEnabled
+ public String analysisReasonOSH2; //鎶�鏈娴嬪垎鏋愬師鍥�(浜屾)
+ @AuraEnabled
+ public String actionOSH2; //鎶�鏈搴�(浜屾)
+ @AuraEnabled
+ public String rCConfirmer; //
+ @AuraEnabled
+ public String repairLast;
+ }
+}
\ No newline at end of file
diff --git a/force-app/main/default/classes/lexRepairAgainAnController.cls-meta.xml b/force-app/main/default/classes/lexRepairAgainAnController.cls-meta.xml
new file mode 100644
index 0000000..541584f
--- /dev/null
+++ b/force-app/main/default/classes/lexRepairAgainAnController.cls-meta.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ApexClass xmlns="http://soap.sforce.com/2006/04/metadata">
+ <apiVersion>50.0</apiVersion>
+ <status>Active</status>
+</ApexClass>
diff --git a/force-app/main/default/lwc/lexRepairReturnAnalysis/lexRepairReturnAnalysis.html b/force-app/main/default/lwc/lexRepairReturnAnalysis/lexRepairReturnAnalysis.html
new file mode 100644
index 0000000..af9fa97
--- /dev/null
+++ b/force-app/main/default/lwc/lexRepairReturnAnalysis/lexRepairReturnAnalysis.html
@@ -0,0 +1,3 @@
+<template>
+
+</template>
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexRepairReturnAnalysis/lexRepairReturnAnalysis.js b/force-app/main/default/lwc/lexRepairReturnAnalysis/lexRepairReturnAnalysis.js
new file mode 100644
index 0000000..2b04629
--- /dev/null
+++ b/force-app/main/default/lwc/lexRepairReturnAnalysis/lexRepairReturnAnalysis.js
@@ -0,0 +1,78 @@
+import { LightningElement, track, wire, api } from 'lwc';
+import { CurrentPageReference } from 'lightning/navigation';
+import { NavigationMixin } from 'lightning/navigation';
+import { encodeDefaultFieldValues } from 'lightning/pageReferenceUtils';
+import { ShowToastEvent } from 'lightning/platformShowToastEvent';
+import { CloseActionScreenEvent } from 'lightning/actions';
+
+import initRepair from '@salesforce/apex/lexRepairAgainAnController.initRepair';
+export default class lexRepairReturnAnalysis extends NavigationMixin(LightningElement) {
+
+ @api recordId;
+
+ @wire(CurrentPageReference)
+ getStateParameters(currentPageReference) {
+ if (currentPageReference) {
+ const urlValue = currentPageReference.state.recordId;
+ if (urlValue) {
+ let str = `${urlValue}`;
+ this.recordId = str;
+ }
+ }
+ }
+
+ connectedCallback(){
+ initRepair({
+ recordId: this.recordId
+ }).then(res=>{
+ console.log('init====='+JSON.stringify(res));
+ if(res){
+ if(res.repairAgainAnLength > 0){
+ this.showToast('璇ヤ慨鐞嗗凡瀛樺湪鍐嶄慨鐞嗗垎鏋愶紝涓嶈兘鏂板缓','warning');
+ return;
+ }
+
+ if(res.sAPServiceRepairNo == '' || res.sAPServiceRepairNo==null){
+ this.showToast('璇ヤ慨鐞嗚繕娌℃湁涓婁紶SAP锛屼笉鑳藉鏂板缓鍐嶄慨鐞嗗垎鏋�','warning');
+ return;
+ }
+ this.showNewObject()
+ }
+ })
+ }
+
+ showNewObject(){
+ console.log('showNewObject==');
+ const defaultFieldValues = encodeDefaultFieldValues({
+ Repair__c: this.recordId,
+ Name: '*'
+ });
+
+ this[NavigationMixin.Navigate]({
+ type: 'standard__objectPage',
+ attributes: {
+ objectApiName: 'RepairAgainAn__c',
+ actionName: 'new',
+ RecordType:''
+ },
+ state: {
+ nooverride: '1',
+ defaultFieldValues: defaultFieldValues
+ }
+ })
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+
+ showToast(msg,type) {
+ const event = new ShowToastEvent({
+ message: msg,
+ variant: type
+ });
+ if(type == 'success'){
+ this.updateRecordView(this.recordId);
+ }
+ this.dispatchEvent(event);
+ this.dispatchEvent(new CloseActionScreenEvent());
+ }
+
+}
\ No newline at end of file
diff --git a/force-app/main/default/lwc/lexRepairReturnAnalysis/lexRepairReturnAnalysis.js-meta.xml b/force-app/main/default/lwc/lexRepairReturnAnalysis/lexRepairReturnAnalysis.js-meta.xml
new file mode 100644
index 0000000..fde43eb
--- /dev/null
+++ b/force-app/main/default/lwc/lexRepairReturnAnalysis/lexRepairReturnAnalysis.js-meta.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata" fqn="lexRepairReturnAnalysis">
+ <apiVersion>54.0</apiVersion>
+ <isExposed>true</isExposed>
+ <targets>
+ <target>lightning__RecordPage</target>
+ <target>lightning__AppPage</target>
+ <target>lightning__HomePage</target>
+ <target>lightning__RecordAction</target>
+ </targets>
+</LightningComponentBundle>
\ No newline at end of file
--
Gitblit v1.9.1