zhangchunxu
2023-07-21 14e3923804ac265cb8bf6e571232131b662fd204
招标项目 “项目终止”、“项目重启”
1个文件已修改
6个文件已添加
182 ■■■■■ 已修改文件
force-app/main/default/classes/TenderingButtonController.cls 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
force-app/main/default/lwc/lexTenderingProjectRestartButton/lexTenderingProjectRestartButton.html 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
force-app/main/default/lwc/lexTenderingProjectRestartButton/lexTenderingProjectRestartButton.js 64 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
force-app/main/default/lwc/lexTenderingProjectRestartButton/lexTenderingProjectRestartButton.js-meta.xml 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
force-app/main/default/lwc/lexTenderingTerminateResponseButton/lexTenderingTerminateResponseButton.html 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
force-app/main/default/lwc/lexTenderingTerminateResponseButton/lexTenderingTerminateResponseButton.js 79 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
force-app/main/default/lwc/lexTenderingTerminateResponseButton/lexTenderingTerminateResponseButton.js-meta.xml 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
force-app/main/default/classes/TenderingButtonController.cls
@@ -1,3 +1,10 @@
/*
 * @Author: zhangchunxu
 * @Date: 2023-03-31 13:36:53
 * @LastEditors: zhangchunxu
 * @LastEditTime: 2023-07-21 15:09:33
 *
 */
public class TenderingButtonController {
    @AuraEnabled
    public static InitData initTenderingController(String recordId) {
force-app/main/default/lwc/lexTenderingProjectRestartButton/lexTenderingProjectRestartButton.html
New file
@@ -0,0 +1,5 @@
<template>
    <div class="ProjectRestart" if:true={IsLoading}>
        <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
    </div>
</template>
force-app/main/default/lwc/lexTenderingProjectRestartButton/lexTenderingProjectRestartButton.js
New file
@@ -0,0 +1,64 @@
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 { updateRecord } from 'lightning/uiRecordApi';
import  projectRestart  from '@salesforce/apex/TenderingButtonController.projectRestart';
import { ShowToastEvent } from 'lightning/platformShowToastEvent';
import { encodeDefaultFieldValues } from 'lightning/pageReferenceUtils';
export default class lexTenderingProjectRestartButton extends NavigationMixin(LightningElement) {
    @api recordId;//当前这条数据的id
    id;//返回值的id  Tender_information__c招标项目的id
    status;
    IsLoading = true;
    @wire(CurrentPageReference)
     getStateParameters(currentPageReference) {
         if (currentPageReference) {
           const urlValue = currentPageReference.state.recordId;
           if (urlValue) {
             let str = `${urlValue}`;
             this.recordId = str;
           }
         }
     }
    //招标项目 项目重启
    connectedCallback(){
        init({
            recordId: this.recordId
        }).then(result => {
            this.IsLoading = false;
            this.status = result.status;
            this.projectRestart();
        })
    }
    projectRestart(){
        if(this.status == '09.终止'){
            projectRestart({recordId: this.recordId}).then(res=>{
                if(res != "1"){
                    var messageage = "";
                    messageage = res;
                    this.showToast(messageage,"error");
                }else{
                    this.updateRecordView();
                    this.dispatchEvent(new CloseActionScreenEvent());
                }
            }).catch(resp=>{
            })
        }else{
            // alert('终止审批状态不满足条件,无法重启。');
            this.showToast('终止审批状态不满足条件,无法重启。',"error");
            return;
        }
    }
    updateRecordView() {
        updateRecord({fields: { Id: this.recordId }});
    }
    showToast(msg,type) {
        const event = new ShowToastEvent({
            message: msg,
            variant: type
        });
        this.dispatchEvent(event);
        this.dispatchEvent(new CloseActionScreenEvent());
    }
}
force-app/main/default/lwc/lexTenderingProjectRestartButton/lexTenderingProjectRestartButton.js-meta.xml
New file
@@ -0,0 +1,11 @@
<?xml version="1.0"?>
<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
    <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>
force-app/main/default/lwc/lexTenderingTerminateResponseButton/lexTenderingTerminateResponseButton.html
New file
@@ -0,0 +1,5 @@
<template>
    <div class="ProjectRestart" if:true={IsLoading}>
        <lightning-spinner alternative-text="Loading" size="medium"></lightning-spinner>
    </div>
</template>
force-app/main/default/lwc/lexTenderingTerminateResponseButton/lexTenderingTerminateResponseButton.js
New file
@@ -0,0 +1,79 @@
/*
 * @Author: zhangchunxu
 * @Date: 2023-07-12 10:01:02
 * @LastEditors: zhangchunxu
 * @LastEditTime: 2023-07-21 14:30:48
 *
 */
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 { updateRecord } from 'lightning/uiRecordApi';
import  projectRestart  from '@salesforce/apex/TenderingButtonController.projectRestart';
import { ShowToastEvent } from 'lightning/platformShowToastEvent';
import { encodeDefaultFieldValues } from 'lightning/pageReferenceUtils';
export default class lexTenderingTerminateResponseButton extends NavigationMixin(LightningElement) {
    @api recordId;//当前这条数据的id
    id;//返回值的id  Tender_information__c招标项目的id
    status;
    IsLoading = true;
    TerminateApprovalStatus;
    AccSize = [];
    @wire(CurrentPageReference)
     getStateParameters(currentPageReference) {
         if (currentPageReference) {
           const urlValue = currentPageReference.state.recordId;
           if (urlValue) {
             let str = `${urlValue}`;
             this.recordId = str;
           }
         }
     }
    //招标项目 项目终止
    connectedCallback(){
        init({
            recordId: this.recordId
        }).then(result => {
            this.IsLoading = false;
            this.status = result.status;
            this.TerminateApprovalStatus = result.TerminateApprovalStatus;
            this.AccSize = result.AccSize;
            this.TerminateResponse();
        })
    }
    TerminateResponse(){
        if(this.TerminateApprovalStatus == '批准' || this.TerminateApprovalStatus == '申请中'){
        // alert("已存在申请中或者已批准的终止信息。");
        this.showToast('已存在申请中或者已批准的终止信息。',"error");
        return;
        }
        if (this.AccSize.length > 0 && parseInt(this.AccSize[0].total_cnt) > 0) {
            // alert("测试:" + sqlResult.records);
            var total_cnt = parseInt(this.AccSize[0].total_cnt);
            var stage_cnt = parseInt(this.AccSize[0].stage_cnt);
            var statusf_cnt = parseInt(this.AccSize[0].statusf_cnt);
            // alert("测试:关联询价数:"+total_cnt +"|状态1符合数:"+stage_cnt+"|状态2符合数:"+statusf_cnt+"|"+(total_cnt != stage_cnt || total_cnt != statusf_cnt));
            // 判断总数和各状态符合数
            if (total_cnt != stage_cnt || total_cnt != statusf_cnt) {
            // alert("关联询价状态不符合终止申请条件。");
            this.showToast('关联询价状态不符合终止申请条件。',"error");
            return;
            }
        }
        window.open ('/apex/Terminate?id='+this.recordId, '', 'height=350, width=600, top=200, left=350,location=no');
        this.dispatchEvent(new CloseActionScreenEvent());
    }
    updateRecordView() {
        updateRecord({fields: { Id: this.recordId }});
    }
    showToast(msg,type) {
        const event = new ShowToastEvent({
            message: msg,
            variant: type
        });
        this.dispatchEvent(event);
        this.dispatchEvent(new CloseActionScreenEvent());
    }
}
force-app/main/default/lwc/lexTenderingTerminateResponseButton/lexTenderingTerminateResponseButton.js-meta.xml
New file
@@ -0,0 +1,11 @@
<?xml version="1.0"?>
<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata">
    <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>