<apex:page standardController="Account" extensions="ListShipController" showHeader="false" sidebar="false" action="{!init}" id="Page" readOnly="true">
|
<apex:stylesheet value="{!URLFOR($Resource.blockUIcss)}"/>
|
<apex:includeScript value="{!URLFOR($Resource.jquery183minjs)}"/>
|
<apex:includeScript value="{!URLFOR($Resource.PleaseWaitDialog)}"/>
|
<apex:includeScript value="{!URLFOR($Resource.jqueryTableFix)}"/>
|
<script type='text/javascript'>
|
function searchJs() {
|
blockme();
|
searchBtn();
|
}
|
function submitListener(e){
|
var keynum = 0;
|
if (window.event){
|
keynum = window.event.keyCode;
|
}
|
else if (e.which){
|
keynum = e.which;
|
}
|
|
// Here we check whether the Enter button was pressed
|
if (keynum == 13){
|
searchJs();
|
}
|
}
|
</script>
|
<style>
|
.dateFormat {
|
display: none;
|
}
|
</style>
|
<apex:pageBlock id="searchAsset">
|
<apex:form id="Form" onkeyup="submitListener(event)">
|
<apex:actionFunction name="searchBtn" action="{!searchBtn}" rerender="searchAsset" onComplete="unblockUI();"></apex:actionFunction>
|
<apex:pageMessages />
|
<table style="border: 0; border-collapse: collapse;" id="searchTbl1">
|
<tr>
|
<th style="text-align:right; width:50px;">条件:</th>
|
<th style="text-align:right; width:50px;">本部</th>
|
<td style="text-align:left; width:70px;"><apex:selectList value="{!salesDept}" size="1" style="width:95%"><apex:selectOptions value="{!salesDeptOpts}"/></apex:selectList></td>
|
<th style="text-align:right; width:50px;">省</th>
|
<td style="text-align:left; width:70px;"><apex:selectList value="{!area}" size="1" style="width:95%"><apex:selectOptions value="{!areaOpts}"/></apex:selectList></td>
|
<th style="text-align:right; width:60px;">医院</th>
|
<td style="text-align:left; width:75px;"><apex:inputText value="{!enduser}" style="width:95%;"/></td>
|
<th style="text-align:right; width:60px;">{!$ObjectType.Ship__c.fields.Shipping_date__c.Label}</th>
|
<td style="text-align:left; width:65px;"><apex:inputField value="{!dateFrom.Birth_Date__c}" style="width:95%;"/></td>
|
<td style="text-align:left; width:10px;">~</td>
|
<td style="text-align:left; width:65px;"><apex:inputField value="{!dateTo.Birth_Date__c}" style="width:95%;"/></td>
|
</tr>
|
</table>
|
<table style="width:100%; border: 0; border-collapse: collapse;" id="searchTbl2">
|
<tr>
|
<th style="width:50px;"> </th>
|
<th style="text-align:right; width:60px;">{!$ObjectType.Ship__c.fields.Category2__c.Label}</th>
|
<td style="text-align:left; width:75px;"><apex:selectList value="{!category2}" size="1" style="width:95%"><apex:selectOptions value="{!category2Opts}"/></apex:selectList></td>
|
<th style="text-align:right; width:60px;">{!$ObjectType.Ship__c.fields.Category3__c.Label}</th>
|
<td style="text-align:left; width:75px;"><apex:inputText value="{!category3}" style="width:95%;"/></td>
|
<th style="text-align:right; width:60px;">{!$ObjectType.Ship__c.fields.Category4__c.Label}</th>
|
<td style="text-align:left; width:75px;"><apex:inputText value="{!category4}" style="width:95%;"/></td>
|
<th style="text-align:right; width:60px;">{!$ObjectType.Ship__c.fields.Category5__c.Label}</th>
|
<td style="text-align:left; width:75px;"><apex:inputText value="{!category5}" style="width:95%;"/></td>
|
<th style="text-align:right; width:60px;">产品型号</th>
|
<td style="text-align:left; width:75px;"><apex:inputText value="{!modelNo}" style="width:95%;"/></td>
|
<td style="width:40px;"> </td>
|
<td style="text-align:left;"><apex:commandButton value="适用" style="width:60px;" reRender="Page" onclick="searchJs();"/></td>
|
</tr>
|
</table>
|
<table style="border: 0; border-collapse: collapse;" id="groupbyTbl">
|
<tr>
|
<th style="text-align:right; width:50px;">行项目:</th>
|
<td style="text-align:left;"><apex:inputCheckbox id="isSalesDept" value="{!isSalesDept}" disabled="true"></apex:inputCheckbox><apex:outputLabel value="本部" for="isSalesDept"/></td>
|
<td style="text-align:left;"><apex:inputCheckbox id="isArea" value="{!isArea}"></apex:inputCheckbox><apex:outputLabel value="省" for="isArea"/></td>
|
<td style="text-align:left;"><apex:inputCheckbox id="isEnduser" value="{!isEnduser}"></apex:inputCheckbox><apex:outputLabel value="医院" for="isEnduser"/></td>
|
<td style="text-align:left;"><apex:inputCheckbox id="isCategory2" value="{!isCategory2}"></apex:inputCheckbox><apex:outputLabel value="{!$ObjectType.Product2.fields.Category2__c.Label}" for="isCategory2"/></td>
|
<td style="text-align:left;"><apex:inputCheckbox id="isCategory3" value="{!isCategory3}"></apex:inputCheckbox><apex:outputLabel value="{!$ObjectType.Product2.fields.Category3__c.Label}" for="isCategory3"/></td>
|
<td style="text-align:left;"><apex:inputCheckbox id="isCategory4" value="{!isCategory4}"></apex:inputCheckbox><apex:outputLabel value="{!$ObjectType.Product2.fields.Category4__c.Label}" for="isCategory4"/></td>
|
<td style="text-align:left;"><apex:inputCheckbox id="isCategory5" value="{!isCategory5}"></apex:inputCheckbox><apex:outputLabel value="{!$ObjectType.Product2.fields.Category5__c.Label}" for="isCategory5"/></td>
|
<td style="text-align:left;"><apex:inputCheckbox id="isProductCode" value="{!isProductCode}"></apex:inputCheckbox><apex:outputLabel value="产品型号" for="isProductCode"/></td><!-- {!$ObjectType.Product2.fields.Asset_Model_No__c.Label} -->
|
<th style="text-align:right; width:70px;">列项目:</th>
|
<td style="text-align:left;"><apex:inputCheckbox id="isShowMonth" value="{!isShowMonth}"></apex:inputCheckbox><apex:outputLabel value="年度月" for="isShowMonth"/></td>
|
<td style="text-align:left;"><apex:inputCheckbox id="isShowWeek" value="{!isShowWeek}"></apex:inputCheckbox><apex:outputLabel value="周" for="isShowWeek"/></td>
|
<th style="text-align:right; width:80px;">汇总字段:</th>
|
<td style="text-align:left;"><apex:inputCheckbox id="isShowSumQty" value="{!isShowSumQty}"></apex:inputCheckbox><apex:outputLabel value="数量" for="isShowSumQty"/></td>
|
<td style="text-align:left;"><apex:inputCheckbox id="isShowSumAmount" value="{!isShowSumAmount}"></apex:inputCheckbox><apex:outputLabel value="売上金額" for="isShowSumAmount"/></td>
|
</tr>
|
</table>
|
</apex:form>
|
<table style="border-collapse: collapse;" id="detailtbl">
|
<apex:outputPanel rendered="{!isShowMonth}" layout="none">
|
<tr>
|
<apex:outputPanel rendered="{!IF(totalLine.ttlColspan > 1, true, false)}" layout="none">
|
<th colspan="{!totalLine.ttlColspan - 1}"></th>
|
</apex:outputPanel>
|
<th style="text-align:center;border: solid 1px;">年度月</th>
|
<apex:repeat value="{!headerYrCols}" var="yr">
|
<th colspan="{!headerYrColspan[yr]}" style="text-align:center;border: solid 1px;">{!yr}</th>
|
</apex:repeat>
|
<apex:outputPanel rendered="{!Not(isShowWeek)}" layout="none">
|
<th colspan="{!aggregateColspan}" style="text-align:center;border: solid 1px;">合计</th>
|
</apex:outputPanel>
|
</tr>
|
</apex:outputPanel>
|
<apex:outputPanel rendered="{!isShowWeek}" layout="none">
|
<tr>
|
<apex:outputPanel rendered="{!IF(totalLine.ttlColspan > 1, true, false)}" layout="none">
|
<th colspan="{!totalLine.ttlColspan - 1}"></th>
|
</apex:outputPanel>
|
<th style="text-align:center;border: solid 1px;">周</th>
|
<apex:repeat value="{!headerYrCols}" var="yr">
|
<apex:repeat value="{!headerDcCols[yr]}" var="dc">
|
<th colspan="{!aggregateColspan}" style="text-align:center;border: solid 1px;">{!dc}</th>
|
</apex:repeat>
|
</apex:repeat>
|
<th colspan="{!aggregateColspan}" style="text-align:center;border: solid 1px;">合计</th>
|
</tr>
|
</apex:outputPanel>
|
<tr>
|
<apex:outputPanel rendered="{!isSalesDept}" layout="none">
|
<th width="100px" style="text-align:center;border: solid 1px;">本部</th>
|
</apex:outputPanel>
|
<apex:outputPanel rendered="{!isArea}" layout="none">
|
<th width="100px" style="text-align:center;border: solid 1px;">省</th>
|
</apex:outputPanel>
|
<apex:outputPanel rendered="{!isEnduser}" layout="none">
|
<th width="100px" style="text-align:center;border: solid 1px;">医院</th>
|
</apex:outputPanel>
|
<apex:outputPanel rendered="{!isCategory2}" layout="none">
|
<th width="100px" style="text-align:center;border: solid 1px;">{!$ObjectType.Product2.fields.Category2__c.Label}</th>
|
</apex:outputPanel>
|
<apex:outputPanel rendered="{!isCategory3}" layout="none">
|
<th width="100px" style="text-align:center;border: solid 1px;">{!$ObjectType.Product2.fields.Category3__c.Label}</th>
|
</apex:outputPanel>
|
<apex:outputPanel rendered="{!isCategory4}" layout="none">
|
<th width="100px" style="text-align:center;border: solid 1px;">{!$ObjectType.Product2.fields.Category4__c.Label}</th>
|
</apex:outputPanel>
|
<apex:outputPanel rendered="{!isCategory5}" layout="none">
|
<th width="100px" style="text-align:center;border: solid 1px;">{!$ObjectType.Product2.fields.Category5__c.Label}</th>
|
</apex:outputPanel>
|
<apex:outputPanel rendered="{!isProductCode}" layout="none">
|
<th width="100px" style="text-align:center;border: solid 1px;">产品型号</th><!-- {!$ObjectType.Product2.fields.Asset_Model_No__c.Label} -->
|
</apex:outputPanel>
|
<apex:outputPanel rendered="{!IF(totalLine.ttlColspan == 0, true, false)}" layout="none">
|
<th style="text-align:center;border: solid 1px; width:100px;">汇总字段</th>
|
</apex:outputPanel>
|
<apex:outputPanel rendered="{!isShowMonth || isShowWeek}" layout="none">
|
<apex:repeat value="{!headerYrCols}" var="yr"><apex:repeat value="{!headerDcCols[yr]}" var="dc">
|
<apex:outputPanel rendered="{!isShowSumQty}" layout="none">
|
<th style="text-align:center;border: solid 1px;">数量</th>
|
</apex:outputPanel>
|
<apex:outputPanel rendered="{!isShowSumAmount}" layout="none">
|
<th style="text-align:center;border: solid 1px;">売上金額</th>
|
</apex:outputPanel>
|
</apex:repeat></apex:repeat>
|
</apex:outputPanel>
|
<apex:outputPanel rendered="{!isShowSumQty}" layout="none">
|
<th style="text-align:center;border: solid 1px;">数量</th>
|
</apex:outputPanel>
|
<apex:outputPanel rendered="{!isShowSumAmount}" layout="none">
|
<th style="text-align:center;border: solid 1px;">売上金額</th>
|
</apex:outputPanel>
|
</tr>
|
<apex:variable value="{!0}" var="line" />
|
<apex:repeat value="{!pageLines}" var="pl">
|
<tr>
|
<apex:outputPanel rendered="{!isSalesDept}" layout="none">
|
<td style="text-align:center;border: solid 1px;"><apex:outputText value="{!pl.salesDept}"></apex:outputText></td>
|
</apex:outputPanel>
|
<apex:outputPanel rendered="{!isArea}" layout="none">
|
<td style="text-align:center;border: solid 1px;"><apex:outputText value="{!pl.area}"></apex:outputText></td>
|
</apex:outputPanel>
|
<apex:outputPanel rendered="{!isEnduser}" layout="none">
|
<td style="text-align:center;border: solid 1px;"><apex:outputText value="{!pl.enduser}"></apex:outputText></td>
|
</apex:outputPanel>
|
<apex:outputPanel rendered="{!isCategory2}" layout="none">
|
<td style="text-align:center;border: solid 1px;"><apex:outputText value="{!pl.category2}"></apex:outputText></td>
|
</apex:outputPanel>
|
<apex:outputPanel rendered="{!isCategory3}" layout="none">
|
<td style="text-align:center;border: solid 1px;"><apex:outputText value="{!pl.category3}"></apex:outputText></td>
|
</apex:outputPanel>
|
<apex:outputPanel rendered="{!isCategory4}" layout="none">
|
<td style="text-align:center;border: solid 1px;"><apex:outputText value="{!pl.category4}"></apex:outputText></td>
|
</apex:outputPanel>
|
<apex:outputPanel rendered="{!isCategory5}" layout="none">
|
<td style="text-align:center;border: solid 1px;"><apex:outputText value="{!pl.category5}"></apex:outputText></td>
|
</apex:outputPanel>
|
<apex:outputPanel rendered="{!isProductCode}" layout="none">
|
<td style="text-align:center;border: solid 1px;">
|
<apex:outputText value="{!pl.productCode}" />
|
</td>
|
</apex:outputPanel>
|
<apex:outputPanel rendered="{!IF(totalLine.ttlColspan == 0, true, false)}" layout="none">
|
<th style="text-align:center;border: solid 1px; width:100px;">合计</th>
|
</apex:outputPanel>
|
<apex:outputPanel rendered="{!isShowMonth || isShowWeek}" layout="none">
|
<apex:repeat value="{!headerYrCols}" var="yr"><apex:repeat value="{!headerDcCols[yr]}" var="dc">
|
<apex:outputPanel rendered="{!isShowSumQty}" layout="none">
|
<td style="text-align:right;border: solid 1px;">
|
<apex:outputText value="{0,number,#,##0}">
|
<apex:param value="{!pl.cntMap[yr & '|' & dc & '|' & Text(line)]}" />
|
</apex:outputText>
|
</td>
|
</apex:outputPanel>
|
<apex:outputPanel rendered="{!isShowSumAmount}" layout="none">
|
<td style="text-align:right;border: solid 1px;">
|
<apex:outputText value="{0,number,#,##0}">
|
<apex:param value="{!pl.sumRepairMap[yr & '|' & dc & '|' & Text(line)]}" />
|
</apex:outputText>
|
</td>
|
</apex:outputPanel>
|
</apex:repeat></apex:repeat>
|
</apex:outputPanel>
|
<apex:outputPanel rendered="{!isShowSumQty}" layout="none">
|
<td style="text-align:right;border: solid 1px;">
|
<apex:outputText value="{0,number,#,##0}">
|
<apex:param value="{!pl.allCnt}" />
|
</apex:outputText>
|
</td>
|
</apex:outputPanel>
|
<apex:outputPanel rendered="{!isShowSumAmount}" layout="none">
|
<td style="text-align:right;border: solid 1px;">
|
<apex:outputText value="{0,number,#,##0}">
|
<apex:param value="{!pl.allSumRepair}" />
|
</apex:outputText>
|
</td>
|
</apex:outputPanel>
|
</tr>
|
<apex:variable value="{!line + 1}" var="line" />
|
</apex:repeat>
|
<apex:outputPanel rendered="{!IF(totalLine.ttlColspan > 0, true, false)}" layout="none">
|
<!-- 最後行:{!line}、合計行 -->
|
<tr>
|
<apex:outputPanel rendered="{!IF(totalLine.ttlColspan > 1, true, false)}" layout="none">
|
<td colspan="{!totalLine.ttlColspan - 1}"></td>
|
</apex:outputPanel>
|
<th style="text-align:center;border: solid 1px;">合计</th>
|
<apex:outputPanel rendered="{!isShowMonth || isShowWeek}" layout="none">
|
<apex:repeat value="{!headerYrCols}" var="yr"><apex:repeat value="{!headerDcCols[yr]}" var="dc">
|
<apex:outputPanel rendered="{!isShowSumQty}" layout="none">
|
<td style="text-align:right;border: solid 1px;">
|
<apex:outputText value="{0,number,#,##0}">
|
<apex:param value="{!totalLine.cntMap[yr & '|' & dc & '|' & Text(line)]}" />
|
</apex:outputText>
|
</td>
|
</apex:outputPanel>
|
<apex:outputPanel rendered="{!isShowSumAmount}" layout="none">
|
<td style="text-align:right;border: solid 1px;">
|
<apex:outputText value="{0,number,#,##0}">
|
<apex:param value="{!totalLine.sumRepairMap[yr & '|' & dc & '|' & Text(line)]}" />
|
</apex:outputText>
|
</td>
|
</apex:outputPanel>
|
</apex:repeat></apex:repeat>
|
</apex:outputPanel>
|
<apex:outputPanel rendered="{!isShowSumQty}" layout="none">
|
<td style="text-align:right;border: solid 1px;">
|
<apex:outputText value="{0,number,#,##0}">
|
<apex:param value="{!totalLine.allCnt}" />
|
</apex:outputText>
|
</td>
|
</apex:outputPanel>
|
<apex:outputPanel rendered="{!isShowSumAmount}" layout="none">
|
<td style="text-align:right;border: solid 1px;">
|
<apex:outputText value="{0,number,#,##0}">
|
<apex:param value="{!totalLine.allSumRepair}" />
|
</apex:outputText>
|
</td>
|
</apex:outputPanel>
|
</tr>
|
</apex:outputPanel>
|
</table>
|
<script type="text/javascript">
|
// var blockHeight = j$(window).innerHeight() - j$(escapeVfId('Page:searchAsset:Form')).height() - 30;
|
<apex:outputPanel rendered="{!isShowMonth && isShowWeek}" layout="none">
|
// j$(escapeVfId('detailtbl')).tablefix({height: blockHeight, fixRows: 3, fixCols: 0});
|
</apex:outputPanel>
|
<apex:outputPanel rendered="{!isShowMonth || isShowWeek}" layout="none">
|
// j$(escapeVfId('detailtbl')).tablefix({height: blockHeight, fixRows: 2, fixCols: 0});
|
</apex:outputPanel>
|
<apex:outputPanel rendered="{!Not(isShowMonth) && Not(isShowWeek)}" layout="none">
|
// j$(escapeVfId('detailtbl')).tablefix({height: blockHeight, fixRows: 1, fixCols: 0});
|
</apex:outputPanel>
|
</script>
|
</apex:pageBlock>
|
<script type="text/javascript">
|
j$(function() {
|
// http://techbrij.com/html-table-row-grouping-jquery
|
function groupTable(rows, startIndex, total){
|
if (total === 0){
|
return;
|
}
|
var i , currentIndex = startIndex, count=1, lst=[];
|
var tds = rows.find('td:eq('+ currentIndex +')');
|
var ctrl = j$(tds[0]);
|
lst.push(rows[0]);
|
for (i=1;i<=tds.length;i++){
|
if (ctrl.text() == j$(tds[i]).text()){
|
count++;
|
j$(tds[i]).addClass('deleted');
|
lst.push(rows[i]);
|
} else{
|
if (count>1){
|
ctrl.attr('rowspan',count);
|
groupTable(j$(lst),startIndex+1,total-1)
|
}
|
count=1;
|
lst = [];
|
ctrl=j$(tds[i]);
|
lst.push(rows[i]);
|
}
|
}
|
}
|
groupTable(j$('#detailtbl tr:has(td)'),0,7);
|
j$('#detailtbl .deleted').remove();
|
});
|
</script>
|
</apex:page>
|