代码初始化
This commit is contained in:
261
service/copydata/material_report_service.go
Normal file
261
service/copydata/material_report_service.go
Normal file
@@ -0,0 +1,261 @@
|
||||
package copydata
|
||||
|
||||
import (
|
||||
dao "cid/dao/copydata"
|
||||
dto "cid/model/dto/copydata"
|
||||
entity "cid/model/entity/copydata"
|
||||
"context"
|
||||
"errors"
|
||||
|
||||
"gitea.com/red-future/common/beans"
|
||||
)
|
||||
|
||||
type materialReportService struct{}
|
||||
|
||||
// MaterialReport 素材报表数据服务
|
||||
var MaterialReport = new(materialReportService)
|
||||
|
||||
// Create 创建素材报表数据
|
||||
func (s *materialReportService) Create(ctx context.Context, req *dto.MaterialReportItem) (res *dto.CreateMaterialReportRes, err error) {
|
||||
if req.ReportDateStr == "" {
|
||||
return nil, errors.New("报告日期不能为空")
|
||||
}
|
||||
|
||||
id, err := dao.MaterialReport.Insert(ctx, req)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
res = &dto.CreateMaterialReportRes{
|
||||
Id: id,
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
// BatchCreate 批量创建素材报表数据
|
||||
func (s *materialReportService) BatchCreate(ctx context.Context, req *dto.BatchCreateMaterialReportReq) (res *dto.BatchCreateMaterialReportRes, err error) {
|
||||
ctx = context.WithValue(ctx, "user", &beans.User{UserName: "admin"})
|
||||
|
||||
if len(req.Items) == 0 {
|
||||
return nil, errors.New("批量创建数据不能为空")
|
||||
}
|
||||
|
||||
successCount, failCount, failedIndexes, err := dao.MaterialReport.BatchInsert(ctx, req.Items)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
res = &dto.BatchCreateMaterialReportRes{
|
||||
SuccessCount: successCount,
|
||||
FailCount: failCount,
|
||||
FailedItems: failedIndexes,
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
// List 获取素材报表数据列表
|
||||
func (s *materialReportService) List(ctx context.Context, req *dto.ListMaterialReportReq) (res *dto.ListMaterialReportRes, err error) {
|
||||
list, total, err := dao.MaterialReport.List(ctx, req)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
items := make([]*dto.MaterialReportItem, len(list))
|
||||
for i, item := range list {
|
||||
items[i] = convertMaterialEntityToDTO(item)
|
||||
}
|
||||
|
||||
res = &dto.ListMaterialReportRes{
|
||||
List: items,
|
||||
Total: total,
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
// convertEntityToDTO 将实体转换为 DTO
|
||||
func convertMaterialEntityToDTO(entity *entity.MaterialReport) *dto.MaterialReportItem {
|
||||
return &dto.MaterialReportItem{
|
||||
CreatedBy: entity.CreatedBy,
|
||||
UpdatedBy: entity.UpdatedBy,
|
||||
T0OrderPaymentAmt: entity.T0OrderPaymentAmt,
|
||||
CreativeMaterialType: entity.CreativeMaterialType,
|
||||
LiveName: entity.LiveName,
|
||||
AuthorId: entity.AuthorId,
|
||||
PicUrl: entity.PicUrl,
|
||||
PicName: entity.PicName,
|
||||
PicId: entity.PicId,
|
||||
CoverUrl: entity.CoverUrl,
|
||||
CoverId: entity.CoverId,
|
||||
ItemOrderConversionRatio: entity.ItemOrderConversionRatio,
|
||||
ItemCardClickRatio: entity.ItemCardClickRatio,
|
||||
ItemCardClkCnt: entity.ItemCardClkCnt,
|
||||
LivePlayCntCost: entity.LivePlayCntCost,
|
||||
AdMerchantFollowCost: entity.AdMerchantFollowCost,
|
||||
AdMerchantFollow: entity.AdMerchantFollow,
|
||||
NetT0OrderCnt: entity.NetT0OrderCnt,
|
||||
NetT0Roi: entity.NetT0Roi,
|
||||
NetT0Gmv: entity.NetT0Gmv,
|
||||
PhotoName: entity.PhotoName,
|
||||
PhotoIdStr: entity.PhotoIdStr,
|
||||
PhotoId: entity.PhotoId,
|
||||
ModPriceSegment: entity.ModPriceSegment,
|
||||
AgeSegment: entity.AgeSegment,
|
||||
Province: entity.Province,
|
||||
Gender: entity.Gender,
|
||||
AdPhotoPlayedFiveRatio: entity.AdPhotoPlayedFiveRatio,
|
||||
AdPhotoPlayedThreeRatio: entity.AdPhotoPlayedThreeRatio,
|
||||
OrderSubmitRoi: entity.OrderSubmitRoi,
|
||||
OrderSubmitAmt: entity.OrderSubmitAmt,
|
||||
EventOrderSubmitCost: entity.EventOrderSubmitCost,
|
||||
EventOrderSubmit: entity.EventOrderSubmit,
|
||||
EventOrderPaidRoi: entity.EventOrderPaidRoi,
|
||||
EventAppInvoked: entity.EventAppInvoked,
|
||||
EventAddShoppingCart: entity.EventAddShoppingCart,
|
||||
ConversionNumCost: entity.ConversionNumCost,
|
||||
AdEffectivePlayNum: entity.AdEffectivePlayNum,
|
||||
AdItemClick: entity.AdItemClick,
|
||||
MerchantProductId: entity.MerchantProductId,
|
||||
CostTotal: entity.CostTotal,
|
||||
AdShow: entity.AdShow,
|
||||
AdShow1kCost: entity.AdShow1kCost,
|
||||
Impression: entity.Impression,
|
||||
PhotoClick: entity.PhotoClick,
|
||||
PhotoClickRatio: entity.PhotoClickRatio,
|
||||
Click: entity.Click,
|
||||
ActionbarClick: entity.ActionbarClick,
|
||||
ActionbarClickCost: entity.ActionbarClickCost,
|
||||
EspClickRatio: entity.EspClickRatio,
|
||||
ActionRatio: entity.ActionRatio,
|
||||
AdItemCount: entity.AdItemCount,
|
||||
EspLivePlayedSeconds: entity.EspLivePlayedSeconds,
|
||||
PlayedThreeSeconds: entity.PlayedThreeSeconds,
|
||||
Play3sRatio: entity.Play3sRatio,
|
||||
PlayedFiveSeconds: entity.PlayedFiveSeconds,
|
||||
Play5sRatio: entity.Play5sRatio,
|
||||
PlayedEnd: entity.PlayedEnd,
|
||||
PlayEndRatio: entity.PlayEndRatio,
|
||||
Share: entity.Share,
|
||||
Comment: entity.Comment,
|
||||
Likes: entity.Likes,
|
||||
Report: entity.Report,
|
||||
Block: entity.Block,
|
||||
ItemNegative: entity.ItemNegative,
|
||||
LiveShare: entity.LiveShare,
|
||||
LiveComment: entity.LiveComment,
|
||||
LiveReward: entity.LiveReward,
|
||||
EffectivePlayCount: entity.EffectivePlayCount,
|
||||
EffectivePlayRatio: entity.EffectivePlayRatio,
|
||||
ConversionNum: entity.ConversionNum,
|
||||
ConversionCostEsp: entity.ConversionCostEsp,
|
||||
Roi: entity.Roi,
|
||||
Gmv: entity.Gmv,
|
||||
T0Gmv: entity.T0Gmv,
|
||||
T1Gmv: entity.T1Gmv,
|
||||
T7Gmv: entity.T7Gmv,
|
||||
T15Gmv: entity.T15Gmv,
|
||||
T30Gmv: entity.T30Gmv,
|
||||
T0Roi: entity.T0Roi,
|
||||
T1Roi: entity.T1Roi,
|
||||
T7Roi: entity.T7Roi,
|
||||
T15Roi: entity.T15Roi,
|
||||
T30Roi: entity.T30Roi,
|
||||
PaiedOrder: entity.PaiedOrder,
|
||||
OrderRatio: entity.OrderRatio,
|
||||
T0OrderCnt: entity.T0OrderCnt,
|
||||
T0OrderCntCost: entity.T0OrderCntCost,
|
||||
T0OrderCntRatio: entity.T0OrderCntRatio,
|
||||
T1OrderCnt: entity.T1OrderCnt,
|
||||
T7OrderCnt: entity.T7OrderCnt,
|
||||
T15OrderCnt: entity.T15OrderCnt,
|
||||
T30OrderCnt: entity.T30OrderCnt,
|
||||
MerchantRecoFans: entity.MerchantRecoFans,
|
||||
T1Retention: entity.T1Retention,
|
||||
T7Retention: entity.T7Retention,
|
||||
T15Retention: entity.T15Retention,
|
||||
T30Retention: entity.T30Retention,
|
||||
T1RetentionRatio: entity.T1RetentionRatio,
|
||||
T7RetentionRatio: entity.T7RetentionRatio,
|
||||
T15RetentionRatio: entity.T15RetentionRatio,
|
||||
T30RetentionRatio: entity.T30RetentionRatio,
|
||||
ReservationSuccess: entity.ReservationSuccess,
|
||||
ReservationCost: entity.ReservationCost,
|
||||
StandardLivePlayedStarted: entity.StandardLivePlayedStarted,
|
||||
AdLivePlayCnt: entity.AdLivePlayCnt,
|
||||
AdLivePlayCntCost: entity.AdLivePlayCntCost,
|
||||
LiveAudienceCost: entity.LiveAudienceCost,
|
||||
LiveEventGoodsView: entity.LiveEventGoodsView,
|
||||
GoodsClickRatio: entity.GoodsClickRatio,
|
||||
DirectAttrPlatNewBuyerCnt: entity.DirectAttrPlatNewBuyerCnt,
|
||||
T30AttrPlatTotalBuyerCnt: entity.T30AttrPlatTotalBuyerCnt,
|
||||
DirectAttrSellerNewBuyerCnt: entity.DirectAttrSellerNewBuyerCnt,
|
||||
T30AttrSellerTotalBuyerCnt: entity.T30AttrSellerTotalBuyerCnt,
|
||||
T3Gmv: entity.T3Gmv,
|
||||
T3OrderCnt: entity.T3OrderCnt,
|
||||
T3Roi: entity.T3Roi,
|
||||
T7IndirectOrderAmt: entity.T7IndirectOrderAmt,
|
||||
T7IndirectOrderCnt: entity.T7IndirectOrderCnt,
|
||||
FansT0GmvPerFans: entity.FansT0GmvPerFans,
|
||||
FansT3GmvPerFans: entity.FansT3GmvPerFans,
|
||||
FansT7GmvPerFans: entity.FansT7GmvPerFans,
|
||||
FansT15GmvPerFans: entity.FansT15GmvPerFans,
|
||||
FansT30GmvPerFans: entity.FansT30GmvPerFans,
|
||||
RecoFansCost: entity.RecoFansCost,
|
||||
QcpxWhiteboxDirectOrderPaymentAmt: entity.QcpxWhiteboxDirectOrderPaymentAmt,
|
||||
QcpxWhiteboxDirectOrderCnt: entity.QcpxWhiteboxDirectOrderCnt,
|
||||
FansT0Gmv: entity.FansT0Gmv,
|
||||
FansT1Gmv: entity.FansT1Gmv,
|
||||
FansT7Gmv: entity.FansT7Gmv,
|
||||
FansT15Gmv: entity.FansT15Gmv,
|
||||
FansT30Gmv: entity.FansT30Gmv,
|
||||
FansT0Roi: entity.FansT0Roi,
|
||||
FansT1Roi: entity.FansT1Roi,
|
||||
FansT7Roi: entity.FansT7Roi,
|
||||
FansT15Roi: entity.FansT15Roi,
|
||||
FansT30Roi: entity.FansT30Roi,
|
||||
T0ShopNewBuyerOrderPaymentAmt: entity.T0ShopNewBuyerOrderPaymentAmt,
|
||||
T1ShopNewBuyerOrderPaymentAmt: entity.T1ShopNewBuyerOrderPaymentAmt,
|
||||
T3ShopNewBuyerOrderPaymentAmt: entity.T3ShopNewBuyerOrderPaymentAmt,
|
||||
T7ShopNewBuyerOrderPaymentAmt: entity.T7ShopNewBuyerOrderPaymentAmt,
|
||||
T15ShopNewBuyerOrderPaymentAmt: entity.T15ShopNewBuyerOrderPaymentAmt,
|
||||
T30ShopNewBuyerOrderPaymentAmt: entity.T30ShopNewBuyerOrderPaymentAmt,
|
||||
T0ShopNewBuyerOrderCnt: entity.T0ShopNewBuyerOrderCnt,
|
||||
T1ShopNewBuyerOrderCnt: entity.T1ShopNewBuyerOrderCnt,
|
||||
T3ShopNewBuyerOrderCnt: entity.T3ShopNewBuyerOrderCnt,
|
||||
T7ShopNewBuyerOrderCnt: entity.T7ShopNewBuyerOrderCnt,
|
||||
T15ShopNewBuyerOrderCnt: entity.T15ShopNewBuyerOrderCnt,
|
||||
T30ShopNewBuyerOrderCnt: entity.T30ShopNewBuyerOrderCnt,
|
||||
T1NewBuyerRepurchaseRatio: entity.T1NewBuyerRepurchaseRatio,
|
||||
T3NewBuyerRepurchaseRatio: entity.T3NewBuyerRepurchaseRatio,
|
||||
T7NewBuyerRepurchaseRatio: entity.T7NewBuyerRepurchaseRatio,
|
||||
T15NewBuyerRepurchaseRatio: entity.T15NewBuyerRepurchaseRatio,
|
||||
T30NewBuyerRepurchaseRatio: entity.T30NewBuyerRepurchaseRatio,
|
||||
T0ShopNewBuyerRoi: entity.T0ShopNewBuyerRoi,
|
||||
T1ShopNewBuyerRoi: entity.T1ShopNewBuyerRoi,
|
||||
T3ShopNewBuyerRoi: entity.T3ShopNewBuyerRoi,
|
||||
T7ShopNewBuyerRoi: entity.T7ShopNewBuyerRoi,
|
||||
T15ShopNewBuyerRoi: entity.T15ShopNewBuyerRoi,
|
||||
T30ShopNewBuyerRoi: entity.T30ShopNewBuyerRoi,
|
||||
CreateCardOrderCnt: entity.CreateCardOrderCnt,
|
||||
ForwardTsCreateCardOrderCnt: entity.ForwardTsCreateCardOrderCnt,
|
||||
CreateCardOrderCost: entity.CreateCardOrderCost,
|
||||
ForwardTsCreateCardOrderCost: entity.ForwardTsCreateCardOrderCost,
|
||||
ActivateCardOrderCnt: entity.ActivateCardOrderCnt,
|
||||
ForwardTsActivateCardOrderCnt: entity.ForwardTsActivateCardOrderCnt,
|
||||
ActivateCardOrderCost: entity.ActivateCardOrderCost,
|
||||
ForwardTsActivateCardOrderCost: entity.ForwardTsActivateCardOrderCost,
|
||||
CreateCardOrderRatio: entity.CreateCardOrderRatio,
|
||||
ForwardTsCreateCardOrderRatio: entity.ForwardTsCreateCardOrderRatio,
|
||||
ActivateCardOrderCntRatio: entity.ActivateCardOrderCntRatio,
|
||||
ForwardTsActivateCardOrderRatio: entity.ForwardTsActivateCardOrderRatio,
|
||||
LivePlayCnt: entity.LivePlayCnt,
|
||||
ItemEntranceClkCnt: entity.ItemEntranceClkCnt,
|
||||
ShowCnt: entity.ShowCnt,
|
||||
ReportDateStr: entity.ReportDateStr,
|
||||
CampaignId: entity.CampaignId,
|
||||
CampaignName: entity.CampaignName,
|
||||
UnitId: entity.UnitId,
|
||||
UnitName: entity.UnitName,
|
||||
CreativeId: entity.CreativeId,
|
||||
CreativeName: entity.CreativeName,
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user