123
chenjingwu
2024-04-25 aebb2c4ece794a9fe486328c042e3dcd33f0ccd5
force-app/main/default/pages/AssetMaintain.page
@@ -2,8 +2,25 @@
<apex:stylesheet value="{!URLFOR($Resource.blockUIcss)}"/>
<apex:includeScript value="{!URLFOR($Resource.jquery183minjs)}"/>
<apex:includeScript value="{!URLFOR($Resource.PleaseWaitDialog)}"/>
<apex:includeScript value="{!URLFOR($Resource.SelectFieldJs)}"/>
<apex:stylesheet value="{!URLFOR($Resource.StyleUtilCss)}"/>
    <style>
         .datePicker {
            left: 805px !important;
            width: 350px !important;
        }
        .label{
            font-size: .75rem !important;
        }
        .labelCol{
            font-size: .75rem !important;
        }
        .dataCol{
            font-size: .75rem !important;
        }
        .textStyle{
            font-size: 15px;
        }
         /*20230815 ljh start*/
         table.mytable tr{
            height:45px;
@@ -35,7 +52,7 @@
        div#out_Div_R {
            position: relative;
            overflow: hidden;
            width: 1200px;
            width: 455px !important;
            margin-left: 686px;
        }
@@ -46,6 +63,7 @@
        }
        div#in_Div_R {
            position: relative;
            width: 470px !important;
            overflow: auto;
            height: 451px;
            margin-left: 686px;
@@ -471,10 +489,13 @@
                            <td class="labelStyle">货架号</td>
                            <td class="inputTextStyle"><apex:inputText value="{!searchB.wh_location}" id="shelfNumId" /></td>
                            <td class="blankStyle"></td>
                            <td class="labelStyle">消耗品有效期至</td>
                            <td class="labelStyle">机身号</td>
                            <td class="inputTextStyle"><apex:inputText value="{!searchB.serialNumber}" id="serialNoId" /></td>
                            <!-- 20230928 ljh 和机身号换位置 -->
                            <!-- <td class="labelStyle">消耗品有效期至</td>
                            <td class="inputTextStyle">
                                <apex:inputText id="consumable_Guaranteen_endStr" value="{!searchB.consumable_Guaranteen_endStr}" size="12" onfocus="DatePicker.pickDate(true, '{!$Component.consumable_Guaranteen_endStr}', false)" />
                            </td>
                            </td> -->
                        </tr>
                        <tr>
                            <td class="labelStyle">备品管理编码</td>  <!-- シリアル番号 -->
@@ -489,8 +510,12 @@
                                <apex:inputText value="{!searchB.internal_Asset_number}" id="fixedAssetNumId2" rendered="{!!internalAssetNumberEditableFlag}" />
                            </td>
                            <td class="blankStyle"></td>
                            <td class="labelStyle">机身号</td>
                            <td class="inputTextStyle"><apex:inputText value="{!searchB.serialNumber}" id="serialNoId" /></td>
                            <!-- <td class="labelStyle">机身号</td>
                            <td class="inputTextStyle"><apex:inputText value="{!searchB.serialNumber}" id="serialNoId" /></td> -->
                            <td class="labelStyle">消耗品有效期至</td>
                            <td class="inputTextStyle">
                                <apex:inputText id="consumable_Guaranteen_endStr" value="{!searchB.consumable_Guaranteen_endStr}" size="12" onfocus="DatePicker.pickDate(true, '{!$Component.consumable_Guaranteen_endStr}', false)" />
                            </td>
                            <td class="blankStyle"></td>
                            <td class="labelStyle">分公司号</td>
                            <td class="inputTextStyle">
@@ -601,47 +626,47 @@
                <apex:param name="csvMaintaintype" value="" />
            </apex:actionFunction>
            <apex:pageBlockSection columns="2">
                <apex:outputField value="{!amHeader.Name}"/>
                <apex:outputField value="{!amHeader.MaintainType__c}"/>
                <apex:outputField value="{!amHeader.Submit_Time__c}" rendered="{!amHeader.MaintainType__c=='实物报废'}"/>
                <apex:outputField value="{!amHeader.Date__c}" rendered="{!amHeader.MaintainType__c!='实物报废'}"/>
                <apex:outputField value="{!amHeader.Status__c}"/>
                <apex:outputField value="{!amHeader.Submit_Person__c}" rendered="{! amHeader.MaintainType__c=='实物报废'|| ISBLANK(amHeader.MaintainType__c) }"/>
                <apex:outputField styleClass="textStyle" value="{!amHeader.Name}"/>
                <apex:outputField styleClass="textStyle" value="{!amHeader.MaintainType__c}"/>
                <apex:outputField styleClass="textStyle" value="{!amHeader.Submit_Time__c}" rendered="{!amHeader.MaintainType__c=='实物报废'}"/>
                <apex:outputField styleClass="textStyle" value="{!amHeader.Date__c}" rendered="{!amHeader.MaintainType__c!='实物报废'}"/>
                <apex:outputField styleClass="textStyle" value="{!amHeader.Status__c}"/>
                <apex:outputField styleClass="textStyle" value="{!amHeader.Submit_Person__c}" rendered="{! amHeader.MaintainType__c=='实物报废'|| ISBLANK(amHeader.MaintainType__c) }"/>
            </apex:pageBlockSection>
            <apex:pageBlockSection columns="1" rendered="{! amHeader.MaintainType__c=='实物报废'|| ISBLANK(amHeader.MaintainType__c) }">
                <apex:pageBlockSection columns="2" rendered="{! editmode}">
                    <apex:pageBlockSectionItem >
            <apex:pageBlockSection id="SalesSectionOut1" columns="1" rendered="{! amHeader.MaintainType__c=='实物报废'|| ISBLANK(amHeader.MaintainType__c) }">
                <apex:pageBlockSection id="SalesSectionIn1" columns="2" rendered="{! editmode}">
                    <apex:pageBlockSectionItem id="SalesSectionItem1">
                        <apex:outputLabel value="{!$ObjectType.AssetMaintainHeader__c.fields.CC_User1__c.Label}"/>
                        <apex:inputField value="{!amHeader.CC_User1__c}"/>
                        <apex:inputField id="SalesName1" value="{!amHeader.CC_User1__c}"/>
                    </apex:pageBlockSectionItem>
                    <apex:pageBlockSectionItem >
                        <apex:outputLabel value="{!$ObjectType.AssetMaintainHeader__c.fields.CC_Email1__c.Label}"/>
                        <apex:inputField value="{!amHeader.CC_Email1__c}"/>
                    </apex:pageBlockSectionItem>
                    <apex:pageBlockSectionItem >
                    <apex:pageBlockSectionItem id="SalesSectionItem2">
                        <apex:outputLabel value="{!$ObjectType.AssetMaintainHeader__c.fields.CC_User2__c.Label}"/>
                        <apex:inputField value="{!amHeader.CC_User2__c}"/>
                        <apex:inputField id="SalesName2" value="{!amHeader.CC_User2__c}"/>
                    </apex:pageBlockSectionItem>
                    <apex:pageBlockSectionItem >
                        <apex:outputLabel value="{!$ObjectType.AssetMaintainHeader__c.fields.CC_Email2__c.Label}"/>
                        <apex:inputField value="{!amHeader.CC_Email2__c}"/>
                    </apex:pageBlockSectionItem>
                    <apex:pageBlockSectionItem >
                    <apex:pageBlockSectionItem id="SalesSectionItem3">
                        <apex:outputLabel value="{!$ObjectType.AssetMaintainHeader__c.fields.CC_User3__c.Label}"/>
                        <apex:inputField value="{!amHeader.CC_User3__c}"/>
                        <apex:inputField id="SalesName3" value="{!amHeader.CC_User3__c}"/>
                    </apex:pageBlockSectionItem>
                    <apex:pageBlockSectionItem >
                        <apex:outputLabel value="{!$ObjectType.AssetMaintainHeader__c.fields.CC_Email3__c.Label}"/>
                        <apex:inputField value="{!amHeader.CC_Email3__c}"/>
                    </apex:pageBlockSectionItem>
                    <apex:pageBlockSectionItem >
                    <apex:pageBlockSectionItem id="SalesSectionItem4">
                        <apex:outputLabel value="{!$ObjectType.AssetMaintainHeader__c.fields.CC_User4__c.Label}"/>
                        <apex:inputField value="{!amHeader.CC_User4__c}"/>
                        <apex:inputField id="SalesName4" value="{!amHeader.CC_User4__c}"/>
                    </apex:pageBlockSectionItem>
                    <apex:pageBlockSectionItem />
                    <apex:pageBlockSectionItem >
                    <apex:pageBlockSectionItem id="SalesSectionItem5">
                        <apex:outputLabel value="{!$ObjectType.AssetMaintainHeader__c.fields.CC_User5__c.Label}"/>
                        <apex:inputField value="{!amHeader.CC_User5__c}"/>
                        <apex:inputField id="SalesName5" value="{!amHeader.CC_User5__c}"/>
                    </apex:pageBlockSectionItem>
                    <apex:pageBlockSectionItem />
                </apex:pageBlockSection>
@@ -682,7 +707,167 @@
                    <apex:pageBlockSectionItem />
                </apex:pageBlockSection>
            </apex:pageBlockSection>
            <script>
                let SelectFieldParamList=[
                   {
                       //原apex:inputField的id值,需要在页面上获取
                       inputFieldId : 'allPage:allForm:pageBlockButton1:SalesSectionOut1:SalesSectionIn1:SalesSectionItem1:SalesName1',
                       //查找字段所在对象
                       ObjectType : 'AssetMaintainHeader__c',
                       //查找字段的api名称
                       QueryFieldApiName : 'CC_User1__c',
                       //查找字段的查找对象
                       SelectObj : 'User',
                       //搜索时使用的字段
                       SelectFld : 'Name',
                   },
                   {
                       //原apex:inputField的id值,需要在页面上获取
                       inputFieldId : 'allPage:allForm:pageBlockButton1:SalesSectionOut1:SalesSectionIn1:SalesSectionItem2:SalesName2',
                       //查找字段所在对象
                       ObjectType : 'AssetMaintainHeader__c',
                       //查找字段的api名称
                       QueryFieldApiName : 'CC_User2__c',
                       //查找字段的查找对象
                       SelectObj : 'User',
                       //搜索时使用的字段
                       SelectFld : 'Name',
                   }, {
                   //原apex:inputField的id值,需要在页面上获取
                   inputFieldId : 'allPage:allForm:pageBlockButton1:SalesSectionOut1:SalesSectionIn1:SalesSectionItem3:SalesName3',
                   //查找字段所在对象
                   ObjectType : 'AssetMaintainHeader__c',
                   //查找字段的api名称
                   QueryFieldApiName : 'CC_User3__c',
                   //查找字段的查找对象
                   SelectObj : 'User',
                   //搜索时使用的字段
                   SelectFld : 'Name',
                   }, {
                   //原apex:inputField的id值,需要在页面上获取
                   inputFieldId : 'allPage:allForm:pageBlockButton1:SalesSectionOut1:SalesSectionIn1:SalesSectionItem4:SalesName4',
                   //查找字段所在对象
                   ObjectType : 'AssetMaintainHeader__c',
                   //查找字段的api名称
                   QueryFieldApiName : 'CC_User4__c',
                   //查找字段的查找对象
                   SelectObj : 'User',
                   //搜索时使用的字段
                   SelectFld : 'Name',
                   }, {
                   //原apex:inputField的id值,需要在页面上获取
                   inputFieldId : 'allPage:allForm:pageBlockButton1:SalesSectionOut1:SalesSectionIn1:SalesSectionItem5:SalesName5',
                   //查找字段所在对象
                   ObjectType : 'AssetMaintainHeader__c',
                   //查找字段的api名称
                   QueryFieldApiName : 'CC_User5__c',
                   //查找字段的查找对象
                   SelectObj : 'User',
                   //搜索时使用的字段
                   SelectFld : 'Name',
                   },
                   ]
                   //初始化
                   resetOpenPage(SelectFieldParamList);
                   function unblockUI(){
                       j$("#sbArea").fadeOut(500, function(){
                           j$("#sbArea").remove();
                       });
                       resetOpenPage(SelectFieldParamList);
                   }
                   function refreshinput1(){
                    // 复杂组件 start
                    var baseURL = '';
                            var ObjectType = 'AssetMaintainDetail__c';
                            var QueryFieldApiName = 'OneToOne_Main__c';
                            var ObjectType = 'AssetMaintainDetail__c';
                            var inputFieldId = '';
                            var inputFieldId_lktp = '';
                            var SelectObj = 'Asset';
                            var SelectFld = 'Name';
                            console.log('xxx');
                            console.log('123');
                            var cnt = j$(escapeVfId('count_hidden')).val();
                            console.log('count_hidden=' + j$(escapeVfId('count_hidden').length));
                            console.log('count=' + cnt);
                            for (var i = 0; i < cnt; i++) {
                                inputFieldId = 'allPage:allForm:dataBlock:dataline_R1:'+ i +':OneToOne';
                                inputFieldId_lktp = 'allPage:allForm:dataBlock:dataline_R1:'+ i +':OneToOne_lktp';
                                baseURL = '/apex/SearchContactPageLWC?ObjectType=' + ObjectType + '&QueryFieldApiName=' + QueryFieldApiName +'&QueryFieldApiName=' + QueryFieldApiName +'&ObjectType=' + ObjectType +'&inputFieldId=' + inputFieldId +'&SelectObj=' + SelectObj +'&SelectFld=' + SelectFld;
                                var obj = document.getElementById('allPage:allForm:dataBlock:dataline_R1:' + i + ':OneToOne_lkwgt');
                                if (obj != null) {
                                    obj.setAttribute('href', 'javascript:%20openLookup%28%27' + baseURL + '%26lktp%3D%27%20%2B%20getElementByIdCS%28%27' + inputFieldId_lktp + '%27%29.value%2C670%2C%271%27%2C%27%26lksrch%3D%27%20%2B%20escapeUTF%28getElementByIdCS%28%27' + inputFieldId + '%27%29.value.substring%280%2C%2080%29%29%29');
                                }
                            }
                        // 复杂组件 end
                    }
                    refreshinput1();
               </script>
            <table border="0">
                <tr>
                    <!-- <td style="width: 2%"></td> -->
@@ -772,7 +957,7 @@
                            else{
                                reportId = "{!notScrappedReportId}";
                            }
                            var url = `/lightning/r/Report/${reportId}?fv0=${maintainType}`;
                            var url = `/lightning/r/Report/${reportId}/view?fv0=${maintainType}`;
                            window.open(url);
                        }
                    </script>
@@ -798,7 +983,10 @@
                        <apex:inputText id="abandonCountId" style="width: 90%"/>
                    </td>
                    <td class="setButtonStyle"><apex:commandButton style="width: 70%" action="{!changeEditable}" value="编辑" onclick="blockme();" rerender="allForm" oncomplete="unblockUI();" disabled="{!!editButtonActive}" /></td>
                    <td class="setButtonStyle">
                        <apex:commandButton style="width: 70%" action="{!changeEditable}" value="编辑" onclick="blockme();" rerender="allForm" oncomplete="unblockUI();resetOpenPage(SelectFieldParamList);" disabled="{!!editButtonActive}" />
                    </td>
                    <td class="setButtonStyle">
                        <apex:commandButton style="width: 58%" value="适用" reRender="allForm" onclick="applyJs(); return false;" disabled="{!!editmode}"  />
                        <script type="text/javascript">
@@ -943,7 +1131,7 @@
                </table>
            </div>
            <div id="out_Div_R">
                <table class="list" border="1" style="border-collapse: collapse; table-layout:fixed; border-bottom-width: 0px; border-spacing:0; width:700px; height: 30px;">
                <table class="list" border="1" style="border-collapse: collapse; table-layout:fixed; border-bottom-width: 0px; border-spacing:0; width:455px; height: 30px;">
                    <tr class="headerRow" style="background-color: #DCDCDC; text-align: left; vertical-align: top;">
                        <apex:variable value="{!0}" var="cnt" />
                        <apex:repeat value="{!amdRightLabelList}" var="t">
@@ -987,7 +1175,6 @@
                        </tr>
                        <apex:variable value="{!Cnt_L+1}" var="Cnt_L" />
                    </apex:repeat>
                    <apex:repeat id="dataline_L2" value="{!assetFromSearchList}" var="eachAssetData">
                        <tr class="dataRow" id="tableData_L_{!Cnt_L}" onmouseover="if (window.hiOn){hiOn(this);} " onmouseout="if (window.hiOff){hiOff(this);} " onblur="if (window.hiOff){hiOff(this);}" onfocus="if (window.hiOn){hiOn(this);}">
                            <!-- 全选 -->
@@ -1014,7 +1201,7 @@
                                <apex:outputField value="{!eachAssetData.amd.SerialNumber__c}" />
                            </td>
                        </tr>
                        <apex:variable value="{!Cnt_L+1}" var="Cnt_L" />
                        <apex:variable id="Cnt_L" value="{!Cnt_L+1}" var="Cnt_L" />
                    </apex:repeat>
                </table>
            </div>
@@ -1111,7 +1298,7 @@
                                <apex:outputField value="{!eachAssetData.amd.Is_OneToOne_Accessory__c}"/>
                            </td>
                            <td class="col_OneToOne_Main__c dataCellBorder1 OneToOne_Main__c" style="word-wrap:break-word">
                                <apex:inputField value="{!eachAssetData.amd.OneToOne_Main__c}"
                                <apex:inputField id="OneToOne" value="{!eachAssetData.amd.OneToOne_Main__c}"
                                                onchange="j$(escapeVfId('allPage:allForm:dataBlock:dataline_L1:' + '{!Cnt_R}' + ':rowCheck')).prop('checked', true); setChangeFlg(); blockAbandon('{!Cnt_R}');"
                                                rendered="{!editmode && eachAssetData.editable && eachAssetData.amd.Is_OneToOne_Accessory__c  && eachAssetData.amd.Manage_type__c == '数量管理'}"
                                />
@@ -1129,8 +1316,36 @@
                                />
                            </td>
                        </tr>
                        <apex:variable value="{!Cnt_R+1}" var="Cnt_R" />
                        <apex:variable id="Cnt_R" value="{!Cnt_R+1}" var="Cnt_R" />
                    </apex:repeat>
                    <script>
                    function refreshinput1(){
                    // 复杂组件 start
                    var baseURL = '';
                            var ObjectType = 'AssetMaintainDetail__c';
                            var QueryFieldApiName = 'OneToOne_Main__c';
                            var ObjectType = 'AssetMaintainDetail__c';
                            var inputFieldId = '';
                            var inputFieldId_lktp = '';
                            var SelectObj = 'Asset';
                            var SelectFld = 'Name';
                            console.log('xxx');
                            console.log('123');
                            var cnt = j$(escapeVfId('Cnt_L')).val();
                            console.log('count=' + cnt);
                            for (var i = 0; i < cnt; i++) {
                                inputFieldId = 'allPage:allForm:dataBlock:dataline_R1:'+ i +':OneToOne';
                                inputFieldId_lktp = 'allPage:allForm:dataBlock:dataline_R1:'+ i +':OneToOne_lktp';
                                baseURL = '/apex/SearchContactPageLWC?ObjectType=' + ObjectType + '&QueryFieldApiName=' + QueryFieldApiName +'&QueryFieldApiName=' + QueryFieldApiName +'&ObjectType=' + ObjectType +'&inputFieldId=' + inputFieldId +'&SelectObj=' + SelectObj +'&SelectFld=' + SelectFld;
                                var obj = document.getElementById('allPage:allForm:dataBlock:dataline_R1:' + i + ':OneToOne_lkwgt');
                                if (obj != null) {
                                    obj.setAttribute('href', 'javascript:%20openLookup%28%27' + baseURL + '%26lktp%3D%27%20%2B%20getElementByIdCS%28%27' + inputFieldId_lktp + '%27%29.value%2C670%2C%271%27%2C%27%26lksrch%3D%27%20%2B%20escapeUTF%28getElementByIdCS%28%27' + inputFieldId + '%27%29.value.substring%280%2C%2080%29%29%29');
                                }
                            }
                        // 复杂组件 end
                    }
                    refreshinput1();
                    </script>
                    <apex:variable value="{!Cnt_R}" var="Cnt_R_Start" />
                    <apex:repeat id="dataline_R2" value="{!assetFromSearchList}" var="eachAssetData">
                        <tr id="tableData_R_{!Cnt_R}" class="dataRow" onmouseover="if (window.hiOn){hiOn(this);} " onmouseout="if (window.hiOff){hiOff(this);} " onblur="if (window.hiOff){hiOff(this);}" onfocus="if (window.hiOn){hiOn(this);}" >
@@ -1219,7 +1434,7 @@
                j$('select[id$=mlktp]').each(function() {
                    this.style.display="none";
                })
            </script>
        </apex:pageBlock>
    </apex:form>