diff --git a/playlet-admin/src/main/java/com/playlet/web/controller/app/PlayletRevenueRecordAppController.java b/playlet-admin/src/main/java/com/playlet/web/controller/app/PlayletRevenueRecordAppController.java new file mode 100644 index 0000000..368f637 --- /dev/null +++ b/playlet-admin/src/main/java/com/playlet/web/controller/app/PlayletRevenueRecordAppController.java @@ -0,0 +1,64 @@ +package com.playlet.web.controller.app; + +import com.github.pagehelper.PageInfo; +import com.playlet.common.core.controller.BaseController; +import com.playlet.common.core.domain.Result; +import com.playlet.common.core.page.TableDataInfo; +import com.playlet.system.domain.PlayletItem; +import com.playlet.system.domain.PlayletRevenueRecord; +import com.playlet.system.pojo.vo.RevenueRecordStatisticsVO; +import com.playlet.system.service.IPlayletRevenueRecordService; +import com.playlet.web.service.app.PlayletRevenueRecordAppService; +import io.swagger.annotations.ApiOperation; +import lombok.RequiredArgsConstructor; +import org.apache.shiro.authz.annotation.RequiresPermissions; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.*; + +import java.util.List; + + +/** + * @Date: 2024-03-17 + * @Author: 但星霖 + * @Version: v1.0 + * @Description: 短剧任务收益Controller + */ +@Controller +@RequestMapping("/app/record") +@RequiredArgsConstructor(onConstructor = @__(@Autowired)) +public class PlayletRevenueRecordAppController extends BaseController { + + private final PlayletRevenueRecordAppService service; + + @ResponseBody + @PostMapping("/getRecordList") + @ApiOperation(value = "分页查询短剧收益基础列表") + public Result> recordList(@RequestBody PlayletRevenueRecord playletRevenueRecord, + @RequestParam(value = "pageNum") Integer pageNum, + @RequestParam(value = "pageSize") Integer pageSize) { + return Result.success(service.getItemPage(playletRevenueRecord, pageSize, pageNum)); + } + + @ResponseBody + @PostMapping("/statistics/time") + @ApiOperation(value = "短剧收益时间统计") + public Result statisticsTime(@RequestBody PlayletRevenueRecord playletRevenueRecord) { + return Result.success(service.statisticsTime(playletRevenueRecord)); + } + + @ResponseBody + @PostMapping("/statistics") + @ApiOperation(value = "短剧收益统计") + public Result statistics(@RequestBody PlayletRevenueRecord playletRevenueRecord) { + return Result.success(service.statistics(playletRevenueRecord)); + } + + @ResponseBody + @PostMapping("/statistics/time/type") + @ApiOperation(value = "短剧收益时间统计分类") + public Result> statisticsTimeType(@RequestBody PlayletRevenueRecord playletRevenueRecord) { + return Result.success(service.statisticsTimeType(playletRevenueRecord)); + } +} diff --git a/playlet-admin/src/main/java/com/playlet/web/controller/system/PlayletRevenueRecordController.java b/playlet-admin/src/main/java/com/playlet/web/controller/system/PlayletRevenueRecordController.java new file mode 100644 index 0000000..da4da3c --- /dev/null +++ b/playlet-admin/src/main/java/com/playlet/web/controller/system/PlayletRevenueRecordController.java @@ -0,0 +1,127 @@ +package com.playlet.web.controller.system; + +import java.util.List; +import org.apache.shiro.authz.annotation.RequiresPermissions; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Controller; +import org.springframework.ui.ModelMap; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.ResponseBody; +import com.playlet.common.annotation.Log; +import com.playlet.common.enums.BusinessType; +import com.playlet.system.domain.PlayletRevenueRecord; +import com.playlet.system.service.IPlayletRevenueRecordService; +import com.playlet.common.core.controller.BaseController; +import com.playlet.common.core.domain.AjaxResult; +import com.playlet.common.utils.poi.ExcelUtil; +import com.playlet.common.core.page.TableDataInfo; + +/** + * @Date: 2024-03-17 + * @Author: 但星霖 + * @Version: v1.0 + * @Description: 短剧任务收益Controller + */ +@Controller +@RequestMapping("/system/record") +public class PlayletRevenueRecordController extends BaseController{ + + private String prefix = "system/record"; + + @Autowired + private IPlayletRevenueRecordService playletRevenueRecordService; + + @RequiresPermissions("system:record:view") + @GetMapping() + public String record() + { + return prefix + "/record"; + } + + /** + * 查询短剧任务收益列表 + */ + @RequiresPermissions("system:record:list") + @PostMapping("/list") + @ResponseBody + public TableDataInfo list(PlayletRevenueRecord playletRevenueRecord) + { + startPage(); + List list = playletRevenueRecordService.selectPlayletRevenueRecordList(playletRevenueRecord); + return getDataTable(list); + } + + /** + * 导出短剧任务收益列表 + */ + @RequiresPermissions("system:record:export") + @Log(title = "短剧任务收益", businessType = BusinessType.EXPORT) + @PostMapping("/export") + @ResponseBody + public AjaxResult export(PlayletRevenueRecord playletRevenueRecord) + { + List list = playletRevenueRecordService.selectPlayletRevenueRecordList(playletRevenueRecord); + ExcelUtil util = new ExcelUtil(PlayletRevenueRecord.class); + return util.exportExcel(list, "短剧任务收益数据"); + } + + /** + * 新增短剧任务收益 + */ + @GetMapping("/add") + public String add() + { + return prefix + "/add"; + } + + /** + * 新增保存短剧任务收益 + */ + @RequiresPermissions("system:record:add") + @Log(title = "短剧任务收益", businessType = BusinessType.INSERT) + @PostMapping("/add") + @ResponseBody + public AjaxResult addSave(PlayletRevenueRecord playletRevenueRecord) + { + return toAjax(playletRevenueRecordService.insertPlayletRevenueRecord(playletRevenueRecord)); + } + + /** + * 修改短剧任务收益 + */ + @RequiresPermissions("system:record:edit") + @GetMapping("/edit/{id}") + public String edit(@PathVariable("id") Long id, ModelMap mmap) + { + PlayletRevenueRecord playletRevenueRecord = playletRevenueRecordService.selectPlayletRevenueRecordById(id); + mmap.put("playletRevenueRecord", playletRevenueRecord); + return prefix + "/edit"; + } + + /** + * 修改保存短剧任务收益 + */ + @RequiresPermissions("system:record:edit") + @Log(title = "短剧任务收益", businessType = BusinessType.UPDATE) + @PostMapping("/edit") + @ResponseBody + public AjaxResult editSave(PlayletRevenueRecord playletRevenueRecord) + { + return toAjax(playletRevenueRecordService.updatePlayletRevenueRecord(playletRevenueRecord)); + } + + /** + * 删除短剧任务收益 + */ + @RequiresPermissions("system:record:remove") + @Log(title = "短剧任务收益", businessType = BusinessType.DELETE) + @PostMapping( "/remove") + @ResponseBody + public AjaxResult remove(String ids) + { + return toAjax(playletRevenueRecordService.deletePlayletRevenueRecordByIds(ids)); + } +} diff --git a/playlet-admin/src/main/java/com/playlet/web/service/app/PlayletRevenueRecordAppService.java b/playlet-admin/src/main/java/com/playlet/web/service/app/PlayletRevenueRecordAppService.java new file mode 100644 index 0000000..415c6a6 --- /dev/null +++ b/playlet-admin/src/main/java/com/playlet/web/service/app/PlayletRevenueRecordAppService.java @@ -0,0 +1,24 @@ +package com.playlet.web.service.app; + +import com.github.pagehelper.PageInfo; +import com.playlet.system.domain.PlayletRevenueRecord; +import com.playlet.system.pojo.vo.RevenueRecordStatisticsVO; + +import java.util.List; + +/** + * @Date: 2024-03-17 + * @Author: 但星霖 + * @Version: v1.0 + * @Description: 短剧任务收益Service app接口 + */ +public interface PlayletRevenueRecordAppService { + + PageInfo getItemPage(PlayletRevenueRecord record, Integer pageSize, Integer pageNum); + + PlayletRevenueRecord statisticsTime(PlayletRevenueRecord record); + + RevenueRecordStatisticsVO statistics(PlayletRevenueRecord record); + + List statisticsTimeType(PlayletRevenueRecord record); +} diff --git a/playlet-admin/src/main/java/com/playlet/web/service/app/impl/PlayletRevenueRecordAppServiceImpl.java b/playlet-admin/src/main/java/com/playlet/web/service/app/impl/PlayletRevenueRecordAppServiceImpl.java new file mode 100644 index 0000000..deca8f0 --- /dev/null +++ b/playlet-admin/src/main/java/com/playlet/web/service/app/impl/PlayletRevenueRecordAppServiceImpl.java @@ -0,0 +1,152 @@ +package com.playlet.web.service.app.impl; + +import com.baomidou.mybatisplus.core.toolkit.CollectionUtils; +import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; +import com.github.pagehelper.PageHelper; +import com.github.pagehelper.PageInfo; +import com.playlet.system.domain.PlayletRevenueRecord; +import com.playlet.system.pojo.vo.RevenueRecordStatisticsVO; +import com.playlet.system.service.IPlayletRevenueRecordService; +import com.playlet.web.service.app.PlayletRevenueRecordAppService; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.*; +import java.util.stream.Collectors; + +/** + * @Date: 2024-03-18 15:52 + * @Author: 但星霖 + * @Version: v1.0 + * @Description: 短剧任务收益Service app接口实现 + */ +@Slf4j +@Service +@RequiredArgsConstructor(onConstructor = @__(@Autowired)) +public class PlayletRevenueRecordAppServiceImpl implements PlayletRevenueRecordAppService { + + private final IPlayletRevenueRecordService revenueRecordService; + + @Override + public PageInfo getItemPage(PlayletRevenueRecord record, Integer pageNum, Integer pageSize) { + PageHelper.startPage(pageNum, pageSize); + List revenueRecordList = revenueRecordService.selectPlayletRevenueRecordList(record); + return PageInfo.of(revenueRecordList); + } + + @Override + public PlayletRevenueRecord statisticsTime(PlayletRevenueRecord record) { + PlayletRevenueRecord revenueRecord = new PlayletRevenueRecord(); + List revenueRecordList = revenueRecordService.selectPlayletRevenueRecordList(record); + if (CollectionUtils.isNotEmpty(revenueRecordList)) { + long rechargeMoney = 0L; + long refundMoney = 0L; + long estimateEarnings = 0L; + for (PlayletRevenueRecord revenue : revenueRecordList) { + rechargeMoney = rechargeMoney + revenue.getRechargeMoney(); + refundMoney = refundMoney + revenue.getRefundMoney(); + estimateEarnings = estimateEarnings + revenue.getEstimateEarnings(); + } + revenueRecord.setRechargeMoney(rechargeMoney); + revenueRecord.setRefundMoney(refundMoney); + revenueRecord.setEstimateEarnings(estimateEarnings); + } else { + revenueRecord.setRechargeMoney(0L); + revenueRecord.setRefundMoney(0L); + revenueRecord.setEstimateEarnings(0L); + } + return revenueRecord; + } + + @Override + public RevenueRecordStatisticsVO statistics(PlayletRevenueRecord record) { + RevenueRecordStatisticsVO vo = new RevenueRecordStatisticsVO(); + // 总金额。 + List revenueRecordListByTotal = revenueRecordService.selectPlayletRevenueRecordList(record); + if (CollectionUtils.isNotEmpty(revenueRecordListByTotal)) { + vo.setTotalMoney(revenueRecordListByTotal.stream().mapToLong(PlayletRevenueRecord::getPracticalEarnings).sum()); + } + // 开始时间结束时间缺省值 + Long startTime = System.currentTimeMillis(); + Long endTime = System.currentTimeMillis(); + // 今日 + startTime = timeGain(null); + timeSupplement(record, startTime, endTime); + List revenueRecordListByDay = revenueRecordService.selectPlayletRevenueRecordList(record); + if (CollectionUtils.isNotEmpty(revenueRecordListByDay)) { + vo.setTodayEstimate(revenueRecordListByDay.stream().mapToLong(PlayletRevenueRecord::getEstimateEarnings).sum()); + } + // 七日 + startTime = timeGain(-7); + timeSupplement(record, startTime, endTime); + List revenueRecordListBySevenDay = revenueRecordService.selectPlayletRevenueRecordList(record); + if (CollectionUtils.isNotEmpty(revenueRecordListBySevenDay)) { + vo.setSevenDaysEstimate(revenueRecordListBySevenDay.stream().mapToLong(PlayletRevenueRecord::getEstimateEarnings).sum()); + } + // 昨日 + startTime = timeGain(-1); + endTime = timeGain(null); + timeSupplement(record, startTime, endTime); + List revenueRecordListByYesterday = revenueRecordService.selectPlayletRevenueRecordList(record); + if (CollectionUtils.isNotEmpty(revenueRecordListByYesterday)) { + vo.setSevenDaysEstimate(revenueRecordListByYesterday.stream().mapToLong(PlayletRevenueRecord::getEstimateEarnings).sum()); + } + // 本月 + startTime = timeGain(1); + timeSupplement(record, startTime, endTime); + List revenueRecordListByMoney = revenueRecordService.selectPlayletRevenueRecordList(record); + if (CollectionUtils.isNotEmpty(revenueRecordListByMoney)) { + vo.setSevenDaysEstimate(revenueRecordListByMoney.stream().mapToLong(PlayletRevenueRecord::getEstimateEarnings).sum()); + } + return vo; + } + + @Override + public List statisticsTimeType(PlayletRevenueRecord record) { + List listByReturn = new ArrayList<>(); + + List revenueRecordList = revenueRecordService.selectPlayletRevenueRecordList(record); + if (CollectionUtils.isNotEmpty(revenueRecordList)) { + Map> listMap = revenueRecordList.stream().collect(Collectors.groupingBy(PlayletRevenueRecord::getEarningsType)); + for (Long key : listMap.keySet()) { + List list = listMap.get(key); + long rechargeMoney = 0L; + long refundMoney = 0L; + long estimateEarnings = 0L; + for (PlayletRevenueRecord revenue : list) { + rechargeMoney = rechargeMoney + revenue.getRechargeMoney(); + refundMoney = refundMoney + revenue.getRefundMoney(); + estimateEarnings = estimateEarnings + revenue.getEstimateEarnings(); + } + PlayletRevenueRecord revenueRecord = new PlayletRevenueRecord(); + revenueRecord.setEarningsType(key); + revenueRecord.setRechargeMoney(rechargeMoney); + revenueRecord.setRefundMoney(refundMoney); + revenueRecord.setEstimateEarnings(estimateEarnings); + listByReturn.add(revenueRecord); + } + } + return listByReturn; + } + + // 时间更新 + private void timeSupplement(PlayletRevenueRecord record, Long startTime, Long endTime) { + record.setStartTime(startTime); + record.setEndTime(endTime); + } + + // 获取时间 + private Long timeGain(Integer day) { + Calendar calendar = Calendar.getInstance(); + calendar.set(Calendar.HOUR_OF_DAY, 0); + calendar.set(Calendar.MINUTE, 0); + calendar.set(Calendar.SECOND, 0); + calendar.set(Calendar.MILLISECOND, 0); + if (ObjectUtils.isNotNull(day)) { + calendar.set(Calendar.DATE, day); + } + return calendar.getTimeInMillis(); + } +} diff --git a/playlet-system/src/main/java/com/playlet/system/domain/PlayletRevenueRecord.java b/playlet-system/src/main/java/com/playlet/system/domain/PlayletRevenueRecord.java new file mode 100644 index 0000000..4d38f51 --- /dev/null +++ b/playlet-system/src/main/java/com/playlet/system/domain/PlayletRevenueRecord.java @@ -0,0 +1,121 @@ +package com.playlet.system.domain; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.playlet.common.core.domain.BaseEntity; +import com.baomidou.mybatisplus.annotation.TableName; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; +import com.playlet.common.annotation.Excel; + +/** + * @Date: 2024-03-17 + * @Author: 但星霖 + * @Version: v1.0 + * @Description: 短剧任务收益对象 playlet_revenue_record + */ +@Data +@EqualsAndHashCode(callSuper = false) +@ApiModel(value = "短剧*短剧任务收益对象") +@TableName(value = "playlet_revenue_record") +public class PlayletRevenueRecord extends BaseEntity { + + private static final long serialVersionUID = 1L; + + /** + * 短剧任务收益主键id + */ + @ApiModelProperty(value = "id?") + private Long id; + + /** + * 退款金额(后台转换,保留分 直接*100 例如1块钱 在这里应表示100) + */ + @Excel(name = "退款金额(后台转换,保留分 直接*100 例如1块钱 在这里应表示100)") + @ApiModelProperty(value = "退款金额(后台转换,保留分 直接*100 例如1块钱 在这里应表示100)") + private Long refundMoney; + + /** + * 剧场id + */ + @Excel(name = "剧场id") + @ApiModelProperty(value = "剧场id") + private Long playletItemId; + + /** + * 用户id + */ + @Excel(name = "用户id") + @ApiModelProperty(value = "用户id") + private Long userId; + + /** + * 来源平台 1 抖音 2 快手 3 视频号 + */ + @Excel(name = "来源平台 1 抖音 2 快手 3 视频号") + @ApiModelProperty(value = "来源平台 1 抖音 2 快手 3 视频号") + private Long sourcePlatform; + + /** + * 收益类型 1 充值收益 2 广告收益 + */ + @Excel(name = "收益类型 1 充值收益 2 广告收益") + @ApiModelProperty(value = "收益类型 1 充值收益 2 广告收益") + private Long earningsType; + + /** + * 点击次数 + */ + @Excel(name = "点击次数") + @ApiModelProperty(value = "点击次数") + private Long clicksNumber; + + /** + * 点击人数 + */ + @Excel(name = "点击人数") + @ApiModelProperty(value = "点击人数") + private Long clicksNumberPeople; + + /** + * 充值金额(后台转换,保留分 直接*100 例如1块钱 在这里应表示100) + */ + @Excel(name = "充值金额(后台转换,保留分 直接*100 例如1块钱 在这里应表示100)") + @ApiModelProperty(value = "充值金额(后台转换,保留分 直接*100 例如1块钱 在这里应表示100)") + private Long rechargeMoney; + + /** + * 预估收益(后台转换,保留分 直接*100 例如1块钱 在这里应表示100) + */ + @Excel(name = "预估收益(后台转换,保留分 直接*100 例如1块钱 在这里应表示100)") + @ApiModelProperty(value = "预估收益(后台转换,保留分 直接*100 例如1块钱 在这里应表示100)") + private Long estimateEarnings; + + /** + * 实际收益(后台转换,保留分 直接*100 例如1块钱 在这里应表示100) + */ + @Excel(name = "实际收益(后台转换,保留分 直接*100 例如1块钱 在这里应表示100)") + @ApiModelProperty(value = "实际收益(后台转换,保留分 直接*100 例如1块钱 在这里应表示100)") + private Long practicalEarnings; + + /** + * 推送收益时间(此处为外部平台推入 建议使用时间戳后续数据转换。) + */ + @Excel(name = "推送收益时间(此处为外部平台推入 建议使用时间戳后续数据转换。)") + @ApiModelProperty(value = "推送收益时间(此处为外部平台推入 建议使用时间戳后续数据转换。) 时间戳") + private Long pushTime; + + /** 剧场类型 */ + @Excel(name = "剧场类型") + @ApiModelProperty(value = "剧场类型") + private Integer itemType; + + @TableField(exist = false) + @ApiModelProperty(value = "开始时间") + private Long startTime; + + @TableField(exist = false) + @ApiModelProperty(value = "结束时间") + private Long endTime; +} diff --git a/playlet-system/src/main/java/com/playlet/system/mapper/PlayletRevenueRecordMapper.java b/playlet-system/src/main/java/com/playlet/system/mapper/PlayletRevenueRecordMapper.java new file mode 100644 index 0000000..6f05c45 --- /dev/null +++ b/playlet-system/src/main/java/com/playlet/system/mapper/PlayletRevenueRecordMapper.java @@ -0,0 +1,63 @@ +package com.playlet.system.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.playlet.system.domain.PlayletRevenueRecord; + +import java.util.List; + +/** + * @Date: 2024-03-17 + * @Author: 但星霖 + * @Version: v1.0 + * @Description: 短剧任务收益Mapper接口 + */ +public interface PlayletRevenueRecordMapper extends BaseMapper { + + /** + * 查询短剧任务收益 + * + * @param id 短剧任务收益主键 + * @return 短剧任务收益 + */ + public PlayletRevenueRecord selectPlayletRevenueRecordById(Long id); + + /** + * 查询短剧任务收益列表 + * + * @param playletRevenueRecord 短剧任务收益 + * @return 短剧任务收益集合 + */ + public List selectPlayletRevenueRecordList(PlayletRevenueRecord playletRevenueRecord); + + /** + * 新增短剧任务收益 + * + * @param playletRevenueRecord 短剧任务收益 + * @return 结果 + */ + public int insertPlayletRevenueRecord(PlayletRevenueRecord playletRevenueRecord); + + /** + * 修改短剧任务收益 + * + * @param playletRevenueRecord 短剧任务收益 + * @return 结果 + */ + public int updatePlayletRevenueRecord(PlayletRevenueRecord playletRevenueRecord); + + /** + * 删除短剧任务收益 + * + * @param id 短剧任务收益主键 + * @return 结果 + */ + public int deletePlayletRevenueRecordById(Long id); + + /** + * 批量删除短剧任务收益 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deletePlayletRevenueRecordByIds(String[] ids); +} diff --git a/playlet-system/src/main/java/com/playlet/system/pojo/vo/RevenueRecordStatisticsVO.java b/playlet-system/src/main/java/com/playlet/system/pojo/vo/RevenueRecordStatisticsVO.java new file mode 100644 index 0000000..cd7a2ba --- /dev/null +++ b/playlet-system/src/main/java/com/playlet/system/pojo/vo/RevenueRecordStatisticsVO.java @@ -0,0 +1,31 @@ +package com.playlet.system.pojo.vo; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @Date: 2024-03-18 16:19 + * @Author: 但星霖 + * @Version: v1.0 + * @Description: 短剧任务收益统计vo + */ +@Data +@ApiModel(value = "短剧任务统计") +public class RevenueRecordStatisticsVO { + + @ApiModelProperty(value = "总收益") + private Long totalMoney = 0L; + + @ApiModelProperty(value = "今日预估") + private Long todayEstimate = 0L; + + @ApiModelProperty(value = "七日预估") + private Long sevenDaysEstimate = 0L; + + @ApiModelProperty(value = "本月预估") + private Long thisMonthEstimate = 0L; + + @ApiModelProperty(value = "昨日预估") + private Long yesterdayEstimate = 0L; +} diff --git a/playlet-system/src/main/java/com/playlet/system/service/IPlayletRevenueRecordService.java b/playlet-system/src/main/java/com/playlet/system/service/IPlayletRevenueRecordService.java new file mode 100644 index 0000000..371b588 --- /dev/null +++ b/playlet-system/src/main/java/com/playlet/system/service/IPlayletRevenueRecordService.java @@ -0,0 +1,63 @@ +package com.playlet.system.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.playlet.system.domain.PlayletRevenueRecord; + +import java.util.List; + +/** + * @Date: 2024-03-17 + * @Author: 但星霖 + * @Version: v1.0 + * @Description: 短剧任务收益Service接口 + */ +public interface IPlayletRevenueRecordService extends IService { + + /** + * 查询短剧任务收益 + * + * @param id 短剧任务收益主键 + * @return 短剧任务收益 + */ + public PlayletRevenueRecord selectPlayletRevenueRecordById(Long id); + + /** + * 查询短剧任务收益列表 + * + * @param playletRevenueRecord 短剧任务收益 + * @return 短剧任务收益集合 + */ + public List selectPlayletRevenueRecordList(PlayletRevenueRecord playletRevenueRecord); + + /** + * 新增短剧任务收益 + * + * @param playletRevenueRecord 短剧任务收益 + * @return 结果 + */ + public int insertPlayletRevenueRecord(PlayletRevenueRecord playletRevenueRecord); + + /** + * 修改短剧任务收益 + * + * @param playletRevenueRecord 短剧任务收益 + * @return 结果 + */ + public int updatePlayletRevenueRecord(PlayletRevenueRecord playletRevenueRecord); + + /** + * 批量删除短剧任务收益 + * + * @param ids 需要删除的短剧任务收益主键集合 + * @return 结果 + */ + public int deletePlayletRevenueRecordByIds(String ids); + + /** + * 删除短剧任务收益信息 + * + * @param id 短剧任务收益主键 + * @return 结果 + */ + public int deletePlayletRevenueRecordById(Long id); +} diff --git a/playlet-system/src/main/java/com/playlet/system/service/impl/PlayletRevenueRecordServiceImpl.java b/playlet-system/src/main/java/com/playlet/system/service/impl/PlayletRevenueRecordServiceImpl.java new file mode 100644 index 0000000..3b6b426 --- /dev/null +++ b/playlet-system/src/main/java/com/playlet/system/service/impl/PlayletRevenueRecordServiceImpl.java @@ -0,0 +1,93 @@ +package com.playlet.system.service.impl; + +import java.util.List; + +import com.playlet.common.utils.DateUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import com.playlet.system.mapper.PlayletRevenueRecordMapper; +import com.playlet.system.domain.PlayletRevenueRecord; +import com.playlet.system.service.IPlayletRevenueRecordService; +import com.playlet.common.core.text.Convert; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; + +/** + * @Date: 2024-03-17 + * @Author: 但星霖 + * @Version: v1.0 + * @Description: 短剧任务收益Service业务层处理 + */ +@Service +public class PlayletRevenueRecordServiceImpl extends ServiceImpl implements IPlayletRevenueRecordService { + + @Autowired + private PlayletRevenueRecordMapper playletRevenueRecordMapper; + + /** + * 查询短剧任务收益 + * + * @param id 短剧任务收益主键 + * @return 短剧任务收益 + */ + @Override + public PlayletRevenueRecord selectPlayletRevenueRecordById(Long id) { + return playletRevenueRecordMapper.selectPlayletRevenueRecordById(id); + } + + /** + * 查询短剧任务收益列表 + * + * @param playletRevenueRecord 短剧任务收益 + * @return 短剧任务收益 + */ + @Override + public List selectPlayletRevenueRecordList(PlayletRevenueRecord playletRevenueRecord) { + return playletRevenueRecordMapper.selectPlayletRevenueRecordList(playletRevenueRecord); + } + + /** + * 新增短剧任务收益 + * + * @param playletRevenueRecord 短剧任务收益 + * @return 结果 + */ + @Override + public int insertPlayletRevenueRecord(PlayletRevenueRecord playletRevenueRecord) { + playletRevenueRecord.setCreateTime(DateUtils.getNowDate()); + return playletRevenueRecordMapper.insertPlayletRevenueRecord(playletRevenueRecord); + } + + /** + * 修改短剧任务收益 + * + * @param playletRevenueRecord 短剧任务收益 + * @return 结果 + */ + @Override + public int updatePlayletRevenueRecord(PlayletRevenueRecord playletRevenueRecord) { + playletRevenueRecord.setUpdateTime(DateUtils.getNowDate()); + return playletRevenueRecordMapper.updatePlayletRevenueRecord(playletRevenueRecord); + } + + /** + * 批量删除短剧任务收益 + * + * @param ids 需要删除的短剧任务收益主键 + * @return 结果 + */ + @Override + public int deletePlayletRevenueRecordByIds(String ids) { + return playletRevenueRecordMapper.deletePlayletRevenueRecordByIds(Convert.toStrArray(ids)); + } + + /** + * 删除短剧任务收益信息 + * + * @param id 短剧任务收益主键 + * @return 结果 + */ + @Override + public int deletePlayletRevenueRecordById(Long id) { + return playletRevenueRecordMapper.deletePlayletRevenueRecordById(id); + } +} diff --git a/playlet-system/src/main/resources/mapper/system/PlayletRevenueRecordMapper.xml b/playlet-system/src/main/resources/mapper/system/PlayletRevenueRecordMapper.xml new file mode 100644 index 0000000..3a85cac --- /dev/null +++ b/playlet-system/src/main/resources/mapper/system/PlayletRevenueRecordMapper.xml @@ -0,0 +1,138 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + select id, refund_money, playlet_item_id, user_id, source_platform, earnings_type, clicks_number, clicks_number_people, recharge_money, estimate_earnings, practical_earnings, push_time, create_by, create_time, update_by, update_time, remark, item_type from playlet_revenue_record + + + + + + + + insert into playlet_revenue_record + + refund_money, + playlet_item_id, + user_id, + source_platform, + earnings_type, + clicks_number, + clicks_number_people, + recharge_money, + estimate_earnings, + practical_earnings, + push_time, + create_by, + create_time, + update_by, + update_time, + remark, + item_type, + + + #{refundMoney}, + #{playletItemId}, + #{userId}, + #{sourcePlatform}, + #{earningsType}, + #{clicksNumber}, + #{clicksNumberPeople}, + #{rechargeMoney}, + #{estimateEarnings}, + #{practicalEarnings}, + #{pushTime}, + #{createBy}, + #{createTime}, + #{updateBy}, + #{updateTime}, + #{remark}, + #{itemType}, + + + + + update playlet_revenue_record + + refund_money = #{refundMoney}, + playlet_item_id = #{playletItemId}, + user_id = #{userId}, + source_platform = #{sourcePlatform}, + earnings_type = #{earningsType}, + clicks_number = #{clicksNumber}, + clicks_number_people = #{clicksNumberPeople}, + recharge_money = #{rechargeMoney}, + estimate_earnings = #{estimateEarnings}, + practical_earnings = #{practicalEarnings}, + push_time = #{pushTime}, + create_by = #{createBy}, + create_time = #{createTime}, + update_by = #{updateBy}, + update_time = #{updateTime}, + remark = #{remark}, + item_type = #{itemType}, + + where id = #{id} + + + + delete from playlet_revenue_record where id = #{id} + + + + delete from playlet_revenue_record where id in + + #{id} + + + + \ No newline at end of file