package com.citigroup.gfi.tps.posbrk.service;
import java.math.BigDecimal;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Locale;
import java.util.Map;
import java.util.Set;
import java.util.TimeZone;
import org.apache.commons.chain.Context;
import org.apache.commons.lang.StringUtils;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.springframework.dao.DataAccessException;
import org.springframework.jdbc.core.PreparedStatementCallback;
import org.springframework.jdbc.core.PreparedStatementSetter;
import org.springframework.util.CollectionUtils;
import weblogic.wsee.util.StringUtil;
import com.citigroup.gfi.tps.core.dao.TradeDao;
import com.citigroup.gfi.tps.core.dao.jdbc.AbstractOracleDao;
import com.citigroup.gfi.tps.core.dao.jdbc.DomainObj2OracleObjConverter;
import com.citigroup.gfi.tps.core.domain.TpsProcessDate;
import com.citigroup.gfi.tps.core.domain.Trade;
import com.citigroup.gfi.tps.core.utils.BusinessDateFactory;
import com.citigroup.gfi.tps.posbrk.domain.PosbrkExcelItem;
import com.citigroup.gfi.tps.posbrk.domain.PositionItem;
import com.citigroup.gfi.tps.posbrk.domain.TradeKey;
import com.citigroup.gfi.tps.posbrk.util.DateUtils;
import com.citigroup.gfi.tps.posbrk.util.PosBrkConstants;
import com.citigroup.gfi.tps.posbrk.util.PosBrkUtil;
//import weblogic.descriptor.descriptorgen.interfacegen;
public class PosBrkDaoImpl extends AbstractOracleDao implements PosBrkDao {
private static final Log log = LogFactory.getLog(PosBrkDaoImpl.class);
public static String QUERY_TPS_ROLL_DATES = "SELECT DISTINCT TO_CHAR(MODIFIED,'YYYY-MM-DD HH24:MI:SS') AS MODIFIED FROM TPSCORPPOS_M.VIEW_TPS_TD_POSITION_HISTORY WHERE FIRM_ACCOUNT=? AND CUSIP=? AND REASON='Position Roll' AND MODIFIED > TRUNC(SYSDATE - 10) ORDER BY MODIFIED DESC";
public static String QUERY_GTPL_LOAD_DATES = "SELECT DISTINCT TO_CHAR(MODIFIED,'YYYY-MM-DD HH24:MI:SS') AS MODIFIED FROM TPSCORPPOS_M.VIEW_TPS_TD_POSITION_HISTORY WHERE FIRM_ACCOUNT=? AND CUSIP=? AND POSITION_TYPE = 'GTPL' AND REASON = 'ETPL GTPL GMI LOADING' AND MODIFIED > TRUNC(SYSDATE - 10) ORDER BY MODIFIED DESC";
public static String QUERY_ALL_GTPL_POSITIONS = "SELECT DISTINCT TO_CHAR(MODIFIED, 'YYYY-MM-DD HH24:MI:SS') AS MODIFIED, (SOD_BUY_CURRENT_FACE - SOD_SELL_CURRENT_FACE + BUY_CURRENT_FACE - SELL_CURRENT_FACE) AS POSITION FROM TPSCORPPOS_M.VIEW_TPS_TD_POSITION_HISTORY WHERE FIRM_ACCOUNT = ? AND CUSIP =? AND POSITION_TYPE = 'GTPL' AND REASON = 'ETPL GTPL GMI LOADING' AND TO_CHAR(MODIFIED, 'YYYY-MM-DD') >= ? ORDER BY MODIFIED DESC ";
public static String QUERY_ALL_POSITION_ITMES = "SELECT DISTINCT TO_CHAR(HIST.MODIFIED, 'YYYY-MM-DD HH24:MI:SS') AS MODIFIED, HIST.FIRM_ACCOUNT,HIST.CUSIP,HIST.POSITION_TYPE,HIST.REASON,"
+ " (CASE WHEN DESK_NAME IN ('GOVT', 'SWAPS') AND POSITION_TYPE IN ('REGULAR') AND REASON IN ('Position Roll') THEN (SOD_BUY_ORIGINAL_FACE - SOD_SELL_ORIGINAL_FACE) WHEN DESK_NAME IN ('EM', 'EMEA Credit Flow', 'EMEA-ABS', 'EG','EU Rates', 'Private Products', 'CAD', 'MBS') AND POSITION_TYPE IN ('REGULAR') AND REASON IN ('Position Roll') THEN (SOD_BUY_CURRENT_FACE - SOD_SELL_CURRENT_FACE) ELSE (SOD_BUY_CURRENT_FACE - SOD_SELL_CURRENT_FACE + BUY_CURRENT_FACE - SELL_CURRENT_FACE)END) POSITION,"
+ " HIST.EVENT_TYPE, HIST.TRADE_ID, HIST.VERSION, HIST.TRADE_QUANTITY AS TRADE_ORIG_QTY,HIST.BUY_SELL, HIST.CURR_CODE,HIST.FACTOR,TRADE.TRADE_PRICE, TRADE.BO_TRADE_NUM AS BO_TRADE_NUM,TRADE.TXN_REQ_ID AS TXN_REQ_ID, HIST.POSITION_VERSION FROM TPSCORPPOS_M.VIEW_TPS_TD_POSITION_HISTORY HIST,"
+ " TPSCORP_M.TPS_TRADE TRADE WHERE HIST.TRADE_ID = TRADE.TRADE_ID(+) AND HIST.VERSION = TRADE.TRADE_VERSION(+) AND FIRM_ACCOUNT = ? AND CUSIP =? AND REASON IN ('Trading Position Update', 'Trading', 'Trading Activity','Position Roll', 'ETPL GTPL GMI LOADING') AND HIST.MODIFIED > TRUNC(SYSDATE - ?) ORDER BY POSITION_VERSION DESC, MODIFIED DESC ";
public static String QUERY_ALL_TPS_POSITIONS = "SELECT DISTINCT TO_CHAR(MODIFIED, 'YYYY-MM-DD HH24:MI:SS') AS MODIFIED,(CASE WHEN DESK_NAME IN ('GOVT', 'SWAPS') THEN (SOD_BUY_ORIGINAL_FACE - SOD_SELL_ORIGINAL_FACE) WHEN DESK_NAME IN ('EM', 'EMEA Credit Flow', 'EMEA-ABS', 'EG','EU Rates', 'Private Products', 'CAD', 'MBS') THEN (SOD_BUY_CURRENT_FACE - SOD_SELL_CURRENT_FACE) ELSE (SOD_BUY_CURRENT_FACE - SOD_SELL_CURRENT_FACE + BUY_CURRENT_FACE - SELL_CURRENT_FACE)END) POSITION FROM TPSCORPPOS_M.VIEW_TPS_TD_POSITION_HISTORY "
+ " WHERE FIRM_ACCOUNT = ? AND CUSIP = ? AND POSITION_TYPE = 'REGULAR' AND REASON = 'Position Roll' AND TO_CHAR(MODIFIED, 'YYYY-MM-DD') >= ? ORDER BY MODIFIED DESC ";
public static String QUERY_ALL_TPS_POSITIONS_A = "SELECT DISTINCT TO_CHAR(MODIFIED, 'YYYY-MM-DD HH24:MI:SS') AS MODIFIED,(CASE WHEN DESK_NAME IN ('GOVT', 'SWAPS') THEN (SOD_BUY_ORIGINAL_FACE - SOD_SELL_ORIGINAL_FACE) WHEN DESK_NAME IN ('EM', 'EMEA Credit Flow', 'EMEA-ABS', 'EG','EU Rates', 'Private Products', 'CAD', 'MBS') THEN (SOD_BUY_CURRENT_FACE - SOD_SELL_CURRENT_FACE) ELSE (SOD_BUY_CURRENT_FACE - SOD_SELL_CURRENT_FACE + BUY_CURRENT_FACE - SELL_CURRENT_FACE)END) POSITION FROM TPSCORPPOS_M.VIEW_TPS_TD_POSITION_HISTORY "
+ " WHERE FIRM_ACCOUNT = ? AND CUSIP = ? AND POSITION_TYPE = 'REGULAR' AND REASON in ( 'Trading Position Update','Trading','Trading Activity') AND TO_CHAR(MODIFIED, 'YYYY-MM-DD') >= ? ORDER BY MODIFIED DESC ";
public static String QUERY_LATEST_TRADE_STATE_PARTA = "SELECT TRADE_ID, TRADE_VERSION,TRADE_STATE FROM TPSCORP_M.TPS_TRADE WHERE TRADE_ID IN ( ";
public static String QUERY_LATEST_TRADE_STATE_PARTB = " ) ORDER BY TRADE_ID ASC, TRADE_VERSION ASC ";
public static String QUERY_TRADE_ID_TXN_REQ_ID_PARTA = "SELECT BO_TRADE_NUM, BUY_SELL, TRADE_ID, TXN_REQ_ID FROM TPSCORP_M.TPS_TRADE WHERE BO_TRADE_NUM IN (";
public static String QUERY_TRADE_ID_TXN_REQ_ID_PARTB = ") AND TRADE_ORIGINATION_SIDE ='T' AND TO_CHAR(LASTMOD_TIMESTAMP, 'YYYY') >= '2012' ORDER BY TRADE_ID DESC ";
public static String QUERY_SUB_BUSINESS_BY_ACCOUNT_PARTA = "SELECT ACCOUNT_MNEMONIC, SUB_BUSINESS FROM TPSCORP_M.TPS_ACCOUNT WHERE ACCOUNT_TYPE = 'FIRM' AND ACCOUNT_MNEMONIC IN (";
public static String QUERY_SUB_BUSINESS_BY_ACCOUNT_PARTB = "' ) AND SUB_BUSINESS IS NOT NULL ";
public static String QUERY_TPS_POSITION_AFTER_BEGIN_DATE = "SELECT HIST.FIRM_ACCOUNT,HIST.EVENT_TYPE,HIST.BUY_SELL,HIST.CURR_CODE,HIST.CUSIP,"
+ "HIST.TRADE_QUANTITY AS TRADE_QTY,HIST.TRADE_ID,HIST.MODIFIED,HIST.VERSION,HIST.FACTOR,TRADE.BO_TRADE_NUM AS BO_TRADE_NUM, TRADE.TXN_REQ_ID AS TXN_REQ_ID"
+ " FROM TPSCORPPOS_M.VIEW_TPS_TD_POSITION_HISTORY HIST, TPSCORP_M.TPS_TRADE TRADE WHERE HIST.TRADE_ID =TRADE.TRADE_ID(+) AND HIST.VERSION=TRADE.TRADE_VERSION(+) AND FIRM_ACCOUNT=? AND CUSIP=? AND REASON IN ( 'Trading Position Update','Trading','Trading Activity') AND MODIFIED > TO_DATE(?,'YYYY-MM-DD HH24:MI:SS') ";
public static String QUERY_TPS_POSITION_BEFORE_END_DATE = "SELECT HIST.FIRM_ACCOUNT,HIST.EVENT_TYPE,HIST.BUY_SELL,HIST.CURR_CODE,HIST.CUSIP,"
+ "HIST.TRADE_QUANTITY AS TRADE_QTY,HIST.TRADE_ID,HIST.MODIFIED,HIST.VERSION,HIST.FACTOR,TRADE.BO_TRADE_NUM AS BO_TRADE_NUM, TRADE.TXN_REQ_ID AS TXN_REQ_ID"
+ " FROM TPSCORPPOS_M.VIEW_TPS_TD_POSITION_HISTORY HIST, TPSCORP_M.TPS_TRADE TRADE WHERE HIST.TRADE_ID =TRADE.TRADE_ID(+) AND HIST.VERSION=TRADE.TRADE_VERSION(+) AND FIRM_ACCOUNT=? AND CUSIP=? AND REASON IN ( 'Trading Position Update','Trading','Trading Activity') AND HIST.MODIFIED < TO_DATE(?,'YYYY-MM-DD HH24:MI:SS') ";
public static String QUERY_TPS_POSITION_WITHIN = "SELECT HIST.FIRM_ACCOUNT,HIST.EVENT_TYPE,HIST.BUY_SELL,HIST.CURR_CODE,HIST.CUSIP,"
+ "HIST.TRADE_QUANTITY AS TRADE_QTY,HIST.TRADE_
没有合适的资源?快使用搜索试试~ 我知道了~
spring+MVC项目代码
共469个文件
java:257个
ftl:78个
xml:46个
需积分: 14 26 下载量 11 浏览量
2013-08-19
16:35:10
上传
评论
收藏 692KB ZIP 举报
温馨提示
TPSWebMonitorCorp项目代码,spring+MVC+FreeMaker
资源推荐
资源详情
资源评论
收起资源包目录
spring+MVC项目代码 (469个子文件)
jquery-ui.css 27KB
main.css 10KB
monitor.css 3KB
reset.css 1017B
jquery.autocomplete.css 797B
posbrk_list.ftl 19KB
default.ftl 7KB
lookup.ftl 5KB
compare.ftl 4KB
detailList.ftl 4KB
summaryList.ftl 4KB
status_ajax.ftl 3KB
push.ftl 2KB
product.ftl 2KB
lookup.ftl 2KB
runtime_monitor.ftl 2KB
mo_list.ftl 1KB
hammer.ftl 1KB
servicestatus_env.ftl 1KB
servicestatus_env.ftl 1KB
status.ftl 1KB
mashup.ftl 1KB
acct.ftl 1KB
inscope_check.ftl 1KB
posbrk_upload_submit.ftl 1KB
desk_region_map_update.ftl 1KB
header.ftl 895B
confmonitor.ftl 813B
desk_region_map_update_submit.ftl 760B
favorites_mini.ftl 677B
generic_view.ftl 662B
posbrk_lookup.ftl 649B
ev_mini.ftl 642B
multirow_view.ftl 625B
ems_mini.ftl 624B
posbrk_upload.ftl 590B
break_list.ftl 555B
js.ftl 554B
header.ftl 477B
css.ftl 474B
_include.ftl 467B
category.ftl 463B
create_mini.ftl 456B
category.ftl 342B
matchingsender.ftl 341B
cdtssender.ftl 341B
vertical.ftl 327B
menu.ftl 317B
query_mini.ftl 316B
main.ftl 299B
sod_list.ftl 298B
error.ftl 281B
single_mashup.ftl 237B
error_mini.ftl 159B
posbrk_analysis.ftl 137B
primary_product.ftl 127B
cpty_acct.ftl 112B
exec_acct.ftl 112B
first_product.ftl 109B
index.ftl 108B
posbrk_upload.ftl 85B
desk_region_map_update.ftl 84B
posbrk_bulk.ftl 82B
text.ftl 82B
pb_analysis.ftl 74B
confmonitor.ftl 72B
links.ftl 69B
intraday.ftl 67B
mo_processing.ftl 65B
runtime_monitor.ftl 64B
inscope_menu.ftl 61B
startofday.ftl 57B
push.ftl 50B
multirow_view.ftl 46B
multirow_view.ftl 46B
generic_view.ftl 45B
generic_view.ftl 45B
common_lib.ftl 33B
vertical.ftl 32B
vertical.ftl 32B
menu.ftl 30B
menu.ftl 30B
recap_mini.ftl 12B
pic_04.gif 3KB
loading.gif 2KB
CitiLogo.gif 2KB
logo.gif 2KB
bt_02.gif 1024B
0.gif 1010B
bt_02_sel.gif 976B
bt_01.gif 421B
pic_12.gif 351B
pic_02.gif 339B
pic_03.gif 324B
pic_07.gif 200B
bt_01_sel.gif 165B
pic_11.gif 117B
pic_10.gif 99B
icn_closew.gif 80B
pic_09.gif 71B
共 469 条
- 1
- 2
- 3
- 4
- 5
资源评论
li33dong
- 粉丝: 0
- 资源: 21
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功