Java tutorial
/* @(#) * * Project:PFConsole * * Modify Information: * ============================================================================= * Author Date Description * ------------ ---------- --------------------------------------------------- * Gavin 2011-6-17 first release * * * Copyright Notice: * ============================================================================= * Copyright 2011 allinfinance, Inc. All rights reserved. * * This software is the confidential and proprietary information of * Shanghai allinfinance Co., Ltd. ("Confidential Information"). * You shall not disclose such Confidential Information and shall use it * only in accordance with the terms of the license agreement you entered * into with allinfinance. * * Warning: * ============================================================================= * */ package com.allinfinance.bo.impl.mchnt; import java.lang.reflect.InvocationTargetException; import java.util.List; import org.apache.commons.lang.StringUtils; import org.apache.struts2.ServletActionContext; import org.springframework.beans.BeanUtils; import com.allinfinance.bo.term.T3010BO; import com.allinfinance.common.Constants; import com.allinfinance.common.Operator; import com.allinfinance.common.StringUtil; import com.allinfinance.common.TblMchntInfoConstants; import com.allinfinance.dao.iface.mchnt.ITblGroupMchtInfDAO; import com.allinfinance.dao.iface.mchnt.ITblGroupMchtSettleInfDAO; import com.allinfinance.dao.iface.mchnt.ITblMchtBaseInfDAO; import com.allinfinance.dao.iface.mchnt.ITblMchtBaseInfTmpDAO; import com.allinfinance.dao.iface.mchnt.ITblMchtSettleInfDAO; import com.allinfinance.dao.iface.mchnt.ITblMchtSettleInfTmpDAO; import com.allinfinance.dao.iface.mchnt.TblMchntRefuseDAO; import com.allinfinance.dao.impl.term.TblTermInfDAO; import com.allinfinance.po.TblMchntRefuse; import com.allinfinance.po.TblMchntRefusePK; import com.allinfinance.po.TblTermInf; import com.allinfinance.po.TblTermInfTmp; import com.allinfinance.po.mchnt.TblGroupMchtInf; import com.allinfinance.po.mchnt.TblGroupMchtSettleInf; import com.allinfinance.po.mchnt.TblMchtBaseInf; import com.allinfinance.po.mchnt.TblMchtBaseInfTmp; import com.allinfinance.po.mchnt.TblMchtSettleInf; import com.allinfinance.po.mchnt.TblMchtSettleInfTmp; import com.allinfinance.system.util.CommonFunction; import com.allinfinance.system.util.ContextUtil; import com.allinfinance.system.util.StatusUtil; /** * Title:? * * Description: * * Copyright: Copyright (c) 2011-6-17 * * Company: Shanghai allinfinance Co., Ltd. * * @author Gavin * * @version 1.0 */ public class TblMchntServiceImpl1 implements TblMchntService1 { // private T3010BO t3010BO=(T3010BO) ContextUtil.getBean("t3010BO");; // private TblTermInfDAO tblTermInfDAO=(TblTermInfDAO) ContextUtil.getBean("tblTermInfDAO");; public ITblMchtBaseInfTmpDAO getTblMchtBaseInfTmpDAO() { return tblMchtBaseInfTmpDAO; } public void setTblMchtBaseInfTmpDAO(ITblMchtBaseInfTmpDAO tblMchtBaseInfTmpDAO) { this.tblMchtBaseInfTmpDAO = tblMchtBaseInfTmpDAO; } public ITblMchtBaseInfDAO getTblMchtBaseInfDAO() { return tblMchtBaseInfDAO; } public void setTblMchtBaseInfDAO(ITblMchtBaseInfDAO tblMchtBaseInfDAO) { this.tblMchtBaseInfDAO = tblMchtBaseInfDAO; } public ITblMchtSettleInfTmpDAO getTblMchtSettleInfTmpDAO() { return tblMchtSettleInfTmpDAO; } public void setTblMchtSettleInfTmpDAO(ITblMchtSettleInfTmpDAO tblMchtSettleInfTmpDAO) { this.tblMchtSettleInfTmpDAO = tblMchtSettleInfTmpDAO; } public ITblMchtSettleInfDAO getTblMchtSettleInfDAO() { return tblMchtSettleInfDAO; } public void setTblMchtSettleInfDAO(ITblMchtSettleInfDAO tblMchtSettleInfDAO) { this.tblMchtSettleInfDAO = tblMchtSettleInfDAO; } public TblMchntRefuseDAO getTblMchntRefuseDAO() { return tblMchntRefuseDAO; } public void setTblMchntRefuseDAO(TblMchntRefuseDAO tblMchntRefuseDAO) { this.tblMchntRefuseDAO = tblMchntRefuseDAO; } public ITblGroupMchtInfDAO getTblGroupMchtInfDAO() { return tblGroupMchtInfDAO; } public void setTblGroupMchtInfDAO(ITblGroupMchtInfDAO tblGroupMchtInfDAO) { this.tblGroupMchtInfDAO = tblGroupMchtInfDAO; } public ITblGroupMchtSettleInfDAO getTblGroupMchtSettleInfDAO() { return tblGroupMchtSettleInfDAO; } public void setTblGroupMchtSettleInfDAO(ITblGroupMchtSettleInfDAO tblGroupMchtSettleInfDAO) { this.tblGroupMchtSettleInfDAO = tblGroupMchtSettleInfDAO; } public ITblMchtBaseInfTmpDAO tblMchtBaseInfTmpDAO; public ITblMchtBaseInfDAO tblMchtBaseInfDAO; public ITblMchtSettleInfTmpDAO tblMchtSettleInfTmpDAO; public ITblMchtSettleInfDAO tblMchtSettleInfDAO; public TblMchntRefuseDAO tblMchntRefuseDAO; public ITblGroupMchtInfDAO tblGroupMchtInfDAO; public ITblGroupMchtSettleInfDAO tblGroupMchtSettleInfDAO; /* * ?? * * @see * com.allinfinance.bo.impl.mchnt.TblMchntService#saveTmp(com.allinfinance.po.mchnt * .TblMchtBaseInfTmp, as.allinfinance.po.management.mer.TblMchtSettleInfTmp) */ public String saveTmp(TblMchtBaseInfTmp tblMchtBaseInfTmp, TblMchtSettleInfTmp tblMchtSettleInfTmp) { if (tblMchtBaseInfTmpDAO.get(tblMchtBaseInfTmp.getMchtNo()) != null) { return "??"; } tblMchtBaseInfTmpDAO.save(tblMchtBaseInfTmp); tblMchtSettleInfTmpDAO.save(tblMchtSettleInfTmp); return Constants.SUCCESS_CODE; } /* * ? * * @see * com.allinfinance.bo.impl.mchnt.TblMchntService#updateTmp(com.allinfinance.po.mchnt * .TblMchtBaseInfTmp, com.allinfinance.po.mchnt.TblMchtSettleInfTmp) */ public String updateTmp(TblMchtBaseInfTmp tblMchtBaseInfTmp, TblMchtSettleInfTmp tblMchtSettleInfTmp) { tblMchtBaseInfTmpDAO.update(tblMchtBaseInfTmp); tblMchtSettleInfTmpDAO.update(tblMchtSettleInfTmp); return Constants.SUCCESS_CODE; } /* * * * @see com.allinfinance.bo.impl.mchnt.TblMchntService#accept(java.lang.String) */ public String accept(String mchntId) throws IllegalAccessException, InvocationTargetException { TblMchtBaseInfTmp tmp = tblMchtBaseInfTmpDAO.get(mchntId); TblMchtSettleInfTmp tmpSettle = tblMchtSettleInfTmpDAO.get(mchntId); //?? String status = tmp.getMchtStatus(); //cre String crtDateTmp = tmp.getRecCrtTs(); if (null == tmp || null == tmpSettle) { return "??"; } // ?? TblMchtBaseInf inf = tblMchtBaseInfDAO.get(tmp.getMchtNo()); TblMchtSettleInf infSettle = tblMchtSettleInfDAO.get(tmpSettle.getMchtNo()); //?cre String crtDate = "0"; if (null != inf) { crtDate = inf.getRecCrtTs(); } if (null == inf) { inf = new TblMchtBaseInf(); } if (null == infSettle) { infSettle = new TblMchtSettleInf(); } // tmp.setRecUpdTs(CommonFunction.getCurrentDateTime()); Operator opr = (Operator) ServletActionContext.getRequest().getSession() .getAttribute(Constants.OPERATOR_INFO); tmp.setUpdOprId(opr.getOprId()); tmpSettle.setRecUpdTs(CommonFunction.getCurrentDateTime()); //?? // if (TblMchntInfoConstants.MCHNT_ST_MODI_UNCK.equals(tmp.getMchtStatus()) // && (inf.getMchtCnAbbr() == null ||!inf.getMchtCnAbbr().equals(tmp.getMchtCnAbbr()) // ||inf.getEngName() == null ||!inf.getEngName().equals(tmp.getEngName()))) { //// TODO ?? // StringBuffer sql0 = new StringBuffer("update tbl_term_inf set term_para = substr(term_para,1,50)||'") // .append(CommonFunction.fillStringByDB(tmp.getMchtCnAbbr(), ' ', 40, true)).append("'||substr(term_para,91,20)||'") // .append(CommonFunction.fillStringByDB(tmp.getEngName()==null?"":tmp.getEngName(), ' ', 40, true)).append("'||substr(term_para,151) where MCHT_CD = '") // .append(mchntId).append("'"); // // StringBuffer sql1 = new StringBuffer("update tbl_term_inf_tmp set term_para = substr(term_para,1,53)||'") // .append(CommonFunction.fillStringByDB(tmp.getMchtCnAbbr(), ' ', 40, true)).append("'||substr(term_para,94,22)||'") // .append(CommonFunction.fillStringByDB(tmp.getEngName()==null?"":tmp.getEngName(), ' ', 40, true)).append("'||substr(term_para,156) where MCHT_CD = '") // .append(mchntId).append("'"); // // //?? // CommonFunction.getCommQueryDAO().excute(sql0.toString()); // CommonFunction.getCommQueryDAO().excute(sql1.toString()); // } if (tmp.getMchtStatus().equals(TblMchntInfoConstants.MCHNT_ST_DEL_UNCK)) {//? String update0 = "update tbl_term_inf set TERM_STA = '7' where MCHT_CD = '" + tmp.getMchtNo() + "'"; String update1 = "update tbl_term_inf_tmp set TERM_STA = '7' where MCHT_CD = '" + tmp.getMchtNo() + "'"; CommonFunction.getCommQueryDAO().excute(update0); CommonFunction.getCommQueryDAO().excute(update1); } else if (tmp.getMchtStatus().equals(TblMchntInfoConstants.MCHNT_ST_STOP_UNCK)) {//?? String update0 = "update tbl_term_inf set TERM_STA = '4' where MCHT_CD = '" + tmp.getMchtNo() + "'"; String update1 = "update tbl_term_inf_tmp set TERM_STA = '4' where MCHT_CD = '" + tmp.getMchtNo() + "'"; String update2 = "update TBL_ALARM_MCHT set BLOCK_MCHT_FLAG='1' where CARD_ACCP_ID='" + tmp.getMchtNo() + "' "; CommonFunction.getCommQueryDAO().excute(update0); CommonFunction.getCommQueryDAO().excute(update1); CommonFunction.getCommQueryDAO().excute(update2); } else if (tmp.getMchtStatus().equals(TblMchntInfoConstants.MCHNT_ST_MODI_UNCK)) {// if (!tmp.getBankNo().equals(inf.getBankNo())) { String update0 = "update BTH_CHK_TXN_SUSPS set stlm_inst='" + tmp.getBankNo() + "' where card_accp_id='" + tmp.getMchtNo() + "'"; String update1 = "update BTH_CHK_TXN set stlm_inst='" + tmp.getBankNo() + "' where card_accp_id = '" + tmp.getMchtNo() + "'"; String update2 = "update tbl_mchnt_infile_dtl set brh_code='" + tmp.getBankNo() + "' where mcht_no = '" + tmp.getMchtNo() + "'"; String update3 = "update tbl_algo_dtl set brh_ins_id_cd='" + tmp.getBankNo() + "' where mcht_cd = '" + tmp.getMchtNo() + "'"; String update4 = "update tbl_term_algo_sum set brh_ins_id_cd='" + tmp.getBankNo() + "' where mcht_cd = '" + tmp.getMchtNo() + "'"; CommonFunction.getCommQueryDAO().excute(update0); CommonFunction.getCommQueryDAO().excute(update1); CommonFunction.getCommQueryDAO().excute(update2); CommonFunction.getCommQueryDAO().excute(update3); CommonFunction.getCommQueryDAO().excute(update4); } } else if (tmp.getMchtStatus().equals(TblMchntInfoConstants.MCHNT_ST_RCV_UNCK)) {//??? String update0 = "update TBL_ALARM_MCHT set BLOCK_MCHT_FLAG='0' where CARD_ACCP_ID='" + tmp.getMchtNo() + "' "; CommonFunction.getCommQueryDAO().excute(update0); } String tmpStatus = tmp.getMchtStatus(); // ? tmp.setMchtStatus(StatusUtil.getNextStatus("G." + tmp.getMchtStatus())); // ?? BeanUtils.copyProperties(tmp, inf); BeanUtils.copyProperties(tmpSettle, infSettle); //?crt?? if (!TblMchntInfoConstants.MCHNT_ST_NEW_UNCK.equals(status) && !TblMchntInfoConstants.MCHNT_ST_NEW_FIRST_UNCK.equals(status)) { inf.setRecCrtTs(crtDate); } tblMchtBaseInfTmpDAO.update(tmp); tblMchtSettleInfTmpDAO.update(tmpSettle); tblMchtBaseInfDAO.saveOrUpdate(inf); tblMchtSettleInfDAO.saveOrUpdate(infSettle); return Constants.SUCCESS_CODE; } /* * * * @see com.allinfinance.bo.impl.mchnt.TblMchntService#back(java.lang.String, * java.lang.String) */ public String back(String mchntId, String refuseInfo) throws IllegalAccessException, InvocationTargetException { TblMchtBaseInfTmp tmp = tblMchtBaseInfTmpDAO.get(mchntId); TblMchtSettleInfTmp tmpSettle = tblMchtSettleInfTmpDAO.get(mchntId); if (null == tmp || null == tmpSettle) { return "??"; } Operator opr = (Operator) ServletActionContext.getRequest().getSession() .getAttribute(Constants.OPERATOR_INFO); // ? TblMchntRefuse refuse = new TblMchntRefuse(); TblMchntRefusePK tblMchntRefusePK = new TblMchntRefusePK(mchntId, CommonFunction.getCurrentDateTime()); refuse.setId(tblMchntRefusePK); refuse.setRefuseInfo(refuseInfo); refuse.setBrhId(tmp.getBankNo()); refuse.setOprId(opr.getOprId()); // ? refuse.setRefuseType(StatusUtil.getNextStatus("BM." + tmp.getMchtStatus())); // ? tmp.setMchtStatus(StatusUtil.getNextStatus("B." + tmp.getMchtStatus())); // tmp.setRecUpdTs(CommonFunction.getCurrentDateTime()); tmp.setUpdOprId(opr.getOprId()); // ? tblMchtBaseInfTmpDAO.update(tmp); tblMchntRefuseDAO.save(refuse); return Constants.SUCCESS_CODE; } /* * ? * * @see com.allinfinance.bo.impl.mchnt.TblMchntService#refuse(java.lang.String, * java.lang.String) */ public String refuse(String mchntId, String refuseInfo) throws IllegalAccessException, InvocationTargetException { TblMchtBaseInfTmp tmp = tblMchtBaseInfTmpDAO.get(mchntId); TblMchtSettleInfTmp tmpSettle = tblMchtSettleInfTmpDAO.get(mchntId); String crtDateTmp = tmp.getRecCrtTs(); if (null == tmp || null == tmpSettle) { return "??"; } Operator opr = (Operator) ServletActionContext.getRequest().getSession() .getAttribute(Constants.OPERATOR_INFO); // ?? TblMchntRefuse refuse = new TblMchntRefuse(); TblMchntRefusePK tblMchntRefusePK = new TblMchntRefusePK(mchntId, CommonFunction.getCurrentDateTime()); refuse.setId(tblMchntRefusePK); refuse.setRefuseInfo(refuseInfo); refuse.setBrhId(tmp.getBankNo()); refuse.setOprId(opr.getOprId()); // ?? refuse.setRefuseType(StatusUtil.getNextStatus("RM." + tmp.getMchtStatus())); // ??? // ?????-C 20120913 if (TblMchntInfoConstants.MCHNT_ST_NEW_FIRST_UNCK.equals(tmp.getMchtStatus())) { /*tblMchtBaseInfTmpDAO.delete(tmp); tblMchtSettleInfTmpDAO.delete(tmpSettle); tblMchntRefuseDAO.save(refuse); ICommQueryDAO commQueryDAO = (ICommQueryDAO) ContextUtil.getBean("CommQueryDAO"); commQueryDAO.excute("delete from tbl_term_inf_tmp where mcht_cd='" + mchntId + "'");*/ tmp.setMchtStatus("C"); tmp.setRecUpdTs(CommonFunction.getCurrentDateTime()); tmp.setUpdOprId(opr.getOprId()); tmpSettle.setRecUpdTs(CommonFunction.getCurrentDateTime()); tblMchtBaseInfTmpDAO.update(tmp); tblMchtSettleInfTmpDAO.update(tmpSettle); tblMchntRefuseDAO.save(refuse); } else if (TblMchntInfoConstants.MCHNT_ST_BULK_IPT_UNCK.equals(tmp.getMchtStatus())) { tblMchtBaseInfTmpDAO.delete(tmp); tblMchtSettleInfTmpDAO.delete(tmpSettle); tblMchntRefuseDAO.save(refuse); } else { // ?? TblMchtBaseInf inf = tblMchtBaseInfDAO.get(tmp.getMchtNo()); TblMchtSettleInf infSettle = tblMchtSettleInfDAO.get(tmpSettle.getMchtNo()); if (null == inf || null == infSettle) { return "???"; } else { // inf.setRecUpdTs(CommonFunction.getCurrentDateTime()); inf.setUpdOprId(opr.getOprId()); // ?? BeanUtils.copyProperties(inf, tmp); BeanUtils.copyProperties(infSettle, tmpSettle); tmp.setRecCrtTs(crtDateTmp); // ? tblMchtBaseInfTmpDAO.update(tmp); tblMchtBaseInfDAO.update(inf); tblMchtSettleInfTmpDAO.update(tmpSettle); tblMchtSettleInfDAO.update(infSettle); tblMchntRefuseDAO.save(refuse); } } return Constants.SUCCESS_CODE; } /* * ?? * * @see com.allinfinance.bo.impl.mchnt.TblMchntService#saveGroup() */ public String saveGroup(TblGroupMchtInf inf, TblGroupMchtSettleInf acctinf) throws IllegalAccessException, InvocationTargetException { tblGroupMchtInfDAO.save(inf); // ? tblGroupMchtSettleInfDAO.save(acctinf); return Constants.SUCCESS_CODE; } public TblMchtBaseInf getMccByMchntId(String mchntId) throws IllegalAccessException, InvocationTargetException { if (StringUtil.isNull(mchntId)) { return null; } TblMchtBaseInf inf = tblMchtBaseInfDAO.get(mchntId); if (null == inf) { return null; } else { return inf; } } /* * ?? * * @see * com.allinfinance.bo.impl.mchnt.TblMchntService#getGroupInf(java.lang.String) */ public TblGroupMchtInf getGroupInf(String mchntId) throws IllegalAccessException, InvocationTargetException { TblGroupMchtInf inf = tblGroupMchtInfDAO.get(StringUtil.fillValue(mchntId, 8, ' ')); return inf; } /* * * * @seecom.allinfinance.bo.impl.mchnt.TblMchntService#updateGroup(as.allinfinance.po. * management.mer.TblGroupMchtInf, * as.allinfinance.po.management.mer.TblGroupMchtSettleInf) */ public String updateGroup(TblGroupMchtInf inf, TblGroupMchtSettleInf acctinf) throws IllegalAccessException, InvocationTargetException { try { inf.setGroupMchtCd(CommonFunction.fillString(inf.getGroupMchtCd(), ' ', 8, true)); tblGroupMchtInfDAO.update(inf); return Constants.SUCCESS_CODE; } catch (Exception e) { e.printStackTrace(); return Constants.DATA_OPR_FAIL; } } /* * GET? * * @see * com.allinfinance.bo.impl.mchnt.TblMchntService#getBaseInfTmp(java.lang.String) */ public TblMchtBaseInfTmp getBaseInfTmp(String mchntId) throws IllegalAccessException, InvocationTargetException { return tblMchtBaseInfTmpDAO.get(mchntId); } public TblMchtSettleInfTmp getSettleInfTmp(String mchntId) throws IllegalAccessException, InvocationTargetException { return tblMchtSettleInfTmpDAO.get(mchntId); } public TblMchtBaseInf getBaseInf(String mchntId) throws IllegalAccessException, InvocationTargetException { return tblMchtBaseInfDAO.get(mchntId); } public TblMchtSettleInf getSettleInf(String mchntId) throws IllegalAccessException, InvocationTargetException { return tblMchtSettleInfDAO.get(mchntId); } public String updateBaseInfTmp(TblMchtBaseInfTmp inf) throws IllegalAccessException, InvocationTargetException { tblMchtBaseInfTmpDAO.update(inf); return Constants.SUCCESS_CODE; } public boolean getMchntStatus(String mchntId) throws IllegalAccessException, InvocationTargetException { TblMchtBaseInf tblMchtBaseInf = tblMchtBaseInfDAO.get(mchntId); if (tblMchtBaseInf == null) return false; if (!tblMchtBaseInf.getMchtStatus().equals(TblMchntInfoConstants.MCHNT_ST_OK)) return false; return true; } public TblGroupMchtSettleInf getGroupSettleInf(String mchntId) throws IllegalAccessException, InvocationTargetException { return tblGroupMchtSettleInfDAO.get(mchntId); } }