yumenghui
2023-08-11 d533f39b6fa798e238810d17e928dee75d5b1af7
force-app/main/default/lwc/lexAddSubmitApprovalProcess/lexAddSubmitApprovalProcess.js
@@ -5,7 +5,9 @@
import { updateRecord } from 'lightning/uiRecordApi';
import init from '@salesforce/apex/AddSubmitApprovalProcessController.init';
import setSObjectShare from '@salesforce/apex/ControllerUtil.setSObjectShare'
import submitApproval from '@salesforce/apex/AddSubmitApprovalProcessController.submitApproval';
import setSObjectShare from '@salesforce/apex/ControllerUtil.setSObjectShare';
export default class lexAddSubmitApprovalProcess extends LightningElement {
   @api recordId;
   IsLoading = true;
@@ -27,7 +29,7 @@
         recordId: this.recordId
      }).then(result=>{
         if(result.addApprovalStatus != '草案中' || result.detailSize == 0){
            this.ToastShow('没有需要审批的追加附属品');
            this.ToastShow('没有需要审批的追加附属品','warning');
                return;
         }
         if (!confirm("一旦提交此记录以待批准,根据您的设置您可能不再能够编辑此记录或将他从批准过程中调回。是否继续?")) {
@@ -39,53 +41,54 @@
         // alert('希望到货日不能早于申请提交日');
         // return;
         // } 
         console.log(JSON.stringify(result));
         if(result.repairId != null){
            if(result.demoPurpose1 == '维修代用' && result.demoPurpose2 == '一般用户'){
               if(result.repairEstimatedDateFormula == null){
                  this.ToastShow('一般维修无报价日,不可借用备品');
                  this.ToastShow('一般维修无报价日,不可借用备品','warning');
                      return;
               }else if(result.repairEstimatedDateFormula <'2019-07-01' && result.agreedDate == null){
                  this.ToastShow('报价日在2019/7/1之前且户同意日为空,不可借用备品');
                  this.ToastShow('报价日在2019/7/1之前且户同意日为空,不可借用备品','warning');
                      return;
               }
            }
            if(result.recordTypeId !='01210000000RHIn' && result.newProductGuaranteeObject=='2: 服务多年保修' && (result.assetModelNo=='CV-V1' ||result.assetModelNo=='CV-V1(A)'||result.assetModelNo=='CV-V1(B)'||result.assetModelNo=='GIF-LV1'||result.assetModelNo=='CF-LV1L'||result.assetModelNo=='CF-LV1I'||result.assetModelNo=='MAJ-1910') &&(result.demoPurpose2=='一般用户'||result.demoPurpose2=='再修理')){
               this.ToastShow('奥辉设备,保修期内不提供备品.');
            //备品申请 过去历史转移
            if(result.recordTypeId != result.demoRequestPastDataId && result.newProductGuaranteeObject=='2: 服务多年保修' && (result.assetModelNo=='CV-V1' ||result.assetModelNo=='CV-V1(A)'||result.assetModelNo=='CV-V1(B)'||result.assetModelNo=='GIF-LV1'||result.assetModelNo=='CF-LV1L'||result.assetModelNo=='CF-LV1I'||result.assetModelNo=='MAJ-1910') &&(result.demoPurpose2=='一般用户'||result.demoPurpose2=='再修理')){
               this.ToastShow('奥辉设备,保修期内不提供备品.','warning');
                   return;
            }
         }
         if(result.campaignId!=null || result.campaignId!=''){
            if(result.rentalApplyFlag == '草案中'){
               this.ToastShow('学会状态为草案中,不能提交');
            if(result.campaignStatus == '草案中'){
               this.ToastShow('学会状态为草案中,不能提交','warning');
               return;
            }
            if(result.rentalApplyFlag == '申请中'){
               this.ToastShow('学会状态为申请中,不能提交');
            if(result.campaignStatus == '申请中'){
               this.ToastShow('学会状态为申请中,不能提交','warning');
               return;
            }
            if(result.rentalApplyFlag == '已结束'){
               this.ToastShow('学会状态为已结束,不能提交');
            if(result.campaignStatus == '已结束'){
               this.ToastShow('学会状态为已结束,不能提交','warning');
               return;
            }
            if(result.rentalApplyFlag == '已提交报告'){
               this.ToastShow('学会状态为已提交报告,不能提交');
            if(result.campaignStatus == '已提交报告'){
               this.ToastShow('学会状态为已提交报告,不能提交','warning');
               return;
            }
            if(result.rentalApplyFlag == '取消申请中'){
               this.ToastShow('学会状态为取消申请中,不能提交');
            if(result.campaignStatus == '取消申请中'){
               this.ToastShow('学会状态为取消申请中,不能提交','warning');
               return;
            }
            if(result.rentalApplyFlag == '取消'){
               this.ToastShow('学会状态为取消,不能提交');
            if(result.campaignStatus == '取消'){
               this.ToastShow('学会状态为取消,不能提交','warning');
               return;
            }
         }
         if(result.qISNumber!=null || result.qISNumber!=''){
            if(result.nextAction=='送回'){
               this.ToastShow('QIS 已送回,不能再申请备品了');
               this.ToastShow('QIS 已送回,不能再申请备品了','warning');
               return;
            }
         }
@@ -112,48 +115,60 @@
            userAccess:userAccess,
            ownerId:result.ownerId
         }).then(res=>{
            if(res!='OK'){
               this.ToastShow(res);
            console.log('setSObjectShareSuccess===='+res);
            if(res!='OK'){
               this.ToastShow(res,'warning');
               return;
            }
         }).catch(err=>{
            console.log('setSObjectShareErr====',err);
            console.log('setSObjectShareErr===='+err);
         })
         var request = new sforce.ProcessSubmitRequest();
         request.objectId = "{!Rental_Apply__c.Id}";
         var processResults = sforce.connection.process([request]);
         // var request = new sforce.ProcessSubmitRequest();
         // request.objectId = "{!Rental_Apply__c.Id}";
         // var processResults = sforce.connection.process([request]);
         if (processResults[0].errors != null) {
            var back = new sforce.SObject("Rental_Apply__c");
            back.Id = "{!Rental_Apply__c.Id}";
            back.Add_Approval_Status__c = "草案中";
            var backResult = sforce.connection.update([back]);
            backMessages = this.getConnectDMLErrorMessages(backResult);
            if (backMessages.length > 0) {
            alert(backMessages.join("\n"));
            return;
            }
         // if (processResults[0].errors != null) {
         //    var back = new sforce.SObject("Rental_Apply__c");
         //    back.Id = "{!Rental_Apply__c.Id}";
         //    back.Add_Approval_Status__c = "草案中";
         //    var backResult = sforce.connection.update([back]);
         //    backMessages = this.getConnectDMLErrorMessages(backResult);
         //    if (backMessages.length > 0) {
         //       this.showToast(backMessages.join("\n"),'error');
         //       return;
         //    }
            var errmsg = processResults[0].errors.message.toString();
            alert(errmsg);
            return;
         }
         //    var errmsg = processResults[0].errors.message.toString();
         //    this.showToast(errmsg,'error');
         //    return;
         // }
          //updateRecord({fields: { Id: this.recordId }});
          submitApproval({
             recordId: this.recordId
          }).then(res=>{
             console.log('submitApproval===='+res);
             if(res == 'OK'){
                this.ToastShow('提交成功','success');
             }else{
                this.ToastShow(res,'error');
             }
          })
          updateRecord({fields: { Id: this.recordId }});
          
      }).catch(err=>{
         console.log('sErr====',err);
         console.log('sErr====',err.message);
      })
   }
   ToastShow(msg){
   ToastShow(msg,type){
      const evt = new ShowToastEvent({
            title : msg,
            message: '',
            variant: 'warning'
            variant: type
        });
        this.dispatchEvent(evt);
        this.dispatchEvent(new CloseActionScreenEvent());