Updata:解决冲突

This commit is contained in:
jiaji.H 2025-12-25 16:27:26 +08:00
commit 24980bd23f
9 changed files with 1775 additions and 1257 deletions

View File

@ -61,6 +61,11 @@ func (b *BundleProvider) ConfirmWork(_ context.Context, req *bundle.ConfirmWorkR
return logic.ConfirmWork(req) return logic.ConfirmWork(req)
} }
// 获取待确认作品列表
func (b *BundleProvider) GetWaitConfirmWorkList(_ context.Context, req *bundle.GetWaitConfirmWorkListReq) (*bundle.GetWaitConfirmWorkListResp, error) {
return logic.GetWaitConfirmWorkList(req)
}
// 套餐激活 // 套餐激活
func (b *BundleProvider) BundleActivate(_ context.Context, req *bundle.BundleActivateReq) (*bundle.BundleActivateResp, error) { func (b *BundleProvider) BundleActivate(_ context.Context, req *bundle.BundleActivateReq) (*bundle.BundleActivateResp, error) {
return nil, logic.BundleActivate(req) return nil, logic.BundleActivate(req)

View File

@ -3,6 +3,7 @@ package dao
import ( import (
"errors" "errors"
"fmt" "fmt"
"math/rand"
"micro-bundle/internal/model" "micro-bundle/internal/model"
"micro-bundle/pb/bundle" "micro-bundle/pb/bundle"
"micro-bundle/pkg/app" "micro-bundle/pkg/app"
@ -501,23 +502,26 @@ func ToBeComfirmedWorks(req *bundle.ToBeComfirmedWorksReq) (data []model.CastWor
unConfirmSubQuery := app.ModuleClients.BundleDB. unConfirmSubQuery := app.ModuleClients.BundleDB.
Table("cast_work_log"). Table("cast_work_log").
Select("work_uuid, MAX(update_time) AS max_update_time"). Select("work_uuid, MAX(update_time) AS max_update_time").
Where("cast_work_log.deleted_at = 0").
Group("work_uuid").Where("work_status = ?", 4) Group("work_uuid").Where("work_status = ?", 4)
err = app.ModuleClients.BundleDB. err = app.ModuleClients.BundleDB.
Table("cast_work_log AS cwl"). Table("cast_work_log AS cwl").
Joins("INNER JOIN (?) AS t ON cwl.work_uuid = t.work_uuid AND cwl.update_time = t.max_update_time", unConfirmSubQuery). Joins("INNER JOIN (?) AS t ON cwl.work_uuid = t.work_uuid AND cwl.update_time = t.max_update_time", unConfirmSubQuery).
Where("artist_uuid = ?", req.ArtistUuid).Where("confirmed_at = ?", 0).Count(&unconfirmed).Error Where("artist_uuid = ?", req.ArtistUuid).Where("cwl.deleted_at = 0").Where("confirmed_at = ?", 0).Count(&unconfirmed).Error
if err != nil { if err != nil {
return return
} }
subQuery := app.ModuleClients.BundleDB. subQuery := app.ModuleClients.BundleDB.
Table("cast_work_log"). Table("cast_work_log").
Select("work_uuid, MAX(update_time) AS max_update_time"). Select("work_uuid, MAX(update_time) AS max_update_time").
Group("work_uuid").Where("work_status in ?", []int{4, 5, 6, 7}) Where("cast_work_log.deleted_at = 0").
Group("work_uuid").Where("work_status in ?", []int{4, 5, 6, 7, 9})
session := app.ModuleClients.BundleDB. session := app.ModuleClients.BundleDB.
Table("cast_work_log AS cwl"). Table("cast_work_log AS cwl").
Joins("INNER JOIN (?) AS t ON cwl.work_uuid = t.work_uuid AND cwl.update_time = t.max_update_time", subQuery). Joins("INNER JOIN (?) AS t ON cwl.work_uuid = t.work_uuid AND cwl.update_time = t.max_update_time", subQuery).
Where("artist_uuid = ?", req.ArtistUuid) Where("artist_uuid = ?", req.ArtistUuid).
Where("cwl.deleted_at = 0")
err = session.Count(&total).Error err = session.Count(&total).Error
if err != nil { if err != nil {
return return
@ -533,6 +537,27 @@ func ConfirmWork(req *bundle.ConfirmWorkReq) error {
return app.ModuleClients.BundleDB.Model(&model.CastWorkLog{}).Where(&model.CastWorkLog{WorkUuid: req.WorkUuid}).Update("confirmed_at", time.Now().Unix()).Error return app.ModuleClients.BundleDB.Model(&model.CastWorkLog{}).Where(&model.CastWorkLog{WorkUuid: req.WorkUuid}).Update("confirmed_at", time.Now().Unix()).Error
} }
func GetWaitConfirmWorkList() (data []model.CastWork, err error) {
randomHours := rand.Intn(22) + 2 // 2-22小时
now := time.Now()
startTime := now.Add(-time.Duration(randomHours+2) * time.Hour).Format("2006-01-02 15:04:05")
endTime := now.Add(-time.Duration(randomHours) * time.Hour).Format("2006-01-02 15:04:05")
fmt.Println("检查开始时间:", startTime, "检查结束时间:", endTime)
err = app.ModuleClients.BundleDB.Model(&model.CastWork{}).
Joins("left join cast_work_log cwl on cwl.work_uuid = cast_work.uuid and cwl.work_status = 4 and cwl.deleted_at = 0").
Where("cast_work.deleted_at = 0").
Where("cast_work.status = ?", 4).
Where("cwl.update_time > ?", startTime).
Where("cwl.update_time < ?", endTime).
Order("cast_work.submit_time asc").
Limit(5).
Find(&data).Error
if err != nil {
return
}
return
}
func BundleActivate(ids []uint32) error { func BundleActivate(ids []uint32) error {
for _, v := range ids { for _, v := range ids {
app.ModuleClients.BundleDB.Transaction(func(tx *gorm.DB) error { app.ModuleClients.BundleDB.Transaction(func(tx *gorm.DB) error {

View File

@ -1,6 +1,7 @@
package dao package dao
import ( import (
"errors"
"fmt" "fmt"
"micro-bundle/internal/model" "micro-bundle/internal/model"
"micro-bundle/pb/bundle" "micro-bundle/pb/bundle"
@ -1226,54 +1227,55 @@ func MetricsOperatingStatus(req *bundle.MetricsOperatingStatusReq) (data *bundle
func MetricsBundlePurchaseExport(req *bundle.MetricsBundlePurchaseExportReq) (*bundle.MetricsBundlePurchaseExportResp, error) { func MetricsBundlePurchaseExport(req *bundle.MetricsBundlePurchaseExportReq) (*bundle.MetricsBundlePurchaseExportResp, error) {
result := &bundle.MetricsBundlePurchaseExportResp{} result := &bundle.MetricsBundlePurchaseExportResp{}
sql := `select var purchaseItems []model.PurchaseItem
order_no, sql := fmt.Sprintf(`select
bundle_name, t1.order_no as orderNo,
customer_num as user_num, t1.bundle_name as bundleName,
customer_name as user_name, t2.sub_num as userNum,
u.tel_num as phone_number, t3.name as userName,
bor.pay_time, t2.tel_num as phoneNumber,
bbs.bundle_video as bundle_video_count, t1.pay_time as payTime,
bor.amount as bundle_amount, case when t1.pay_time < '2025-06-18 22:37:56' then t1.num
bbs.increate_video as increase_video_count, else
(bor.total_amount-bor.amount) as increase_amount, case when t1.total_amount = 3150 THEN 3
total_amount as payment_amount, WHEN t1.total_amount = 4200 THEN 5
fee.handling_fee as fee_amount WHEN t1.total_amount = 5600 THEN 8
from WHEN t1.total_amount = 6500 THEN 10
bundle_order_records bor WHEN t1.total_amount = 8500 THEN 15
left join ( WHEN t1.total_amount = 10500 THEN 20
select WHEN t1.total_amount = 11500 THEN 25
(bundle_video_number + bundle_limit_video_number + bundle_limit_video_expired_number ) as bundle_video, WHEN t1.total_amount = 14100 THEN 30
(increase_video_number + increase_limit_video_number + increase_limit_video_expired_number) as increate_video, WHEN t1.total_amount = 16200 THEN 35
order_uuid WHEN t1.total_amount = 18300 THEN 40
from WHEN t1.total_amount> 18300 THEN (t1.total_amount-1500)/420
bundle_balance bb else 0
left join ( end
select end as increaseVideoCount,
min(month) as min_month , t1.amount as bundleAmount,
bb2.order_uuid as min_order_uuid case when t1.pay_time < '2025-06-18 22:37:56' then t1.value_add_bundle_amount
from else t1.total_amount - t1.amount
bundle_balance bb2 end as increaseAmount,
group by t1.total_amount as paymentAmount,
bb2.order_uuid case when t3.name = '徐子清' then 1325.45
) bb2 on else CAST(t1.total_amount AS DECIMAL(18,2)) - CAST(t4.sum_fee AS DECIMAL(18,2))
bb2.min_order_uuid = bb.order_uuid end as finalAmount,
where case when t3.name = '徐子清' then 25.77
bb.month = bb2.min_month else CAST(t4.sum_fee AS DECIMAL(18,2))
and end as feeAmount
bb.deleted_at is null from bundle_order_records t1
and bb.deleted_at is null left join %s t2 on t1.customer_id = t2.id
) bbs on left join %s t3 on t2.real_name_id = t3.id
bbs.order_uuid = bor.uuid left join
left join` + " `micro-account`.`user`" + ` u on (
u.id = bor.customer_id select a1.order_no, sum(a2.handling_fee) as sum_fee from bundle_order_records a1
left join( left join reconciliation a2 on a1.order_no = a2.bundle_order_on
select sum(r.handling_fee) as handling_fee, r.bundle_order_on from reconciliation r where r.deleted_at is null group by r.bundle_order_on where a1.deleted_at is null and a1.status = 2 and a1.total_amount > 300 and a2.deleted_at is null
) fee on group by a1.order_no
fee.bundle_order_on = bor.order_no ) t4 on t1.order_no = t4.order_no
where where t1.deleted_at is null and t1.status = 2 and t1.total_amount > 300
bor.deleted_at is null and bor.status = 2 order by t2.sub_num asc`,
` "`micro-account`.`user`",
"`micro-account`.`real_name`")
if req.Month != "" { if req.Month != "" {
t, err := time.Parse("2006-01", req.Month) t, err := time.Parse("2006-01", req.Month)
if err != nil { if err != nil {
@ -1281,13 +1283,31 @@ where
} }
start := datetime.BeginOfMonth(t) start := datetime.BeginOfMonth(t)
end := datetime.EndOfMonth(t) end := datetime.EndOfMonth(t)
sql += fmt.Sprintf("and bor.pay_time >= '%s' and bor.pay_time <= '%s'", start.Format(time.DateTime), end.Format(time.DateTime)) sql += fmt.Sprintf("and t1.pay_time >= '%s' and t1.pay_time <= '%s'", start.Format(time.DateTime), end.Format(time.DateTime))
} }
err := app.ModuleClients.BundleDB.Raw(sql).Find(&result.Data).Error err := app.ModuleClients.BundleDB.Raw(sql).Scan(&purchaseItems).Error
lo.ForEach(result.Data, func(item *bundle.MetricsBundlePurchaseItem, index int) { if err != nil {
item.FinalAmount = item.PaymentAmount - item.FeeAmount return nil, errors.New("查询套餐购买导出失败")
item.Rate = 1 }
}) result.Data = make([]*bundle.MetricsBundlePurchaseItem, 0, len(purchaseItems))
for _, item := range purchaseItems {
result.Data = append(result.Data, &bundle.MetricsBundlePurchaseItem{
OrderNo: item.OrderNo,
BundleName: item.BundleName,
UserNum: item.UserNum,
UserName: item.UserName,
PhoneNumber: item.PhoneNumber,
PayTime: item.PayTime,
IncreaseVideoCount: int64(item.IncreaseVideoCount),
BundleAmount: item.BundleAmount,
IncreaseAmount: item.IncreaseAmount,
PaymentAmount: item.PaymentAmount,
FinalAmount: item.FinalAmount,
FeeAmount: item.FeeAmount,
Rate: 1,
})
}
fmt.Println(result.Data[0].OrderNo)
return result, err return result, err
} }
@ -1315,16 +1335,22 @@ func MetricsArtistAccountExport(req *bundle.MetricsArtistAccountExportReq) (*bun
query := app.ModuleClients.BundleDB.Table("( ? ) cma", subQuery). query := app.ModuleClients.BundleDB.Table("( ? ) cma", subQuery).
Select(`tiktok.platform_user_id as tiktok_account, Select(`tiktok.platform_user_id as tiktok_account,
tiktok.platform_user_name as tiktok_nickname, tiktok.platform_user_name as tiktok_nickname,
tiktok_auth.auth_status as tiktok_auth_status,
dm.platform_user_id as dm_account, dm.platform_user_id as dm_account,
dm.platform_user_name as dm_nickname, dm.platform_user_name as dm_nickname,
dm_auth.auth_status as dm_auth_status,
ins.platform_user_id as instagram_account, ins.platform_user_id as instagram_account,
ins.platform_user_name as instagram_nickname, ins.platform_user_name as instagram_nickname,
ins_auth.auth_status as ins_auth_status,
cma.artist_name, cma.artist_name,
bor.customer_num as user_num bor.customer_num as user_num
`). `).
Joins(`left join (SELECT * FROM cast_media_account where platform_id = 1 and deleted_at = 0) tiktok on tiktok.artist_uuid = cma.artist_uuid`). Joins(`left join (SELECT * FROM cast_media_account where platform_id = 1 and deleted_at = 0) tiktok on tiktok.artist_uuid = cma.artist_uuid`).
Joins(`left join (Select * from cast_media_auth where platform_id = 1 and deleted_at = 0) tiktok_auth on tiktok_auth.user_id = tiktok.user_id`).
Joins(`left join (SELECT * FROM cast_media_account where platform_id = 4 and deleted_at = 0) dm on dm.artist_uuid = cma.artist_uuid`). Joins(`left join (SELECT * FROM cast_media_account where platform_id = 4 and deleted_at = 0) dm on dm.artist_uuid = cma.artist_uuid`).
Joins(`left join (Select * from cast_media_auth where platform_id = 4 and deleted_at = 0) dm_auth on dm_auth.user_id = dm.user_id`).
Joins(`left join (SELECT * FROM cast_media_account where platform_id = 3 and deleted_at = 0) ins on ins.artist_uuid = cma.artist_uuid`). Joins(`left join (SELECT * FROM cast_media_account where platform_id = 3 and deleted_at = 0) ins on ins.artist_uuid = cma.artist_uuid`).
Joins(`left join (Select * from cast_media_auth where platform_id = 3 and deleted_at = 0) ins_auth on ins_auth.user_id = ins.user_id`).
Joins(`left join bundle_order_records bor on bor.customer_id COLLATE utf8mb4_general_ci= cma.artist_uuid COLLATE utf8mb4_general_ci`). Joins(`left join bundle_order_records bor on bor.customer_id COLLATE utf8mb4_general_ci= cma.artist_uuid COLLATE utf8mb4_general_ci`).
Where("bor.deleted_at is null") Where("bor.deleted_at is null")
if req.Month != "" { if req.Month != "" {

View File

@ -195,24 +195,31 @@ func GetBundleBalanceByUserId(req *bundle.GetBundleBalanceByUserIdReq) (*bundle.
return nil, errors.New("套餐未激活") return nil, errors.New("套餐未激活")
} }
result := &bundle.GetBundleBalanceByUserIdResp{ result := &bundle.GetBundleBalanceByUserIdResp{
OrderUUID: data.OrderUUID, OrderUUID: data.OrderUUID,
BundleName: data.BundleName, BundleName: data.BundleName,
PayTime: data.StartAt.UnixMilli(), PayTime: data.StartAt.UnixMilli(),
ExpiredTime: data.ExpiredAt.UnixMilli(), ExpiredTime: data.ExpiredAt.UnixMilli(),
PaymentAmount: data.PaymentAmount, PaymentAmount: data.PaymentAmount,
PaymentType: data.PaymentType, PaymentType: data.PaymentType,
AccountNumber: int32(data.BundleAccountNumber) + int32(data.IncreaseAccountNumber) + int32(data.ManualAccountNumber), AccountNumber: int32(data.BundleAccountNumber) + int32(data.IncreaseAccountNumber) + int32(data.ManualAccountNumber),
AccountAdditional: int32(data.ManualAccountNumber), AccountExtendNumber: int32(data.BundleAccountNumber) + int32(data.IncreaseAccountNumber) + int32(data.ManualAccountNumber),
AccountConsumptionNumber: int32(data.BundleAccountConsumptionNumber) + int32(data.IncreaseAccountConsumptionNumber) + int32(data.ManualAccountConsumptionNumber), AccountAdditional: int32(data.ManualAccountNumber),
VideoNumber: int32(data.BundleVideoNumber) + int32(data.BundleLimitVideoNumber) + int32(data.BundleLimitVideoExpiredNumber) + int32(data.IncreaseVideoNumber) + int32(data.IncreaseLimitVideoNumber) + int32(data.IncreaseLimitVideoExpiredNumber) + int32(data.ManualVideoNumber), AccountConsumptionNumber: int32(data.BundleAccountConsumptionNumber) + int32(data.IncreaseAccountConsumptionNumber) + int32(data.ManualAccountConsumptionNumber),
VideoAdditional: int32(data.ManualVideoNumber), VideoNumber: int32(data.BundleVideoNumber) + int32(data.BundleLimitVideoNumber) + int32(data.BundleLimitVideoExpiredNumber) + int32(data.IncreaseVideoNumber) + int32(data.IncreaseLimitVideoNumber) + int32(data.IncreaseLimitVideoExpiredNumber) + int32(data.ManualVideoNumber),
VideoConsumptionNumber: int32(data.BundleVideoConsumptionNumber) + int32(data.BundleLimitVideoConsumptionNumber) + int32(data.BundleLimitVideoExpiredConsumptionNumber) + int32(data.IncreaseVideoConsumptionNumber) + int32(data.IncreaseLimitVideoConsumptionNumber) + int32(data.IncreaseLimitVideoExpiredConsumptionNumber) + int32(data.ManualVideoConsumptionNumber), VideoExtendNumber: int32(data.MonthlyBundleLimitVideoNumber) + int32(data.MonthlyIncreaseLimitVideoNumber) + int32(data.MonthlyBundleLimitExpiredVideoNumber) + int32(data.MonthlyIncreaseLimitExpiredVideoNumber) + int32(data.ManualVideoNumber) + int32(data.IncreaseVideoNumber) + int32(data.BundleVideoNumber),
ImageNumber: int32(data.BundleImageNumber) + int32(data.BundleLimitImageNumber) + int32(data.BundleLimitImageExpiredNumber) + int32(data.IncreaseImageNumber) + int32(data.IncreaseLimitImageNumber) + int32(data.IncreaseLimitImageExpiredNumber) + int32(data.ManualImageNumber), VideoExtendConsumptionNumber: int32(data.MonthlyBundleLimitVideoConsumptionNumber) + int32(data.MonthlyIncreaseLimitVideoConsumptionNumber) + int32(data.MonthlyBundleLimitExpiredVideoConsumptionNumber) + int32(data.MonthlyIncreaseLimitExpiredVideoConsumptionNumber) + int32(data.ManualVideoConsumptionNumber) + int32(data.IncreaseVideoConsumptionNumber) + int32(data.BundleVideoConsumptionNumber),
ImageAdditional: int32(data.ManualImageNumber), VideoAdditional: int32(data.ManualVideoNumber),
ImageConsumptionNumber: int32(data.BundleImageConsumptionNumber) + int32(data.BundleLimitImageConsumptionNumber) + int32(data.BundleLimitImageExpiredConsumptionNumber) + int32(data.IncreaseImageConsumptionNumber) + int32(data.IncreaseLimitImageConsumptionNumber) + int32(data.IncreaseLimitImageExpiredConsumptionNumber) + int32(data.ManualImageConsumptionNumber), VideoConsumptionNumber: int32(data.BundleVideoConsumptionNumber) + int32(data.BundleLimitVideoConsumptionNumber) + int32(data.BundleLimitVideoExpiredConsumptionNumber) + int32(data.IncreaseVideoConsumptionNumber) + int32(data.IncreaseLimitVideoConsumptionNumber) + int32(data.IncreaseLimitVideoExpiredConsumptionNumber) + int32(data.ManualVideoConsumptionNumber),
DataAnalysisNumber: int32(data.BundleDataAnalysisNumber) + int32(data.BundleLimitDataAnalysisNumber) + int32(data.BundleLimitDataAnalysisExpiredNumber) + int32(data.IncreaseDataAnalysisNumber) + int32(data.IncreaseLimitDataAnalysisNumber) + int32(data.IncreaseLimitDataAnalysisExpiredNumber) + int32(data.ManualDataAnalysisNumber), ImageNumber: int32(data.BundleImageNumber) + int32(data.BundleLimitImageNumber) + int32(data.BundleLimitImageExpiredNumber) + int32(data.IncreaseImageNumber) + int32(data.IncreaseLimitImageNumber) + int32(data.IncreaseLimitImageExpiredNumber) + int32(data.ManualImageNumber),
DataAnalysisAdditional: int32(data.ManualDataAnalysisNumber), ImageExtendNumber: int32(data.MonthlyBundleLimitImageNumber) + int32(data.MonthlyIncreaseLimitImageNumber) + int32(data.MonthlyBundleLimitExpiredImageNumber) + int32(data.MonthlyIncreaseLimitExpiredImageNumber) + int32(data.ManualImageNumber) + int32(data.IncreaseImageNumber) + int32(data.BundleImageNumber),
DataAnalysisConsumptionNumber: int32(data.BundleDataAnalysisConsumptionNumber) + int32(data.BundleLimitDataAnalysisConsumptionNumber) + int32(data.BundleLimitDataAnalysisExpiredConsumptionNumber) + int32(data.IncreaseDataAnalysisConsumptionNumber) + int32(data.IncreaseLimitDataAnalysisConsumptionNumber) + int32(data.IncreaseLimitDataAnalysisExpiredConsumptionNumber) + int32(data.ManualDataAnalysisConsumptionNumber), ImageExtendConsumptionNumber: int32(data.MonthlyBundleLimitImageConsumptionNumber) + int32(data.MonthlyIncreaseLimitImageConsumptionNumber) + int32(data.MonthlyBundleLimitExpiredImageConsumptionNumber) + int32(data.MonthlyIncreaseLimitExpiredImageConsumptionNumber) + int32(data.ManualImageConsumptionNumber) + int32(data.IncreaseImageConsumptionNumber) + int32(data.BundleImageConsumptionNumber),
ImageAdditional: int32(data.ManualImageNumber),
ImageConsumptionNumber: int32(data.BundleImageConsumptionNumber) + int32(data.BundleLimitImageConsumptionNumber) + int32(data.BundleLimitImageExpiredConsumptionNumber) + int32(data.IncreaseImageConsumptionNumber) + int32(data.IncreaseLimitImageConsumptionNumber) + int32(data.IncreaseLimitImageExpiredConsumptionNumber) + int32(data.ManualImageConsumptionNumber),
DataAnalysisNumber: int32(data.BundleDataAnalysisNumber) + int32(data.BundleLimitDataAnalysisNumber) + int32(data.BundleLimitDataAnalysisExpiredNumber) + int32(data.IncreaseDataAnalysisNumber) + int32(data.IncreaseLimitDataAnalysisNumber) + int32(data.IncreaseLimitDataAnalysisExpiredNumber) + int32(data.ManualDataAnalysisNumber),
DataAnalysisExtendNumber: int32(data.MonthlyBundleLimitDataAnalysisNumber) + int32(data.MonthlyIncreaseLimitDataAnalysisNumber) + int32(data.MonthlyBundleLimitExpiredDataAnalysisNumber) + int32(data.MonthlyIncreaseLimitExpiredDataAnalysisNumber) + int32(data.ManualDataAnalysisNumber) + int32(data.IncreaseDataAnalysisNumber) + int32(data.BundleDataAnalysisNumber),
DataAnalysisExtendConsumptionNumber: int32(data.MonthlyBundleLimitDataAnalysisConsumptionNumber) + int32(data.MonthlyIncreaseLimitDataAnalysisConsumptionNumber) + int32(data.MonthlyBundleLimitExpiredDataAnalysisConsumptionNumber) + int32(data.MonthlyIncreaseLimitExpiredDataAnalysisConsumptionNumber) + int32(data.ManualDataAnalysisConsumptionNumber) + int32(data.IncreaseDataAnalysisConsumptionNumber) + int32(data.BundleDataAnalysisConsumptionNumber),
DataAnalysisAdditional: int32(data.ManualDataAnalysisNumber),
DataAnalysisConsumptionNumber: int32(data.BundleDataAnalysisConsumptionNumber) + int32(data.BundleLimitDataAnalysisConsumptionNumber) + int32(data.BundleLimitDataAnalysisExpiredConsumptionNumber) + int32(data.IncreaseDataAnalysisConsumptionNumber) + int32(data.IncreaseLimitDataAnalysisConsumptionNumber) + int32(data.IncreaseLimitDataAnalysisExpiredConsumptionNumber) + int32(data.ManualDataAnalysisConsumptionNumber),
} }
return result, nil return result, nil
} }
@ -447,6 +454,24 @@ func ConfirmWork(req *bundle.ConfirmWorkReq) (*bundle.ConfirmWorkResp, error) {
return nil, dao.ConfirmWork(req) return nil, dao.ConfirmWork(req)
} }
func GetWaitConfirmWorkList(req *bundle.GetWaitConfirmWorkListReq) (*bundle.GetWaitConfirmWorkListResp, error) {
data, err := dao.GetWaitConfirmWorkList()
if err != nil {
logger.Error(err)
return nil, errors.New("查询失败")
}
result := &bundle.GetWaitConfirmWorkListResp{}
result.Data = lo.Map(data, func(m model.CastWork, _ int) *bundle.ConfirmWorkItem {
return &bundle.ConfirmWorkItem{
WorkUuid: m.Uuid,
WorkCategory: int32(m.WorkCategory),
ArtistName: m.ArtistName,
ArtistUuid: m.ArtistUuid,
}
})
return result, nil
}
func BundleActivate(req *bundle.BundleActivateReq) error { func BundleActivate(req *bundle.BundleActivateReq) error {
return dao.BundleActivate(req.Ids) return dao.BundleActivate(req.Ids)
} }

View File

@ -378,3 +378,19 @@ type ManualIncreaseBundleBalance struct {
TotalImageAdditional int `gorm:"column:total_image_additional"` TotalImageAdditional int `gorm:"column:total_image_additional"`
TotalDataAnalysisAdditional int `gorm:"column:total_data_analysis_additional"` TotalDataAnalysisAdditional int `gorm:"column:total_data_analysis_additional"`
} }
// 套餐购买导出
type PurchaseItem struct {
OrderNo string `gorm:"column:orderNo"`
BundleName string `gorm:"column:bundleName"`
UserNum string `gorm:"column:userNum"`
UserName string `gorm:"column:userName"`
PhoneNumber string `gorm:"column:phoneNumber"`
PayTime string `gorm:"column:payTime"`
IncreaseVideoCount float64 `gorm:"column:increaseVideoCount"`
BundleAmount float32 `gorm:"column:bundleAmount"`
IncreaseAmount float32 `gorm:"column:increaseAmount"`
PaymentAmount float32 `gorm:"column:paymentAmount"`
FinalAmount float32 `gorm:"column:finalAmount"`
FeeAmount float32 `gorm:"column:feeAmount"`
}

View File

@ -70,8 +70,9 @@ service Bundle {
rpc GetImageWorkDetail(GetImageWorkDetailReq) returns (GetImageWorkDetailResp) {} // rpc GetImageWorkDetail(GetImageWorkDetailReq) returns (GetImageWorkDetailResp) {} //
rpc GetVedioWorkDetail(GetVedioWorkDetailReq) returns (GetVedioeWorkDetailResp) {} // rpc GetVedioWorkDetail(GetVedioWorkDetailReq) returns (GetVedioeWorkDetailResp) {} //
rpc ToBeComfirmedWorks(ToBeComfirmedWorksReq) returns (ToBeComfirmedWorksResp) {} // ,CastWork中数据分析proto中 rpc ToBeComfirmedWorks(ToBeComfirmedWorksReq) returns (ToBeComfirmedWorksResp) {} //
rpc ConfirmWork(ConfirmWorkReq) returns (ConfirmWorkResp) {} // rpc ConfirmWork(ConfirmWorkReq) returns (ConfirmWorkResp) {} //
rpc GetWaitConfirmWorkList(GetWaitConfirmWorkListReq) returns (GetWaitConfirmWorkListResp) {} //
// //
rpc GetReconciliationList(GetReconciliationListReq) returns (GetReconciliationListResp) {} // rpc GetReconciliationList(GetReconciliationListReq) returns (GetReconciliationListResp) {} //
@ -1035,6 +1036,8 @@ message ToBeComfirmedWorksResp{
repeated workItem data = 3; repeated workItem data = 3;
} }
message GetBundleBalanceByUserIdReq{ message GetBundleBalanceByUserIdReq{
int32 userId = 1; int32 userId = 1;
} }
@ -1049,18 +1052,25 @@ message GetBundleBalanceByUserIdResp{
string paymentAmount = 7; string paymentAmount = 7;
int32 paymentType = 8; int32 paymentType = 8;
int32 accountNumber = 9; int32 accountNumber = 9;
int32 accountAdditional = 10; int32 accountExtendNumber = 10;
int32 accountConsumptionNumber = 11; int32 accountAdditional = 11;
int32 videoNumber = 12; int32 accountConsumptionNumber = 12;
int32 videoAdditional = 13; int32 videoNumber = 13;
int32 videoConsumptionNumber = 14; int32 videoExtendNumber = 14;
int32 imageNumber = 15; int32 videoExtendConsumptionNumber = 15;
int32 imageAdditional = 16; int32 videoAdditional = 16;
int32 imageConsumptionNumber = 17; int32 videoConsumptionNumber = 17;
int32 dataAnalysisNumber = 18; int32 imageNumber = 18;
int32 dataAnalysisAdditional = 19; int32 imageExtendNumber = 19;
int32 dataAnalysisConsumptionNumber = 20; int32 imageExtendConsumptionNumber = 20;
int32 expansionPacksNumber = 21; int32 imageAdditional = 21;
int32 imageConsumptionNumber = 22;
int32 dataAnalysisNumber = 23;
int32 dataAnalysisExtendNumber = 24;
int32 dataAnalysisExtendConsumptionNumber = 25;
int32 dataAnalysisAdditional = 26;
int32 dataAnalysisConsumptionNumber = 27;
int32 expansionPacksNumber = 28;
} }
message OnlyAddValueListByOrderNoRequest{ message OnlyAddValueListByOrderNoRequest{
@ -1093,6 +1103,20 @@ message ConfirmWorkResp{
} }
message ConfirmWorkItem{
string workUuid = 1;
string artistName = 2;
string artistUuid = 3;
int32 workCategory = 4;
}
message GetWaitConfirmWorkListReq{}
message GetWaitConfirmWorkListResp{
repeated ConfirmWorkItem data = 1;
}
message AutoCreateUserAndOrderRequest { message AutoCreateUserAndOrderRequest {
int32 num = 1; // int32 num = 1; //
} }
@ -1673,7 +1697,8 @@ message MetricsOperatingStatusResp {
} }
message MetricsBundlePurchaseExportReq{ message MetricsBundlePurchaseExportReq{
string month = 1; string month = 1;//
string endTime = 2;//
} }
message MetricsBundlePurchaseExportResp{ message MetricsBundlePurchaseExportResp{
@ -1681,20 +1706,19 @@ message MetricsBundlePurchaseExportResp{
} }
message MetricsBundlePurchaseItem{ message MetricsBundlePurchaseItem{
string orderNo = 1; string orderNo = 1;//
string bundleName = 2; string bundleName = 2;//
string userNum = 3; string userNum = 3;//
string userName = 4; string userName = 4;//
string phoneNumber = 5; string phoneNumber = 5;//
string payTime = 6; string payTime = 6;//
int64 bundleVideoCount = 7; int64 increaseVideoCount = 7;//
int64 increaseVideoCount = 8; float bundleAmount = 8;//
float bundleAmount = 9; float increaseAmount = 9;//
float increaseAmount = 10; float paymentAmount = 10;//
float paymentAmount = 11; float finalAmount = 11;//
float finalAmount = 12; float feeAmount = 12;//
float feeAmount = 13; int64 rate = 13;//
int64 rate = 14;
} }
message MetricsArtistAccountExportReq{ message MetricsArtistAccountExportReq{
@ -1710,12 +1734,15 @@ message MetricsArtistAccountExportItem{
string userNum = 2; string userNum = 2;
string dmAccount = 3; string dmAccount = 3;
string dmNickname = 4; string dmNickname = 4;
int32 dmAuthStatus = 5;
// string youtubeAccount = 3; YouTube了 // string youtubeAccount = 3; YouTube了
// string youtubeNickname = 4; // string youtubeNickname = 4;
string instagramAccount = 5; string instagramAccount = 6;
string instagramNickname = 6; string instagramNickname = 7;
string tiktokAccount = 7; int32 insAuthStatus = 8;
string tiktokNickname = 8; string tiktokAccount = 9;
string tiktokNickname = 10;
int32 tiktokAuthStatus = 11;
} }

File diff suppressed because it is too large Load Diff

View File

@ -483,6 +483,22 @@ func (this *ConfirmWorkReq) Validate() error {
func (this *ConfirmWorkResp) Validate() error { func (this *ConfirmWorkResp) Validate() error {
return nil return nil
} }
func (this *ConfirmWorkItem) Validate() error {
return nil
}
func (this *GetWaitConfirmWorkListReq) Validate() error {
return nil
}
func (this *GetWaitConfirmWorkListResp) Validate() error {
for _, item := range this.Data {
if item != nil {
if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(item); err != nil {
return github_com_mwitkow_go_proto_validators.FieldError("Data", err)
}
}
}
return nil
}
func (this *AutoCreateUserAndOrderRequest) Validate() error { func (this *AutoCreateUserAndOrderRequest) Validate() error {
return nil return nil
} }

View File

@ -79,6 +79,7 @@ type BundleClient interface {
GetVedioWorkDetail(ctx context.Context, in *GetVedioWorkDetailReq, opts ...grpc_go.CallOption) (*GetVedioeWorkDetailResp, common.ErrorWithAttachment) GetVedioWorkDetail(ctx context.Context, in *GetVedioWorkDetailReq, opts ...grpc_go.CallOption) (*GetVedioeWorkDetailResp, common.ErrorWithAttachment)
ToBeComfirmedWorks(ctx context.Context, in *ToBeComfirmedWorksReq, opts ...grpc_go.CallOption) (*ToBeComfirmedWorksResp, common.ErrorWithAttachment) ToBeComfirmedWorks(ctx context.Context, in *ToBeComfirmedWorksReq, opts ...grpc_go.CallOption) (*ToBeComfirmedWorksResp, common.ErrorWithAttachment)
ConfirmWork(ctx context.Context, in *ConfirmWorkReq, opts ...grpc_go.CallOption) (*ConfirmWorkResp, common.ErrorWithAttachment) ConfirmWork(ctx context.Context, in *ConfirmWorkReq, opts ...grpc_go.CallOption) (*ConfirmWorkResp, common.ErrorWithAttachment)
GetWaitConfirmWorkList(ctx context.Context, in *GetWaitConfirmWorkListReq, opts ...grpc_go.CallOption) (*GetWaitConfirmWorkListResp, common.ErrorWithAttachment)
// 对账单 // 对账单
GetReconciliationList(ctx context.Context, in *GetReconciliationListReq, opts ...grpc_go.CallOption) (*GetReconciliationListResp, common.ErrorWithAttachment) GetReconciliationList(ctx context.Context, in *GetReconciliationListReq, opts ...grpc_go.CallOption) (*GetReconciliationListResp, common.ErrorWithAttachment)
CreateReconciliation(ctx context.Context, in *ReconciliationInfo, opts ...grpc_go.CallOption) (*CommonResponse, common.ErrorWithAttachment) CreateReconciliation(ctx context.Context, in *ReconciliationInfo, opts ...grpc_go.CallOption) (*CommonResponse, common.ErrorWithAttachment)
@ -169,6 +170,7 @@ type BundleClientImpl struct {
GetVedioWorkDetail func(ctx context.Context, in *GetVedioWorkDetailReq) (*GetVedioeWorkDetailResp, error) GetVedioWorkDetail func(ctx context.Context, in *GetVedioWorkDetailReq) (*GetVedioeWorkDetailResp, error)
ToBeComfirmedWorks func(ctx context.Context, in *ToBeComfirmedWorksReq) (*ToBeComfirmedWorksResp, error) ToBeComfirmedWorks func(ctx context.Context, in *ToBeComfirmedWorksReq) (*ToBeComfirmedWorksResp, error)
ConfirmWork func(ctx context.Context, in *ConfirmWorkReq) (*ConfirmWorkResp, error) ConfirmWork func(ctx context.Context, in *ConfirmWorkReq) (*ConfirmWorkResp, error)
GetWaitConfirmWorkList func(ctx context.Context, in *GetWaitConfirmWorkListReq) (*GetWaitConfirmWorkListResp, error)
GetReconciliationList func(ctx context.Context, in *GetReconciliationListReq) (*GetReconciliationListResp, error) GetReconciliationList func(ctx context.Context, in *GetReconciliationListReq) (*GetReconciliationListResp, error)
CreateReconciliation func(ctx context.Context, in *ReconciliationInfo) (*CommonResponse, error) CreateReconciliation func(ctx context.Context, in *ReconciliationInfo) (*CommonResponse, error)
UpdateReconciliation func(ctx context.Context, in *ReconciliationInfo) (*CommonResponse, error) UpdateReconciliation func(ctx context.Context, in *ReconciliationInfo) (*CommonResponse, error)
@ -497,6 +499,12 @@ func (c *bundleClient) ConfirmWork(ctx context.Context, in *ConfirmWorkReq, opts
return out, c.cc.Invoke(ctx, "/"+interfaceKey+"/ConfirmWork", in, out) return out, c.cc.Invoke(ctx, "/"+interfaceKey+"/ConfirmWork", in, out)
} }
func (c *bundleClient) GetWaitConfirmWorkList(ctx context.Context, in *GetWaitConfirmWorkListReq, opts ...grpc_go.CallOption) (*GetWaitConfirmWorkListResp, common.ErrorWithAttachment) {
out := new(GetWaitConfirmWorkListResp)
interfaceKey := ctx.Value(constant.InterfaceKey).(string)
return out, c.cc.Invoke(ctx, "/"+interfaceKey+"/GetWaitConfirmWorkList", in, out)
}
func (c *bundleClient) GetReconciliationList(ctx context.Context, in *GetReconciliationListReq, opts ...grpc_go.CallOption) (*GetReconciliationListResp, common.ErrorWithAttachment) { func (c *bundleClient) GetReconciliationList(ctx context.Context, in *GetReconciliationListReq, opts ...grpc_go.CallOption) (*GetReconciliationListResp, common.ErrorWithAttachment) {
out := new(GetReconciliationListResp) out := new(GetReconciliationListResp)
interfaceKey := ctx.Value(constant.InterfaceKey).(string) interfaceKey := ctx.Value(constant.InterfaceKey).(string)
@ -744,6 +752,7 @@ type BundleServer interface {
GetVedioWorkDetail(context.Context, *GetVedioWorkDetailReq) (*GetVedioeWorkDetailResp, error) GetVedioWorkDetail(context.Context, *GetVedioWorkDetailReq) (*GetVedioeWorkDetailResp, error)
ToBeComfirmedWorks(context.Context, *ToBeComfirmedWorksReq) (*ToBeComfirmedWorksResp, error) ToBeComfirmedWorks(context.Context, *ToBeComfirmedWorksReq) (*ToBeComfirmedWorksResp, error)
ConfirmWork(context.Context, *ConfirmWorkReq) (*ConfirmWorkResp, error) ConfirmWork(context.Context, *ConfirmWorkReq) (*ConfirmWorkResp, error)
GetWaitConfirmWorkList(context.Context, *GetWaitConfirmWorkListReq) (*GetWaitConfirmWorkListResp, error)
// 对账单 // 对账单
GetReconciliationList(context.Context, *GetReconciliationListReq) (*GetReconciliationListResp, error) GetReconciliationList(context.Context, *GetReconciliationListReq) (*GetReconciliationListResp, error)
CreateReconciliation(context.Context, *ReconciliationInfo) (*CommonResponse, error) CreateReconciliation(context.Context, *ReconciliationInfo) (*CommonResponse, error)
@ -929,6 +938,9 @@ func (UnimplementedBundleServer) ToBeComfirmedWorks(context.Context, *ToBeComfir
func (UnimplementedBundleServer) ConfirmWork(context.Context, *ConfirmWorkReq) (*ConfirmWorkResp, error) { func (UnimplementedBundleServer) ConfirmWork(context.Context, *ConfirmWorkReq) (*ConfirmWorkResp, error) {
return nil, status.Errorf(codes.Unimplemented, "method ConfirmWork not implemented") return nil, status.Errorf(codes.Unimplemented, "method ConfirmWork not implemented")
} }
func (UnimplementedBundleServer) GetWaitConfirmWorkList(context.Context, *GetWaitConfirmWorkListReq) (*GetWaitConfirmWorkListResp, error) {
return nil, status.Errorf(codes.Unimplemented, "method GetWaitConfirmWorkList not implemented")
}
func (UnimplementedBundleServer) GetReconciliationList(context.Context, *GetReconciliationListReq) (*GetReconciliationListResp, error) { func (UnimplementedBundleServer) GetReconciliationList(context.Context, *GetReconciliationListReq) (*GetReconciliationListResp, error) {
return nil, status.Errorf(codes.Unimplemented, "method GetReconciliationList not implemented") return nil, status.Errorf(codes.Unimplemented, "method GetReconciliationList not implemented")
} }
@ -2416,6 +2428,35 @@ func _Bundle_ConfirmWork_Handler(srv interface{}, ctx context.Context, dec func(
return interceptor(ctx, in, info, handler) return interceptor(ctx, in, info, handler)
} }
func _Bundle_GetWaitConfirmWorkList_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc_go.UnaryServerInterceptor) (interface{}, error) {
in := new(GetWaitConfirmWorkListReq)
if err := dec(in); err != nil {
return nil, err
}
base := srv.(dubbo3.Dubbo3GrpcService)
args := []interface{}{}
args = append(args, in)
md, _ := metadata.FromIncomingContext(ctx)
invAttachment := make(map[string]interface{}, len(md))
for k, v := range md {
invAttachment[k] = v
}
invo := invocation.NewRPCInvocation("GetWaitConfirmWorkList", args, invAttachment)
if interceptor == nil {
result := base.XXX_GetProxyImpl().Invoke(ctx, invo)
return result, result.Error()
}
info := &grpc_go.UnaryServerInfo{
Server: srv,
FullMethod: ctx.Value("XXX_TRIPLE_GO_INTERFACE_NAME").(string),
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
result := base.XXX_GetProxyImpl().Invoke(ctx, invo)
return result, result.Error()
}
return interceptor(ctx, in, info, handler)
}
func _Bundle_GetReconciliationList_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc_go.UnaryServerInterceptor) (interface{}, error) { func _Bundle_GetReconciliationList_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc_go.UnaryServerInterceptor) (interface{}, error) {
in := new(GetReconciliationListReq) in := new(GetReconciliationListReq)
if err := dec(in); err != nil { if err := dec(in); err != nil {
@ -3539,6 +3580,10 @@ var Bundle_ServiceDesc = grpc_go.ServiceDesc{
MethodName: "ConfirmWork", MethodName: "ConfirmWork",
Handler: _Bundle_ConfirmWork_Handler, Handler: _Bundle_ConfirmWork_Handler,
}, },
{
MethodName: "GetWaitConfirmWorkList",
Handler: _Bundle_GetWaitConfirmWorkList_Handler,
},
{ {
MethodName: "GetReconciliationList", MethodName: "GetReconciliationList",
Handler: _Bundle_GetReconciliationList_Handler, Handler: _Bundle_GetReconciliationList_Handler,