Jianghan 5 miesięcy temu
rodzic
commit
41090619f5
2 zmienionych plików z 36 dodań i 32 usunięć
  1. 2 3
      rpc/resourcesCenter.proto
  2. 34 29
      service/exportChargeService.go

+ 2 - 3
rpc/resourcesCenter.proto

@@ -209,9 +209,8 @@ message ChargeReq {
   int64 entUserId = 3;
   int64 exportNum = 4;
   int64 deductNum = 5;
-  string accountId = 6;
-  int32 chargeType = 7;  //扣费方式,0: 企业,1: 个人
-  string remark = 8; // 备注
+  int32 chargeType = 6;  //扣费方式,0: 企业,1: 个人
+  string remark = 7; // 备注
 }
 
 message ChargeResp {

+ 34 - 29
service/exportChargeService.go

@@ -16,7 +16,7 @@ func ChargeAccount(data *resourcesCenter.ChargeAccountReq) (resp *resourcesCente
 	jyOrm := entity.JyEngine.NewSession()
 	centerOrm := entity.Engine.NewSession()
 	var exportPower int
-	_, err := jyOrm.Table("entniche_user").Cols("export_power").Where("id = ?", data.UserId).Get(&exportPower)
+	_, err := jyOrm.Table("entniche_user").Cols("export_power").Where("id = ?", data.EntUserId).Get(&exportPower)
 	if err != nil {
 		return &resourcesCenter.ChargeResp{Code: entity.ErrorCode, Message: "人员数据定制权限查询失败"}
 	}
@@ -29,12 +29,15 @@ func ChargeAccount(data *resourcesCenter.ChargeAccountReq) (resp *resourcesCente
 		return &resourcesCenter.ChargeResp{Code: entity.SuccessCode, Message: "未查询到企业数据流量"}
 	}
 	var personNums int64
-	_ = centerOrm.Table("account_resources").Cols("SUM(number) AS totalNum").
-		Where("accountId = ? and endTime >= ? and resourceType = ?", data.UserId, now, "高级字段包").Find(&personNums)
+	_, err = centerOrm.Table("account_resources").Select("sum(number) as number").
+		Where("accountId = ? and endTime >= ? and resourceType = ?", data.UserId, now, "高级字段包").Get(&personNums)
+	if err != nil {
+		return &resourcesCenter.ChargeResp{Code: entity.ErrorCode, Message: "个人流量包查询失败"}
+	}
 	if exportPower == 1 && (entNums > 0 || personNums == 0) {
 		// 企业流量包扣除
 		var personLimit []*entity.PersonLimit
-		err := jyOrm.Table("entniche_export_limit").Select("*").
+		err = jyOrm.Table("entniche_export_limit").Select("*").
 			Where("ent_id = ? and user_id = ?", data.EntId, data.EntUserId).Find(&personLimit)
 		if err != nil || personLimit == nil || len(personLimit) == 0 {
 			return &resourcesCenter.ChargeResp{Code: entity.ErrorCode, Message: "企业个人账号限额查询失败"}
@@ -182,17 +185,18 @@ func entCharge(data *resourcesCenter.ChargeReq) (resp *resourcesCenter.ChargeRes
 	}
 	//保存账号使用明细
 	detailed := entity.Detailed{
-		AccountId:    data.AccountId,
-		CompanyId:    data.EntId,
-		ResourceType: "高级字段包",
-		Number:       data.DeductNum,
-		Name:         "数据流包",
-		CreateTime:   time.Now().Local(),
-		Remarks:      data.Remark,
-		UserType:     0,
-		UserId:       data.UserId,
-		AccountType:  1,
-		EntId:        data.EntId,
+		AccountId:     data.UserId,
+		CompanyId:     data.EntId,
+		ResourceType:  "高级字段包",
+		Number:        data.ExportNum,
+		DeductionNumb: data.DeductNum,
+		Name:          "数据流包",
+		CreateTime:    time.Now().Local(),
+		Remarks:       data.Remark,
+		UserType:      0,
+		UserId:        data.UserId,
+		AccountType:   1,
+		EntId:         data.EntId,
 	}
 	updateNum, err = souceOrm.Table(ConsumeRecord).Insert(&detailed)
 	if err != nil || updateNum <= 0 {
@@ -224,8 +228,8 @@ func personCharge(data *resourcesCenter.ChargeReq) (resp *resourcesCenter.Charge
 	jyOrm := entity.Engine.NewSession()
 	centerOrm := entity.Engine.NewSession()
 	var personNums int64
-	err := centerOrm.Table("account_resources").Cols("SUM(number) AS totalNum").
-		Where("accountId = ? and endTime >= ? and resourceType = ?", data.EntId, now, "高级字段包").Find(&personNums)
+	_, err := centerOrm.Table("account_resources").Select("sum(number) as number").
+		Where("accountId = ? and endTime >= ? and resourceType = ?", data.UserId, now, "高级字段包").Get(&personNums)
 	if err != nil {
 		return &resourcesCenter.ChargeResp{Code: entity.ErrorCode, Message: "个人余额查询失败"}
 	}
@@ -248,7 +252,7 @@ func personCharge(data *resourcesCenter.ChargeReq) (resp *resourcesCenter.Charge
 	balanceList := []entity.Balance{}
 	err = centerOrm.Table(AccountResources).
 		Select("*").
-		Where("accountId= ? and number > 0 and resourceType= ? and endTime >= ?", data.AccountId, "高级字段包", now).
+		Where("accountId= ? and number > 0 and resourceType= ? and endTime >= ?", data.UserId, "高级字段包", now).
 		OrderBy("endTime").
 		Find(&balanceList)
 	if err != nil {
@@ -276,17 +280,18 @@ func personCharge(data *resourcesCenter.ChargeReq) (resp *resourcesCenter.Charge
 	}
 	//保存账号使用明细
 	detailed := entity.Detailed{
-		AccountId:    data.AccountId,
-		CompanyId:    data.EntId,
-		ResourceType: "高级字段包",
-		Number:       data.DeductNum,
-		Name:         "数据流包",
-		CreateTime:   time.Now().Local(),
-		Remarks:      data.Remark,
-		UserType:     0,
-		UserId:       data.UserId,
-		AccountType:  1,
-		EntId:        data.EntId,
+		AccountId:     data.UserId,
+		CompanyId:     data.EntId,
+		ResourceType:  "高级字段包",
+		Number:        data.ExportNum,
+		DeductionNumb: data.DeductNum,
+		Name:          "数据流包",
+		CreateTime:    time.Now().Local(),
+		Remarks:       data.Remark,
+		UserType:      0,
+		UserId:        data.UserId,
+		AccountType:   1,
+		EntId:         data.EntId,
 	}
 	updateNum, err = centerOrm.Table(ConsumeRecord).Insert(&detailed)
 	if err != nil || updateNum <= 0 {