package xin.glue.ui.G.G02; import java.math.BigDecimal; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import com.posdata.glue.biz.activity.PosActivity; import com.posdata.glue.biz.constants.PosBizControlConstants; import com.posdata.glue.context.PosContext; import com.posdata.glue.dao.vo.PosParameter; import com.posdata.glue.dao.vo.PosRow; import com.posdata.glue.dao.vo.PosRowSet; import com.posdata.glue.util.log.PosLog; import com.posdata.glue.util.log.PosLogFactory; public class PosSMSReportEdit extends PosActivity { private final PosLog log = PosLogFactory.getLogger(getClass()); public String runActivity(PosContext context) { log.logInfo("======== PosSMSReportEdit start " ); String[] REP_DATE = (String[])context.get("REP_DATE"); String[][] EDIT_PROD = new String[6][9]; String[][] EDIT_NONORD = new String[4][5] ; String[][] EDIT_SCRAP = new String[2][3] ; int i = 0;int j = 0; for ( i = 0 ; i < 6;i++) { for ( j = 0 ; j < 9;j++) { EDIT_PROD[i][j]= null; } } for ( i = 0 ; i < 4;i++) { for ( j = 0 ; j < 5;j++) { EDIT_NONORD[i][j]= null; } } for ( i = 0 ; i < 2;i++) { for ( j = 0 ; j < 3;j++) { EDIT_SCRAP[i][j]= null; } } List list1 = new ArrayList(); List list2 = new ArrayList(); List list3 = new ArrayList(); String SLAB_RT = null; String RST_CH_CNT = null; String RST_CH_QTY = null; String RST_CH_T_CNT = null; String RST_CH_T_QTY = null; String RST_SL_CNT = null; String RST_SL_QTY = null; String RST_SL_T_CNT = null; String RST_SL_T_QTY = null; PosParameter param1 = new PosParameter(); param1.setWhereClauseParameter(0, REP_DATE[0]); param1.setWhereClauseParameter(1, REP_DATE[0]); param1.setWhereClauseParameter(2, REP_DATE[0]); param1.setWhereClauseParameter(3, REP_DATE[0]); param1.setWhereClauseParameter(4, REP_DATE[0]); param1.setWhereClauseParameter(5, REP_DATE[0]); PosRowSet chRstVO = this.getDao("mesdao").find("UIG020210_CH.select", param1); while(chRstVO.hasNext()) { PosRow chRstROW = chRstVO.next(); SLAB_RT = (String)chRstROW.getAttribute("SLAB_RT"); RST_CH_CNT = (String)chRstROW.getAttribute("RST_CH_CNT"); RST_CH_QTY = (String)chRstROW.getAttribute("RST_CH_QTY"); RST_CH_T_CNT = (String)chRstROW.getAttribute("RST_CH_T_CNT"); RST_CH_T_QTY = (String)chRstROW.getAttribute("RST_CH_T_QTY"); EDIT_PROD[0][0] = "热轧材"; EDIT_PROD[1][0] = "厚板"; EDIT_PROD[2][0] = "中板"; EDIT_PROD[3][0] = "冷轧材"; EDIT_PROD[4][0] = "外板材"; EDIT_PROD[5][0] = "合计"; if (SLAB_RT.equals("H")) { i = 0; } else if (SLAB_RT.equals("P")) { i = 1; } else if (SLAB_RT.equals("Z")) { i = 2; } else if (SLAB_RT.equals("C")) { i = 3; } else if (SLAB_RT.equals("T")) { i = 4; } else if (SLAB_RT.equals("S")) { i = 5; } EDIT_PROD[i][1] = RST_CH_CNT; EDIT_PROD[i][2] = RST_CH_T_CNT; EDIT_PROD[i][3] = RST_CH_QTY; EDIT_PROD[i][4] = RST_CH_T_QTY; } PosParameter param2 = new PosParameter(); param2.setWhereClauseParameter(0, REP_DATE[0]); param2.setWhereClauseParameter(1, REP_DATE[0]); param2.setWhereClauseParameter(2, REP_DATE[0]); param2.setWhereClauseParameter(3, REP_DATE[0]); param2.setWhereClauseParameter(4, REP_DATE[0]); param2.setWhereClauseParameter(5, REP_DATE[0]); PosRowSet slabRstVO = this.getDao("mesdao").find("UIG020210_SLAB.select", param2); while(slabRstVO.hasNext()) { PosRow slabRstROW = slabRstVO.next(); SLAB_RT = (String)slabRstROW.getAttribute("SLAB_RT"); RST_SL_CNT = (String)slabRstROW.getAttribute("RST_SL_CNT"); RST_SL_QTY = (String)slabRstROW.getAttribute("RST_SL_QTY"); RST_SL_T_CNT = (String)slabRstROW.getAttribute("RST_SL_T_CNT"); RST_SL_T_QTY = (String)slabRstROW.getAttribute("RST_SL_T_QTY"); if (SLAB_RT.equals("H")) { i = 0; } else if (SLAB_RT.equals("P")) { i = 1; } else if (SLAB_RT.equals("Z")) { i = 2; } else if (SLAB_RT.equals("C")) { i = 3; } else if (SLAB_RT.equals("T")) { i = 4; } else if (SLAB_RT.equals("S")) { i = 5; } EDIT_PROD[i][5] = RST_SL_CNT; EDIT_PROD[i][6] = RST_SL_T_CNT; EDIT_PROD[i][7] = RST_SL_QTY; EDIT_PROD[i][8] = RST_SL_T_QTY; } for(int m=0;m < 6;m++) { HashMap map1 = new HashMap(8,6) ; list1.add(map1); map1.put("REP_MTL_CLF" , EDIT_PROD[m][0] ); map1.put("RST_CH_CNT" , EDIT_PROD[m][1] ); map1.put("RST_CH_T_CNT" , EDIT_PROD[m][2] ); map1.put("RST_CH_QTY" , EDIT_PROD[m][3] ); map1.put("RST_CH_T_QTY" , EDIT_PROD[m][4] ); map1.put("RST_SL_CNT" , EDIT_PROD[m][5] ); map1.put("RST_SL_T_CNT" , EDIT_PROD[m][6] ); map1.put("RST_SL_QTY" , EDIT_PROD[m][7] ); map1.put("RST_SL_T_QTY" , EDIT_PROD[m][8] ); } context.put("ProdEdit",list1); String MTL_CLF = null; String NONORD_CNT = null; String NONORD_QTY = null; String NONORD_T_CNT = null; String NONORD_T_QTY = null; i = 0; PosParameter param5 = new PosParameter(); param5.setWhereClauseParameter(0, REP_DATE[0]); param5.setWhereClauseParameter(1, REP_DATE[0]); param5.setWhereClauseParameter(2, REP_DATE[0]); param5.setWhereClauseParameter(3, REP_DATE[0]); param5.setWhereClauseParameter(4, REP_DATE[0]); param5.setWhereClauseParameter(5, REP_DATE[0]); PosRowSet ShipColdVO = this.getDao("mesdao").find("UIG020210_NONORD.select", param5); while(ShipColdVO.hasNext()) { PosRow ShipColdROW = ShipColdVO.next(); MTL_CLF = (String)ShipColdROW.getAttribute("MTL_CLF"); NONORD_CNT = (String)ShipColdROW.getAttribute("NONORD_CNT"); NONORD_QTY = (String)ShipColdROW.getAttribute("NONORD_QTY"); NONORD_T_CNT = (String)ShipColdROW.getAttribute("NONORD_T_CNT"); NONORD_T_QTY = (String)ShipColdROW.getAttribute("NONORD_T_QTY"); EDIT_NONORD[0][0] = "计划余材"; EDIT_NONORD[1][0] = "成分异常"; EDIT_NONORD[2][0] = "品质异常"; EDIT_NONORD[3][0] = "合计"; if (MTL_CLF.equals("1")) { i = 0; } else if (MTL_CLF.equals("2")) { i = 1; } else if (MTL_CLF.equals("3")) { i = 2; } else if (MTL_CLF.equals("4")) { i = 3; } EDIT_NONORD[i][1] = NONORD_CNT; EDIT_NONORD[i][2] = NONORD_T_CNT; EDIT_NONORD[i][3] = NONORD_QTY; EDIT_NONORD[i][4] = NONORD_T_QTY; } for(int n=0;n < 4;n++) { HashMap map2 = new HashMap(5,2) ; list2.add(map2); map2.put("MTL_CLF" , EDIT_NONORD[n][0] ); map2.put("NONORD_CNT" , EDIT_NONORD[n][1] ); map2.put("NONORD_T_CNT" , EDIT_NONORD[n][2] ); map2.put("NONORD_QTY" , EDIT_NONORD[n][3] ); map2.put("NONORD_T_QTY" , EDIT_NONORD[n][4] ); } context.put("NonOrdEdit",list2); String SCRAP_QTY = null; String SCRAP_T_QTY = null; i = 0; PosParameter param6 = new PosParameter(); param6.setWhereClauseParameter(0, REP_DATE[0]); param6.setWhereClauseParameter(1, REP_DATE[0]); param6.setWhereClauseParameter(2, REP_DATE[0]); PosRowSet ScrapVO = this.getDao("mesdao").find("UIG020210_SCRAP.select", param6); while(ScrapVO.hasNext()) { PosRow ScrapROW = ScrapVO.next(); MTL_CLF = (String)ScrapROW.getAttribute("MTL_CLF"); SCRAP_QTY = (String)ScrapROW.getAttribute("SCRAP_QTY"); SCRAP_T_QTY = (String)ScrapROW.getAttribute("SCRAP_T_QTY"); EDIT_SCRAP[0][0] = "部分废料"; EDIT_SCRAP[1][0] = "全部废料"; if (MTL_CLF.equals("1")) { i = 0; } else if (MTL_CLF.equals("2")) { i = 1; } EDIT_SCRAP[i][1] = SCRAP_QTY; EDIT_SCRAP[i][2] = SCRAP_T_QTY; } for (i = 0; i < 2; i++) { HashMap map3 = new HashMap(10,1) ; list3.add(map3); map3.put("MTL_CLF" , EDIT_SCRAP[i][0] ); map3.put("SCRAP_QTY" , EDIT_SCRAP[i][1] ); map3.put("SCRAP_T_QTY" , EDIT_SCRAP[i][2] ); } context.put("ScrapEdit",list3); return PosBizControlConstants.SUCCESS; } }