| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133 |
- package xin.glue.ui.G.G04;
- import java.sql.CallableStatement;
- import java.util.ArrayList;
- 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.PosGenericDao;
- import com.posdata.glue.dao.vo.PosParameter;
- import com.posdata.glue.dao.vo.PosRow;
- import com.posdata.glue.dao.vo.PosRowSet;
- public class XinSaveSlabRecutCancel extends PosActivity {
- public String runActivity(PosContext context) {
- String[] REG_ID = (String[])context.get("REG_ID");
- String[] SLAB_NO = (String[])context.get("NEW_SLAB_NO");
- ArrayList<String> SUB_SLAB_NO = new ArrayList<String>();
- CallableStatement cstm = null;
-
- PosParameter param = new PosParameter();
- PosRowSet rowset = null;
- PosRow row = null;
- PosGenericDao dao = getDao("mesdao");
- String OR_SLAB_NO = "",sql = "";;
-
- sql = "SELECT T.* FROM TBG02_SLAB_INCISE T WHERE T.SLAB_NO = ?";
- param = new PosParameter();
- param.setWhereClauseParameter(0, SLAB_NO[0]);
- rowset = dao.findByQueryStatement(sql, param);
- if(rowset.hasNext()){
- row = rowset.next();
- OR_SLAB_NO = (String)row.getAttribute("OR_SLAB_NO");
- }else{
- context.put("MESSAGES", " 未分切不允许撤销! ");
- return PosBizControlConstants.SUCCESS;
- }
-
- /*找母坯删除子坯数据*/
- sql = "SELECT T.* FROM TBG02_SLAB_INCISE T WHERE T.OR_SLAB_NO = ?";
- param = new PosParameter();
- param.setWhereClauseParameter(0, OR_SLAB_NO);
- rowset = dao.findByQueryStatement(sql, param);
- while(rowset.hasNext()){
- row = rowset.next();
- /*记录子坯号*/
- SUB_SLAB_NO.add((String)row.getAttribute("SLAB_NO"));
- }
-
- for(int j = 0;j < SUB_SLAB_NO.size();j++){
- /*子坯财务数据上抛*/
- try
- {
- cstm = dao.getCallableStatement("UPLOAD_DATA.CAL");
- cstm.setString(1, SUB_SLAB_NO.get(j));
- cstm.setString(2, "11AD");
- cstm.setString(3, "D");
- cstm.setString(4, "板坯利库撤销");
- cstm.setString(5, REG_ID[0]);
- cstm.registerOutParameter(6, java.sql.Types.VARCHAR);
- cstm.execute();
-
- String err = cstm.getString(6);
- System.out.println(err);
- }catch(Exception ex){
- ex.printStackTrace();
- }finally{
- if(cstm != null){
- try{
- cstm.close();
- }catch(Exception e){
- e.printStackTrace();
- }
- }
- }
-
- param = new PosParameter();
- param.setWhereClauseParameter(0, SUB_SLAB_NO.get(j));
- dao.delete("UIG040070_SLAB_INCISE.delete", param);
-
- //删除子坯
- param = new PosParameter();
- param.setWhereClauseParameter(0, SUB_SLAB_NO.get(j));
- dao.delete("UIG040070_SLAB_COMM.delete", param);
-
- //删除D表
- param = new PosParameter();
- param.setWhereClauseParameter(0, SUB_SLAB_NO.get(j));
- dao.delete("UIG040070_SLAB_COMM_D.delete", param);
-
- /*清空子坯跺位*/
- param = new PosParameter();
- param.setWhereClauseParameter(0, SUB_SLAB_NO.get(j));
- this.getDao("mesdao").update("UIG040070_SLAB_COMM.update", param);
- }
-
- /*母板坯恢复前再上抛母坯*/
- try
- {
- cstm = dao.getCallableStatement("UPLOAD_DATA.CAL");
- cstm.setString(1, OR_SLAB_NO);
- cstm.setString(2, "11AD");
- cstm.setString(3, "D");
- cstm.setString(4, "板坯利库撤销");
- cstm.setString(5, REG_ID[0]);
- cstm.registerOutParameter(6, java.sql.Types.VARCHAR);
- cstm.execute();
-
- String err = cstm.getString(6);
- System.out.println(err);
- }catch(Exception ex){
- ex.printStackTrace();
- }
- finally{
- if(cstm != null){
- try{
- cstm.close();
- }catch(Exception e){
- e.printStackTrace();
- }
- }
- }
-
- //恢复母板坯
- param = new PosParameter();
- param.setWhereClauseParameter(0, OR_SLAB_NO);
- this.getDao("mesdao").update("UIG040070_SLAB_END_1.update",param);
-
- context.put("MESSAGES", " 操作成功! ");
- return PosBizControlConstants.SUCCESS;
-
- }
- }
|