|
|
@@ -780,8 +780,8 @@ func (r *QhjBankInfo) buildSql() string {
|
|
|
return sqlId.String()
|
|
|
}
|
|
|
|
|
|
-// GetDataEx 获取银行信息列表
|
|
|
-func (r *QhjBankInfo) GetDataEx() (interface{}, error) {
|
|
|
+// GetData 获取银行信息列表
|
|
|
+func (r *QhjBankInfo) GetData() ([]QhjBankInfo, error) {
|
|
|
sData := make([]QhjBankInfo, 0)
|
|
|
err := db.GetEngine().SQL(r.buildSql()).Find(&sData)
|
|
|
for i := range sData {
|
|
|
@@ -790,6 +790,11 @@ func (r *QhjBankInfo) GetDataEx() (interface{}, error) {
|
|
|
return sData, err
|
|
|
}
|
|
|
|
|
|
+// GetDataEx 获取银行信息列表
|
|
|
+func (r *QhjBankInfo) GetDataEx() (interface{}, error) {
|
|
|
+ return r.GetData()
|
|
|
+}
|
|
|
+
|
|
|
// QhjReckonPriceLog 结算价(定投价)
|
|
|
type QhjReckonPriceLog struct {
|
|
|
LASTRECKONPRICE float64 `json:"lastreckonprice" xorm:"LASTRECKONPRICE"` // 上日结算价
|
|
|
@@ -849,3 +854,392 @@ func (r *QhjReckonPriceLog) GetDataEx() (interface{}, error) {
|
|
|
}
|
|
|
return sData, err
|
|
|
}
|
|
|
+
|
|
|
+// QhjCustomer 客户资料
|
|
|
+type QhjCustomer struct {
|
|
|
+ USERID int64 `json:"userid" xorm:"'USERID'"` // 用户ID
|
|
|
+ MEMBERUSERID int64 `json:"memberuserid" xorm:"'MEMBERUSERID'"` // 所属机构ID(所属会员)
|
|
|
+ PARENTUSERID int64 `json:"parentuserid" xorm:"'PARENTUSERID'"` // 上级机构(所属机构)
|
|
|
+ USERINFOTYPE int32 `json:"userinfotype" xorm:"'USERINFOTYPE'"` // 客户类型 1-个人 2-企业
|
|
|
+ CUSTOMERNAME string `json:"customername" xorm:"'CUSTOMERNAME'"` // 客户名称
|
|
|
+ CARDTYPE int32 `json:"cardtype" xorm:"'CARDTYPE'"` // 证件类型
|
|
|
+ CARDNUM string `json:"cardnum" xorm:"'CARDNUM'"` // 证件号码
|
|
|
+ MOBILE string `json:"mobile" xorm:"'MOBILE'"` // 手机号码
|
|
|
+ TELPHONE string `json:"telphone" xorm:"'TELPHONE'"` // 联系电话
|
|
|
+ ADDRESS string `json:"address" xorm:"'ADDRESS'"` // 通讯地址
|
|
|
+ REMARK string `json:"remark" xorm:"'REMARK'"` // 备注
|
|
|
+ STATUS int32 `json:"status" xorm:"'STATUS'"` // 账户状态 - 1:待激活 2:待审核 3:待复审 4:正常 5:审核拒绝 6:注销
|
|
|
+ STATUSDESC string `json:"statusdesc"` // 账户状态中文描述
|
|
|
+ ATTACHMENT1 string `json:"attachment1" xorm:"'ATTACHMENT1'"` // 附件1
|
|
|
+ CARDFRONTPHOTOURL string `json:"cardfrontphotourl" xorm:"'CARDFRONTPHOTOURL'"` // 证件正面图片地址
|
|
|
+ CARDBACKPHOTOURL string `json:"cardbackphotourl" xorm:"'CARDBACKPHOTOURL'"` // 证件反面图片地址
|
|
|
+ COUNTRYID int32 `json:"countryid" xorm:"'COUNTRYID'"` // 国家
|
|
|
+ PROVINCEID int32 `json:"provinceid" xorm:"'PROVINCEID'"` // 省
|
|
|
+ CITYID int32 `json:"cityid" xorm:"'CITYID'"` // 市
|
|
|
+ DISTRICTID int32 `json:"districtid" xorm:"'DISTRICTID'"` // 区域
|
|
|
+ CREATETIME string `json:"createtime" xorm:"'CREATETIME'"` // 创建时间
|
|
|
+ MODIFYTIME string `json:"modifytime" xorm:"'MODIFYTIME'"` // 修改时间
|
|
|
+ AUDITTIME string `json:"audittime" xorm:"'AUDITTIME'"` // 审核时间
|
|
|
+ NICKNAME string `json:"nickname" xorm:"'NICKNAME'"` // 昵称
|
|
|
+ TAXPAYERNUM string `json:"taxpayernum" xorm:"'taxpayernum'"` // 纳税人识别号
|
|
|
+ LEGALPERSONNAME string `json:"legalpersonname" xorm:"'legalpersonname'"` // 法人姓名(企业)
|
|
|
+ CONTACTNAME string `json:"contactname" xorm:"'contactname'"` // 联系人
|
|
|
+ EMAIL string `json:"email" xorm:"'EMAIL'"` // 邮件
|
|
|
+
|
|
|
+ COUNTRYNAME string `json:"countryname"` // 国家名称
|
|
|
+ CITYNAME string `json:"cityname"` // 城市名称
|
|
|
+ PROVINCENAME string `json:"provincename"` // 省名称
|
|
|
+ DISTRICTNAME string `json:"districtname"` // 地区名称
|
|
|
+ CARDTYPENAME string `json:"cardtypename"` // 证件类型名称
|
|
|
+ MEMBERUSERNAME string `json:"memberusername"` // 所属会员名称
|
|
|
+ USERNAME string `json:"username"` // 用户名称
|
|
|
+ PARENTUSERNAME string `json:"parentusername"` //所属机构名称
|
|
|
+
|
|
|
+ QUERYTYPE int32 `json:"-"` // 查询类型(1:未提交(网上开户表) 2:待审核(网上开户表) 3:正常 4:停用)
|
|
|
+ IncludeSub int32 `json:"-"` // 包子机构客户 1-包含
|
|
|
+}
|
|
|
+
|
|
|
+func (r *QhjCustomer) calc() {
|
|
|
+ r.MEMBERUSERNAME = mtpcache.GetUserNameByUserId(r.MEMBERUSERID)
|
|
|
+ r.USERNAME = mtpcache.GetUserNameByUserId(r.USERID)
|
|
|
+ r.PARENTUSERNAME = mtpcache.GetUserNameByUserId(r.PARENTUSERID)
|
|
|
+ r.COUNTRYNAME = mtpcache.GetDivisionName(r.COUNTRYID)
|
|
|
+ r.CITYNAME = mtpcache.GetDivisionName(r.CITYID)
|
|
|
+ r.PROVINCENAME = mtpcache.GetDivisionName(r.PROVINCEID)
|
|
|
+ r.DISTRICTNAME = mtpcache.GetDivisionName(r.DISTRICTID)
|
|
|
+}
|
|
|
+
|
|
|
+func (r *QhjCustomer) level() int32 {
|
|
|
+ if r.IncludeSub > 0 {
|
|
|
+ // 层级, 最多20层
|
|
|
+ return 20
|
|
|
+ }
|
|
|
+ return 1
|
|
|
+}
|
|
|
+
|
|
|
+func (r *QhjCustomer) buildSql() string {
|
|
|
+ if r.QUERYTYPE == 1 || r.QUERYTYPE == 2 {
|
|
|
+ return r.buildSqlWskh()
|
|
|
+ }
|
|
|
+ return r.buildSqlNormal()
|
|
|
+}
|
|
|
+
|
|
|
+func (r *QhjCustomer) buildSqlWskh() string {
|
|
|
+ var sqlId utils.SQLVal = "with tmp as" +
|
|
|
+ " (select t.userid, wm_concat(t.logincode) logincode" +
|
|
|
+ " from loginaccount t" +
|
|
|
+ " group by t.userid)" +
|
|
|
+ "select a.*, k.logincode" +
|
|
|
+ " from (select t.userid," +
|
|
|
+ " t.memberareaid MEMBERUSERID," +
|
|
|
+ " t.USERINFOTYPE," +
|
|
|
+ " t.CUSTOMERNAME," +
|
|
|
+ " t.NICKNAME," +
|
|
|
+ " t.CARDTYPE," +
|
|
|
+ " t.CARDNUM," +
|
|
|
+ " t.mobilephone MOBILE," +
|
|
|
+ " t.TELPHONE," +
|
|
|
+ " t.cardaddress ADDRESS," +
|
|
|
+ " t.REMARK," +
|
|
|
+ " t.ATTACHMENT1," +
|
|
|
+ " t.CARDFRONTPHOTOURL," +
|
|
|
+ " t.CARDBACKPHOTOURL," +
|
|
|
+ " t.userstate status," +
|
|
|
+ " t.countryid," +
|
|
|
+ " t.provinceid," +
|
|
|
+ " t.districtid," +
|
|
|
+ " to_char(t.createtime, 'yyyy-mm-dd hh24:mi:ss') createtime," +
|
|
|
+ " t.cityid," +
|
|
|
+ " to_char(t.modifiedtime, 'yyyy-mm-dd hh24:mi:ss') modifytime," +
|
|
|
+ " to_char(t.auditime, 'yyyy-mm-dd hh24:mi:ss') audittime," +
|
|
|
+ " t.taxpayernum," +
|
|
|
+ " t.legalpersonname," +
|
|
|
+ " t.contactname," +
|
|
|
+ " t.email," +
|
|
|
+ " t.areaid parentuserid" +
|
|
|
+ " from wskh_userinfo t" +
|
|
|
+ " start with t.areaid = %v" +
|
|
|
+ " connect by prior t.userid = t.areaid" +
|
|
|
+ " and t.usertype = 6" +
|
|
|
+ " and level <= %v) a" +
|
|
|
+ " left join tmp k" +
|
|
|
+ " on a.userid = k.userid" +
|
|
|
+ " where 1 = 1 and a.status in(%v)"
|
|
|
+ status := DecodeStr(r.QUERYTYPE == 1, "1", "2,4,5")
|
|
|
+ sqlId.FormatParam(r.USERID, r.level(), status)
|
|
|
+ sqlId.AndEx("a.USERINFOTYPE", r.USERINFOTYPE, r.USERINFOTYPE > 0)
|
|
|
+ sqlId.JoinEx(len(r.CUSTOMERNAME) > 0, fmt.Sprintf(` and a.customername like '%%%v%%'`, r.CUSTOMERNAME))
|
|
|
+ sqlId.JoinEx(len(r.NICKNAME) > 0, fmt.Sprintf(` and a.nickname like '%%%v%%'`, r.NICKNAME))
|
|
|
+ return sqlId.String()
|
|
|
+}
|
|
|
+
|
|
|
+func (r *QhjCustomer) buildSqlNormal() string {
|
|
|
+ var sqlId utils.SQLVal = "with tmp as" +
|
|
|
+ " (select t.userid, wm_concat(t.logincode) logincode" +
|
|
|
+ " from loginaccount t" +
|
|
|
+ " group by t.userid)" +
|
|
|
+ "select a.*," +
|
|
|
+ " k.logincode," +
|
|
|
+ " u.USERINFOTYPE," +
|
|
|
+ " u.CUSTOMERNAME," +
|
|
|
+ " u.NICKNAME," +
|
|
|
+ " u.CARDTYPEID CARDTYPE," +
|
|
|
+ " u.CARDNUM," +
|
|
|
+ " u.MOBILE," +
|
|
|
+ " u.TELPHONE," +
|
|
|
+ " u.ADDRESS," +
|
|
|
+ " u.REMARK," +
|
|
|
+ " u.ATTACHMENT1," +
|
|
|
+ " u.CARDFRONTPHOTOURL," +
|
|
|
+ " u.CARDBACKPHOTOURL," +
|
|
|
+ " u.countryid," +
|
|
|
+ " u.provinceid," +
|
|
|
+ " u.districtid," +
|
|
|
+ " u.taxpayernum," +
|
|
|
+ " u.legalpersonname," +
|
|
|
+ " u.contactname," +
|
|
|
+ " u.email," +
|
|
|
+ " u.cityid" +
|
|
|
+ " from (select t.userid," +
|
|
|
+ " t.usertype," +
|
|
|
+ " t.parentuserid," +
|
|
|
+ " t.memberuserid," +
|
|
|
+ " t.accountstatus status," +
|
|
|
+ " to_char(t.createtime, 'yyyy-mm-dd hh24:mi:ss') createtime," +
|
|
|
+ " to_char(t.modifytime, 'yyyy-mm-dd hh24:mi:ss') modifytime," +
|
|
|
+ " to_char(t.audittime, 'yyyy-mm-dd hh24:mi:ss') audittime" +
|
|
|
+ " from useraccount t" +
|
|
|
+ " start with t.usertype=6 and t.parentuserid = %v" +
|
|
|
+ " connect by prior t.userid = t.parentuserid" +
|
|
|
+ " and t.usertype = 6" +
|
|
|
+ " and level <= %v) a" +
|
|
|
+ " left join tmp k" +
|
|
|
+ " on a.userid = k.userid" +
|
|
|
+ " left join userinfo u" +
|
|
|
+ " on a.userid = u.userid" +
|
|
|
+ " where 1=1 and a.status in(%v)"
|
|
|
+ status := DecodeStr(r.QUERYTYPE == 3, "4", "6")
|
|
|
+ sqlId.FormatParam(r.USERID, r.level(), status)
|
|
|
+ sqlId.AndEx("u.USERINFOTYPE", r.USERINFOTYPE, r.USERINFOTYPE > 0)
|
|
|
+ sqlId.JoinEx(len(r.CUSTOMERNAME) > 0, fmt.Sprintf(` and u.customername like '%%%v%%'`, r.CUSTOMERNAME))
|
|
|
+ sqlId.JoinEx(len(r.NICKNAME) > 0, fmt.Sprintf(` and u.nickname like '%%%v%%'`, r.NICKNAME))
|
|
|
+ return sqlId.String()
|
|
|
+}
|
|
|
+
|
|
|
+// GetDataEx 获取客户资料
|
|
|
+func (r *QhjCustomer) GetDataEx() (interface{}, error) {
|
|
|
+ sData := make([]QhjCustomer, 0)
|
|
|
+ err := db.GetEngine().SQL(r.buildSql()).Find(&sData)
|
|
|
+ for i := range sData {
|
|
|
+ sData[i].calc()
|
|
|
+ }
|
|
|
+ return sData, err
|
|
|
+}
|
|
|
+
|
|
|
+// QhjCusBankInfo 托管银行信息
|
|
|
+type QhjCusBankInfo struct {
|
|
|
+ CUSBANKID string `json:"cusbankid" xorm:"CUSBANKID"` // 托管银行编号(对应清算中心TRAN_NO)
|
|
|
+ CUSBANKNAME string `json:"cusbankname" xorm:"CUSBANKNAME"` // 银行业务名称
|
|
|
+ CUSBANKSHORTNAME string `json:"cusbankshortname" xorm:"CUSBANKSHORTNAME"` // 银行业务简称
|
|
|
+ EXCHBANKID string `json:"exchbankid" xorm:"EXCHBANKID"` // 交易所开户银行ID
|
|
|
+ EXCHPAYBANKACCNO string `json:"exchpaybankaccno" xorm:"EXCHPAYBANKACCNO"` // 交易所支出结算账户
|
|
|
+ EXCHPAYBANKACCNAME string `json:"exchpaybankaccname" xorm:"EXCHPAYBANKACCNAME"` // 交易所支出结算账户户名
|
|
|
+ CURRENCY string `json:"currency" xorm:"CURRENCY"` // 币种
|
|
|
+ CANSIGN int32 `json:"cansign" xorm:"CANSIGN"` // 是否可签约 - 0:不可 1:可以
|
|
|
+ CANRELEASE int32 `json:"canrelease" xorm:"CANRELEASE"` // 是否可解约 - 0:不可 1:可以
|
|
|
+ CANINAMOUNT int32 `json:"caninamount" xorm:"CANINAMOUNT"` // 是否可入金 - 0:不可 1:可以
|
|
|
+ CANOUTAMOUNT int32 `json:"canoutamount" xorm:"CANOUTAMOUNT"` // 是否可出金 - 0:不可 1:可以
|
|
|
+ RISKINFO string `json:"riskinfo" xorm:"RISKINFO"` // 签约风险提示书
|
|
|
+ CANSIGN2 int32 `json:"cansign2" xorm:"CANSIGN2"` // 是否可签约(网银端) - 0:不可 1:可以
|
|
|
+ CANRELEASE2 int32 `json:"canrelease2" xorm:"CANRELEASE2"` // 是否可解约(网银端) - 0:不可 1:可以
|
|
|
+ CANINAMOUNT2 int32 `json:"caninamount2" xorm:"CANINAMOUNT2"` // 是否可入金(网银端) - 0:不可 1:可以
|
|
|
+ CANOUTAMOUNT2 int32 `json:"canoutamount2" xorm:"CANOUTAMOUNT2"` // 是否可出金(网银端) - 0:不可 1:可以
|
|
|
+ CANBINDCARD int32 `json:"canbindcard" xorm:"CANBINDCARD"` // 是否可绑卡与解卡 - 0:不可 1:可以
|
|
|
+ ISNEEDCLEAR int32 `json:"isneedclear" xorm:"ISNEEDCLEAR"` // 是否需要清算 - 0:不需要 1:需要
|
|
|
+ CANMODIFYPHONE int32 `json:"canmodifyphone" xorm:"CANMODIFYPHONE"` // 是否可修改手机号 - 0:不可 1:可以
|
|
|
+ CANMODIFYSIGNINFO int32 `json:"canmodifysigninfo" xorm:"CANMODIFYSIGNINFO"` // 是否可修改签约信息 - 0:不可 1:可以
|
|
|
+ ISNEEDCHECK int32 `json:"isneedcheck" xorm:"ISNEEDCHECK"` // 是否需要对账 - 0:需要 1:不需要 [不需要界面配置]
|
|
|
+ CANMODIFYBANKCARD int32 `json:"canmodifybankcard" xorm:"CANMODIFYBANKCARD"` // 是否可修改银行卡号 - 0:不可 1:可以
|
|
|
+ CANALLOT int32 `json:"canallot" xorm:"CANALLOT"` // 是否支持跨行调拨 - 0:不支持 1:支持
|
|
|
+ CANALLOTQUERY int32 `json:"canallotquery" xorm:"CANALLOTQUERY"` // 是否支持跨行调拨查询 - 0:不支持 1:支持
|
|
|
+}
|
|
|
+
|
|
|
+func (r *QhjCusBankInfo) calc() {
|
|
|
+
|
|
|
+}
|
|
|
+
|
|
|
+func (r *QhjCusBankInfo) buildSql() string {
|
|
|
+ var sqlId utils.SQLVal = "SELECT t.CUSBANKID," +
|
|
|
+ " t.CUSBANKNAME," +
|
|
|
+ " t.CUSBANKSHORTNAME," +
|
|
|
+ " t.EXCHBANKID," +
|
|
|
+ " t.EXCHPAYBANKACCNO," +
|
|
|
+ " t.EXCHPAYBANKACCNAME," +
|
|
|
+ " t.CURRENCY," +
|
|
|
+ " t.CANSIGN," +
|
|
|
+ " t.CANRELEASE," +
|
|
|
+ " t.CANINAMOUNT," +
|
|
|
+ " t.CANOUTAMOUNT," +
|
|
|
+ " to_char(t.RISKINFO) RISKINFO," +
|
|
|
+ " t.CANSIGN2," +
|
|
|
+ " t.CANRELEASE2," +
|
|
|
+ " t.CANINAMOUNT2," +
|
|
|
+ " t.CANOUTAMOUNT2," +
|
|
|
+ " t.CANBINDCARD," +
|
|
|
+ " t.ISNEEDCLEAR," +
|
|
|
+ " t.CANMODIFYPHONE," +
|
|
|
+ " t.CANMODIFYSIGNINFO," +
|
|
|
+ " t.ISNEEDCHECK," +
|
|
|
+ " t.CANMODIFYBANKCARD," +
|
|
|
+ " t.CANALLOT," +
|
|
|
+ " t.CANALLOTQUERY" +
|
|
|
+ " FROM BANK_CUSBANKINFO t" +
|
|
|
+ " WHERE 1 = 1"
|
|
|
+ return sqlId.String()
|
|
|
+}
|
|
|
+
|
|
|
+// GetData 获取托管银行信息
|
|
|
+func (r *QhjCusBankInfo) GetData() ([]QhjCusBankInfo, error) {
|
|
|
+ sData := make([]QhjCusBankInfo, 0)
|
|
|
+ err := db.GetEngine().SQL(r.buildSql()).Find(&sData)
|
|
|
+ for i := range sData {
|
|
|
+ sData[i].calc()
|
|
|
+ }
|
|
|
+ return sData, err
|
|
|
+}
|
|
|
+
|
|
|
+// GetDataEx 获取托管银行信息
|
|
|
+func (r *QhjCusBankInfo) GetDataEx() (interface{}, error) {
|
|
|
+ return r.GetData()
|
|
|
+}
|
|
|
+
|
|
|
+// QhjCusBankSignBank 托管银行签约关系
|
|
|
+type QhjCusBankSignBank struct {
|
|
|
+ CUSBANKID string `json:"cusbankid" xorm:"CUSBANKID"` // 托管银行ID
|
|
|
+ BANKID string `json:"bankid" xorm:"BANKID"` // 银行ID
|
|
|
+}
|
|
|
+
|
|
|
+func (r *QhjCusBankSignBank) calc() {
|
|
|
+
|
|
|
+}
|
|
|
+
|
|
|
+func (r *QhjCusBankSignBank) buildSql() string {
|
|
|
+ var sqlId utils.SQLVal = "select * from bank_cusbanksignbank"
|
|
|
+ return sqlId.String()
|
|
|
+}
|
|
|
+
|
|
|
+// GetData 获取托管银行签约关系
|
|
|
+func (r *QhjCusBankSignBank) GetData() ([]QhjCusBankSignBank, error) {
|
|
|
+ sData := make([]QhjCusBankSignBank, 0)
|
|
|
+ err := db.GetEngine().SQL(r.buildSql()).Find(&sData)
|
|
|
+ for i := range sData {
|
|
|
+ sData[i].calc()
|
|
|
+ }
|
|
|
+ return sData, err
|
|
|
+}
|
|
|
+
|
|
|
+// GetDataEx 获取托管银行签约关系
|
|
|
+func (r *QhjCusBankSignBank) GetDataEx() (interface{}, error) {
|
|
|
+ return r.GetData()
|
|
|
+}
|
|
|
+
|
|
|
+// QhjCusBankSignBankEx 托管银行签约银行详细
|
|
|
+type QhjCusBankSignBankEx struct {
|
|
|
+ QhjCusBankInfo
|
|
|
+ Banklst []QhjBankInfo // 银行列表
|
|
|
+}
|
|
|
+
|
|
|
+// GetDataEx 获取托管银行签约银行详细
|
|
|
+func (r *QhjCusBankSignBankEx) GetDataEx() (interface{}, error) {
|
|
|
+ sData := make([]QhjCusBankSignBankEx, 0)
|
|
|
+ a := QhjCusBankSignBank{}
|
|
|
+ relateData, _ := a.GetData()
|
|
|
+ if len(relateData) == 0 {
|
|
|
+ return sData, nil
|
|
|
+ }
|
|
|
+ b := QhjCusBankInfo{}
|
|
|
+ bData, _ := b.GetData()
|
|
|
+ c := QhjBankInfo{}
|
|
|
+ cData, _ := c.GetData()
|
|
|
+ for _, vb := range bData {
|
|
|
+ // 托管银行
|
|
|
+ v := QhjCusBankSignBankEx{QhjCusBankInfo: vb, Banklst: make([]QhjBankInfo, 0)}
|
|
|
+ for _, vr := range relateData {
|
|
|
+ // 托管关系
|
|
|
+ if vb.CUSBANKID == vr.CUSBANKID {
|
|
|
+ for _, vc := range cData {
|
|
|
+ if vc.BANKID == vr.BANKID {
|
|
|
+ v.Banklst = append(v.Banklst, vc)
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if len(v.Banklst) > 0 {
|
|
|
+ sData = append(sData, v)
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return sData, nil
|
|
|
+}
|
|
|
+
|
|
|
+// QhjSiteColumnDetail 资讯
|
|
|
+type QhjSiteColumnDetail struct {
|
|
|
+ ID int64 `json:"id" xorm:"ID"` // ID(SEQ_SITE_COLUMNDETAIL)
|
|
|
+ COLUMNID int64 `json:"columnid" xorm:"COLUMNID"` // 所属栏目
|
|
|
+ USERID int64 `json:"userid" xorm:"USERID"` // 用户ID(默认为0, 核心为为机构用户ID)
|
|
|
+ TITLE string `json:"title" xorm:"TITLE"` // 标题
|
|
|
+ COVERIMAGE string `json:"coverimage" xorm:"COVERIMAGE"` // 封面图片
|
|
|
+ AUTHOR string `json:"author" xorm:"AUTHOR"` // 作者
|
|
|
+ BRIEF string `json:"brief" xorm:"BRIEF"` // 简介
|
|
|
+ CONTEXT string `json:"context" xorm:"CONTEXT"` // 内容
|
|
|
+ STATUS int32 `json:"status" xorm:"STATUS"` // 状态 - 1:暂存 10:待审核 20:审核通过 30:审核拒绝
|
|
|
+ ISTOP int32 `json:"istop" xorm:"ISTOP"` // 是否置顶 - 0:不置 1:置顶
|
|
|
+ HITS int64 `json:"hits" xorm:"HITS"` // 点击数
|
|
|
+ PUBLISHDATE string `json:"publishdate" xorm:"PUBLISHDATE"` // 发布日期
|
|
|
+ CREAEDATE string `json:"creaedate" xorm:"CREAEDATE"` // 创建时间
|
|
|
+ CREATORID int64 `json:"creatorid" xorm:"CREATORID"` // 创建人
|
|
|
+ UPDATEDATE string `json:"updatedate" xorm:"UPDATEDATE"` // 修改时间
|
|
|
+ MODIFIERID int64 `json:"modifierid" xorm:"MODIFIERID"` // 操作人
|
|
|
+ ISSHOW int32 `json:"isshow" xorm:"ISSHOW"` // 是否展示 - 0:不展示 1:展示
|
|
|
+
|
|
|
+ USERNAME string `json:"username"` // 用户名称
|
|
|
+}
|
|
|
+
|
|
|
+func (r *QhjSiteColumnDetail) calc() {
|
|
|
+ if r.USERID > 0 {
|
|
|
+ r.USERNAME = mtpcache.GetUserNameByUserId(r.USERID)
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+func (r *QhjSiteColumnDetail) buildSql() string {
|
|
|
+ var sqlId utils.SQLVal = "SELECT t.ID," +
|
|
|
+ " t.COLUMNID," +
|
|
|
+ " t.USERID," +
|
|
|
+ " t.TITLE," +
|
|
|
+ " t.COVERIMAGE," +
|
|
|
+ " t.AUTHOR," +
|
|
|
+ " t.BRIEF," +
|
|
|
+ " to_char(t.CONTEXT) CONTEXT," +
|
|
|
+ " t.STATUS," +
|
|
|
+ " t.ISTOP," +
|
|
|
+ " t.HITS," +
|
|
|
+ " to_char(t.PUBLISHDATE, 'yyyy-mm-dd hh24:mi:ss') PUBLISHDATE," +
|
|
|
+ " to_char(t.CREAEDATE, 'yyyy-mm-dd hh24:mi:ss') CREAEDATE," +
|
|
|
+ " t.CREATORID," +
|
|
|
+ " to_char(t.UPDATEDATE, 'yyyy-mm-dd hh24:mi:ss') UPDATEDATE," +
|
|
|
+ " t.MODIFIERID," +
|
|
|
+ " t.ISSHOW" +
|
|
|
+ " FROM SITE_COLUMNDETAIL t" +
|
|
|
+ " WHERE 1 = 1"
|
|
|
+ sqlId.And("t.USERID", r.USERID)
|
|
|
+ return sqlId.String()
|
|
|
+}
|
|
|
+
|
|
|
+// GetDataEx 获取资讯
|
|
|
+func (r *QhjSiteColumnDetail) GetDataEx() (interface{}, error) {
|
|
|
+ sData := make([]QhjSiteColumnDetail, 0)
|
|
|
+ err := db.GetEngine().SQL(r.buildSql()).Find(&sData)
|
|
|
+ for i := range sData {
|
|
|
+ sData[i].calc()
|
|
|
+ }
|
|
|
+ return sData, err
|
|
|
+}
|