|
|
@@ -674,3 +674,178 @@ func (r *QhjPickArea) GetDataEx() (interface{}, error) {
|
|
|
}
|
|
|
return sData, err
|
|
|
}
|
|
|
+
|
|
|
+// QhjBankAccountSign 签约银行
|
|
|
+type QhjBankAccountSign struct {
|
|
|
+ ACCOUNTTYPE int32 `json:"accounttype" xorm:"ACCOUNTTYPE"` // 账户类型(UserType)
|
|
|
+ BANKACCOUNTTYPE int32 `json:"bankaccounttype" xorm:"BANKACCOUNTTYPE"` // 银行账户类型 - 1-对私; 2-对公
|
|
|
+ BANKCARDTYPE int32 `json:"bankcardtype" xorm:"BANKCARDTYPE"` // 银行卡类型
|
|
|
+ DIRECT int32 `json:"direct" xorm:"DIRECT"` // 方向(可以判断那方先发起的签约)
|
|
|
+ SIGNSTATUS int32 `json:"signstatus" xorm:"SIGNSTATUS"` // 签约状态 - 1:未签约 2:签约待审核 3:签约中 4:已签约 5:解约待审核 6:解约中 7:已解约 8:已解绑 9:绑卡中 10:审核拒绝 11:换签待审核
|
|
|
+ AUDITID int64 `json:"auditid" xorm:"AUDITID"` // 审核人
|
|
|
+ ACCOUNTCODE string `json:"accountcode" xorm:"ACCOUNTCODE"` // 资金账号
|
|
|
+ ACCOUNTNAME string `json:"accountname" xorm:"ACCOUNTNAME"` // 资金账号对应的账号名(UserName)
|
|
|
+ APPLICATIONTIME string `json:"applicationtime" xorm:"APPLICATIONTIME"` // 最后一次更新的时间
|
|
|
+ APPLYEXCHTICKET string `json:"applyexchticket" xorm:"APPLYEXCHTICKET"` // 申请流水
|
|
|
+ AUDITTIME string `json:"audittime" xorm:"AUDITTIME"` // 审核时间
|
|
|
+ BANKACCOUNTNAME string `json:"bankaccountname" xorm:"BANKACCOUNTNAME"` // 签约银行卡账号名
|
|
|
+ BANKACCOUNTNO string `json:"bankaccountno" xorm:"BANKACCOUNTNO"` // 银行卡号
|
|
|
+ BANKCHILDACCOUNT string `json:"bankchildaccount" xorm:"BANKCHILDACCOUNT"` // 银行子账号(签约成功后,很多银行会返回对应的这个虚拟账号)
|
|
|
+ BANKCITY string `json:"bankcity" xorm:"BANKCITY"` // 开户行城市
|
|
|
+ BANKID string `json:"bankid" xorm:"BANKID"` // 签约银行ID
|
|
|
+ BANKPROVINCE string `json:"bankprovince" xorm:"BANKPROVINCE"` // 开户行省份
|
|
|
+ BRANCHBANKID string `json:"branchbankid" xorm:"BRANCHBANKID"` // 签约银行支行号
|
|
|
+ BRANCHBANKNAME string `json:"branchbankname" xorm:"BRANCHBANKNAME"` // 签约银行支行名称
|
|
|
+ CARDNO string `json:"cardno" xorm:"CARDNO"` // 证件号码
|
|
|
+ CARDTYPE string `json:"cardtype" xorm:"CARDTYPE"` // 证件类型
|
|
|
+ CURRENCY string `json:"currency" xorm:"CURRENCY"` // 币种
|
|
|
+ CUSBANKID string `json:"cusbankid" xorm:"CUSBANKID"` // 托管银行编号
|
|
|
+ EXCHTICKET string `json:"exchticket" xorm:"EXCHTICKET"` // 最后一次签约成功的流水号
|
|
|
+ EXTENDINFO string `json:"extendinfo" xorm:"EXTENDINFO"` // 扩展信息(JSON字符串)
|
|
|
+ MOBILEPHONE string `json:"mobilephone" xorm:"MOBILEPHONE"` // 手机号
|
|
|
+ NETADDR string `json:"netaddr" xorm:"NETADDR"` // 调转网址
|
|
|
+ UPDATETIME string `json:"updatetime" xorm:"UPDATETIME"` // 更新时间(签解约更新时间)
|
|
|
+ RELATEDUSERID int64 `json:"relateduserid" xorm:"'RELATEDUSERID'"` // 关联使用者userid
|
|
|
+}
|
|
|
+
|
|
|
+func (r *QhjBankAccountSign) calc() {
|
|
|
+
|
|
|
+}
|
|
|
+
|
|
|
+func (r *QhjBankAccountSign) buildSql() string {
|
|
|
+ var sqlId utils.SQLVal = "SELECT t.ACCOUNTCODE," +
|
|
|
+ " t.CUSBANKID," +
|
|
|
+ " t.SIGNSTATUS," +
|
|
|
+ " t.CURRENCY," +
|
|
|
+ " t.ACCOUNTTYPE," +
|
|
|
+ " t.ACCOUNTNAME," +
|
|
|
+ " t.BANKCARDTYPE," +
|
|
|
+ " t.BANKACCOUNTNO," +
|
|
|
+ " t.BANKACCOUNTTYPE," +
|
|
|
+ " t.BANKCHILDACCOUNT," +
|
|
|
+ " t.BANKID," +
|
|
|
+ " t.BRANCHBANKID," +
|
|
|
+ " t.BRANCHBANKNAME," +
|
|
|
+ " t.BANKACCOUNTNAME," +
|
|
|
+ " t.CARDTYPE," +
|
|
|
+ " t.CARDNO," +
|
|
|
+ " t.BANKPROVINCE," +
|
|
|
+ " t.BANKCITY," +
|
|
|
+ " t.DIRECT," +
|
|
|
+ " t.MOBILEPHONE," +
|
|
|
+ " t.EXTENDINFO," +
|
|
|
+ " t.EXCHTICKET," +
|
|
|
+ " to_char(t.UPDATETIME, 'yyyy-mm-dd hh24:mi:ss') UPDATETIME," +
|
|
|
+ " to_char(t.APPLICATIONTIME, 'yyyy-mm-dd hh24:mi:ss') APPLICATIONTIME," +
|
|
|
+ " t.NETADDR," +
|
|
|
+ " t.AUDITID," +
|
|
|
+ " to_char(t.AUDITTIME, 'yyyy-mm-dd hh24:mi:ss') AUDITTIME," +
|
|
|
+ " t.APPLYEXCHTICKET," +
|
|
|
+ " ta.accountid," +
|
|
|
+ " ta.relateduserid" +
|
|
|
+ " FROM BANK_ACCOUNTSIGN t" +
|
|
|
+ " INNER JOIN TAACCOUNT ta" +
|
|
|
+ " on t.accountcode = to_char(ta.accountid)" +
|
|
|
+ " WHERE 1 = 1 and ta.taaccounttype = 2"
|
|
|
+ sqlId.And("ta.RELATEDUSERID", r.RELATEDUSERID)
|
|
|
+ return sqlId.String()
|
|
|
+}
|
|
|
+
|
|
|
+// GetDataEx 获取签约银行
|
|
|
+func (r *QhjBankAccountSign) GetDataEx() (interface{}, error) {
|
|
|
+ sData := make([]QhjBankAccountSign, 0)
|
|
|
+ err := db.GetEngine().SQL(r.buildSql()).Find(&sData)
|
|
|
+ for i := range sData {
|
|
|
+ sData[i].calc()
|
|
|
+ }
|
|
|
+ return sData, err
|
|
|
+}
|
|
|
+
|
|
|
+// QhjBankInfo 银行信息列表
|
|
|
+type QhjBankInfo struct {
|
|
|
+ STATUS int32 `json:"status" xorm:"STATUS"` // 状态 - 0:正常 1:注销
|
|
|
+ ORDERINDEX int64 `json:"orderindex" xorm:"ORDERINDEX"` // 排序顺序
|
|
|
+ BANKID string `json:"bankid" xorm:"BANKID"` // 银行ID
|
|
|
+ BANKNAME string `json:"bankname" xorm:"BANKNAME"` // 银行名称
|
|
|
+ CLEARBANKNO string `json:"clearbankno" xorm:"CLEARBANKNO"` // 清算系统银行编号
|
|
|
+}
|
|
|
+
|
|
|
+func (r *QhjBankInfo) calc() {
|
|
|
+
|
|
|
+}
|
|
|
+
|
|
|
+func (r *QhjBankInfo) buildSql() string {
|
|
|
+ var sqlId utils.SQLVal = "SELECT t.BANKID,t.BANKNAME,t.CLEARBANKNO,t.STATUS,t.ORDERINDEX FROM BANK_BANKINFO t WHERE 1=1 and t.status=0"
|
|
|
+
|
|
|
+ return sqlId.String()
|
|
|
+}
|
|
|
+
|
|
|
+// GetDataEx 获取银行信息列表
|
|
|
+func (r *QhjBankInfo) GetDataEx() (interface{}, error) {
|
|
|
+ sData := make([]QhjBankInfo, 0)
|
|
|
+ err := db.GetEngine().SQL(r.buildSql()).Find(&sData)
|
|
|
+ for i := range sData {
|
|
|
+ sData[i].calc()
|
|
|
+ }
|
|
|
+ return sData, err
|
|
|
+}
|
|
|
+
|
|
|
+// QhjReckonPriceLog 结算价(定投价)
|
|
|
+type QhjReckonPriceLog struct {
|
|
|
+ LASTRECKONPRICE float64 `json:"lastreckonprice" xorm:"LASTRECKONPRICE"` // 上日结算价
|
|
|
+ NEXTDNLIMITPRICE float64 `json:"nextdnlimitprice" xorm:"NEXTDNLIMITPRICE"` // 下个交易日跌停价
|
|
|
+ NEXTUPLIMITPRICE float64 `json:"nextuplimitprice" xorm:"NEXTUPLIMITPRICE"` // 下个交易日涨停价
|
|
|
+ RECKONPRICE float64 `json:"reckonprice" xorm:"RECKONPRICE"` // 今日结算价(定投价)
|
|
|
+ UPDOWNRATE float64 `json:"updownrate" xorm:"UPDOWNRATE"` // 今日涨跌幅
|
|
|
+ UPDOWNRATE_2D float64 `json:"updownrate_2d" xorm:"UPDOWNRATE_2D"` // 连续两日涨跌幅
|
|
|
+ UPDOWNRATE_3D float64 `json:"updownrate_3d" xorm:"UPDOWNRATE_3D"` // 连续三日涨跌幅
|
|
|
+ TOTALHOLDERQTY int32 `json:"totalholderqty" xorm:"TOTALHOLDERQTY"` // 总持仓数
|
|
|
+ TOTALSTOCK int32 `json:"totalstock" xorm:"TOTALSTOCK"` // 总库存
|
|
|
+ UPDOWNCOUNT int32 `json:"updowncount" xorm:"UPDOWNCOUNT"` // 连续涨(跌)停天数 (涨跌停标志变为0时值归0,变成涨停或是跌停时值为1,连续涨停天数+1,连续跌停天数+1)
|
|
|
+ UPDOWNFLAG int32 `json:"updownflag" xorm:"UPDOWNFLAG"` // 连续涨跌停标志 - 0:无涨跌停 -1:跌停 1:涨停
|
|
|
+ GOODSID int64 `json:"goodsid" xorm:"GOODSID" form:"goodsid"` // 商品ID
|
|
|
+ NEXTTRADE string `json:"nexttrade" xorm:"NEXTTRADE"` // 下个交易日
|
|
|
+ RECKONTIME string `json:"reckontime" xorm:"RECKONTIME"` // 结算时间
|
|
|
+ TRADEDATE string `json:"tradedate" xorm:"TRADEDATE" form:"tradedate"` // 交易日
|
|
|
+}
|
|
|
+
|
|
|
+func (r *QhjReckonPriceLog) calc() {
|
|
|
+
|
|
|
+}
|
|
|
+
|
|
|
+func (r *QhjReckonPriceLog) buildSql() string {
|
|
|
+ var sqlId utils.SQLVal = "SELECT t.TRADEDATE," +
|
|
|
+ " t.GOODSID," +
|
|
|
+ " to_char(t.RECKONTIME, 'yyyy-mm-dd hh24:mi:ss') RECKONTIME," +
|
|
|
+ " t.LASTRECKONPRICE," +
|
|
|
+ " t.RECKONPRICE," +
|
|
|
+ " t.UPDOWNRATE," +
|
|
|
+ " t.UPDOWNFLAG," +
|
|
|
+ " t.UPDOWNCOUNT," +
|
|
|
+ " t.UPDOWNRATE_2D," +
|
|
|
+ " t.UPDOWNRATE_3D," +
|
|
|
+ " t.NEXTTRADE," +
|
|
|
+ " t.NEXTUPLIMITPRICE," +
|
|
|
+ " t.NEXTDNLIMITPRICE," +
|
|
|
+ " t.TOTALHOLDERQTY," +
|
|
|
+ " t.TOTALSTOCK," +
|
|
|
+ " g.goodsname," +
|
|
|
+ " g.goodscode" +
|
|
|
+ " FROM RECKON_PRICELOG t" +
|
|
|
+ " LEFT JOIN GOODS g on t.goodsid=g.goodsid" +
|
|
|
+ " INNER JOIN MARKET m on g.marketid=g.marketid" +
|
|
|
+ " WHERE 1 = 1 and m.marketid=69201"
|
|
|
+ sqlId.AndEx("t.TRADEDATE", r.TRADEDATE, len(r.TRADEDATE) > 0)
|
|
|
+ sqlId.AndEx("t.GOODSID", r.GOODSID, r.GOODSID > 0)
|
|
|
+ return sqlId.String()
|
|
|
+}
|
|
|
+
|
|
|
+// GetDataEx 获取结算价(定投价)
|
|
|
+func (r *QhjReckonPriceLog) GetDataEx() (interface{}, error) {
|
|
|
+ sData := make([]QhjReckonPriceLog, 0)
|
|
|
+ err := db.GetEngine().SQL(r.buildSql()).Find(&sData)
|
|
|
+ for i := range sData {
|
|
|
+ sData[i].calc()
|
|
|
+ }
|
|
|
+ return sData, err
|
|
|
+}
|