Commit 2022f6ba authored by CORP\sonam.kamble's avatar CORP\sonam.kamble

To show Sales Planning data on summary for login user

parent 17c8f6be
...@@ -60,6 +60,7 @@ public class SellsPlanSummary extends ValidatorEJB ...@@ -60,6 +60,7 @@ public class SellsPlanSummary extends ValidatorEJB
ConnDriver connDriver = new ConnDriver(); ConnDriver connDriver = new ConnDriver();
conn = connDriver.getConnectDB(tranDb ); conn = connDriver.getConnectDB(tranDb );
//Gets Maximum Level of Login User's Team Hierarchy
teamMaxLvlSql.append("SELECT MAX(LVL) AS MAX_LVL FROM ( SELECT POS_CODE, POS_CODE__REPTO, EMP_CODE, " ) teamMaxLvlSql.append("SELECT MAX(LVL) AS MAX_LVL FROM ( SELECT POS_CODE, POS_CODE__REPTO, EMP_CODE, " )
.append(" (SELECT EMP_CODE FROM ORG_STRUCTURE WHERE POS_CODE = O1.POS_CODE__REPTO) AS REPORT_TO, " ) .append(" (SELECT EMP_CODE FROM ORG_STRUCTURE WHERE POS_CODE = O1.POS_CODE__REPTO) AS REPORT_TO, " )
.append(" LEVEL as LVL " ) .append(" LEVEL as LVL " )
...@@ -80,7 +81,7 @@ public class SellsPlanSummary extends ValidatorEJB ...@@ -80,7 +81,7 @@ public class SellsPlanSummary extends ValidatorEJB
rs.close(); rs.close();
rs = null; rs = null;
//Gets Team Hierarchy of Login User
planDataSql.append(" SELECT POS_CODE, POS_CODE__REPTO, EMP_CODE, " ) planDataSql.append(" SELECT POS_CODE, POS_CODE__REPTO, EMP_CODE, " )
.append(" (SELECT EMP_CODE FROM ORG_STRUCTURE WHERE POS_CODE = O1.POS_CODE__REPTO) AS REPORT_TO, " ) .append(" (SELECT EMP_CODE FROM ORG_STRUCTURE WHERE POS_CODE = O1.POS_CODE__REPTO) AS REPORT_TO, " )
.append(" LEVEL as LVL " ) .append(" LEVEL as LVL " )
...@@ -151,31 +152,38 @@ public class SellsPlanSummary extends ValidatorEJB ...@@ -151,31 +152,38 @@ public class SellsPlanSummary extends ValidatorEJB
{ {
ArrayList<HashMap<String, String>> currentLevelSummary = new ArrayList<HashMap<String, String>>(); ArrayList<HashMap<String, String>> currentLevelSummary = new ArrayList<HashMap<String, String>>();
ArrayList<String> empCodes = new ArrayList<String>(); ArrayList<String> empPosCodes = new ArrayList<String>();
for( HashMap<String, String> currentLevelEmp : currentLevelAllEmp ) for( HashMap<String, String> currentLevelEmp : currentLevelAllEmp )
{ {
int hierLevel = parseInt(currentLevelEmp.get("LVL")); int hierLevel = parseInt(currentLevelEmp.get("LVL"));
if( hierLevel == currentLevel ) if( hierLevel == currentLevel )
{ {
String empCode = checkNull(currentLevelEmp.get("EMP_CODE"), false); String empCode = checkNull(currentLevelEmp.get("EMP_CODE"), false);
empCodes.add(empCode); String posCode = checkNull(currentLevelEmp.get("POS_CODE"), false);
empPosCodes.add(empCode+"~SEP~"+posCode);
} }
} }
for(String empCode : empCodes ) for(String empPosCode : empPosCodes )
{ {
ArrayList<HashMap<String, String>> empSellSummData = getSummarySellsData(empCode, tranDb, prdCode); String[] empPosCodeArr = empPosCode.split("~SEP~");
String empCode = checkNull(empPosCodeArr[0], false);
String posCode = checkNull(empPosCodeArr[1], false);
//ArrayList<HashMap<String, String>> empSellSummData = getSummarySellsData(empCode, tranDb, prdCode);
ArrayList<HashMap<String, String>> empSellSummData = getSummarySellsData(empCode, posCode, tranDb, prdCode);
currentLevelSummary.addAll(empSellSummData); currentLevelSummary.addAll(empSellSummData);
} }
return currentLevelSummary; return currentLevelSummary;
} }
private ArrayList<HashMap<String, String>> getSummarySellsData(String empCode, String tranDb, String prdCode) //private ArrayList<HashMap<String, String>> getSummarySellsData(String empCode, String tranDb, String prdCode)
private ArrayList<HashMap<String, String>> getSummarySellsData(String empCode, String posCode, String tranDb, String prdCode)
{ {
StringBuffer summaryDataSql = new StringBuffer(); StringBuffer summaryDataSql = new StringBuffer();
summaryDataSql.append("SELECT ") summaryDataSql.append("SELECT ")
.append(" '" + empCode + "' AS EMP_CODE, ") .append(" '" + empCode + "' AS EMP_CODE, ")
.append(" '" + posCode + "' AS POS_CODE, ")
.append(" I.ITEM_CODE, ") .append(" I.ITEM_CODE, ")
.append(" I.PRODUCT_CODE, ") .append(" I.PRODUCT_CODE, ")
.append(" (SELECT DESCR FROM ITEM WHERE ITEM_CODE = I.ITEM_CODE) PRODUCT_NAME, ") .append(" (SELECT DESCR FROM ITEM WHERE ITEM_CODE = I.ITEM_CODE) PRODUCT_NAME, ")
...@@ -197,10 +205,13 @@ public class SellsPlanSummary extends ValidatorEJB ...@@ -197,10 +205,13 @@ public class SellsPlanSummary extends ValidatorEJB
summaryDataSql.append(" WHERE SP.PRD_CODE = '" + prdCode + "' "); summaryDataSql.append(" WHERE SP.PRD_CODE = '" + prdCode + "' ");
} }
summaryDataSql.append("AND SP.STATUS = 'S' ") summaryDataSql.append("AND SP.STATUS = 'S' ")
.append("AND SP.SALES_PERS IN ( ") //.append("AND SP.SALES_PERS IN ( ")
.append(" SELECT EMP_CODE ") .append("AND SP.POS_CODE IN ( ")
//.append(" SELECT EMP_CODE ")
.append(" SELECT POS_CODE ")
.append(" FROM ORG_STRUCTURE O1 ") .append(" FROM ORG_STRUCTURE O1 ")
.append(" START WITH EMP_CODE = '" + empCode + "' ") //.append(" START WITH EMP_CODE = '" + empCode + "' ")
.append(" START WITH POS_CODE = '" + posCode + "' ")
.append(" CONNECT BY PRIOR POS_CODE = POS_CODE__REPTO ") .append(" CONNECT BY PRIOR POS_CODE = POS_CODE__REPTO ")
.append(") ") .append(") ")
.append("GROUP BY I.ITEM_CODE, I.PRODUCT_CODE "); .append("GROUP BY I.ITEM_CODE, I.PRODUCT_CODE ");
......
...@@ -3,9 +3,9 @@ ...@@ -3,9 +3,9 @@
<filters display="N"> <filters display="N">
<filter type="1"> <filter type="1">
<default_value><![CDATA[]]></default_value> <default_value><![CDATA[]]></default_value>
<col_name><![CDATA[EMP_CODE]]></col_name> <col_name><![CDATA[POS_CODE]]></col_name>
<col_descr><![CDATA[To EMP_CODE]]></col_descr> <col_descr><![CDATA[To POS_CODE]]></col_descr>
<col_id><![CDATA[EMP_CODE]]></col_id> <col_id><![CDATA[POS_CODE]]></col_id>
<field_name><![CDATA[]]></field_name> <field_name><![CDATA[]]></field_name>
<mod_name><![CDATA[]]></mod_name> <mod_name><![CDATA[]]></mod_name>
<show_ontitle><![CDATA[1]]></show_ontitle> <show_ontitle><![CDATA[1]]></show_ontitle>
...@@ -24,7 +24,7 @@ ...@@ -24,7 +24,7 @@
</filters> </filters>
<page_title><![CDATA[Sell Planning Review]]></page_title> <page_title><![CDATA[Sell Planning Review]]></page_title>
<datasource id="1" dataSourceType="datamodel" filterKey='EMP_CODE' filterExpr=' context["EMP_CODE"] == "$EMP_CODE" ' ><![CDATA[SELL_PLAN_REVIEW_ALL_DM]]></datasource> <datasource id="1" dataSourceType="datamodel" filterKey='POS_CODE' filterExpr=' context["POS_CODE"] == "$POS_CODE" ' ><![CDATA[SELL_PLAN_REVIEW_ALL_DM]]></datasource>
<view id="1" name="Default" type="flatonly"> <view id="1" name="Default" type="flatonly">
<component datasource="1" id="1" type="COMPOSITE"> <component datasource="1" id="1" type="COMPOSITE">
...@@ -56,7 +56,7 @@ ...@@ -56,7 +56,7 @@
table_header: 'Product Group Details', table_header: 'Product Group Details',
header_column: 'header', header_column: 'header',
header: 'Product List ', header: 'Product List ',
filter_columns: 'REPORT_TO,EMP_CODE,PRODUCT_CODE', filter_columns: 'POS_CODE__REPTO,POS_CODE,PRODUCT_CODE',
info_text: 'Sell In', info_text: 'Sell In',
info_column: 'SELL_IN', info_column: 'SELL_IN',
sub_info_text: 'Sell Out', sub_info_text: 'Sell Out',
......
...@@ -3,9 +3,9 @@ ...@@ -3,9 +3,9 @@
<filters display="N"> <filters display="N">
<filter type="1"> <filter type="1">
<default_value><![CDATA[]]></default_value> <default_value><![CDATA[]]></default_value>
<col_name><![CDATA[EMP_CODE]]></col_name> <col_name><![CDATA[POS_CODE]]></col_name>
<col_descr><![CDATA[To EMP_CODE]]></col_descr> <col_descr><![CDATA[To POS_CODE]]></col_descr>
<col_id><![CDATA[EMP_CODE]]></col_id> <col_id><![CDATA[POS_CODE]]></col_id>
<field_name><![CDATA[]]></field_name> <field_name><![CDATA[]]></field_name>
<mod_name><![CDATA[]]></mod_name> <mod_name><![CDATA[]]></mod_name>
<show_ontitle><![CDATA[1]]></show_ontitle> <show_ontitle><![CDATA[1]]></show_ontitle>
...@@ -23,7 +23,7 @@ ...@@ -23,7 +23,7 @@
</filter> </filter>
</filters> </filters>
<page_title><![CDATA[Sell Planning Review - Summary]]></page_title> <page_title><![CDATA[Sell Planning Review - Summary]]></page_title>
<datasource id="1" dataSourceType="datamodel" filterKey='EMP_CODE' filterExpr=' context["EMP_CODE"] == "$EMP_CODE" ' ><![CDATA[SELL_PLAN_REVIEW_ALL_DM]]></datasource> <datasource id="1" dataSourceType="datamodel" filterKey='POS_CODE' filterExpr=' context["POS_CODE"] == "$POS_CODE" ' ><![CDATA[SELL_PLAN_REVIEW_ALL_DM]]></datasource>
<view id="1" name="Default" type="flatonly"> <view id="1" name="Default" type="flatonly">
<component datasource="1" id="1" type="COMPOSITE"> <component datasource="1" id="1" type="COMPOSITE">
...@@ -55,7 +55,7 @@ ...@@ -55,7 +55,7 @@
table_header: 'Product Group Details', table_header: 'Product Group Details',
header_column: 'header', header_column: 'header',
header: 'Product Summary', header: 'Product Summary',
filter_columns: 'EMP_CODE,PRODUCT_CODE', filter_columns: 'POS_CODE,PRODUCT_CODE',
info_text: 'Sell In', info_text: 'Sell In',
info_column: 'SELL_IN', info_column: 'SELL_IN',
sub_info_text: 'Sell Out', sub_info_text: 'Sell Out',
......
...@@ -32,12 +32,12 @@ ...@@ -32,12 +32,12 @@
<link_condition><![CDATA[ rowData['IS_PLANNING_AVAIL'] == 'Y' ]]></link_condition> <link_condition><![CDATA[ rowData['IS_PLANNING_AVAIL'] == 'Y' ]]></link_condition>
<column_group id="1"> <column_group id="1">
<columns> <columns>
<column id="1" type="string" filterByExpr=" data['REPORT_TO_ORG'] == (localStorage.getItem('userName') + '').padEnd(10,' ') "><![CDATA[]]></column> <column id="1" type="string" filterByExpr=" data['REPORT_TO'] == (localStorage.getItem('userName') + '').padEnd(10,' ') "><![CDATA[]]></column>
</columns> </columns>
</column_group> </column_group>
<column_group id="2"> <column_group id="2">
<columns> <columns>
<column id="1" type="string" aggFunction="AVERAGE" groupBy="EMP_CODE"><![CDATA[SELL_IN,SELL_OUT]]></column> <column id="1" type="string" aggFunction="AVERAGE" groupBy="POS_CODE"><![CDATA[SELL_IN,SELL_OUT]]></column>
</columns> </columns>
</column_group> </column_group>
...@@ -57,7 +57,9 @@ ...@@ -57,7 +57,9 @@
info_column: 'SELL_IN', info_column: 'SELL_IN',
sub_info_text: 'Sell Out', sub_info_text: 'Sell Out',
sub_info_column: 'SELL_OUT', sub_info_column: 'SELL_OUT',
copykeys : 'REPORT_TO,EMP_CODE,EMP_NAME,SELL_IN,SELL_OUT,HIER_THEME,PRD_CODE' copykeys : 'REPORT_TO,EMP_CODE,POS_CODE__REPTO,POS_CODE,EMP_NAME,SELL_IN,SELL_OUT,HIER_THEME,PRD_CODE',
_OBJECT_KEY : 'POS_CODE',
_STORAGE_KEY : 'POS_CODE__REPTO'
}, },
detailModel: { detailModel: {
image_column: 'USER:EMP_CODE', image_column: 'USER:EMP_CODE',
...@@ -66,7 +68,7 @@ ...@@ -66,7 +68,7 @@
sub_title_column: 'STATION_DESCR', sub_title_column: 'STATION_DESCR',
header_column: 'header', header_column: 'header',
header: 'My Team ', header: 'My Team ',
filter_column: 'EMP_CODE', filter_column: 'POS_CODE',
badge_column: 'DESIGNATION', badge_column: 'DESIGNATION',
badge_theme_column: 'HIER_THEME', badge_theme_column: 'HIER_THEME',
alt_image_column: 'VACANT_IMAGE', alt_image_column: 'VACANT_IMAGE',
......
...@@ -3,9 +3,9 @@ ...@@ -3,9 +3,9 @@
<filters display="N"> <filters display="N">
<filter type="1"> <filter type="1">
<default_value><![CDATA[]]></default_value> <default_value><![CDATA[]]></default_value>
<col_name><![CDATA[EMP_CODE]]></col_name> <col_name><![CDATA[POS_CODE]]></col_name>
<col_descr><![CDATA[EMP_CODE]]></col_descr> <col_descr><![CDATA[POS_CODE]]></col_descr>
<col_id><![CDATA[EMP_CODE]]></col_id> <col_id><![CDATA[POS_CODE]]></col_id>
<field_name><![CDATA[]]></field_name> <field_name><![CDATA[]]></field_name>
<mod_name><![CDATA[]]></mod_name> <mod_name><![CDATA[]]></mod_name>
<show_ontitle><![CDATA[1]]></show_ontitle> <show_ontitle><![CDATA[1]]></show_ontitle>
...@@ -23,7 +23,7 @@ ...@@ -23,7 +23,7 @@
</filter> </filter>
</filters> </filters>
<page_title><![CDATA[Sell Planning Review - DRILL TO ANY LEVEL]]></page_title> <page_title><![CDATA[Sell Planning Review - DRILL TO ANY LEVEL]]></page_title>
<datasource id="1" dataSourceType="datamodel" filterKey='EMP_CODE' filterExpr=' context["REPORT_TO"] == "$EMP_CODE" ' ><![CDATA[SELL_PLAN_REVIEW_ALL_DM]]></datasource> <datasource id="1" dataSourceType="datamodel" filterKey='POS_CODE' filterExpr=' context["POS_CODE__REPTO"] == "$POS_CODE" ' ><![CDATA[SELL_PLAN_REVIEW_ALL_DM]]></datasource>
<view id="1" name="Default" type="flatonly"> <view id="1" name="Default" type="flatonly">
<component datasource="1" id="1" type="COMPOSITE"> <component datasource="1" id="1" type="COMPOSITE">
...@@ -42,7 +42,7 @@ ...@@ -42,7 +42,7 @@
<link_condition><![CDATA[ rowData['IS_PLANNING_AVAIL'] == 'Y' ]]></link_condition> <link_condition><![CDATA[ rowData['IS_PLANNING_AVAIL'] == 'Y' ]]></link_condition>
<column_group id="1"> <column_group id="1">
<columns> <columns>
<column id="1" type="string" aggFunction="AVERAGE" groupBy="EMP_CODE"><![CDATA[SELL_IN,SELL_OUT]]></column> <column id="1" type="string" aggFunction="AVERAGE" groupBy="POS_CODE"><![CDATA[SELL_IN,SELL_OUT]]></column>
</columns> </columns>
</column_group> </column_group>
...@@ -62,7 +62,7 @@ ...@@ -62,7 +62,7 @@
info_column: 'SELL_IN', info_column: 'SELL_IN',
sub_info_text: 'Sell Out', sub_info_text: 'Sell Out',
sub_info_column: 'SELL_OUT', sub_info_column: 'SELL_OUT',
copykeys : 'REPORT_TO,EMP_CODE,EMP_NAME,SELL_IN,SELL_OUT,HIER_THEME,PRD_CODE' copykeys : 'REPORT_TO,EMP_CODE,POS_CODE__REPTO,POS_CODE,EMP_NAME,SELL_IN,SELL_OUT,HIER_THEME,PRD_CODE'
}, },
detailModel: { detailModel: {
image_column: 'USER:EMP_CODE', image_column: 'USER:EMP_CODE',
...@@ -71,7 +71,7 @@ ...@@ -71,7 +71,7 @@
sub_title_column: 'STATION_DESCR', sub_title_column: 'STATION_DESCR',
header_column: 'header', header_column: 'header',
header: "<EMP_NAME>'s Team ", header: "<EMP_NAME>'s Team ",
filter_column: 'EMP_CODE', filter_column: 'POS_CODE',
badge_column: 'DESIGNATION', badge_column: 'DESIGNATION',
badge_theme_column: 'HIER_THEME', badge_theme_column: 'HIER_THEME',
alt_image_column: 'VACANT_IMAGE', alt_image_column: 'VACANT_IMAGE',
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment