|
|
@@ -742,13 +742,11 @@ func (r *Ermcp3Contract) buildSql() string {
|
|
|
" on t.spotgoodsbrandid = gb.dgfactoryitemid" +
|
|
|
" left join wrstandard w" +
|
|
|
" on t.wrstandardid = w.wrstandardid" +
|
|
|
+ " left join loginaccount l on t.applyid=l.loginid" +
|
|
|
" where 1 = 1"
|
|
|
- sqlId.AndEx("t.userid", r.USERID, r.USERID > 0)
|
|
|
sqlId.AndEx("t.SPOTCONTRACTID", r.SPOTCONTRACTID, len(r.SPOTCONTRACTID) > 0)
|
|
|
- if r.UserType == 7 {
|
|
|
- // 企业成员
|
|
|
- sqlId.Join(fmt.Sprintf(" and %v in(t.saleuserid, t.tradeuserid, t.meruserid)", r.OwnUserId))
|
|
|
- }
|
|
|
+ // 用户条件
|
|
|
+ sqlId.Join(fmt.Sprintf(" and %v in(t.userid, t.saleuserid, t.tradeuserid, t.meruserid, l.userid)", r.OwnUserId))
|
|
|
status := r.getQryTypeStatus()
|
|
|
if len(status) > 0 {
|
|
|
sqlId.Join(fmt.Sprintf(" and t.contractstatus in (%v)", status))
|
|
|
@@ -2071,3 +2069,92 @@ func (r *Ermcp3GoodsGroup) GetData() ([]Ermcp3GoodsGroup, error) {
|
|
|
func (r *Ermcp3GoodsGroup) GetDataEx() (interface{}, error) {
|
|
|
return r.GetData()
|
|
|
}
|
|
|
+
|
|
|
+// Ermcp3RootUserAccount 顶级用户
|
|
|
+type Ermcp3RootUserAccount struct {
|
|
|
+ ROOTUSERID int64 `json:"rootuserid" xorm:"ROOTUSERID"` // 根用户ID
|
|
|
+ CANRECOMMEND int32 `json:"canrecommend" xorm:"CANRECOMMEND"` // 是否可推荐 - 0:不可 1;可
|
|
|
+ USERID int64 `json:"userid" xorm:"USERID"` // 用户ID
|
|
|
+ USERTYPE int32 `json:"usertype" xorm:"USERTYPE"` // 账户类型 - 1:交易所 2:机构 3:会员子机构 4:经纪人 5:投资者 6:客户 7:企业成员(云平台)
|
|
|
+ MODIFYSTATUS int32 `json:"modifystatus" xorm:"MODIFYSTATUS"` // 变更状态 1 未变更 2 变更中 3 变更待审核 4 变更待复核(投资者)
|
|
|
+ ACCOUNTNAME string `json:"accountname" xorm:"ACCOUNTNAME"` // 账户名称(机构名称)
|
|
|
+ PARENTUSERID int64 `json:"parentuserid" xorm:"PARENTUSERID"` // 所属机构ID
|
|
|
+ BROKER int64 `json:"broker" xorm:"BROKER"` // 所属经纪人ID
|
|
|
+ SUBAREALEVELPATH string `json:"subarealevelpath" xorm:"SUBAREALEVELPATH"` // 子机构层级路径(逗号分隔,首尾加逗号)
|
|
|
+ REFEREEUSERID int64 `json:"refereeuserid" xorm:"REFEREEUSERID"` // 推荐人ID
|
|
|
+ MEMBERUSERID int64 `json:"memberuserid" xorm:"MEMBERUSERID"` // 所属会员ID
|
|
|
+ ACCOUNTSTATUS int32 `json:"accountstatus" xorm:"ACCOUNTSTATUS"` // 账户状态 - 1:待激活 2:待审核 3:待复审 4:正常 5:审核拒绝 6:停用(注销) 7:注销(删除)
|
|
|
+ RECKONACCOUNTID int64 `json:"reckonaccountid" xorm:"RECKONACCOUNTID"` // 默认结算资金账号ID(机构分润使用) 作废
|
|
|
+ CREATETIME string `json:"createtime" xorm:"CREATETIME"` // 创建时间
|
|
|
+ CREATORID int64 `json:"creatorid" xorm:"CREATORID"` // 创建人
|
|
|
+ AUDITTIME string `json:"audittime" xorm:"AUDITTIME"` // 审核时间
|
|
|
+ AUDITUSERID int64 `json:"audituserid" xorm:"AUDITUSERID"` // 审核人
|
|
|
+ AUDITREMARK string `json:"auditremark" xorm:"AUDITREMARK"` // 审核备注
|
|
|
+ CANCELTIME string `json:"canceltime" xorm:"CANCELTIME"` // 销户时间
|
|
|
+ CANCELUSERID int64 `json:"canceluserid" xorm:"CANCELUSERID"` // 销户人
|
|
|
+ MODIFYTIME string `json:"modifytime" xorm:"MODIFYTIME"` // 修改时间
|
|
|
+ MODIFIERID int64 `json:"modifierid" xorm:"MODIFIERID"` // 修改人
|
|
|
+ MODIFYREMARK string `json:"modifyremark" xorm:"MODIFYREMARK"` // 变更备注
|
|
|
+ MAXINVESTORNUM int64 `json:"maxinvestornum" xorm:"MAXINVESTORNUM"` // 最大用户数(经纪会员下投资者个数)
|
|
|
+ HASAUTH int32 `json:"hasauth" xorm:"HASAUTH"` // 是否已实名认证 - 0:未认证 1:已认证 2:已提交(待审核) 3:已拒绝
|
|
|
+ REFERCOUNT int32 `json:"refercount" xorm:"REFERCOUNT"` // 推荐总人数
|
|
|
+ REFERNUM string `json:"refernum" xorm:"REFERNUM"` // 推荐码
|
|
|
+ ISANONYMOUS int32 `json:"isanonymous" xorm:"ISANONYMOUS"` // 是否匿名下单 - 0:否 1:是
|
|
|
+ PARENTTOPUSER string `json:"parenttopuser" xorm:"PARENTTOPUSER"` // 上级顶级机构 [092=0,1时,默认为1, 092=2时若自已为顶级,则填入自己,自己不为顶级,填入ParentUserID的"ParentTopUser"]
|
|
|
+ SUBACCOUNTLEVEL int32 `json:"subaccountlevel" xorm:"SUBACCOUNTLEVEL"` // 子账户层数
|
|
|
+ APPLYSRC int32 `json:"applysrc" xorm:"APPLYSRC"` // 申请来源 - 1:管理端 2:终端
|
|
|
+ AUDITSRC int32 `json:"auditsrc" xorm:"AUDITSRC"` // 审核来源 - 1:管理端 2:终端
|
|
|
+}
|
|
|
+
|
|
|
+func (r *Ermcp3RootUserAccount) calc() {
|
|
|
+
|
|
|
+}
|
|
|
+
|
|
|
+func (r *Ermcp3RootUserAccount) buildSql() string {
|
|
|
+ var sqlId utils.SQLVal = "SELECT t.ROOTUSERID," +
|
|
|
+ " t.CANRECOMMEND," +
|
|
|
+ " t.USERID," +
|
|
|
+ " t.USERTYPE," +
|
|
|
+ " t.MODIFYSTATUS," +
|
|
|
+ " t.ACCOUNTNAME," +
|
|
|
+ " t.PARENTUSERID," +
|
|
|
+ " t.BROKER," +
|
|
|
+ " t.SUBAREALEVELPATH," +
|
|
|
+ " t.REFEREEUSERID," +
|
|
|
+ " t.MEMBERUSERID," +
|
|
|
+ " t.ACCOUNTSTATUS," +
|
|
|
+ " t.RECKONACCOUNTID," +
|
|
|
+ " to_char(t.CREATETIME, 'yyyy-mm-dd hh24:mi:ss') CREATETIME," +
|
|
|
+ " t.CREATORID," +
|
|
|
+ " to_char(t.AUDITTIME, 'yyyy-mm-dd hh24:mi:ss') AUDITTIME," +
|
|
|
+ " t.AUDITUSERID," +
|
|
|
+ " t.AUDITREMARK," +
|
|
|
+ " to_char(t.CANCELTIME, 'yyyy-mm-dd hh24:mi:ss') CANCELTIME," +
|
|
|
+ " t.CANCELUSERID," +
|
|
|
+ " to_char(t.MODIFYTIME, 'yyyy-mm-dd hh24:mi:ss') MODIFYTIME," +
|
|
|
+ " t.MODIFIERID," +
|
|
|
+ " t.MODIFYREMARK," +
|
|
|
+ " t.MAXINVESTORNUM," +
|
|
|
+ " t.HASAUTH," +
|
|
|
+ " t.REFERCOUNT," +
|
|
|
+ " t.REFERNUM," +
|
|
|
+ " t.ISANONYMOUS," +
|
|
|
+ " t.PARENTTOPUSER," +
|
|
|
+ " t.SUBACCOUNTLEVEL," +
|
|
|
+ " t.APPLYSRC," +
|
|
|
+ " t.AUDITSRC" +
|
|
|
+ " FROM USERACCOUNT t" +
|
|
|
+ " WHERE 1 = 1 and t.userid in(select rootuserid from useraccount where userid=%v)"
|
|
|
+ sqlId.FormatParam(r.USERID)
|
|
|
+ return sqlId.String()
|
|
|
+}
|
|
|
+
|
|
|
+// GetDataEx 获取顶级用户
|
|
|
+func (r *Ermcp3RootUserAccount) GetDataEx() (interface{}, error) {
|
|
|
+ sData := make([]Ermcp3RootUserAccount, 0)
|
|
|
+ err := db.GetEngine().SQL(r.buildSql()).Find(&sData)
|
|
|
+ for i := range sData {
|
|
|
+ sData[i].calc()
|
|
|
+ }
|
|
|
+ return sData, err
|
|
|
+}
|