f11c860389d1ea0ee305b64062e675cd3aab806e.svn-base 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116
  1. package com.chinacreator.process.dao;
  2. import java.sql.SQLException;
  3. import java.util.ArrayList;
  4. import java.util.HashMap;
  5. import java.util.List;
  6. import org.apache.commons.lang.StringUtils;
  7. import org.springframework.cache.annotation.Cacheable;
  8. import org.springframework.stereotype.Component;
  9. import com.chinacreator.process.util.DataSource;
  10. import com.frameworkset.common.poolman.SQLExecutor;
  11. @Component
  12. public class CommonDao{
  13. /**
  14. * 获取接口信息
  15. * @param projname 工程名称
  16. * @param invokename 接口名称
  17. * @param invoketype 接口类型,1外部接口,2内部接口
  18. * @return
  19. * @throws Exception
  20. */
  21. @Cacheable(value="InvokeUrlInfo", key="#projname+'-'+#invokename+'-'+#invoketype")
  22. public HashMap getInvokeUrlInfo(String projname, String invokename, String invoketype) throws Exception {
  23. String sql = "SELECT * FROM NET3G.TB_PROJINVOKEURL_CONF WHERE STATUS = '0' AND PROJNAME = ? AND INVOKENAME = ? AND INVOKETYPE = ? ";
  24. return SQLExecutor.queryObjectWithDBName(HashMap.class, DataSource.NET3G, sql, projname, invokename, invoketype);
  25. }
  26. /**
  27. * 查询所有后向配置
  28. * @return
  29. * @throws SQLException
  30. */
  31. @Cacheable(value="qryBackBusiAll")
  32. public List<HashMap> qryBackBusiAll() throws SQLException {
  33. String sql = "SELECT * FROM TB_BACKBUSI_CONF ";
  34. return SQLExecutor.queryListWithDBName(HashMap.class, DataSource.NET3G, sql, null);
  35. }
  36. /**
  37. * 根据SPID查询后向配置
  38. * @return
  39. * @throws SQLException
  40. */
  41. @Cacheable(value="qryBackBusiBySpid", key="#spid")
  42. public HashMap qryBackBusiBySpid(String spid) throws SQLException {
  43. String sql = "SELECT * FROM TB_BACKBUSI_CONF WHERE SPID = ? ";
  44. return SQLExecutor.queryObjectWithDBName(HashMap.class, DataSource.NET3G, sql, spid);
  45. }
  46. /**
  47. * 查询所有订购关系,cpid\spid可以为空
  48. * @param userid
  49. * @param cpid
  50. * @param spid
  51. * @param flag 2返回订购和退订未失效,3只返回订购,4只返回已失效,为空或其他值返回所有订购关系(订购中,退订中,已失效)
  52. * @return
  53. * @throws SQLException
  54. */
  55. public List<HashMap> qryRealByUserid(String userid, String cpid, String spid, String flag) throws SQLException {
  56. List<String> paramList = new ArrayList<String>();
  57. String wherestr = " WHERE USERID = ? ";
  58. paramList.add(userid);
  59. String sql = "SELECT "+
  60. " CPID, SPID, USERID, PROVINCE, AREA, ORDERCHANNEL, CANCELCHANNEL, ORDERCHANNEL2, CANCELCHANNEL2, "+
  61. " TO_CHAR(ORDERTIME,'YYYYMMDDHH24MISS') ORDERTIME, "+
  62. " TO_CHAR(ENDTIME,'YYYYMMDDHH24MISS') ENDTIME, "+
  63. " TO_CHAR(CANCELTIME,'YYYYMMDDHH24MISS') CANCELTIME, "+
  64. " (CASE WHEN ENDTIME IS NULL THEN '0' WHEN ENDTIME >= SYSDATE THEN '1' ELSE '2' END) STATUS "+
  65. " FROM NET3G.TD_ORDER_RELATIONS ";
  66. if(!StringUtils.isEmpty(cpid)){
  67. wherestr += " AND CPID = ? ";
  68. paramList.add(cpid);
  69. }
  70. if(!StringUtils.isEmpty(spid)){
  71. wherestr += " AND SPID = ? ";
  72. paramList.add(spid);
  73. }
  74. if("2".equals(flag)){//返回订购,退订未失效
  75. wherestr += " AND ( ENDTIME IS NULL OR ENDTIME >= SYSDATE )";
  76. }else if("3".equals(flag)){//3返回订购
  77. wherestr += " AND ENDTIME IS NULL ";
  78. }else if("4".equals(flag)){
  79. wherestr += " AND ( ENDTIME IS NULL OR ENDTIME < SYSDATE )";
  80. }
  81. sql += wherestr;
  82. //System.out.println(sql);
  83. Object [] params = paramList.toArray(new Object[paramList.size()]);
  84. return SQLExecutor.queryListWithDBName(HashMap.class, DataSource.NET3G, sql, params);
  85. //return SQLExecutor.queryObjectWithDBName(HashMap.class, DataSource.NET3G, sql, params );
  86. }
  87. @Cacheable(value="qrySpinfoBySpid", key="#spid")
  88. public HashMap qrySpinfoBySpid(String spid) throws SQLException{
  89. String sql = "SELECT * FROM net3g.TB_SP_INFO WHERE SPID = ? ";
  90. return SQLExecutor.queryObjectWithDBName(HashMap.class, DataSource.NET3G, sql, spid);
  91. }
  92. /**
  93. * 获取根据SPID获取合约产品的配置信息
  94. * @param spid
  95. * @return
  96. * @throws SQLException
  97. */
  98. @Cacheable(value="qryHyProduct", key="#spid")
  99. public HashMap qryHyProduct(String spid) throws SQLException {
  100. String sql=" SELECT TO_CHAR(MONTH) MONTH, CPID, SPID, EXTEND1 WYJSPID FROM TB_PRODUCT_CANCEL_CONF WHERE SPID = ? AND STATUS = '0' ";
  101. return SQLExecutor.queryObjectWithDBName(HashMap.class, DataSource.NET3G, sql, spid);
  102. }
  103. public static void main(String[] args) throws SQLException {
  104. CommonDao dao = new CommonDao();
  105. System.out.println(dao.qryRealByUserid("18673197465", null, null, null));
  106. }
  107. }