黄千龙
2023-07-18 17b4d477edf91f55ffce09b2e180c9308431488a
hql20230718Page提交
3个文件已修改
4个文件已添加
728 ■■■■ 已修改文件
force-app/main/default/lwc/lexChoiceAsset/lexChoiceAsset.css 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
force-app/main/default/lwc/lexChoiceAsset/lexChoiceAsset.html 118 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
force-app/main/default/lwc/lexChoiceAsset/lexChoiceAsset.js 356 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
force-app/main/default/lwc/lexChoiceAsset/lexChoiceAsset.js-meta.xml 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
force-app/main/default/pages/MaintenanceContractPCL.page 179 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
force-app/main/default/pages/MoreMaintenanceContract.page 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
force-app/main/default/pages/NewPaymentPlanLoad.page 37 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
force-app/main/default/lwc/lexChoiceAsset/lexChoiceAsset.css
New file
@@ -0,0 +1,20 @@
/*div {
    color: #fff;
    height: 300px;
    overflow-y: auto;
    overflow-x: hidden;
}*/
 .spacer {
    height: 10px;
    /* 设置合适的高度来隔开上下两个模块 */
  }
/*.container {
    width: 1200px;
    height: 1000px;
    .uiModal--medium .modal-container
 }*/
/* .modal-container.slds-modal__container{
   min-width: 1200px;
   max-width: 1200px;
   width: 100%;
 }*/
force-app/main/default/lwc/lexChoiceAsset/lexChoiceAsset.html
New file
@@ -0,0 +1,118 @@
<template  >
    <div>
    <apex:outputPanel id="all">
        <form id="mainForm">
            <apex:pageBlock id="idSearchSetProduct" title="保有设备查找">
                <table width="900" border="0" style="background-color:#FFFFFF">
                    <colgroup>
                        <col width="20" />
                        <col width="90" />
                        <col width="200" />
                        <col width="10" />
                        <col width="90" />
                        <col width="200" />
                        <col width="10" />
                        <col width="90" />
                        <col width="200" />
                        <col width="80" />
                    </colgroup>
                    <tr>
                        <td>&nbsp;</td>
                        <th style="vertical-align: bottom; font-size:17px">机身编码:</th>
                        <td >
                            <div style="align-items: center; justify-content: center;"><lightning-input value={SearchSN} data-target="SearchSN" onchange={getInput3} ></lightning-input></div>
                        </td>
                        <td>&nbsp;</td>
                        <th style="vertical-align: bottom;font-size:17px">设备型号:</th>
                        <td style="align-items: center; justify-content: center;"> <div style="align-items: center; justify-content: center;"><lightning-input value={SearchNo} data-target="SearchNo" onchange={getInput1} ></lightning-input></div>
                        </td>
                        <td>&nbsp;</td>
                        <th style="vertical-align: bottom; font-size:17px">医院名称:</th>
                         <td style="align-items: center; justify-content: center;"><div style="align-items: center; justify-content: center;"><lightning-input value={SearchName} data-target="SearchName" onchange={getInput2}></lightning-input></div>
                        </td>
                        <td>&nbsp;</td>
                    </tr>
                    <tr>
                        <td>&nbsp;</td>
                        <td>&nbsp;</td>
                        <td>&nbsp;</td>
                        <td>&nbsp;</td>
                        <td>&nbsp;</td>
                        <td>&nbsp;</td>
                        <td>&nbsp;</td>
                        <td>&nbsp;</td>
                        <td>&nbsp;</td>
                        <td>&nbsp;</td>
                    </tr>
                </table>
                <table width="900" border="0" style="background-color:#FFFFFF">
                         <colgroup>
                            <col width="20" />
                            <col width="130" />
                            <col width="70" />
                            <col width="100" />
                            <col width="200" />
                            <col width="100" />
                            <col width="200" />
                            <col width="40" />
                            <col width="30" />
                            <col width="30" />
                        </colgroup>
                        <tr>
                            <td>&nbsp;</td>
                            <td style="vertical-align: bottom;"><lightning-button label="保有设备搜索" onclick={serContact}></lightning-button></td>
                            <td style="vertical-align: bottom;"><lightning-button label="清空" onclick={SelectNone}></lightning-button></td>
                            <td style="vertical-align: bottom;"><lightning-button label="确定" onclick={SelectDone}></lightning-button></td>
                            <td>&nbsp;</td>
                            <td>&nbsp;</td>
                            <td>&nbsp;</td>
                            <td>&nbsp;</td>
                            <td>&nbsp;</td>
                            <td>&nbsp;</td>
                            <td>&nbsp;</td>
                            </tr>
                             <tr>
                            <td style="border-bottom: 1px solid #888;" colspan="15">&nbsp;</td>
                        </tr>
                    </table>
                <table width="900" border="0" style="background-color:#FFFFFF">
                    <col width="10" />
                    <col width="130" />
                    <col width="70" />
                    <tr>
                        <td>&nbsp;</td>
                        <td> <h1 style="font-weight: bold; font-size: 20px;color:#08107b">保有设备查找</h1></td>
                        <td>&nbsp;</td>
                    </tr>
                </table>
                <table width="900" border="0" style="background-color:#FFFFFF">
                    <tr>
                        <td>
                            <table border="0">
                                <tr>
                                    <td>
                                    <div style="height: 600px">
                                    <lightning-datatable
                                            key-field="id"
                                            data={data}
                                            columns={columns}
                                            onrowaction={handleRowAction}>
                                            >
                                    </lightning-datatable>
                                    </div>
                                    </td>
                                </tr>
                            </table>
                        </td>
                    </tr>
                </table>
            </apex:pageBlock>
        </form>
    </apex:outputPanel>
  </div>
</template>
force-app/main/default/lwc/lexChoiceAsset/lexChoiceAsset.js
New file
@@ -0,0 +1,356 @@
import { LightningElement, track, wire ,api} from 'lwc';
import LightningConfirm from 'lightning/confirm';
import jquery183minjs from '@salesforce/resourceUrl/jquery183minjs';
import PleaseWaitDialog from '@salesforce/resourceUrl/PleaseWaitDialog';
import { ShowToastEvent } from 'lightning/platformShowToastEvent';
import Selected from '@salesforce/label/c.Selected';
import Set_Search from '@salesforce/label/c.Set_Search';
import Search_Condition from '@salesforce/label/c.Search_Condition';
import Search  from '@salesforce/label/c.Search';
import Search_Result  from '@salesforce/label/c.Search_Result';
import { NavigationMixin } from 'lightning/navigation';
import { encodeDefaultFieldValues } from 'lightning/pageReferenceUtils';
import { CurrentPageReference } from 'lightning/navigation';
import getNeedParm1  from "@salesforce/apex/LexChoiceAssetController.getNeedParm1";
import init  from "@salesforce/apex/LexChoiceAssetController.init";
import searchAss  from "@salesforce/apex/LexChoiceAssetController.searchAss";
import getData  from "@salesforce/apex/LexChoiceAssetController.getData";
const columns = [
    { label: '选择', fieldName: 'Selected' , minWidth: 20, maxWidth: 20  },
    { label: '保有设备名称', fieldName: 'Name' },
    { label: '机身编码', fieldName: 'SerialNumber' },
    { label: '医院', fieldName: 'HP_Name' },
    { label: '科室', fieldName: 'Department_Name' },
    { label: '发货日', fieldName: 'Posting_Date' },
    { label: '多年保修期至', fieldName: 'Extend_Gurantee_DateTo'},
    { label: '最近一期维修合同结束日', fieldName: 'CurrentContract_End_Date'},
    ];
export default class lexChoiceAsset  extends NavigationMixin(LightningElement) {
    Label = {
        Set_Search,
        Search_Condition,
        Search,
        Search_Result,
        Selected
    }
    @api recordId;
    IsLoading=true;
    data = [];
    columns = columns;
    SSPLine;
    Delivered_Product;
    Department_Name;
    HospitalId;
    WorkLocation;
    //搜索需要的数据
    @track inputData1;
    @track inputData2;
    @track inputData3;
    Id;
    StatusC;
    Incharge_Staff;
    Repair_Detail;
    FaultTime;
    RepairApplicantName;
    HPname;
    DepName;
    PlannedVisitDay;
    ActualVisitDateFirst;
    RepairsReportDate;
    ReceiverTime;
    ActualVisitDateSecon;
    ActualVisitDateThird;
    ApplicationTime;
    canRepair;
    //搜索出的数据 report onclick拼接需要的参数
    needParm2;
    @wire(CurrentPageReference)
     getStateParameters(currentPageReference) {
             console.log(111);
             console.log(currentPageReference);
         if (currentPageReference) {
           const urlValue = currentPageReference.state.recordId;
           if (urlValue) {
             let str = `${urlValue}`;
             console.log("str");
             console.log(str);
             this.recordId = str;
           }
         }
     }
       handleRowAction(event) {
        const action = event.detail.action;
        const row = event.detail.row;
        switch (action.name) {
            case '点击添加':
                this.handleAdd(row);
                break;
            default:
                break;
        }
    }
    handleAdd(row) {
        // Implement edit logic here
        console.log('Editing row' + JSON.stringify(row));
        this.SetProductId(row.setProductidFull);
    }
    getInput1(event){
        this.inputData1=event.detail.value;
    }
    getInput2(event){
        this.inputData2=event.detail.value;
    }
    getInput3(event){
        this.inputData3=event.detail.value;
    }
    connectedCallback(){
        init({
            recordId: this.recordId
        }).then(result => {
            // console.log(result);
            if (result != null) {
                this.IsLoading = false;
                this.Id = result.Id;
                this.StatusC = result.StatusC;
                this.Incharge_Staff = result.OwnerId;
                this.Repair_Detail = result.Repair_Detail;
                this.FaultTime = result.FaultTime;
                this.RepairApplicantName = result.RepairApplicantName;
                this.HPname = result.HPname;
                this.DepName = result.DepName;
                this.RepairsReportDate = result.RepairsReportDate;
                this.ReceiverTime = result.ReceiverTime;
                this.PlannedVisitDay = result.PlannedVisitDay;
                this.ActualVisitDateFirst = result.ActualVisitDateFirst;
                this.ActualVisitDateSecon = result.ActualVisitDateSecon;
                this.ActualVisitDateThird = result.ActualVisitDateThird;
                this.ApplicationTime = result.ApplicationTime;
                this.ApplyForRepair();
                this.dispatchEvent(new CloseActionScreenEvent());
            }
        }).catch(error => {
            console.log(error);
        })
        this.serContact();
    }
     async SelectNone(){
        const inputSearchNo = this.template.querySelector('lightning-input[data-target="SearchNo"]');
            if (inputSearchNo) {
              inputSearchNo.value = '';
            }
        const inputSearchName = this.template.querySelector('lightning-input[data-target="SearchName"]');
        if (inputSearchName) {
          inputSearchName.value = '';
        }
        const inputSearchSN = this.template.querySelector('lightning-input[data-target="SearchSN"]');
       console.log('inputSearchSN=='+inputSearchSN);
        if (inputSearchSN) {
          inputSearchSN.value = '';
        }
        this.inputData1='';
        this.inputData2='';
        this.inputData3='';
        var SearchNo = this.inputData1;
        var SearchName = this.inputData2;
        var SearchSN = this.inputData3;
        await getData({SearchName : SearchName , SearchNo : SearchNo , SearchSN : SearchSN}).then(res=>{
         if(res!=null){
                this.IsLoading=false;
                this.data=res;
                console.log(res);
                console.log(this.data[0]);
                }
            }).catch(error=>{
                console.log(error);
            })
     }
    async SelectDone(){
        var selectedRecords =  this.template.querySelector("lightning-datatable").getSelectedRows();
            console.log('selectedRecords.length=='+selectedRecords.length);
            if(selectedRecords.length>0){
                if (selectedRecords.length>1) {
                    const evt = new ShowToastEvent({
                        title : '只能选择一个保有设备',
                        message: '',
                        variant: 'error'
                    });
                    this.dispatchEvent(evt);
                    this.dispatchEvent(new CloseActionScreenEvent());
                    return;
                }
                searchAss({
                    recordId: selectedRecords[0].Assetid
                }).then(result => {
                    // console.log(result);
                    if (result != null) {
                        console.log('result.canRepair=='+result.canRepair);
                        this.IsLoading = false;
                        this.canRepair = result.canRepair;
                    }
                    console.log('this.canRepair=='+this.canRepair);
                    if (this.canRepair == '第三方') {
                        const evt = new ShowToastEvent({
                                title : '非我司修理对象,无法新建修理,如有不明请咨询CIC',
                                message: '',
                                variant: 'error'
                            });
                            this.dispatchEvent(evt);
                            this.dispatchEvent(new CloseActionScreenEvent());
                            return;
                    }
                     if (this.canRepair == '不'||this.canRepair == null) {
                            const evt = new ShowToastEvent({
                                    title : '本设备无法新建修理',
                                    message: '',
                                    variant: 'error'
                                });
                                this.dispatchEvent(evt);
                                this.dispatchEvent(new CloseActionScreenEvent());
                            return;
                    }
                    var status = this.StatusC;
                    if (status != '待处理') {
                        const evt = new ShowToastEvent({
                                title : '修子单的状态不是 待处理 无法申请修理',
                                message: '',
                                variant: 'error'
                            });
                            this.dispatchEvent(evt);
                            this.dispatchEvent(new CloseActionScreenEvent());
                        return;
                    }
                    if (this.Id == null || this.Id == '') {
                        const evt = new ShowToastEvent({
                                title : '报修子单Id 不能为空',
                                message: '',
                                variant: 'error'
                            });
                            this.dispatchEvent(evt);
                            this.dispatchEvent(new CloseActionScreenEvent());
                        return;
                    }
                         this.Delivered_Product =  selectedRecords[0].Assetid;
                         this.Department_Name = selectedRecords[0].Accountid;
                         this.HospitalId = selectedRecords[0].Hospital;
                         this.WorkLocation = selectedRecords[0].WorkLocation;
                        this.navigateToNewObjectPage();
                }).catch(error => {
                    console.log(error);
                })
            }
            else{
                console.log('else');
                const evt = new ShowToastEvent({
                        title : '请选择一个保有设备',
                        message: '',
                        variant: 'error'
                    });
                    this.dispatchEvent(evt);
                    this.dispatchEvent(new CloseActionScreenEvent());
                    return;
            }
    }
    async serContact(){
    console.log('into serContact')
    var SearchNo = this.inputData1;
    var SearchName = this.inputData2;
    var SearchSN = this.inputData3;
        if(SearchSN == undefined){
            SearchSN='';
        }
        if(SearchName == undefined){
            SearchName='';
        }
        if(SearchNo == undefined){
            SearchNo = '';
        }
    console.log('SearchName='+SearchName);
    console.log('SearchNo='+SearchNo);
    console.log('SearchSN='+SearchSN);
        await getData({SearchName : SearchName , SearchNo : SearchNo , SearchSN : SearchSN}).then(res=>{
         if(res!=null){
                this.IsLoading=false;
                this.data=res;
                console.log(res);
                console.log(this.data[0]);
                }
            }).catch(error=>{
                console.log(error);
            })
    }
    navigateToNewObjectPage() {
        // console.log('RepairApplicantName=='+this.RepairApplicantName);
        // console.log('this.id=='+this.id);
        const defaultFieldValues =encodeDefaultFieldValues({
          Delivered_Product__c: this.Delivered_Product,
          Account__c: this.Department_Name,
          Hospital__c: this.HospitalId,
          SalesOfficeCode_selection__c: this.WorkLocation,
          Incharge_Staff__c:this.Incharge_Staff,
          Repair_Detail__c:this.Repair_Detail,
          Failure_Occurrence_Date__c:this.FaultTime,
          Repair_Source__c:'从报修子单',
          RepairApplicant__c:this.RepairApplicantName,
          RepairApplicantHospital__c:this.HPname,
          RepairApplicantDepartment__c:this.DepName,
          RepairTime__c:this.RepairsReportDate,
          ReceiverTime__c:this.ReceiverTime,
          PlannedVisitDay__c:this.PlannedVisitDay,
          ActualVisitDateFirst__c:this.ActualVisitDateFirst,
          ActualVisitDateSecond__c:this.ActualVisitDateSecon,
          ActualVisitDateThird__c:this.ActualVisitDateThird,
          SubOrderCreatedDate__c:this.ApplicationTime,
          Exc_work_location__c:true,
          RepairSubOrder__c:this.recordId
        });
            this[NavigationMixin.Navigate]({
              type: 'standard__objectPage',
              attributes: {
                objectApiName: 'Repair__c',
                actionName: 'new'
              },
              state: {
                nooverride: '1',
                defaultFieldValues: defaultFieldValues
              }
            });
        this.dispatchEvent(new CloseActionScreenEvent());
      }
}
force-app/main/default/lwc/lexChoiceAsset/lexChoiceAsset.js-meta.xml
New file
@@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<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/pages/MaintenanceContractPCL.page
@@ -3,6 +3,7 @@
<title>周会-维修合同</title>
<apex:stylesheet value="{!URLFOR($Resource.blockUIcss)}"/>
<apex:stylesheet value="{!URLFOR($Resource.StyleUtilCss)}"/>
<apex:includeScript value="{!URLFOR($Resource.jquery183minjs)}"/>
<apex:includeScript value="{!URLFOR($Resource.PleaseWaitDialog)}"/>
<!-- TODO 目前除了markOpp()方法,其他方法通用,js改名为周会共通js,各个画面个别js再自己创建js -->
@@ -20,25 +21,27 @@
}
div#out_Div { /* ここにヘッダを格納 */
  position:relative;
  overflow: auto;
  overflow: hidden;
  float:left;
  width:670px;
}
div#out_Div_L {
  position:relative;
  overflow: auto;
  overflow: hidden;
  float:left;
}
div#in_Div {/* tbodyが入っている。ここがスクロール対象*/
  position:relative;
  overflow: auto;
  overflow: auto;  /*スクロールバー*/
  float:left;
  height: auto;/* tbodyを表示する高さ、後でjsにて調整 */
  width:670px;
  height: 300px; /* tbodyを表示する高さ、後でjsにて調整 */
}
div#in_Div_L {
  position:relative;
  overflow: auto;
  overflow: hidden;
  float:left;
  height: auto;
  height: 300px;
}
body .pbBody table.list tr.headerRow td {
@@ -55,67 +58,59 @@
  padding:0px 0px 0px 1px; border-width: 0px 0px 1px 0px; vertical-align: middle; word-break:break-all;
}
body .pbBody table.list tr.dataRow td.dataCellBorder  {
  /* いらない、使っていない */
  padding:0px 0px 0px 1px; border-width: 0px 0px 1px 0px; vertical-align: middle; word-break:break-all;
}
body .pbBody table.list tr.dataRow td.dataCellBorder1 {
  padding:0px 0px 0px 1px;
  border-width: 0px 0px 1px 1px; vertical-align: middle; word-break:break-all;
}
/*@-moz-document url-prefix() {
@-moz-document url-prefix() {
body .pbBody table.list tr.dataRow td.dataCellBorder1 {padding:0px 0px 0px 0px; border-width: 0px 0px 1px 1px; vertical-align: middle; word-break:break-all;}
}*/
}
table.list td {width:50px;}
.lookupInput{width:150px;}
table.list td select {width:55%;}
table.list td input {width:100%;text-align: center}
table.list td {width:100px;}
table.list td select {width:95%;}
table.list td input {width:95%;}
table.list td textarea {
  height:50px;
  width:90%;
}
.dataCellBorder1 col_State_Hospital__c 1_col_State_Hospital__c {width:10px;}
table.list .col_Management_Code__c {width:109px;}
table.list .col_Hospital__c {width:129px;}
table.list .col_Department__c {width:120px;}
table.list .col_Department__c {width:129px;}
table.list .col_Name {width:118px;}
table.list .col_Hospital__r_Salesdepartment_HP__c {width:88px;}
table.list .col_State_Hospital__c {width:80px;}
table.list .col_HP_OCM__c {width:80px;}
table.list .col_State_Hospital__c {width:68px;}
table.list .col_Status__c {width:88px;}
table.list .col_Service_Contract_Staff__c {width:118px;}
table.list .col_Service_contract_number__c {width:100px;}
table.list .col_Estimate_Trial_Money__c {width:157px;}
table.list .col_Service_contract_number__c {width:118px;}
table.list .col_Estimate_Trial_Money__c {width:118px;}
table.list .col_Status2__c {width:88px;}
table.list .col_Contract_Amount__c {width:148px;}
table.list .col_CreatedDate {width:98px;}
table.list .col_Contract_Start_Date__c {width:88px;}
table.list .col_Contract_End_Date__c {width:88px;}
table.list .col_Service_contract_target_number__c {width:78px;}
/*.list4 td:nth-child(4) {
      width: 120px;
    }
.list4 td:nth-child(10) {
  width: 150px;
}*/
table.list .col_Contract_Start_Date__c {width:95px;}
table.list .col_Contract_End_Date__c {width:95px;}
table.list .col_Service_contract_target_number__c {width:118px;}
body .pbBody table.list tr.headerRow td.colViewing {
  /* デフォルト値、最小化アイコンを表示 */
  /*background-image:url('{!URLFOR($Resource.IconResizeMinus_5)}') ;*/
  /*background-repeat:no-repeat;*/
}
body .pbBody{
    width:3800px;
  background-image:url('{!URLFOR($Resource.IconResizeMinus_5)}') ;
  background-repeat:no-repeat;
}
body .pbBody table.list tr.headerRow td.colUnHideIcon {
  /* 最大化アイコンを表示 */
/*  background-image:url('{!URLFOR($Resource.IconResizePlus_5)}');
  background-repeat:no-repeat;*/
  background-image:url('{!URLFOR($Resource.IconResizePlus_5)}');
  background-repeat:no-repeat;
}
body .pbBody table.list tr.headerRow td.col_Scroll {width:0px; padding:0px; border-width:0px;}
body .pbBody table.list tr.dataRow td.col_Scroll {width:0px; padding:0px; border-width:0px;}
</style>
<script type="text/javascript">
var heightAjustment = 120;
var widthAjustment = 30;
</script>
</head>
    <apex:form id="allForm">
@@ -137,7 +132,7 @@
                <table style="border-bottom-width: 0px; font-size:12px;">
                    <tr>
                        <td width="200px">
                            <apex:commandButton action="{!save}" value="保存" rerender="allPanel" onclick="blockme();" oncomplete="unblockUI();" style="height:30px;width:80px;"/>&nbsp;&nbsp;
                            <apex:commandButton action="{!save}" value="保存" rerender="allPanel" onclick="blockme();" oncomplete="unblockUI();" style="height:30px;width:70px;"/>&nbsp;&nbsp;
                            <apex:commandButton value="检索" onclick="searchOppJs();return false;" style="height:30px;width:70px;"/>
                        </td>
                        <td width="1000px">
@@ -146,7 +141,7 @@
                    </tr>
                </table>
                <table style="border-bottom-width: 0px; font-size:12px;">
                    <tr>
                    <tr style='height: 50px;'>
                        <td width="250px">医院&nbsp;<apex:inputText value="{!accSearch}" style="width:150px"/> </td>
                        <td width="40px">创建人</td>
                        <td width="150px"><span><apex:inputText value="{!ownerSearch}" style="width:100px;" /></span></td>
@@ -192,68 +187,68 @@
            </apex:pageBlock>
            
            <apex:pageBlock id="oppBlock" tabStyle="Report">
                <!-- <apex:pageblocksection columns="1" id="oppSection"> -->
<!--                <apex:pageblocksection columns="1" id="oppSection">-->
                <apex:outputPanel >
                    <apex:inputHidden id="oppCount" value="{!oppCount}"/>
                        <div id="out_Div_L">
                            <table class="list" style="table-layout:fixed;border-bottom-width: 0px; font-size:11px; border-spacing:0;" border="" id="tableHeader_L">
                                <tr class="dataRow" height="1px">
                                <apex:variable value="{!0}" var="cnt" />
                                <apex:repeat value="{!titleLeft}" var="t">
                                    <td class="col_{!columnLeftCss[cnt]}" style="width: 140px"></td>
                                    <apex:variable value="{!cnt + 1}" var="cnt" />
                                </apex:repeat>
                                </tr>
                                <tr class="headerRow" height="30px">
                                <apex:variable value="{!0}" var="cnt" />
                                <apex:repeat value="{!titleLeft}" var="t">
                                    <td class="col_{!columnLeftCss[cnt]}">
                                        <a href="#" onclick="sortTableJs('{!cnt + 1}');return false;" style="text-decoration: underline;"><apex:outputText value="{!t}"/></a>{!sortOrder[cnt + 1]}
                                    </td>
                                    <apex:variable value="{!cnt + 1}" var="cnt" />
                                </apex:repeat>
                                </tr>
                            </table>
                        </div>
                    <div id="out_Div">
                        <table class="list" style="table-layout:fixed;border-bottom-width: 0px; font-size:11px; border-spacing:0;" border="" id="tableHeader">
                    <div id="out_Div_L">
                        <table class="list" style="border-bottom-width: 0px; font-size:11px; border-spacing:0;" border="" id="tableHeader_L">
                            <tr class="dataRow" height="1px">
                            <apex:variable value="{!0}" var="cnt" />
                            <apex:repeat value="{!titleRight}" var="t">
                                <td class="col_{!columnRightCss[cnt]}" style="width: 100px"></td>
                            <apex:repeat value="{!titleLeft}" var="t">
                                <td class="col_{!columnLeftCss[cnt]}"></td>
                                <apex:variable value="{!cnt + 1}" var="cnt" />
                            </apex:repeat>
                            </tr>
                            <tr class="headerRow" height="30px">
                            <apex:variable value="{!0}" var="cnt" />
                            <apex:repeat value="{!titleRight}" var="t">
                                <td class="col_{!columnRightCss[cnt]}">
                                    <a href="#" onclick="sortTableJs('{!cnt + 1+ titleLeft.size}');return false;" style="text-decoration: underline;"><apex:outputText value="{!t}"/></a>{!sortOrder[cnt + 1 + titleLeft.size]}
                            <apex:repeat value="{!titleLeft}" var="t">
                                <td class="col_{!columnLeftCss[cnt]}">
                                    <a href="#" onclick="sortTableJs('{!cnt + 1}');return false;" style="text-decoration: underline;"><apex:outputText value="{!t}"/></a>{!sortOrder[cnt + 1]}
                                </td>
                                <apex:variable value="{!cnt + 1}" var="cnt" />
                            </apex:repeat>
                            </tr>
                        </table>
                    </div>
                </apex:outputPanel>
                <apex:outputPanel>
                    </div>
                    <div id="out_Div">
                        <table class="list" style="border-bottom-width: 0px; font-size:11px; border-spacing:0;table-layout: fixed;width:100%;" border="" id="tableHeader">
                            <tr class="dataRow" height="1px">
                            <apex:variable value="{!0}" var="cnt" />
                            <apex:repeat value="{!titleRight}" var="t">
                                <td class="col_{!columnRightCss[cnt]}"></td>
                                <apex:variable value="{!cnt + 1}" var="cnt" />
                            </apex:repeat>
                            <td id="cell_Scroll" class="col_Scroll"></td>
                            </tr>
                            <tr class="headerRow" height="30px">
                            <apex:variable value="{!0}" var="cnt" />
                            <apex:repeat value="{!titleRight}" var="t">
                                <td class="col_{!columnRightCss[cnt]}">
                                    <a href="#" onclick="sortTableJs('{!cnt + 1 + titleLeft.size}');return false;" style="text-decoration: underline;"><apex:outputText value="{!t}"/></a>{!sortOrder[cnt + 1 + titleLeft.size]}
                                </td>
                                <apex:variable value="{!cnt + 1}" var="cnt" />
                            </apex:repeat>
                            <td id="cell_Scroll" class="col_Scroll"></td>
                            </tr>
                        </table>
                    </div>    <!-- out_Div -->
                    <div style="clear:both;height:0px;"></div>
                    <div id="in_Div_L">
                        <table class="list"  style="table-layout:fixed;border-bottom-width: 0px; font-size:11px; border-spacing:0;" border="" id="tableData_L">
                        <table class="list" style="border-bottom-width: 0px; font-size:11px; border-spacing:0;" border="" id="tableData_L">
                            <apex:variable value="{!1}" var="cnt" />
                            <apex:repeat value="{!oppRecords}" var="or" id="oppTable_L">
                                <tr class="dataRow {!IF(MOD(cnt, 2)==0, 'odd', 'even')} {!IF(cnt==1, 'first', '')}" onmouseover="if (window.hiOn){hiOn(this);} " onmouseout="if (window.hiOff){hiOff(this);} " onblur="if (window.hiOff){hiOff(this);}" onfocus="if (window.hiOn){hiOn(this);}">
                                <apex:variable value="{!0}" var="cnt_2" />
                                <apex:repeat value="{!columnsLeftApi}" var="c">
                                    <td class="dataCellBorder1 col_{!columnLeftCss[cnt_2]}" style="width: 140px;text-align:center">
                                    <td class="dataCellBorder1 col_{!columnLeftCss[cnt_2]}">
                                    <apex:outputPanel rendered="{!(c.size==1 && columnLeftRW[c[0]]=='r')}" layout="none">
                                    <apex:outputPanel rendered="{!c[0]=='Name'}" layout="none">
                                                                            <apex:outputLink value="/{!or.mc.Id}" target="LINK_{!or.mc.Id}"><apex:outputField value="{!or.mc[c[0]]}" /></apex:outputLink>
                                    </apex:outputPanel>
                                    <apex:outputPanel rendered="{!c[0]<>'Name'}" layout="none">
                                                                            <apex:inputField value="{!or.mc[c[0]]}" onchange="setChangeFlg('{!or.lineNo}')"/>
                                    </apex:outputPanel>
<!-- in_Div_LのAccount名は特殊対応、リンクにする -->
<apex:outputPanel rendered="{!c[0]=='Name'}" layout="none">
                                        <apex:outputLink value="/{!or.mc.Id}" target="LINK_{!or.mc.Id}"><apex:outputField value="{!or.mc[c[0]]}" /></apex:outputLink>
</apex:outputPanel>
<apex:outputPanel rendered="{!c[0]<>'Name'}" layout="none">
                                        <apex:inputField value="{!or.mc[c[0]]}" onchange="setChangeFlg('{!or.lineNo}')"/>
</apex:outputPanel>
                                    </apex:outputPanel>
                                    <apex:outputPanel rendered="{!(c.size==2)}" layout="none">
                                        <apex:outputField value="{!or.mc[c[0]][c[1]]}"/>
@@ -273,13 +268,13 @@
                        </table>
                    </div>
                    <div id="in_Div">
                        <table class="list4" style="table-layout:fixed;border-bottom-width: 0px; font-size:11px; border-spacing:0;" border="" id="tableData">
                        <table class="list" style="border-bottom-width: 0px; font-size:11px; border-spacing:0;table-layout: fixed;width:100%;" border="" id="tableData">
                            <apex:variable value="{!1}" var="cnt" />
                            <apex:repeat value="{!oppRecords}" var="or" id="oppTable">
                                <tr class="dataRow {!IF(MOD(cnt, 2)==0, 'odd', 'even')} {!IF(cnt==1, 'first', '')}" onmouseover="if (window.hiOn){hiOn(this);} " onmouseout="if (window.hiOff){hiOff(this);} " onblur="if (window.hiOff){hiOff(this);}" onfocus="if (window.hiOn){hiOn(this);}">
                                <apex:variable value="{!0}" var="cnt_3" />
                                <apex:repeat value="{!columnsRightApi}" var="c">
                                    <td class="dataCellBorder1 col_{!columnRightCss[cnt_3]} {!cnt}_col_{!columnRightCss[cnt_3]}" style="width: 100px;text-align:center">
                                    <td class="dataCellBorder1 col_{!columnRightCss[cnt_3]} {!cnt}_col_{!columnRightCss[cnt_3]}">
                                    <apex:outputPanel rendered="{!(c.size==1 && columnRightRW[c[0]]=='r')}" layout="none">
                                        <apex:outputField value="{!or.mc[c[0]]}"/>
                                    </apex:outputPanel>
@@ -290,12 +285,12 @@
                                        <apex:inputField value="{!or.mc[c[0]]}" onchange="setChangeFlg('{!or.lineNo}')"/>
                                    </apex:outputPanel>
                                    <apex:outputPanel rendered="{!(c.size==1 && columnRightRW[c[0]]=='wm')}" layout="none">
                                        <div class="requiredInput" ><div class="requiredBlock"></div><apex:inputField value="{!or.mc[c[0]]}" onchange="setChangeFlg('{!or.lineNo}')"/></div>
                                        <div class="requiredInput"><div class="requiredBlock"></div><apex:inputField value="{!or.mc[c[0]]}" onchange="setChangeFlg('{!or.lineNo}')"/></div>
                                    </apex:outputPanel>
                                    <apex:variable value="{!cnt_3 + 1}" var="cnt_3" />
                                    </td>
                                </apex:repeat>
                                <!-- <td id="cell_Scroll" class="col_Scroll"> -->
                                <td id="cell_Scroll" class="col_Scroll">
                                    <apex:inputHidden value="{!or.changeFlg}" id="changeFlg"/>
                                    <script type="text/javascript">
                                        if ("{!or.canEdit}" == "false") {
@@ -321,12 +316,12 @@
                                            j$(leftFirst).css("background-color", "red");
                                        }
                                    </script>
                                <!-- </td> -->
                                </td>
                                </tr>
                                <apex:variable value="{!cnt + 1}" var="cnt" />
                            </apex:repeat> 
                        </table>
                    </div>
                    </div><!-- /in_Div -->
                </apex:outputPanel>
            </apex:pageBlock>
<script type="text/javascript">
@@ -339,11 +334,11 @@
            tableWidth += headerCol.width();
        }
    });
    // j$('table#tableData').css('width', (tableWidth + 100) + 'px');
    // j$('table#tableHeader').css('width', (tableWidth + 100) + 'px');
    j$('table#tableData').css('width', (tableWidth + 2) + 'px');
    j$('table#tableHeader').css('width', (tableWidth + 2) + 'px');
    // list の headerRow の tdに toggleWidth() を追加
    // bindTdToggleWidth();
    bindTdToggleWidth();
});
var elements = document.getElementsByTagName("select");
for (i = 0; i < elements.length; i++) {
@@ -357,7 +352,7 @@
for (i = 0; i < input_l.length; i++) {
    var id = input_l[i].id + '_lkid';
    if (document.getElementById(id) != null) {
        input_l[i].style.width = "75%";
        input_l[i].style.width = "95%";
    }
}
var tbl = document.getElementById("tableData");
@@ -365,9 +360,15 @@
for (i = 0; i < input.length; i++) {
    var id = input[i].id + '_lkid';
    if (document.getElementById(id) != null) {
        input[i].style.width = "75%";
        input[i].style.width = "95%";
    }
}
j$('div#in_Div').scroll(function() {
    j$('div#out_Div').scrollLeft(j$(this).scrollLeft());
});
j$('div#in_Div').scroll(function() {
    j$('div#in_Div_L').scrollTop(j$(this).scrollTop());
});
</script>
        </apex:outputPanel>
    </apex:form>
force-app/main/default/pages/MoreMaintenanceContract.page
@@ -140,10 +140,13 @@
        <td></td>
    </tr>
</table>
<apex:pageBlock title="经销商对医院修理价格录入(以下信息将作为报告书上传金额信息显示)" id="MoreMaintenanceContract" rendered="true">
<apex:pageBlock id="MoreMaintenanceContract" rendered="true">
    <div>
        <h3>经销商对医院修理价格录入(以下信息将作为报告书上传金额信息显示)</h3>
    </div>
    <div>
        <ul>
            <li>
            <li style="margin-bottom: 10px;">
                <apex:outputText rendered="{!!isVM}"> 经销商对医院签约价格:</apex:outputText>
                <apex:outputText rendered="{!isVM}"> 对医院合同金额(手填):</apex:outputText>
                <apex:outputPanel layout="none" rendered="{!IF(HATextEdit,true , false)}"><apex:InputField value="{!mc.HospitalAmountText__c}"  id="HospitalAmountText"  style="max-width: 120px;"/></apex:outputPanel><apex:outputPanel layout="none" rendered="{!IF(HATextEdit,false , true)}"><apex:outputField value="{!mc.HospitalAmountText__c}"  id="HospitalAmountText1"  style="max-width: 120px;"/></apex:outputPanel> </li>
force-app/main/default/pages/NewPaymentPlanLoad.page
@@ -4,7 +4,7 @@
<apex:includeScript value="{!URLFOR($Resource.PleaseWaitDialog)}"/>
<style type="text/css">
    .BlockSytle{
        width: 1000px;
        width: 1300px;
    }
    .PageStyleCss{
        width: 980px;
@@ -30,6 +30,11 @@
        Initdisabled();
    }
    
    window.addEventListener('DOMContentLoaded', function() {
        var pageBlock = document.getElementById('{!$Component.allBlock}');
        pageBlock.style.border = 'none';
        pageBlock.style.boxShadow = 'none';
      });
    function Convert_All_Amount() {
        var Total_Contract_Amount = j$(escapeVfId('allPage:allForm:Contract_Amount_Hidden')).val();
        var Total_Contract_Amount_In_Words = j$(escapeVfId('allPage:allForm:Total_Contract_Amount_In_Words_Hidden')).val();
@@ -215,7 +220,11 @@
        // fxk 2021/8/31 点检次数必须填 end
            // window.opener.top.location.href = '/{!PageMCEElement.id}';
   //          top.window.close();
            window.close();
               setTimeout(function(){
                window.location.href = '/{!PageMCEElement.id}';
            }, 1500 );
            // window.close();
            unblockUI();
        }else{
            unblockUI();
@@ -311,16 +320,17 @@
    <apex:inputHidden value="{!PageMCEElement.Payment_Plan_Sum_Sixth_in_Word__c}" id="Payment_Plan_Sum_6_in_Word_Hidden"/>
    </apex:outputPanel>
        
    <apex:pageBlock id="allBlock" >
    <apex:pageBlock id="allBlock">
    <apex:outputPanel id="Messages" style="color:red">
        <apex:messages />
        <!-- <apex:messages /> -->
        <apex:pageMessages />
    </apex:outputPanel>
    <table border="0" >
        <colgroup>
            <col width="25%"/>
            <col width="45%"/>
            <col width="25%"/>
            <col width="25%"/>
            <col width="25%"/>
            <col width="5%"/>
        </colgroup>
        <tr>
            <td style ="text-align: right;">
@@ -329,7 +339,7 @@
            <td style ="text-align: left;">
                <div class="requiredInput"><div class="requiredBlock"></div>
                     <apex:inputField id="Is_Standard_Contract" value="{!PageMCEElement.Is_Standard_Contract__c}" onchange="RerenderallpageBlockJS(); "/>
                        (必填项,所有合同均必须勾选)
                        (必填项,所有合同均必须勾选)
                </div>
            </td>
            <td/>
@@ -623,12 +633,12 @@
    </apex:pageBlockSection>
        <apex:pageBlockButtons id="allButtons">
        <apex:outputPanel rendered="{!IF(PageMCEElement.Status__c != '引合中', 'true', 'false')}">
            <apex:commandButton styleClass="align-save-button" disabled="true" id="SaveButton1" value="保存"  action="{!save}" onclick="blockme();" reRender="hiddenInput,Messages"  oncomplete="CloseJs();"/>
            <apex:commandButton styleClass="align-save-button" disabled="true" id="SaveButton1" value="保存"  action="{!save}" onclick="blockme();" reRender="hiddenInput,Messages"  style="margin-top:-2px" oncomplete="CloseJs();"/>
            <apex:commandButton disabled="true" id="CancelButton1" value="取消" onclick="CloseJs(); return false;"/>
            <apex:commandButton disabled="true" id="PrintButton1" value="打印" action="{!print}" onclick="blockme();" rerender="hiddenInput,Messages,pdfPrint"  oncomplete="PrintJs();" />            
        </apex:outputPanel>
        <apex:outputPanel id="bottom" rendered="{!IF(PageMCEElement.Status__c == '引合中', 'true', 'false')}">
            <apex:commandButton id="SaveButton" value="保存"  action="{!save}" onclick="blockme();" reRender="hiddenInput,Messages"  oncomplete="CloseJs();"/>
            <apex:commandButton id="SaveButton" value="保存"  action="{!save}" onclick="blockme();" reRender="hiddenInput,Messages" oncomplete="CloseJs();" style="margin-top:-2px"/>
            <apex:commandButton id="CancelButton" value="取消" onclick="CloseJs(); return false;"/>
            <apex:commandButton id="PrintButton" value="打印" action="{!print}" onclick="blockme();" rerender="hiddenInput,Messages,pdfPrint"  oncomplete="PrintJs();" />
        </apex:outputPanel>
@@ -643,28 +653,29 @@
    function PrintJs() {    
        var Rs = j$(escapeVfId('allPage:allForm:statusSave')).value();
        if(Rs == 'Fin'){
            // CloseJs();
            unblockUI();
            if ('{!printContract}' == 'true') {
                //HWAG-BHT7XX 2019/11/26 START
                if('{!agreeUpperLimit}' == 'true'){
                // 打印医院限次合同配置
                window.open('/apex/NewMCHPDFLimit?id={!PageMCEElement.id}', 'MCHLimitPDF');
                window.close();
                // window.close();
                }else{
                // 打印医院合同配置
                window.open('/apex/NewMCHPDF?id={!PageMCEElement.id}', 'MCHPDF');
                window.close();
                // window.close();
                }
                //HWAG-BHT7XX 2019/11/26 END
             }else if ('{!printAgent}' == 'true') {
                 if('{!agreeUpperLimit}' == 'true'){
                //打印经销商限次合同
                window.open('/apex/NewMCAgentPDFLimit?id={!PageMCEElement.id}', 'MCAgentLimitPDF');
                window.close()
                // window.close()
                }else{
                //打印经销商合同
                window.open('/apex/NewMCAgentPDF?id={!PageMCEElement.id}', 'MCHPDF');
                window.close();
                // window.close();
                }
            }else {
                alert('1');