| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112 |
- package xin.glue.ui.J.J01;
- //import xin.glue.ui.common.component.PosSiteConfig;
- import xin.glue.ui.common.component.PosSiteLog;
- import com.posdata.glue.biz.activity.PosActivity;
- import com.posdata.glue.biz.constants.PosBizControlConstants;
- import com.posdata.glue.biz.control.PosBizControlIF;
- import com.posdata.glue.biz.control.PosBizProvider;
- import com.posdata.glue.component.PosConstants;
- 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.msg.PosMESMessageImpl;
- import com.posdata.glue.msg.PosMessage;
- /*
- * desc:车辆排车及装车指示,运送指示状态不由下车改变,下车只读运送指示表。发货指示状态由3改为4,不改变物料进度状态'SFB'(运送待机)
- * 这里需要判断同一发货指示下的运输指示是否全部发完,没有发完的情况下是不能改变发货指示状态的。
- * author:唐亮 tangliang
- * date:2008-12-8
- */
- public class saveSHIPDIR extends PosActivity{
- public String runActivity(PosContext context)
- {
- // 从页面获取参数数据,供更新页面使用
- //行状态
- String[] rowStuts1 = (String[])context.get("rowStuts1");
- //选择标志
- String[] CHK = (String[])context.get("CHK");
- //发货指示
- String[] SHIP_DIRNO = (String[])context.get("SHIP_DIRNO");
- //运送指示
- String[] DLIV_DIRNO = (String[])context.get("DLIV_DIRNO");
- //排车顺序
- String[] ALLOC_SEQ = (String[])context.get("ALLOC_SEQ");
- //车辆号
- String[] TRANS_CAR_NO = (String[])context.get("TRANS_CAR_NO");
- //火车入库道次
- String[] LANE_TP = (String[])context.get("LANE_TP");
- //装车次数
- String[] ENTERANCE_SEQ = (String[])context.get("ENTERANCE_SEQ");
- //钢卷公共表中的ship_prog_cd
- String ship_prog_cd = null;
-
- //没有选中的情况,不能进行业务处理
- if(rowStuts1 != null){
- //这里循环行数,取出数据一行一行的更新
- for(int i=0;i<rowStuts1.length;i++){
- if(CHK[i].equals("Y")){
- //判断是否全部选择的标志位
- boolean note = true;
- //如果是选中的项才可以执行更新操作,这里需要把车厢号和排车顺序号放入运输表,不能改变运输表的状态
- PosParameter param0 = new PosParameter();
- param0.setWhereClauseParameter(0, ALLOC_SEQ[i]);
- param0.setWhereClauseParameter(1, TRANS_CAR_NO[i]);
- param0.setWhereClauseParameter(2, LANE_TP[i]);
- param0.setWhereClauseParameter(3, ENTERANCE_SEQ[i]);
- param0.setWhereClauseParameter(4, DLIV_DIRNO[i]);
-
- getDao("mesdao").update("UIJ010040_01.update", param0);
-
-
- //更新钢卷公共表中的车辆号,排车顺序号
- PosParameter param1 = new PosParameter();
-
- param1.setWhereClauseParameter(0, ALLOC_SEQ[i]);
- param1.setWhereClauseParameter(1, TRANS_CAR_NO[i]);
- param1.setWhereClauseParameter(2, DLIV_DIRNO[i]);
-
- getDao("mesdao").update("UIJ010040_04.update", param1);
-
- PosParameter param3 = new PosParameter();
- param3.setWhereClauseParameter(0, SHIP_DIRNO[i]);
-
- PosRowSet rows = getDao("mesdao").find("UIJ010040_select_ship", param3);
-
- while(rows.hasNext()){
- //循环的取出每一个值,并且判断是否所有的值全部都改变成希望的结果
- PosRow row = rows.next();
- ship_prog_cd = (String) row.getAttribute("SHIP_PROG_CD");
- logger.logInfo(SHIP_DIRNO[i]+" saveSHIPDIR查看发货指示号下的钢卷状态 : "+ DLIV_DIRNO[i]+" : "+ship_prog_cd);
-
- //当存在值为03的时候,标志位为flase
- while(ship_prog_cd.equals("03")){
- note = false;
- break;
- }
- }
- logger.logInfo("saveSHIPDIR 查看发货指示号下的钢卷是否全部装完标志 : "+ note);
-
- if(note == true){
- //这里需要判断同一发货指示下的运输指示是否全部选中发完,如果没有的话不能改变发货指示的状态
- //这里需要给变发货表的状态,从3-4
- PosParameter param2 = new PosParameter();
- param2.setWhereClauseParameter(0, SHIP_DIRNO[i]);
- //可能还需要更新相应的时间信息,具体的等待确认
-
- getDao("mesdao").update("UIJ010040_03.update", param2);
- }
- }else{
- //不是选中项目的话不能进行更新操作
- }
- }
- }
- return PosBizControlConstants.SUCCESS;
- }
- }
|