IGrouponService.java 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495
  1. /*
  2. * Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
  3. *
  4. * Redistribution and use in source and binary forms, with or without
  5. * modification, are permitted provided that the following conditions are met:
  6. *
  7. * Redistributions of source code must retain the above copyright notice,
  8. * this list of conditions and the following disclaimer.
  9. * Redistributions in binary form must reproduce the above copyright
  10. * notice, this list of conditions and the following disclaimer in the
  11. * documentation and/or other materials provided with the distribution.
  12. * Neither the name of the dreamlu.net developer nor the names of its
  13. * contributors may be used to endorse or promote products derived from
  14. * this software without specific prior written permission.
  15. * Author: Chill 庄骞 (smallchill@163.com)
  16. */
  17. package org.springblade.modules.groupon.service;
  18. import org.springblade.modules.api.response.GroupStatisResponse;
  19. import org.springblade.modules.groupon.entity.Groupon;
  20. import org.springblade.modules.groupon.vo.GrouponVO;
  21. import com.baomidou.mybatisplus.extension.service.IService;
  22. import com.baomidou.mybatisplus.core.metadata.IPage;
  23. /**
  24. * 团购表 服务类
  25. *
  26. * @author BladeX
  27. * @since 2023-06-02
  28. */
  29. public interface IGrouponService extends IService<Groupon> {
  30. /**
  31. * 自定义分页
  32. *
  33. * @param page
  34. * @param groupon
  35. * @return
  36. */
  37. IPage<GrouponVO> selectGrouponPage(IPage<GrouponVO> page, GrouponVO groupon);
  38. /**
  39. * 最新团购
  40. *
  41. * @param longitude
  42. * @param latitude
  43. * @param page
  44. * @return
  45. */
  46. IPage<GrouponVO> latestGroupon(String address, Double longitude, Double latitude, IPage<GrouponVO> page);
  47. /**
  48. * 团购历史
  49. * @param page
  50. * @return
  51. */
  52. IPage<GrouponVO> historyGroupon(String address, Double longitude, Double latitude, IPage<GrouponVO> page);
  53. /**
  54. * 团购详情
  55. * @param grouponId
  56. * @return
  57. */
  58. GrouponVO detail(Long grouponId);
  59. /**
  60. * 发布团购
  61. * @param groupon
  62. */
  63. void publishGroupon(GrouponVO groupon);
  64. void check(GrouponVO groupon);
  65. /**
  66. * 审核
  67. */
  68. void audit(String id, Integer auditStatus, String remark);
  69. void perfect(GrouponVO grouponVO);
  70. GroupStatisResponse groupStatistics(Long userId);
  71. IPage<GrouponVO> grouponMngList(IPage page, Long userId, Integer state);
  72. GrouponVO grouponMngDetail(Long groupId);
  73. /**
  74. * 获取团购详情路径
  75. * @return
  76. */
  77. String getGrouponPath(Long grouponId);
  78. void gen(GrouponVO grouponVO);
  79. }