MaTechnicianMapper.java 6.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220
  1. package com.ylx.massage.mapper;
  2. import java.util.List;
  3. import com.baomidou.mybatisplus.core.mapper.BaseMapper;
  4. import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
  5. import com.ylx.companion.domain.dto.CompanionRecommendDTO;
  6. import com.ylx.companion.domain.vo.HotCompanionMerchantVO;
  7. import com.ylx.massage.domain.MaTechnician;
  8. import com.ylx.massage.domain.dto.MaTechnicianAuditQueryDTO;
  9. import com.ylx.massage.domain.dto.MaTechnicianMerchantQueryDTO;
  10. import com.ylx.massage.domain.dto.MassageMerchantRecommendDto;
  11. import com.ylx.massage.domain.vo.MaTechnicianAuditListVO;
  12. import com.ylx.massage.domain.vo.MaTechnicianMerchantDetailVO;
  13. import com.ylx.massage.domain.vo.MaTechnicianMerchantListVO;
  14. import com.ylx.massage.domain.vo.MassageProjectRecommendVo;
  15. import com.ylx.massage.domain.vo.MerchantVo;
  16. import com.ylx.merchant.domain.dto.MerchantDetailDTO;
  17. import com.ylx.merchant.domain.dto.MerchantListDTO;
  18. import com.ylx.merchant.domain.dto.MerchantProjectDTO;
  19. import com.ylx.merchant.domain.vo.MerchantDetailVO;
  20. import com.ylx.merchant.domain.vo.MerchantListVO;
  21. import com.ylx.project.domain.bookMerchant.vo.ProjectInfoVO;
  22. import org.apache.ibatis.annotations.Param;
  23. import org.mapstruct.Mapper;
  24. import org.apache.ibatis.annotations.Select;
  25. /**
  26. * 技师Mapper接口
  27. *
  28. * @author ylx
  29. * @date 2024-03-22
  30. */
  31. @Mapper
  32. public interface MaTechnicianMapper extends BaseMapper<MaTechnician>
  33. {
  34. /**
  35. * 查询技师
  36. *
  37. * @param id 技师主键
  38. * @return 技师
  39. */
  40. public MaTechnician selectMaTechnicianById(Long id);
  41. /**
  42. * 查询技师列表
  43. *
  44. * @param maTechnician 技师
  45. * @return 技师集合
  46. */
  47. List<MaTechnician> selectMaTechnicianList(MaTechnician maTechnician);
  48. /**
  49. * 新增技师
  50. *
  51. * @param maTechnician 技师
  52. * @return 结果
  53. */
  54. public int insertMaTechnician(MaTechnician maTechnician);
  55. /**
  56. * 修改技师
  57. *
  58. * @param maTechnician 技师
  59. * @return 结果
  60. */
  61. public int updateMaTechnician(MaTechnician maTechnician);
  62. /**
  63. * 删除技师
  64. *
  65. * @param id 技师主键
  66. * @return 结果
  67. */
  68. public int deleteMaTechnicianById(Long id);
  69. /**
  70. * 批量删除技师
  71. *
  72. * @param ids 需要删除的数据主键集合
  73. * @return 结果
  74. */
  75. public int deleteMaTechnicianByIds(Long[] ids);
  76. /**
  77. * 后台查询商户列表
  78. *
  79. * @param page 分页参数
  80. * @param dto 查询条件
  81. * @return 商户分页列表
  82. */
  83. Page<MaTechnicianMerchantListVO> selectMerchantList(Page<MaTechnicianMerchantListVO> page,
  84. @Param("dto") MaTechnicianMerchantQueryDTO dto);
  85. /**
  86. * 后台查询商户入驻审核列表
  87. *
  88. * @param page 分页参数
  89. * @param dto 查询条件
  90. * @return 商户入驻审核分页列表
  91. */
  92. Page<MaTechnicianAuditListVO> selectMerchantAuditList(Page<MaTechnicianAuditListVO> page,
  93. @Param("dto") MaTechnicianAuditQueryDTO dto);
  94. /**
  95. * 后台查询商户详情
  96. *
  97. * @param id 商户ID
  98. * @return 商户详情
  99. */
  100. MaTechnicianMerchantDetailVO selectMerchantDetailById(@Param("id") Long id);
  101. /**
  102. * 根据商户ID查询商户。
  103. *
  104. * @param id 商户ID
  105. * @return 商户信息
  106. */
  107. default MaTechnician selectMerchantById(Integer id) {
  108. return selectById(id);
  109. }
  110. /**
  111. * 根据商户ID查询商户证照。
  112. *
  113. * @param id 商户ID
  114. * @return 商户信息
  115. */
  116. default MaTechnician selectMerchantCertificateById(Integer id) {
  117. return selectById(id);
  118. }
  119. /**
  120. * 根据商户ID查询商户。
  121. *
  122. * @param id 商户ID
  123. * @return 商户信息
  124. */
  125. default MaTechnician selectMerchantById(Long id) {
  126. return selectById(id);
  127. }
  128. /**
  129. * 根据商户ID更新商户。
  130. *
  131. * @param maTechnician 商户信息
  132. * @return 影响行数
  133. */
  134. default int updateMerchantById(MaTechnician maTechnician) {
  135. return updateById(maTechnician);
  136. }
  137. /**
  138. * 根据商户ID更新合同文件。
  139. *
  140. * @param maTechnician 商户合同文件信息
  141. * @return 影响行数
  142. */
  143. default int updateMerchantContractById(MaTechnician maTechnician) {
  144. return updateById(maTechnician);
  145. }
  146. /**
  147. * 根据商户ID提交待入驻审核。
  148. *
  149. * @param maTechnician 商户审核状态信息
  150. * @return 影响行数
  151. */
  152. default int submitMerchantAuditById(MaTechnician maTechnician) {
  153. return updateById(maTechnician);
  154. }
  155. /**
  156. * 根据商户ID审核通过待审核商户。
  157. *
  158. * @param maTechnician 商户审核信息
  159. * @return 影响行数
  160. */
  161. default int approvePendingMerchantAuditById(MaTechnician maTechnician) {
  162. return updateById(maTechnician);
  163. }
  164. List<MerchantVo> getMerchantRecommend(@Param("dto") MassageMerchantRecommendDto dto);
  165. /**
  166. * 查询该城市是否有商户提供服务
  167. * @param areaCode
  168. * @return
  169. */
  170. @Select("SELECT EXISTS (" +
  171. " SELECT 1" +
  172. " FROM ma_technician t" +
  173. " INNER JOIN ma_project p ON t.id = p.merchant_id" +
  174. " WHERE t.te_area_code = #{areaCode}" +
  175. " AND t.is_delete = 0" +
  176. " AND t.audit_status = 2" +
  177. " AND t.n_status2 = 0" +
  178. " AND t.merchant_status = 0" +
  179. " AND p.is_delete = 0" +
  180. " AND p.audit_status = 1" +
  181. " AND p.merchant_type = 0" +
  182. " AND p.project_is_enable = 1" +
  183. ") AS has_merchant_with_service")
  184. Boolean isHasMerchantCity(@Param("areaCode") String areaCode);
  185. /**
  186. * 首页陪玩热门商户推荐销量前五
  187. * @param dto
  188. * @return
  189. */
  190. List<HotCompanionMerchantVO> getHotCompanionMerchantList(@Param("dto") CompanionRecommendDTO dto);
  191. Page<MerchantListVO> getMerchantPage(Page<MerchantListVO> page, @Param("dto") MerchantListDTO dto);
  192. Page<ProjectInfoVO> getByMerchantProject(Page<ProjectInfoVO> page, @Param("dto") MerchantProjectDTO dto);
  193. MerchantDetailVO getDetailById(Integer id);
  194. MerchantDetailVO getDetail(@Param("dto") MerchantDetailDTO dto);
  195. }