黄千龙
2023-04-26 869e9266c9b92448d0ad0797c56d67e994fd2329
服务相关页面page修改
8个文件已添加
776 ■■■■■ 已修改文件
force-app/main/default/pages/ChoiceAsset.page 202 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
force-app/main/default/pages/ChoiceAsset.page-meta.xml 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
force-app/main/default/pages/MoreMaintenanceContract.page 211 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
force-app/main/default/pages/MoreMaintenanceContract.page-meta.xml 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
force-app/main/default/pages/MoreMaintenanceContractPop.page 91 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
force-app/main/default/pages/MoreMaintenanceContractPop.page-meta.xml 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
force-app/main/default/pages/ServiceMaintenanceTaskPage.page 244 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
force-app/main/default/pages/ServiceMaintenanceTaskPage.page-meta.xml 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
force-app/main/default/pages/ChoiceAsset.page
New file
@@ -0,0 +1,202 @@
<apex:page action="{!init}" controller="ChoiceAssetController" id="allPage" showHeader="false" sidebar="false" title="选择保有设备" lightningStylesheets="true">
    <apex:stylesheet value="{!URLFOR($Resource.blockUIcss)}"></apex:stylesheet>
    <apex:includeScript value="{!URLFOR($Resource.jquery183minjs)}"></apex:includeScript>
    <apex:includeScript value="{!URLFOR($Resource.PleaseWaitDialog)}"></apex:includeScript>
    <apex:includeScript value="{!URLFOR($Resource.connection20)}"/>
    <apex:includeScript value="{!URLFOR($Resource.apex20)}"/>
    <style type="text/css"></style>
    <script>
        function searchProductJs() {
            searchAsset();
        }
        function saveJs(){
            save();
        }
        //XLIU-CJM7Z9 【委托】新建修理提示信息(停产及非修理对象品)LY 20221012 start
        function checkPartSupplyFinishDateJs(){
            var today = new Date();
            var targetDate = (today.getFullYear()+1) + '/' + (today.getMonth()+1) + '/' + today.getDate();
            var todayNew = today.toLocaleDateString();
            var check;
            var num = 100000;
            for (var i = 0; i < 100; i++) {
                check = j$(escapeVfId('allPage:allForm:allBlock:ConsumableorderdetailsSection:ConsumableorderdetailsTable:'+i+':consumablesCountproRowCheckbox')).attr('checked');
                if (check == 'checked'){
                    num = i;
                }
            }
            if (num != 100000){
                var partSupplyFinishDate = new Date(j$(escapeVfId('allPage:allForm:allBlock:ConsumableorderdetailsSection:ConsumableorderdetailsTable:' + num + ':partSupplyFinishDate')).value());
                if (partSupplyFinishDate != 'Invalid Date'){
                    var partSupplyFinishDateNew = partSupplyFinishDate.toLocaleDateString();
                    if (partSupplyFinishDateNew > todayNew && partSupplyFinishDateNew <= targetDate){
                        alert('预计'+ partSupplyFinishDateNew +'零件即将停产,请送修前与工厂及RC联络');
                    }
                    if (partSupplyFinishDateNew <= todayNew){
                        alert('该型号零件已经停产,有特殊需求,请送修前与工厂RC联络');
                    }
                }
            }
        }
        //XLIU-CJM7Z9 【委托】新建修理提示信息(停产及非修理对象品)LY 20221012 end
        function ClearJs(){
            blockme();
            document.getElementById("allPage:allForm:allBlock:searchBlock:FuselageNumber").value = "";
            document.getElementById("allPage:allForm:allBlock:searchBlock:AssetModel").value = "";
            document.getElementById("allPage:allForm:allBlock:searchBlock:HospitalName").value = "";
            searchAsset();
            // searchConsumableorderdetails();
        }
    </script>
    <apex:form id="allForm">
    <apex:actionFunction name="searchAsset" action="{!searchAsset}" rerender="ConsumableorderdetailsSection, message" onComplete="unblockUI();CheckStatusAfter();SumCompute()">
    </apex:actionFunction>
    <apex:actionFunction name="save" action="{!save}" rerender="ConsumableorderdetailsSection, message" onComplete="unblockUI();CheckStatusAfter();SumCompute()">
    </apex:actionFunction>
    <apex:outputPanel id="allPanel">
        <apex:pageBlock id="allBlock">
            <apex:pageBlock id="searchBlock" >
                    <table>
                        <colgroup>
                            <col width="5%"/>
                            <col width="5%"/>
                            <col width="5%"/>
                            <col width="15%"/>
                            <col width="15%"/>
                            <col width="15%"/>
                            <col width="15%"/>
                            <col width="15%"/>
                            <col width="15%"/>
                            <col width="15%"/>
                            <col width="15%"/>
                            <col width="15%"/>
                        </colgroup>
                        <tr>
                            <td colspan="2"/>
                            <td colspan="4">机身编码:
                                <apex:inputText value="{!FuselageNumber}" id="FuselageNumber"/>
                            </td>
                            <td align="right"></td>
                            <td><apex:commandButton value="保有设备搜索"  onclick="searchProductJs('0');return false;" /></td>
                            <td><input type="button" value="清空"  onclick="ClearJs();return false;" class="btn"/><apex:commandButton onclick="saveJs();" value="确定" rerender="dummy"  /></td>
                           <!--  <td>
                            <apex:commandButton onclick="saveJs();" value="确定" rerender="dummy"  />
                            </td> -->
                        </tr>
                        <!-- <td>
                            </td>
                            <td align="right"></td>
                            <td><apex:commandButton value="保有设备搜索" style="width: 80px;" onclick="searchProductJs('0');return false;" /></td>
                            <td><input type="button" value="清空" style="width: 80px;" onclick="ClearJs();return false;" class="btn"/></td>
                            <td>
                            <apex:commandButton onclick="saveJs();"           value="确定" style="width:80px" rerender="dummy"  />
                            </td> -->
                        <tr>
                            <td colspan="2"/>
                            <td colspan="4">设备型号:
                                <apex:inputText value="{!AssetModel}" id="AssetModel"/>
                            </td>
                        </tr>
                        <tr>
                            <td colspan="2"/>
                            <td colspan="4">医院名称:
                                <apex:inputText value="{!HospitalName}" id="HospitalName"/>
                            </td>
                        </tr>
                    </table>
                </apex:pageBlock>
                <apex:outputPanel id="message">
                    <apex:pageMessages />
                 </apex:outputPanel>
                <apex:pageBlock title="保有设备查找" id="ConsumableorderdetailsSection">
                    <table class="list" border="0" cellpadding="0" cellspacing="0">
                        <tr class="headerRow">
                            <!-- <apex:variable var="v" value="" rendered="{!editAble}"> -->
                                <!-- <th><input type='checkbox' onClick='checkAll()' id='checker'/>选择</th> -->
                            <!-- </apex:variable> -->
                            <th>选择</th>
                            <th>保有设备名称</th>
                            <!-- 20220927 ljh XLIU-CJN62G update start-->
                            <!-- <th>状态</th> -->
                            <th>机身编码</th>
                            <th>医院</th>
                            <th>战略科室</th>
                            <th>科室</th>
                            <th>发货日</th>
                            <th>多年保修期至</th>
                            <th>最近一期维修合同结束日</th>
                            <!-- <th>集中管理库存</th> -->
                            <!-- 20220927 ljh XLIU-CJN62G update end-->
                        </tr>
                            <apex:repeat value="{!choiceAssetInfoRecordsview}" var="records" id="ConsumableorderdetailsTable">
                                <tr class="dataRow">
                                    <td>
                                    <apex:inputCheckbox value="{!records.check}" onclick="CheckSize(this);" id="consumablesCountproRowCheckbox" onchange="checkPartSupplyFinishDateJs(); return false;" disabled="{!!records.canSelect}"/>
                                    </td>
                                    <!-- <apex:variable var="v" value="" rendered="{!editAble}" id="variableinfo">
                                        <td>
                                        <apex:inputCheckbox value="{!records.check}" onclick="CheckSize(this);" id="consumablesCountproRowCheckbox" disabled="{!!records.canSelect}"/>
                                         <apex:inputCheckbox value="{!records.oldCheck}" id="proRowOldCheckbox" style="display:none"/></td>
                                     </apex:variable> -->
                                    <td class="dataCell">
                                        <apex:outputText value="{!records.ast.Name}"/>
                                    </td>
                                    <!-- <td class="dataCell">
                                        <apex:outputText value="{!records.ast.Status}"/>
                                    </td> -->
                                    <td class="dataCell">
                                        <apex:outputText value="{!records.ast.SerialNumber}"/>
                                    </td>
                                    <td class="dataCell">
                                        <apex:outputText value="{!records.ast.Hospital__r.Name}"/>
                                    </td>
                                    <td class="dataCell">
                                        <apex:outputText value="{!records.ast.Department_Class__r.Name}"/>
                                    </td>
                                    <td class="dataCell">
                                        <apex:outputText value="{!records.ast.Account.Name}"/>
                                    </td>
                                    <!-- <td class="dataCell">
                                        <apex:outputText value="{!records.ast.Product2.Asset_Model_No__c}"/>
                                    </td> -->
                                    <td class="dataCell">
                                        <apex:outputField value="{!records.ast.Posting_Date__c}"/>
                                    </td>
                                    <td class="dataCell">
                                        <apex:outputField value="{!records.ast.Extend_Gurantee_DateTo__c}"/>
                                    </td>
                                    <td class="dataCell">
                                        <apex:outputField value="{!records.ast.CurrentContract_End_Date__c}"/>
                                    </td>
                                    <!--XLIU-CJM7Z9 【委托】新建修理提示信息(停产及非修理对象品)LY 20221012 start -->
                                    <td>
                                        <apex:inputField value="{!records.ast.NoPartRiskDate_F__c}" id="partSupplyFinishDate" style="display: none" showDatePicker="false"/>
                                    </td>
                                    <!--XLIU-CJM7Z9 【委托】新建修理提示信息(停产及非修理对象品)LY 20221012 end  -->
                                </tr>
                            </apex:repeat>
                    </table>
                </apex:pageBlock>
        </apex:pageBlock>
    </apex:outputPanel>
</apex:form>
</apex:page>
force-app/main/default/pages/ChoiceAsset.page-meta.xml
New file
@@ -0,0 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<ApexPage xmlns="http://soap.sforce.com/2006/04/metadata">
    <apiVersion>41.0</apiVersion>
    <availableInTouch>false</availableInTouch>
    <confirmationTokenRequired>false</confirmationTokenRequired>
    <label>ChoiceAsset</label>
</ApexPage>
force-app/main/default/pages/MoreMaintenanceContract.page
New file
@@ -0,0 +1,211 @@
<apex:page controller="MoreMaintenanceContractController"  action="{!init}"  showHeader="false"   sidebar="true" id="allPage"  title="经销商对医院修理价格录入" lightningStylesheets="true">
<apex:stylesheet value="{!URLFOR($Resource.blockUIcss)}"/>
<apex:includeScript value="{!URLFOR($Resource.jquery183minjs)}"/>
<apex:includeScript value="{!URLFOR($Resource.PleaseWaitDialog)}"/>
<apex:includeScript value="{!URLFOR($Resource.CommonUtilJs)}"/>
<style type="text/css">
    .bPageBlock .pbTitle{
        width: 50%;
    }
    /* 0. 显示滚动条2注释掉这个打开 */
    /*.table-head{padding-right:17px;color:#000;}*/
    /* 1. 给tbody的表格固定高度(也可以flex:1), 并添加overflow-y:scroll */
    .table-body {max-height: 350px;overflow-y: scroll;}
    .table-body table tr:nth-child(2n){background-color:#f2f2f2;}
    /* 2. 隐藏滚动条 */
    .table-body::-webkit-scrollbar {display: none}
    /* 3. 使上下表格对齐(宽度一致) */
    .table-head tr th:nth-of-type(1),
    .table-body tr td:nth-of-type(1) {
        width: 20%;
    }
    .table-head tr th:nth-of-type(2),
    .table-body tr td:nth-of-type(2) {
        width: 10%;
    }
    .table-head tr th:nth-of-type(3),
    .table-body tr td:nth-of-type(3) {
        width: 20%;
    }
    .table-head tr th:nth-of-type(4),
    .table-body tr td:nth-of-type(4) {
        width: 10%;
    }
    .table-head tr th:nth-of-type(5),
    .table-body tr td:nth-of-type(5) {
        width: 10%;
    }
    .table-head tr th:nth-of-type(6),
    .table-body tr td:nth-of-type(6) {
        width: 10%;
    }
    .table-head tr th:nth-of-type(7),
    .table-body tr td:nth-of-type(7) {
        width: 20%;
    }
</style>
<script type="text/javascript">
    function BackMc(){
        blockme();
        var id ="{!id}";
        window.location.href="/"+id;
    }
    function RefreshPriceJs(){
        blockme();
        RefreshPrice();
    }
    function JsHQSum(){
        blockme();
        HQSum();
    }
    function SaveJs(go){
        //经销商对医院修理价格不为空才可以保存
        //allPage:allForm:MoreMaintenanceContract:theRepeat:1:hospitalQuotationText
        var repairLCount = j$(escapeVfId('repairLCount')).value();
        var IsEmpty = false;
        for (var i = 0; i < repairLCount; i++) {
            var tempValue = j$(escapeVfId('allPage:allForm:MoreMaintenanceContract:theRepeat:'+i+':hospitalQuotationText')).value();
            var tempValued = j$(escapeVfId('allPage:allForm:MoreMaintenanceContract:theRepeat:'+i+':hospitalQuotationTextd')).value();
            var hospitalQuotationTextValue = tempValue;
            if(tempValue==null||tempValue==""||tempValue.replace(/(^\s*)|(\s*$)/g, "")==""){
                hospitalQuotationTextValue = tempValued;
            }
            //console.log(tempValue);
            if(hospitalQuotationTextValue==null||hospitalQuotationTextValue==""||hospitalQuotationTextValue.replace(/(^\s*)|(\s*$)/g, "")==""){
                IsEmpty = true;
            }
        }
        if(IsEmpty){
            //alert('经销商对医院修理价格不能为空,可以为0');
            if(confirm('修理价格存在空项,请确认是否保存')){
                if (confirm("请确认所输信息正确,保存后将无法自行更改。【确定】进行保存,【取消】可进行确认信息")) {
                    blockme();
                    Save(go);
                }
            }
        }else{
            if (confirm("请确认所输信息正确,保存后将无法自行更改。【确定】进行保存,【取消】可进行确认信息")) {
                blockme();
                Save(go);
            }
        }
    }
</script>
<apex:form id="allForm">
<apex:actionFunction name="RefreshPrice" action="{!RefreshPrice}" rerender="message,MoreMaintenanceContract"  onComplete="unblockUI();">
</apex:actionFunction>
<apex:actionFunction name="HQSum" action="{!HQSum}" rerender="message,MoreMaintenanceContract"  onComplete="unblockUI();">
</apex:actionFunction>
<apex:actionFunction name="Save" action="{!Save}" rerender="message" onComplete="unblockUI();" >
    <apex:param name="firstParam" assignTo="{!GoFlag}" value="" />
</apex:actionFunction>
<apex:outputPanel id="message">
    <apex:pageMessages />
</apex:outputPanel>
<table style="width:100%;">
    <colgroup>
        <col width="1%"/>
        <col width="9%"/>
        <col width="1%"/>
        <col width="10%"/>
        <col width="9%"/>
        <col width="10%"/>
        <col width="15%"/>
        <col width="10%"/>
        <col width="10%"/>
        <col width="10%"/>
        <col width="5%"/>
        <col width="5%"/>
    </colgroup>
    <tr>
        <td></td>
        <td align="left" style="font-weight: 800;"><h2>维修合同信息</h2></td><td></td>
        <td align="right" >维修合同名称:</td>
        <td align="left" ><apex:outputField id="name"  value="{!mc.Name}"/></td>
        <td align="right" >合同询价编码:</td>
        <td align="left" ><apex:outputField id="Management_Code" value="{!mc.Management_Code__c}"/></td>
        <td align="right" >记录类型:</td>
        <td align="left" ><apex:outputField id="RecordType" value="{!mc.RecordType.Name}"/>
        </td>
        <td align="right" >状 态:</td>
        <td align="left" ><apex:outputField id="Status" value="{!mc.Status__c}"/>
        </td>
        <td></td>
    </tr>
</table>
<apex:pageBlock title="经销商对医院修理价格录入(以下信息将作为报告书上传金额信息显示)" id="MoreMaintenanceContract" rendered="true">
    <div>
        <ul>
            <li>
                <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>
            <li>
                <apex:outputText rendered="{!!isVM}">经销商对医院修理价格调整比例:</apex:outputText>
                <apex:outputText rendered="{!isVM}">对医院修理价格调整比例:</apex:outputText>
                <apex:Inputtext value="{!proportion}"  id="proportion"  style="max-width: 60px;"/>% <apex:commandButton onclick="RefreshPriceJs();return false;" id="RefreshPrice"  value="刷新价格" style="margin-left:10px;width:100px" /></li>
        </ul>
    </div>
    <input type="hidden" id="repairLCount" value="{!repairLCount}" />
    <div class="table-head">
        <table  class="list" >
            <thead>
                <tr class="headerRow" border="0" cellpadding="0" cellspacing="0" >
                    <th>修理受付番号</th>
                    <th>状态1</th>
                    <th>设备型号</th>
                    <th>机身号码</th>
                    <th>修理原价</th>
                    <th>报价等级</th>
                    <th><apex:outputText rendered="{!!isVM}">经销商对医院修理价格</apex:outputText>
                        <apex:outputText rendered="{!isVM}">对医院维修价格</apex:outputText></th>
                </tr>
            </thead>
        </table>
    </div>
    <div class="table-body" id="tableBody">
        <table class="list" border="0" cellpadding="0" cellspacing="0" >
            <tbody>
                <apex:repeat value="{!repairL}" var="rl" id="theRepeat" >
                    <tr>
                        <td><apex:outputText value="{!rl.rr.Name}"/></td>
                        <td><apex:outputText value="{!rl.rr.Status1__c}"/></td>
                        <td><apex:outputText value="{!rl.rr.Delivered_Product__r.Name}"/></td>
                        <td><apex:outputText value="{!rl.rr.SerialNumber__c}"/></td>
                        <td><apex:outputText value="{!rl.rr.Repair_List_Price_formula__c}"/></td>
                        <td><apex:outputText value="{!rl.rr.Repair_Rank__c}"/></td>
                        <td>
                            <!-- <apex:InputField value="{!rl.rr.hospitalQuotationText__c}"  id="hospitalQuotationText"  /> -->
                            <apex:outputPanel layout="none" rendered="{!IF(rl.edit=false&&rl.rr.hospitalQuotationText__c !=null,true , false)}">
                                <apex:outputField value="{!rl.rr.hospitalQuotationText__c}"  id="hospitalQuotationTextd"/>
                            </apex:outputPanel>
                            <apex:outputPanel layout="none" rendered="{!IF(rl.edit=false&&rl.rr.hospitalQuotationText__c !=null,false , true)}">
                                <apex:InputField value="{!rl.rr.hospitalQuotationText__c}"  id="hospitalQuotationText" onblur="JsHQSum()"/>
                            </apex:outputPanel>
                        </td>
                    </tr>
                </apex:repeat>
            </tbody>
        </table>
    </div>
    <div id="hospitalQuotationTextSum">
        <ul>
            <li>合同期间修理金额(上传): <apex:outputText value="{!mc.hospitalQuotationTextSum__c}"  id="hospitalQuotationTextSum"/> </li>
        </ul>
    </div>
</apex:pageBlock>
<apex:commandButton onclick="BackMc();return false;" value="返  回
" style="margin-left:30px;width:180px"  rendered="true" onComplete="unblockUI();" />
<apex:commandButton onclick="SaveJs(0);return false;" value="保  存
" style="margin-left:30px;width:180px"  rendered="true" />
<apex:commandButton onclick="SaveJs(1);return false;" value="保存并登录PBI报告书页面
" style="margin-left:30px;width:180px"  rendered="true" />
</apex:form>
</apex:page>
force-app/main/default/pages/MoreMaintenanceContract.page-meta.xml
New file
@@ -0,0 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<ApexPage xmlns="http://soap.sforce.com/2006/04/metadata">
    <apiVersion>41.0</apiVersion>
    <availableInTouch>false</availableInTouch>
    <confirmationTokenRequired>false</confirmationTokenRequired>
    <label>MoreMaintenanceContract</label>
</ApexPage>
force-app/main/default/pages/MoreMaintenanceContractPop.page
New file
@@ -0,0 +1,91 @@
<apex:page controller="MoreMaintenanceContractPopController"    showHeader="false"   sidebar="true" id="allPage"  title="经销商对医院修理价格录入" lightningStylesheets="true">
<apex:stylesheet value="{!URLFOR($Resource.blockUIcss)}"/>
<apex:includeScript value="{!URLFOR($Resource.jquery183minjs)}"/>
<!-- action="{!init}" -->
<style type="text/css">
/*----------------------------------------------------
Default
-----------------------------------------------------*/
body,ul,ol,dl,dt,dd,li,p,h1,h2,h3,h4,h5,h6,form,label,fieldset,table,td,img,div,th{
border:0;margin:0px; padding:0;}
li,dd,dl,dt {list-style-type:none;}
table {border-collapse:collapse;}
b,em,i,u,strong{font-weight:normal;font-style:normal;text-decoration:none;}
.clear{ clear:both; line-height:0; font-size:0;  border:none; height:0; }
.empty { line-height:0; font-size:0;}
.fr{ float:right;}
.fl{ float:left;}
.clearfix{overflow:hidden;zoom:1}
.br { word-wrap:break-word;    word-break:break-all;}
.out{white-space: nowrap;  text-overflow:ellipsis;  overflow:hidden;}
.mb30{margin-bottom: 30px;}
.mr30{margin-right: 30px;}
.mr33{margin-right: 33px;}
/*-----------------------------------------------------
User-defined
-----------------------------------------------------*/
h1,h2,h3,h4,h5,h6 { font-family:Tahoma, Helvetica, Arial, 'Microsoft YaHei', sans-serif; font-size:12px; font-weight:normal;}
body {font-size:12px; font-family:Tahoma, Helvetica, Arial, 'Microsoft YaHei', sans-serif; color:#333; background:#fff;}
input,select,textarea{ margin: 0; padding:0; vertical-align:middle; font-family:Tahoma, Helvetica, Arial, 'Microsoft YaHei', sans-serif; color:#333; outline:none; resize:none;}
a { color: #333; text-decoration: none; }
a:hover { color:#333; }
.w_vis_range_wrap{width: 100%;height: 100%;position: fixed;left:0;top:0;background: rgba(0,0,0,0.5);}
.w_vis_range{width: 440px;height: 388px;background: #fff;position: absolute;top: 0;bottom: 0;left: 0;right: 0;margin: auto;border-radius: 5px}
.w_vis_ra_head{height:50px;background: #f5faff;border-bottom: 1px solid #cce5ff;line-height: 50px;font-size: 18px;padding: 0 10px}
.w_vis_ra_head h3{font-size: 18px;text-align: center;}
.w_vis_ra_foot{padding: 20px 0px;font-size: 14px;text-align: center}
.w_vis_ra_foot span{cursor: pointer;display: inline-block;width: 180px;height: 32px;line-height: 32px;border-radius: 2px;text-align: center;}
.w_vis_ra_foot .w_sure{color: #fff;background:#0099ff;}
.w_vis_ra_foot .w_close{color: #999999;background: #f2f2f2;margin-left: 30px}
.w_del{height: 240px;font-size: 14px;}
.w_del_txt {text-align: center;padding: 30px 20px 0}
.w_del_txt p{line-height: 35px;;color: #333;font-size: 16px}
.w_del_txt a:hover{color: #0099ff}
.w_col_09f{color: #0099ff}
.w_inp_wrap{padding: 10px 20px;}
.w_inp_wrap .w_inp{width: 350px;line-height: 30px;height: 30px;border-radius: 2px;border: 1px solid #ccc;vertical-align: middle}
.w_inp_wrap span{vertical-align: middle;}
/*.w_close_btn{display: inline-block;width: 15px;height: 15px;background: url(../images/close.png) no-repeat center;margin-top: 17px;vertical-align: middle}*/
</style>
<script type="text/javascript">
    function yesGO(){
        var Id ="{!id}";
        var RecordTypeName = "{!RecordTypeName}"
        window.location.href="/apex/MoreMaintenanceContract?Id=" +Id+'&RecordTypeName='+RecordTypeName;
    }
    function noGo(){
        window.location.href="http://powerbi.olympus.com.cn/Home/Login";
    }
</script>
<div class="w_vis_range_wrap">
    <div class="w_del w_vis_range">
        <div class="w_vis_ra_head">
            <!-- <span class="w_close_btn fr"></span> -->
            <h3>提示</h3>
        </div>
        <apex:outputPanel rendered="{!!isVM}">
            <div class="w_del_txt ">
                <p>本合同的签订对象为经销商,请确认是否需要输入经销商对医院合同信息。</p>
            </div>
            <div class="w_vis_ra_foot">
                <span class="w_sure" onclick="yesGO();">是,录入经销商对医院价格</span>
                <span class="w_close" onclick="noGo();">否,直接登录PBI</span>
            </div>
        </apex:outputPanel>
        <!-- 20201228 zh LJPH-BWJ8PM 制作报告书按钮 start -->
        <apex:outputPanel rendered="{!isVM}">
            <div class="w_del_txt ">
                <p>请确认是否手动调整合同金额信息。</p>
            </div>
            <div class="w_vis_ra_foot">
                <span class="w_sure" onclick="yesGO();">是,维护对医院价格</span>
                <span class="w_close" onclick="noGo();">否,直接登录PBI</span>
            </div>
        </apex:outputPanel>
        <!-- 20201228 zh LJPH-BWJ8PM 制作报告书按钮 end -->
    </div>
</div>
</apex:page>
force-app/main/default/pages/MoreMaintenanceContractPop.page-meta.xml
New file
@@ -0,0 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<ApexPage xmlns="http://soap.sforce.com/2006/04/metadata">
    <apiVersion>41.0</apiVersion>
    <availableInTouch>false</availableInTouch>
    <confirmationTokenRequired>false</confirmationTokenRequired>
    <label>MoreMaintenanceContractPop</label>
</ApexPage>
force-app/main/default/pages/ServiceMaintenanceTaskPage.page
New file
@@ -0,0 +1,244 @@
<apex:page controller="ServiceMaintenanceTaskController"  showHeader="false" sidebar="true" lightningStylesheets="true" id="allPage"  >
    <apex:slds />
    <apex:includeScript value="{!URLFOR($Resource.jquery183minjs)}"/>
    <apex:includeScript value="{!URLFOR($Resource.PleaseWaitDialog)}"/>
    <apex:includeScript value="{!URLFOR($Resource.CommonUtilJs)}"/>
    <apex:includeScript value="{!URLFOR($Resource.connection20)}"/>
    <apex:includeScript value="{!URLFOR($Resource.apex20)}"/>
    <apex:includeScript value="{!URLFOR($Resource.jquerysuggestjs)}"/>
    <apex:outputPanel id="checEventFrame">
        <script>
            function selectAll() {
                var count = {!pagesize};
                if (j$(escapeVfId('allPage:allForm:mcListview:allCheckbox')).attr('checked') == 'checked') {
                    for (var i = 0; i < count; i++) {
                        j$(escapeVfId('allPage:allForm:mcListview:' + i + ':rowCheckbox')).prop('checked',true);
                    }
                } else {
                    for (var i = 0; i < count; i++) {
                        j$(escapeVfId('allPage:allForm:mcListview:' + i + ':rowCheckbox')).prop('checked',false);
                    }
                }
            }
            function assignTask(){
                var count = {!pagesize};
                var mcIds = '';
                for (var i = 0; i < count; i++) {
                    if(j$(escapeVfId('allPage:allForm:mcListview:' + i + ':rowCheckbox')).attr('checked') == 'checked'){
                        mcIds+=j$(escapeVfId('allPage:allForm:mcListview:' + i + ':mcId')).value() +',';
                    }
                }
                assignTasks(mcIds);
            }
            function exportALL(){
                exportAll();
            }
            function exportSelected(){
                var count = {!pagesize};
                var mcIds = '';
                for (var i = 0; i < count; i++) {
                    if(j$(escapeVfId('allPage:allForm:mcListview:' + i + ':rowCheckbox')).attr('checked') == 'checked'){
                        mcIds+=j$(escapeVfId('allPage:allForm:mcListview:' + i + ':mcId')).value() +',';
                    }
                }
                exportSelect(mcIds);
            }
            function refreshPageSizeJs() {
                refreshPageSize();
            }
        </script>
    </apex:outputPanel>
    <apex:outputPanel rendered="{!!isShowDetail}" > 无访问权限 </apex:outputPanel>
    <apex:form id="allForm" rendered="{!isShowDetail}">
        <apex:pagemessages ></apex:pagemessages>
        <apex:actionFunction name="assignTasks" action="{!assignTasks}" rerender="allForm">
            <apex:param name="firstParam" assignTo="{!mcIdList}" value=""></apex:param>
        </apex:actionFunction>
        <apex:actionFunction name="exportAll" action="{!exportAll}" ></apex:actionFunction>
        <apex:actionFunction name="exportSelect" action="{!exportSelected}" rerender="allPage" oncomplete="toPage()">
            <apex:param name="exportIds" assignTo="{!exportIdList}" value=""></apex:param>
        </apex:actionFunction>
        <apex:actionFunction name="toPage" action="{!ToPage}" ></apex:actionFunction>
        <apex:actionFunction name="refreshPageSize" action="{!refreshPageSize}" status="fetchStatus" reRender="allForm"/>
        <div style="background-color:#ffffff; padding:0.5rem;">
            <button class="slds-button slds-button_neutral" onclick="exportALL();return false;" id="export">
                <svg class="slds-button__icon slds-button__icon_left" aria-hidden="true" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
                    <use xlink:href="/apexpages/slds/latest/assets/icons/utility-sprite/svg/symbols.svg#download"></use>
                </svg>导出全部
            </button>
            <button class="slds-button slds-button_neutral" onclick="exportSelected();return false;" id="exportbutt">
                <svg class="slds-button__icon slds-button__icon_left" aria-hidden="true" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
                    <use xlink:href="/apexpages/slds/latest/assets/icons/utility-sprite/svg/symbols.svg#download"></use>
                </svg>导出选中
            </button>
        </div>
        <div style="width:100%; overflow :scroll; height: 560px;">
            <apex:dataTable value="{!pageRecords}" var="mcTask" styleClass="slds-table slds-table_cell-buffer slds-table_bordered slds-table_col-bordered" id="mcListview" style="max-height: 580px;">
                <apex:column >
                    <apex:facet name="header"><apex:inputCheckbox onClick="selectAll()" id="allCheckbox" /></apex:facet>
                    <apex:inputCheckbox id="rowCheckbox" />
                    <apex:inputHidden id="mcId" value="{!mcTask.MC.Id}" />
                </apex:column>
                <apex:column value="{!mcTask.MC.Management_Code__c}"  >
                    <apex:facet name="header">合同询价编码</apex:facet>
                </apex:column>
                <apex:column value="{!mcTask.MC.Hospital__c}"  >
                    <apex:facet name="header">医院</apex:facet>
                </apex:column>
                <apex:column value="{!mcTask.MC.Department__c}"  >
                    <apex:facet name="header">科室</apex:facet>
                </apex:column>
                <apex:column value="{!mcTask.MC.Service_Contract_Staff__c}"  >
                    <apex:facet name="header">主担当</apex:facet>
                </apex:column>
                <!-- <apex:column value="{!mcTask.MC.Estimate_Target__c}"  >
                    <apex:facet name="header">报价提交对象</apex:facet>
                </apex:column> -->
                <!-- <apex:column value="{!mcTask.MC.Dealer__c}"  >
                    <apex:facet name="header">经销商名</apex:facet>
                </apex:column> -->
                <apex:column value="{!mcTask.ContractStartDate}"  >
                    <apex:facet name="header">合同开始日</apex:facet>
                </apex:column>
                <apex:column value="{!mcTask.ContractEndDate}"  >
                    <apex:facet name="header">合同结束日</apex:facet>
                </apex:column>
                <apex:column value="{!mcTask.MC.Contract_Amount__c}"  >
                    <apex:facet name="header">最终用户合同金额</apex:facet>
                </apex:column>
                <apex:column value="{!mcTask.EstimatePricerangeF}"  >
                    <apex:facet name="header">价格范围</apex:facet>
                </apex:column>
                <apex:column value="{!mcTask.ServiceDiscountRateF}"  >
                    <apex:facet name="header">相对标准价格范围的折扣率</apex:facet>
                </apex:column>
                <apex:column value="{!mcTask.ContractConsumptionrate}"  >
                    <apex:facet name="header">消费率</apex:facet>
                </apex:column>
                <apex:column value="{!mcTask.EstimateAssetCnt}"  >
                    <apex:facet name="header">报价资产件数</apex:facet>
                </apex:column>
                <apex:column value="{!mcTask.OwnershipMachineNo1}"  >
                    <apex:facet name="header">故障型号1</apex:facet>
                </apex:column>
                <apex:column value="{!mcTask.OwnershipMachineNo2}"  >
                    <apex:facet name="header">故障型号2</apex:facet>
                </apex:column>
                <apex:column value="{!mcTask.OwnershipMachineNo3}"  >
                    <apex:facet name="header">故障型号3</apex:facet>
                </apex:column>
                <apex:column value="{!mcTask.OwnershipMachineNo4}"  >
                    <apex:facet name="header">故障型号4</apex:facet>
                </apex:column>
                <apex:column value="{!mcTask.OwnershipMachineNo5}"  >
                    <apex:facet name="header">故障型号5</apex:facet>
                </apex:column>
                <apex:column value="{!mcTask.LocationName1}"  >
                    <apex:facet name="header">故障部位1</apex:facet>
                </apex:column>
                <apex:column value="{!mcTask.LocationName2}"  >
                    <apex:facet name="header">故障部位2</apex:facet>
                </apex:column>
                <apex:column value="{!mcTask.LocationName3}"  >
                    <apex:facet name="header">故障部位3</apex:facet>
                </apex:column>
                <apex:column value="{!mcTask.LocationName4}"  >
                    <apex:facet name="header">故障部位4</apex:facet>
                </apex:column>
                <apex:column value="{!mcTask.LocationName5}"  >
                    <apex:facet name="header">故障部位5</apex:facet>
                </apex:column>
                <apex:column value="{!mcTask.LastMContract1}"  >
                    <apex:facet name="header">上期合同1</apex:facet>
                </apex:column>
                <apex:column value="{!mcTask.LastMContract2}"  >
                    <apex:facet name="header">上期合同2</apex:facet>
                </apex:column>
                <apex:column value="{!mcTask.LastMContract3}"  >
                    <apex:facet name="header">上期合同3</apex:facet>
                </apex:column>
                <!-- <apex:column value="{!mcTask.LastMContract4}"  >
                    <apex:facet name="header">上期合同4</apex:facet>
                </apex:column>
                <apex:column value="{!mcTask.LastMContract5}"  >
                    <apex:facet name="header">上期合同5</apex:facet>
                </apex:column> -->
                <apex:column value="{!mcTask.LastMContract1gapTime}"  >
                    <apex:facet name="header">上期合同1空白期</apex:facet>
                </apex:column>
                <apex:column value="{!mcTask.LastMContract2gapTime}"  >
                    <apex:facet name="header">上期合同2空白期</apex:facet>
                </apex:column>
                <apex:column value="{!mcTask.LastMContract3gapTime}"  >
                    <apex:facet name="header">上期合同3空白期</apex:facet>
                </apex:column>
                <!-- <apex:column value="{!mcTask.LastMContract4gapTime}"  >
                    <apex:facet name="header">上期合同4空白期</apex:facet>
                </apex:column> -->
                <apex:column value="{!mcTask.MCTask.Name}"  >
                    <apex:facet name="header">维修合同任务名称</apex:facet>
                </apex:column>
                <apex:column value="{!mcTask.MCTask.Maintenance_Consumption_rate__c}"  >
                    <apex:facet name="header">任务发送时点消费率</apex:facet>
                </apex:column>
                <apex:column value="{!mcTask.MCTask.Task__c}"  >
                    <apex:facet name="header">任务</apex:facet>
                </apex:column>
                <apex:column value="{!mcTask.Task.taskStatus__c}"  >
                    <apex:facet name="header">任务状态</apex:facet>
                </apex:column>
                <apex:column value="{!mcTask.taskHandleDate}"  >
                    <apex:facet name="header">任务确认日</apex:facet>
                </apex:column>
                <apex:column value="{!mcTask.SubmitDate}"  >
                    <apex:facet name="header">日报提交日</apex:facet>
                </apex:column>
                <apex:column value="{!mcTask.Task.cancelReason__c}"  >
                    <apex:facet name="header">取消原因</apex:facet>
                </apex:column>
            </apex:dataTable>
        </div>
        <div style="width:100%;">
            <table style="width: 100%">
                <tr>
                    <td><apex:outputText value="{!(currentpage * pagesize)+1-pagesize}-{!IF((currentpage * pagesize)>mcTaskCount, mcTaskCount,(currentpage * pagesize))} 共 {!mcTaskCount} 个" />  </td>
                    <td align="center">
                        <div class="paginator line1">
                            <span class="prevNextLinks">
                                <span class="prevNext">
                                    <apex:commandLink status="fetchStatus" reRender="allForm" action="{!moveToFirst}" oncomplete="refreshPageSizeJs();" title="首页" >
                                        <img src="/s.gif" title="首页" alt="首页" class="{!if((hasPrevious),'first','firstoff')}"/>
                                    </apex:commandLink>
                                </span>
                                <span class="prevNext">
                                    <apex:commandLink status="fetchStatus" reRender="allForm"  action="{!moveToPrevious}" oncomplete="refreshPageSizeJs();"  title="上一页">
                                        <img src="/s.gif" title="上一页" alt="上一页" class="{!if((hasPrevious),'prev','prevoff')}"/>上一页
                                    </apex:commandLink>
                                </span>
                                <span class="prevNext">
                                    <apex:commandLink status="fetchStatus" reRender="allForm" action="{!moveToNext}" oncomplete="refreshPageSizeJs();" title="下一页">下一页
                                        <img src="/s.gif" title="下一页" alt="下一页" class="{!if((hasNext),'next','nextoff')}"/>
                                    </apex:commandLink>
                                </span>
                                <span class="prevNext">
                                    <apex:commandLink status="fetchStatus" reRender="allForm" action="{!moveToLast}"  oncomplete="refreshPageSizeJs();" title="尾页">
                                        <img src="/s.gif" title="尾页" alt="尾页" class="{!if((hasNext),'last','lastoff')}"/>
                                    </apex:commandLink>
                                </span>
                            </span>
                        </div>
                    </td>
                    <td align="right" width="20%">  </td>
                </tr>
            </table>
        </div>
        <div style="background-color:#ffffff; padding:0.5rem;">
            <button class="slds-button slds-button_outline-brand" onclick="assignTask();return false;" id="assignbut">分配任务</button>
        </div>
    </apex:form>
</apex:page>
force-app/main/default/pages/ServiceMaintenanceTaskPage.page-meta.xml
New file
@@ -0,0 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<ApexPage xmlns="http://soap.sforce.com/2006/04/metadata">
    <apiVersion>50.0</apiVersion>
    <availableInTouch>false</availableInTouch>
    <confirmationTokenRequired>false</confirmationTokenRequired>
    <label>ServiceMaintenanceTaskPage</label>
</ApexPage>