Parcourir la source

1.融资明细增加风险级别和追缴金额字段
2.查客户资料解密相关字段

zou.yingbin il y a 4 ans
Parent
commit
2b8120e719
5 fichiers modifiés avec 64 ajouts et 18 suppressions
  1. 8 0
      docs/docs.go
  2. 8 0
      docs/swagger.json
  3. 6 0
      docs/swagger.yaml
  4. 5 0
      models/ermcpCommon.go
  5. 37 18
      models/qhj.go

+ 8 - 0
docs/docs.go

@@ -21993,6 +21993,10 @@ var doc = `{
                     "description": "合同确认时间(时间)",
                     "type": "string"
                 },
+                "currisklevel": {
+                    "description": "风险级别 - 1:正常 2:追加货款 3:支付尾款",
+                    "type": "integer"
+                },
                 "enumdicname": {
                     "description": "单位名称",
                     "type": "string"
@@ -22029,6 +22033,10 @@ var doc = `{
                     "description": "已付(已付货款)",
                     "type": "number"
                 },
+                "reckonrecovermargin": {
+                    "description": "结算应追缴保底金(结算时到过风险率时临时存储) - [仓单回购\\仓单质押]",
+                    "type": "number"
+                },
                 "recoveredmargin": {
                     "description": "已追缴保证金",
                     "type": "number"

+ 8 - 0
docs/swagger.json

@@ -21977,6 +21977,10 @@
                     "description": "合同确认时间(时间)",
                     "type": "string"
                 },
+                "currisklevel": {
+                    "description": "风险级别 - 1:正常 2:追加货款 3:支付尾款",
+                    "type": "integer"
+                },
                 "enumdicname": {
                     "description": "单位名称",
                     "type": "string"
@@ -22013,6 +22017,10 @@
                     "description": "已付(已付货款)",
                     "type": "number"
                 },
+                "reckonrecovermargin": {
+                    "description": "结算应追缴保底金(结算时到过风险率时临时存储) - [仓单回购\\仓单质押]",
+                    "type": "number"
+                },
                 "recoveredmargin": {
                     "description": "已追缴保证金",
                     "type": "number"

+ 6 - 0
docs/swagger.yaml

@@ -9525,6 +9525,9 @@ definitions:
       contractconfirmtime:
         description: 合同确认时间(时间)
         type: string
+      currisklevel:
+        description: 风险级别 - 1:正常 2:追加货款 3:支付尾款
+        type: integer
       enumdicname:
         description: 单位名称
         type: string
@@ -9552,6 +9555,9 @@ definitions:
       payamount:
         description: 已付(已付货款)
         type: number
+      reckonrecovermargin:
+        description: 结算应追缴保底金(结算时到过风险率时临时存储) - [仓单回购\仓单质押]
+        type: number
       recoveredmargin:
         description: 已追缴保证金
         type: number

+ 5 - 0
models/ermcpCommon.go

@@ -23,6 +23,11 @@ type IErmcp interface {
 
 // DecryptField 解密字段
 func DecryptField(oriStr string) string {
+	nLen := len(oriStr)
+	if nLen < 32 && nLen%2 != 0 {
+		// 非加密字符串
+		return oriStr
+	}
 	key := "0d299ce2d4105282f7471074cb0f9f9d"
 	key2, _ := hex.DecodeString(key)
 	if oriStr == "" {

+ 37 - 18
models/qhj.go

@@ -18,22 +18,24 @@ import (
 
 // QhjContract 千海金融资明细(合同)
 type QhjContract struct {
-	USERID              int64   `json:"userid"  xorm:"USERID"`                           // 用户ID
-	SCFCONTRACTID       int64   `json:"scfcontractid"  xorm:"SCFCONTRACTID"`             // SCF合同ID(310+Unix秒时间戳(10位)+xxxxxx)
-	SCFCONTRACTTYPE     int32   `json:"scfcontracttype"  xorm:"SCFCONTRACTTYPE"`         // 合同类型 - 1:仓单回购 2:仓单质押 3:合作套保 4:资金贷款 5:融资单
-	GOODSID             int32   `json:"goodsid"  xorm:"GOODSID"`                         // 商品ID [5:融资单]
-	CONTRACTCONFIRMTIME string  `json:"contractconfirmtime"  xorm:"CONTRACTCONFIRMTIME"` // 合同确认时间(时间)
-	WRQTY               int32   `json:"wrqty"  xorm:"WRQTY"`                             // 仓单数量(数量)
-	TRADEPRICE          float64 `json:"tradeprice"  xorm:"TRADEPRICE"`                   // 成交价格(成本价格)
-	LENDERAMOUNT        float64 `json:"lenderamount"  xorm:"LENDERAMOUNT"`               // 贷款金额(总额|订单总额)
-	MARGINRATIO         float64 `json:"marginratio"  xorm:"MARGINRATIO"`                 // 保证金比率(首付比例)
-	INITMARGIN          float64 `json:"initmargin"  xorm:"'INITMARGIN'"`                 // 初始保证金(首付款)
-	RECOVEREDMARGIN     float64 `json:"recoveredmargin"  xorm:"'RECOVEREDMARGIN'"`       // 已追缴保证金
-	REMAINAMOUNT        float64 `json:"remainamount"  xorm:"'REMAINAMOUNT'"`             // 合同剩余金额(融资额)
-	TOTALINTEREST       float64 `json:"totalinterest"  xorm:"'TOTALINTEREST'"`           // 已计总利息(利息)
-	GOODSCODE           string  `json:"goodscode"  xorm:"'GOODSCODE'"`                   // 商品代码
-	GOODSNAME           string  `json:"goodsname"  xorm:"'GOODSNAME'"`                   // 商品名称
-	GOODUNITID          int32   `json:"goodunitid"  xorm:"'GOODUNITID'"`                 // 商品单位id
+	USERID              int64   `json:"userid"  xorm:"USERID"`                             // 用户ID
+	SCFCONTRACTID       int64   `json:"scfcontractid"  xorm:"SCFCONTRACTID"`               // SCF合同ID(310+Unix秒时间戳(10位)+xxxxxx)
+	SCFCONTRACTTYPE     int32   `json:"scfcontracttype"  xorm:"SCFCONTRACTTYPE"`           // 合同类型 - 1:仓单回购 2:仓单质押 3:合作套保 4:资金贷款 5:融资单
+	GOODSID             int32   `json:"goodsid"  xorm:"GOODSID"`                           // 商品ID [5:融资单]
+	CONTRACTCONFIRMTIME string  `json:"contractconfirmtime"  xorm:"CONTRACTCONFIRMTIME"`   // 合同确认时间(时间)
+	WRQTY               int32   `json:"wrqty"  xorm:"WRQTY"`                               // 仓单数量(数量)
+	TRADEPRICE          float64 `json:"tradeprice"  xorm:"TRADEPRICE"`                     // 成交价格(成本价格)
+	LENDERAMOUNT        float64 `json:"lenderamount"  xorm:"LENDERAMOUNT"`                 // 贷款金额(总额|订单总额)
+	MARGINRATIO         float64 `json:"marginratio"  xorm:"MARGINRATIO"`                   // 保证金比率(首付比例)
+	INITMARGIN          float64 `json:"initmargin"  xorm:"'INITMARGIN'"`                   // 初始保证金(首付款)
+	RECOVEREDMARGIN     float64 `json:"recoveredmargin"  xorm:"'RECOVEREDMARGIN'"`         // 已追缴保证金
+	REMAINAMOUNT        float64 `json:"remainamount"  xorm:"'REMAINAMOUNT'"`               // 合同剩余金额(融资额)
+	TOTALINTEREST       float64 `json:"totalinterest"  xorm:"'TOTALINTEREST'"`             // 已计总利息(利息)
+	GOODSCODE           string  `json:"goodscode"  xorm:"'GOODSCODE'"`                     // 商品代码
+	GOODSNAME           string  `json:"goodsname"  xorm:"'GOODSNAME'"`                     // 商品名称
+	GOODUNITID          int32   `json:"goodunitid"  xorm:"'GOODUNITID'"`                   // 商品单位id
+	CURRISKLEVEL        int32   `json:"currisklevel"  xorm:"'CURRISKLEVEL'"`               // 风险级别 - 1:正常 2:追加货款 3:支付尾款
+	RECKONRECOVERMARGIN float64 `json:"reckonrecovermargin"  xorm:"'RECKONRECOVERMARGIN'"` // 结算应追缴保底金(结算时到过风险率时临时存储) - [仓单回购\仓单质押]
 
 	PAYAMOUNT   float64 `json:"payamount"  xorm:"'PAYAMOUNT'"` // 已付(已付货款)
 	USERNAME    string  `json:"username"  xorm:"'USERNAME'"`   // 用户名称
@@ -61,6 +63,8 @@ func (r *QhjContract) buildSql() string {
 		"       s.recoveredmargin," +
 		"       s.remainamount," +
 		"       s.totalinterest," +
+		"       s.currisklevel," +
+		"       s.reckonrecovermargin," +
 		"       g.goodscode," +
 		"       g.goodsname," +
 		"       g.goodunitid" +
@@ -900,6 +904,7 @@ type QhjCustomer struct {
 	LEGALPERSONNAME   string `json:"legalpersonname"  xorm:"'legalpersonname'"`     // 法人姓名(企业)
 	CONTACTNAME       string `json:"contactname"  xorm:"'contactname'"`             // 联系人
 	EMAIL             string `json:"email"  xorm:"'EMAIL'"`                         // 邮件
+	USERNAME          string `json:"username"  xorm:"'USERNAME'"`                   // 用户名称
 
 	COUNTRYNAME    string `json:"countryname"`    // 国家名称
 	CITYNAME       string `json:"cityname"`       // 城市名称
@@ -907,7 +912,6 @@ type QhjCustomer struct {
 	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:停用)
@@ -916,12 +920,25 @@ type QhjCustomer struct {
 
 func (r *QhjCustomer) calc() {
 	r.MEMBERUSERNAME = mtpcache.GetUserNameByUserId(r.MEMBERUSERID)
-	r.USERNAME = mtpcache.GetUserNameByUserId(r.USERID)
+	if len(r.USERNAME) == 0 {
+		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)
+
+	switch r.QUERYTYPE {
+	case 1, 2: // 网上开户表
+		r.ADDRESS = DecryptField(r.ADDRESS)
+		r.TELPHONE = DecryptField(r.TELPHONE)
+	case 3, 4: // 正式表
+		r.TELPHONE = DecryptField(r.TELPHONE)
+	}
+	r.CARDNUM = DecryptField(r.CARDNUM)
+	r.MOBILE = DecryptField(r.MOBILE)
+	r.EMAIL = DecryptField(r.EMAIL)
 }
 
 func (r *QhjCustomer) level() int32 {
@@ -948,6 +965,7 @@ func (r *QhjCustomer) buildSqlWskh() string {
 		"  from (select t.userid," +
 		"               t.memberareaid MEMBERUSERID," +
 		"               t.USERINFOTYPE," +
+		"               t.username," +
 		"               t.CUSTOMERNAME," +
 		"               t.NICKNAME," +
 		"               t.CARDTYPE," +
@@ -1046,6 +1064,7 @@ func (r *QhjCustomer) GetDataEx() (interface{}, error) {
 	sData := make([]QhjCustomer, 0)
 	err := db.GetEngine().SQL(r.buildSql()).Find(&sData)
 	for i := range sData {
+		sData[i].QUERYTYPE = r.QUERYTYPE
 		sData[i].calc()
 	}
 	return sData, err