docs: swagger docs refacto & perf

This commit is contained in:
huchuansai
2025-06-12 10:23:22 +08:00
parent 725d14c125
commit d5a51faf8b
155 changed files with 3655 additions and 281 deletions

246
list_OpenAPI.json Normal file
View File

@@ -0,0 +1,246 @@
{
"swagger": "2.0",
"info": {
"description": "# 接口文档",
"version": "1.0",
"title": "接口文档",
"termsOfService": "http://www.xx.com/",
"contact": {
"name": "277769738@qq.com"
}
},
"host": "localhost:7002",
"basePath": "/api",
"schemes": [],
"consumes": [
"*/*"
],
"produces": [
"*/*"
],
"paths": {
"/api/clerk/user/list": {
"get": {
"tags": [
"play-clerk-user-info-controller"
],
"summary": "list",
"operationId": "listUsingGET_5",
"produces": [
"*/*"
],
"parameters": [
{
"name": "beginTime",
"in": "query",
"required": false,
"type": "string"
},
{
"name": "clerkState",
"in": "query",
"required": false,
"type": "string"
},
{
"name": "createdBy",
"in": "query",
"required": false,
"type": "string"
},
{
"name": "createdTime",
"in": "query",
"required": false,
"type": "string",
"format": "date-time"
},
{
"name": "currentPage",
"in": "query",
"required": false,
"type": "integer",
"format": "int32"
},
{
"name": "deleted",
"in": "query",
"required": false,
"type": "boolean"
},
{
"name": "endTime",
"in": "query",
"required": false,
"type": "string"
},
{
"name": "levelId",
"in": "query",
"required": false,
"type": "string"
},
{
"name": "listingState",
"in": "query",
"required": false,
"type": "string"
},
{
"name": "nickname",
"in": "query",
"required": false,
"type": "string"
},
{
"name": "onboardingState",
"in": "query",
"required": false,
"type": "string"
},
{
"name": "pageNum",
"in": "query",
"required": false,
"type": "integer",
"format": "int32"
},
{
"name": "pageSize",
"in": "query",
"required": false,
"type": "integer",
"format": "int32"
},
{
"name": "phone",
"in": "query",
"required": false,
"type": "string"
},
{
"name": "province",
"in": "query",
"required": false,
"type": "string"
},
{
"name": "recommendationState",
"in": "query",
"required": false,
"type": "string"
},
{
"name": "sex",
"in": "query",
"required": false,
"type": "string"
},
{
"name": "typeId",
"in": "query",
"required": false,
"type": "string"
},
{
"name": "updatedBy",
"in": "query",
"required": false,
"type": "string"
},
{
"name": "updatedTime",
"in": "query",
"required": false,
"type": "string",
"format": "date-time"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"originalRef": "全局统一返回结果",
"$ref": "#/definitions/全局统一返回结果"
}
},
"401": {
"description": "Unauthorized"
},
"403": {
"description": "Forbidden"
},
"404": {
"description": "Not Found"
}
},
"deprecated": false
}
}
},
"definitions": {
"全局统一返回结果": {
"type": "object",
"properties": {
"code": {
"type": "integer",
"format": "int32",
"description": "返回码"
},
"data": {
"type": "object",
"description": "返回数据"
},
"message": {
"type": "string",
"description": "返回消息"
},
"pageInfo": {
"description": "分页信息",
"originalRef": "PageInfo",
"$ref": "#/definitions/PageInfo"
},
"success": {
"type": "boolean",
"description": "是否成功"
},
"total": {
"type": "integer",
"format": "int64",
"description": "总条数"
}
},
"title": "全局统一返回结果"
},
"PageInfo": {
"type": "object",
"properties": {
"currentPage": {
"type": "integer",
"format": "int32",
"description": "当前页",
"refType": null
},
"pageSize": {
"type": "integer",
"format": "int32",
"description": "页大小",
"refType": null
},
"totalCount": {
"type": "integer",
"format": "int64",
"description": "总记录数",
"refType": null
},
"totalPage": {
"type": "integer",
"format": "int64",
"description": "总页数",
"refType": null
}
},
"title": "PageInfo"
}
}
}

View File

@@ -11,6 +11,13 @@ import com.starry.common.annotation.Log;
import com.starry.common.enums.BusinessType; import com.starry.common.enums.BusinessType;
import com.starry.common.result.R; import com.starry.common.result.R;
import com.starry.common.utils.ConvertUtil; import com.starry.common.utils.ConvertUtil;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import io.swagger.annotations.ApiResponse;
import io.swagger.annotations.ApiResponses;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile; import org.springframework.web.multipart.MultipartFile;
@@ -24,6 +31,7 @@ import java.io.IOException;
* @author admin * @author admin
* @since 2024-06-06 * @since 2024-06-06
*/ */
@Api(tags = "店员头像框管理", description = "店员头像框信息管理相关接口,包括查询、新增、修改、删除和赠送等操作")
@RestController @RestController
@RequestMapping("/clerk/avatarFrame") @RequestMapping("/clerk/avatarFrame")
public class PlayAvatarFrameInfoController { public class PlayAvatarFrameInfoController {
@@ -35,22 +43,34 @@ public class PlayAvatarFrameInfoController {
private IOssFileService ossFileService; private IOssFileService ossFileService;
@ApiOperation(value = "分页查询头像框", notes = "分页查询店员头像框信息列表")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = PlayAvatarFrameInfoEntity.class, responseContainer = "Page")
})
@PostMapping("/listByPage") @PostMapping("/listByPage")
public R listByPage(@Validated @RequestBody PlayAvatarFrameInfoQueryVo vo) { public R listByPage(@ApiParam(value = "查询条件", required = true) @Validated @RequestBody PlayAvatarFrameInfoQueryVo vo) {
return R.ok(playAvatarFrameInfoService.selectByPage(vo)); return R.ok(playAvatarFrameInfoService.selectByPage(vo));
} }
/** /**
* 查询店员头像框列表 * 查询店员头像框列表
*/ */
@ApiOperation(value = "查询所有头像框", notes = "获取所有店员头像框信息列表")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = PlayAvatarFrameInfoEntity.class, responseContainer = "List")
})
@GetMapping("/listAll") @GetMapping("/listAll")
public R listAll() { public R listAll() {
return R.ok(playAvatarFrameInfoService.selectAll()); return R.ok(playAvatarFrameInfoService.selectAll());
} }
@ApiOperation(value = "上传头像框图片", notes = "上传店员头像框图片文件")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = String.class, responseContainer = "R")
})
@PostMapping("/uploadFile") @PostMapping("/uploadFile")
public R uploadFile(@RequestParam("file") MultipartFile file) throws IOException { public R uploadFile(@ApiParam(value = "图片文件", required = true) @RequestParam("file") MultipartFile file) throws IOException {
String fileAddress = ossFileService.upload(file.getInputStream(), SecurityUtils.getTenantId(), file.getOriginalFilename()); String fileAddress = ossFileService.upload(file.getInputStream(), SecurityUtils.getTenantId(), file.getOriginalFilename());
return R.ok(fileAddress); return R.ok(fileAddress);
} }
@@ -59,9 +79,14 @@ public class PlayAvatarFrameInfoController {
/** /**
* 新增店员头像框 * 新增店员头像框
*/ */
@ApiOperation(value = "新增头像框", notes = "创建新的店员头像框信息")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功"),
@ApiResponse(code = 500, message = "添加失败")
})
@Log(title = "店员头像框", businessType = BusinessType.INSERT) @Log(title = "店员头像框", businessType = BusinessType.INSERT)
@PostMapping("/create") @PostMapping("/create")
public R create(@Validated @RequestBody PlayAvatarFrameInfoAddVo vo) { public R create(@ApiParam(value = "头像框信息", required = true) @Validated @RequestBody PlayAvatarFrameInfoAddVo vo) {
boolean success = playAvatarFrameInfoService.create(ConvertUtil.entityToVo(vo, PlayAvatarFrameInfoEntity.class)); boolean success = playAvatarFrameInfoService.create(ConvertUtil.entityToVo(vo, PlayAvatarFrameInfoEntity.class));
if (success) { if (success) {
return R.ok(); return R.ok();
@@ -72,9 +97,15 @@ public class PlayAvatarFrameInfoController {
/** /**
* 修改店员头像框 * 修改店员头像框
*/ */
@ApiOperation(value = "修改头像框", notes = "根据ID修改店员头像框信息")
@ApiImplicitParam(name = "id", value = "头像框ID", required = true, paramType = "path", dataType = "String", example = "1")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功"),
@ApiResponse(code = 500, message = "修改失败")
})
@Log(title = "店员头像框", businessType = BusinessType.UPDATE) @Log(title = "店员头像框", businessType = BusinessType.UPDATE)
@PostMapping(value = "/update/{id}") @PostMapping(value = "/update/{id}")
public R update(@PathVariable String id, @RequestBody PlayAvatarFrameInfoEntity playAvatarFrameInfo) { public R update(@PathVariable String id, @ApiParam(value = "头像框信息", required = true) @RequestBody PlayAvatarFrameInfoEntity playAvatarFrameInfo) {
playAvatarFrameInfo.setId(id); playAvatarFrameInfo.setId(id);
boolean success = playAvatarFrameInfoService.update(playAvatarFrameInfo); boolean success = playAvatarFrameInfoService.update(playAvatarFrameInfo);
if (success) { if (success) {
@@ -86,6 +117,11 @@ public class PlayAvatarFrameInfoController {
/** /**
* 删除店员头像框 * 删除店员头像框
*/ */
@ApiOperation(value = "删除头像框", notes = "根据ID批量删除店员头像框信息")
@ApiImplicitParam(name = "ids", value = "头像框ID数组", required = true, paramType = "path", dataType = "String[]", example = "1,2,3")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = Integer.class)
})
@Log(title = "店员头像框", businessType = BusinessType.DELETE) @Log(title = "店员头像框", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}") @DeleteMapping("/{ids}")
public R remove(@PathVariable String[] ids) { public R remove(@PathVariable String[] ids) {
@@ -95,9 +131,14 @@ public class PlayAvatarFrameInfoController {
/** /**
* 新增店员头像框 * 新增店员头像框
*/ */
@ApiOperation(value = "赠送头像框", notes = "赠送头像框给指定店员")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功"),
@ApiResponse(code = 500, message = "添加失败")
})
@Log(title = "赠送店员头像框", businessType = BusinessType.INSERT) @Log(title = "赠送店员头像框", businessType = BusinessType.INSERT)
@PostMapping("/sendAvatarFrame") @PostMapping("/sendAvatarFrame")
public R sendAvatarFrame(@Validated @RequestBody PlayAvatarFrameSendVo vo) { public R sendAvatarFrame(@ApiParam(value = "赠送信息", required = true) @Validated @RequestBody PlayAvatarFrameSendVo vo) {
System.out.println(vo); System.out.println(vo);
return R.error("添加失败"); return R.error("添加失败");
} }

View File

@@ -11,6 +11,13 @@ import com.starry.common.annotation.Log;
import com.starry.common.enums.BusinessType; import com.starry.common.enums.BusinessType;
import com.starry.common.result.R; import com.starry.common.result.R;
import com.starry.common.utils.ConvertUtil; import com.starry.common.utils.ConvertUtil;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import io.swagger.annotations.ApiResponse;
import io.swagger.annotations.ApiResponses;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
@@ -22,6 +29,7 @@ import javax.annotation.Resource;
* @author admin * @author admin
* @since 2024-05-04 * @since 2024-05-04
*/ */
@Api(tags = "店员动态管理", description = "店员动态信息管理相关接口,包括查询、审核和删除等操作")
@RestController @RestController
@RequestMapping("/clerk/article") @RequestMapping("/clerk/article")
public class PlayClerkArticleInfoController { public class PlayClerkArticleInfoController {
@@ -34,8 +42,12 @@ public class PlayClerkArticleInfoController {
/** /**
* 查询店员动态信息列表 * 查询店员动态信息列表
*/ */
@ApiOperation(value = "分页查询动态列表", notes = "分页查询店员动态信息列表")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = PlayClerkArticleReturnVo.class, responseContainer = "Page")
})
@PostMapping("/listByPage") @PostMapping("/listByPage")
public R list(@Validated @RequestBody PlayClerkArticleQueryVo vo) { public R list(@ApiParam(value = "查询条件", required = true) @Validated @RequestBody PlayClerkArticleQueryVo vo) {
IPage<PlayClerkArticleReturnVo> list = playClerkArticleInfoService.selectByPage(vo,false); IPage<PlayClerkArticleReturnVo> list = playClerkArticleInfoService.selectByPage(vo,false);
return R.ok(list); return R.ok(list);
} }
@@ -44,10 +56,15 @@ public class PlayClerkArticleInfoController {
/** /**
* 修改店员动态信息 * 修改店员动态信息
*/ */
@ApiOperation(value = "修改动态审核状态", notes = "更新店员动态审核状态,通过或拒绝")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功"),
@ApiResponse(code = 500, message = "修改失败")
})
//@PreAuthorize("@customSs.hasPermission('clerk:article:update')") //@PreAuthorize("@customSs.hasPermission('clerk:article:update')")
@Log(title = "店员动态信息", businessType = BusinessType.UPDATE) @Log(title = "店员动态信息", businessType = BusinessType.UPDATE)
@PostMapping(value = "/update") @PostMapping(value = "/update")
public R update(@RequestBody PlayClerkArticleReviewStateEditVo vo) { public R update(@ApiParam(value = "审核状态信息", required = true) @RequestBody PlayClerkArticleReviewStateEditVo vo) {
PlayClerkArticleInfoEntity entity = ConvertUtil.entityToVo(vo, PlayClerkArticleInfoEntity.class); PlayClerkArticleInfoEntity entity = ConvertUtil.entityToVo(vo, PlayClerkArticleInfoEntity.class);
boolean success = playClerkArticleInfoService.update(entity); boolean success = playClerkArticleInfoService.update(entity);
if (success) { if (success) {
@@ -59,6 +76,11 @@ public class PlayClerkArticleInfoController {
/** /**
* 删除店员动态信息 * 删除店员动态信息
*/ */
@ApiOperation(value = "删除动态", notes = "根据ID批量删除店员动态信息")
@ApiImplicitParam(name = "ids", value = "动态ID数组", required = true, paramType = "path", dataType = "String[]", example = "1,2,3")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功")
})
//@PreAuthorize("@customSs.hasPermission('clerk:article:delete')") //@PreAuthorize("@customSs.hasPermission('clerk:article:delete')")
@Log(title = "店员动态信息", businessType = BusinessType.DELETE) @Log(title = "店员动态信息", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}") @DeleteMapping("/{ids}")

View File

@@ -6,6 +6,13 @@ import com.starry.admin.modules.clerk.service.IPlayClerkClassificationInfoServic
import com.starry.common.annotation.Log; import com.starry.common.annotation.Log;
import com.starry.common.enums.BusinessType; import com.starry.common.enums.BusinessType;
import com.starry.common.result.R; import com.starry.common.result.R;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import io.swagger.annotations.ApiResponse;
import io.swagger.annotations.ApiResponses;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource; import javax.annotation.Resource;
@@ -17,6 +24,7 @@ import java.util.List;
* @author admin * @author admin
* @since 2024-04-06 * @since 2024-04-06
*/ */
@Api(tags = "店员分类管理", description = "店员分类信息管理相关接口,包括查询、新增、修改和删除等操作")
@RestController @RestController
@RequestMapping("/clerk/class") @RequestMapping("/clerk/class")
public class PlayClerkClassificationInfoController { public class PlayClerkClassificationInfoController {
@@ -26,6 +34,10 @@ public class PlayClerkClassificationInfoController {
/** /**
* 查询店员分类列表 * 查询店员分类列表
*/ */
@ApiOperation(value = "查询所有分类", notes = "获取所有店员分类信息列表")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = PlayClerkClassificationInfoEntity.class, responseContainer = "List")
})
@GetMapping("/listAll") @GetMapping("/listAll")
public R listAll() { public R listAll() {
List<PlayClerkClassificationInfoEntity> list = playClerkClassificationInfoService.selectAll(); List<PlayClerkClassificationInfoEntity> list = playClerkClassificationInfoService.selectAll();
@@ -36,8 +48,12 @@ public class PlayClerkClassificationInfoController {
/** /**
* 查询店员分类列表 * 查询店员分类列表
*/ */
@ApiOperation(value = "分页查询分类", notes = "分页查询店员分类信息列表")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = PlayClerkClassificationInfoEntity.class, responseContainer = "Page")
})
@GetMapping("/list") @GetMapping("/list")
public R list(PlayClerkClassificationInfoEntity playClerkClassificationInfo) { public R list(@ApiParam(value = "查询条件") PlayClerkClassificationInfoEntity playClerkClassificationInfo) {
IPage<PlayClerkClassificationInfoEntity> list = playClerkClassificationInfoService.selectPlayClerkClassificationInfoByPage(playClerkClassificationInfo); IPage<PlayClerkClassificationInfoEntity> list = playClerkClassificationInfoService.selectPlayClerkClassificationInfoByPage(playClerkClassificationInfo);
return R.ok(list); return R.ok(list);
} }
@@ -45,6 +61,11 @@ public class PlayClerkClassificationInfoController {
/** /**
* 获取店员分类详细信息 * 获取店员分类详细信息
*/ */
@ApiOperation(value = "获取分类详情", notes = "根据ID获取店员分类详细信息")
@ApiImplicitParam(name = "id", value = "分类ID", required = true, paramType = "path", dataType = "String", example = "1")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = PlayClerkClassificationInfoEntity.class)
})
@GetMapping(value = "/{id}") @GetMapping(value = "/{id}")
public R getInfo(@PathVariable("id") String id) { public R getInfo(@PathVariable("id") String id) {
return R.ok(playClerkClassificationInfoService.selectPlayClerkClassificationInfoById(id)); return R.ok(playClerkClassificationInfoService.selectPlayClerkClassificationInfoById(id));
@@ -53,9 +74,14 @@ public class PlayClerkClassificationInfoController {
/** /**
* 新增店员分类 * 新增店员分类
*/ */
@ApiOperation(value = "新增分类", notes = "创建新的店员分类信息")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功"),
@ApiResponse(code = 500, message = "添加失败")
})
@Log(title = "店员分类", businessType = BusinessType.INSERT) @Log(title = "店员分类", businessType = BusinessType.INSERT)
@PostMapping("/create") @PostMapping("/create")
public R create(@RequestBody PlayClerkClassificationInfoEntity playClerkClassificationInfo) { public R create(@ApiParam(value = "分类信息", required = true) @RequestBody PlayClerkClassificationInfoEntity playClerkClassificationInfo) {
boolean success = playClerkClassificationInfoService.create(playClerkClassificationInfo); boolean success = playClerkClassificationInfoService.create(playClerkClassificationInfo);
if (success) { if (success) {
return R.ok(); return R.ok();
@@ -66,9 +92,15 @@ public class PlayClerkClassificationInfoController {
/** /**
* 修改店员分类 * 修改店员分类
*/ */
@ApiOperation(value = "修改分类", notes = "根据ID修改店员分类信息")
@ApiImplicitParam(name = "id", value = "分类ID", required = true, paramType = "path", dataType = "String", example = "1")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功"),
@ApiResponse(code = 500, message = "修改失败")
})
@Log(title = "店员分类", businessType = BusinessType.UPDATE) @Log(title = "店员分类", businessType = BusinessType.UPDATE)
@PostMapping(value = "/update/{id}") @PostMapping(value = "/update/{id}")
public R update(@PathVariable String id, @RequestBody PlayClerkClassificationInfoEntity playClerkClassificationInfo) { public R update(@PathVariable String id, @ApiParam(value = "分类信息", required = true) @RequestBody PlayClerkClassificationInfoEntity playClerkClassificationInfo) {
playClerkClassificationInfo.setId(id); playClerkClassificationInfo.setId(id);
boolean success = playClerkClassificationInfoService.update(playClerkClassificationInfo); boolean success = playClerkClassificationInfoService.update(playClerkClassificationInfo);
if (success) { if (success) {
@@ -80,6 +112,11 @@ public class PlayClerkClassificationInfoController {
/** /**
* 删除店员分类 * 删除店员分类
*/ */
@ApiOperation(value = "删除分类", notes = "根据ID批量删除店员分类信息")
@ApiImplicitParam(name = "ids", value = "分类ID数组", required = true, paramType = "path", dataType = "String[]", example = "1,2,3")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = Integer.class)
})
@Log(title = "店员分类", businessType = BusinessType.DELETE) @Log(title = "店员分类", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}") @DeleteMapping("/{ids}")
public R remove(@PathVariable String[] ids) { public R remove(@PathVariable String[] ids) {

View File

@@ -8,6 +8,13 @@ import com.starry.common.annotation.Log;
import com.starry.common.enums.BusinessType; import com.starry.common.enums.BusinessType;
import com.starry.common.result.R; import com.starry.common.result.R;
import com.starry.common.utils.ConvertUtil; import com.starry.common.utils.ConvertUtil;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import io.swagger.annotations.ApiResponse;
import io.swagger.annotations.ApiResponses;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource; import javax.annotation.Resource;
@@ -19,6 +26,7 @@ import java.util.List;
* @author admin * @author admin
* @since 2024-03-31 * @since 2024-03-31
*/ */
@Api(tags = "陪聊服务项目", description = "陪聊服务项目管理相关接口,包括查询、新增、修改和删除等操作")
@RestController @RestController
@RequestMapping("/clerk/commodity") @RequestMapping("/clerk/commodity")
public class PlayClerkCommodityController { public class PlayClerkCommodityController {
@@ -28,6 +36,10 @@ public class PlayClerkCommodityController {
/** /**
* 查询陪聊服务项目列表 * 查询陪聊服务项目列表
*/ */
@ApiOperation(value = "查询所有服务项目", notes = "获取所有陪聊服务项目列表")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = PlayClerkCommodityQueryVo.class, responseContainer = "List")
})
@GetMapping("/listAllCommodity") @GetMapping("/listAllCommodity")
public R listAllCommodity() { public R listAllCommodity() {
List<PlayClerkCommodityEntity> list = playClerkCommodityService.selectAll(); List<PlayClerkCommodityEntity> list = playClerkCommodityService.selectAll();
@@ -38,8 +50,12 @@ public class PlayClerkCommodityController {
/** /**
* 查询陪聊服务项目列表 * 查询陪聊服务项目列表
*/ */
@ApiOperation(value = "分页查询服务项目", notes = "分页查询陪聊服务项目列表")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = PlayClerkCommodityEntity.class, responseContainer = "Page")
})
@GetMapping("/list") @GetMapping("/list")
public R list(PlayClerkCommodityEntity playClerkCommodity) { public R list(@ApiParam(value = "查询条件") PlayClerkCommodityEntity playClerkCommodity) {
IPage<PlayClerkCommodityEntity> list = playClerkCommodityService.selectPlayClerkCommodityByPage(playClerkCommodity); IPage<PlayClerkCommodityEntity> list = playClerkCommodityService.selectPlayClerkCommodityByPage(playClerkCommodity);
return R.ok(list); return R.ok(list);
} }
@@ -47,6 +63,11 @@ public class PlayClerkCommodityController {
/** /**
* 获取陪聊服务项目详细信息 * 获取陪聊服务项目详细信息
*/ */
@ApiOperation(value = "获取服务项目详情", notes = "根据ID获取陪聊服务项目详细信息")
@ApiImplicitParam(name = "id", value = "服务项目ID", required = true, paramType = "path", dataType = "String", example = "1")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = PlayClerkCommodityEntity.class)
})
@GetMapping(value = "/{id}") @GetMapping(value = "/{id}")
public R getInfo(@PathVariable("id") String id) { public R getInfo(@PathVariable("id") String id) {
return R.ok(playClerkCommodityService.selectPlayClerkCommodityById(id)); return R.ok(playClerkCommodityService.selectPlayClerkCommodityById(id));
@@ -55,9 +76,14 @@ public class PlayClerkCommodityController {
/** /**
* 新增陪聊服务项目 * 新增陪聊服务项目
*/ */
@ApiOperation(value = "新增服务项目", notes = "创建新的陪聊服务项目")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功"),
@ApiResponse(code = 500, message = "添加失败")
})
@Log(title = "陪聊服务项目", businessType = BusinessType.INSERT) @Log(title = "陪聊服务项目", businessType = BusinessType.INSERT)
@PostMapping("/create") @PostMapping("/create")
public R create(@RequestBody PlayClerkCommodityEntity playClerkCommodity) { public R create(@ApiParam(value = "服务项目信息", required = true) @RequestBody PlayClerkCommodityEntity playClerkCommodity) {
boolean success = playClerkCommodityService.create(playClerkCommodity); boolean success = playClerkCommodityService.create(playClerkCommodity);
if (success) { if (success) {
return R.ok(); return R.ok();
@@ -69,9 +95,15 @@ public class PlayClerkCommodityController {
/** /**
* 修改陪聊服务项目 * 修改陪聊服务项目
*/ */
@ApiOperation(value = "修改服务项目", notes = "根据ID修改陪聊服务项目信息")
@ApiImplicitParam(name = "id", value = "服务项目ID", required = true, paramType = "path", dataType = "String", example = "1")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功"),
@ApiResponse(code = 500, message = "修改失败")
})
@Log(title = "陪聊服务项目", businessType = BusinessType.UPDATE) @Log(title = "陪聊服务项目", businessType = BusinessType.UPDATE)
@PostMapping(value = "/update/{id}") @PostMapping(value = "/update/{id}")
public R update(@PathVariable String id, @RequestBody PlayClerkCommodityEntity playClerkCommodity) { public R update(@PathVariable String id, @ApiParam(value = "服务项目信息", required = true) @RequestBody PlayClerkCommodityEntity playClerkCommodity) {
playClerkCommodity.setId(id); playClerkCommodity.setId(id);
boolean success = playClerkCommodityService.update(playClerkCommodity); boolean success = playClerkCommodityService.update(playClerkCommodity);
if (success) { if (success) {
@@ -83,6 +115,11 @@ public class PlayClerkCommodityController {
/** /**
* 删除陪聊服务项目 * 删除陪聊服务项目
*/ */
@ApiOperation(value = "删除服务项目", notes = "根据ID批量删除陪聊服务项目")
@ApiImplicitParam(name = "ids", value = "服务项目ID数组", required = true, paramType = "path", dataType = "String[]", example = "1,2,3")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = Integer.class)
})
@Log(title = "陪聊服务项目", businessType = BusinessType.DELETE) @Log(title = "陪聊服务项目", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}") @DeleteMapping("/{ids}")
public R remove(@PathVariable String[] ids) { public R remove(@PathVariable String[] ids) {

View File

@@ -8,6 +8,13 @@ import com.starry.admin.modules.clerk.service.IPlayClerkDataReviewInfoService;
import com.starry.common.annotation.Log; import com.starry.common.annotation.Log;
import com.starry.common.enums.BusinessType; import com.starry.common.enums.BusinessType;
import com.starry.common.result.R; import com.starry.common.result.R;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import io.swagger.annotations.ApiResponse;
import io.swagger.annotations.ApiResponses;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
@@ -19,6 +26,7 @@ import javax.annotation.Resource;
* @author admin * @author admin
* @since 2024-05-19 * @since 2024-05-19
*/ */
@Api(tags = "店员资料内容审核", description = "店员资料内容审核相关接口,包括昵称、头像、相册、录音等资料的审核")
@RestController @RestController
@RequestMapping("/clerk/data/review") @RequestMapping("/clerk/data/review")
public class PlayClerkDataReviewInfoController { public class PlayClerkDataReviewInfoController {
@@ -30,8 +38,12 @@ public class PlayClerkDataReviewInfoController {
/** /**
* 查询店员资料审核列表 * 查询店员资料审核列表
*/ */
@ApiOperation(value = "查询资料审核列表", notes = "分页查询店员资料审核列表")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = PlayClerkDataReviewReturnVo.class, responseContainer = "Page")
})
@PostMapping("/listByPage") @PostMapping("/listByPage")
public R list(@Validated @RequestBody PlayClerkDataReviewQueryVo vo) { public R list(@ApiParam(value = "查询条件", required = true) @Validated @RequestBody PlayClerkDataReviewQueryVo vo) {
IPage<PlayClerkDataReviewReturnVo> list = playClerkDataReviewInfoService.selectByPage(vo); IPage<PlayClerkDataReviewReturnVo> list = playClerkDataReviewInfoService.selectByPage(vo);
return R.ok(list); return R.ok(list);
} }
@@ -39,10 +51,14 @@ public class PlayClerkDataReviewInfoController {
/** /**
* 修改店员资料审核 * 修改店员资料审核
*/ */
@ApiOperation(value = "修改资料审核状态", notes = "更新店员资料审核状态,通过或拒绝")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功")
})
//@PreAuthorize("@customSs.hasPermission('clerk:dataReview:update')") //@PreAuthorize("@customSs.hasPermission('clerk:dataReview:update')")
@Log(title = "店员资料审核", businessType = BusinessType.UPDATE) @Log(title = "店员资料审核", businessType = BusinessType.UPDATE)
@PostMapping(value = "/update") @PostMapping(value = "/update")
public R update(@Validated @RequestBody PlayClerkDataReviewStateEditVo vo) { public R update(@ApiParam(value = "审核状态信息", required = true) @Validated @RequestBody PlayClerkDataReviewStateEditVo vo) {
playClerkDataReviewInfoService.updateDataReviewState(vo); playClerkDataReviewInfoService.updateDataReviewState(vo);
return R.ok(); return R.ok();
} }
@@ -50,6 +66,11 @@ public class PlayClerkDataReviewInfoController {
/** /**
* 删除店员资料审核 * 删除店员资料审核
*/ */
@ApiOperation(value = "删除资料审核记录", notes = "根据ID批量删除店员资料审核记录")
@ApiImplicitParam(name = "ids", value = "审核记录ID数组", required = true, paramType = "path", dataType = "String[]", example = "1,2,3")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = Integer.class)
})
//@PreAuthorize("@customSs.hasPermission('clerk:dataReview:delete')") //@PreAuthorize("@customSs.hasPermission('clerk:dataReview:delete')")
@Log(title = "店员资料审核", businessType = BusinessType.DELETE) @Log(title = "店员资料审核", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}") @DeleteMapping("/{ids}")

View File

@@ -9,6 +9,13 @@ import com.starry.common.annotation.Log;
import com.starry.common.enums.BusinessType; import com.starry.common.enums.BusinessType;
import com.starry.common.result.R; import com.starry.common.result.R;
import com.starry.common.utils.ConvertUtil; import com.starry.common.utils.ConvertUtil;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import io.swagger.annotations.ApiResponse;
import io.swagger.annotations.ApiResponses;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
@@ -20,6 +27,7 @@ import javax.annotation.Resource;
* @author admin * @author admin
* @since 2024-03-30 * @since 2024-03-30
*/ */
@Api(tags = "店员等级管理", description = "店员等级信息管理相关接口,包括查询、新增、修改和删除等操作")
@RestController @RestController
@RequestMapping("/clerk/level") @RequestMapping("/clerk/level")
public class PlayClerkLevelInfoController { public class PlayClerkLevelInfoController {
@@ -29,6 +37,10 @@ public class PlayClerkLevelInfoController {
/** /**
* 查询店员等级列表 * 查询店员等级列表
*/ */
@ApiOperation(value = "查询所有等级", notes = "获取所有店员等级信息列表")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = PlayClerkLevelInfoEntity.class, responseContainer = "List")
})
@GetMapping("/listAll") @GetMapping("/listAll")
public R listAll() { public R listAll() {
return R.ok(playClerkLevelInfoService.selectAll()); return R.ok(playClerkLevelInfoService.selectAll());
@@ -37,6 +49,11 @@ public class PlayClerkLevelInfoController {
/** /**
* 获取店员等级详细信息 * 获取店员等级详细信息
*/ */
@ApiOperation(value = "获取等级详情", notes = "根据ID获取店员等级详细信息")
@ApiImplicitParam(name = "id", value = "等级ID", required = true, paramType = "path", dataType = "String", example = "1")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = PlayClerkLevelInfoEntity.class)
})
@GetMapping(value = "/{id}") @GetMapping(value = "/{id}")
public R getInfo(@PathVariable("id") String id) { public R getInfo(@PathVariable("id") String id) {
return R.ok(playClerkLevelInfoService.selectPlayClerkLevelInfoById(id)); return R.ok(playClerkLevelInfoService.selectPlayClerkLevelInfoById(id));
@@ -45,9 +62,14 @@ public class PlayClerkLevelInfoController {
/** /**
* 新增店员等级 * 新增店员等级
*/ */
@ApiOperation(value = "新增等级", notes = "创建新的店员等级信息")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功"),
@ApiResponse(code = 500, message = "添加失败")
})
@Log(title = "店员等级", businessType = BusinessType.INSERT) @Log(title = "店员等级", businessType = BusinessType.INSERT)
@PostMapping("/create") @PostMapping("/create")
public R create(@RequestBody PlayClerkLevelAddVo vo) { public R create(@ApiParam(value = "等级信息", required = true) @RequestBody PlayClerkLevelAddVo vo) {
PlayClerkLevelInfoEntity entity = ConvertUtil.entityToVo(vo, PlayClerkLevelInfoEntity.class); PlayClerkLevelInfoEntity entity = ConvertUtil.entityToVo(vo, PlayClerkLevelInfoEntity.class);
int level = playClerkLevelInfoService.selectMaxLevel(); int level = playClerkLevelInfoService.selectMaxLevel();
entity.setLevel(level + 1); entity.setLevel(level + 1);
@@ -61,9 +83,14 @@ public class PlayClerkLevelInfoController {
/** /**
* 修改店员等级 * 修改店员等级
*/ */
@ApiOperation(value = "修改等级", notes = "修改店员等级信息")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功"),
@ApiResponse(code = 500, message = "修改失败")
})
@Log(title = "店员等级", businessType = BusinessType.UPDATE) @Log(title = "店员等级", businessType = BusinessType.UPDATE)
@PostMapping(value = "/update") @PostMapping(value = "/update")
public R update(@Validated @RequestBody PlayClerkLevelEditVo vo) { public R update(@ApiParam(value = "等级信息", required = true) @Validated @RequestBody PlayClerkLevelEditVo vo) {
PlayClerkLevelInfoEntity entity = ConvertUtil.entityToVo(vo, PlayClerkLevelInfoEntity.class); PlayClerkLevelInfoEntity entity = ConvertUtil.entityToVo(vo, PlayClerkLevelInfoEntity.class);
boolean success = playClerkLevelInfoService.update(entity); boolean success = playClerkLevelInfoService.update(entity);
if (success) { if (success) {
@@ -75,6 +102,11 @@ public class PlayClerkLevelInfoController {
/** /**
* 删除店员等级 * 删除店员等级
*/ */
@ApiOperation(value = "删除最高等级", notes = "删除系统中最高的店员等级")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功"),
@ApiResponse(code = 500, message = "最后一级,不允许删除")
})
@Log(title = "店员等级", businessType = BusinessType.DELETE) @Log(title = "店员等级", businessType = BusinessType.DELETE)
@DeleteMapping("delMaxLevel") @DeleteMapping("delMaxLevel")
public R remove() { public R remove() {

View File

@@ -6,6 +6,12 @@ import com.starry.admin.modules.clerk.service.IPlayClerkPkService;
import com.starry.common.annotation.Log; import com.starry.common.annotation.Log;
import com.starry.common.enums.BusinessType; import com.starry.common.enums.BusinessType;
import com.starry.common.result.R; import com.starry.common.result.R;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import io.swagger.annotations.ApiResponse;
import io.swagger.annotations.ApiResponses;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource; import javax.annotation.Resource;
@@ -16,6 +22,7 @@ import javax.annotation.Resource;
* @author admin * @author admin
* @since 2024-08-02 * @since 2024-08-02
*/ */
@Api(tags = "店员PK管理", description = "店员PK信息管理相关接口包括查询、新增、修改和删除等操作")
@RestController @RestController
@RequestMapping("/play/pk") @RequestMapping("/play/pk")
public class PlayClerkPkController { public class PlayClerkPkController {
@@ -25,8 +32,12 @@ public class PlayClerkPkController {
/** /**
* 查询店员pk列表 * 查询店员pk列表
*/ */
@ApiOperation(value = "分页查询PK列表", notes = "分页查询店员PK信息列表")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = PlayClerkPkEntity.class, responseContainer = "Page")
})
@GetMapping("/list") @GetMapping("/list")
public R list(PlayClerkPkEntity playClerkPk) { public R list(@ApiParam(value = "查询条件") PlayClerkPkEntity playClerkPk) {
IPage<PlayClerkPkEntity> list = playClerkPkService.selectPlayClerkPkByPage(playClerkPk); IPage<PlayClerkPkEntity> list = playClerkPkService.selectPlayClerkPkByPage(playClerkPk);
return R.ok(list); return R.ok(list);
} }
@@ -34,6 +45,11 @@ public class PlayClerkPkController {
/** /**
* 获取店员pk详细信息 * 获取店员pk详细信息
*/ */
@ApiOperation(value = "获取PK详情", notes = "根据ID获取店员PK详细信息")
@ApiImplicitParam(name = "id", value = "PK记录ID", required = true, paramType = "path", dataType = "String", example = "1")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = PlayClerkPkEntity.class)
})
@GetMapping(value = "/{id}") @GetMapping(value = "/{id}")
public R getInfo(@PathVariable("id") String id) { public R getInfo(@PathVariable("id") String id) {
return R.ok(playClerkPkService.selectPlayClerkPkById(id)); return R.ok(playClerkPkService.selectPlayClerkPkById(id));
@@ -42,9 +58,14 @@ public class PlayClerkPkController {
/** /**
* 新增店员pk * 新增店员pk
*/ */
@ApiOperation(value = "新增PK记录", notes = "创建新的店员PK信息")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功"),
@ApiResponse(code = 500, message = "添加失败")
})
@Log(title = "店员pk", businessType = BusinessType.INSERT) @Log(title = "店员pk", businessType = BusinessType.INSERT)
@PostMapping("/create") @PostMapping("/create")
public R create(@RequestBody PlayClerkPkEntity playClerkPk) { public R create(@ApiParam(value = "PK信息", required = true) @RequestBody PlayClerkPkEntity playClerkPk) {
boolean success = playClerkPkService.create(playClerkPk); boolean success = playClerkPkService.create(playClerkPk);
if (success) { if (success) {
return R.ok(); return R.ok();
@@ -55,9 +76,15 @@ public class PlayClerkPkController {
/** /**
* 修改店员pk * 修改店员pk
*/ */
@ApiOperation(value = "修改PK记录", notes = "根据ID修改店员PK信息")
@ApiImplicitParam(name = "id", value = "PK记录ID", required = true, paramType = "path", dataType = "String", example = "1")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功"),
@ApiResponse(code = 500, message = "修改失败")
})
@Log(title = "店员pk", businessType = BusinessType.UPDATE) @Log(title = "店员pk", businessType = BusinessType.UPDATE)
@PostMapping(value = "/update/{id}") @PostMapping(value = "/update/{id}")
public R update(@PathVariable String id, @RequestBody PlayClerkPkEntity playClerkPk) { public R update(@PathVariable String id, @ApiParam(value = "PK信息", required = true) @RequestBody PlayClerkPkEntity playClerkPk) {
playClerkPk.setId(id); playClerkPk.setId(id);
boolean success = playClerkPkService.update(playClerkPk); boolean success = playClerkPkService.update(playClerkPk);
if (success) { if (success) {
@@ -69,6 +96,11 @@ public class PlayClerkPkController {
/** /**
* 删除店员pk * 删除店员pk
*/ */
@ApiOperation(value = "删除PK记录", notes = "根据ID批量删除店员PK信息")
@ApiImplicitParam(name = "ids", value = "PK记录ID数组", required = true, paramType = "path", dataType = "String[]", example = "1,2,3")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = Integer.class)
})
@Log(title = "店员pk", businessType = BusinessType.DELETE) @Log(title = "店员pk", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}") @DeleteMapping("/{ids}")
public R remove(@PathVariable String[] ids) { public R remove(@PathVariable String[] ids) {

View File

@@ -8,6 +8,13 @@ import com.starry.admin.modules.clerk.service.IPlayClerkRankingInfoService;
import com.starry.common.annotation.Log; import com.starry.common.annotation.Log;
import com.starry.common.enums.BusinessType; import com.starry.common.enums.BusinessType;
import com.starry.common.result.R; import com.starry.common.result.R;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import io.swagger.annotations.ApiResponse;
import io.swagger.annotations.ApiResponses;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
@@ -19,6 +26,7 @@ import javax.annotation.Resource;
* @author admin * @author admin
* @since 2024-05-25 * @since 2024-05-25
*/ */
@Api(tags = "店员排行管理", description = "店员排行榜信息管理相关接口,包括查询、新增、修改和删除等操作")
@RestController @RestController
@RequestMapping("/clerk/ranking") @RequestMapping("/clerk/ranking")
public class PlayClerkRankingInfoController { public class PlayClerkRankingInfoController {
@@ -28,8 +36,12 @@ public class PlayClerkRankingInfoController {
/** /**
* 查询店员排行列表 * 查询店员排行列表
*/ */
@ApiOperation(value = "查询排行列表", notes = "分页查询店员排行信息列表")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = IPlayClerkRankingInfoReturnVo.class, responseContainer = "Page")
})
@PostMapping("/listByPage") @PostMapping("/listByPage")
public R list(@Validated @RequestBody IPlayClerkRankingInfoQueryVo vo) { public R list(@ApiParam(value = "查询条件", required = true) @Validated @RequestBody IPlayClerkRankingInfoQueryVo vo) {
IPage<IPlayClerkRankingInfoReturnVo> list = playClerkRankingInfoService.selectByPage(vo); IPage<IPlayClerkRankingInfoReturnVo> list = playClerkRankingInfoService.selectByPage(vo);
return R.ok(list); return R.ok(list);
} }
@@ -37,6 +49,11 @@ public class PlayClerkRankingInfoController {
/** /**
* 获取店员排行详细信息 * 获取店员排行详细信息
*/ */
@ApiOperation(value = "获取排行详情", notes = "根据ID获取店员排行详细信息")
@ApiImplicitParam(name = "id", value = "排行ID", required = true, paramType = "path", dataType = "String", example = "1")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = PlayClerkRankingInfoEntity.class)
})
@GetMapping(value = "/{id}") @GetMapping(value = "/{id}")
public R getInfo(@PathVariable("id") String id) { public R getInfo(@PathVariable("id") String id) {
return R.ok(playClerkRankingInfoService.selectPlayClerkRankingInfoById(id)); return R.ok(playClerkRankingInfoService.selectPlayClerkRankingInfoById(id));
@@ -45,10 +62,15 @@ public class PlayClerkRankingInfoController {
/** /**
* 新增店员排行 * 新增店员排行
*/ */
@ApiOperation(value = "新增排行", notes = "创建新的店员排行记录")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功"),
@ApiResponse(code = 500, message = "添加失败")
})
//@PreAuthorize("@customSs.hasPermission('clerk:ranking:add')") //@PreAuthorize("@customSs.hasPermission('clerk:ranking:add')")
@Log(title = "店员排行", businessType = BusinessType.INSERT) @Log(title = "店员排行", businessType = BusinessType.INSERT)
@PostMapping("/create") @PostMapping("/create")
public R create(@RequestBody PlayClerkRankingInfoEntity playClerkRankingInfo) { public R create(@ApiParam(value = "排行信息", required = true) @RequestBody PlayClerkRankingInfoEntity playClerkRankingInfo) {
boolean success = playClerkRankingInfoService.create(playClerkRankingInfo); boolean success = playClerkRankingInfoService.create(playClerkRankingInfo);
if (success) { if (success) {
return R.ok(); return R.ok();
@@ -59,10 +81,16 @@ public class PlayClerkRankingInfoController {
/** /**
* 修改店员排行 * 修改店员排行
*/ */
@ApiOperation(value = "修改排行", notes = "根据ID修改店员排行信息")
@ApiImplicitParam(name = "id", value = "排行ID", required = true, paramType = "path", dataType = "String", example = "1")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功"),
@ApiResponse(code = 500, message = "修改失败")
})
//@PreAuthorize("@customSs.hasPermission('clerk:ranking:update')") //@PreAuthorize("@customSs.hasPermission('clerk:ranking:update')")
@Log(title = "店员排行", businessType = BusinessType.UPDATE) @Log(title = "店员排行", businessType = BusinessType.UPDATE)
@PostMapping(value = "/update/{id}") @PostMapping(value = "/update/{id}")
public R update(@PathVariable String id, @RequestBody PlayClerkRankingInfoEntity playClerkRankingInfo) { public R update(@PathVariable String id, @ApiParam(value = "排行信息", required = true) @RequestBody PlayClerkRankingInfoEntity playClerkRankingInfo) {
playClerkRankingInfo.setId(id); playClerkRankingInfo.setId(id);
boolean success = playClerkRankingInfoService.update(playClerkRankingInfo); boolean success = playClerkRankingInfoService.update(playClerkRankingInfo);
if (success) { if (success) {
@@ -74,6 +102,11 @@ public class PlayClerkRankingInfoController {
/** /**
* 删除店员排行 * 删除店员排行
*/ */
@ApiOperation(value = "删除排行", notes = "根据ID批量删除店员排行信息")
@ApiImplicitParam(name = "ids", value = "排行ID数组", required = true, paramType = "path", dataType = "String[]", example = "1,2,3")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = Integer.class)
})
//@PreAuthorize("@customSs.hasPermission('clerk:ranking:delete')") //@PreAuthorize("@customSs.hasPermission('clerk:ranking:delete')")
@Log(title = "店员排行", businessType = BusinessType.DELETE) @Log(title = "店员排行", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}") @DeleteMapping("/{ids}")

View File

@@ -8,6 +8,13 @@ import com.starry.common.annotation.Log;
import com.starry.common.enums.BusinessType; import com.starry.common.enums.BusinessType;
import com.starry.common.result.R; import com.starry.common.result.R;
import com.starry.common.utils.ConvertUtil; import com.starry.common.utils.ConvertUtil;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import io.swagger.annotations.ApiResponse;
import io.swagger.annotations.ApiResponses;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
@@ -19,6 +26,7 @@ import javax.annotation.Resource;
* @author admin * @author admin
* @since 2024-05-31 * @since 2024-05-31
*/ */
@Api(tags = "店员分类管理", description = "店员分类信息管理相关接口,包括查询、新增、修改和删除等操作")
@RestController @RestController
@RequestMapping("/clerk/type") @RequestMapping("/clerk/type")
public class PlayClerkTypeInfoController { public class PlayClerkTypeInfoController {
@@ -28,13 +36,21 @@ public class PlayClerkTypeInfoController {
/** /**
* 查询店员分类信息列表 * 查询店员分类信息列表
*/ */
@ApiOperation(value = "查询所有分类", notes = "获取所有店员分类信息列表")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = PlayClerkTypeInfoEntity.class, responseContainer = "List")
})
@GetMapping("/listByAll") @GetMapping("/listByAll")
public R listByAll() { public R listByAll() {
return R.ok(playClerkTypeInfoService.selectByAll()); return R.ok(playClerkTypeInfoService.selectByAll());
} }
@ApiOperation(value = "分页查询分类", notes = "分页查询店员分类信息列表")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = PlayClerkTypeInfoEntity.class, responseContainer = "Page")
})
@PostMapping("/listByPage") @PostMapping("/listByPage")
public R listByPage(@Validated @RequestBody PlayClerkTypeInfoQueryVo vo) { public R listByPage(@ApiParam(value = "查询条件", required = true) @Validated @RequestBody PlayClerkTypeInfoQueryVo vo) {
return R.ok(playClerkTypeInfoService.selectByPage(vo)); return R.ok(playClerkTypeInfoService.selectByPage(vo));
} }
@@ -44,9 +60,14 @@ public class PlayClerkTypeInfoController {
/** /**
* 新增店员分类信息 * 新增店员分类信息
*/ */
@ApiOperation(value = "新增分类", notes = "创建新的店员分类信息")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功"),
@ApiResponse(code = 500, message = "添加失败")
})
@Log(title = "店员分类信息", businessType = BusinessType.INSERT) @Log(title = "店员分类信息", businessType = BusinessType.INSERT)
@PostMapping("/create") @PostMapping("/create")
public R create(@Validated @RequestBody PlayClerkTypeInfoAddVo vo) { public R create(@ApiParam(value = "分类信息", required = true) @Validated @RequestBody PlayClerkTypeInfoAddVo vo) {
boolean success = playClerkTypeInfoService.create(ConvertUtil.entityToVo(vo, PlayClerkTypeInfoEntity.class)); boolean success = playClerkTypeInfoService.create(ConvertUtil.entityToVo(vo, PlayClerkTypeInfoEntity.class));
if (success) { if (success) {
return R.ok(); return R.ok();
@@ -57,9 +78,15 @@ public class PlayClerkTypeInfoController {
/** /**
* 修改店员分类信息 * 修改店员分类信息
*/ */
@ApiOperation(value = "修改分类", notes = "根据ID修改店员分类信息")
@ApiImplicitParam(name = "id", value = "分类ID", required = true, paramType = "path", dataType = "String", example = "1")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功"),
@ApiResponse(code = 500, message = "修改失败")
})
@Log(title = "店员分类信息", businessType = BusinessType.UPDATE) @Log(title = "店员分类信息", businessType = BusinessType.UPDATE)
@PostMapping(value = "/update/{id}") @PostMapping(value = "/update/{id}")
public R update(@PathVariable String id, @RequestBody PlayClerkTypeInfoEntity playClerkTypeInfo) { public R update(@PathVariable String id, @ApiParam(value = "分类信息", required = true) @RequestBody PlayClerkTypeInfoEntity playClerkTypeInfo) {
playClerkTypeInfo.setId(id); playClerkTypeInfo.setId(id);
boolean success = playClerkTypeInfoService.update(playClerkTypeInfo); boolean success = playClerkTypeInfoService.update(playClerkTypeInfo);
if (success) { if (success) {
@@ -71,6 +98,11 @@ public class PlayClerkTypeInfoController {
/** /**
* 删除店员分类信息 * 删除店员分类信息
*/ */
@ApiOperation(value = "删除分类", notes = "根据ID批量删除店员分类信息")
@ApiImplicitParam(name = "ids", value = "分类ID数组", required = true, paramType = "path", dataType = "String[]", example = "1,2,3")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = Integer.class)
})
@Log(title = "店员分类信息", businessType = BusinessType.DELETE) @Log(title = "店员分类信息", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}") @DeleteMapping("/{ids}")
public R remove(@PathVariable String[] ids) { public R remove(@PathVariable String[] ids) {

View File

@@ -17,6 +17,13 @@ import com.starry.common.annotation.Log;
import com.starry.common.enums.BusinessType; import com.starry.common.enums.BusinessType;
import com.starry.common.result.R; import com.starry.common.result.R;
import com.starry.common.utils.ConvertUtil; import com.starry.common.utils.ConvertUtil;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import io.swagger.annotations.ApiResponse;
import io.swagger.annotations.ApiResponses;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
@@ -29,6 +36,7 @@ import java.util.List;
* @author admin * @author admin
* @since 2024-03-30 * @since 2024-03-30
*/ */
@Api(tags = "店员管理", description = "店员信息管理相关接口,包括店员的增删改查、分类、分组以及状态管理等功能")
@RestController @RestController
@RequestMapping("/clerk/user") @RequestMapping("/clerk/user")
public class PlayClerkUserInfoController { public class PlayClerkUserInfoController {
@@ -41,8 +49,12 @@ public class PlayClerkUserInfoController {
/** /**
* 查询店员列表 * 查询店员列表
*/ */
@ApiOperation(value = "分页查询店员列表", notes = "根据条件分页查询店员列表信息,支持多种筛选条件")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = PlayClerkUserReturnVo.class, responseContainer = "Page")
})
@PostMapping("listByPage") @PostMapping("listByPage")
public R listByPage(@Validated @RequestBody PlayClerkUserQueryVo vo) { public R listByPage(@ApiParam(value = "查询条件", required = true) @Validated @RequestBody PlayClerkUserQueryVo vo) {
IPage<PlayClerkUserReturnVo> list = playClerkUserInfoService.selectByPage(vo); IPage<PlayClerkUserReturnVo> list = playClerkUserInfoService.selectByPage(vo);
return R.ok(list); return R.ok(list);
} }
@@ -50,6 +62,11 @@ public class PlayClerkUserInfoController {
/** /**
* 按照店员分类查询店员列表 * 按照店员分类查询店员列表
*/ */
@ApiOperation(value = "按分类查询店员列表", notes = "根据店员分类ID查询所有属于该分类的店员列表")
@ApiImplicitParam(name = "id", value = "店员分类ID", required = true, paramType = "query", dataType = "String", example = "1")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = PlayClerkUserInfoEntity.class, responseContainer = "List")
})
@GetMapping("listAllByTypeId") @GetMapping("listAllByTypeId")
public R listAllByTypeId(@RequestParam("id") String id) { public R listAllByTypeId(@RequestParam("id") String id) {
List<PlayClerkUserInfoEntity> list = playClerkUserInfoService.listAllByTypeId(id); List<PlayClerkUserInfoEntity> list = playClerkUserInfoService.listAllByTypeId(id);
@@ -59,6 +76,11 @@ public class PlayClerkUserInfoController {
/** /**
* 按照店员分组查询店员列表 * 按照店员分组查询店员列表
*/ */
@ApiOperation(value = "按分组查询店员列表", notes = "根据店员分组ID查询所有属于该分组的店员列表")
@ApiImplicitParam(name = "id", value = "店员分组ID", required = true, paramType = "query", dataType = "String", example = "1")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = PlayClerkUserInfoEntity.class, responseContainer = "List")
})
@GetMapping("listAllByGroupId") @GetMapping("listAllByGroupId")
public R listAllByGroupId(@RequestParam("id") String id) { public R listAllByGroupId(@RequestParam("id") String id) {
List<PlayClerkUserInfoEntity> list = playClerkUserInfoService.listAllByGroupId(id); List<PlayClerkUserInfoEntity> list = playClerkUserInfoService.listAllByGroupId(id);
@@ -68,8 +90,12 @@ public class PlayClerkUserInfoController {
/** /**
* 修改店员分类 * 修改店员分类
*/ */
@ApiOperation(value = "修改店员分类", notes = "将指定店员分配到指定分类中,会先清空该分类下所有店员,再重新分配")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = String.class)
})
@PostMapping("editClerkType") @PostMapping("editClerkType")
public R listByPage(@Validated @RequestBody PlayClerkUserTypeEditVo vo) { public R listByPage(@ApiParam(value = "店员分类修改参数", required = true) @Validated @RequestBody PlayClerkUserTypeEditVo vo) {
//先清空当前分类下店员 //先清空当前分类下店员
List<PlayClerkUserInfoEntity> list = playClerkUserInfoService.listAllByTypeId(vo.getTypeId()); List<PlayClerkUserInfoEntity> list = playClerkUserInfoService.listAllByTypeId(vo.getTypeId());
for (PlayClerkUserInfoEntity clerkUserInfo : list) { for (PlayClerkUserInfoEntity clerkUserInfo : list) {
@@ -93,8 +119,12 @@ public class PlayClerkUserInfoController {
* 1、修改店员分组 * 1、修改店员分组
* 2、将对应账号角色ID设为组长 * 2、将对应账号角色ID设为组长
*/ */
@ApiOperation(value = "修改店员分组", notes = "将指定店员分配到指定分组中,会先清空该分组下所有店员,再重新分配,并可设置组长")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = String.class)
})
@PostMapping("editClerkGroup") @PostMapping("editClerkGroup")
public R editClerkGroup(@Validated @RequestBody PlayClerkUserTypeEditVo vo) { public R editClerkGroup(@ApiParam(value = "店员分组修改参数", required = true) @Validated @RequestBody PlayClerkUserTypeEditVo vo) {
//先清空当前分类下店员 //先清空当前分类下店员
List<PlayClerkUserInfoEntity> list = playClerkUserInfoService.listAllByGroupId(vo.getTypeId()); List<PlayClerkUserInfoEntity> list = playClerkUserInfoService.listAllByGroupId(vo.getTypeId());
for (PlayClerkUserInfoEntity clerkUserInfo : list) { for (PlayClerkUserInfoEntity clerkUserInfo : list) {
@@ -114,7 +144,10 @@ public class PlayClerkUserInfoController {
return R.ok("成功"); return R.ok("成功");
} }
@ApiOperation(value = "获取简单列表", notes = "获取店员和客户的简单列表信息,用于下拉选择等场景")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = JSONObject.class)
})
@GetMapping("/simple/list") @GetMapping("/simple/list")
public R simpleList() { public R simpleList() {
List<PlayClerkUserInfoEntity> clerkList = playClerkUserInfoService.simpleList(); List<PlayClerkUserInfoEntity> clerkList = playClerkUserInfoService.simpleList();
@@ -126,8 +159,12 @@ public class PlayClerkUserInfoController {
/** /**
* 查询店员列表 * 查询店员列表
*/ */
@ApiOperation(value = "查询店员列表", notes = "分页查询店员信息列表,支持多种条件筛选,返回详细的店员信息")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = PlayClerkUserInfoResultVo.class, responseContainer = "Page")
})
@GetMapping("/list") @GetMapping("/list")
public R list(PlayClerkUserInfoQueryVo vo) { public R list(@ApiParam(value = "查询条件") PlayClerkUserInfoQueryVo vo) {
IPage<PlayClerkUserInfoResultVo> list = playClerkUserInfoService.selectPlayClerkUserInfoByPage(vo); IPage<PlayClerkUserInfoResultVo> list = playClerkUserInfoService.selectPlayClerkUserInfoByPage(vo);
return R.ok(list); return R.ok(list);
} }
@@ -135,6 +172,11 @@ public class PlayClerkUserInfoController {
/** /**
* 获取店员详细信息 * 获取店员详细信息
*/ */
@ApiOperation(value = "获取店员详情", notes = "根据店员ID获取店员的详细信息")
@ApiImplicitParam(name = "id", value = "店员ID", required = true, paramType = "path", dataType = "String", example = "1")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = PlayClerkUserInfoEntity.class)
})
@GetMapping(value = "/{id}") @GetMapping(value = "/{id}")
public R getInfo(@PathVariable("id") String id) { public R getInfo(@PathVariable("id") String id) {
return R.ok(playClerkUserInfoService.selectById(id)); return R.ok(playClerkUserInfoService.selectById(id));
@@ -183,8 +225,13 @@ public class PlayClerkUserInfoController {
*/ */
//@PreAuthorize("@customSs.hasPermission('clerk:user:update')") //@PreAuthorize("@customSs.hasPermission('clerk:user:update')")
@Log(title = "店员", businessType = BusinessType.UPDATE) @Log(title = "店员", businessType = BusinessType.UPDATE)
@ApiOperation(value = "修改店员信息", notes = "修改店员的基本信息,如昵称、头像、签名等")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功"),
@ApiResponse(code = 500, message = "修改失败")
})
@PostMapping(value = "/update") @PostMapping(value = "/update")
public R update(@Validated @RequestBody PlayClerkUserEditVo vo) { public R update(@ApiParam(value = "店员信息", required = true) @Validated @RequestBody PlayClerkUserEditVo vo) {
PlayClerkUserInfoEntity entity = ConvertUtil.entityToVo(vo, PlayClerkUserInfoEntity.class); PlayClerkUserInfoEntity entity = ConvertUtil.entityToVo(vo, PlayClerkUserInfoEntity.class);
boolean success = playClerkUserInfoService.update(entity); boolean success = playClerkUserInfoService.update(entity);
if (success) { if (success) {
@@ -199,8 +246,13 @@ public class PlayClerkUserInfoController {
*/ */
//@PreAuthorize("@customSs.hasPermission('clerk:user:update')") //@PreAuthorize("@customSs.hasPermission('clerk:user:update')")
@Log(title = "店员", businessType = BusinessType.UPDATE) @Log(title = "店员", businessType = BusinessType.UPDATE)
@PostMapping(value = "/updateState") @ApiOperation(value = "修改店员状态", notes = "修改店员的状态信息,如上下架状态、推荐状态、在线状态等")
public R updateState(@Validated @RequestBody PlayClerkUserStateEditVo vo) { @ApiResponses({
@ApiResponse(code = 200, message = "操作成功"),
@ApiResponse(code = 500, message = "修改失败")
})
@PostMapping(value = "/update/state")
public R updateState(@ApiParam(value = "店员状态信息", required = true) @Validated @RequestBody PlayClerkUserStateEditVo vo) {
PlayClerkUserInfoEntity entity = ConvertUtil.entityToVo(vo, PlayClerkUserInfoEntity.class); PlayClerkUserInfoEntity entity = ConvertUtil.entityToVo(vo, PlayClerkUserInfoEntity.class);
boolean success = playClerkUserInfoService.update(entity); boolean success = playClerkUserInfoService.update(entity);
if (success) { if (success) {
@@ -212,8 +264,13 @@ public class PlayClerkUserInfoController {
/** /**
* 删除店员 * 删除店员
*/ */
//@PreAuthorize("@customSs.hasPermission('clerk:user:delete')") //@PreAuthorize("@customSs.hasPermission('clerk:user:remove')")
@Log(title = "店员", businessType = BusinessType.DELETE) @Log(title = "店员", businessType = BusinessType.DELETE)
@ApiOperation(value = "删除店员", notes = "根据ID批量删除店员信息")
@ApiImplicitParam(name = "ids", value = "店员ID数组", required = true, paramType = "path", dataType = "String[]", example = "1,2,3")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = Integer.class)
})
@DeleteMapping("/{ids}") @DeleteMapping("/{ids}")
public R remove(@PathVariable String[] ids) { public R remove(@PathVariable String[] ids) {
return R.ok(playClerkUserInfoService.deletePlayClerkUserInfoByIds(ids)); return R.ok(playClerkUserInfoService.deletePlayClerkUserInfoByIds(ids));

View File

@@ -8,6 +8,13 @@ import com.starry.admin.modules.clerk.service.IPlayClerkUserReviewInfoService;
import com.starry.common.annotation.Log; import com.starry.common.annotation.Log;
import com.starry.common.enums.BusinessType; import com.starry.common.enums.BusinessType;
import com.starry.common.result.R; import com.starry.common.result.R;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import io.swagger.annotations.ApiResponse;
import io.swagger.annotations.ApiResponses;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
@@ -19,6 +26,7 @@ import javax.annotation.Resource;
* @author admin * @author admin
* @since 2024-05-19 * @since 2024-05-19
*/ */
@Api(tags = "店员资料审核", description = "店员资料审核相关接口,包括审核列表查询、审核状态修改和删除等操作")
@RestController @RestController
@RequestMapping("/clerk/user/review") @RequestMapping("/clerk/user/review")
public class PlayClerkUserReviewInfoController { public class PlayClerkUserReviewInfoController {
@@ -28,8 +36,12 @@ public class PlayClerkUserReviewInfoController {
/** /**
* 查询店员资料审核列表 * 查询店员资料审核列表
*/ */
@ApiOperation(value = "查询审核列表", notes = "分页查询店员资料审核列表")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = PlayClerkUserReviewReturnVo.class, responseContainer = "Page")
})
@PostMapping("/listByPage") @PostMapping("/listByPage")
public R listByPage(@Validated @RequestBody PlayClerkUserReviewQueryVo vo) { public R listByPage(@ApiParam(value = "查询条件", required = true) @Validated @RequestBody PlayClerkUserReviewQueryVo vo) {
IPage<PlayClerkUserReviewReturnVo> list = playClerkUserReviewInfoService.selectByPage(vo); IPage<PlayClerkUserReviewReturnVo> list = playClerkUserReviewInfoService.selectByPage(vo);
return R.ok(list); return R.ok(list);
} }
@@ -37,10 +49,14 @@ public class PlayClerkUserReviewInfoController {
/** /**
* 修改店员资料审核 * 修改店员资料审核
*/ */
@ApiOperation(value = "修改审核状态", notes = "更新店员资料审核状态,通过或拒绝")
@ApiResponses({
@ApiResponse(code = 200, message = "修改成功")
})
//@PreAuthorize("@customSs.hasPermission('clerk:userReview:update')") //@PreAuthorize("@customSs.hasPermission('clerk:userReview:update')")
@Log(title = "店员资料审核", businessType = BusinessType.UPDATE) @Log(title = "店员资料审核", businessType = BusinessType.UPDATE)
@PostMapping(value = "/update") @PostMapping(value = "/update")
public R update(@Validated @RequestBody PlayClerkUserReviewStateEditVo vo) { public R update(@ApiParam(value = "审核状态信息", required = true) @Validated @RequestBody PlayClerkUserReviewStateEditVo vo) {
playClerkUserReviewInfoService.updateDataReviewState(vo); playClerkUserReviewInfoService.updateDataReviewState(vo);
return R.ok("修改成功"); return R.ok("修改成功");
} }
@@ -48,6 +64,11 @@ public class PlayClerkUserReviewInfoController {
/** /**
* 删除店员资料审核 * 删除店员资料审核
*/ */
@ApiOperation(value = "删除审核记录", notes = "根据ID批量删除店员资料审核记录")
@ApiImplicitParam(name = "ids", value = "审核记录ID数组", required = true, paramType = "path", dataType = "String[]", example = "1,2,3")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = Integer.class)
})
//@PreAuthorize("@customSs.hasPermission('clerk:userReview:delete')") //@PreAuthorize("@customSs.hasPermission('clerk:userReview:delete')")
@Log(title = "店员资料审核", businessType = BusinessType.DELETE) @Log(title = "店员资料审核", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}") @DeleteMapping("/{ids}")

View File

@@ -6,6 +6,13 @@ import com.starry.admin.modules.clerk.service.IPlayClerkWagesDetailsInfoService;
import com.starry.common.annotation.Log; import com.starry.common.annotation.Log;
import com.starry.common.enums.BusinessType; import com.starry.common.enums.BusinessType;
import com.starry.common.result.R; import com.starry.common.result.R;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import io.swagger.annotations.ApiResponse;
import io.swagger.annotations.ApiResponses;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource; import javax.annotation.Resource;
@@ -16,6 +23,7 @@ import javax.annotation.Resource;
* @author admin * @author admin
* @since 2024-05-31 * @since 2024-05-31
*/ */
@Api(tags = "店员工资明细", description = "店员工资明细信息管理相关接口,包括查询、新增、修改和删除等操作")
@RestController @RestController
@RequestMapping("/wages/details") @RequestMapping("/wages/details")
public class PlayClerkWagesDetailsInfoController { public class PlayClerkWagesDetailsInfoController {
@@ -25,8 +33,12 @@ public class PlayClerkWagesDetailsInfoController {
/** /**
* 查询店员工资明细信息列表 * 查询店员工资明细信息列表
*/ */
@ApiOperation(value = "查询工资明细列表", notes = "分页查询店员工资明细信息列表")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = PlayClerkWagesDetailsInfoEntity.class, responseContainer = "Page")
})
@GetMapping("/list") @GetMapping("/list")
public R list(PlayClerkWagesDetailsInfoEntity playClerkWagesDetailsInfo) { public R list(@ApiParam(value = "查询条件") PlayClerkWagesDetailsInfoEntity playClerkWagesDetailsInfo) {
IPage<PlayClerkWagesDetailsInfoEntity> list = playClerkWagesDetailsInfoService.selectPlayClerkWagesDetailsInfoByPage(playClerkWagesDetailsInfo); IPage<PlayClerkWagesDetailsInfoEntity> list = playClerkWagesDetailsInfoService.selectPlayClerkWagesDetailsInfoByPage(playClerkWagesDetailsInfo);
return R.ok(list); return R.ok(list);
} }
@@ -34,6 +46,11 @@ public class PlayClerkWagesDetailsInfoController {
/** /**
* 获取店员工资明细信息详细信息 * 获取店员工资明细信息详细信息
*/ */
@ApiOperation(value = "获取工资明细详情", notes = "根据ID获取店员工资明细详细信息")
@ApiImplicitParam(name = "id", value = "工资明细ID", required = true, paramType = "path", dataType = "String", example = "1")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = PlayClerkWagesDetailsInfoEntity.class)
})
@GetMapping(value = "/{id}") @GetMapping(value = "/{id}")
public R getInfo(@PathVariable("id") String id) { public R getInfo(@PathVariable("id") String id) {
return R.ok(playClerkWagesDetailsInfoService.selectPlayClerkWagesDetailsInfoById(id)); return R.ok(playClerkWagesDetailsInfoService.selectPlayClerkWagesDetailsInfoById(id));
@@ -42,9 +59,14 @@ public class PlayClerkWagesDetailsInfoController {
/** /**
* 新增店员工资明细信息 * 新增店员工资明细信息
*/ */
@ApiOperation(value = "新增工资明细", notes = "创建新的店员工资明细记录")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功"),
@ApiResponse(code = 500, message = "添加失败")
})
@Log(title = "店员工资明细信息", businessType = BusinessType.INSERT) @Log(title = "店员工资明细信息", businessType = BusinessType.INSERT)
@PostMapping("/create") @PostMapping("/create")
public R create(@RequestBody PlayClerkWagesDetailsInfoEntity playClerkWagesDetailsInfo) { public R create(@ApiParam(value = "工资明细信息", required = true) @RequestBody PlayClerkWagesDetailsInfoEntity playClerkWagesDetailsInfo) {
boolean success = playClerkWagesDetailsInfoService.create(playClerkWagesDetailsInfo); boolean success = playClerkWagesDetailsInfoService.create(playClerkWagesDetailsInfo);
if (success) { if (success) {
return R.ok(); return R.ok();
@@ -55,9 +77,15 @@ public class PlayClerkWagesDetailsInfoController {
/** /**
* 修改店员工资明细信息 * 修改店员工资明细信息
*/ */
@ApiOperation(value = "修改工资明细", notes = "根据ID修改店员工资明细信息")
@ApiImplicitParam(name = "id", value = "工资明细ID", required = true, paramType = "path", dataType = "String", example = "1")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功"),
@ApiResponse(code = 500, message = "修改失败")
})
@Log(title = "店员工资明细信息", businessType = BusinessType.UPDATE) @Log(title = "店员工资明细信息", businessType = BusinessType.UPDATE)
@PostMapping(value = "/update/{id}") @PostMapping(value = "/update/{id}")
public R update(@PathVariable String id, @RequestBody PlayClerkWagesDetailsInfoEntity playClerkWagesDetailsInfo) { public R update(@PathVariable String id, @ApiParam(value = "工资明细信息", required = true) @RequestBody PlayClerkWagesDetailsInfoEntity playClerkWagesDetailsInfo) {
playClerkWagesDetailsInfo.setId(id); playClerkWagesDetailsInfo.setId(id);
boolean success = playClerkWagesDetailsInfoService.update(playClerkWagesDetailsInfo); boolean success = playClerkWagesDetailsInfoService.update(playClerkWagesDetailsInfo);
if (success) { if (success) {
@@ -69,6 +97,11 @@ public class PlayClerkWagesDetailsInfoController {
/** /**
* 删除店员工资明细信息 * 删除店员工资明细信息
*/ */
@ApiOperation(value = "删除工资明细", notes = "根据ID批量删除店员工资明细信息")
@ApiImplicitParam(name = "ids", value = "工资明细ID数组", required = true, paramType = "path", dataType = "String[]", example = "1,2,3")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = Integer.class)
})
@Log(title = "店员工资明细信息", businessType = BusinessType.DELETE) @Log(title = "店员工资明细信息", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}") @DeleteMapping("/{ids}")
public R remove(@PathVariable String[] ids) { public R remove(@PathVariable String[] ids) {

View File

@@ -14,6 +14,13 @@ import com.starry.admin.modules.order.module.entity.PlayOrderInfoEntity;
import com.starry.admin.modules.weichat.entity.wages.ClerkWagesDetailsReturnVo; import com.starry.admin.modules.weichat.entity.wages.ClerkWagesDetailsReturnVo;
import com.starry.common.result.R; import com.starry.common.result.R;
import com.starry.common.utils.ConvertUtil; import com.starry.common.utils.ConvertUtil;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import io.swagger.annotations.ApiResponse;
import io.swagger.annotations.ApiResponses;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
@@ -28,6 +35,7 @@ import java.util.List;
* @author admin * @author admin
* @since 2024-05-31 * @since 2024-05-31
*/ */
@Api(tags = "店员工资结算", description = "店员工资结算信息管理相关接口,包括查询历史工资、未结算工资和工资明细等")
@RestController @RestController
@RequestMapping("/clerk/wages") @RequestMapping("/clerk/wages")
public class PlayClerkWagesInfoController { public class PlayClerkWagesInfoController {
@@ -43,16 +51,24 @@ public class PlayClerkWagesInfoController {
/** /**
* 查询店员工资结算信息列表 * 查询店员工资结算信息列表
*/ */
@ApiOperation(value = "查询历史工资列表", notes = "分页查询店员历史工资结算信息列表")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = Object.class, responseContainer = "Page")
})
@PostMapping("/listByPage") @PostMapping("/listByPage")
public R list(@Validated @RequestBody PlayClerkWagesInfoQueryVo vo) { public R list(@ApiParam(value = "查询条件", required = true) @Validated @RequestBody PlayClerkWagesInfoQueryVo vo) {
return R.ok(playClerkWagesInfoService.selectHistoricalByPage(vo)); return R.ok(playClerkWagesInfoService.selectHistoricalByPage(vo));
} }
/** /**
* 查询店员工未结算工资 * 查询店员工未结算工资
*/ */
@ApiOperation(value = "查询未结算工资", notes = "分页查询店员未结算工资信息列表")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = PlayClerkUnsettledWagesInfoReturnVo.class, responseContainer = "Page")
})
@PostMapping("/listUnsettledWagesByPage") @PostMapping("/listUnsettledWagesByPage")
public R list(@Validated @RequestBody PlayClerkUnsettledWagesInfoQueryVo vo) { public R list(@ApiParam(value = "查询条件", required = true) @Validated @RequestBody PlayClerkUnsettledWagesInfoQueryVo vo) {
IPage<PlayClerkUnsettledWagesInfoReturnVo> page = playClerkUserInfoService.listUnsettledWagesByPage(vo); IPage<PlayClerkUnsettledWagesInfoReturnVo> page = playClerkUserInfoService.listUnsettledWagesByPage(vo);
for (PlayClerkUnsettledWagesInfoReturnVo record : page.getRecords()) { for (PlayClerkUnsettledWagesInfoReturnVo record : page.getRecords()) {
Integer orderState1Number = 0; Integer orderState1Number = 0;
@@ -90,6 +106,12 @@ public class PlayClerkWagesInfoController {
} }
@ApiOperation(value = "查询工资明细", notes = "根据工资结算ID查询工资明细信息")
@ApiImplicitParam(name = "id", value = "工资结算ID", required = true, paramType = "query", dataType = "String", example = "1")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = ClerkWagesDetailsReturnVo.class, responseContainer = "List"),
@ApiResponse(code = 500, message = "ID不能为空")
})
@GetMapping("queryWagesDetailsById") @GetMapping("queryWagesDetailsById")
public R clerkQueryWagesDetails(@RequestParam("id") String id) { public R clerkQueryWagesDetails(@RequestParam("id") String id) {
if (StrUtil.isBlankIfStr(id)) { if (StrUtil.isBlankIfStr(id)) {

View File

@@ -6,6 +6,13 @@ import com.starry.admin.modules.clerk.service.IPlayCustomArticleInfoService;
import com.starry.common.annotation.Log; import com.starry.common.annotation.Log;
import com.starry.common.enums.BusinessType; import com.starry.common.enums.BusinessType;
import com.starry.common.result.R; import com.starry.common.result.R;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import io.swagger.annotations.ApiResponse;
import io.swagger.annotations.ApiResponses;
import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
@@ -17,6 +24,7 @@ import javax.annotation.Resource;
* @author admin * @author admin
* @since 2024-05-04 * @since 2024-05-04
*/ */
@Api(tags = "陪聊动态管理", description = "陪聊点赞动态信息管理相关接口,包括查询、新增、修改和删除等操作")
@RestController @RestController
@RequestMapping("/custom/article") @RequestMapping("/custom/article")
public class PlayCustomArticleInfoController { public class PlayCustomArticleInfoController {
@@ -26,8 +34,12 @@ public class PlayCustomArticleInfoController {
/** /**
* 查询陪聊点赞动态信息列表 * 查询陪聊点赞动态信息列表
*/ */
@ApiOperation(value = "查询动态列表", notes = "分页查询陪聊点赞动态信息列表")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = PlayCustomArticleInfoEntity.class, responseContainer = "Page")
})
@GetMapping("/list") @GetMapping("/list")
public R list(PlayCustomArticleInfoEntity playCustomArticleInfo) { public R list(@ApiParam(value = "查询条件") PlayCustomArticleInfoEntity playCustomArticleInfo) {
IPage<PlayCustomArticleInfoEntity> list = playCustomArticleInfoService.selectPlayCustomArticleInfoByPage(playCustomArticleInfo); IPage<PlayCustomArticleInfoEntity> list = playCustomArticleInfoService.selectPlayCustomArticleInfoByPage(playCustomArticleInfo);
return R.ok(list); return R.ok(list);
} }
@@ -35,6 +47,11 @@ public class PlayCustomArticleInfoController {
/** /**
* 获取陪聊点赞动态信息详细信息 * 获取陪聊点赞动态信息详细信息
*/ */
@ApiOperation(value = "获取动态详情", notes = "根据ID获取陪聊点赞动态详细信息")
@ApiImplicitParam(name = "id", value = "动态ID", required = true, paramType = "path", dataType = "String", example = "1")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = PlayCustomArticleInfoEntity.class)
})
@PreAuthorize("@customSs.hasPermission('play:info:query')") @PreAuthorize("@customSs.hasPermission('play:info:query')")
@GetMapping(value = "/{id}") @GetMapping(value = "/{id}")
public R getInfo(@PathVariable("id") String id) { public R getInfo(@PathVariable("id") String id) {
@@ -44,10 +61,15 @@ public class PlayCustomArticleInfoController {
/** /**
* 新增陪聊点赞动态信息 * 新增陪聊点赞动态信息
*/ */
@ApiOperation(value = "新增动态", notes = "创建新的陪聊点赞动态信息")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功"),
@ApiResponse(code = 500, message = "添加失败")
})
@PreAuthorize("@customSs.hasPermission('play:info:create')") @PreAuthorize("@customSs.hasPermission('play:info:create')")
@Log(title = "陪聊点赞动态信息", businessType = BusinessType.INSERT) @Log(title = "陪聊点赞动态信息", businessType = BusinessType.INSERT)
@PostMapping("/create") @PostMapping("/create")
public R create(@RequestBody PlayCustomArticleInfoEntity playCustomArticleInfo) { public R create(@ApiParam(value = "动态信息", required = true) @RequestBody PlayCustomArticleInfoEntity playCustomArticleInfo) {
boolean success = playCustomArticleInfoService.create(playCustomArticleInfo); boolean success = playCustomArticleInfoService.create(playCustomArticleInfo);
if (success) { if (success) {
return R.ok(); return R.ok();
@@ -58,10 +80,16 @@ public class PlayCustomArticleInfoController {
/** /**
* 修改陪聊点赞动态信息 * 修改陪聊点赞动态信息
*/ */
@ApiOperation(value = "修改动态", notes = "根据ID修改陪聊点赞动态信息")
@ApiImplicitParam(name = "id", value = "动态ID", required = true, paramType = "path", dataType = "String", example = "1")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功"),
@ApiResponse(code = 500, message = "修改失败")
})
@PreAuthorize("@customSs.hasPermission('play:info:edit')") @PreAuthorize("@customSs.hasPermission('play:info:edit')")
@Log(title = "陪聊点赞动态信息", businessType = BusinessType.UPDATE) @Log(title = "陪聊点赞动态信息", businessType = BusinessType.UPDATE)
@PostMapping(value = "/update/{id}") @PostMapping(value = "/update/{id}")
public R update(@PathVariable String id, @RequestBody PlayCustomArticleInfoEntity playCustomArticleInfo) { public R update(@PathVariable String id, @ApiParam(value = "动态信息", required = true) @RequestBody PlayCustomArticleInfoEntity playCustomArticleInfo) {
playCustomArticleInfo.setId(id); playCustomArticleInfo.setId(id);
boolean success = playCustomArticleInfoService.update(playCustomArticleInfo); boolean success = playCustomArticleInfoService.update(playCustomArticleInfo);
if (success) { if (success) {
@@ -73,6 +101,11 @@ public class PlayCustomArticleInfoController {
/** /**
* 删除陪聊点赞动态信息 * 删除陪聊点赞动态信息
*/ */
@ApiOperation(value = "删除动态", notes = "根据ID批量删除陪聊点赞动态信息")
@ApiImplicitParam(name = "ids", value = "动态ID数组", required = true, paramType = "path", dataType = "String[]", example = "1,2,3")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = Integer.class)
})
@PreAuthorize("@customSs.hasPermission('play:info:remove')") @PreAuthorize("@customSs.hasPermission('play:info:remove')")
@Log(title = "陪聊点赞动态信息", businessType = BusinessType.DELETE) @Log(title = "陪聊点赞动态信息", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}") @DeleteMapping("/{ids}")

View File

@@ -1,6 +1,8 @@
package com.starry.admin.modules.clerk.module.entity; package com.starry.admin.modules.clerk.module.entity;
import com.starry.common.domain.BasePageEntity; import com.starry.common.domain.BasePageEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import lombok.EqualsAndHashCode; import lombok.EqualsAndHashCode;
@@ -14,119 +16,142 @@ import java.util.List;
*/ */
@EqualsAndHashCode(callSuper = true) @EqualsAndHashCode(callSuper = true)
@Data @Data
@ApiModel(value = "店员分页查询参数", description = "分页查询店员列表的条件参数")
public class PlayClerkUserQueryVo extends BasePageEntity { public class PlayClerkUserQueryVo extends BasePageEntity {
/** /**
* UUID * UUID
*/ */
@ApiModelProperty(value = "店员ID", notes = "唯一标识")
private String id; private String id;
/** /**
* 昵称 * 昵称
*/ */
@ApiModelProperty(value = "店员昵称", notes = "支持模糊查询")
private String nickname; private String nickname;
/** /**
* 电话号码 * 电话号码
*/ */
@ApiModelProperty(value = "电话号码")
private String phone; private String phone;
/** /**
* 分组ID * 分组ID
*/ */
@ApiModelProperty(value = "分组ID")
private String groupId; private String groupId;
/** /**
* 性别[0:未知;1:男;2:女] * 性别[0:未知;1:男;2:女]
*/ */
@ApiModelProperty(value = "性别", notes = "0:未知;1:男;2:女")
private String sex; private String sex;
/** /**
* 是否固定等级(0:固定等级1:不固定) * 是否固定等级(0:固定等级1:不固定)
*/ */
@ApiModelProperty(value = "是否固定等级", notes = "0:固定等级1:不固定")
private String fixingLevel; private String fixingLevel;
/** /**
* 店员等级 * 店员等级
*/ */
@ApiModelProperty(value = "店员等级ID")
private String levelId; private String levelId;
/** /**
* 年龄 * 年龄
*/ */
@ApiModelProperty(value = "年龄范围", notes = "年龄区间查询,如[18, 25]")
private List<Integer> ages; private List<Integer> ages;
/** /**
* 所在国家 * 所在国家
*/ */
@ApiModelProperty(value = "所在国家", example = "中国")
private String country; private String country;
/** /**
* 所在省份 * 所在省份
*/ */
@ApiModelProperty(value = "所在省份", example = "广东省")
private String province; private String province;
/** /**
* 所在城市 * 所在城市
*/ */
@ApiModelProperty(value = "所在城市", example = "深圳市")
private String city; private String city;
/** /**
* 在职状态1在职0离职 * 在职状态1在职0离职
*/ */
@ApiModelProperty(value = "在职状态", notes = "1在职0离职", example = "1")
private String onboardingState = "1"; private String onboardingState = "1";
/** /**
* 是否推荐状态1已推荐0未推荐 * 是否推荐状态1已推荐0未推荐
*/ */
@ApiModelProperty(value = "是否推荐", notes = "1已推荐0未推荐")
private String recommendationState; private String recommendationState;
/** /**
* 是否置顶状态1已置顶0未置顶 * 是否置顶状态1已置顶0未置顶
*/ */
@ApiModelProperty(value = "是否置顶", notes = "1已置顶0未置顶")
private String pinToTopState; private String pinToTopState;
/** /**
* 在线状态【1在线0离线】 * 在线状态【1在线0离线】
*/ */
@ApiModelProperty(value = "在线状态", notes = "1在线0离线")
private String onlineState; private String onlineState;
/** /**
* 上架状态【1上架0下架】 * 上架状态【1上架0下架】
*/ */
@ApiModelProperty(value = "上架状态", notes = "1上架0下架")
private String listingState; private String listingState;
/** /**
* 显示状态【1显示0隐藏】 * 显示状态【1显示0隐藏】
*/ */
@ApiModelProperty(value = "显示状态", notes = "1显示0隐藏")
private String displayState; private String displayState;
/** /**
* 实名状态【1已实名0未实名】 * 实名状态【1已实名0未实名】
*/ */
@ApiModelProperty(value = "实名状态", notes = "1已实名0未实名")
private String realState; private String realState;
/** /**
* 是否必须实名【0:非必须实名;1:必须实名;2:跟随店铺设置】 * 是否必须实名【0:非必须实名;1:必须实名;2:跟随店铺设置】
*/ */
@ApiModelProperty(value = "是否必须实名", notes = "0:非必须实名;1:必须实名;2:跟随店铺设置")
private String mandatoryRealState; private String mandatoryRealState;
/** /**
* 随机接单状态【1允许0禁止】 * 随机接单状态【1允许0禁止】
*/ */
@ApiModelProperty(value = "随机接单状态", notes = "1允许0禁止")
private String randomOrderState; private String randomOrderState;
/** /**
* 店员状态0:不是陪聊1:陪聊2:资料审核中) * 店员状态0:不是陪聊1:陪聊2:资料审核中)
*/ */
@ApiModelProperty(value = "店员状态", notes = "0:不是陪聊1:陪聊2:资料审核中", example = "1")
private String clerkState = "1"; private String clerkState = "1";
/** /**
* 身份证号 * 身份证号
*/ */
@ApiModelProperty(value = "身份证号")
private String code; private String code;

View File

@@ -3,6 +3,8 @@ package com.starry.admin.modules.clerk.module.entity;
import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonIgnore;
import com.starry.admin.modules.order.module.entity.PlayOrderInfoEntity; import com.starry.admin.modules.order.module.entity.PlayOrderInfoEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat; import org.springframework.format.annotation.DateTimeFormat;
@@ -18,150 +20,179 @@ import java.util.List;
* @since 2024-03-30 * @since 2024-03-30
*/ */
@Data @Data
@ApiModel(value = "店员详细信息返回对象", description = "分页查询店员详细信息的返回结果")
public class PlayClerkUserReturnVo { public class PlayClerkUserReturnVo {
/** /**
* UUID * UUID
*/ */
@ApiModelProperty(value = "店员ID", notes = "唯一标识")
private String id; private String id;
/** /**
* 店员昵称 * 店员昵称
*/ */
@ApiModelProperty(value = "店员昵称")
private String nickname; private String nickname;
/** /**
* 店员等级 * 店员等级
*/ */
@ApiModelProperty(value = "店员等级ID")
private String levelId; private String levelId;
/** /**
* 店员等级 * 店员等级
*/ */
@ApiModelProperty(value = "店员等级名称")
private String levelName; private String levelName;
/** /**
* 分组ID * 分组ID
*/ */
@ApiModelProperty(value = "分组ID")
private String groupId; private String groupId;
/** /**
* 分组ID * 分组ID
*/ */
@ApiModelProperty(value = "分组名称")
private String groupName; private String groupName;
/** /**
* 性别[0:未知;1:男;2:女] * 性别[0:未知;1:男;2:女]
*/ */
@ApiModelProperty(value = "性别", notes = "0:未知;1:男;2:女")
private String sex; private String sex;
/** /**
* 头像 * 头像
*/ */
@ApiModelProperty(value = "头像", notes = "头像图片URL")
private String avatar; private String avatar;
/** /**
* 音频 * 音频
*/ */
@ApiModelProperty(value = "音频", notes = "音频文件URL")
private String audio; private String audio;
/** /**
* 星座 * 星座
*/ */
@ApiModelProperty(value = "星座", example = "天蝎座")
private String constellation; private String constellation;
/** /**
* 标签 * 标签
*/ */
@ApiModelProperty(value = "标签列表", notes = "店员个人标签")
private List<String> label = new ArrayList<>(); private List<String> label = new ArrayList<>();
/** /**
* 相册 * 相册
*/ */
@ApiModelProperty(value = "相册列表", notes = "店员相册图片URL列表")
private List<String> album = new ArrayList<>(); private List<String> album = new ArrayList<>();
/** /**
* 个性签名 * 个性签名
*/ */
@ApiModelProperty(value = "个性签名")
private String signature; private String signature;
/** /**
* 年龄 * 年龄
*/ */
@ApiModelProperty(value = "年龄", example = "25")
private Integer age; private Integer age;
/** /**
* 所在省份 * 所在省份
*/ */
@ApiModelProperty(value = "所在省份", example = "广东省")
private String province; private String province;
/** /**
* 所在城市 * 所在城市
*/ */
@ApiModelProperty(value = "所在城市", example = "深圳市")
private String city; private String city;
/** /**
* 在线状态【1在线0离线】 * 在线状态【1在线0离线】
*/ */
@ApiModelProperty(value = "在线状态", notes = "1在线0离线")
private String onlineState; private String onlineState;
/** /**
* 上架状态【1上架0下架】 * 上架状态【1上架0下架】
*/ */
@ApiModelProperty(value = "上架状态", notes = "1上架0下架")
private String listingState; private String listingState;
/** /**
* 实名状态【1已实名0未实名】 * 实名状态【1已实名0未实名】
*/ */
@ApiModelProperty(value = "实名状态", notes = "1已实名0未实名")
private String realState; private String realState;
/** /**
* 是否必须实名【0:非必须实名;1:必须实名;2:跟随店铺设置】 * 是否必须实名【0:非必须实名;1:必须实名;2:跟随店铺设置】
*/ */
@ApiModelProperty(value = "是否必须实名", notes = "0:非必须实名;1:必须实名;2:跟随店铺设置")
private String mandatoryRealState; private String mandatoryRealState;
/** /**
* 随机接单状态【1允许0禁止】 * 随机接单状态【1允许0禁止】
*/ */
@ApiModelProperty(value = "随机接单状态", notes = "1允许0禁止")
private String randomOrderState; private String randomOrderState;
/** /**
* 地址 * 地址
*/ */
@ApiModelProperty(value = "地址", notes = "店员所在详细地址")
private String address; private String address;
/** /**
* 地址 * 地址
*/ */
@ApiModelProperty(value = "备注")
private String remark; private String remark;
/** /**
* 订单列表 * 订单列表
*/ */
@JsonIgnore @JsonIgnore
@ApiModelProperty(value = "订单列表", hidden = true)
private List<PlayOrderInfoEntity> orderInfos; private List<PlayOrderInfoEntity> orderInfos;
/** /**
* 订单总数 * 订单总数
*/ */
@ApiModelProperty(value = "订单总数")
private String orderNumber; private String orderNumber;
/** /**
* 续单总数 * 续单总数
*/ */
@ApiModelProperty(value = "续单总数")
private String orderContinueNumber; private String orderContinueNumber;
/** /**
* 订单总金额 * 订单总金额
*/ */
@ApiModelProperty(value = "订单总金额")
private BigDecimal orderTotalAmount; private BigDecimal orderTotalAmount;
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
@ApiModelProperty(value = "添加时间", example = "2024-01-01 12:00:00")
private LocalDateTime addTime; private LocalDateTime addTime;
@@ -170,6 +201,7 @@ public class PlayClerkUserReturnVo {
*/ */
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8") @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
@ApiModelProperty(value = "入职时间", example = "2024-01-01")
private LocalDateTime entryTime; private LocalDateTime entryTime;
/** /**
@@ -177,38 +209,45 @@ public class PlayClerkUserReturnVo {
*/ */
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8") @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
@ApiModelProperty(value = "离职时间", example = "2024-01-01")
private LocalDateTime resignationTime; private LocalDateTime resignationTime;
/** /**
* 是否推荐状态1已推荐0未推荐 * 是否推荐状态1已推荐0未推荐
*/ */
@ApiModelProperty(value = "是否推荐", notes = "1已推荐0未推荐")
private String recommendationState; private String recommendationState;
/** /**
* 是否置顶状态1已置顶0未置顶 * 是否置顶状态1已置顶0未置顶
*/ */
@ApiModelProperty(value = "是否置顶", notes = "1已置顶0未置顶")
private String pinToTopState; private String pinToTopState;
/** /**
* 显示状态【1显示0隐藏】 * 显示状态【1显示0隐藏】
*/ */
@ApiModelProperty(value = "显示状态", notes = "1显示0隐藏")
private String displayState; private String displayState;
/** /**
* 是否固定等级(0:固定等级1:不固定) * 是否固定等级(0:固定等级1:不固定)
*/ */
@ApiModelProperty(value = "是否固定等级", notes = "0:固定等级1:不固定")
private String fixingLevel; private String fixingLevel;
/** /**
* 在职状态1在职0离职 * 在职状态1在职0离职
*/ */
@ApiModelProperty(value = "在职状态", notes = "1在职0离职")
private String onboardingState; private String onboardingState;
/** /**
* 在职天数 * 在职天数
*/ */
@ApiModelProperty(value = "在职天数", example = "365")
private Integer workingHours = 0; private Integer workingHours = 0;

View File

@@ -1,5 +1,7 @@
package com.starry.admin.modules.clerk.module.entity; package com.starry.admin.modules.clerk.module.entity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import javax.validation.constraints.NotNull; import javax.validation.constraints.NotNull;
@@ -12,6 +14,7 @@ import java.util.List;
* @since 2024-03-30 * @since 2024-03-30
*/ */
@Data @Data
@ApiModel(value = "店员分类编辑对象", description = "修改店员分类或分组的参数对象")
public class PlayClerkUserTypeEditVo { public class PlayClerkUserTypeEditVo {
@@ -19,12 +22,14 @@ public class PlayClerkUserTypeEditVo {
* 店员分类ID * 店员分类ID
*/ */
@NotNull(message = "类型不能为空") @NotNull(message = "类型不能为空")
@ApiModelProperty(value = "店员分类/分组ID", required = true, notes = "分类ID或分组ID")
private String typeId; private String typeId;
/** /**
* 店员列表 * 店员列表
*/ */
@NotNull(message = "店员列表不能为空") @NotNull(message = "店员列表不能为空")
@ApiModelProperty(value = "店员ID列表", required = true, notes = "要添加到分类/分组中的店员ID列表")
private List<String> clerkUserIds; private List<String> clerkUserIds;

View File

@@ -1,6 +1,8 @@
package com.starry.admin.modules.clerk.module.vo; package com.starry.admin.modules.clerk.module.vo;
import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat; import org.springframework.format.annotation.DateTimeFormat;
@@ -12,6 +14,7 @@ import java.time.LocalDateTime;
* @since 2024/6/6 下午11:13 * @since 2024/6/6 下午11:13
**/ **/
@Data @Data
@ApiModel(value = "店员头像框添加参数", description = "新增店员头像框信息的请求参数")
public class PlayAvatarFrameInfoAddVo { public class PlayAvatarFrameInfoAddVo {
/** /**
@@ -19,33 +22,40 @@ public class PlayAvatarFrameInfoAddVo {
*/ */
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
@ApiModelProperty(value = "添加时间", hidden = true, notes = "系统自动生成,无需传入")
private final LocalDateTime addTime = LocalDateTime.now(); private final LocalDateTime addTime = LocalDateTime.now();
/** /**
* 头像框名称 * 头像框名称
*/ */
@NotNull(message = "头像框名称不能为空") @NotNull(message = "头像框名称不能为空")
@ApiModelProperty(value = "头像框名称", required = true, example = "年度贡献者", notes = "头像框的名称")
private String avatarFrameName; private String avatarFrameName;
/** /**
* 头像框地址 * 头像框地址
*/ */
@NotNull(message = "头像框图片不能为空") @NotNull(message = "头像框图片不能为空")
@ApiModelProperty(value = "头像框地址", required = true, example = "https://example.com/frame.png", notes = "头像框图片的URL地址")
private String avatarFrameAddress; private String avatarFrameAddress;
/** /**
* 获取方式(0:手动赠送;1:自动赠送) * 获取方式(0:手动赠送;1:自动赠送)
*/ */
@NotNull(message = "头像框获取方式不能为空") @NotNull(message = "头像框获取方式不能为空")
@ApiModelProperty(value = "获取方式", required = true, example = "0", notes = "0:手动赠送;1:自动赠送")
private String accessType; private String accessType;
/** /**
* 获取条件名称 * 获取条件名称
*/ */
@ApiModelProperty(value = "获取条件名称", example = "年度贡献奖", notes = "获取该头像框的条件名称")
private String accessName; private String accessName;
/** /**
* 获取条件 * 获取条件
*/ */
@ApiModelProperty(value = "获取条件", example = "年度贡献超过10000元", notes = "获取该头像框的具体条件")
private String accessValue; private String accessValue;
/** /**
* 有效期(单位:天,-1:永久有效) * 有效期(单位:天,-1:永久有效)
*/ */
@NotNull(message = "有效期不能为空") @NotNull(message = "有效期不能为空")
@ApiModelProperty(value = "有效期", required = true, example = "365", notes = "头像框的有效期,单位:天,-1表示永久有效")
private String periodValidity; private String periodValidity;
} }

View File

@@ -1,6 +1,8 @@
package com.starry.admin.modules.clerk.module.vo; package com.starry.admin.modules.clerk.module.vo;
import com.starry.common.domain.BasePageEntity; import com.starry.common.domain.BasePageEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import lombok.EqualsAndHashCode; import lombok.EqualsAndHashCode;
@@ -10,6 +12,7 @@ import lombok.EqualsAndHashCode;
**/ **/
@EqualsAndHashCode(callSuper = true) @EqualsAndHashCode(callSuper = true)
@Data @Data
@ApiModel(value = "店员头像框查询参数", description = "查询店员头像框信息的条件参数")
public class PlayAvatarFrameInfoQueryVo extends BasePageEntity { public class PlayAvatarFrameInfoQueryVo extends BasePageEntity {
} }

View File

@@ -1,5 +1,7 @@
package com.starry.admin.modules.clerk.module.vo; package com.starry.admin.modules.clerk.module.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import javax.validation.constraints.NotNull; import javax.validation.constraints.NotNull;
@@ -9,12 +11,15 @@ import javax.validation.constraints.NotNull;
* @since 2024/6/6 下午11:13 * @since 2024/6/6 下午11:13
**/ **/
@Data @Data
@ApiModel(value = "店员头像框赠送参数", description = "赠送头像框给店员的请求参数")
public class PlayAvatarFrameSendVo { public class PlayAvatarFrameSendVo {
@ApiModelProperty(value = "店员ID", required = true, example = "1", notes = "接收头像框的店员ID")
private String clerkId; private String clerkId;
@NotNull(message = "头像框获取方式不能为空") @NotNull(message = "头像框获取方式不能为空")
@ApiModelProperty(value = "头像框ID", required = true, example = "1", notes = "要赠送的头像框ID")
private String avatarFrameId; private String avatarFrameId;
} }

View File

@@ -1,6 +1,8 @@
package com.starry.admin.modules.clerk.module.vo; package com.starry.admin.modules.clerk.module.vo;
import com.starry.common.domain.BasePageEntity; import com.starry.common.domain.BasePageEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import lombok.EqualsAndHashCode; import lombok.EqualsAndHashCode;
@@ -12,28 +14,34 @@ import java.util.List;
*/ */
@EqualsAndHashCode(callSuper = true) @EqualsAndHashCode(callSuper = true)
@Data @Data
@ApiModel(value = "店员动态查询参数", description = "查询店员动态信息的条件参数")
public class PlayClerkArticleQueryVo extends BasePageEntity { public class PlayClerkArticleQueryVo extends BasePageEntity {
@ApiModelProperty(value = "动态ID", example = "1", notes = "特定动态的ID")
private String id; private String id;
/** /**
* 店员ID * 店员ID
*/ */
@ApiModelProperty(value = "店员ID", example = "1", notes = "特定店员的ID")
private String clerkId; private String clerkId;
/** /**
* 审核状态0未审核:1审核通过2审核不通过 * 审核状态0未审核:1审核通过2审核不通过
*/ */
@ApiModelProperty(value = "审核状态", example = "0", notes = "0未审核:1审核通过2审核不通过")
private String reviewState; private String reviewState;
/** /**
* 发布时间 * 发布时间
*/ */
@ApiModelProperty(value = "发布时间范围", example = "['2024-01-01 00:00:00','2024-12-31 23:59:59']", notes = "动态发布时间范围,包含开始和结束时间")
private List<String> releaseTime; private List<String> releaseTime;
/** /**
* 顾客ID * 顾客ID
*/ */
@ApiModelProperty(value = "顾客ID", example = "1", notes = "特定顾客的ID")
private String customId; private String customId;
} }

View File

@@ -3,6 +3,8 @@ package com.starry.admin.modules.clerk.module.vo;
import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonIgnore;
import com.starry.admin.modules.clerk.module.entity.PlayCustomArticleInfoEntity; import com.starry.admin.modules.clerk.module.entity.PlayCustomArticleInfoEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat; import org.springframework.format.annotation.DateTimeFormat;
@@ -14,41 +16,49 @@ import java.util.List;
* 动态信息查询返回对象 * 动态信息查询返回对象
*/ */
@Data @Data
@ApiModel(value = "店员动态返回数据", description = "店员动态信息的返回数据")
public class PlayClerkArticleReturnVo { public class PlayClerkArticleReturnVo {
/** /**
* UUID * UUID
*/ */
@ApiModelProperty(value = "动态ID", example = "1")
private String id; private String id;
/** /**
* 陪聊用户ID * 陪聊用户ID
*/ */
@ApiModelProperty(value = "店员ID", example = "1")
private String clerkId; private String clerkId;
/** /**
* 陪聊用户昵称 * 陪聊用户昵称
*/ */
@ApiModelProperty(value = "店员昵称", example = "小明")
private String clerkNickname; private String clerkNickname;
/** /**
* 陪聊用户头像 * 陪聊用户头像
*/ */
@ApiModelProperty(value = "店员头像", example = "https://example.com/avatar.jpg")
private String clerkAvatar; private String clerkAvatar;
/** /**
* 动态内容 * 动态内容
*/ */
@ApiModelProperty(value = "动态内容", example = "今天天气真好,感谢大家的支持!")
private String articleCon; private String articleCon;
/** /**
* 动态附件类型0:图片;1:视频;2:音频) * 动态附件类型0:图片;1:视频;2:音频)
*/ */
@ApiModelProperty(value = "附件类型", example = "0", notes = "0:图片;1:视频;2:音频")
private String annexType; private String annexType;
/** /**
* 动态附件内容 * 动态附件内容
*/ */
@ApiModelProperty(value = "附件内容", example = "[\"https://example.com/photo1.jpg\"]", notes = "附件内容,根据附件类型有不同格式")
private List<String> annexCon; private List<String> annexCon;
@@ -57,26 +67,31 @@ public class PlayClerkArticleReturnVo {
*/ */
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
@ApiModelProperty(value = "发布时间", example = "2024-01-01 12:00:00")
private LocalDateTime releaseTime; private LocalDateTime releaseTime;
/** /**
* 备注(审核理由) * 备注(审核理由)
*/ */
@ApiModelProperty(value = "审核理由", example = "内容健康,通过审核")
private String reviewCon; private String reviewCon;
/** /**
* 点赞人数 * 点赞人数
*/ */
@ApiModelProperty(value = "点赞人数", example = "10")
private Integer agreedQuantity = 0; private Integer agreedQuantity = 0;
/** /**
* 审核状态0未审核:1审核通过2审核不通过 * 审核状态0未审核:1审核通过2审核不通过
*/ */
@ApiModelProperty(value = "审核状态", example = "0", notes = "0未审核:1审核通过2审核不通过")
private String reviewState; private String reviewState;
/** /**
* 陪聊点赞动态 * 陪聊点赞动态
*/ */
@JsonIgnore @JsonIgnore
@ApiModelProperty(value = "点赞动态", hidden = true)
private List<PlayCustomArticleInfoEntity> articleInfoEntities; private List<PlayCustomArticleInfoEntity> articleInfoEntities;
} }

View File

@@ -1,5 +1,7 @@
package com.starry.admin.modules.clerk.module.vo; package com.starry.admin.modules.clerk.module.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotBlank;
@@ -11,10 +13,12 @@ import java.time.LocalDateTime;
* 动态审核 * 动态审核
*/ */
@Data @Data
@ApiModel(value = "店员动态审核状态修改参数", description = "修改店员动态审核状态的请求参数")
public class PlayClerkArticleReviewStateEditVo { public class PlayClerkArticleReviewStateEditVo {
@NotBlank(message = "ID不能为空") @NotBlank(message = "ID不能为空")
@ApiModelProperty(value = "动态ID", required = true, example = "1", notes = "店员动态的ID")
private String id; private String id;
/** /**
@@ -22,15 +26,18 @@ public class PlayClerkArticleReviewStateEditVo {
*/ */
@NotBlank(message = "审核状态不能为空") @NotBlank(message = "审核状态不能为空")
@Pattern(regexp = "[12]", message = "审核状态必须为1或2") @Pattern(regexp = "[12]", message = "审核状态必须为1或2")
@ApiModelProperty(value = "审核状态", required = true, example = "1", notes = "1审核通过2审核不通过")
private String reviewState; private String reviewState;
/** /**
* 发布时间 * 发布时间
*/ */
@ApiModelProperty(value = "备注", example = "内容健康,通过审核", notes = "审核的备注内容或拒绝原因")
private String remark; private String remark;
/** /**
* 审核时间 * 审核时间
*/ */
@ApiModelProperty(value = "审核时间", hidden = true, notes = "系统自动生成,无需传入")
private LocalDateTime reviewTime = LocalDateTime.now(); private LocalDateTime reviewTime = LocalDateTime.now();
} }

View File

@@ -1,16 +1,20 @@
package com.starry.admin.modules.clerk.module.vo; package com.starry.admin.modules.clerk.module.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
/** /**
* @author admin * @author admin
*/ */
@Data @Data
@ApiModel(value = "陪聊服务项目查询参数", description = "查询陪聊服务项目的条件参数")
public class PlayClerkCommodityQueryVo { public class PlayClerkCommodityQueryVo {
/** /**
* 项目类型 * 项目类型
*/ */
@ApiModelProperty(value = "项目类型", example = "1", notes = "服务项目的类型")
private String commodityType; private String commodityType;
@@ -19,6 +23,7 @@ public class PlayClerkCommodityQueryVo {
* 0:停用 * 0:停用
* 1:启用 * 1:启用
*/ */
@ApiModelProperty(value = "启用状态", example = "1", notes = "0:停用,1:启用")
private String enablingState; private String enablingState;
public PlayClerkCommodityQueryVo(String commodityType, String enablingState) { public PlayClerkCommodityQueryVo(String commodityType, String enablingState) {

View File

@@ -1,6 +1,8 @@
package com.starry.admin.modules.clerk.module.vo; package com.starry.admin.modules.clerk.module.vo;
import com.starry.common.domain.BasePageEntity; import com.starry.common.domain.BasePageEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import lombok.EqualsAndHashCode; import lombok.EqualsAndHashCode;
@@ -14,25 +16,30 @@ import java.util.List;
*/ */
@Data @Data
@EqualsAndHashCode(callSuper = false) @EqualsAndHashCode(callSuper = false)
@ApiModel(value = "店员资料内容审核查询参数", description = "查询店员资料内容审核信息的条件参数")
public class PlayClerkDataReviewQueryVo extends BasePageEntity { public class PlayClerkDataReviewQueryVo extends BasePageEntity {
/** /**
* UUID * UUID
*/ */
@ApiModelProperty(value = "店员ID", example = "1", notes = "特定店员的ID")
private String clerkId; private String clerkId;
/** /**
* 资料类型[0:昵称;1:头像;2:相册;3:录音] * 资料类型[0:昵称;1:头像;2:相册;3:录音]
*/ */
@ApiModelProperty(value = "资料类型", example = "1", notes = "0:昵称;1:头像;2:相册;3:录音")
private String dataType; private String dataType;
/** /**
* 审核状态0未审核:1审核通过2审核不通过 * 审核状态0未审核:1审核通过2审核不通过
*/ */
@ApiModelProperty(value = "审核状态", example = "0", notes = "0未审核:1审核通过2审核不通过")
private String reviewState; private String reviewState;
/** /**
* 资料添加时间 * 资料添加时间
*/ */
@ApiModelProperty(value = "添加时间范围", example = "['2024-01-01 00:00:00','2024-12-31 23:59:59']", notes = "资料添加时间范围,包含开始和结束时间")
private List<String> addTime; private List<String> addTime;
} }

View File

@@ -1,5 +1,7 @@
package com.starry.admin.modules.clerk.module.vo; package com.starry.admin.modules.clerk.module.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import java.time.LocalDateTime; import java.time.LocalDateTime;
@@ -12,69 +14,82 @@ import java.util.List;
* @since 2024-05-19 * @since 2024-05-19
*/ */
@Data @Data
@ApiModel(value = "店员资料内容审核返回数据", description = "店员资料内容审核信息的返回数据")
public class PlayClerkDataReviewReturnVo { public class PlayClerkDataReviewReturnVo {
/** /**
* UUID * UUID
*/ */
@ApiModelProperty(value = "审核记录ID", example = "1")
private String id; private String id;
/** /**
* 店员ID * 店员ID
*/ */
@ApiModelProperty(value = "店员ID", example = "1")
private String clerkId; private String clerkId;
/** /**
* 店员昵称 * 店员昵称
*/ */
@ApiModelProperty(value = "店员昵称", example = "小明")
private String clerkNickname; private String clerkNickname;
/** /**
* 店员头像 * 店员头像
*/ */
@ApiModelProperty(value = "店员头像", example = "https://example.com/avatar.jpg")
private String clerkAvatar; private String clerkAvatar;
/** /**
* 资料类型[0:昵称;1:头像;2:相册;3:录音] * 资料类型[0:昵称;1:头像;2:相册;3:录音]
*/ */
@ApiModelProperty(value = "资料类型", example = "1", notes = "0:昵称;1:头像;2:相册;3:录音")
private String dataType; private String dataType;
/** /**
* 资料内容 * 资料内容
*/ */
@ApiModelProperty(value = "资料内容", example = "[\"https://example.com/photo1.jpg\"]", notes = "资料内容,根据资料类型有不同格式")
private List<String> dataContent; private List<String> dataContent;
/** /**
* 审核状态0未审核:1审核通过2审核不通过 * 审核状态0未审核:1审核通过2审核不通过
*/ */
@ApiModelProperty(value = "审核状态", example = "0", notes = "0未审核:1审核通过2审核不通过")
private String reviewState; private String reviewState;
/** /**
* 资料添加时间 * 资料添加时间
*/ */
@ApiModelProperty(value = "添加时间", example = "2024-01-01 12:00:00")
private LocalDateTime addTime; private LocalDateTime addTime;
/** /**
* 审核时间 * 审核时间
*/ */
@ApiModelProperty(value = "审核时间", example = "2024-01-02 12:00:00")
private LocalDateTime reviewTime; private LocalDateTime reviewTime;
/** /**
* 审核人 * 审核人
*/ */
@ApiModelProperty(value = "审核人", example = "admin")
private String reviewBy; private String reviewBy;
/** /**
* 审核内容 * 审核内容
*/ */
@ApiModelProperty(value = "审核内容", example = "资料完整,通过审核")
private String reviewCon; private String reviewCon;
/** /**
* 备注 * 备注
*/ */
@ApiModelProperty(value = "备注", example = "资料清晰可见")
private String remark; private String remark;
} }

View File

@@ -1,5 +1,7 @@
package com.starry.admin.modules.clerk.module.vo; package com.starry.admin.modules.clerk.module.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotBlank;
@@ -11,10 +13,12 @@ import java.time.LocalDateTime;
* 动态审核 * 动态审核
*/ */
@Data @Data
@ApiModel(value = "店员资料审核状态修改参数", description = "修改店员资料审核状态的请求参数")
public class PlayClerkDataReviewStateEditVo { public class PlayClerkDataReviewStateEditVo {
@NotBlank(message = "ID不能为空") @NotBlank(message = "ID不能为空")
@ApiModelProperty(value = "审核记录ID", required = true, example = "1", notes = "店员资料审核记录的ID")
private String id; private String id;
/** /**
@@ -22,15 +26,18 @@ public class PlayClerkDataReviewStateEditVo {
*/ */
@NotBlank(message = "审核状态不能为空") @NotBlank(message = "审核状态不能为空")
@Pattern(regexp = "[12]", message = "审核状态必须为1或2") @Pattern(regexp = "[12]", message = "审核状态必须为1或2")
@ApiModelProperty(value = "审核状态", required = true, example = "1", notes = "1审核通过2审核不通过")
private String reviewState; private String reviewState;
/** /**
* 审核内容 * 审核内容
*/ */
@ApiModelProperty(value = "审核内容", example = "资料完整,通过审核", notes = "审核的备注内容或拒绝原因")
private String reviewCon; private String reviewCon;
/** /**
* 审核时间 * 审核时间
*/ */
@ApiModelProperty(value = "审核时间", hidden = true, notes = "系统自动生成,无需传入")
private LocalDateTime reviewTime = LocalDateTime.now(); private LocalDateTime reviewTime = LocalDateTime.now();
} }

View File

@@ -1,5 +1,7 @@
package com.starry.admin.modules.clerk.module.vo; package com.starry.admin.modules.clerk.module.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotBlank;
@@ -8,42 +10,50 @@ import javax.validation.constraints.NotBlank;
* @author admin * @author admin
*/ */
@Data @Data
@ApiModel(value = "店员等级添加参数", description = "新增店员等级信息的请求参数")
public class PlayClerkLevelAddVo { public class PlayClerkLevelAddVo {
/** /**
* 等级名称 * 等级名称
*/ */
@NotBlank(message = "等级名称不能为空") @NotBlank(message = "等级名称不能为空")
@ApiModelProperty(value = "等级名称", required = true, example = "高级店员", notes = "店员等级的名称")
private String name; private String name;
/** /**
* 首次固定单比例[0 - 100%] * 首次固定单比例[0 - 100%]
*/ */
@ApiModelProperty(value = "首次固定单比例", example = "70", notes = "首次固定单提成比例范围0-100%")
private Integer firstRegularRatio; private Integer firstRegularRatio;
/** /**
* 非首次固定单比例[0 - 100%] * 非首次固定单比例[0 - 100%]
*/ */
@ApiModelProperty(value = "非首次固定单比例", example = "60", notes = "非首次固定单提成比例范围0-100%")
private Integer notFirstRegularRatio; private Integer notFirstRegularRatio;
/** /**
* 首次打赏比例[0 - 100%] * 首次打赏比例[0 - 100%]
*/ */
@ApiModelProperty(value = "首次打赏比例", example = "80", notes = "首次打赏提成比例范围0-100%")
private Integer firstRewardRatio; private Integer firstRewardRatio;
/** /**
* 非首次打赏比例[0 - 100%] * 非首次打赏比例[0 - 100%]
*/ */
@ApiModelProperty(value = "非首次打赏比例", example = "70", notes = "非首次打赏提成比例范围0-100%")
private Integer notFirstRewardRatio; private Integer notFirstRewardRatio;
/** /**
* 首次随机单比例[0 - 100%] * 首次随机单比例[0 - 100%]
*/ */
@ApiModelProperty(value = "首次随机单比例", example = "75", notes = "首次随机单提成比例范围0-100%")
private Integer firstRandomRadio; private Integer firstRandomRadio;
/** /**
* 非首次随机单比例[0 - 100%] * 非首次随机单比例[0 - 100%]
*/ */
@ApiModelProperty(value = "非首次随机单比例", example = "65", notes = "非首次随机单提成比例范围0-100%")
private Integer notFirstRandomRadio; private Integer notFirstRandomRadio;
} }

View File

@@ -1,5 +1,7 @@
package com.starry.admin.modules.clerk.module.vo; package com.starry.admin.modules.clerk.module.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotBlank;
@@ -8,53 +10,64 @@ import javax.validation.constraints.NotBlank;
* @author admin * @author admin
*/ */
@Data @Data
@ApiModel(value = "店员等级修改参数", description = "修改店员等级信息的请求参数")
public class PlayClerkLevelEditVo { public class PlayClerkLevelEditVo {
/** /**
* 等级名称 * 等级名称
*/ */
@NotBlank(message = "ID不能为空") @NotBlank(message = "ID不能为空")
@ApiModelProperty(value = "等级ID", required = true, example = "1", notes = "店员等级的ID")
private String id; private String id;
/** /**
* 等级名称 * 等级名称
*/ */
@NotBlank(message = "等级名称不能为空") @NotBlank(message = "等级名称不能为空")
@ApiModelProperty(value = "等级名称", required = true, example = "高级店员", notes = "店员等级的名称")
private String name; private String name;
/** /**
* 首次固定单比例[0 - 100%] * 首次固定单比例[0 - 100%]
*/ */
@ApiModelProperty(value = "首次固定单比例", example = "70", notes = "首次固定单提成比例范围0-100%")
private Integer firstRegularRatio; private Integer firstRegularRatio;
/** /**
* 非首次固定单比例[0 - 100%] * 非首次固定单比例[0 - 100%]
*/ */
@ApiModelProperty(value = "非首次固定单比例", example = "60", notes = "非首次固定单提成比例范围0-100%")
private Integer notFirstRegularRatio; private Integer notFirstRegularRatio;
/** /**
* 首次打赏比例[0 - 100%] * 首次打赏比例[0 - 100%]
*/ */
@ApiModelProperty(value = "首次打赏比例", example = "80", notes = "首次打赏提成比例范围0-100%")
private Integer firstRewardRatio; private Integer firstRewardRatio;
/** /**
* 非首次打赏比例[0 - 100%] * 非首次打赏比例[0 - 100%]
*/ */
@ApiModelProperty(value = "非首次打赏比例", example = "70", notes = "非首次打赏提成比例范围0-100%")
private Integer notFirstRewardRatio; private Integer notFirstRewardRatio;
/** /**
* 首次随机单比例[0 - 100%] * 首次随机单比例[0 - 100%]
*/ */
@ApiModelProperty(value = "首次随机单比例", example = "75", notes = "首次随机单提成比例范围0-100%")
private Integer firstRandomRadio; private Integer firstRandomRadio;
/** /**
* 非首次随机单比例[0 - 100%] * 非首次随机单比例[0 - 100%]
*/ */
@ApiModelProperty(value = "非首次随机单比例", example = "65", notes = "非首次随机单提成比例范围0-100%")
private Integer notFirstRandomRadio; private Integer notFirstRandomRadio;
@ApiModelProperty(value = "样式类型", example = "1", notes = "等级样式类型")
private Integer styleType; private Integer styleType;
@ApiModelProperty(value = "样式图片URL", example = "https://example.com/style.jpg", notes = "等级样式图片URL")
private String styleImageUrl; private String styleImageUrl;
} }

View File

@@ -1,5 +1,7 @@
package com.starry.admin.modules.clerk.module.vo; package com.starry.admin.modules.clerk.module.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import javax.validation.constraints.NotNull; import javax.validation.constraints.NotNull;
@@ -9,6 +11,7 @@ import javax.validation.constraints.NotNull;
* @since 2024/6/2 下午5:59 * @since 2024/6/2 下午5:59
**/ **/
@Data @Data
@ApiModel(value = "店员分类添加参数", description = "新增店员分类信息的请求参数")
public class PlayClerkTypeInfoAddVo { public class PlayClerkTypeInfoAddVo {
@@ -16,18 +19,21 @@ public class PlayClerkTypeInfoAddVo {
* 分类名称 * 分类名称
*/ */
@NotNull(message = "分类名称不能为空") @NotNull(message = "分类名称不能为空")
@ApiModelProperty(value = "分类名称", required = true, example = "新人店员", notes = "店员分类的名称")
private String typeName; private String typeName;
/** /**
* 是否在首页显示0:不显示,1:显示) * 是否在首页显示0:不显示,1:显示)
*/ */
@NotNull(message = "是否在首页显示不能为空") @NotNull(message = "是否在首页显示不能为空")
@ApiModelProperty(value = "是否在首页显示", required = true, example = "1", notes = "0:不显示,1:显示")
private String homeDisplayed; private String homeDisplayed;
/** /**
* 排序 * 排序
*/ */
@NotNull(message = "排序不能为空") @NotNull(message = "排序不能为空")
@ApiModelProperty(value = "排序", required = true, example = "1", notes = "数字越小排序越靠前")
private Integer sort; private Integer sort;
} }

View File

@@ -1,6 +1,8 @@
package com.starry.admin.modules.clerk.module.vo; package com.starry.admin.modules.clerk.module.vo;
import com.starry.common.domain.BasePageEntity; import com.starry.common.domain.BasePageEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import lombok.EqualsAndHashCode; import lombok.EqualsAndHashCode;
@@ -10,8 +12,10 @@ import lombok.EqualsAndHashCode;
**/ **/
@EqualsAndHashCode(callSuper = true) @EqualsAndHashCode(callSuper = true)
@Data @Data
@ApiModel(value = "店员分类查询参数", description = "查询店员分类信息的条件参数")
public class PlayClerkTypeInfoQueryVo extends BasePageEntity { public class PlayClerkTypeInfoQueryVo extends BasePageEntity {
@ApiModelProperty(value = "分类ID", example = "1", notes = "店员分类的ID")
private String id; private String id;
} }

View File

@@ -1,6 +1,8 @@
package com.starry.admin.modules.clerk.module.vo; package com.starry.admin.modules.clerk.module.vo;
import com.starry.common.domain.BasePageEntity; import com.starry.common.domain.BasePageEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import lombok.EqualsAndHashCode; import lombok.EqualsAndHashCode;
@@ -10,16 +12,19 @@ import lombok.EqualsAndHashCode;
**/ **/
@EqualsAndHashCode(callSuper = true) @EqualsAndHashCode(callSuper = true)
@Data @Data
@ApiModel(value = "未结算工资查询参数", description = "查询店员未结算工资信息的条件参数")
public class PlayClerkUnsettledWagesInfoQueryVo extends BasePageEntity { public class PlayClerkUnsettledWagesInfoQueryVo extends BasePageEntity {
/** /**
* 店员ID * 店员ID
*/ */
@ApiModelProperty(value = "店员ID", example = "1", notes = "特定店员的ID")
private String clerkId; private String clerkId;
/** /**
* 店员上架状态 * 店员上架状态
*/ */
@ApiModelProperty(value = "店员上架状态", example = "1", notes = "1上架0下架")
private String listingState; private String listingState;
} }

View File

@@ -1,5 +1,7 @@
package com.starry.admin.modules.clerk.module.vo; package com.starry.admin.modules.clerk.module.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotBlank;
@@ -10,100 +12,117 @@ import javax.validation.constraints.NotNull;
* @author admin * @author admin
*/ */
@Data @Data
@ApiModel(value = "店员编辑对象", description = "修改店员基本信息的参数对象")
public class PlayClerkUserEditVo { public class PlayClerkUserEditVo {
/** /**
* id * id
*/ */
@NotBlank(message = "id不能为空") @NotBlank(message = "id不能为空")
@ApiModelProperty(value = "店员ID", required = true, notes = "唯一标识")
private String id; private String id;
/** /**
* 账号ID * 账号ID
*/ */
@NotBlank(message = "账号不能为空") @NotBlank(message = "账号不能为空")
@ApiModelProperty(value = "账号ID", required = true, notes = "关联的用户账号ID")
private String playUserId; private String playUserId;
/** /**
* 用户的标识,对当前公众号唯一 * 用户的标识,对当前公众号唯一
*/ */
@ApiModelProperty(value = "微信OpenID", notes = "用户在微信公众号中的唯一标识")
private String openid; private String openid;
/** /**
* 店员昵称 * 店员昵称
*/ */
@NotBlank(message = "昵称不能为空") @NotBlank(message = "昵称不能为空")
@ApiModelProperty(value = "店员昵称", required = true)
private String nickname; private String nickname;
/** /**
* 店员等级 * 店员等级
*/ */
@NotBlank(message = "等级不能为空") @NotBlank(message = "等级不能为空")
@ApiModelProperty(value = "店员等级ID", required = true)
private String levelId; private String levelId;
/** /**
* 性别[0:未知;1:男;2:女] * 性别[0:未知;1:男;2:女]
*/ */
@NotNull(message = "性别不能为空") @NotNull(message = "性别不能为空")
@ApiModelProperty(value = "性别", required = true, notes = "0:未知;1:男;2:女")
private String sex; private String sex;
/** /**
* 头像 * 头像
*/ */
@NotBlank(message = "头像不能为空") @NotBlank(message = "头像不能为空")
@ApiModelProperty(value = "头像", required = true, notes = "头像图片URL")
private String avatar; private String avatar;
/** /**
* 音频 * 音频
*/ */
@NotBlank(message = "音频不能为空") @NotBlank(message = "音频不能为空")
@ApiModelProperty(value = "音频", required = true, notes = "音频文件URL")
private String audioFrequency; private String audioFrequency;
/** /**
* 星座 * 星座
*/ */
@NotBlank(message = "星座不能为空") @NotBlank(message = "星座不能为空")
@ApiModelProperty(value = "星座", required = true, example = "天蝎座")
private String constellation; private String constellation;
/** /**
* 标签 * 标签
*/ */
@ApiModelProperty(value = "标签", notes = "店员个人标签,多个标签用逗号分隔")
private String label; private String label;
/** /**
* 个性签名 * 个性签名
*/ */
@NotBlank(message = "签名不能为空") @NotBlank(message = "签名不能为空")
@ApiModelProperty(value = "个性签名", required = true)
private String signature; private String signature;
/** /**
* 年龄 * 年龄
*/ */
@NotNull(message = "年龄不能为空") @NotNull(message = "年龄不能为空")
@ApiModelProperty(value = "年龄", required = true, example = "25")
private Long age; private Long age;
/** /**
* 所在国家 * 所在国家
*/ */
@NotBlank(message = "国家不能为空") @NotBlank(message = "国家不能为空")
@ApiModelProperty(value = "所在国家", required = true, example = "中国")
private String country; private String country;
/** /**
* 所在省份 * 所在省份
*/ */
@NotBlank(message = "省份不能为空") @NotBlank(message = "省份不能为空")
@ApiModelProperty(value = "所在省份", required = true, example = "广东省")
private String province; private String province;
/** /**
* 所在城市 * 所在城市
*/ */
@NotBlank(message = "城市不能为空") @NotBlank(message = "城市不能为空")
@ApiModelProperty(value = "所在城市", required = true, example = "深圳市")
private String city; private String city;
/** /**
* 备注 * 备注
*/ */
@ApiModelProperty(value = "备注", notes = "店员的备注信息")
private String remark; private String remark;
} }

View File

@@ -1,6 +1,8 @@
package com.starry.admin.modules.clerk.module.vo; package com.starry.admin.modules.clerk.module.vo;
import com.starry.common.domain.BasePageEntity; import com.starry.common.domain.BasePageEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import lombok.EqualsAndHashCode; import lombok.EqualsAndHashCode;
@@ -14,44 +16,52 @@ import java.util.List;
**/ **/
@EqualsAndHashCode(callSuper = true) @EqualsAndHashCode(callSuper = true)
@Data @Data
@ApiModel(value = "店员资料审核查询参数", description = "查询店员资料审核信息的条件参数")
public class PlayClerkUserReviewQueryVo extends BasePageEntity { public class PlayClerkUserReviewQueryVo extends BasePageEntity {
/** /**
* 店员ID * 店员ID
*/ */
@ApiModelProperty(value = "店员ID", example = "1", notes = "特定店员的ID")
private String clerkId; private String clerkId;
/** /**
* 店员昵称 * 店员昵称
*/ */
@ApiModelProperty(value = "店员昵称", example = "小明", notes = "店员的昵称,支持模糊查询")
private String nickname; private String nickname;
/** /**
* 性别[0:未知;1:男;2:女] * 性别[0:未知;1:男;2:女]
*/ */
@ApiModelProperty(value = "性别", example = "1", notes = "0:未知;1:男;2:女")
private String sex; private String sex;
/** /**
* 手机号码 * 手机号码
*/ */
@ApiModelProperty(value = "手机号码", example = "13800138000", notes = "店员的手机号码")
private String phone; private String phone;
/** /**
* 微信号 * 微信号
*/ */
@ApiModelProperty(value = "微信号", example = "wx123456", notes = "店员的微信号")
private String weiChatCode; private String weiChatCode;
/** /**
* 审核状态0未审核:1审核通过2审核不通过 * 审核状态0未审核:1审核通过2审核不通过
*/ */
@ApiModelProperty(value = "审核状态", example = "0", notes = "0未审核:1审核通过2审核不通过")
private String reviewState; private String reviewState;
/** /**
* 申请时间 * 申请时间
*/ */
@ApiModelProperty(value = "申请时间范围", example = "['2024-01-01 00:00:00','2024-12-31 23:59:59']", notes = "申请时间范围,包含开始和结束时间")
private List<String> addTime; private List<String> addTime;
} }

View File

@@ -3,6 +3,8 @@ package com.starry.admin.modules.clerk.module.vo;
import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableField;
import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonFormat;
import com.starry.admin.common.conf.StringTypeHandler; import com.starry.admin.common.conf.StringTypeHandler;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat; import org.springframework.format.annotation.DateTimeFormat;
@@ -17,74 +19,89 @@ import java.util.List;
* @since 2024/5/19 下午4:21 * @since 2024/5/19 下午4:21
**/ **/
@Data @Data
@ApiModel(value = "店员资料审核返回数据", description = "店员资料审核信息的返回数据")
public class PlayClerkUserReviewReturnVo { public class PlayClerkUserReviewReturnVo {
@ApiModelProperty(value = "审核记录ID", example = "1")
private String id; private String id;
/** /**
* 店员ID * 店员ID
*/ */
@ApiModelProperty(value = "店员ID", example = "1")
private String clerkId; private String clerkId;
/** /**
* 店员昵称 * 店员昵称
*/ */
@ApiModelProperty(value = "店员昵称", example = "小明")
private String clerkNickname; private String clerkNickname;
/** /**
* 店员头像 * 店员头像
*/ */
@ApiModelProperty(value = "店员头像", example = "https://example.com/avatar.jpg")
private String clerkAvatar; private String clerkAvatar;
/** /**
* 微信号码 * 微信号码
*/ */
@ApiModelProperty(value = "微信号", example = "wx123456")
private String weiChatCode; private String weiChatCode;
/** /**
* 手机号码 * 手机号码
*/ */
@ApiModelProperty(value = "手机号码", example = "13800138000")
private String phone; private String phone;
/** /**
* 昵称 * 昵称
*/ */
@ApiModelProperty(value = "昵称", example = "小明")
private String nickname; private String nickname;
/** /**
* 性别[0:未知;1:男;2:女] * 性别[0:未知;1:男;2:女]
*/ */
@ApiModelProperty(value = "性别", example = "1", notes = "0:未知;1:男;2:女")
private String sex; private String sex;
/** /**
* 年龄 * 年龄
*/ */
@ApiModelProperty(value = "年龄", example = "25")
private Integer age; private Integer age;
/** /**
* 所在省份 * 所在省份
*/ */
@ApiModelProperty(value = "所在省份", example = "广东省")
private String province; private String province;
/** /**
* 所在城市 * 所在城市
*/ */
@ApiModelProperty(value = "所在城市", example = "深圳市")
private String city; private String city;
/** /**
* 备注(相关经验) * 备注(相关经验)
*/ */
@ApiModelProperty(value = "备注", example = "有3年相关经验")
private String remark; private String remark;
/** /**
* 音频 * 音频
*/ */
@ApiModelProperty(value = "音频", example = "https://example.com/audio.mp3")
private String audio; private String audio;
/** /**
* 照片 * 照片
*/ */
@TableField(typeHandler = StringTypeHandler.class) @TableField(typeHandler = StringTypeHandler.class)
@ApiModelProperty(value = "照片", example = "[\"https://example.com/photo1.jpg\",\"https://example.com/photo2.jpg\"]")
private List<String> album = new ArrayList<>(); private List<String> album = new ArrayList<>();
/** /**
@@ -92,32 +109,37 @@ public class PlayClerkUserReviewReturnVo {
*/ */
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
@ApiModelProperty(value = "申请时间", example = "2024-01-01 12:00:00")
private LocalDateTime addTime; private LocalDateTime addTime;
/** /**
* 审核状态0未审核:1审核通过2审核不通过 * 审核状态0未审核:1审核通过2审核不通过
*/ */
@ApiModelProperty(value = "审核状态", example = "0", notes = "0未审核:1审核通过2审核不通过")
private String reviewState; private String reviewState;
/** /**
* 审核时间 * 审核时间
*/ */
@ApiModelProperty(value = "审核时间", example = "2024-01-02 12:00:00")
private LocalDateTime reviewTime; private LocalDateTime reviewTime;
/** /**
* 审核人 * 审核人
*/ */
@ApiModelProperty(value = "审核人", example = "admin")
private String reviewBy; private String reviewBy;
/** /**
* 审核内容 * 审核内容
*/ */
@ApiModelProperty(value = "审核内容", example = "资料完整,通过审核")
private String reviewCon; private String reviewCon;
/** /**
* 个性签名 * 个性签名
*/ */
@ApiModelProperty(value = "个性签名", example = "用心服务每一位客户")
private String signature; private String signature;
} }

View File

@@ -1,5 +1,7 @@
package com.starry.admin.modules.clerk.module.vo; package com.starry.admin.modules.clerk.module.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotBlank;
@@ -11,10 +13,12 @@ import java.time.LocalDateTime;
* 动态审核 * 动态审核
*/ */
@Data @Data
@ApiModel(value = "店员资料审核状态修改参数", description = "修改店员资料审核状态的请求参数")
public class PlayClerkUserReviewStateEditVo { public class PlayClerkUserReviewStateEditVo {
@NotBlank(message = "ID不能为空") @NotBlank(message = "ID不能为空")
@ApiModelProperty(value = "审核记录ID", required = true, example = "1", notes = "店员资料审核记录的ID")
private String id; private String id;
/** /**
@@ -22,15 +26,18 @@ public class PlayClerkUserReviewStateEditVo {
*/ */
@NotBlank(message = "审核状态不能为空") @NotBlank(message = "审核状态不能为空")
@Pattern(regexp = "[12]", message = "审核状态必须为1或2") @Pattern(regexp = "[12]", message = "审核状态必须为1或2")
@ApiModelProperty(value = "审核状态", required = true, example = "1", notes = "1审核通过2审核不通过")
private String reviewState; private String reviewState;
/** /**
* 发布时间 * 发布时间
*/ */
@ApiModelProperty(value = "审核内容", example = "资料完整,通过审核", notes = "审核的备注内容或拒绝原因")
private String reviewCon; private String reviewCon;
/** /**
* 审核时间 * 审核时间
*/ */
@ApiModelProperty(value = "审核时间", hidden = true, notes = "系统自动生成,无需传入")
private LocalDateTime reviewTime = LocalDateTime.now(); private LocalDateTime reviewTime = LocalDateTime.now();
} }

View File

@@ -1,5 +1,7 @@
package com.starry.admin.modules.clerk.module.vo; package com.starry.admin.modules.clerk.module.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotBlank;
@@ -9,74 +11,89 @@ import javax.validation.constraints.NotBlank;
* @author admin * @author admin
*/ */
@Data @Data
@ApiModel(value = "店员状态编辑对象", description = "修改店员状态信息的参数对象")
public class PlayClerkUserStateEditVo { public class PlayClerkUserStateEditVo {
/** /**
* id * id
*/ */
@NotBlank(message = "id不能为空") @NotBlank(message = "id不能为空")
@ApiModelProperty(value = "店员ID", required = true, notes = "唯一标识")
private String id; private String id;
/** /**
* 是否推荐状态1已推荐0未推荐 * 是否推荐状态1已推荐0未推荐
*/ */
@ApiModelProperty(value = "是否推荐", notes = "1已推荐0未推荐")
private String recommendationState; private String recommendationState;
/** /**
* 是否置顶状态1已置顶0未置顶 * 是否置顶状态1已置顶0未置顶
*/ */
@ApiModelProperty(value = "是否置顶", notes = "1已置顶0未置顶")
private String pinToTopState; private String pinToTopState;
/** /**
* 在线状态【1在线0离线】 * 在线状态【1在线0离线】
*/ */
@ApiModelProperty(value = "在线状态", notes = "1在线0离线")
private String onlineState; private String onlineState;
/** /**
* 上架状态【1上架0下架】 * 上架状态【1上架0下架】
*/ */
@ApiModelProperty(value = "上架状态", notes = "1上架0下架")
private String listingState; private String listingState;
/** /**
* 显示状态【1显示0隐藏】 * 显示状态【1显示0隐藏】
*/ */
@ApiModelProperty(value = "显示状态", notes = "1显示0隐藏")
private String displayState; private String displayState;
/** /**
* 实名状态【1已实名0未实名】 * 实名状态【1已实名0未实名】
*/ */
@ApiModelProperty(value = "实名状态", notes = "1已实名0未实名")
private String realState; private String realState;
/** /**
* 是否必须实名【0:非必须实名;1:必须实名;2:跟随店铺设置】 * 是否必须实名【0:非必须实名;1:必须实名;2:跟随店铺设置】
*/ */
@ApiModelProperty(value = "是否必须实名", notes = "0:非必须实名;1:必须实名;2:跟随店铺设置")
private String mandatoryRealState; private String mandatoryRealState;
/** /**
* 随机接单状态【1允许0禁止】 * 随机接单状态【1允许0禁止】
*/ */
@ApiModelProperty(value = "随机接单状态", notes = "1允许0禁止")
private String randomOrderState; private String randomOrderState;
/** /**
* 是否固定等级(0:固定等级1:不固定) * 是否固定等级(0:固定等级1:不固定)
*/ */
@ApiModelProperty(value = "是否固定等级", notes = "0:固定等级1:不固定")
private String fixingLevel; private String fixingLevel;
/** /**
* 在职状态1在职0离职 * 在职状态1在职0离职
*/ */
@ApiModelProperty(value = "在职状态", notes = "1在职0离职", example = "1")
private String onboardingState = "1"; private String onboardingState = "1";
/** /**
* 在职状态1在职0离职 * 在职状态1在职0离职
*/ */
@ApiModelProperty(value = "店员等级ID")
private String levelId; private String levelId;
@ApiModelProperty(value = "备注", notes = "店员状态的备注信息")
private String remark; private String remark;
@ApiModelProperty(value = "性别", notes = "0:未知;1:男;2:女")
private String sex; private String sex;
} }

View File

@@ -1,6 +1,8 @@
package com.starry.admin.modules.clerk.module.vo; package com.starry.admin.modules.clerk.module.vo;
import com.starry.common.domain.BasePageEntity; import com.starry.common.domain.BasePageEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import lombok.EqualsAndHashCode; import lombok.EqualsAndHashCode;
@@ -10,24 +12,29 @@ import lombok.EqualsAndHashCode;
**/ **/
@EqualsAndHashCode(callSuper = true) @EqualsAndHashCode(callSuper = true)
@Data @Data
@ApiModel(value = "工资历史查询参数", description = "查询店员历史工资结算信息的条件参数")
public class PlayClerkWagesInfoQueryVo extends BasePageEntity { public class PlayClerkWagesInfoQueryVo extends BasePageEntity {
/** /**
* 店员ID * 店员ID
*/ */
@ApiModelProperty(value = "店员ID", example = "1", notes = "特定店员的ID")
private String clerkId; private String clerkId;
/** /**
* 店员分组 * 店员分组
*/ */
@ApiModelProperty(value = "店员分组ID", example = "1", notes = "店员所属分组的ID")
private String groupId; private String groupId;
/** /**
* 店员上架状态 * 店员上架状态
*/ */
@ApiModelProperty(value = "店员上架状态", example = "1", notes = "1上架0下架")
private String listingState; private String listingState;
/** /**
* 统计时间 * 统计时间
*/ */
@ApiModelProperty(value = "统计时间", example = "2024-06", notes = "工资结算的月份格式为yyyy-MM")
private String settlementDate; private String settlementDate;
} }

View File

@@ -6,6 +6,13 @@ import com.starry.admin.modules.custom.service.IPlayCustomFollowInfoService;
import com.starry.common.annotation.Log; import com.starry.common.annotation.Log;
import com.starry.common.enums.BusinessType; import com.starry.common.enums.BusinessType;
import com.starry.common.result.R; import com.starry.common.result.R;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import io.swagger.annotations.ApiResponse;
import io.swagger.annotations.ApiResponses;
import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
@@ -17,6 +24,7 @@ import javax.annotation.Resource;
* @author admin * @author admin
* @since 2024-04-30 * @since 2024-04-30
*/ */
@Api(tags = "顾客关注管理", description = "顾客关注店员信息管理相关接口,包括查询、新增、修改和删除等操作")
@RestController @RestController
@RequestMapping("/play/follow") @RequestMapping("/play/follow")
public class PlayCustomFollowInfoController { public class PlayCustomFollowInfoController {
@@ -26,9 +34,13 @@ public class PlayCustomFollowInfoController {
/** /**
* 查询顾客关注陪聊信息列表 * 查询顾客关注陪聊信息列表
*/ */
@ApiOperation(value = "分页查询关注列表", notes = "分页查询顾客关注店员信息列表")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = PlayCustomFollowInfoEntity.class, responseContainer = "Page")
})
@PreAuthorize("@customSs.hasPermission('play:info:list')") @PreAuthorize("@customSs.hasPermission('play:info:list')")
@GetMapping("/list") @GetMapping("/list")
public R list(PlayCustomFollowInfoEntity playCustomFollowInfo) { public R list(@ApiParam(value = "查询条件") PlayCustomFollowInfoEntity playCustomFollowInfo) {
IPage<PlayCustomFollowInfoEntity> list = playCustomFollowInfoService.selectPlayCustomFollowInfoByPage(playCustomFollowInfo); IPage<PlayCustomFollowInfoEntity> list = playCustomFollowInfoService.selectPlayCustomFollowInfoByPage(playCustomFollowInfo);
return R.ok(list); return R.ok(list);
} }
@@ -36,6 +48,11 @@ public class PlayCustomFollowInfoController {
/** /**
* 获取顾客关注陪聊信息详细信息 * 获取顾客关注陪聊信息详细信息
*/ */
@ApiOperation(value = "获取关注详情", notes = "根据ID获取顾客关注店员详细信息")
@ApiImplicitParam(name = "id", value = "关注记录ID", required = true, paramType = "path", dataType = "String", example = "1")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = PlayCustomFollowInfoEntity.class)
})
@PreAuthorize("@customSs.hasPermission('play:info:query')") @PreAuthorize("@customSs.hasPermission('play:info:query')")
@GetMapping(value = "/{id}") @GetMapping(value = "/{id}")
public R getInfo(@PathVariable("id") String id) { public R getInfo(@PathVariable("id") String id) {
@@ -45,10 +62,15 @@ public class PlayCustomFollowInfoController {
/** /**
* 新增顾客关注陪聊信息 * 新增顾客关注陪聊信息
*/ */
@ApiOperation(value = "新增关注记录", notes = "创建新的顾客关注店员信息")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功"),
@ApiResponse(code = 500, message = "添加失败")
})
@PreAuthorize("@customSs.hasPermission('play:info:create')") @PreAuthorize("@customSs.hasPermission('play:info:create')")
@Log(title = "顾客关注陪聊信息", businessType = BusinessType.INSERT) @Log(title = "顾客关注陪聊信息", businessType = BusinessType.INSERT)
@PostMapping("/create") @PostMapping("/create")
public R create(@RequestBody PlayCustomFollowInfoEntity playCustomFollowInfo) { public R create(@ApiParam(value = "关注信息", required = true) @RequestBody PlayCustomFollowInfoEntity playCustomFollowInfo) {
boolean success = playCustomFollowInfoService.create(playCustomFollowInfo); boolean success = playCustomFollowInfoService.create(playCustomFollowInfo);
if (success) { if (success) {
return R.ok(); return R.ok();
@@ -59,10 +81,16 @@ public class PlayCustomFollowInfoController {
/** /**
* 修改顾客关注陪聊信息 * 修改顾客关注陪聊信息
*/ */
@ApiOperation(value = "修改关注记录", notes = "根据ID修改顾客关注店员信息")
@ApiImplicitParam(name = "id", value = "关注记录ID", required = true, paramType = "path", dataType = "String", example = "1")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功"),
@ApiResponse(code = 500, message = "修改失败")
})
@PreAuthorize("@customSs.hasPermission('play:info:edit')") @PreAuthorize("@customSs.hasPermission('play:info:edit')")
@Log(title = "顾客关注陪聊信息", businessType = BusinessType.UPDATE) @Log(title = "顾客关注陪聊信息", businessType = BusinessType.UPDATE)
@PostMapping(value = "/update/{id}") @PostMapping(value = "/update/{id}")
public R update(@PathVariable String id, @RequestBody PlayCustomFollowInfoEntity playCustomFollowInfo) { public R update(@PathVariable String id, @ApiParam(value = "关注信息", required = true) @RequestBody PlayCustomFollowInfoEntity playCustomFollowInfo) {
playCustomFollowInfo.setId(id); playCustomFollowInfo.setId(id);
boolean success = playCustomFollowInfoService.update(playCustomFollowInfo); boolean success = playCustomFollowInfoService.update(playCustomFollowInfo);
if (success) { if (success) {
@@ -74,6 +102,11 @@ public class PlayCustomFollowInfoController {
/** /**
* 删除顾客关注陪聊信息 * 删除顾客关注陪聊信息
*/ */
@ApiOperation(value = "删除关注记录", notes = "根据ID批量删除顾客关注店员信息")
@ApiImplicitParam(name = "ids", value = "关注记录ID数组", required = true, paramType = "path", dataType = "String[]", example = "1,2,3")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = Integer.class)
})
@PreAuthorize("@customSs.hasPermission('play:info:remove')") @PreAuthorize("@customSs.hasPermission('play:info:remove')")
@Log(title = "顾客关注陪聊信息", businessType = BusinessType.DELETE) @Log(title = "顾客关注陪聊信息", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}") @DeleteMapping("/{ids}")

View File

@@ -6,6 +6,13 @@ import com.starry.admin.modules.custom.service.IPlayCustomGiftInfoService;
import com.starry.common.annotation.Log; import com.starry.common.annotation.Log;
import com.starry.common.enums.BusinessType; import com.starry.common.enums.BusinessType;
import com.starry.common.result.R; import com.starry.common.result.R;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import io.swagger.annotations.ApiResponse;
import io.swagger.annotations.ApiResponses;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource; import javax.annotation.Resource;
@@ -16,6 +23,7 @@ import javax.annotation.Resource;
* @author admin * @author admin
* @since 2024-06-05 * @since 2024-06-05
*/ */
@Api(tags = "顾客礼物管理", description = "顾客与礼物关系管理相关接口,包括查询、新增、修改和删除等操作")
@RestController @RestController
@RequestMapping("/custom/giff") @RequestMapping("/custom/giff")
public class PlayCustomGiftInfoController { public class PlayCustomGiftInfoController {
@@ -25,8 +33,12 @@ public class PlayCustomGiftInfoController {
/** /**
* 查询顾客和礼物关系列表 * 查询顾客和礼物关系列表
*/ */
@ApiOperation(value = "分页查询礼物列表", notes = "分页查询顾客与礼物关系列表")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = PlayCustomGiftInfoEntity.class, responseContainer = "Page")
})
@GetMapping("/list") @GetMapping("/list")
public R list(PlayCustomGiftInfoEntity playCustomGiftInfo) { public R list(@ApiParam(value = "查询条件") PlayCustomGiftInfoEntity playCustomGiftInfo) {
IPage<PlayCustomGiftInfoEntity> list = playCustomGiftInfoService.selectPlayCustomGiftInfoByPage(playCustomGiftInfo); IPage<PlayCustomGiftInfoEntity> list = playCustomGiftInfoService.selectPlayCustomGiftInfoByPage(playCustomGiftInfo);
return R.ok(list); return R.ok(list);
} }
@@ -34,6 +46,11 @@ public class PlayCustomGiftInfoController {
/** /**
* 获取顾客和礼物关系详细信息 * 获取顾客和礼物关系详细信息
*/ */
@ApiOperation(value = "获取礼物详情", notes = "根据ID获取顾客与礼物关系详细信息")
@ApiImplicitParam(name = "id", value = "礼物关系ID", required = true, paramType = "path", dataType = "String", example = "1")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = PlayCustomGiftInfoEntity.class)
})
@GetMapping(value = "/{id}") @GetMapping(value = "/{id}")
public R getInfo(@PathVariable("id") String id) { public R getInfo(@PathVariable("id") String id) {
return R.ok(playCustomGiftInfoService.selectPlayCustomGiftInfoById(id)); return R.ok(playCustomGiftInfoService.selectPlayCustomGiftInfoById(id));
@@ -42,9 +59,14 @@ public class PlayCustomGiftInfoController {
/** /**
* 新增顾客和礼物关系 * 新增顾客和礼物关系
*/ */
@ApiOperation(value = "新增礼物关系", notes = "创建新的顾客与礼物关系信息")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功"),
@ApiResponse(code = 500, message = "添加失败")
})
@Log(title = "顾客和礼物关系", businessType = BusinessType.INSERT) @Log(title = "顾客和礼物关系", businessType = BusinessType.INSERT)
@PostMapping("/create") @PostMapping("/create")
public R create(@RequestBody PlayCustomGiftInfoEntity playCustomGiftInfo) { public R create(@ApiParam(value = "礼物关系信息", required = true) @RequestBody PlayCustomGiftInfoEntity playCustomGiftInfo) {
boolean success = playCustomGiftInfoService.create(playCustomGiftInfo); boolean success = playCustomGiftInfoService.create(playCustomGiftInfo);
if (success) { if (success) {
return R.ok(); return R.ok();
@@ -55,9 +77,15 @@ public class PlayCustomGiftInfoController {
/** /**
* 修改顾客和礼物关系 * 修改顾客和礼物关系
*/ */
@ApiOperation(value = "修改礼物关系", notes = "根据ID修改顾客与礼物关系信息")
@ApiImplicitParam(name = "id", value = "礼物关系ID", required = true, paramType = "path", dataType = "String", example = "1")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功"),
@ApiResponse(code = 500, message = "修改失败")
})
@Log(title = "顾客和礼物关系", businessType = BusinessType.UPDATE) @Log(title = "顾客和礼物关系", businessType = BusinessType.UPDATE)
@PostMapping(value = "/update/{id}") @PostMapping(value = "/update/{id}")
public R update(@PathVariable String id, @RequestBody PlayCustomGiftInfoEntity playCustomGiftInfo) { public R update(@PathVariable String id, @ApiParam(value = "礼物关系信息", required = true) @RequestBody PlayCustomGiftInfoEntity playCustomGiftInfo) {
playCustomGiftInfo.setId(id); playCustomGiftInfo.setId(id);
boolean success = playCustomGiftInfoService.update(playCustomGiftInfo); boolean success = playCustomGiftInfoService.update(playCustomGiftInfo);
if (success) { if (success) {
@@ -69,6 +97,11 @@ public class PlayCustomGiftInfoController {
/** /**
* 删除顾客和礼物关系 * 删除顾客和礼物关系
*/ */
@ApiOperation(value = "删除礼物关系", notes = "根据ID批量删除顾客与礼物关系信息")
@ApiImplicitParam(name = "ids", value = "礼物关系ID数组", required = true, paramType = "path", dataType = "String[]", example = "1,2,3")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = Integer.class)
})
@Log(title = "顾客和礼物关系", businessType = BusinessType.DELETE) @Log(title = "顾客和礼物关系", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}") @DeleteMapping("/{ids}")
public R remove(@PathVariable String[] ids) { public R remove(@PathVariable String[] ids) {

View File

@@ -8,6 +8,13 @@ import com.starry.admin.modules.custom.service.IPlayCustomLeaveMsgService;
import com.starry.common.annotation.Log; import com.starry.common.annotation.Log;
import com.starry.common.enums.BusinessType; import com.starry.common.enums.BusinessType;
import com.starry.common.result.R; import com.starry.common.result.R;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import io.swagger.annotations.ApiResponse;
import io.swagger.annotations.ApiResponses;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
@@ -19,6 +26,7 @@ import javax.annotation.Resource;
* @author admin * @author admin
* @since 2024-05-07 * @since 2024-05-07
*/ */
@Api(tags = "顾客留言管理", description = "顾客留言信息管理相关接口,包括查询、新增、修改和删除等操作")
@RestController @RestController
@RequestMapping("/custom/leave") @RequestMapping("/custom/leave")
public class PlayCustomLeaveMsgController { public class PlayCustomLeaveMsgController {
@@ -28,8 +36,12 @@ public class PlayCustomLeaveMsgController {
/** /**
* 分页查询顾客留言列表 * 分页查询顾客留言列表
*/ */
@ApiOperation(value = "分页查询留言列表", notes = "分页查询顾客留言信息列表")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = PlayCustomLeaveMsgReturnVo.class, responseContainer = "Page")
})
@PostMapping("/listByPage") @PostMapping("/listByPage")
public R list(@Validated @RequestBody PlayCustomLeaveMsgQueryVo vo) { public R list(@ApiParam(value = "查询条件", required = true) @Validated @RequestBody PlayCustomLeaveMsgQueryVo vo) {
IPage<PlayCustomLeaveMsgReturnVo> list = playCustomLeaveMsgService.selectByPage(vo); IPage<PlayCustomLeaveMsgReturnVo> list = playCustomLeaveMsgService.selectByPage(vo);
return R.ok(list); return R.ok(list);
} }
@@ -37,6 +49,11 @@ public class PlayCustomLeaveMsgController {
/** /**
* 获取顾客留言详细信息 * 获取顾客留言详细信息
*/ */
@ApiOperation(value = "获取留言详情", notes = "根据ID获取顾客留言详细信息")
@ApiImplicitParam(name = "id", value = "留言ID", required = true, paramType = "path", dataType = "String", example = "1")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = PlayCustomLeaveMsgEntity.class)
})
@GetMapping(value = "/{id}") @GetMapping(value = "/{id}")
public R getInfo(@PathVariable("id") String id) { public R getInfo(@PathVariable("id") String id) {
return R.ok(playCustomLeaveMsgService.selectPlayCustomLeaveMsgById(id)); return R.ok(playCustomLeaveMsgService.selectPlayCustomLeaveMsgById(id));
@@ -45,10 +62,15 @@ public class PlayCustomLeaveMsgController {
/** /**
* 新增顾客留言 * 新增顾客留言
*/ */
@ApiOperation(value = "新增留言", notes = "创建新的顾客留言信息")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功"),
@ApiResponse(code = 500, message = "添加失败")
})
//@PreAuthorize("@customSs.hasPermission('custom:leave:add')") //@PreAuthorize("@customSs.hasPermission('custom:leave:add')")
@Log(title = "顾客留言", businessType = BusinessType.INSERT) @Log(title = "顾客留言", businessType = BusinessType.INSERT)
@PostMapping("/create") @PostMapping("/create")
public R create(@RequestBody PlayCustomLeaveMsgEntity playCustomLeaveMsg) { public R create(@ApiParam(value = "留言信息", required = true) @RequestBody PlayCustomLeaveMsgEntity playCustomLeaveMsg) {
boolean success = playCustomLeaveMsgService.create(playCustomLeaveMsg); boolean success = playCustomLeaveMsgService.create(playCustomLeaveMsg);
if (success) { if (success) {
return R.ok(); return R.ok();
@@ -59,10 +81,16 @@ public class PlayCustomLeaveMsgController {
/** /**
* 修改顾客留言 * 修改顾客留言
*/ */
@ApiOperation(value = "修改留言", notes = "根据ID修改顾客留言信息")
@ApiImplicitParam(name = "id", value = "留言ID", required = true, paramType = "path", dataType = "String", example = "1")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功"),
@ApiResponse(code = 500, message = "修改失败")
})
//@PreAuthorize("@customSs.hasPermission('custom:leave:update')") //@PreAuthorize("@customSs.hasPermission('custom:leave:update')")
@Log(title = "顾客留言", businessType = BusinessType.UPDATE) @Log(title = "顾客留言", businessType = BusinessType.UPDATE)
@PostMapping(value = "/update/{id}") @PostMapping(value = "/update/{id}")
public R update(@PathVariable String id, @RequestBody PlayCustomLeaveMsgEntity playCustomLeaveMsg) { public R update(@PathVariable String id, @ApiParam(value = "留言信息", required = true) @RequestBody PlayCustomLeaveMsgEntity playCustomLeaveMsg) {
playCustomLeaveMsg.setId(id); playCustomLeaveMsg.setId(id);
boolean success = playCustomLeaveMsgService.update(playCustomLeaveMsg); boolean success = playCustomLeaveMsgService.update(playCustomLeaveMsg);
if (success) { if (success) {
@@ -74,6 +102,11 @@ public class PlayCustomLeaveMsgController {
/** /**
* 删除顾客留言 * 删除顾客留言
*/ */
@ApiOperation(value = "删除留言", notes = "根据ID批量删除顾客留言信息")
@ApiImplicitParam(name = "ids", value = "留言ID数组", required = true, paramType = "path", dataType = "String[]", example = "1,2,3")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = Integer.class)
})
//@PreAuthorize("@customSs.hasPermission('custom:leave:delete')") //@PreAuthorize("@customSs.hasPermission('custom:leave:delete')")
@Log(title = "顾客留言", businessType = BusinessType.DELETE) @Log(title = "顾客留言", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}") @DeleteMapping("/{ids}")

View File

@@ -10,6 +10,12 @@ import com.starry.common.annotation.Log;
import com.starry.common.enums.BusinessType; import com.starry.common.enums.BusinessType;
import com.starry.common.result.R; import com.starry.common.result.R;
import com.starry.common.utils.ConvertUtil; import com.starry.common.utils.ConvertUtil;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import io.swagger.annotations.ApiResponse;
import io.swagger.annotations.ApiResponses;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource; import javax.annotation.Resource;
@@ -23,6 +29,7 @@ import java.util.List;
*/ */
@RestController @RestController
@RequestMapping("/custom/level") @RequestMapping("/custom/level")
@Api(tags = "顾客等级管理", description = "顾客等级信息管理相关接口,包括查询、新增、修改和删除等操作")
public class PlayCustomLevelInfoController { public class PlayCustomLevelInfoController {
@Resource @Resource
private IPlayCustomLevelInfoService playCustomLevelInfoService; private IPlayCustomLevelInfoService playCustomLevelInfoService;
@@ -31,6 +38,10 @@ public class PlayCustomLevelInfoController {
* 查询顾客等级列表 * 查询顾客等级列表
*/ */
@PostMapping("/listAll") @PostMapping("/listAll")
@ApiOperation(value = "查询等级列表", notes = "获取所有顾客等级信息列表")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = PlayCustomLevelReturnVo.class, responseContainer = "List")
})
public R listAll() { public R listAll() {
List<PlayCustomLevelInfoEntity> list = playCustomLevelInfoService.selectPlayCustomLevelInfoByPage(); List<PlayCustomLevelInfoEntity> list = playCustomLevelInfoService.selectPlayCustomLevelInfoByPage();
return R.ok(ConvertUtil.entityToVoList(list, PlayCustomLevelReturnVo.class)); return R.ok(ConvertUtil.entityToVoList(list, PlayCustomLevelReturnVo.class));
@@ -40,6 +51,11 @@ public class PlayCustomLevelInfoController {
* 获取顾客等级详细信息 * 获取顾客等级详细信息
*/ */
@GetMapping(value = "/{id}") @GetMapping(value = "/{id}")
@ApiOperation(value = "获取等级详情", notes = "根据ID获取顾客等级详细信息")
@ApiImplicitParam(name = "id", value = "等级ID", required = true, paramType = "path", dataType = "String", example = "1")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = PlayCustomLevelInfoEntity.class)
})
public R getInfo(@PathVariable("id") String id) { public R getInfo(@PathVariable("id") String id) {
return R.ok(playCustomLevelInfoService.selectPlayCustomLevelInfoById(id)); return R.ok(playCustomLevelInfoService.selectPlayCustomLevelInfoById(id));
} }
@@ -51,7 +67,12 @@ public class PlayCustomLevelInfoController {
//@PreAuthorize("@customSs.hasPermission('custom:level:add')") //@PreAuthorize("@customSs.hasPermission('custom:level:add')")
@Log(title = "店员等级", businessType = BusinessType.INSERT) @Log(title = "店员等级", businessType = BusinessType.INSERT)
@PostMapping("/create") @PostMapping("/create")
public R create(@RequestBody PlayCustomLevelAddVo vo) { @ApiOperation(value = "新增等级", notes = "创建新的顾客等级信息")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功"),
@ApiResponse(code = 500, message = "添加失败")
})
public R create(@ApiParam(value = "等级信息", required = true) @RequestBody PlayCustomLevelAddVo vo) {
PlayCustomLevelInfoEntity entity = ConvertUtil.entityToVo(vo, PlayCustomLevelInfoEntity.class); PlayCustomLevelInfoEntity entity = ConvertUtil.entityToVo(vo, PlayCustomLevelInfoEntity.class);
int level = playCustomLevelInfoService.selectMaxLevel(); int level = playCustomLevelInfoService.selectMaxLevel();
entity.setLevel(level + 1); entity.setLevel(level + 1);
@@ -69,7 +90,13 @@ public class PlayCustomLevelInfoController {
//@PreAuthorize("@customSs.hasPermission('custom:level:update')") //@PreAuthorize("@customSs.hasPermission('custom:level:update')")
@Log(title = "顾客等级", businessType = BusinessType.UPDATE) @Log(title = "顾客等级", businessType = BusinessType.UPDATE)
@PostMapping(value = "/update") @PostMapping(value = "/update")
public R update(@RequestBody PlayCustomLevelEditVo vo) { @ApiOperation(value = "修改等级", notes = "修改顾客等级信息")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功"),
@ApiResponse(code = 500, message = "修改失败"),
@ApiResponse(code = 400, message = "对象不存在")
})
public R update(@ApiParam(value = "等级信息", required = true) @RequestBody PlayCustomLevelEditVo vo) {
if (playCustomLevelInfoService.selectPlayCustomLevelInfoById(vo.getId()) == null) { if (playCustomLevelInfoService.selectPlayCustomLevelInfoById(vo.getId()) == null) {
throw new CustomException("对象不存在"); throw new CustomException("对象不存在");
} }
@@ -86,6 +113,11 @@ public class PlayCustomLevelInfoController {
*/ */
@Log(title = "店员等级", businessType = BusinessType.DELETE) @Log(title = "店员等级", businessType = BusinessType.DELETE)
@DeleteMapping("delMaxLevel") @DeleteMapping("delMaxLevel")
@ApiOperation(value = "删除最高等级", notes = "删除系统中的最高等级")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功"),
@ApiResponse(code = 400, message = "最后一级,不允许删除")
})
public R remove() { public R remove() {
int level = playCustomLevelInfoService.selectMaxLevel(); int level = playCustomLevelInfoService.selectMaxLevel();
if (level <= 1) { if (level <= 1) {

View File

@@ -5,6 +5,11 @@ import com.starry.admin.modules.custom.module.vo.PlayCustomRankingQueryVo;
import com.starry.admin.modules.custom.module.vo.PlayCustomRankingReturnVo; import com.starry.admin.modules.custom.module.vo.PlayCustomRankingReturnVo;
import com.starry.admin.modules.custom.service.IPlayCustomUserInfoService; import com.starry.admin.modules.custom.service.IPlayCustomUserInfoService;
import com.starry.common.result.R; import com.starry.common.result.R;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import io.swagger.annotations.ApiResponse;
import io.swagger.annotations.ApiResponses;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestBody;
@@ -19,6 +24,7 @@ import javax.annotation.Resource;
* @author admin * @author admin
* @since 2024-04-08 * @since 2024-04-08
*/ */
@Api(tags = "顾客排名管理", description = "顾客消费排名相关接口,包括查询排名列表等操作")
@RestController @RestController
@RequestMapping("/custom/ranking") @RequestMapping("/custom/ranking")
public class PlayCustomRankingController { public class PlayCustomRankingController {
@@ -28,8 +34,12 @@ public class PlayCustomRankingController {
/** /**
* 查询顾客排名列表 * 查询顾客排名列表
*/ */
@ApiOperation(value = "分页查询排名列表", notes = "分页查询顾客消费排名信息列表")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = PlayCustomRankingReturnVo.class, responseContainer = "Page")
})
@PostMapping("/listByPage") @PostMapping("/listByPage")
public R list(@Validated @RequestBody PlayCustomRankingQueryVo vo) { public R list(@ApiParam(value = "查询条件", required = true) @Validated @RequestBody PlayCustomRankingQueryVo vo) {
IPage<PlayCustomRankingReturnVo> list = playCustomUserInfoService.selectRankingByPage(vo); IPage<PlayCustomRankingReturnVo> list = playCustomUserInfoService.selectRankingByPage(vo);
return R.ok(list); return R.ok(list);
} }

View File

@@ -10,6 +10,13 @@ import com.starry.common.annotation.Log;
import com.starry.common.enums.BusinessType; import com.starry.common.enums.BusinessType;
import com.starry.common.result.R; import com.starry.common.result.R;
import com.starry.common.utils.ConvertUtil; import com.starry.common.utils.ConvertUtil;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import io.swagger.annotations.ApiResponse;
import io.swagger.annotations.ApiResponses;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
@@ -21,6 +28,7 @@ import javax.annotation.Resource;
* @author admin * @author admin
* @since 2024-04-08 * @since 2024-04-08
*/ */
@Api(tags = "顾客管理", description = "顾客信息管理相关接口,包括查询、新增、修改和删除等操作")
@RestController @RestController
@RequestMapping("/custom/user") @RequestMapping("/custom/user")
public class PlayCustomUserInfoController { public class PlayCustomUserInfoController {
@@ -30,8 +38,12 @@ public class PlayCustomUserInfoController {
/** /**
* 查询顾客列表 * 查询顾客列表
*/ */
@ApiOperation(value = "分页查询顾客列表", notes = "分页查询顾客信息列表")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = PlayCustomUserReturnVo.class, responseContainer = "Page")
})
@PostMapping("/listByPage") @PostMapping("/listByPage")
public R list(@Validated @RequestBody PlayCustomUserQueryVo vo) { public R list(@ApiParam(value = "查询条件", required = true) @Validated @RequestBody PlayCustomUserQueryVo vo) {
IPage<PlayCustomUserReturnVo> list = playCustomUserInfoService.selectByPage(vo); IPage<PlayCustomUserReturnVo> list = playCustomUserInfoService.selectByPage(vo);
return R.ok(list); return R.ok(list);
} }
@@ -39,6 +51,11 @@ public class PlayCustomUserInfoController {
/** /**
* 获取顾客详细信息 * 获取顾客详细信息
*/ */
@ApiOperation(value = "获取顾客详情", notes = "根据ID获取顾客详细信息")
@ApiImplicitParam(name = "id", value = "顾客ID", required = true, paramType = "path", dataType = "String", example = "1")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = PlayCustomUserInfoEntity.class)
})
@GetMapping(value = "/{id}") @GetMapping(value = "/{id}")
public R getInfo(@PathVariable("id") String id) { public R getInfo(@PathVariable("id") String id) {
return R.ok(playCustomUserInfoService.selectById(id)); return R.ok(playCustomUserInfoService.selectById(id));
@@ -47,9 +64,14 @@ public class PlayCustomUserInfoController {
/** /**
* 新增顾客 * 新增顾客
*/ */
@ApiOperation(value = "新增顾客", notes = "创建新的顾客信息")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功"),
@ApiResponse(code = 500, message = "添加失败")
})
@Log(title = "顾客", businessType = BusinessType.INSERT) @Log(title = "顾客", businessType = BusinessType.INSERT)
@PostMapping("/create") @PostMapping("/create")
public R create(@RequestBody PlayCustomUserInfoEntity playCustomUserInfo) { public R create(@ApiParam(value = "顾客信息", required = true) @RequestBody PlayCustomUserInfoEntity playCustomUserInfo) {
boolean success = playCustomUserInfoService.create(playCustomUserInfo); boolean success = playCustomUserInfoService.create(playCustomUserInfo);
if (success) { if (success) {
return R.ok(); return R.ok();
@@ -60,9 +82,14 @@ public class PlayCustomUserInfoController {
/** /**
* 修改顾客状态 * 修改顾客状态
*/ */
@ApiOperation(value = "修改顾客状态", notes = "修改顾客的状态信息,如黑名单状态、关注状态等")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功"),
@ApiResponse(code = 500, message = "修改失败")
})
@Log(title = "顾客", businessType = BusinessType.UPDATE) @Log(title = "顾客", businessType = BusinessType.UPDATE)
@PostMapping(value = "/updateState") @PostMapping(value = "/updateState")
public R updateState(@Validated @RequestBody PlayCustomUserStateEditVo vo) { public R updateState(@ApiParam(value = "顾客状态信息", required = true) @Validated @RequestBody PlayCustomUserStateEditVo vo) {
PlayCustomUserInfoEntity entity = ConvertUtil.entityToVo(vo, PlayCustomUserInfoEntity.class); PlayCustomUserInfoEntity entity = ConvertUtil.entityToVo(vo, PlayCustomUserInfoEntity.class);
boolean success = playCustomUserInfoService.update(entity); boolean success = playCustomUserInfoService.update(entity);
if (success) { if (success) {
@@ -74,9 +101,15 @@ public class PlayCustomUserInfoController {
/** /**
* 修改顾客 * 修改顾客
*/ */
@ApiOperation(value = "修改顾客信息", notes = "根据ID修改顾客基本信息")
@ApiImplicitParam(name = "id", value = "顾客ID", required = true, paramType = "path", dataType = "String", example = "1")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功"),
@ApiResponse(code = 500, message = "修改失败")
})
@Log(title = "顾客", businessType = BusinessType.UPDATE) @Log(title = "顾客", businessType = BusinessType.UPDATE)
@PostMapping(value = "/update/{id}") @PostMapping(value = "/update/{id}")
public R update(@PathVariable String id, @RequestBody PlayCustomUserInfoEntity playCustomUserInfo) { public R update(@PathVariable String id, @ApiParam(value = "顾客信息", required = true) @RequestBody PlayCustomUserInfoEntity playCustomUserInfo) {
playCustomUserInfo.setId(id); playCustomUserInfo.setId(id);
boolean success = playCustomUserInfoService.update(playCustomUserInfo); boolean success = playCustomUserInfoService.update(playCustomUserInfo);
if (success) { if (success) {
@@ -88,6 +121,11 @@ public class PlayCustomUserInfoController {
/** /**
* 删除顾客 * 删除顾客
*/ */
@ApiOperation(value = "删除顾客", notes = "根据ID批量删除顾客信息")
@ApiImplicitParam(name = "ids", value = "顾客ID数组", required = true, paramType = "path", dataType = "String[]", example = "1,2,3")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = Integer.class)
})
@Log(title = "顾客", businessType = BusinessType.DELETE) @Log(title = "顾客", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}") @DeleteMapping("/{ids}")
public R remove(@PathVariable String[] ids) { public R remove(@PathVariable String[] ids) {

View File

@@ -1,6 +1,10 @@
package com.starry.admin.modules.custom.module.vo; package com.starry.admin.modules.custom.module.vo;
import com.starry.common.domain.BasePageEntity; import com.starry.common.domain.BasePageEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
/** /**
* 顾客留言查询对象 * 顾客留言查询对象
@@ -8,5 +12,14 @@ import com.starry.common.domain.BasePageEntity;
* @author admin * @author admin
* @since 2024/5/7 16:29 * @since 2024/5/7 16:29
**/ **/
@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel(value = "顾客留言查询参数", description = "查询顾客留言信息的条件参数")
public class PlayCustomLeaveMsgQueryVo extends BasePageEntity { public class PlayCustomLeaveMsgQueryVo extends BasePageEntity {
@ApiModelProperty(value = "顾客ID", example = "1", notes = "特定顾客的ID")
private String customId;
@ApiModelProperty(value = "留言内容", example = "服务很好", notes = "留言的内容,支持模糊查询")
private String content;
} }

View File

@@ -2,6 +2,8 @@ package com.starry.admin.modules.custom.module.vo;
import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableField;
import com.starry.admin.common.conf.StringTypeHandler; import com.starry.admin.common.conf.StringTypeHandler;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import java.util.Date; import java.util.Date;
@@ -14,47 +16,56 @@ import java.util.List;
* @since 2024/5/7 16:29 * @since 2024/5/7 16:29
**/ **/
@Data @Data
@ApiModel(value = "顾客留言返回数据", description = "顾客留言信息的返回数据")
public class PlayCustomLeaveMsgReturnVo { public class PlayCustomLeaveMsgReturnVo {
/** /**
* UUID * UUID
*/ */
@ApiModelProperty(value = "留言ID", example = "1")
private String id; private String id;
/** /**
* 留言内容 * 留言内容
*/ */
@ApiModelProperty(value = "留言内容", example = "服务很好,希望以后再次合作")
private String content; private String content;
/** /**
* 图片 * 图片
*/ */
@ApiModelProperty(value = "留言图片", example = "[\"https://example.com/image1.jpg\",\"https://example.com/image2.jpg\"]")
@TableField(typeHandler = StringTypeHandler.class) @TableField(typeHandler = StringTypeHandler.class)
private List<String> images; private List<String> images;
/** /**
* 留言时间 * 留言时间
*/ */
@ApiModelProperty(value = "留言时间", example = "2024-01-01 12:00:00")
private Date msgTime; private Date msgTime;
/** /**
* 备注 * 备注
*/ */
@ApiModelProperty(value = "备注", example = "重要留言")
private String remark; private String remark;
/** /**
* 顾客Id * 顾客Id
*/ */
@ApiModelProperty(value = "顾客ID", example = "1")
private String customId; private String customId;
/** /**
* 顾客昵称 * 顾客昵称
*/ */
@ApiModelProperty(value = "顾客头像", example = "https://example.com/avatar.jpg")
private String customAvatar; private String customAvatar;
/** /**
* 头像 * 头像
*/ */
@ApiModelProperty(value = "顾客昵称", example = "张三")
private String customNickname; private String customNickname;
} }

View File

@@ -1,16 +1,20 @@
package com.starry.admin.modules.custom.module.vo; package com.starry.admin.modules.custom.module.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotBlank;
@Data @Data
@ApiModel(value = "顾客等级添加参数", description = "新增顾客等级信息的请求参数")
public class PlayCustomLevelAddVo { public class PlayCustomLevelAddVo {
/** /**
* 等级名称 * 等级名称
*/ */
@NotBlank(message = "等级名称不能为空") @NotBlank(message = "等级名称不能为空")
@ApiModelProperty(value = "等级名称", required = true, example = "钻石会员", notes = "顾客等级的名称")
private String name; private String name;
@@ -18,17 +22,20 @@ public class PlayCustomLevelAddVo {
* 上一级消费金额 * 上一级消费金额
*/ */
@NotBlank(message = "消费金额不能为空") @NotBlank(message = "消费金额不能为空")
@ApiModelProperty(value = "消费金额", required = true, example = "1000", notes = "达到该等级需要的消费金额")
private String consumptionAmount; private String consumptionAmount;
/** /**
* 满减比例 * 满减比例
*/ */
@NotBlank(message = "满减比例不能为空") @NotBlank(message = "满减比例不能为空")
@ApiModelProperty(value = "满减比例", required = true, example = "95", notes = "该等级享受的满减折扣比例如95表示95折")
private Integer discount; private Integer discount;
/** /**
* 头像框地址 * 头像框地址
*/ */
@ApiModelProperty(value = "头像框地址", example = "https://example.com/frame.png", notes = "该等级专属的头像框图片地址")
private String avatarFrameAddress; private String avatarFrameAddress;
} }

View File

@@ -1,22 +1,27 @@
package com.starry.admin.modules.custom.module.vo; package com.starry.admin.modules.custom.module.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotBlank;
@Data @Data
@ApiModel(value = "顾客等级修改参数", description = "修改顾客等级信息的请求参数")
public class PlayCustomLevelEditVo { public class PlayCustomLevelEditVo {
/** /**
* UUID * UUID
*/ */
@NotBlank(message = "ID不能为空") @NotBlank(message = "ID不能为空")
@ApiModelProperty(value = "等级ID", required = true, example = "1", notes = "顾客等级的ID")
private String id; private String id;
/** /**
* 等级名称 * 等级名称
*/ */
@NotBlank(message = "等级名称不能为空") @NotBlank(message = "等级名称不能为空")
@ApiModelProperty(value = "等级名称", required = true, example = "钻石会员", notes = "顾客等级的名称")
private String name; private String name;
@@ -24,17 +29,20 @@ public class PlayCustomLevelEditVo {
* 上一级消费金额 * 上一级消费金额
*/ */
@NotBlank(message = "消费金额不能为空") @NotBlank(message = "消费金额不能为空")
@ApiModelProperty(value = "消费金额", required = true, example = "1000", notes = "达到该等级需要的消费金额")
private String consumptionAmount; private String consumptionAmount;
/** /**
* 满减比例 * 满减比例
*/ */
@NotBlank(message = "满减比例不能为空") @NotBlank(message = "满减比例不能为空")
@ApiModelProperty(value = "满减比例", required = true, example = "95", notes = "该等级享受的满减折扣比例如95表示95折")
private Integer discount; private Integer discount;
/** /**
* 头像框地址 * 头像框地址
*/ */
@ApiModelProperty(value = "头像框地址", example = "https://example.com/frame.png", notes = "该等级专属的头像框图片地址")
private String avatarFrameAddress; private String avatarFrameAddress;
} }

View File

@@ -1,5 +1,7 @@
package com.starry.admin.modules.custom.module.vo; package com.starry.admin.modules.custom.module.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
/** /**
@@ -8,36 +10,43 @@ import lombok.Data;
* @author admin * @author admin
*/ */
@Data @Data
@ApiModel(value = "顾客等级返回数据", description = "顾客等级信息的返回数据")
public class PlayCustomLevelReturnVo { public class PlayCustomLevelReturnVo {
/** /**
* UUID * UUID
*/ */
@ApiModelProperty(value = "等级ID", example = "1")
private String id; private String id;
/** /**
* 等级名称 * 等级名称
*/ */
@ApiModelProperty(value = "等级名称", example = "钻石会员")
private String name; private String name;
/** /**
* 等级数字(排序字段) * 等级数字(排序字段)
*/ */
@ApiModelProperty(value = "等级数值", example = "3", notes = "等级数字,用于排序")
private Integer level; private Integer level;
/** /**
* 上一级消费金额 * 上一级消费金额
*/ */
@ApiModelProperty(value = "消费金额", example = "1000", notes = "达到该等级需要的消费金额")
private String consumptionAmount; private String consumptionAmount;
/** /**
* 满减比例 * 满减比例
*/ */
@ApiModelProperty(value = "满减比例", example = "95", notes = "该等级享受的满减折扣比例如95表示95折")
private Integer discount; private Integer discount;
/** /**
* 头像框地址 * 头像框地址
*/ */
@ApiModelProperty(value = "头像框地址", example = "https://example.com/frame.png")
private String avatarFrameAddress; private String avatarFrameAddress;

View File

@@ -1,6 +1,8 @@
package com.starry.admin.modules.custom.module.vo; package com.starry.admin.modules.custom.module.vo;
import com.starry.common.domain.BasePageEntity; import com.starry.common.domain.BasePageEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import lombok.EqualsAndHashCode; import lombok.EqualsAndHashCode;
@@ -14,14 +16,17 @@ import java.util.List;
**/ **/
@EqualsAndHashCode(callSuper = true) @EqualsAndHashCode(callSuper = true)
@Data @Data
@ApiModel(value = "顾客排名查询参数", description = "查询顾客消费排名信息的条件参数")
public class PlayCustomRankingQueryVo extends BasePageEntity { public class PlayCustomRankingQueryVo extends BasePageEntity {
/** /**
* userId * userId
*/ */
@ApiModelProperty(value = "顾客ID", example = "1", notes = "特定顾客的ID")
private String id; private String id;
/** /**
* 下单时间 * 下单时间
*/ */
@ApiModelProperty(value = "下单时间范围", example = "['2024-01-01 00:00:00','2024-12-31 23:59:59']", notes = "下单时间范围,包含开始和结束时间")
private List<String> purchaserTime; private List<String> purchaserTime;
} }

View File

@@ -2,6 +2,8 @@ package com.starry.admin.modules.custom.module.vo;
import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonIgnore;
import com.starry.admin.modules.order.module.entity.PlayOrderInfoEntity; import com.starry.admin.modules.order.module.entity.PlayOrderInfoEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import java.math.BigDecimal; import java.math.BigDecimal;
@@ -15,67 +17,80 @@ import java.util.List;
* @since 2024/5/14 下午7:47 * @since 2024/5/14 下午7:47
**/ **/
@Data @Data
@ApiModel(value = "顾客排名返回数据", description = "顾客消费排名信息的返回数据")
public class PlayCustomRankingReturnVo { public class PlayCustomRankingReturnVo {
/** /**
* UUID * UUID
*/ */
@ApiModelProperty(value = "顾客ID", example = "1")
private String id; private String id;
/** /**
* 顾客昵称 * 顾客昵称
*/ */
@ApiModelProperty(value = "顾客昵称", example = "张三")
private String nickname; private String nickname;
/** /**
* 头像 * 头像
*/ */
@ApiModelProperty(value = "头像", example = "https://example.com/avatar.jpg")
private String avatar; private String avatar;
/** /**
* 排名 * 排名
*/ */
@ApiModelProperty(value = "排名", example = "1", notes = "顾客消费排名索引")
private Integer rankingIndex; private Integer rankingIndex;
/** /**
* 订单列表 * 订单列表
*/ */
@JsonIgnore @JsonIgnore
@ApiModelProperty(value = "订单列表", hidden = true)
private List<PlayOrderInfoEntity> orderInfos; private List<PlayOrderInfoEntity> orderInfos;
/** /**
* 下单时间-起始时间 * 下单时间-起始时间
*/ */
@ApiModelProperty(value = "下单起始时间", example = "2024-01-01 00:00:00")
private String beginPurchaserTime; private String beginPurchaserTime;
/** /**
* 下单时间-终止时间 * 下单时间-终止时间
*/ */
@ApiModelProperty(value = "下单终止时间", example = "2024-12-31 23:59:59")
private String endPurchaserTime; private String endPurchaserTime;
/** /**
* 订单总数 * 订单总数
*/ */
@ApiModelProperty(value = "订单总数", example = "10")
private String orderNumber; private String orderNumber;
/** /**
* 续单总数 * 续单总数
*/ */
@ApiModelProperty(value = "续单总数", example = "5", notes = "顾客续费订单的总数量")
private String orderContinueNumber; private String orderContinueNumber;
/** /**
* 订单单价 * 订单单价
*/ */
@ApiModelProperty(value = "订单单价", example = "100.00")
private String orderPrice; private String orderPrice;
/** /**
* 订单总金额 * 订单总金额
*/ */
@ApiModelProperty(value = "订单总金额", example = "1000.00")
private BigDecimal orderTotalAmount; private BigDecimal orderTotalAmount;
/** /**
* 统计时间 * 统计时间
*/ */
@ApiModelProperty(value = "统计时间", example = "2024-01-01")
private String statisticalTime = LocalDate.now().toString(); private String statisticalTime = LocalDate.now().toString();
} }

View File

@@ -1,6 +1,8 @@
package com.starry.admin.modules.custom.module.vo; package com.starry.admin.modules.custom.module.vo;
import com.starry.common.domain.BasePageEntity; import com.starry.common.domain.BasePageEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import lombok.EqualsAndHashCode; import lombok.EqualsAndHashCode;
@@ -14,99 +16,118 @@ import java.util.List;
**/ **/
@EqualsAndHashCode(callSuper = true) @EqualsAndHashCode(callSuper = true)
@Data @Data
@ApiModel(value = "顾客查询参数", description = "查询顾客信息的条件参数")
public class PlayCustomUserQueryVo extends BasePageEntity { public class PlayCustomUserQueryVo extends BasePageEntity {
@ApiModelProperty(value = "顾客ID", example = "1", notes = "特定顾客的ID")
private String id; private String id;
/** /**
* 用户的标识,对当前公众号唯一 * 用户的标识,对当前公众号唯一
*/ */
@ApiModelProperty(value = "OpenID", example = "o6_bmjrPTlm6_2sgVt7hMZOPfL2M", notes = "微信用户的唯一标识")
private String openid; private String openid;
/** /**
* 顾客昵称 * 顾客昵称
*/ */
@ApiModelProperty(value = "昵称", example = "张三", notes = "顾客的昵称,支持模糊查询")
private String nickname; private String nickname;
/** /**
* 顾客性别0:未知;1:男,2:女) * 顾客性别0:未知;1:男,2:女)
*/ */
@ApiModelProperty(value = "性别", example = "1", notes = "0:未知;1:男;2:女")
private String sex; private String sex;
/** /**
* 微信号 * 微信号
*/ */
@ApiModelProperty(value = "微信号", example = "zhangsan123", notes = "顾客的微信号")
private String weiChatCode; private String weiChatCode;
/** /**
* 绑定手机状态[0:未绑定,1:绑定] * 绑定手机状态[0:未绑定,1:绑定]
*/ */
@ApiModelProperty(value = "绑定手机状态", example = "1", notes = "0:未绑定,1:绑定")
private String mobilePhoneState; private String mobilePhoneState;
/** /**
* 手机号码 * 手机号码
*/ */
@ApiModelProperty(value = "手机号码", example = "13800138000", notes = "顾客的手机号码")
private String phone; private String phone;
/** /**
* 等级ID * 等级ID
*/ */
@ApiModelProperty(value = "等级ID", example = "1", notes = "顾客等级的ID")
private String levelId; private String levelId;
/** /**
* 余额状态[0:不存在余额1:存在余额] * 余额状态[0:不存在余额1:存在余额]
*/ */
@ApiModelProperty(value = "余额状态", example = "1", notes = "0:不存在余额1:存在余额")
private String accountState; private String accountState;
/** /**
* 关注状态[0:未关注1:已关注] * 关注状态[0:未关注1:已关注]
*/ */
@ApiModelProperty(value = "关注状态", example = "1", notes = "0:未关注1:已关注")
private String subscribeState; private String subscribeState;
/** /**
* 违规状态[0:未违规,1:违规] * 违规状态[0:未违规,1:违规]
*/ */
@ApiModelProperty(value = "违规状态", example = "0", notes = "0:未违规,1:违规")
private String violationState; private String violationState;
/** /**
* 是否下单状态[0:未下单过1:下单过] * 是否下单状态[0:未下单过1:下单过]
*/ */
@ApiModelProperty(value = "下单状态", example = "1", notes = "0:未下单过1:下单过")
private String purchaseState; private String purchaseState;
/** /**
* 黑名单状态[0:非黑名单1:黑名单] * 黑名单状态[0:非黑名单1:黑名单]
*/ */
@ApiModelProperty(value = "黑名单状态", example = "0", notes = "0:非黑名单1:黑名单")
private String blacklistState; private String blacklistState;
/** /**
* 注册时间 * 注册时间
*/ */
@ApiModelProperty(value = "注册时间范围", example = "['2024-01-01 00:00:00','2024-12-31 23:59:59']", notes = "注册时间范围,包含开始和结束时间")
private List<String> registrationTime; private List<String> registrationTime;
/** /**
* 首次下单时间 * 首次下单时间
*/ */
@ApiModelProperty(value = "首次下单时间范围", example = "['2024-01-01 00:00:00','2024-12-31 23:59:59']", notes = "首次下单时间范围,包含开始和结束时间")
private List<String> firstPurchaseTime; private List<String> firstPurchaseTime;
/** /**
* 最后一次下单时间 * 最后一次下单时间
*/ */
@ApiModelProperty(value = "最后下单时间范围", example = "['2024-01-01 00:00:00','2024-12-31 23:59:59']", notes = "最后一次下单时间范围,包含开始和结束时间")
private List<String> lastPurchaseTime; private List<String> lastPurchaseTime;
/** /**
* 备注 * 备注
*/ */
@ApiModelProperty(value = "备注", example = "重要客户", notes = "顾客相关备注信息")
private String remark; private String remark;
/** /**
* 排序字段 * 排序字段
*/ */
@ApiModelProperty(value = "排序字段", example = "registrationTime", notes = "排序的字段名称")
private String sort; private String sort;

View File

@@ -1,6 +1,8 @@
package com.starry.admin.modules.custom.module.vo; package com.starry.admin.modules.custom.module.vo;
import com.starry.admin.modules.order.module.entity.PlayOrderInfoEntity; import com.starry.admin.modules.order.module.entity.PlayOrderInfoEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import java.math.BigDecimal; import java.math.BigDecimal;
@@ -14,161 +16,190 @@ import java.util.List;
* @since 2024/5/14 下午7:47 * @since 2024/5/14 下午7:47
**/ **/
@Data @Data
@ApiModel(value = "顾客返回数据", description = "顾客信息的返回数据")
public class PlayCustomUserReturnVo { public class PlayCustomUserReturnVo {
/** /**
* UUID * UUID
*/ */
@ApiModelProperty(value = "顾客ID", example = "1")
private String id; private String id;
/** /**
* 租户ID * 租户ID
*/ */
@ApiModelProperty(value = "租户ID", example = "tenant123", notes = "系统租户标识")
private String tenantId; private String tenantId;
/** /**
* 用户的标识,对当前公众号唯一 * 用户的标识,对当前公众号唯一
*/ */
@ApiModelProperty(value = "OpenID", example = "o6_bmjrPTlm6_2sgVt7hMZOPfL2M", notes = "微信用户的唯一标识")
private String openid; private String openid;
/** /**
* 顾客昵称 * 顾客昵称
*/ */
@ApiModelProperty(value = "昵称", example = "张三")
private String nickname; private String nickname;
/** /**
* 顾客性别0:未知;1:男,2:女) * 顾客性别0:未知;1:男,2:女)
*/ */
@ApiModelProperty(value = "性别", example = "1", notes = "0:未知;1:男;2:女")
private Integer sex; private Integer sex;
/** /**
* 头像 * 头像
*/ */
@ApiModelProperty(value = "头像", example = "https://example.com/avatar.jpg")
private String avatar; private String avatar;
/** /**
* 手机号码 * 手机号码
*/ */
@ApiModelProperty(value = "手机号码", example = "13800138000")
private String phone; private String phone;
/** /**
* 微信号码 * 微信号码
*/ */
@ApiModelProperty(value = "微信号", example = "zhangsan123")
private String weiChatCode; private String weiChatCode;
/** /**
* 所在国家 * 所在国家
*/ */
@ApiModelProperty(value = "国家", example = "中国")
private String country; private String country;
/** /**
* 所在省份 * 所在省份
*/ */
@ApiModelProperty(value = "省份", example = "广东省")
private String province; private String province;
/** /**
* 所在城市 * 所在城市
*/ */
@ApiModelProperty(value = "城市", example = "深圳市")
private String city; private String city;
/** /**
* 账户余额 * 账户余额
*/ */
@ApiModelProperty(value = "账户余额", example = "1000.50")
private BigDecimal accountBalance; private BigDecimal accountBalance;
/** /**
* 余额状态[0:不存在余额1:存在余额] * 余额状态[0:不存在余额1:存在余额]
*/ */
@ApiModelProperty(value = "余额状态", example = "1", notes = "0:不存在余额1:存在余额")
private String accountState; private String accountState;
/** /**
* 关注状态[0:未关注1:已关注] * 关注状态[0:未关注1:已关注]
*/ */
@ApiModelProperty(value = "关注状态", example = "1", notes = "0:未关注1:已关注")
private String subscribeState; private String subscribeState;
/** /**
* 黑名单状态[0:非黑名单1:黑名单] * 黑名单状态[0:非黑名单1:黑名单]
*/ */
@ApiModelProperty(value = "黑名单状态", example = "0", notes = "0:非黑名单1:黑名单")
private String blacklistState; private String blacklistState;
/** /**
* 违规状态[0:未违规,1:违规] * 违规状态[0:未违规,1:违规]
*/ */
@ApiModelProperty(value = "违规状态", example = "0", notes = "0:未违规,1:违规")
private String violationState; private String violationState;
/** /**
* 是否下单状态[0:未下单过1:下单过] * 是否下单状态[0:未下单过1:下单过]
*/ */
@ApiModelProperty(value = "下单状态", example = "1", notes = "0:未下单过1:下单过")
private String purchaseState; private String purchaseState;
/** /**
* 绑定手机状态[0:未绑定,1:绑定] * 绑定手机状态[0:未绑定,1:绑定]
*/ */
@ApiModelProperty(value = "绑定手机状态", example = "1", notes = "0:未绑定,1:绑定")
private String mobilePhoneState; private String mobilePhoneState;
/** /**
* 实名状态【1已实名0未实名】 * 实名状态【1已实名0未实名】
*/ */
@ApiModelProperty(value = "实名状态", example = "1", notes = "1已实名0未实名")
private String realState; private String realState;
/** /**
* 是否必须实名【2:跟随店铺设置1必须实名0非必须实名】 * 是否必须实名【2:跟随店铺设置1必须实名0非必须实名】
*/ */
@ApiModelProperty(value = "必须实名状态", example = "1", notes = "2:跟随店铺设置1必须实名0非必须实名")
private String mandatoryRealState; private String mandatoryRealState;
/** /**
* 注册时间 * 注册时间
*/ */
@ApiModelProperty(value = "注册时间", example = "2024-01-01 12:00:00")
private Date registrationTime; private Date registrationTime;
/** /**
* 上次登录时间 * 上次登录时间
*/ */
@ApiModelProperty(value = "上次登录时间", example = "2024-01-15 12:00:00")
private Date lastLoginTime; private Date lastLoginTime;
/** /**
* 首次下单时间 * 首次下单时间
*/ */
@ApiModelProperty(value = "首次下单时间", example = "2024-01-05 12:00:00")
private Date firstPurchaseTime; private Date firstPurchaseTime;
/** /**
* 最后一次下单时间 * 最后一次下单时间
*/ */
@ApiModelProperty(value = "最后下单时间", example = "2024-01-20 12:00:00")
private Date lastPurchaseTime; private Date lastPurchaseTime;
/** /**
* 备注 * 备注
*/ */
@ApiModelProperty(value = "备注", example = "重要客户")
private String remark; private String remark;
/** /**
* 等级ID * 等级ID
*/ */
@ApiModelProperty(value = "等级ID", example = "1")
private String levelId; private String levelId;
/** /**
* 等级名称 * 等级名称
*/ */
@ApiModelProperty(value = "等级名称", example = "钻石会员")
private String levelName; private String levelName;
/** /**
* 订单列表 * 订单列表
*/ */
@ApiModelProperty(value = "订单列表", notes = "顾客的订单列表")
private List<PlayOrderInfoEntity> orderInfos; private List<PlayOrderInfoEntity> orderInfos;
/** /**
* 订单总数 * 订单总数
*/ */
@ApiModelProperty(value = "订单总数", example = "10")
private String orderNumber; private String orderNumber;
/** /**
* 订单单价 * 订单单价
*/ */
@ApiModelProperty(value = "订单单价", example = "100.00")
private String orderPrice; private String orderPrice;
/** /**
* 订单总金额 * 订单总金额
*/ */
@ApiModelProperty(value = "订单总金额", example = "1000.00")
private BigDecimal orderTotalAmount; private BigDecimal orderTotalAmount;
} }

View File

@@ -1,5 +1,7 @@
package com.starry.admin.modules.custom.module.vo; package com.starry.admin.modules.custom.module.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotBlank;
@@ -9,55 +11,66 @@ import javax.validation.constraints.NotBlank;
* @author admin * @author admin
*/ */
@Data @Data
@ApiModel(value = "顾客状态修改参数", description = "修改顾客状态信息的请求参数")
public class PlayCustomUserStateEditVo { public class PlayCustomUserStateEditVo {
/** /**
* id * id
*/ */
@NotBlank(message = "id不能为空") @NotBlank(message = "id不能为空")
@ApiModelProperty(value = "顾客ID", required = true, example = "1", notes = "顾客的ID")
private String id; private String id;
/** /**
* 余额状态[0:不存在余额1:存在余额] * 余额状态[0:不存在余额1:存在余额]
*/ */
@ApiModelProperty(value = "余额状态", example = "1", notes = "0:不存在余额1:存在余额")
private String accountState; private String accountState;
/** /**
* 关注状态[0:未关注1:已关注] * 关注状态[0:未关注1:已关注]
*/ */
@ApiModelProperty(value = "关注状态", example = "1", notes = "0:未关注1:已关注")
private String subscribeState; private String subscribeState;
/** /**
* 黑名单状态[0:非黑名单1:黑名单] * 黑名单状态[0:非黑名单1:黑名单]
*/ */
@ApiModelProperty(value = "黑名单状态", example = "0", notes = "0:非黑名单1:黑名单")
private String blacklistState; private String blacklistState;
/** /**
* 违规状态[0:未违规,1:违规] * 违规状态[0:未违规,1:违规]
*/ */
@ApiModelProperty(value = "违规状态", example = "0", notes = "0:未违规,1:违规")
private String violationState; private String violationState;
/** /**
* 是否下单状态[0:未未下单1:下单过] * 是否下单状态[0:未未下单1:下单过]
*/ */
@ApiModelProperty(value = "下单状态", example = "1", notes = "0:未下单过1:下单过")
private String purchaseState; private String purchaseState;
/** /**
* 绑定手机状态[0:未绑定,1:绑定] * 绑定手机状态[0:未绑定,1:绑定]
*/ */
@ApiModelProperty(value = "绑定手机状态", example = "1", notes = "0:未绑定,1:绑定")
private String mobilePhoneState; private String mobilePhoneState;
/** /**
* 实名状态【1已实名0未实名】 * 实名状态【1已实名0未实名】
*/ */
@ApiModelProperty(value = "实名状态", example = "1", notes = "1已实名0未实名")
private String realState; private String realState;
/** /**
* 是否必须实名【0:非必须实名;1:必须实名;2:跟随店铺设置】 * 是否必须实名【0:非必须实名;1:必须实名;2:跟随店铺设置】
*/ */
@ApiModelProperty(value = "必须实名状态", example = "1", notes = "2:跟随店铺设置1必须实名0非必须实名")
private String mandatoryRealState; private String mandatoryRealState;
@ApiModelProperty(value = "备注", example = "重要客户", notes = "顾客相关备注信息")
private String remark; private String remark;

View File

@@ -8,6 +8,12 @@ import com.starry.admin.modules.order.service.IPlayOrderComplaintInfoService;
import com.starry.common.annotation.Log; import com.starry.common.annotation.Log;
import com.starry.common.enums.BusinessType; import com.starry.common.enums.BusinessType;
import com.starry.common.result.R; import com.starry.common.result.R;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import io.swagger.annotations.ApiResponse;
import io.swagger.annotations.ApiResponses;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
@@ -19,6 +25,7 @@ import javax.annotation.Resource;
* @author admin * @author admin
* @since 2024-05-07 * @since 2024-05-07
*/ */
@Api(tags = "订单投诉管理", description = "订单投诉信息管理相关接口,包括查询、新增、修改和删除等操作")
@RestController @RestController
@RequestMapping("/order/complaint") @RequestMapping("/order/complaint")
public class PlayOrderComplaintInfoController { public class PlayOrderComplaintInfoController {
@@ -28,8 +35,12 @@ public class PlayOrderComplaintInfoController {
/** /**
* 查询订单投诉信息列表 * 查询订单投诉信息列表
*/ */
@ApiOperation(value = "分页查询投诉列表", notes = "分页查询订单投诉信息列表")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = PlayOrderComplaintReturnVo.class, responseContainer = "Page")
})
@PostMapping("/listByPage") @PostMapping("/listByPage")
public R list(@Validated @RequestBody PlayOrderComplaintQueryVo vo) { public R list(@ApiParam(value = "查询条件", required = true) @Validated @RequestBody PlayOrderComplaintQueryVo vo) {
IPage<PlayOrderComplaintReturnVo> list = playOrderComplaintInfoService.selectByPage(vo); IPage<PlayOrderComplaintReturnVo> list = playOrderComplaintInfoService.selectByPage(vo);
return R.ok(list); return R.ok(list);
} }
@@ -37,6 +48,11 @@ public class PlayOrderComplaintInfoController {
/** /**
* 获取订单投诉信息详细信息 * 获取订单投诉信息详细信息
*/ */
@ApiOperation(value = "获取投诉详情", notes = "根据ID获取订单投诉详细信息")
@ApiImplicitParam(name = "id", value = "投诉记录ID", required = true, paramType = "path", dataType = "String", example = "1")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = PlayOrderComplaintInfoEntity.class)
})
@GetMapping(value = "/{id}") @GetMapping(value = "/{id}")
public R getInfo(@PathVariable("id") String id) { public R getInfo(@PathVariable("id") String id) {
return R.ok(playOrderComplaintInfoService.selectPlayOrderComplaintInfoById(id)); return R.ok(playOrderComplaintInfoService.selectPlayOrderComplaintInfoById(id));
@@ -45,10 +61,15 @@ public class PlayOrderComplaintInfoController {
/** /**
* 新增订单投诉信息 * 新增订单投诉信息
*/ */
@ApiOperation(value = "新增投诉记录", notes = "创建新的订单投诉信息")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功"),
@ApiResponse(code = 500, message = "添加失败")
})
//@PreAuthorize("@customSs.hasPermission('order:complaint:add')") //@PreAuthorize("@customSs.hasPermission('order:complaint:add')")
@Log(title = "订单投诉信息", businessType = BusinessType.INSERT) @Log(title = "订单投诉信息", businessType = BusinessType.INSERT)
@PostMapping("/create") @PostMapping("/create")
public R create(@RequestBody PlayOrderComplaintInfoEntity playOrderComplaintInfo) { public R create(@ApiParam(value = "投诉信息", required = true) @RequestBody PlayOrderComplaintInfoEntity playOrderComplaintInfo) {
boolean success = playOrderComplaintInfoService.create(playOrderComplaintInfo); boolean success = playOrderComplaintInfoService.create(playOrderComplaintInfo);
if (success) { if (success) {
return R.ok(); return R.ok();
@@ -59,10 +80,16 @@ public class PlayOrderComplaintInfoController {
/** /**
* 修改订单投诉信息 * 修改订单投诉信息
*/ */
@ApiOperation(value = "修改投诉记录", notes = "根据ID修改订单投诉信息")
@ApiImplicitParam(name = "id", value = "投诉记录ID", required = true, paramType = "path", dataType = "String", example = "1")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功"),
@ApiResponse(code = 500, message = "修改失败")
})
//@PreAuthorize("@customSs.hasPermission('order:complaint:update')") //@PreAuthorize("@customSs.hasPermission('order:complaint:update')")
@Log(title = "订单投诉信息", businessType = BusinessType.UPDATE) @Log(title = "订单投诉信息", businessType = BusinessType.UPDATE)
@PostMapping(value = "/update/{id}") @PostMapping(value = "/update/{id}")
public R update(@PathVariable String id, @RequestBody PlayOrderComplaintInfoEntity playOrderComplaintInfo) { public R update(@PathVariable String id, @ApiParam(value = "投诉信息", required = true) @RequestBody PlayOrderComplaintInfoEntity playOrderComplaintInfo) {
playOrderComplaintInfo.setId(id); playOrderComplaintInfo.setId(id);
boolean success = playOrderComplaintInfoService.update(playOrderComplaintInfo); boolean success = playOrderComplaintInfoService.update(playOrderComplaintInfo);
if (success) { if (success) {
@@ -74,6 +101,11 @@ public class PlayOrderComplaintInfoController {
/** /**
* 删除订单投诉信息 * 删除订单投诉信息
*/ */
@ApiOperation(value = "删除投诉记录", notes = "根据ID批量删除订单投诉信息")
@ApiImplicitParam(name = "ids", value = "投诉记录ID数组", required = true, paramType = "path", dataType = "String[]", example = "1,2,3")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = Integer.class)
})
//@PreAuthorize("@customSs.hasPermission('order:complaint:delete')") //@PreAuthorize("@customSs.hasPermission('order:complaint:delete')")
@Log(title = "订单投诉信息", businessType = BusinessType.DELETE) @Log(title = "订单投诉信息", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}") @DeleteMapping("/{ids}")

View File

@@ -6,6 +6,11 @@ import com.starry.admin.modules.order.module.vo.PlayOrderContinueReturnVo;
import com.starry.admin.modules.order.module.vo.PlayOrderReviewStateEditVo; import com.starry.admin.modules.order.module.vo.PlayOrderReviewStateEditVo;
import com.starry.admin.modules.order.service.IPlayOrderContinueInfoService; import com.starry.admin.modules.order.service.IPlayOrderContinueInfoService;
import com.starry.common.result.R; import com.starry.common.result.R;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import io.swagger.annotations.ApiResponse;
import io.swagger.annotations.ApiResponses;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestBody;
@@ -20,6 +25,7 @@ import javax.annotation.Resource;
* @author admin * @author admin
* @since 2024-05-10 * @since 2024-05-10
*/ */
@Api(tags = "订单续单管理", description = "订单续单信息管理相关接口,包括查询和审核等操作")
@RestController @RestController
@RequestMapping("/order/continue") @RequestMapping("/order/continue")
public class PlayOrderContinueInfoController { public class PlayOrderContinueInfoController {
@@ -29,8 +35,12 @@ public class PlayOrderContinueInfoController {
/** /**
* 查询订单续单信息列表 * 查询订单续单信息列表
*/ */
@ApiOperation(value = "分页查询续单列表", notes = "分页查询订单续单信息列表")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = PlayOrderContinueReturnVo.class, responseContainer = "Page")
})
@PostMapping("/listByPage") @PostMapping("/listByPage")
public R list(@Validated @RequestBody PlayOrderContinueQueryVo vo) { public R list(@ApiParam(value = "查询条件", required = true) @Validated @RequestBody PlayOrderContinueQueryVo vo) {
IPage<PlayOrderContinueReturnVo> list = playOrderContinueInfoService.selectPlayByPage(vo); IPage<PlayOrderContinueReturnVo> list = playOrderContinueInfoService.selectPlayByPage(vo);
return R.ok(list); return R.ok(list);
} }
@@ -38,9 +48,14 @@ public class PlayOrderContinueInfoController {
/** /**
* 审批续单申申请 * 审批续单申申请
*/ */
@ApiOperation(value = "审批续单申请", notes = "审核店员的续单申请")
@ApiResponses({
@ApiResponse(code = 200, message = "审批成功"),
@ApiResponse(code = 500, message = "审批失败")
})
//@PreAuthorize("@customSs.hasPermission('order:continue:update')") //@PreAuthorize("@customSs.hasPermission('order:continue:update')")
@PostMapping("/updateReviewState") @PostMapping("/updateReviewState")
public R updateReviewState(@Validated @RequestBody PlayOrderReviewStateEditVo vo) { public R updateReviewState(@ApiParam(value = "审批信息", required = true) @Validated @RequestBody PlayOrderReviewStateEditVo vo) {
playOrderContinueInfoService.updateReviewState(vo); playOrderContinueInfoService.updateReviewState(vo);
return R.ok("成功"); return R.ok("成功");
} }

View File

@@ -10,6 +10,12 @@ import com.starry.common.annotation.Log;
import com.starry.common.enums.BusinessType; import com.starry.common.enums.BusinessType;
import com.starry.common.result.R; import com.starry.common.result.R;
import com.starry.common.utils.ConvertUtil; import com.starry.common.utils.ConvertUtil;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import io.swagger.annotations.ApiResponse;
import io.swagger.annotations.ApiResponses;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
@@ -21,6 +27,7 @@ import javax.annotation.Resource;
* @author admin * @author admin
* @since 2024-05-07 * @since 2024-05-07
*/ */
@Api(tags = "订单评价管理", description = "订单评价信息管理相关接口,包括查询、修改和删除等操作")
@RestController @RestController
@RequestMapping("/order/evaluate") @RequestMapping("/order/evaluate")
public class PlayOrderEvaluateInfoController { public class PlayOrderEvaluateInfoController {
@@ -30,8 +37,12 @@ public class PlayOrderEvaluateInfoController {
/** /**
* 查询订单评价信息列表 * 查询订单评价信息列表
*/ */
@ApiOperation(value = "分页查询评价列表", notes = "分页查询订单评价信息列表")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = PlayOrderEvaluateReturnVo.class, responseContainer = "Page")
})
@PostMapping("/listByPage") @PostMapping("/listByPage")
public R list(@Validated @RequestBody PlayOrderEvaluateQueryVo vo) { public R list(@ApiParam(value = "查询条件", required = true) @Validated @RequestBody PlayOrderEvaluateQueryVo vo) {
IPage<PlayOrderEvaluateReturnVo> list = playOrderEvaluateInfoService.selectByPage(vo); IPage<PlayOrderEvaluateReturnVo> list = playOrderEvaluateInfoService.selectByPage(vo);
return R.ok(list); return R.ok(list);
} }
@@ -41,10 +52,15 @@ public class PlayOrderEvaluateInfoController {
/** /**
* 修改订单评价信息 * 修改订单评价信息
*/ */
@ApiOperation(value = "修改评价状态", notes = "修改订单评价的显示状态")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功"),
@ApiResponse(code = 500, message = "修改失败")
})
//@PreAuthorize("@customSs.hasPermission('order:evaluate:update')") //@PreAuthorize("@customSs.hasPermission('order:evaluate:update')")
@Log(title = "修改订单评价状态", businessType = BusinessType.UPDATE) @Log(title = "修改订单评价状态", businessType = BusinessType.UPDATE)
@PostMapping(value = "/updateStatus") @PostMapping(value = "/updateStatus")
public R update(@Validated @RequestBody PlayOrderEvaluateEditStateVo vo) { public R update(@ApiParam(value = "评价状态信息", required = true) @Validated @RequestBody PlayOrderEvaluateEditStateVo vo) {
PlayOrderEvaluateInfoEntity entity = ConvertUtil.entityToVo(vo, PlayOrderEvaluateInfoEntity.class); PlayOrderEvaluateInfoEntity entity = ConvertUtil.entityToVo(vo, PlayOrderEvaluateInfoEntity.class);
boolean success = playOrderEvaluateInfoService.update(entity); boolean success = playOrderEvaluateInfoService.update(entity);
if (success) { if (success) {
@@ -56,6 +72,11 @@ public class PlayOrderEvaluateInfoController {
/** /**
* 删除订单评价信息 * 删除订单评价信息
*/ */
@ApiOperation(value = "删除评价记录", notes = "根据ID批量删除订单评价信息")
@ApiImplicitParam(name = "ids", value = "评价记录ID数组", required = true, paramType = "path", dataType = "String[]", example = "1,2,3")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = Integer.class)
})
//@PreAuthorize("@customSs.hasPermission('order:evaluate:delete')") //@PreAuthorize("@customSs.hasPermission('order:evaluate:delete')")
@Log(title = "订单评价信息", businessType = BusinessType.DELETE) @Log(title = "订单评价信息", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}") @DeleteMapping("/{ids}")

View File

@@ -17,6 +17,12 @@ import com.starry.common.annotation.Log;
import com.starry.common.context.CustomSecurityContextHolder; import com.starry.common.context.CustomSecurityContextHolder;
import com.starry.common.enums.BusinessType; import com.starry.common.enums.BusinessType;
import com.starry.common.result.R; import com.starry.common.result.R;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import io.swagger.annotations.ApiResponse;
import io.swagger.annotations.ApiResponses;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
@@ -30,6 +36,7 @@ import java.math.BigDecimal;
* @author admin * @author admin
* @since 2024-03-20 * @since 2024-03-20
*/ */
@Api(tags = "订单管理", description = "订单信息管理相关接口,包括查询、修改、退款和删除等操作")
@RestController @RestController
@RequestMapping("/order/order/") @RequestMapping("/order/order/")
public class PlayOrderInfoController { public class PlayOrderInfoController {
@@ -54,8 +61,12 @@ public class PlayOrderInfoController {
/** /**
* 分页查询订单列表 * 分页查询订单列表
*/ */
@ApiOperation(value = "分页查询订单列表", notes = "分页查询订单信息列表")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = PlayOrderInfoEntity.class, responseContainer = "Page")
})
@PostMapping("/listByPage") @PostMapping("/listByPage")
public R listByPage(@Validated @RequestBody PlayOrderInfoQueryVo vo) { public R listByPage(@ApiParam(value = "查询条件", required = true) @Validated @RequestBody PlayOrderInfoQueryVo vo) {
return R.ok(orderInfoService.selectOrderInfoPage(vo)); return R.ok(orderInfoService.selectOrderInfoPage(vo));
} }
@@ -63,9 +74,14 @@ public class PlayOrderInfoController {
/** /**
* 订单退款 * 订单退款
*/ */
@ApiOperation(value = "订单退款", notes = "处理订单退款操作")
@ApiResponses({
@ApiResponse(code = 200, message = "退款成功"),
@ApiResponse(code = 500, message = "退款失败,包含详细错误信息")
})
//@PreAuthorize("@customSs.hasPermission('order:order:update')") //@PreAuthorize("@customSs.hasPermission('order:order:update')")
@PostMapping("/orderRefund") @PostMapping("/orderRefund")
public R orderRefund(@Validated @RequestBody PlayOrderRefundAddVo vo) { public R orderRefund(@ApiParam(value = "退款信息", required = true) @Validated @RequestBody PlayOrderRefundAddVo vo) {
PlayOrderInfoEntity orderInfo = orderInfoService.selectOrderInfoById(vo.getOrderId()); PlayOrderInfoEntity orderInfo = orderInfoService.selectOrderInfoById(vo.getOrderId());
if (orderInfo.getFinalAmount().compareTo(vo.getRefundAmount()) < 0) { if (orderInfo.getFinalAmount().compareTo(vo.getRefundAmount()) < 0) {
throw new CustomException("退款金额不能大于支付金额"); throw new CustomException("退款金额不能大于支付金额");
@@ -101,9 +117,14 @@ public class PlayOrderInfoController {
/** /**
* 更换店员 * 更换店员
*/ */
@ApiOperation(value = "更换店员", notes = "修改订单的接单店员")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功"),
@ApiResponse(code = 500, message = "操作失败")
})
//@PreAuthorize("@customSs.hasPermission('order:order:update')") //@PreAuthorize("@customSs.hasPermission('order:order:update')")
@PostMapping("/orderEditAcceptBy") @PostMapping("/orderEditAcceptBy")
public R orderEditAcceptBy(@Validated @RequestBody PlayOrderEditAcceptByVo vo) { public R orderEditAcceptBy(@ApiParam(value = "更换店员信息", required = true) @Validated @RequestBody PlayOrderEditAcceptByVo vo) {
orderInfoService.updateStateTo1("2", CustomSecurityContextHolder.getUserId(), vo.getAcceptBy(), vo.getOrderId()); orderInfoService.updateStateTo1("2", CustomSecurityContextHolder.getUserId(), vo.getAcceptBy(), vo.getOrderId());
PlayClerkUserInfoEntity clerkUserInfo = playClerkUserInfoService.selectById(vo.getAcceptBy()); PlayClerkUserInfoEntity clerkUserInfo = playClerkUserInfoService.selectById(vo.getAcceptBy());
PlayOrderInfoEntity orderInfo = orderInfoService.selectOrderInfoById(vo.getOrderId()); PlayOrderInfoEntity orderInfo = orderInfoService.selectOrderInfoById(vo.getOrderId());
@@ -116,9 +137,14 @@ public class PlayOrderInfoController {
/** /**
* 后台备注 * 后台备注
*/ */
@ApiOperation(value = "修改后台备注", notes = "修改订单的后台备注信息")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = Boolean.class),
@ApiResponse(code = 500, message = "操作失败")
})
//@PreAuthorize("@customSs.hasPermission('order:order:update')") //@PreAuthorize("@customSs.hasPermission('order:order:update')")
@PostMapping("/orderEditBackendRemark") @PostMapping("/orderEditBackendRemark")
public R orderEditBackendRemark(@Validated @RequestBody PlayOrderEditBackendRemarkByVo vo) { public R orderEditBackendRemark(@ApiParam(value = "后台备注信息", required = true) @Validated @RequestBody PlayOrderEditBackendRemarkByVo vo) {
PlayOrderInfoEntity orderInfo = orderInfoService.selectOrderInfoById(vo.getOrderId()); PlayOrderInfoEntity orderInfo = orderInfoService.selectOrderInfoById(vo.getOrderId());
PlayOrderInfoEntity updateOrderInfo = new PlayOrderInfoEntity(); PlayOrderInfoEntity updateOrderInfo = new PlayOrderInfoEntity();
updateOrderInfo.setId(orderInfo.getId()); updateOrderInfo.setId(orderInfo.getId());
@@ -130,9 +156,14 @@ public class PlayOrderInfoController {
/** /**
* 重新抢单 * 重新抢单
*/ */
@ApiOperation(value = "重新抢单", notes = "将订单重新设置为抢单状态")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = Boolean.class),
@ApiResponse(code = 500, message = "操作失败,包含详细错误信息")
})
//@PreAuthorize("@customSs.hasPermission('order:order:update')") //@PreAuthorize("@customSs.hasPermission('order:order:update')")
@PostMapping("/orderEditRandomSingle") @PostMapping("/orderEditRandomSingle")
public R orderEditRandomSingle(@Validated @RequestBody PlayOrderEditRandomSingleVo vo) { public R orderEditRandomSingle(@ApiParam(value = "重新抢单信息", required = true) @Validated @RequestBody PlayOrderEditRandomSingleVo vo) {
PlayOrderInfoEntity orderInfo = orderInfoService.selectOrderInfoById(vo.getOrderId()); PlayOrderInfoEntity orderInfo = orderInfoService.selectOrderInfoById(vo.getOrderId());
if (!"1".equals(orderInfo.getPlaceType())) { if (!"1".equals(orderInfo.getPlaceType())) {
throw new CustomException("订单类型错误,无法重新抢单"); throw new CustomException("订单类型错误,无法重新抢单");
@@ -155,6 +186,11 @@ public class PlayOrderInfoController {
/** /**
* 根据ID查询订单 * 根据ID查询订单
*/ */
@ApiOperation(value = "获取订单详情", notes = "根据ID获取订单详细信息")
@ApiImplicitParam(name = "id", value = "订单ID", required = true, paramType = "path", dataType = "String", example = "1")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = PlayOrderInfoEntity.class)
})
@GetMapping(value = "/{id}") @GetMapping(value = "/{id}")
public R getInfo(@PathVariable("id") String id) { public R getInfo(@PathVariable("id") String id) {
return R.ok(orderInfoService.selectById(id)); return R.ok(orderInfoService.selectById(id));
@@ -164,10 +200,16 @@ public class PlayOrderInfoController {
/** /**
* 根据ID修改订单信息 * 根据ID修改订单信息
*/ */
@ApiOperation(value = "修改订单信息", notes = "根据ID修改订单基本信息")
@ApiImplicitParam(name = "id", value = "订单ID", required = true, paramType = "path", dataType = "String", example = "1")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功"),
@ApiResponse(code = 500, message = "修改失败")
})
//@PreAuthorize("@customSs.hasPermission('order:order:update')") //@PreAuthorize("@customSs.hasPermission('order:order:update')")
@Log(title = "修改普通订单", businessType = BusinessType.UPDATE) @Log(title = "修改普通订单", businessType = BusinessType.UPDATE)
@PostMapping(value = "/update/{id}") @PostMapping(value = "/update/{id}")
public R update(@PathVariable String id, @RequestBody PlayOrderInfoEntity orderInfoEntity) { public R update(@PathVariable String id, @ApiParam(value = "订单信息", required = true) @RequestBody PlayOrderInfoEntity orderInfoEntity) {
orderInfoEntity.setId(id); orderInfoEntity.setId(id);
boolean success = orderInfoService.update(orderInfoEntity); boolean success = orderInfoService.update(orderInfoEntity);
if (success) { if (success) {
@@ -180,6 +222,11 @@ public class PlayOrderInfoController {
/** /**
* 删除订单 * 删除订单
*/ */
@ApiOperation(value = "删除订单", notes = "根据ID批量删除订单信息")
@ApiImplicitParam(name = "ids", value = "订单ID数组", required = true, paramType = "path", dataType = "String[]", example = "1,2,3")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = Integer.class)
})
//@PreAuthorize("@customSs.hasPermission('order:order:delete')") //@PreAuthorize("@customSs.hasPermission('order:order:delete')")
@Log(title = "删除订单", businessType = BusinessType.DELETE) @Log(title = "删除订单", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}") @DeleteMapping("/{ids}")

View File

@@ -8,6 +8,12 @@ import com.starry.admin.modules.order.service.IPlayOrderRefundInfoService;
import com.starry.common.annotation.Log; import com.starry.common.annotation.Log;
import com.starry.common.enums.BusinessType; import com.starry.common.enums.BusinessType;
import com.starry.common.result.R; import com.starry.common.result.R;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import io.swagger.annotations.ApiResponse;
import io.swagger.annotations.ApiResponses;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
@@ -19,6 +25,7 @@ import javax.annotation.Resource;
* @author admin * @author admin
* @since 2024-05-09 * @since 2024-05-09
*/ */
@Api(tags = "订单退款管理", description = "订单退款信息管理相关接口,包括查询、新增、修改和删除等操作")
@RestController @RestController
@RequestMapping("/order/refund") @RequestMapping("/order/refund")
public class PlayOrderRefundInfoController { public class PlayOrderRefundInfoController {
@@ -28,8 +35,12 @@ public class PlayOrderRefundInfoController {
/** /**
* 查询订单退款信息列表 * 查询订单退款信息列表
*/ */
@ApiOperation(value = "分页查询退款列表", notes = "分页查询订单退款信息列表")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = PlayOrderRefundReturnVo.class, responseContainer = "Page")
})
@PostMapping("/list") @PostMapping("/list")
public R list(@Validated @RequestBody PlayOrderRefundQueryVo vo) { public R list(@ApiParam(value = "查询条件", required = true) @Validated @RequestBody PlayOrderRefundQueryVo vo) {
IPage<PlayOrderRefundReturnVo> list = playOrderRefundInfoService.selectByPage(vo); IPage<PlayOrderRefundReturnVo> list = playOrderRefundInfoService.selectByPage(vo);
return R.ok(list); return R.ok(list);
} }
@@ -37,6 +48,11 @@ public class PlayOrderRefundInfoController {
/** /**
* 获取订单退款信息详细信息 * 获取订单退款信息详细信息
*/ */
@ApiOperation(value = "获取退款详情", notes = "根据ID获取订单退款详细信息")
@ApiImplicitParam(name = "id", value = "退款记录ID", required = true, paramType = "path", dataType = "String", example = "1")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = PlayOrderRefundInfoEntity.class)
})
@GetMapping(value = "/{id}") @GetMapping(value = "/{id}")
public R getInfo(@PathVariable("id") String id) { public R getInfo(@PathVariable("id") String id) {
return R.ok(playOrderRefundInfoService.selectPlayOrderRefundInfoById(id)); return R.ok(playOrderRefundInfoService.selectPlayOrderRefundInfoById(id));
@@ -45,9 +61,14 @@ public class PlayOrderRefundInfoController {
/** /**
* 新增订单退款信息 * 新增订单退款信息
*/ */
@ApiOperation(value = "新增退款记录", notes = "创建新的订单退款信息")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功"),
@ApiResponse(code = 500, message = "添加失败")
})
@Log(title = "订单退款信息", businessType = BusinessType.INSERT) @Log(title = "订单退款信息", businessType = BusinessType.INSERT)
@PostMapping("/create") @PostMapping("/create")
public R create(@RequestBody PlayOrderRefundInfoEntity playOrderRefundInfo) { public R create(@ApiParam(value = "退款信息", required = true) @RequestBody PlayOrderRefundInfoEntity playOrderRefundInfo) {
boolean success = playOrderRefundInfoService.create(playOrderRefundInfo); boolean success = playOrderRefundInfoService.create(playOrderRefundInfo);
if (success) { if (success) {
return R.ok(); return R.ok();
@@ -58,9 +79,15 @@ public class PlayOrderRefundInfoController {
/** /**
* 修改订单退款信息 * 修改订单退款信息
*/ */
@ApiOperation(value = "修改退款记录", notes = "根据ID修改订单退款信息")
@ApiImplicitParam(name = "id", value = "退款记录ID", required = true, paramType = "path", dataType = "String", example = "1")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功"),
@ApiResponse(code = 500, message = "修改失败")
})
@Log(title = "订单退款信息", businessType = BusinessType.UPDATE) @Log(title = "订单退款信息", businessType = BusinessType.UPDATE)
@PostMapping(value = "/update/{id}") @PostMapping(value = "/update/{id}")
public R update(@PathVariable String id, @RequestBody PlayOrderRefundInfoEntity playOrderRefundInfo) { public R update(@PathVariable String id, @ApiParam(value = "退款信息", required = true) @RequestBody PlayOrderRefundInfoEntity playOrderRefundInfo) {
playOrderRefundInfo.setId(id); playOrderRefundInfo.setId(id);
boolean success = playOrderRefundInfoService.update(playOrderRefundInfo); boolean success = playOrderRefundInfoService.update(playOrderRefundInfo);
if (success) { if (success) {
@@ -72,6 +99,11 @@ public class PlayOrderRefundInfoController {
/** /**
* 删除订单退款信息 * 删除订单退款信息
*/ */
@ApiOperation(value = "删除退款记录", notes = "根据ID批量删除订单退款信息")
@ApiImplicitParam(name = "ids", value = "退款记录ID数组", required = true, paramType = "path", dataType = "String[]", example = "1,2,3")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = Integer.class)
})
@Log(title = "订单退款信息", businessType = BusinessType.DELETE) @Log(title = "订单退款信息", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}") @DeleteMapping("/{ids}")
public R remove(@PathVariable String[] ids) { public R remove(@PathVariable String[] ids) {

View File

@@ -7,6 +7,11 @@ import com.starry.admin.modules.order.service.IPlayOrderInfoService;
import com.starry.common.annotation.Log; import com.starry.common.annotation.Log;
import com.starry.common.enums.BusinessType; import com.starry.common.enums.BusinessType;
import com.starry.common.result.R; import com.starry.common.result.R;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import io.swagger.annotations.ApiResponse;
import io.swagger.annotations.ApiResponses;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestBody;
@@ -22,6 +27,7 @@ import javax.annotation.Resource;
* @author admin * @author admin
* @since 2024-03-20 * @since 2024-03-20
*/ */
@Api(tags = "打赏订单管理", description = "打赏订单信息管理相关接口,包括查询等操作")
@RestController @RestController
@RequestMapping("/order/reward/") @RequestMapping("/order/reward/")
public class PlayOrderRewardInfoController { public class PlayOrderRewardInfoController {
@@ -32,10 +38,17 @@ public class PlayOrderRewardInfoController {
private IPlayOrderInfoService orderInfoService; private IPlayOrderInfoService orderInfoService;
/**
* 分页查询打赏订单列表
*/
@ApiOperation(value = "分页查询打赏订单", notes = "分页查询打赏订单信息列表")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = PlayOrderRewardReturnVo.class, responseContainer = "Page")
})
//@PreAuthorize("@customSs.hasPermission('order:reward:list')") //@PreAuthorize("@customSs.hasPermission('order:reward:list')")
@Log(title = "查询打赏订单", businessType = BusinessType.INSERT) @Log(title = "查询打赏订单", businessType = BusinessType.INSERT)
@PostMapping("/listByPage") @PostMapping("/listByPage")
public R queryRewardOrder(@Validated @RequestBody PlayOrderRewardQueryVo vo) { public R queryRewardOrder(@ApiParam(value = "查询条件", required = true) @Validated @RequestBody PlayOrderRewardQueryVo vo) {
IPage<PlayOrderRewardReturnVo> page = orderInfoService.selectRewardOrderInfoByPage(vo); IPage<PlayOrderRewardReturnVo> page = orderInfoService.selectRewardOrderInfoByPage(vo);
return R.ok(page); return R.ok(page);
} }

View File

@@ -2,6 +2,8 @@ package com.starry.admin.modules.order.module.vo;
import com.starry.common.domain.BasePageEntity; import com.starry.common.domain.BasePageEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import lombok.EqualsAndHashCode; import lombok.EqualsAndHashCode;
@@ -14,40 +16,48 @@ import java.util.List;
*/ */
@EqualsAndHashCode(callSuper = true) @EqualsAndHashCode(callSuper = true)
@Data @Data
@ApiModel(value = "订单投诉查询参数", description = "查询订单投诉信息的条件参数")
public class PlayOrderComplaintQueryVo extends BasePageEntity { public class PlayOrderComplaintQueryVo extends BasePageEntity {
/** /**
* 数据ID * 数据ID
*/ */
@ApiModelProperty(value = "投诉ID", example = "1", notes = "特定投诉记录的ID")
private String id; private String id;
/** /**
* 订单ID * 订单ID
*/ */
@ApiModelProperty(value = "订单ID", example = "1", notes = "被投诉的订单ID")
private String orderId; private String orderId;
/** /**
* 订单编号 * 订单编号
*/ */
@ApiModelProperty(value = "订单编号", example = "ORDER20240320001", notes = "被投诉的订单编号,支持模糊查询")
private String orderNo; private String orderNo;
/** /**
* 顾客ID * 顾客ID
*/ */
@ApiModelProperty(value = "顾客ID", example = "1", notes = "投诉顾客的ID")
private String customId; private String customId;
/** /**
* 店员ID * 店员ID
*/ */
@ApiModelProperty(value = "店员ID", example = "1", notes = "被投诉店员的ID")
private String clerkId; private String clerkId;
/** /**
* 微信号码 * 微信号码
*/ */
@ApiModelProperty(value = "微信号码", example = "wx123456", notes = "顾客的微信号码")
private String weiChatCode; private String weiChatCode;
/** /**
* 投诉时间 * 投诉时间
*/ */
@ApiModelProperty(value = "投诉时间范围", example = "['2024-01-01 00:00:00','2024-12-31 23:59:59']", notes = "投诉提交时间范围,包含开始和结束时间")
private List<String> complaintTime; private List<String> complaintTime;

View File

@@ -3,6 +3,8 @@ package com.starry.admin.modules.order.module.vo;
import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableField;
import com.starry.admin.common.conf.StringTypeHandler; import com.starry.admin.common.conf.StringTypeHandler;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import java.math.BigDecimal; import java.math.BigDecimal;
@@ -15,119 +17,142 @@ import java.util.List;
* @author admin * @author admin
*/ */
@Data @Data
@ApiModel(value = "订单投诉返回数据", description = "订单投诉信息的返回数据")
public class PlayOrderComplaintReturnVo { public class PlayOrderComplaintReturnVo {
/** /**
* uuid * uuid
*/ */
@ApiModelProperty(value = "投诉ID", example = "1")
private String id; private String id;
/** /**
* 订单ID * 订单ID
*/ */
@ApiModelProperty(value = "订单ID", example = "1")
private String orderId; private String orderId;
/** /**
* 顾客ID * 顾客ID
*/ */
@ApiModelProperty(value = "顾客ID", example = "1")
private String customId; private String customId;
/** /**
* 顾客昵称 * 顾客昵称
*/ */
@ApiModelProperty(value = "顾客昵称", example = "张三")
private String customNickname; private String customNickname;
/** /**
* 顾客头像 * 顾客头像
*/ */
@ApiModelProperty(value = "顾客头像", example = "https://example.com/avatar.jpg")
private String customAvatar; private String customAvatar;
/** /**
* 店员ID * 店员ID
*/ */
@ApiModelProperty(value = "店员ID", example = "1")
private String clerkId; private String clerkId;
/** /**
* 顾客昵称 * 顾客昵称
*/ */
@ApiModelProperty(value = "店员昵称", example = "小明")
private String clerkNickname; private String clerkNickname;
/** /**
* 顾客头像 * 顾客头像
*/ */
@ApiModelProperty(value = "店员头像", example = "https://example.com/clerk_avatar.jpg")
private String clerkAvatar; private String clerkAvatar;
/** /**
* 投诉人微信号码 * 投诉人微信号码
*/ */
@ApiModelProperty(value = "微信号码", example = "wx123456")
private String wxChatCode; private String wxChatCode;
/** /**
* 投诉内容 * 投诉内容
*/ */
@ApiModelProperty(value = "投诉内容", example = "店员服务态度差")
private String complaintCon; private String complaintCon;
/** /**
* 投诉时间 * 投诉时间
*/ */
@ApiModelProperty(value = "投诉时间", example = "2024-01-01 12:00:00")
private Date complaintTime; private Date complaintTime;
/** /**
* 图片列表 * 图片列表
*/ */
@TableField(typeHandler = StringTypeHandler.class) @TableField(typeHandler = StringTypeHandler.class)
@ApiModelProperty(value = "图片列表", example = "['https://example.com/img1.jpg','https://example.com/img2.jpg']")
private List<String> images; private List<String> images;
/** /**
* 数据是否隐藏0:显示1:隐藏) * 数据是否隐藏0:显示1:隐藏)
*/ */
@ApiModelProperty(value = "是否隐藏", example = "0", notes = "数据是否隐藏0:显示1:隐藏")
private String hidden; private String hidden;
/** /**
* 订单号 * 订单号
*/ */
@ApiModelProperty(value = "订单编号", example = "ORDER20240320001")
private String orderNo; private String orderNo;
/** /**
* 下单类型0指定单1随机单。2打赏单 * 下单类型0指定单1随机单。2打赏单
*/ */
@ApiModelProperty(value = "下单类型", example = "0", notes = "0指定单1随机单2打赏单")
private String placeType; private String placeType;
/** /**
* 订单最终金额(支付金额) * 订单最终金额(支付金额)
*/ */
@ApiModelProperty(value = "支付金额", example = "100.00")
private BigDecimal finalAmount; private BigDecimal finalAmount;
/** /**
* 服务项目ID * 服务项目ID
*/ */
@ApiModelProperty(value = "商品ID", example = "1")
private String commodityId; private String commodityId;
/** /**
* 项目类型 * 项目类型
*/ */
@ApiModelProperty(value = "商品类型", example = "0", notes = "0:礼物1服务")
private String commodityType; private String commodityType;
/** /**
* 项目名称 * 项目名称
*/ */
@ApiModelProperty(value = "商品名称", example = "语音陪聊")
private String commodityName; private String commodityName;
/** /**
* 项目价格 * 项目价格
*/ */
@ApiModelProperty(value = "商品单价", example = "50.00")
private BigDecimal commodityPrice; private BigDecimal commodityPrice;
/** /**
* 商品数量 * 商品数量
*/ */
@ApiModelProperty(value = "商品数量", example = "1")
private String commodityNumber; private String commodityNumber;
/** /**
* 服务时长(文字描述信息,不参与订单计算) * 服务时长(文字描述信息,不参与订单计算)
*/ */
@ApiModelProperty(value = "服务时长", example = "30", notes = "服务的时长,单位分钟")
private String serviceDuration; private String serviceDuration;
} }

View File

@@ -1,6 +1,8 @@
package com.starry.admin.modules.order.module.vo; package com.starry.admin.modules.order.module.vo;
import com.starry.common.domain.BasePageEntity; import com.starry.common.domain.BasePageEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import lombok.EqualsAndHashCode; import lombok.EqualsAndHashCode;
@@ -14,36 +16,43 @@ import java.util.List;
**/ **/
@EqualsAndHashCode(callSuper = true) @EqualsAndHashCode(callSuper = true)
@Data @Data
@ApiModel(value = "订单续单查询参数", description = "查询订单续单信息的条件参数")
public class PlayOrderContinueQueryVo extends BasePageEntity { public class PlayOrderContinueQueryVo extends BasePageEntity {
@ApiModelProperty(value = "昵称", example = "小明", notes = "店员或顾客昵称,支持模糊查询")
private String nickname; private String nickname;
/** /**
* 店员ID * 店员ID
*/ */
@ApiModelProperty(value = "店员ID", example = "1", notes = "申请续单的店员ID")
private String clerkId; private String clerkId;
/** /**
* 顾客ID * 顾客ID
*/ */
@ApiModelProperty(value = "顾客ID", example = "1", notes = "相关顾客的ID")
private String customId; private String customId;
/** /**
* 订单编号 * 订单编号
*/ */
@ApiModelProperty(value = "订单编号", example = "ORDER20240320001", notes = "相关订单的编号,支持模糊查询")
private String orderNo; private String orderNo;
/** /**
* 审核状态0:未审核1:已通过2:不通过) * 审核状态0:未审核1:已通过2:不通过)
*/ */
@ApiModelProperty(value = "审核状态", example = "0", notes = "0:未审核1:已通过2:不通过")
private String reviewState; private String reviewState;
/** /**
* 申请时间 * 申请时间
*/ */
@ApiModelProperty(value = "申请时间范围", example = "['2024-01-01 00:00:00','2024-12-31 23:59:59']", notes = "续单申请时间范围,包含开始和结束时间")
private List<String> continueTime; private List<String> continueTime;

View File

@@ -1,6 +1,8 @@
package com.starry.admin.modules.order.module.vo; package com.starry.admin.modules.order.module.vo;
import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat; import org.springframework.format.annotation.DateTimeFormat;
@@ -15,59 +17,71 @@ import java.util.List;
* @since 2024/5/10 14:59 * @since 2024/5/10 14:59
**/ **/
@Data @Data
@ApiModel(value = "订单续单返回数据", description = "订单续单信息的返回数据")
public class PlayOrderContinueReturnVo { public class PlayOrderContinueReturnVo {
@ApiModelProperty(value = "续单ID", example = "1")
private String id; private String id;
/** /**
* 店员ID * 店员ID
*/ */
@ApiModelProperty(value = "店员ID", example = "1")
private String clerkId; private String clerkId;
/** /**
* 店员昵称 * 店员昵称
*/ */
@ApiModelProperty(value = "店员昵称", example = "小明")
private String clerkNickname; private String clerkNickname;
/** /**
* 店员昵称 * 店员昵称
*/ */
@ApiModelProperty(value = "店员头像", example = "https://example.com/clerk_avatar.jpg")
private String clerkAvatar; private String clerkAvatar;
/** /**
* 店员性别 * 店员性别
*/ */
@ApiModelProperty(value = "店员性别", example = "1", notes = "0:未知,1:男,2:女")
private String clerkSex; private String clerkSex;
/** /**
* 顾客ID * 顾客ID
*/ */
@ApiModelProperty(value = "顾客ID", example = "1")
private String customerId; private String customerId;
/** /**
* 用户等级名称 * 用户等级名称
*/ */
@ApiModelProperty(value = "等级名称", example = "黄金会员")
private String levelName; private String levelName;
/** /**
* 订单编号 * 订单编号
*/ */
@ApiModelProperty(value = "订单编号", example = "ORDER20240320001")
private String orderNo; private String orderNo;
/** /**
* 下单类型0指定单1随机单。2打赏单 * 下单类型0指定单1随机单。2打赏单
*/ */
@ApiModelProperty(value = "下单类型", example = "0", notes = "0指定单1随机单2打赏单")
private String placeType; private String placeType;
/** /**
* 商品名称 * 商品名称
*/ */
@ApiModelProperty(value = "商品名称", example = "语音陪聊")
private String commodityName; private String commodityName;
/** /**
* 商品单价 * 商品单价
*/ */
@ApiModelProperty(value = "商品单价", example = "50.00")
private BigDecimal commodityPrice; private BigDecimal commodityPrice;
/** /**
@@ -75,51 +89,61 @@ public class PlayOrderContinueReturnVo {
* *
* @since 2024/5/8 16:44 * @since 2024/5/8 16:44
**/ **/
@ApiModelProperty(value = "服务时长", example = "30", notes = "服务的时长,单位分钟")
private String serviceDuration; private String serviceDuration;
/** /**
* 商品数量 * 商品数量
*/ */
@ApiModelProperty(value = "商品数量", example = "1")
private int commodityNumber; private int commodityNumber;
/** /**
* 下单金额 * 下单金额
*/ */
@ApiModelProperty(value = "订单金额", example = "100.00")
private BigDecimal orderMoney; private BigDecimal orderMoney;
/** /**
* 订单最终金额(支付金额) * 订单最终金额(支付金额)
*/ */
@ApiModelProperty(value = "支付金额", example = "100.00")
private BigDecimal finalAmount; private BigDecimal finalAmount;
/** /**
* 申请消息 * 申请消息
*/ */
@ApiModelProperty(value = "申请消息", example = "顾客需要继续服务")
private String continueMsg; private String continueMsg;
/** /**
* 截图 * 截图
*/ */
@ApiModelProperty(value = "截图列表", example = "['https://example.com/img1.jpg','https://example.com/img2.jpg']")
private List<String> images; private List<String> images;
/** /**
* 是否需要审核0:不需要1:需要 * 是否需要审核0:不需要1:需要
*/ */
@ApiModelProperty(value = "是否需要审核", example = "1", notes = "0:不需要1:需要")
private String reviewedRequired; private String reviewedRequired;
/** /**
* 审核状态0:未审核1:已通过2:不通过) * 审核状态0:未审核1:已通过2:不通过)
*/ */
@ApiModelProperty(value = "审核状态", example = "0", notes = "0:未审核1:已通过2:不通过")
private String reviewedState; private String reviewedState;
/** /**
* 审核内容 * 审核内容
*/ */
@ApiModelProperty(value = "审核备注", example = "审核通过,可以继续服务")
private String reviewedRemark; private String reviewedRemark;
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
@ApiModelProperty(value = "申请时间", example = "2024-01-01 12:00:00")
private LocalDateTime continueTime; private LocalDateTime continueTime;
} }

View File

@@ -1,5 +1,7 @@
package com.starry.admin.modules.order.module.vo; package com.starry.admin.modules.order.module.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import javax.validation.constraints.NotNull; import javax.validation.constraints.NotNull;
@@ -11,6 +13,7 @@ import javax.validation.constraints.NotNull;
* @since 2024-03-20 * @since 2024-03-20
*/ */
@Data @Data
@ApiModel(value = "更换店员参数", description = "更换订单接单店员的请求参数")
public class PlayOrderEditAcceptByVo { public class PlayOrderEditAcceptByVo {
@@ -18,6 +21,7 @@ public class PlayOrderEditAcceptByVo {
* uuid * uuid
*/ */
@NotNull(message = "orderId不能为空") @NotNull(message = "orderId不能为空")
@ApiModelProperty(value = "订单ID", required = true, example = "1", notes = "需要更换店员的订单ID")
private String orderId; private String orderId;
@@ -25,11 +29,13 @@ public class PlayOrderEditAcceptByVo {
* 店员ID * 店员ID
*/ */
@NotNull(message = "店员不能为空") @NotNull(message = "店员不能为空")
@ApiModelProperty(value = "店员ID", required = true, example = "1", notes = "新的接单店员ID")
private String acceptBy; private String acceptBy;
/** /**
* 备注 * 备注
*/ */
@ApiModelProperty(value = "备注", example = "店员请假,需要更换", notes = "更换店员的原因说明")
private String remark; private String remark;

View File

@@ -1,5 +1,7 @@
package com.starry.admin.modules.order.module.vo; package com.starry.admin.modules.order.module.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import org.hibernate.validator.constraints.Length; import org.hibernate.validator.constraints.Length;
@@ -12,6 +14,7 @@ import javax.validation.constraints.NotNull;
* @since 2024-03-20 * @since 2024-03-20
*/ */
@Data @Data
@ApiModel(value = "修改后台备注参数", description = "修改订单后台备注的请求参数")
public class PlayOrderEditBackendRemarkByVo { public class PlayOrderEditBackendRemarkByVo {
@@ -19,6 +22,7 @@ public class PlayOrderEditBackendRemarkByVo {
* uuid * uuid
*/ */
@NotNull(message = "orderId不能为空") @NotNull(message = "orderId不能为空")
@ApiModelProperty(value = "订单ID", required = true, example = "1", notes = "需要修改备注的订单ID")
private String orderId; private String orderId;
@@ -27,6 +31,7 @@ public class PlayOrderEditBackendRemarkByVo {
*/ */
@NotNull(message = "后台备注不能为空") @NotNull(message = "后台备注不能为空")
@Length(min = 1, max = 100, message = "后台备注字符长度在1-100个字符之间") @Length(min = 1, max = 100, message = "后台备注字符长度在1-100个字符之间")
@ApiModelProperty(value = "后台备注", required = true, example = "顾客要求特殊服务", notes = "订单的后台备注内容1-100字符")
private String backendRemark; private String backendRemark;

View File

@@ -1,5 +1,7 @@
package com.starry.admin.modules.order.module.vo; package com.starry.admin.modules.order.module.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import javax.validation.constraints.NotNull; import javax.validation.constraints.NotNull;
@@ -11,6 +13,7 @@ import javax.validation.constraints.NotNull;
* @since 2024-03-20 * @since 2024-03-20
*/ */
@Data @Data
@ApiModel(value = "重新抢单参数", description = "设置订单重新抢单的请求参数")
public class PlayOrderEditRandomSingleVo { public class PlayOrderEditRandomSingleVo {
@@ -18,6 +21,7 @@ public class PlayOrderEditRandomSingleVo {
* uuid * uuid
*/ */
@NotNull(message = "orderId不能为空") @NotNull(message = "orderId不能为空")
@ApiModelProperty(value = "订单ID", required = true, example = "1", notes = "需要重新抢单的订单ID")
private String orderId; private String orderId;
@@ -27,11 +31,13 @@ public class PlayOrderEditRandomSingleVo {
* @since 2024/5/8 15:31 * @since 2024/5/8 15:31
**/ **/
@NotNull(message = "陪聊性别不能为空") @NotNull(message = "陪聊性别不能为空")
@ApiModelProperty(value = "店员性别", required = true, example = "2", notes = "抢单店员的性别要求0:未知;1:男;2:女")
private String sex; private String sex;
/** /**
* 陪聊等级 * 陪聊等级
**/ **/
@NotNull(message = "陪聊等级不能为空") @NotNull(message = "陪聊等级不能为空")
@ApiModelProperty(value = "店员等级", required = true, example = "1", notes = "抢单店员的等级要求")
private String levelId; private String levelId;
/** /**
@@ -40,6 +46,7 @@ public class PlayOrderEditRandomSingleVo {
* @since 2024/5/8 15:28 * @since 2024/5/8 15:28
**/ **/
@NotNull(message = "是否排除下单过的成员不能为空") @NotNull(message = "是否排除下单过的成员不能为空")
@ApiModelProperty(value = "是否排除历史", required = true, example = "1", notes = "是否排除下单过的成员0:不排除;1:排除")
private String excludeHistory; private String excludeHistory;
@@ -48,6 +55,7 @@ public class PlayOrderEditRandomSingleVo {
* *
* @since 2024/5/8 15:28 * @since 2024/5/8 15:28
**/ **/
@ApiModelProperty(value = "订单备注", example = "需要擅长聊天的店员", notes = "订单的备注信息")
private String remark; private String remark;

View File

@@ -1,6 +1,8 @@
package com.starry.admin.modules.order.module.vo; package com.starry.admin.modules.order.module.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotBlank;
@@ -12,12 +14,14 @@ import javax.validation.constraints.Pattern;
* @author admin * @author admin
*/ */
@Data @Data
@ApiModel(value = "评价状态修改参数", description = "修改订单评价显示状态的请求参数")
public class PlayOrderEvaluateEditStateVo { public class PlayOrderEvaluateEditStateVo {
/** /**
* UUID * UUID
*/ */
@NotBlank(message = "id不能为空") @NotBlank(message = "id不能为空")
@ApiModelProperty(value = "评价ID", required = true, example = "1", notes = "需要修改状态的评价ID")
private String id; private String id;
/** /**
@@ -25,5 +29,6 @@ public class PlayOrderEvaluateEditStateVo {
*/ */
@NotBlank(message = "是否隐藏不能为空") @NotBlank(message = "是否隐藏不能为空")
@Pattern(regexp = "[01]", message = "是否隐藏数据错误,只能位0或者1") @Pattern(regexp = "[01]", message = "是否隐藏数据错误,只能位0或者1")
@ApiModelProperty(value = "是否隐藏", required = true, example = "1", notes = "数据是否隐藏0:显示1:隐藏")
private String hidden; private String hidden;
} }

View File

@@ -2,6 +2,8 @@ package com.starry.admin.modules.order.module.vo;
import com.starry.common.domain.BasePageEntity; import com.starry.common.domain.BasePageEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import lombok.EqualsAndHashCode; import lombok.EqualsAndHashCode;
@@ -14,40 +16,48 @@ import java.util.List;
*/ */
@EqualsAndHashCode(callSuper = true) @EqualsAndHashCode(callSuper = true)
@Data @Data
@ApiModel(value = "订单评价查询参数", description = "查询订单评价信息的条件参数")
public class PlayOrderEvaluateQueryVo extends BasePageEntity { public class PlayOrderEvaluateQueryVo extends BasePageEntity {
/** /**
* UUID * UUID
*/ */
@ApiModelProperty(value = "评价ID", example = "1", notes = "特定评价记录的ID")
private String id; private String id;
/** /**
* 顾客ID * 顾客ID
*/ */
@ApiModelProperty(value = "顾客ID", example = "1", notes = "评价顾客的ID")
private String customId; private String customId;
/** /**
* 店员ID * 店员ID
*/ */
@ApiModelProperty(value = "店员ID", example = "1", notes = "被评价店员的ID")
private String clerkId; private String clerkId;
/** /**
* 评价内容 * 评价内容
*/ */
@ApiModelProperty(value = "评价内容", example = "服务很好", notes = "评价内容,支持模糊查询")
private String evaluateCon; private String evaluateCon;
/** /**
* 匿名评价(0:匿名1:非匿名) * 匿名评价(0:匿名1:非匿名)
*/ */
@ApiModelProperty(value = "是否匿名", example = "0", notes = "0:匿名1:非匿名")
private String anonymous; private String anonymous;
/** /**
* 评价时间 * 评价时间
*/ */
@ApiModelProperty(value = "评价时间范围", example = "['2024-01-01 00:00:00','2024-12-31 23:59:59']", notes = "评价提交时间范围,包含开始和结束时间")
private List<String> evaluateTime; private List<String> evaluateTime;
/** /**
* 数据是否隐藏0:显示1:隐藏) * 数据是否隐藏0:显示1:隐藏)
*/ */
@ApiModelProperty(value = "是否隐藏", example = "0", notes = "数据是否隐藏0:显示1:隐藏")
private String hidden; private String hidden;
} }

View File

@@ -2,6 +2,8 @@ package com.starry.admin.modules.order.module.vo;
import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import java.math.BigDecimal; import java.math.BigDecimal;
@@ -13,129 +15,153 @@ import java.util.Date;
* @author admin * @author admin
*/ */
@Data @Data
@ApiModel(value = "订单评价返回数据", description = "订单评价信息的返回数据")
public class PlayOrderEvaluateReturnVo { public class PlayOrderEvaluateReturnVo {
/** /**
* uuid * uuid
*/ */
@ApiModelProperty(value = "评价ID", example = "1")
private String id; private String id;
/** /**
* 订单ID * 订单ID
*/ */
@ApiModelProperty(value = "订单ID", example = "1")
private String orderId; private String orderId;
/** /**
* 匿名评价(0:匿名1:非匿名) * 匿名评价(0:匿名1:非匿名)
*/ */
@ApiModelProperty(value = "是否匿名", example = "0", notes = "0:匿名1:非匿名")
private String anonymous; private String anonymous;
/** /**
* 评价类型(0:好评1差评) * 评价类型(0:好评1差评)
*/ */
@ApiModelProperty(value = "评价类型", example = "0", notes = "0:好评1:差评")
private String evaluateType; private String evaluateType;
/** /**
* 评价等级【1-5星最低1星最高5星】 * 评价等级【1-5星最低1星最高5星】
*/ */
@ApiModelProperty(value = "评价等级", example = "5", notes = "1-5星最低1星最高5星")
private Integer evaluateLevel; private Integer evaluateLevel;
/** /**
* 评价内容 * 评价内容
*/ */
@ApiModelProperty(value = "评价内容", example = "服务很好,店员态度很好")
private String evaluateCon; private String evaluateCon;
/** /**
* 评价时间 * 评价时间
*/ */
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
@ApiModelProperty(value = "评价时间", example = "2024-01-01 12:00:00")
private Date evaluateTime; private Date evaluateTime;
/** /**
* 数据是否隐藏0:显示1:隐藏) * 数据是否隐藏0:显示1:隐藏)
*/ */
@ApiModelProperty(value = "是否隐藏", example = "0", notes = "数据是否隐藏0:显示1:隐藏")
private String hidden; private String hidden;
/** /**
* 顾客ID * 顾客ID
*/ */
@ApiModelProperty(value = "顾客ID", example = "1")
private String customId; private String customId;
/** /**
* 顾客昵称 * 顾客昵称
*/ */
@ApiModelProperty(value = "顾客昵称", example = "张三")
private String customNickname; private String customNickname;
/** /**
* 顾客头像 * 顾客头像
*/ */
@ApiModelProperty(value = "顾客头像", example = "https://example.com/avatar.jpg")
private String customAvatar; private String customAvatar;
/** /**
* 店员ID * 店员ID
*/ */
@ApiModelProperty(value = "店员ID", example = "1")
private String clerkId; private String clerkId;
/** /**
* 顾客昵称 * 顾客昵称
*/ */
@ApiModelProperty(value = "店员昵称", example = "小明")
private String clerkNickname; private String clerkNickname;
/** /**
* 顾客头像 * 顾客头像
*/ */
@ApiModelProperty(value = "店员头像", example = "https://example.com/clerk_avatar.jpg")
private String clerkAvatar; private String clerkAvatar;
/** /**
* 点赞数 * 点赞数
*/ */
@ApiModelProperty(value = "点赞数", example = "10")
private int likeCount = 10; private int likeCount = 10;
/** /**
* 订单号 * 订单号
*/ */
@ApiModelProperty(value = "订单编号", example = "ORDER20240320001")
private String orderNo; private String orderNo;
/** /**
* 下单类型0指定单1随机单。2打赏单 * 下单类型0指定单1随机单。2打赏单
*/ */
@ApiModelProperty(value = "下单类型", example = "0", notes = "0指定单1随机单2打赏单")
private String placeType; private String placeType;
/** /**
* 订单最终金额(支付金额) * 订单最终金额(支付金额)
*/ */
@ApiModelProperty(value = "支付金额", example = "100.00")
private BigDecimal finalAmount; private BigDecimal finalAmount;
/** /**
* 服务项目ID * 服务项目ID
*/ */
@ApiModelProperty(value = "商品ID", example = "1")
private String commodityId; private String commodityId;
/** /**
* 项目类型 * 项目类型
*/ */
@ApiModelProperty(value = "商品类型", example = "0", notes = "0:礼物1服务")
private String commodityType; private String commodityType;
/** /**
* 项目名称 * 项目名称
*/ */
@ApiModelProperty(value = "商品名称", example = "语音陪聊")
private String commodityName; private String commodityName;
/** /**
* 项目价格 * 项目价格
*/ */
@ApiModelProperty(value = "商品单价", example = "50.00")
private BigDecimal commodityPrice; private BigDecimal commodityPrice;
/** /**
* 商品数量 * 商品数量
*/ */
@ApiModelProperty(value = "商品数量", example = "1")
private String commodityNumber; private String commodityNumber;
/** /**
* 服务时长(文字描述信息,不参与订单计算) * 服务时长(文字描述信息,不参与订单计算)
*/ */
@ApiModelProperty(value = "服务时长", example = "30", notes = "服务的时长,单位分钟")
private String serviceDuration; private String serviceDuration;
} }

View File

@@ -1,6 +1,8 @@
package com.starry.admin.modules.order.module.vo; package com.starry.admin.modules.order.module.vo;
import com.starry.common.domain.BasePageEntity; import com.starry.common.domain.BasePageEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import lombok.EqualsAndHashCode; import lombok.EqualsAndHashCode;
@@ -14,16 +16,19 @@ import java.util.List;
*/ */
@Data @Data
@EqualsAndHashCode(callSuper = false) @EqualsAndHashCode(callSuper = false)
@ApiModel(value = "订单查询参数", description = "查询订单信息的条件参数")
public class PlayOrderInfoQueryVo extends BasePageEntity { public class PlayOrderInfoQueryVo extends BasePageEntity {
/** /**
* uuid * uuid
*/ */
@ApiModelProperty(value = "订单ID", example = "1", notes = "特定订单的ID")
private String id; private String id;
/** /**
* 订单编号 * 订单编号
*/ */
@ApiModelProperty(value = "订单编号", example = "ORDER20240320001", notes = "订单的编号,支持模糊查询")
private String orderNo; private String orderNo;
/** /**
@@ -34,82 +39,98 @@ public class PlayOrderInfoQueryVo extends BasePageEntity {
* 3已完成 * 3已完成
* 4已取消 * 4已取消
*/ */
@ApiModelProperty(value = "订单状态", example = "0", notes = "0已下单待接单;1已接单待开始;2已开始服务中;3已完成;4已取消")
private String orderStatus; private String orderStatus;
/** /**
* 订单类型【-1:退款订单;0:充值订单1:提现订单2:普通订单】 * 订单类型【-1:退款订单;0:充值订单1:提现订单2:普通订单】
*/ */
@ApiModelProperty(value = "订单类型", example = "2", notes = "-1:退款订单;0:充值订单;1:提现订单;2:普通订单")
private String orderType; private String orderType;
/** /**
* 下单类型(-1:其他类型;0:指定单;1:随机单;2:打赏单) * 下单类型(-1:其他类型;0:指定单;1:随机单;2:打赏单)
*/ */
@ApiModelProperty(value = "下单类型", example = "0", notes = "-1:其他类型;0:指定单;1:随机单;2:打赏单")
private String placeType; private String placeType;
/** /**
* 是否是首单【0不是1是】 * 是否是首单【0不是1是】
*/ */
@ApiModelProperty(value = "是否首单", example = "1", notes = "0不是1")
private String firstOrder; private String firstOrder;
/** /**
* 是否使用优惠券[0:未使用,1:已使用] * 是否使用优惠券[0:未使用,1:已使用]
*/ */
@ApiModelProperty(value = "是否使用优惠券", example = "1", notes = "0:未使用,1:已使用")
private String useCoupon; private String useCoupon;
/** /**
* 是否是客服录入订单[0:不是,1:是] * 是否是客服录入订单[0:不是,1:是]
*/ */
@ApiModelProperty(value = "是否客服录入", example = "0", notes = "0:不是,1:是")
private String backendEntry; private String backendEntry;
/** /**
* 支付方式0余额支付,1:微信支付,2:支付宝支付 * 支付方式0余额支付,1:微信支付,2:支付宝支付
*/ */
@ApiModelProperty(value = "支付方式", example = "0", notes = "0余额支付,1:微信支付,2:支付宝支付")
private String payMethod; private String payMethod;
/** /**
* 微信号码 * 微信号码
*/ */
@ApiModelProperty(value = "微信号码", example = "wx123456", notes = "顾客的微信号码")
private String weiChatCode; private String weiChatCode;
/** /**
* 下单人 * 下单人
*/ */
@ApiModelProperty(value = "下单人ID", example = "1", notes = "下单顾客的ID")
private String purchaserBy; private String purchaserBy;
/** /**
* 下单时间 * 下单时间
*/ */
@ApiModelProperty(value = "下单时间范围", example = "['2024-01-01 00:00:00','2024-12-31 23:59:59']", notes = "下单时间范围,包含开始和结束时间")
private List<String> purchaserTime; private List<String> purchaserTime;
/** /**
* 接单人 * 接单人
*/ */
@ApiModelProperty(value = "接单人ID", example = "1", notes = "接单店员的ID")
private String acceptBy; private String acceptBy;
/** /**
* 接单时间 * 接单时间
*/ */
@ApiModelProperty(value = "接单时间范围", example = "['2024-01-01 00:00:00','2024-12-31 23:59:59']", notes = "接单时间范围,包含开始和结束时间")
private List<String> acceptTime; private List<String> acceptTime;
/** /**
* 开始订单时间(开始服务时间) * 开始订单时间(开始服务时间)
*/ */
@ApiModelProperty(value = "开始服务时间范围", example = "['2024-01-01 00:00:00','2024-12-31 23:59:59']", notes = "订单开始服务时间范围,包含开始和结束时间")
private List<String> startOrderTime; private List<String> startOrderTime;
/** /**
* 完成订单时间(开始服务时间) * 完成订单时间(开始服务时间)
*/ */
@ApiModelProperty(value = "完成服务时间范围", example = "['2024-01-01 00:00:00','2024-12-31 23:59:59']", notes = "订单完成服务时间范围,包含开始和结束时间")
private List<String> endOrderTime; private List<String> endOrderTime;
/** /**
* 分组ID * 分组ID
*/ */
@ApiModelProperty(value = "分组ID", example = "1", notes = "订单所属分组的ID")
private String groupId; private String groupId;
@ApiModelProperty(value = "店员昵称", example = "小明", notes = "接单店员的昵称,支持模糊查询")
private String clerkNickName; private String clerkNickName;

View File

@@ -1,6 +1,8 @@
package com.starry.admin.modules.order.module.vo; package com.starry.admin.modules.order.module.vo;
import com.starry.common.domain.BasePageEntity; import com.starry.common.domain.BasePageEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import lombok.EqualsAndHashCode; import lombok.EqualsAndHashCode;
import org.hibernate.validator.constraints.Length; import org.hibernate.validator.constraints.Length;
@@ -16,6 +18,7 @@ import java.math.BigDecimal;
*/ */
@Data @Data
@EqualsAndHashCode(callSuper = false) @EqualsAndHashCode(callSuper = false)
@ApiModel(value = "订单退款参数", description = "订单退款操作的请求参数")
public class PlayOrderRefundAddVo extends BasePageEntity { public class PlayOrderRefundAddVo extends BasePageEntity {
@@ -23,6 +26,7 @@ public class PlayOrderRefundAddVo extends BasePageEntity {
* uuid * uuid
*/ */
@NotNull(message = "orderId不能为空") @NotNull(message = "orderId不能为空")
@ApiModelProperty(value = "订单ID", required = true, example = "1", notes = "需要退款的订单ID")
private String orderId; private String orderId;
@@ -30,6 +34,7 @@ public class PlayOrderRefundAddVo extends BasePageEntity {
* 退款金额 * 退款金额
*/ */
@NotNull(message = "退款金额不能为空") @NotNull(message = "退款金额不能为空")
@ApiModelProperty(value = "退款金额", required = true, example = "100.00", notes = "退款的金额,不能大于支付金额")
private BigDecimal refundAmount; private BigDecimal refundAmount;
/** /**
@@ -37,6 +42,7 @@ public class PlayOrderRefundAddVo extends BasePageEntity {
*/ */
@NotNull(message = "退款原因不能为空") @NotNull(message = "退款原因不能为空")
@Length(min = 1, max = 100, message = "退款原因必须在1-100个字符之间") @Length(min = 1, max = 100, message = "退款原因必须在1-100个字符之间")
@ApiModelProperty(value = "退款原因", required = true, example = "顾客要求退款", notes = "退款的原因说明1-100字符")
private String refundReason; private String refundReason;

View File

@@ -1,6 +1,8 @@
package com.starry.admin.modules.order.module.vo; package com.starry.admin.modules.order.module.vo;
import com.starry.common.domain.BasePageEntity; import com.starry.common.domain.BasePageEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import lombok.EqualsAndHashCode; import lombok.EqualsAndHashCode;
@@ -10,5 +12,15 @@ import lombok.EqualsAndHashCode;
**/ **/
@EqualsAndHashCode(callSuper = true) @EqualsAndHashCode(callSuper = true)
@Data @Data
@ApiModel(value = "订单退款查询参数", description = "查询订单退款信息的条件参数")
public class PlayOrderRefundQueryVo extends BasePageEntity { public class PlayOrderRefundQueryVo extends BasePageEntity {
@ApiModelProperty(value = "订单ID", example = "1", notes = "特定订单的ID")
private String orderId;
@ApiModelProperty(value = "退款类型", example = "0", notes = "0:全额退款,1:部分退款")
private String refundType;
@ApiModelProperty(value = "退款状态", example = "1", notes = "退款处理状态")
private String refundStatus;
} }

View File

@@ -1,8 +1,50 @@
package com.starry.admin.modules.order.module.vo; package com.starry.admin.modules.order.module.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
import java.util.Date;
/** /**
* @author admin * @author admin
* @since 2024/5/9 下午11:10 * @since 2024/5/9 下午11:10
**/ **/
@Data
@ApiModel(value = "订单退款返回数据", description = "订单退款信息的返回数据")
public class PlayOrderRefundReturnVo { public class PlayOrderRefundReturnVo {
@ApiModelProperty(value = "退款ID", example = "1")
private String id;
@ApiModelProperty(value = "订单ID", example = "1")
private String orderId;
@ApiModelProperty(value = "订单编号", example = "ORDER20240320001")
private String orderNo;
@ApiModelProperty(value = "退款金额", example = "100.00")
private BigDecimal refundAmount;
@ApiModelProperty(value = "退款原因", example = "顾客要求退款")
private String refundReason;
@ApiModelProperty(value = "退款类型", example = "0", notes = "0:全额退款,1:部分退款")
private String refundType;
@ApiModelProperty(value = "退款状态", example = "1", notes = "退款处理状态")
private String refundStatus;
@ApiModelProperty(value = "退款时间", example = "2024-01-01 12:00:00")
private Date refundTime;
@ApiModelProperty(value = "支付方式", example = "0", notes = "0余额支付,1:微信支付,2:支付宝支付")
private String payMethod;
@ApiModelProperty(value = "操作人ID", example = "1")
private String operatorId;
@ApiModelProperty(value = "操作人名称", example = "管理员")
private String operatorName;
} }

View File

@@ -1,5 +1,7 @@
package com.starry.admin.modules.order.module.vo; package com.starry.admin.modules.order.module.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotBlank;
@@ -12,10 +14,12 @@ import javax.validation.constraints.Pattern;
* @since 2024/5/10 14:59 * @since 2024/5/10 14:59
**/ **/
@Data @Data
@ApiModel(value = "审批状态修改参数", description = "续单申请审批状态修改的请求参数")
public class PlayOrderReviewStateEditVo { public class PlayOrderReviewStateEditVo {
@NotBlank(message = "ID不能为空") @NotBlank(message = "ID不能为空")
@ApiModelProperty(value = "续单ID", required = true, example = "1", notes = "需要审批的续单ID")
private String id; private String id;
/** /**
@@ -23,8 +27,10 @@ public class PlayOrderReviewStateEditVo {
*/ */
@NotBlank(message = "审核状态不能为空") @NotBlank(message = "审核状态不能为空")
@Pattern(regexp = "[12]", message = "审核状态必须为1或2") @Pattern(regexp = "[12]", message = "审核状态必须为1或2")
@ApiModelProperty(value = "审核状态", required = true, example = "1", notes = "1:已通过2:不通过")
private String reviewState; private String reviewState;
@ApiModelProperty(value = "审核备注", example = "审核通过,可以继续服务", notes = "审核意见或备注信息")
private String remark; private String remark;
} }

View File

@@ -2,6 +2,8 @@ package com.starry.admin.modules.order.module.vo;
import com.starry.common.domain.BasePageEntity; import com.starry.common.domain.BasePageEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import lombok.EqualsAndHashCode; import lombok.EqualsAndHashCode;
@@ -13,46 +15,54 @@ import java.util.List;
*/ */
@EqualsAndHashCode(callSuper = true) @EqualsAndHashCode(callSuper = true)
@Data @Data
@ApiModel(value = "打赏订单查询参数", description = "查询打赏订单信息的条件参数")
public class PlayOrderRewardQueryVo extends BasePageEntity { public class PlayOrderRewardQueryVo extends BasePageEntity {
/** /**
* UUID * UUID
*/ */
@ApiModelProperty(value = "订单ID", example = "1", notes = "特定订单的ID")
private String id; private String id;
/** /**
* 顾客ID * 顾客ID
*/ */
@ApiModelProperty(value = "顾客ID", example = "1", notes = "打赏顾客的ID")
private String purchaserBy; private String purchaserBy;
/** /**
* 店员ID * 店员ID
*/ */
@ApiModelProperty(value = "店员ID", example = "1", notes = "接收打赏的店员ID")
private String acceptBy; private String acceptBy;
/** /**
* 打赏留言 * 打赏留言
*/ */
@ApiModelProperty(value = "打赏留言", example = "感谢服务", notes = "打赏时的留言内容,支持模糊查询")
private String rewardCon; private String rewardCon;
/** /**
* 打赏类型0:打赏礼物,1:自定义金额) * 打赏类型0:打赏礼物,1:自定义金额)
*/ */
@ApiModelProperty(value = "打赏类型", example = "0", notes = "0:打赏礼物,1:自定义金额")
private String rewardType; private String rewardType;
/** /**
* 礼物ID * 礼物ID
*/ */
@ApiModelProperty(value = "礼物ID", example = "1", notes = "打赏礼物的ID")
private String commodityId; private String commodityId;
/** /**
* 打赏时间 * 打赏时间
*/ */
@ApiModelProperty(value = "打赏时间范围", example = "['2024-01-01 00:00:00','2024-12-31 23:59:59']", notes = "打赏时间范围,包含开始和结束时间")
private List<String> purchaserTime; private List<String> purchaserTime;
/** /**
* 数据是否隐藏0:显示1:隐藏) * 数据是否隐藏0:显示1:隐藏)
*/ */
@ApiModelProperty(value = "是否隐藏", example = "0", notes = "数据是否隐藏0:显示1:隐藏")
private String hidden; private String hidden;

View File

@@ -2,6 +2,8 @@ package com.starry.admin.modules.order.module.vo;
import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat; import org.springframework.format.annotation.DateTimeFormat;
@@ -13,80 +15,95 @@ import java.time.LocalDateTime;
* @author admin * @author admin
*/ */
@Data @Data
@ApiModel(value = "打赏订单返回数据", description = "打赏订单信息的返回数据")
public class PlayOrderRewardReturnVo { public class PlayOrderRewardReturnVo {
/** /**
* 订单ID * 订单ID
*/ */
@ApiModelProperty(value = "订单ID", example = "1")
private String id; private String id;
/** /**
* 用户ID * 用户ID
*/ */
@ApiModelProperty(value = "顾客ID", example = "1")
private String customId; private String customId;
/** /**
* 用户昵称 * 用户昵称
*/ */
@ApiModelProperty(value = "顾客昵称", example = "张三")
private String customNickname; private String customNickname;
/** /**
* 用户头像 * 用户头像
*/ */
@ApiModelProperty(value = "顾客头像", example = "https://example.com/avatar.jpg")
private String customAvatar; private String customAvatar;
/** /**
* 店员ID * 店员ID
*/ */
@ApiModelProperty(value = "店员ID", example = "1")
private String clerkId; private String clerkId;
/** /**
* 店员昵称 * 店员昵称
*/ */
@ApiModelProperty(value = "店员昵称", example = "小明")
private String clerkNickname; private String clerkNickname;
/** /**
* 店员头像 * 店员头像
*/ */
@ApiModelProperty(value = "店员头像", example = "https://example.com/clerk_avatar.jpg")
private String clerkAvatar; private String clerkAvatar;
/** /**
* 打赏类型 * 打赏类型
*/ */
@ApiModelProperty(value = "打赏类型", example = "0", notes = "0:打赏礼物,1:自定义金额")
private String rewardType; private String rewardType;
/** /**
* 订单金额 * 订单金额
*/ */
@ApiModelProperty(value = "订单金额", example = "100.00")
private String orderMoney; private String orderMoney;
/** /**
* 支付金额 * 支付金额
*/ */
@ApiModelProperty(value = "支付金额", example = "100.00")
private String finalAmount; private String finalAmount;
/** /**
* 商品ID * 商品ID
*/ */
@ApiModelProperty(value = "商品ID", example = "1")
private String commodityId; private String commodityId;
/** /**
* 商品类型[0:礼物1服务] * 商品类型[0:礼物1服务]
*/ */
@ApiModelProperty(value = "商品类型", example = "0", notes = "0:礼物1服务")
private String commodityType; private String commodityType;
/** /**
* 商品名称 * 商品名称
*/ */
@ApiModelProperty(value = "商品名称", example = "爱心礼物")
private String commodityName; private String commodityName;
/** /**
* 商品单价 * 商品单价
*/ */
@ApiModelProperty(value = "商品单价", example = "50.00")
private BigDecimal commodityPrice; private BigDecimal commodityPrice;
/** /**
@@ -94,6 +111,7 @@ public class PlayOrderRewardReturnVo {
* *
* @since 2024/5/8 16:44 * @since 2024/5/8 16:44
**/ **/
@ApiModelProperty(value = "服务时长", example = "30", notes = "服务的时长,单位分钟")
private String serviceDuration; private String serviceDuration;
@@ -101,6 +119,7 @@ public class PlayOrderRewardReturnVo {
/** /**
* 打赏留言 * 打赏留言
*/ */
@ApiModelProperty(value = "打赏留言", example = "感谢服务")
private String remark; private String remark;
/** /**
@@ -108,6 +127,7 @@ public class PlayOrderRewardReturnVo {
*/ */
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
@ApiModelProperty(value = "打赏时间", example = "2024-01-01 12:00:00")
private LocalDateTime purchaserTime; private LocalDateTime purchaserTime;
} }

View File

@@ -6,6 +6,12 @@ import com.starry.admin.modules.personnel.service.IPlayBalanceDetailsInfoService
import com.starry.common.annotation.Log; import com.starry.common.annotation.Log;
import com.starry.common.enums.BusinessType; import com.starry.common.enums.BusinessType;
import com.starry.common.result.R; import com.starry.common.result.R;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import io.swagger.annotations.ApiResponse;
import io.swagger.annotations.ApiResponses;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
@@ -17,6 +23,7 @@ import javax.annotation.Resource;
* @author admin * @author admin
* @since 2024-04-30 * @since 2024-04-30
*/ */
@Api(tags = "余额明细管理", description = "余额明细信息管理相关接口,包括查询、修改和删除等操作")
@RestController @RestController
@RequestMapping("/balance/details") @RequestMapping("/balance/details")
public class PlayBalanceDetailsInfoController { public class PlayBalanceDetailsInfoController {
@@ -27,14 +34,23 @@ public class PlayBalanceDetailsInfoController {
/** /**
* 查询余额明细列表 * 查询余额明细列表
*/ */
@ApiOperation(value = "分页查询明细列表", notes = "分页查询余额明细信息列表")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功")
})
@PostMapping("/listByPage") @PostMapping("/listByPage")
public R list(@Validated @RequestBody PlayBalanceDetailsQueryVo vo) { public R list(@ApiParam(value = "查询条件", required = true) @Validated @RequestBody PlayBalanceDetailsQueryVo vo) {
return R.ok(playBalanceDetailsInfoService.selectByPage(vo)); return R.ok(playBalanceDetailsInfoService.selectByPage(vo));
} }
/** /**
* 获取余额明细详细信息 * 获取余额明细详细信息
*/ */
@ApiOperation(value = "获取明细详情", notes = "根据ID获取余额明细详细信息")
@ApiImplicitParam(name = "id", value = "明细ID", required = true, paramType = "path", dataType = "String", example = "1")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = PlayBalanceDetailsInfoEntity.class)
})
@GetMapping(value = "/{id}") @GetMapping(value = "/{id}")
public R getInfo(@PathVariable("id") String id) { public R getInfo(@PathVariable("id") String id) {
return R.ok(playBalanceDetailsInfoService.selectPlayBalanceDetailsInfoById(id)); return R.ok(playBalanceDetailsInfoService.selectPlayBalanceDetailsInfoById(id));
@@ -44,10 +60,16 @@ public class PlayBalanceDetailsInfoController {
/** /**
* 修改余额明细 * 修改余额明细
*/ */
@ApiOperation(value = "修改明细信息", notes = "修改余额明细信息")
@ApiImplicitParam(name = "id", value = "明细ID", required = true, paramType = "path", dataType = "String", example = "1")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功"),
@ApiResponse(code = 500, message = "修改失败,包含详细错误信息")
})
//@PreAuthorize("@customSs.hasPermission('balance:details:update')") //@PreAuthorize("@customSs.hasPermission('balance:details:update')")
@Log(title = "余额明细", businessType = BusinessType.UPDATE) @Log(title = "余额明细", businessType = BusinessType.UPDATE)
@PostMapping(value = "/update/{id}") @PostMapping(value = "/update/{id}")
public R update(@PathVariable String id, @RequestBody PlayBalanceDetailsInfoEntity playBalanceDetailsInfo) { public R update(@PathVariable String id, @ApiParam(value = "明细信息", required = true) @RequestBody PlayBalanceDetailsInfoEntity playBalanceDetailsInfo) {
playBalanceDetailsInfo.setId(id); playBalanceDetailsInfo.setId(id);
boolean success = playBalanceDetailsInfoService.update(playBalanceDetailsInfo); boolean success = playBalanceDetailsInfoService.update(playBalanceDetailsInfo);
if (success) { if (success) {
@@ -59,6 +81,11 @@ public class PlayBalanceDetailsInfoController {
/** /**
* 删除余额明细 * 删除余额明细
*/ */
@ApiOperation(value = "删除明细信息", notes = "根据ID批量删除余额明细信息")
@ApiImplicitParam(name = "ids", value = "明细ID数组", required = true, paramType = "path", dataType = "String[]", example = "1,2,3")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功")
})
//@PreAuthorize("@customSs.hasPermission('balance:details:delete')") //@PreAuthorize("@customSs.hasPermission('balance:details:delete')")
@Log(title = "余额明细", businessType = BusinessType.DELETE) @Log(title = "余额明细", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}") @DeleteMapping("/{ids}")

View File

@@ -16,6 +16,12 @@ import com.starry.common.annotation.Log;
import com.starry.common.enums.BusinessType; import com.starry.common.enums.BusinessType;
import com.starry.common.result.R; import com.starry.common.result.R;
import com.starry.common.utils.ConvertUtil; import com.starry.common.utils.ConvertUtil;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import io.swagger.annotations.ApiResponse;
import io.swagger.annotations.ApiResponses;
import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
@@ -29,6 +35,7 @@ import java.time.LocalDateTime;
* @author admin * @author admin
* @since 2024-06-14 * @since 2024-06-14
*/ */
@Api(tags = "管理员管理", description = "管理员信息管理相关接口,包括查询、新增、修改和删除等操作")
@RestController @RestController
@RequestMapping("/personnel/admin") @RequestMapping("/personnel/admin")
public class PlayPersonnelAdminInfoController { public class PlayPersonnelAdminInfoController {
@@ -49,8 +56,12 @@ public class PlayPersonnelAdminInfoController {
/** /**
* 查询管理员管理信息列表 * 查询管理员管理信息列表
*/ */
@ApiOperation(value = "分页查询管理员列表", notes = "分页查询管理员信息列表")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = PlayPersonnelAdminInfoReturnVo.class, responseContainer = "Page")
})
@PostMapping("/listByPage") @PostMapping("/listByPage")
public R listByPage(@Validated @RequestBody PlayPersonnelAdminInfoQueryVo vo) { public R listByPage(@ApiParam(value = "查询条件", required = true) @Validated @RequestBody PlayPersonnelAdminInfoQueryVo vo) {
IPage<PlayPersonnelAdminInfoReturnVo> list = playPersonnelAdminInfoService.selectByPage(vo); IPage<PlayPersonnelAdminInfoReturnVo> list = playPersonnelAdminInfoService.selectByPage(vo);
return R.ok(list); return R.ok(list);
} }
@@ -59,6 +70,11 @@ public class PlayPersonnelAdminInfoController {
/** /**
* 获取管理员管理详细信息 * 获取管理员管理详细信息
*/ */
@ApiOperation(value = "获取管理员详情", notes = "根据ID获取管理员详细信息")
@ApiImplicitParam(name = "id", value = "管理员ID", required = true, paramType = "path", dataType = "String", example = "1")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = PlayPersonnelAdminInfoEntity.class)
})
@GetMapping(value = "/{id}") @GetMapping(value = "/{id}")
public R getInfo(@PathVariable("id") String id) { public R getInfo(@PathVariable("id") String id) {
return R.ok(playPersonnelAdminInfoService.selectPlayPersonnelAdminInfoById(id)); return R.ok(playPersonnelAdminInfoService.selectPlayPersonnelAdminInfoById(id));
@@ -67,9 +83,14 @@ public class PlayPersonnelAdminInfoController {
/** /**
* 新增管理员管理信息 * 新增管理员管理信息
*/ */
@ApiOperation(value = "新增管理员信息", notes = "创建新的管理员信息")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功"),
@ApiResponse(code = 500, message = "添加失败,包含详细错误信息")
})
@Log(title = "管理员管理信息", businessType = BusinessType.INSERT) @Log(title = "管理员管理信息", businessType = BusinessType.INSERT)
@PostMapping("/createBaseInfo") @PostMapping("/createBaseInfo")
public R createBaseInfo(@Validated @RequestBody PlayPersonnelAdminInfoEditAddInfoVo vo) { public R createBaseInfo(@ApiParam(value = "管理员信息", required = true) @Validated @RequestBody PlayPersonnelAdminInfoEditAddInfoVo vo) {
//校验对应用户是否存在 //校验对应用户是否存在
SysUserEntity sysUserEntity = sysUserService.selectUserById(vo.getSysUserId()); SysUserEntity sysUserEntity = sysUserService.selectUserById(vo.getSysUserId());
//校验当前用户是否已经是组长 //校验当前用户是否已经是组长
@@ -93,9 +114,14 @@ public class PlayPersonnelAdminInfoController {
/** /**
* 修改管理员管理信息 * 修改管理员管理信息
*/ */
@ApiOperation(value = "修改管理员信息", notes = "修改管理员基本信息")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功"),
@ApiResponse(code = 500, message = "修改失败,包含详细错误信息")
})
@Log(title = "管理员管理信息", businessType = BusinessType.UPDATE) @Log(title = "管理员管理信息", businessType = BusinessType.UPDATE)
@PostMapping(value = "/updateBaseInfo") @PostMapping(value = "/updateBaseInfo")
public R updateBaseInfo(@Validated @RequestBody PlayPersonnelAdminInfoEditBaseInfoVo vo) { public R updateBaseInfo(@ApiParam(value = "管理员信息", required = true) @Validated @RequestBody PlayPersonnelAdminInfoEditBaseInfoVo vo) {
//校验对应用户是否存在 //校验对应用户是否存在
SysUserEntity sysUserEntity = sysUserService.selectUserById(vo.getSysUserId()); SysUserEntity sysUserEntity = sysUserService.selectUserById(vo.getSysUserId());
@@ -117,6 +143,11 @@ public class PlayPersonnelAdminInfoController {
/** /**
* 删除管理员管理 * 删除管理员管理
*/ */
@ApiOperation(value = "删除管理员信息", notes = "根据ID批量删除管理员信息")
@ApiImplicitParam(name = "ids", value = "管理员ID数组", required = true, paramType = "path", dataType = "String[]", example = "1,2,3")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功")
})
@PreAuthorize("@customSs.hasPermission('play:info:remove')") @PreAuthorize("@customSs.hasPermission('play:info:remove')")
@Log(title = "管理员管理", businessType = BusinessType.DELETE) @Log(title = "管理员管理", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}") @DeleteMapping("/{ids}")

View File

@@ -19,6 +19,12 @@ import com.starry.common.enums.BusinessType;
import com.starry.common.result.R; import com.starry.common.result.R;
import com.starry.common.utils.ConvertUtil; import com.starry.common.utils.ConvertUtil;
import com.starry.common.utils.IdUtils; import com.starry.common.utils.IdUtils;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import io.swagger.annotations.ApiResponse;
import io.swagger.annotations.ApiResponses;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
@@ -32,6 +38,7 @@ import java.util.List;
* @author admin * @author admin
* @since 2024-05-31 * @since 2024-05-31
*/ */
@Api(tags = "店员分组管理", description = "店员分组信息管理相关接口,包括查询、新增、修改和删除等操作")
@RestController @RestController
@RequestMapping("/personnel/group") @RequestMapping("/personnel/group")
public class PlayPersonnelGroupInfoController { public class PlayPersonnelGroupInfoController {
@@ -57,8 +64,12 @@ public class PlayPersonnelGroupInfoController {
/** /**
* 查询店员分类信息列表 * 查询店员分类信息列表
*/ */
@ApiOperation(value = "分页查询分组列表", notes = "分页查询店员分组信息列表")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = PlayPersonnelGroupInfoReturnVo.class, responseContainer = "Page")
})
@PostMapping("/listByPage") @PostMapping("/listByPage")
public R listByPage(@Validated @RequestBody PlayPersonnelGroupInfoQueryVo vo) { public R listByPage(@ApiParam(value = "查询条件", required = true) @Validated @RequestBody PlayPersonnelGroupInfoQueryVo vo) {
IPage<PlayPersonnelGroupInfoReturnVo> list = playClerkGroupInfoService.selectByPage(vo); IPage<PlayPersonnelGroupInfoReturnVo> list = playClerkGroupInfoService.selectByPage(vo);
for (PlayPersonnelGroupInfoReturnVo record : list.getRecords()) { for (PlayPersonnelGroupInfoReturnVo record : list.getRecords()) {
List<PlayClerkUserInfoEntity> clerkUserInfoEntities = playClerkUserInfoService.listAllByGroupId(record.getId()); List<PlayClerkUserInfoEntity> clerkUserInfoEntities = playClerkUserInfoService.listAllByGroupId(record.getId());
@@ -78,9 +89,14 @@ public class PlayPersonnelGroupInfoController {
/** /**
* 新增店员分组信息 * 新增店员分组信息
*/ */
@ApiOperation(value = "新增分组信息", notes = "创建新的店员分组信息")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功"),
@ApiResponse(code = 500, message = "添加失败,包含详细错误信息")
})
@Log(title = "店员分组信息", businessType = BusinessType.INSERT) @Log(title = "店员分组信息", businessType = BusinessType.INSERT)
@PostMapping("/createBaseInfo") @PostMapping("/createBaseInfo")
public R createBaseInfo(@Validated @RequestBody PlayPersonnelGroupInfoEditAddInfoVo vo) { public R createBaseInfo(@ApiParam(value = "分组信息", required = true) @Validated @RequestBody PlayPersonnelGroupInfoEditAddInfoVo vo) {
//校验对应用户是否存在 //校验对应用户是否存在
SysUserEntity sysUserEntity = sysUserService.selectUserById(vo.getSysUserId()); SysUserEntity sysUserEntity = sysUserService.selectUserById(vo.getSysUserId());
//校验当前用户是否已经是组长 //校验当前用户是否已经是组长
@@ -105,9 +121,14 @@ public class PlayPersonnelGroupInfoController {
/** /**
* 修改店员分组信息 * 修改店员分组信息
*/ */
@ApiOperation(value = "修改分组信息", notes = "修改店员分组基本信息")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功"),
@ApiResponse(code = 500, message = "修改失败,包含详细错误信息")
})
@Log(title = "店员分组信息", businessType = BusinessType.UPDATE) @Log(title = "店员分组信息", businessType = BusinessType.UPDATE)
@PostMapping(value = "/updateBaseInfo") @PostMapping(value = "/updateBaseInfo")
public R updateBaseInfo(@Validated @RequestBody PlayPersonnelGroupInfoEditBaseInfoVo vo) { public R updateBaseInfo(@ApiParam(value = "分组信息", required = true) @Validated @RequestBody PlayPersonnelGroupInfoEditBaseInfoVo vo) {
SysUserEntity sysUserEntity = sysUserService.selectUserById(vo.getSysUserId()); SysUserEntity sysUserEntity = sysUserService.selectUserById(vo.getSysUserId());
//校验当前用户是否已经是组长 //校验当前用户是否已经是组长
PlayPersonnelGroupInfoEntity groupInfoEntity = playClerkGroupInfoService.selectByUserId(vo.getSysUserId()); PlayPersonnelGroupInfoEntity groupInfoEntity = playClerkGroupInfoService.selectByUserId(vo.getSysUserId());
@@ -130,6 +151,12 @@ public class PlayPersonnelGroupInfoController {
/** /**
* 删除店员分组信息 * 删除店员分组信息
*/ */
@ApiOperation(value = "删除分组信息", notes = "根据ID批量删除店员分组信息")
@ApiImplicitParam(name = "ids", value = "分组ID数组", required = true, paramType = "path", dataType = "String[]", example = "1,2,3")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功"),
@ApiResponse(code = 500, message = "删除失败,包含详细错误信息")
})
@Log(title = "店员分组信息", businessType = BusinessType.DELETE) @Log(title = "店员分组信息", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}") @DeleteMapping("/{ids}")
public R remove(@PathVariable String[] ids) { public R remove(@PathVariable String[] ids) {

View File

@@ -6,6 +6,11 @@ import com.starry.admin.modules.personnel.module.vo.PlayPersonnelUserInfoReturnV
import com.starry.admin.modules.system.module.entity.SysUserEntity; import com.starry.admin.modules.system.module.entity.SysUserEntity;
import com.starry.admin.modules.system.service.SysUserService; import com.starry.admin.modules.system.service.SysUserService;
import com.starry.common.result.R; import com.starry.common.result.R;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import io.swagger.annotations.ApiResponse;
import io.swagger.annotations.ApiResponses;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
@@ -18,6 +23,7 @@ import java.util.List;
* @author admin * @author admin
* @since 2024-06-14 * @since 2024-06-14
*/ */
@Api(tags = "系统用户管理", description = "系统用户信息管理相关接口,包括查询等操作")
@RestController @RestController
@RequestMapping("/personnel/user") @RequestMapping("/personnel/user")
public class PlayPersonnelUserInfoController { public class PlayPersonnelUserInfoController {
@@ -29,8 +35,12 @@ public class PlayPersonnelUserInfoController {
/** /**
* 分页查询账户信息列表 * 分页查询账户信息列表
*/ */
@ApiOperation(value = "分页查询用户列表", notes = "分页查询系统用户信息列表")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = PlayPersonnelUserInfoReturnVo.class, responseContainer = "Page")
})
@PostMapping("/listByPage") @PostMapping("/listByPage")
public R listByPage(@Validated @RequestBody PlayPersonnelUserInfoQueryVo vo) { public R listByPage(@ApiParam(value = "查询条件", required = true) @Validated @RequestBody PlayPersonnelUserInfoQueryVo vo) {
IPage<PlayPersonnelUserInfoReturnVo> list = sysUserService.selectByPage(vo); IPage<PlayPersonnelUserInfoReturnVo> list = sysUserService.selectByPage(vo);
return R.ok(list); return R.ok(list);
} }
@@ -39,6 +49,10 @@ public class PlayPersonnelUserInfoController {
/** /**
* 查询所有账户信息列表 * 查询所有账户信息列表
*/ */
@ApiOperation(value = "查询所有用户", notes = "查询所有系统用户信息")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = SysUserEntity.class, responseContainer = "List")
})
@GetMapping("/listAll") @GetMapping("/listAll")
public R listAll() { public R listAll() {
List<SysUserEntity> list = sysUserService.selectAll(); List<SysUserEntity> list = sysUserService.selectAll();

View File

@@ -16,6 +16,12 @@ import com.starry.common.annotation.Log;
import com.starry.common.enums.BusinessType; import com.starry.common.enums.BusinessType;
import com.starry.common.result.R; import com.starry.common.result.R;
import com.starry.common.utils.ConvertUtil; import com.starry.common.utils.ConvertUtil;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import io.swagger.annotations.ApiResponse;
import io.swagger.annotations.ApiResponses;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
@@ -28,6 +34,7 @@ import java.time.LocalDateTime;
* @author admin * @author admin
* @since 2024-06-14 * @since 2024-06-14
*/ */
@Api(tags = "客服管理", description = "客服信息管理相关接口,包括查询、新增、修改和删除等操作")
@RestController @RestController
@RequestMapping("/personnel/waiter") @RequestMapping("/personnel/waiter")
public class PlayPersonnelWaiterInfoController { public class PlayPersonnelWaiterInfoController {
@@ -48,8 +55,12 @@ public class PlayPersonnelWaiterInfoController {
/** /**
* 查询客服信息列表 * 查询客服信息列表
*/ */
@ApiOperation(value = "分页查询客服列表", notes = "分页查询客服信息列表")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = PlayPersonnelWaiterInfoReturnVo.class, responseContainer = "Page")
})
@PostMapping("/listByPage") @PostMapping("/listByPage")
public R listByPage(@Validated @RequestBody PlayPersonnelWaiterInfoQueryVo vo) { public R listByPage(@ApiParam(value = "查询条件", required = true) @Validated @RequestBody PlayPersonnelWaiterInfoQueryVo vo) {
IPage<PlayPersonnelWaiterInfoReturnVo> list = playClerkWaiterInfoService.selectByPage(vo); IPage<PlayPersonnelWaiterInfoReturnVo> list = playClerkWaiterInfoService.selectByPage(vo);
return R.ok(list); return R.ok(list);
} }
@@ -57,9 +68,14 @@ public class PlayPersonnelWaiterInfoController {
/** /**
* 新增客服信息列表 * 新增客服信息列表
*/ */
@ApiOperation(value = "新增客服信息", notes = "创建新的客服信息")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功"),
@ApiResponse(code = 500, message = "添加失败,包含详细错误信息")
})
@Log(title = "客服管理信息", businessType = BusinessType.INSERT) @Log(title = "客服管理信息", businessType = BusinessType.INSERT)
@PostMapping("/createBaseInfo") @PostMapping("/createBaseInfo")
public R createBaseInfo(@Validated @RequestBody PlayPersonnelWaiterInfoEditAddInfoVo vo) { public R createBaseInfo(@ApiParam(value = "客服信息", required = true) @Validated @RequestBody PlayPersonnelWaiterInfoEditAddInfoVo vo) {
//校验对应用户是否存在 //校验对应用户是否存在
SysUserEntity sysUserEntity = sysUserService.selectUserById(vo.getSysUserId()); SysUserEntity sysUserEntity = sysUserService.selectUserById(vo.getSysUserId());
//校验当前用户是否已经是组长 //校验当前用户是否已经是组长
@@ -83,9 +99,14 @@ public class PlayPersonnelWaiterInfoController {
/** /**
* 修改客服信息列表 * 修改客服信息列表
*/ */
@ApiOperation(value = "修改客服信息", notes = "修改客服基本信息")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功"),
@ApiResponse(code = 500, message = "修改失败,包含详细错误信息")
})
@Log(title = "客服管理信息", businessType = BusinessType.UPDATE) @Log(title = "客服管理信息", businessType = BusinessType.UPDATE)
@PostMapping(value = "/updateBaseInfo") @PostMapping(value = "/updateBaseInfo")
public R updateBaseInfo(@Validated @RequestBody PlayPersonnelWaiterInfoEditBaseInfoVo vo) { public R updateBaseInfo(@ApiParam(value = "客服信息", required = true) @Validated @RequestBody PlayPersonnelWaiterInfoEditBaseInfoVo vo) {
//校验对应用户是否存在 //校验对应用户是否存在
SysUserEntity sysUserEntity = sysUserService.selectUserById(vo.getSysUserId()); SysUserEntity sysUserEntity = sysUserService.selectUserById(vo.getSysUserId());
@@ -111,6 +132,12 @@ public class PlayPersonnelWaiterInfoController {
/** /**
* 删除客服信息 * 删除客服信息
*/ */
@ApiOperation(value = "删除客服信息", notes = "根据ID批量删除客服信息")
@ApiImplicitParam(name = "ids", value = "客服ID数组", required = true, paramType = "path", dataType = "String[]", example = "1,2,3")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功"),
@ApiResponse(code = 500, message = "删除失败,包含详细错误信息")
})
@Log(title = "客服信息", businessType = BusinessType.DELETE) @Log(title = "客服信息", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}") @DeleteMapping("/{ids}")
public R remove(@PathVariable String[] ids) { public R remove(@PathVariable String[] ids) {

View File

@@ -1,5 +1,7 @@
package com.starry.admin.modules.personnel.module.vo; package com.starry.admin.modules.personnel.module.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import org.hibernate.validator.constraints.Length; import org.hibernate.validator.constraints.Length;
@@ -12,12 +14,14 @@ import javax.validation.constraints.NotBlank;
* @since 2024/6/14 14:45 * @since 2024/6/14 14:45
**/ **/
@Data @Data
@ApiModel(value = "新增分组参数", description = "新增店员分组信息的请求参数")
public class PlayPersonnelGroupInfoEditAddInfoVo { public class PlayPersonnelGroupInfoEditAddInfoVo {
/** /**
* 分组名称 * 分组名称
*/ */
@NotBlank(message = "用户ID不能为空") @NotBlank(message = "用户ID不能为空")
@ApiModelProperty(value = "用户ID", required = true, example = "1", notes = "系统用户ID")
private String sysUserId; private String sysUserId;
@@ -26,6 +30,7 @@ public class PlayPersonnelGroupInfoEditAddInfoVo {
*/ */
@NotBlank(message = "分组名称不能为空") @NotBlank(message = "分组名称不能为空")
@Length(min = 1, max = 100, message = "字符长度在1-100之间") @Length(min = 1, max = 100, message = "字符长度在1-100之间")
@ApiModelProperty(value = "分组名称", required = true, example = "销售组", notes = "分组的名称1-100字符")
private String groupName; private String groupName;
/** /**
@@ -33,6 +38,7 @@ public class PlayPersonnelGroupInfoEditAddInfoVo {
*/ */
@NotBlank(message = "组长名称不能为空") @NotBlank(message = "组长名称不能为空")
@Length(min = 1, max = 100, message = "字符长度在1-100之间") @Length(min = 1, max = 100, message = "字符长度在1-100之间")
@ApiModelProperty(value = "组长名称", required = true, example = "张三", notes = "组长的名称1-100字符")
private String leaderName; private String leaderName;

View File

@@ -1,5 +1,7 @@
package com.starry.admin.modules.personnel.module.vo; package com.starry.admin.modules.personnel.module.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import org.hibernate.validator.constraints.Length; import org.hibernate.validator.constraints.Length;
@@ -12,6 +14,7 @@ import javax.validation.constraints.NotBlank;
* @since 2024/6/14 14:45 * @since 2024/6/14 14:45
**/ **/
@Data @Data
@ApiModel(value = "修改分组参数", description = "修改店员分组信息的请求参数")
public class PlayPersonnelGroupInfoEditBaseInfoVo { public class PlayPersonnelGroupInfoEditBaseInfoVo {
/** /**
* UUID * UUID
@@ -19,6 +22,7 @@ public class PlayPersonnelGroupInfoEditBaseInfoVo {
* @since 2024/6/14 16:08 * @since 2024/6/14 16:08
**/ **/
@NotBlank(message = "ID不能为空") @NotBlank(message = "ID不能为空")
@ApiModelProperty(value = "分组ID", required = true, example = "1", notes = "需要修改的分组ID")
private String id; private String id;
@@ -26,6 +30,7 @@ public class PlayPersonnelGroupInfoEditBaseInfoVo {
* 分组名称 * 分组名称
*/ */
@NotBlank(message = "用户ID不能为空") @NotBlank(message = "用户ID不能为空")
@ApiModelProperty(value = "用户ID", required = true, example = "1", notes = "系统用户ID")
private String sysUserId; private String sysUserId;
@@ -34,6 +39,7 @@ public class PlayPersonnelGroupInfoEditBaseInfoVo {
*/ */
@NotBlank(message = "分组名称不能为空") @NotBlank(message = "分组名称不能为空")
@Length(min = 1, max = 100, message = "字符长度在1-100之间") @Length(min = 1, max = 100, message = "字符长度在1-100之间")
@ApiModelProperty(value = "分组名称", required = true, example = "销售组", notes = "分组的名称1-100字符")
private String groupName; private String groupName;
/** /**
@@ -41,6 +47,7 @@ public class PlayPersonnelGroupInfoEditBaseInfoVo {
*/ */
@NotBlank(message = "组长名称不能为空") @NotBlank(message = "组长名称不能为空")
@Length(min = 1, max = 100, message = "字符长度在1-100之间") @Length(min = 1, max = 100, message = "字符长度在1-100之间")
@ApiModelProperty(value = "组长名称", required = true, example = "张三", notes = "组长的名称1-100字符")
private String leaderName; private String leaderName;

View File

@@ -1,6 +1,8 @@
package com.starry.admin.modules.personnel.module.vo; package com.starry.admin.modules.personnel.module.vo;
import com.starry.common.domain.BasePageEntity; import com.starry.common.domain.BasePageEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import lombok.EqualsAndHashCode; import lombok.EqualsAndHashCode;
@@ -12,11 +14,13 @@ import lombok.EqualsAndHashCode;
**/ **/
@EqualsAndHashCode(callSuper = true) @EqualsAndHashCode(callSuper = true)
@Data @Data
@ApiModel(value = "分组查询参数", description = "查询店员分组信息的条件参数")
public class PlayPersonnelGroupInfoQueryVo extends BasePageEntity { public class PlayPersonnelGroupInfoQueryVo extends BasePageEntity {
/** /**
* 分组名称 * 分组名称
*/ */
@ApiModelProperty(value = "组长名称", example = "张三", notes = "组长的名称,支持模糊查询")
private String leaderName; private String leaderName;

View File

@@ -1,6 +1,8 @@
package com.starry.admin.modules.personnel.module.vo; package com.starry.admin.modules.personnel.module.vo;
import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat; import org.springframework.format.annotation.DateTimeFormat;
@@ -13,61 +15,72 @@ import java.time.LocalDateTime;
* @since 2024/6/14 14:45 * @since 2024/6/14 14:45
**/ **/
@Data @Data
@ApiModel(value = "分组返回数据", description = "店员分组信息的返回数据")
public class PlayPersonnelGroupInfoReturnVo { public class PlayPersonnelGroupInfoReturnVo {
/** /**
* UUID * UUID
*/ */
@ApiModelProperty(value = "分组ID", example = "1")
private String id; private String id;
/** /**
* 租户ID * 租户ID
*/ */
@ApiModelProperty(value = "租户ID", example = "1")
private String tenantId; private String tenantId;
/** /**
* 用户ID * 用户ID
**/ **/
@ApiModelProperty(value = "用户ID", example = "1")
private String sysUserId; private String sysUserId;
/** /**
* 用户账号 * 用户账号
**/ **/
@ApiModelProperty(value = "用户账号", example = "admin")
private String sysUserCode; private String sysUserCode;
/** /**
* 分组名称 * 分组名称
*/ */
@ApiModelProperty(value = "分组名称", example = "销售组")
private String groupName; private String groupName;
/** /**
* 组长名称 * 组长名称
**/ **/
@ApiModelProperty(value = "组长名称", example = "张三")
private String leaderName; private String leaderName;
/** /**
* 排序 * 排序
*/ */
@ApiModelProperty(value = "排序", example = "1")
private Long sort; private Long sort;
/** /**
* 员工总数量 * 员工总数量
**/ **/
@ApiModelProperty(value = "员工总数", example = "10")
private Integer totalEmployeesNumber; private Integer totalEmployeesNumber;
/** /**
* 上架员工数量 * 上架员工数量
**/ **/
@ApiModelProperty(value = "上架员工数", example = "5")
private Integer listingEmployeesNumber; private Integer listingEmployeesNumber;
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
@ApiModelProperty(value = "添加时间", example = "2024-01-01 12:00:00")
private LocalDateTime addTime; private LocalDateTime addTime;

View File

@@ -1,6 +1,8 @@
package com.starry.admin.modules.personnel.module.vo; package com.starry.admin.modules.personnel.module.vo;
import com.starry.common.domain.BasePageEntity; import com.starry.common.domain.BasePageEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import lombok.EqualsAndHashCode; import lombok.EqualsAndHashCode;
@@ -12,31 +14,37 @@ import java.util.List;
**/ **/
@EqualsAndHashCode(callSuper = true) @EqualsAndHashCode(callSuper = true)
@Data @Data
@ApiModel(value = "用户查询参数", description = "查询系统用户信息的条件参数")
public class PlayPersonnelUserInfoQueryVo extends BasePageEntity { public class PlayPersonnelUserInfoQueryVo extends BasePageEntity {
/** /**
* 用户ID * 用户ID
*/ */
@ApiModelProperty(value = "系统用户ID", example = "1")
private String sysUserId; private String sysUserId;
/** /**
* 用户名称 * 用户名称
*/ */
@ApiModelProperty(value = "用户账号", example = "admin", notes = "用户登录账号")
private String userCode; private String userCode;
/** /**
* 角色类型[0:用户;1:店员;2:组长] * 角色类型[0:用户;1:店员;2:组长]
*/ */
@ApiModelProperty(value = "角色类型", example = "0", notes = "角色类型[0:用户;1:店员;2:组长]")
private String ruleType; private String ruleType;
/** /**
* 用户ID * 用户ID
*/ */
@ApiModelProperty(value = "用户ID", example = "1")
private String userId; private String userId;
@ApiModelProperty(value = "添加时间范围", example = "['2024-01-01 00:00:00','2024-12-31 23:59:59']", notes = "用户添加时间范围,包含开始和结束时间")
private List<String> addTime; private List<String> addTime;
} }

View File

@@ -1,5 +1,7 @@
package com.starry.admin.modules.personnel.module.vo; package com.starry.admin.modules.personnel.module.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
/** /**
@@ -7,28 +9,35 @@ import lombok.Data;
* @since 2024/6/15 下午9:42 * @since 2024/6/15 下午9:42
**/ **/
@Data @Data
@ApiModel(value = "用户返回数据", description = "系统用户信息的返回数据")
public class PlayPersonnelUserInfoReturnVo { public class PlayPersonnelUserInfoReturnVo {
/** /**
* 店员ID * 店员ID
*/ */
@ApiModelProperty(value = "店员ID", example = "1")
private String clerkId; private String clerkId;
/** /**
* 店员昵称 * 店员昵称
*/ */
@ApiModelProperty(value = "店员昵称", example = "小明")
private String clerkNickname; private String clerkNickname;
/** /**
* 店员头像 * 店员头像
*/ */
@ApiModelProperty(value = "店员头像", example = "https://example.com/avatar.jpg")
private String clerkAvatar; private String clerkAvatar;
@ApiModelProperty(value = "用户ID", example = "1")
private String userId; private String userId;
@ApiModelProperty(value = "用户账号", example = "admin")
private String userCode; private String userCode;
/** /**
* 创建时间 * 创建时间
*/ */
@ApiModelProperty(value = "创建时间", example = "2024-01-01 12:00:00")
private String addTime; private String addTime;
} }

View File

@@ -1,5 +1,7 @@
package com.starry.admin.modules.personnel.module.vo; package com.starry.admin.modules.personnel.module.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import org.hibernate.validator.constraints.Length; import org.hibernate.validator.constraints.Length;
@@ -12,12 +14,14 @@ import javax.validation.constraints.NotBlank;
* @since 2024/6/14 14:45 * @since 2024/6/14 14:45
**/ **/
@Data @Data
@ApiModel(value = "新增客服参数", description = "新增客服信息的请求参数")
public class PlayPersonnelWaiterInfoEditAddInfoVo { public class PlayPersonnelWaiterInfoEditAddInfoVo {
/** /**
* 分组名称 * 分组名称
*/ */
@NotBlank(message = "用户ID不能为空") @NotBlank(message = "用户ID不能为空")
@ApiModelProperty(value = "用户ID", required = true, example = "1", notes = "系统用户ID")
private String sysUserId; private String sysUserId;
@@ -26,6 +30,7 @@ public class PlayPersonnelWaiterInfoEditAddInfoVo {
*/ */
@NotBlank(message = "客服名称不能为空") @NotBlank(message = "客服名称不能为空")
@Length(min = 1, max = 100, message = "字符长度在1-100之间") @Length(min = 1, max = 100, message = "字符长度在1-100之间")
@ApiModelProperty(value = "客服名称", required = true, example = "张三", notes = "客服的名称1-100字符")
private String waiterName; private String waiterName;

View File

@@ -1,5 +1,7 @@
package com.starry.admin.modules.personnel.module.vo; package com.starry.admin.modules.personnel.module.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import org.hibernate.validator.constraints.Length; import org.hibernate.validator.constraints.Length;
@@ -12,6 +14,7 @@ import javax.validation.constraints.NotBlank;
* @since 2024/6/14 14:45 * @since 2024/6/14 14:45
**/ **/
@Data @Data
@ApiModel(value = "修改客服参数", description = "修改客服信息的请求参数")
public class PlayPersonnelWaiterInfoEditBaseInfoVo { public class PlayPersonnelWaiterInfoEditBaseInfoVo {
/** /**
* UUID * UUID
@@ -19,6 +22,7 @@ public class PlayPersonnelWaiterInfoEditBaseInfoVo {
* @since 2024/6/14 16:08 * @since 2024/6/14 16:08
**/ **/
@NotBlank(message = "ID不能为空") @NotBlank(message = "ID不能为空")
@ApiModelProperty(value = "客服ID", required = true, example = "1", notes = "需要修改的客服ID")
private String id; private String id;
@@ -26,6 +30,7 @@ public class PlayPersonnelWaiterInfoEditBaseInfoVo {
* 分组名称 * 分组名称
*/ */
@NotBlank(message = "用户ID不能为空") @NotBlank(message = "用户ID不能为空")
@ApiModelProperty(value = "用户ID", required = true, example = "1", notes = "系统用户ID")
private String sysUserId; private String sysUserId;
/** /**
@@ -33,6 +38,7 @@ public class PlayPersonnelWaiterInfoEditBaseInfoVo {
*/ */
@NotBlank(message = "客服名称不能为空") @NotBlank(message = "客服名称不能为空")
@Length(min = 1, max = 100, message = "字符长度在1-100之间") @Length(min = 1, max = 100, message = "字符长度在1-100之间")
@ApiModelProperty(value = "客服名称", required = true, example = "张三", notes = "客服的名称1-100字符")
private String waiterName; private String waiterName;

View File

@@ -1,6 +1,8 @@
package com.starry.admin.modules.personnel.module.vo; package com.starry.admin.modules.personnel.module.vo;
import com.starry.common.domain.BasePageEntity; import com.starry.common.domain.BasePageEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import lombok.EqualsAndHashCode; import lombok.EqualsAndHashCode;
@@ -12,11 +14,13 @@ import lombok.EqualsAndHashCode;
**/ **/
@EqualsAndHashCode(callSuper = true) @EqualsAndHashCode(callSuper = true)
@Data @Data
@ApiModel(value = "客服查询参数", description = "查询客服信息的条件参数")
public class PlayPersonnelWaiterInfoQueryVo extends BasePageEntity { public class PlayPersonnelWaiterInfoQueryVo extends BasePageEntity {
/** /**
* 分组名称 * 分组名称
*/ */
@ApiModelProperty(value = "客服名称", example = "张三", notes = "客服的名称,支持模糊查询")
private String waiterName; private String waiterName;

View File

@@ -1,6 +1,8 @@
package com.starry.admin.modules.personnel.module.vo; package com.starry.admin.modules.personnel.module.vo;
import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat; import org.springframework.format.annotation.DateTimeFormat;
@@ -13,38 +15,45 @@ import java.time.LocalDateTime;
* @since 2024/6/14 14:45 * @since 2024/6/14 14:45
**/ **/
@Data @Data
@ApiModel(value = "客服返回数据", description = "客服信息的返回数据")
public class PlayPersonnelWaiterInfoReturnVo { public class PlayPersonnelWaiterInfoReturnVo {
/** /**
* UUID * UUID
*/ */
@ApiModelProperty(value = "客服ID", example = "1")
private String id; private String id;
/** /**
* 租户ID * 租户ID
*/ */
@ApiModelProperty(value = "租户ID", example = "1")
private String tenantId; private String tenantId;
/** /**
* 用户ID * 用户ID
**/ **/
@ApiModelProperty(value = "用户ID", example = "1")
private String sysUserId; private String sysUserId;
/** /**
* 用户账号 * 用户账号
**/ **/
@ApiModelProperty(value = "用户账号", example = "admin")
private String sysUserCode; private String sysUserCode;
/** /**
* 客户名称 * 客户名称
*/ */
@ApiModelProperty(value = "客服名称", example = "张三")
private String waiterName; private String waiterName;
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
@ApiModelProperty(value = "添加时间", example = "2024-01-01 12:00:00")
private LocalDateTime addTime; private LocalDateTime addTime;

View File

@@ -6,6 +6,12 @@ import com.starry.admin.modules.shop.service.IPlayClerkGiftInfoService;
import com.starry.common.annotation.Log; import com.starry.common.annotation.Log;
import com.starry.common.enums.BusinessType; import com.starry.common.enums.BusinessType;
import com.starry.common.result.R; import com.starry.common.result.R;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import io.swagger.annotations.ApiResponse;
import io.swagger.annotations.ApiResponses;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource; import javax.annotation.Resource;
@@ -16,6 +22,7 @@ import javax.annotation.Resource;
* @author admin * @author admin
* @since 2024-05-25 * @since 2024-05-25
*/ */
@Api(tags = "店员礼物关联管理", description = "店员和礼物关系管理相关接口,包括查询、新增、修改和删除等操作")
@RestController @RestController
@RequestMapping("/play/clerkGift") @RequestMapping("/play/clerkGift")
public class PlayClerkGiftInfoController { public class PlayClerkGiftInfoController {
@@ -25,8 +32,12 @@ public class PlayClerkGiftInfoController {
/** /**
* 查询店员和礼物关系列表 * 查询店员和礼物关系列表
*/ */
@ApiOperation(value = "查询店员礼物关联列表", notes = "分页查询店员和礼物关系列表")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = PlayClerkGiftInfoEntity.class, responseContainer = "Page")
})
@GetMapping("/list") @GetMapping("/list")
public R list(PlayClerkGiftInfoEntity playClerkGiftInfo) { public R list(@ApiParam(value = "查询条件") PlayClerkGiftInfoEntity playClerkGiftInfo) {
IPage<PlayClerkGiftInfoEntity> list = playClerkGiftInfoService.selectPlayClerkGiftInfoByPage(playClerkGiftInfo); IPage<PlayClerkGiftInfoEntity> list = playClerkGiftInfoService.selectPlayClerkGiftInfoByPage(playClerkGiftInfo);
return R.ok(list); return R.ok(list);
} }
@@ -34,6 +45,11 @@ public class PlayClerkGiftInfoController {
/** /**
* 获取店员和礼物关系详细信息 * 获取店员和礼物关系详细信息
*/ */
@ApiOperation(value = "获取关联详情", notes = "根据ID获取店员和礼物关系详细信息")
@ApiImplicitParam(name = "id", value = "关联ID", required = true, paramType = "path", dataType = "String", example = "1")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = PlayClerkGiftInfoEntity.class)
})
@GetMapping(value = "/{id}") @GetMapping(value = "/{id}")
public R getInfo(@PathVariable("id") String id) { public R getInfo(@PathVariable("id") String id) {
return R.ok(playClerkGiftInfoService.selectPlayClerkGiftInfoById(id)); return R.ok(playClerkGiftInfoService.selectPlayClerkGiftInfoById(id));
@@ -42,9 +58,14 @@ public class PlayClerkGiftInfoController {
/** /**
* 新增店员和礼物关系 * 新增店员和礼物关系
*/ */
@ApiOperation(value = "新增关联信息", notes = "新增店员和礼物关系信息")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功"),
@ApiResponse(code = 500, message = "添加失败,包含详细错误信息")
})
@Log(title = "店员和礼物关系", businessType = BusinessType.INSERT) @Log(title = "店员和礼物关系", businessType = BusinessType.INSERT)
@PostMapping("/create") @PostMapping("/create")
public R create(@RequestBody PlayClerkGiftInfoEntity playClerkGiftInfo) { public R create(@ApiParam(value = "关联信息", required = true) @RequestBody PlayClerkGiftInfoEntity playClerkGiftInfo) {
boolean success = playClerkGiftInfoService.create(playClerkGiftInfo); boolean success = playClerkGiftInfoService.create(playClerkGiftInfo);
if (success) { if (success) {
return R.ok(); return R.ok();
@@ -55,9 +76,15 @@ public class PlayClerkGiftInfoController {
/** /**
* 修改店员和礼物关系 * 修改店员和礼物关系
*/ */
@ApiOperation(value = "修改关联信息", notes = "修改店员和礼物关系信息")
@ApiImplicitParam(name = "id", value = "关联ID", required = true, paramType = "path", dataType = "String", example = "1")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功"),
@ApiResponse(code = 500, message = "修改失败,包含详细错误信息")
})
@Log(title = "店员和礼物关系", businessType = BusinessType.UPDATE) @Log(title = "店员和礼物关系", businessType = BusinessType.UPDATE)
@PostMapping(value = "/update/{id}") @PostMapping(value = "/update/{id}")
public R update(@PathVariable String id, @RequestBody PlayClerkGiftInfoEntity playClerkGiftInfo) { public R update(@PathVariable String id, @ApiParam(value = "关联信息", required = true) @RequestBody PlayClerkGiftInfoEntity playClerkGiftInfo) {
playClerkGiftInfo.setId(id); playClerkGiftInfo.setId(id);
boolean success = playClerkGiftInfoService.update(playClerkGiftInfo); boolean success = playClerkGiftInfoService.update(playClerkGiftInfo);
if (success) { if (success) {
@@ -69,6 +96,11 @@ public class PlayClerkGiftInfoController {
/** /**
* 删除店员和礼物关系 * 删除店员和礼物关系
*/ */
@ApiOperation(value = "删除关联信息", notes = "根据ID批量删除店员和礼物关系信息")
@ApiImplicitParam(name = "ids", value = "关联ID数组", required = true, paramType = "path", dataType = "String[]", example = "1,2,3")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功")
})
@Log(title = "店员和礼物关系", businessType = BusinessType.DELETE) @Log(title = "店员和礼物关系", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}") @DeleteMapping("/{ids}")
public R remove(@PathVariable String[] ids) { public R remove(@PathVariable String[] ids) {

View File

@@ -16,6 +16,12 @@ import com.starry.common.annotation.Log;
import com.starry.common.enums.BusinessType; import com.starry.common.enums.BusinessType;
import com.starry.common.result.R; import com.starry.common.result.R;
import com.starry.common.utils.ConvertUtil; import com.starry.common.utils.ConvertUtil;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import io.swagger.annotations.ApiResponse;
import io.swagger.annotations.ApiResponses;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource; import javax.annotation.Resource;
@@ -31,6 +37,7 @@ import java.util.Map;
* @author admin * @author admin
* @since 2024-03-31 * @since 2024-03-31
*/ */
@Api(tags = "服务项目管理", description = "服务项目信息管理相关接口,包括查询、新增、修改和删除等操作")
@RestController @RestController
@RequestMapping("/shop/commodity") @RequestMapping("/shop/commodity")
public class PlayCommodityInfoController { public class PlayCommodityInfoController {
@@ -43,6 +50,10 @@ public class PlayCommodityInfoController {
@Resource @Resource
private IPlayCommodityAndLevelInfoService playCommodityAndLevelInfoService; private IPlayCommodityAndLevelInfoService playCommodityAndLevelInfoService;
@ApiOperation(value = "获取表头信息", notes = "获取店员等级表头信息")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功")
})
@GetMapping("/getTableName") @GetMapping("/getTableName")
public R getTableName() { public R getTableName() {
List<Map<String, String>> result = new ArrayList<>(); List<Map<String, String>> result = new ArrayList<>();
@@ -60,6 +71,10 @@ public class PlayCommodityInfoController {
/** /**
* 查询服务项目类型 * 查询服务项目类型
*/ */
@ApiOperation(value = "查询所有服务项目", notes = "查询所有服务项目类型及其子项目")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功")
})
@GetMapping("/listAll") @GetMapping("/listAll")
public R queryCommodityType() { public R queryCommodityType() {
List<Map<String, Object>> result = new ArrayList<>(); List<Map<String, Object>> result = new ArrayList<>();
@@ -85,8 +100,13 @@ public class PlayCommodityInfoController {
/** /**
* 修改服务项目类型 * 修改服务项目类型
*/ */
@ApiOperation(value = "更新服务项目价格", notes = "根据不同店员等级修改服务项目价格")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功"),
@ApiResponse(code = 500, message = "更新失败,包含详细错误信息")
})
@PostMapping("/updateInfo") @PostMapping("/updateInfo")
public R updateInfo(@RequestBody String s) { public R updateInfo(@ApiParam(value = "价格信息JSON", required = true) @RequestBody String s) {
JSONObject jsonObject = JSON.parseObject(s); JSONObject jsonObject = JSON.parseObject(s);
if (!jsonObject.containsKey("id")) { if (!jsonObject.containsKey("id")) {
throw new CustomException("请求参数错误,id不能为空"); throw new CustomException("请求参数错误,id不能为空");
@@ -118,6 +138,11 @@ public class PlayCommodityInfoController {
/** /**
* 获取服务项目详细信息 * 获取服务项目详细信息
*/ */
@ApiOperation(value = "获取服务项目详情", notes = "根据ID获取服务项目详细信息")
@ApiImplicitParam(name = "id", value = "服务项目ID", required = true, paramType = "path", dataType = "String", example = "1")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = PlayCommodityInfoEntity.class)
})
@GetMapping(value = "/{id}") @GetMapping(value = "/{id}")
public R getInfo(@PathVariable("id") String id) { public R getInfo(@PathVariable("id") String id) {
return R.ok(playCommodityInfoService.selectPlayCommodityInfoById(id)); return R.ok(playCommodityInfoService.selectPlayCommodityInfoById(id));
@@ -126,9 +151,14 @@ public class PlayCommodityInfoController {
/** /**
* 新增服务项目 * 新增服务项目
*/ */
@ApiOperation(value = "新增服务项目", notes = "新增服务项目信息")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功"),
@ApiResponse(code = 500, message = "添加失败,包含详细错误信息")
})
@Log(title = "服务项目", businessType = BusinessType.INSERT) @Log(title = "服务项目", businessType = BusinessType.INSERT)
@PostMapping("/create") @PostMapping("/create")
public R create(@RequestBody PlayCommodityInfoAddVo vo) { public R create(@ApiParam(value = "服务项目信息", required = true) @RequestBody PlayCommodityInfoAddVo vo) {
PlayCommodityInfoEntity entity = ConvertUtil.entityToVo(vo, PlayCommodityInfoEntity.class); PlayCommodityInfoEntity entity = ConvertUtil.entityToVo(vo, PlayCommodityInfoEntity.class);
boolean success = playCommodityInfoService.create(entity); boolean success = playCommodityInfoService.create(entity);
if (success) { if (success) {
@@ -140,9 +170,15 @@ public class PlayCommodityInfoController {
/** /**
* 修改服务项目 * 修改服务项目
*/ */
@ApiOperation(value = "修改服务项目", notes = "修改服务项目信息")
@ApiImplicitParam(name = "id", value = "服务项目ID", required = true, paramType = "path", dataType = "String", example = "1")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功"),
@ApiResponse(code = 500, message = "修改失败,包含详细错误信息")
})
@Log(title = "服务项目", businessType = BusinessType.UPDATE) @Log(title = "服务项目", businessType = BusinessType.UPDATE)
@PostMapping(value = "/update/{id}") @PostMapping(value = "/update/{id}")
public R update(@PathVariable String id, @RequestBody PlayCommodityInfoEntity playCommodityInfo) { public R update(@PathVariable String id, @ApiParam(value = "服务项目信息", required = true) @RequestBody PlayCommodityInfoEntity playCommodityInfo) {
playCommodityInfo.setId(id); playCommodityInfo.setId(id);
boolean success = playCommodityInfoService.update(playCommodityInfo); boolean success = playCommodityInfoService.update(playCommodityInfo);
if (success) { if (success) {
@@ -154,6 +190,11 @@ public class PlayCommodityInfoController {
/** /**
* 删除服务项目 * 删除服务项目
*/ */
@ApiOperation(value = "删除服务项目", notes = "根据ID批量删除服务项目信息")
@ApiImplicitParam(name = "ids", value = "服务项目ID数组", required = true, paramType = "path", dataType = "String[]", example = "1,2,3")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功")
})
@Log(title = "服务项目", businessType = BusinessType.DELETE) @Log(title = "服务项目", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}") @DeleteMapping("/{ids}")
public R remove(@PathVariable String[] ids) { public R remove(@PathVariable String[] ids) {

View File

@@ -9,6 +9,12 @@ import com.starry.admin.modules.shop.service.IPlayCouponDetailsService;
import com.starry.common.annotation.Log; import com.starry.common.annotation.Log;
import com.starry.common.enums.BusinessType; import com.starry.common.enums.BusinessType;
import com.starry.common.result.R; import com.starry.common.result.R;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import io.swagger.annotations.ApiResponse;
import io.swagger.annotations.ApiResponses;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
@@ -20,6 +26,7 @@ import javax.annotation.Resource;
* @author admin * @author admin
* @since 2024-07-04 * @since 2024-07-04
*/ */
@Api(tags = "优惠券记录管理", description = "优惠券使用记录管理相关接口,包括查询、新增、修改和删除等操作")
@RestController @RestController
@RequestMapping("/shop/couponRecord") @RequestMapping("/shop/couponRecord")
public class PlayCouponDetailsController { public class PlayCouponDetailsController {
@@ -30,9 +37,13 @@ public class PlayCouponDetailsController {
/** /**
* 查询优惠券详情列表 * 查询优惠券详情列表
*/ */
@ApiOperation(value = "分页查询优惠券记录", notes = "分页查询优惠券使用记录列表")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = PlayCouponDetailsReturnVo.class, responseContainer = "Page")
})
// @PreAuthorize("@customSs.hasPermission('shop:couponDetails:list')") // @PreAuthorize("@customSs.hasPermission('shop:couponDetails:list')")
@PostMapping("/listByPage") @PostMapping("/listByPage")
public R listByPage(@Validated @RequestBody PlayCouponDetailsQueryVo vo) { public R listByPage(@ApiParam(value = "查询条件", required = true) @Validated @RequestBody PlayCouponDetailsQueryVo vo) {
IPage<PlayCouponDetailsReturnVo> list = playCouponDetailsService.selectByPage(vo); IPage<PlayCouponDetailsReturnVo> list = playCouponDetailsService.selectByPage(vo);
return R.ok(list); return R.ok(list);
} }
@@ -40,6 +51,11 @@ public class PlayCouponDetailsController {
/** /**
* 获取优惠券详情详细信息 * 获取优惠券详情详细信息
*/ */
@ApiOperation(value = "获取优惠券记录详情", notes = "根据ID获取优惠券使用记录详细信息")
@ApiImplicitParam(name = "id", value = "记录ID", required = true, paramType = "path", dataType = "String", example = "1")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = PlayCouponDetailsEntity.class)
})
// @PreAuthorize("@customSs.hasPermission('shop:couponDetails:query')") // @PreAuthorize("@customSs.hasPermission('shop:couponDetails:query')")
@GetMapping(value = "/{id}") @GetMapping(value = "/{id}")
public R getInfo(@PathVariable("id") String id) { public R getInfo(@PathVariable("id") String id) {
@@ -49,10 +65,15 @@ public class PlayCouponDetailsController {
/** /**
* 新增优惠券详情 * 新增优惠券详情
*/ */
@ApiOperation(value = "新增优惠券记录", notes = "新增优惠券使用记录")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功"),
@ApiResponse(code = 500, message = "添加失败,包含详细错误信息")
})
// @PreAuthorize("@customSs.hasPermission('shop:couponDetails:create')") // @PreAuthorize("@customSs.hasPermission('shop:couponDetails:create')")
@Log(title = "优惠券详情", businessType = BusinessType.INSERT) @Log(title = "优惠券详情", businessType = BusinessType.INSERT)
@PostMapping("/create") @PostMapping("/create")
public R create(@RequestBody PlayCouponDetailsEntity playCouponDetails) { public R create(@ApiParam(value = "优惠券记录信息", required = true) @RequestBody PlayCouponDetailsEntity playCouponDetails) {
boolean success = playCouponDetailsService.create(playCouponDetails); boolean success = playCouponDetailsService.create(playCouponDetails);
if (success) { if (success) {
return R.ok(); return R.ok();
@@ -66,8 +87,13 @@ public class PlayCouponDetailsController {
* @param vo 优惠券实体信息 * @param vo 优惠券实体信息
* @since 2024/7/4 17:15 * @since 2024/7/4 17:15
**/ **/
@ApiOperation(value = "更新优惠券使用状态", notes = "批量更新优惠券使用状态")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功"),
@ApiResponse(code = 500, message = "更新失败,包含详细错误信息")
})
@PostMapping("/updateUseState") @PostMapping("/updateUseState")
public R update(PlayCouponDetailsUpdateUseStateVo vo) { public R update(@ApiParam(value = "更新状态信息", required = true) PlayCouponDetailsUpdateUseStateVo vo) {
for (String couponId : vo.getCouponIds()) { for (String couponId : vo.getCouponIds()) {
playCouponDetailsService.selectPlayCouponDetailsById(couponId); playCouponDetailsService.selectPlayCouponDetailsById(couponId);
PlayCouponDetailsEntity entity = new PlayCouponDetailsEntity(); PlayCouponDetailsEntity entity = new PlayCouponDetailsEntity();
@@ -81,10 +107,16 @@ public class PlayCouponDetailsController {
/** /**
* 修改优惠券详情 * 修改优惠券详情
*/ */
@ApiOperation(value = "修改优惠券记录", notes = "修改优惠券使用记录信息")
@ApiImplicitParam(name = "id", value = "记录ID", required = true, paramType = "path", dataType = "String", example = "1")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功"),
@ApiResponse(code = 500, message = "修改失败,包含详细错误信息")
})
// @PreAuthorize("@customSs.hasPermission('shop:couponDetails:edit')") // @PreAuthorize("@customSs.hasPermission('shop:couponDetails:edit')")
@Log(title = "优惠券详情", businessType = BusinessType.UPDATE) @Log(title = "优惠券详情", businessType = BusinessType.UPDATE)
@PostMapping(value = "/update/{id}") @PostMapping(value = "/update/{id}")
public R update(@PathVariable String id, @RequestBody PlayCouponDetailsEntity playCouponDetails) { public R update(@PathVariable String id, @ApiParam(value = "优惠券记录信息", required = true) @RequestBody PlayCouponDetailsEntity playCouponDetails) {
playCouponDetails.setId(id); playCouponDetails.setId(id);
boolean success = playCouponDetailsService.update(playCouponDetails); boolean success = playCouponDetailsService.update(playCouponDetails);
if (success) { if (success) {
@@ -96,6 +128,11 @@ public class PlayCouponDetailsController {
/** /**
* 删除优惠券详情 * 删除优惠券详情
*/ */
@ApiOperation(value = "删除优惠券记录", notes = "批量删除优惠券使用记录(逻辑删除)")
@ApiImplicitParam(name = "ids", value = "记录ID数组", required = true, paramType = "path", dataType = "String[]", example = "1,2,3")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功")
})
// @PreAuthorize("@customSs.hasPermission('shop:couponDetails:remove')") // @PreAuthorize("@customSs.hasPermission('shop:couponDetails:remove')")
@Log(title = "优惠券详情", businessType = BusinessType.DELETE) @Log(title = "优惠券详情", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}") @DeleteMapping("/{ids}")

View File

@@ -12,6 +12,12 @@ import com.starry.common.annotation.Log;
import com.starry.common.enums.BusinessType; import com.starry.common.enums.BusinessType;
import com.starry.common.result.R; import com.starry.common.result.R;
import com.starry.common.utils.ConvertUtil; import com.starry.common.utils.ConvertUtil;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import io.swagger.annotations.ApiResponse;
import io.swagger.annotations.ApiResponses;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
@@ -26,6 +32,7 @@ import java.time.format.DateTimeFormatter;
* @author admin * @author admin
* @since 2024-07-04 * @since 2024-07-04
*/ */
@Api(tags = "优惠券管理", description = "优惠券信息管理相关接口,包括查询、新增、修改、发放和删除等操作")
@RestController @RestController
@RequestMapping("/shop/coupon") @RequestMapping("/shop/coupon")
public class PlayCouponInfoController { public class PlayCouponInfoController {
@@ -41,9 +48,13 @@ public class PlayCouponInfoController {
/** /**
* 查询优惠券信息列表 * 查询优惠券信息列表
*/ */
@ApiOperation(value = "分页查询优惠券列表", notes = "分页查询优惠券信息列表")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = PlayCouponInfoReturnVo.class, responseContainer = "Page")
})
// @PreAuthorize("@customSs.hasPermission('shop:coupon:list')") // @PreAuthorize("@customSs.hasPermission('shop:coupon:list')")
@PostMapping("/listByPage") @PostMapping("/listByPage")
public R list(PlayCouponInfoQueryVo vo) { public R list(@ApiParam(value = "查询条件") PlayCouponInfoQueryVo vo) {
IPage<PlayCouponInfoReturnVo> list = playCouponInfoService.selectByPage(vo); IPage<PlayCouponInfoReturnVo> list = playCouponInfoService.selectByPage(vo);
return R.ok(list); return R.ok(list);
} }
@@ -53,8 +64,13 @@ public class PlayCouponInfoController {
* *
* @param vo 优惠券上下架对象 * @param vo 优惠券上下架对象
*/ */
@ApiOperation(value = "更新优惠券上下架状态", notes = "修改优惠券上下架状态")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功"),
@ApiResponse(code = 500, message = "更新失败,包含详细错误信息")
})
@PostMapping("/updateOnLineState") @PostMapping("/updateOnLineState")
public R updateOnLineState(@Validated @RequestBody PlayCouponInfoOnLineStateUpdateVo vo) { public R updateOnLineState(@ApiParam(value = "状态更新信息", required = true) @Validated @RequestBody PlayCouponInfoOnLineStateUpdateVo vo) {
playCouponInfoService.selectPlayCouponInfoById(vo.getId()); playCouponInfoService.selectPlayCouponInfoById(vo.getId());
PlayCouponInfoEntity entity = new PlayCouponInfoEntity(); PlayCouponInfoEntity entity = new PlayCouponInfoEntity();
entity.setId(vo.getId()); entity.setId(vo.getId());
@@ -69,8 +85,13 @@ public class PlayCouponInfoController {
* *
* @param vo 优惠券发放对象 * @param vo 优惠券发放对象
*/ */
@ApiOperation(value = "发放优惠券", notes = "向指定用户发放优惠券")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功"),
@ApiResponse(code = 500, message = "发放失败,包含详细错误信息")
})
@PostMapping("/sendCoupon") @PostMapping("/sendCoupon")
public R sendCoupon(@Validated @RequestBody PlayCouponInfoSendVo vo) { public R sendCoupon(@ApiParam(value = "优惠券发放信息", required = true) @Validated @RequestBody PlayCouponInfoSendVo vo) {
PlayCustomUserInfoEntity customUserInfo = playCustomUserInfoService.selectById(vo.getCustomId()); PlayCustomUserInfoEntity customUserInfo = playCustomUserInfoService.selectById(vo.getCustomId());
playCouponDetailsService.create(customUserInfo.getId(), customUserInfo.getNickname(), customUserInfo.getLevelId(), vo.getId(), "2", "1"); playCouponDetailsService.create(customUserInfo.getId(), customUserInfo.getNickname(), customUserInfo.getLevelId(), vo.getId(), "2", "1");
return R.ok(); return R.ok();
@@ -80,6 +101,11 @@ public class PlayCouponInfoController {
/** /**
* 获取优惠券信息详细信息 * 获取优惠券信息详细信息
*/ */
@ApiOperation(value = "获取优惠券详情", notes = "根据ID获取优惠券详细信息")
@ApiImplicitParam(name = "id", value = "优惠券ID", required = true, paramType = "path", dataType = "String", example = "1")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = PlayCouponInfoEntity.class)
})
// @PreAuthorize("@customSs.hasPermission('shop:coupon:query')") // @PreAuthorize("@customSs.hasPermission('shop:coupon:query')")
@GetMapping(value = "/{id}") @GetMapping(value = "/{id}")
public R getInfo(@PathVariable("id") String id) { public R getInfo(@PathVariable("id") String id) {
@@ -89,10 +115,15 @@ public class PlayCouponInfoController {
/** /**
* 新增优惠券信息 * 新增优惠券信息
*/ */
@ApiOperation(value = "新增优惠券", notes = "新增优惠券信息")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功"),
@ApiResponse(code = 500, message = "添加失败,包含详细错误信息")
})
// @PreAuthorize("@customSs.hasPermission('shop:coupon:create')") // @PreAuthorize("@customSs.hasPermission('shop:coupon:create')")
@Log(title = "优惠券信息", businessType = BusinessType.INSERT) @Log(title = "优惠券信息", businessType = BusinessType.INSERT)
@PostMapping("/create") @PostMapping("/create")
public R create(@Validated @RequestBody PlayCouponInfoAddVo vo) { public R create(@ApiParam(value = "优惠券信息", required = true) @Validated @RequestBody PlayCouponInfoAddVo vo) {
PlayCouponInfoEntity entity = ConvertUtil.entityToVo(vo, PlayCouponInfoEntity.class); PlayCouponInfoEntity entity = ConvertUtil.entityToVo(vo, PlayCouponInfoEntity.class);
if ("1".equals(vo.getValidityPeriodType())) { if ("1".equals(vo.getValidityPeriodType())) {
if (vo.getProductiveTime() == null || vo.getProductiveTime().size() != 2) { if (vo.getProductiveTime() == null || vo.getProductiveTime().size() != 2) {
@@ -132,10 +163,16 @@ public class PlayCouponInfoController {
/** /**
* 修改优惠券信息 * 修改优惠券信息
*/ */
@ApiOperation(value = "修改优惠券", notes = "修改优惠券信息")
@ApiImplicitParam(name = "id", value = "优惠券ID", required = true, paramType = "path", dataType = "String", example = "1")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功"),
@ApiResponse(code = 500, message = "修改失败,包含详细错误信息")
})
// @PreAuthorize("@customSs.hasPermission('shop:coupon:edit')") // @PreAuthorize("@customSs.hasPermission('shop:coupon:edit')")
@Log(title = "优惠券信息", businessType = BusinessType.UPDATE) @Log(title = "优惠券信息", businessType = BusinessType.UPDATE)
@PostMapping(value = "/update/{id}") @PostMapping(value = "/update/{id}")
public R update(@PathVariable String id, @RequestBody PlayCouponInfoEntity playCouponInfo) { public R update(@PathVariable String id, @ApiParam(value = "优惠券信息", required = true) @RequestBody PlayCouponInfoEntity playCouponInfo) {
playCouponInfo.setId(id); playCouponInfo.setId(id);
boolean success = playCouponInfoService.update(playCouponInfo); boolean success = playCouponInfoService.update(playCouponInfo);
if (success) { if (success) {
@@ -147,6 +184,11 @@ public class PlayCouponInfoController {
/** /**
* 删除优惠券信息 * 删除优惠券信息
*/ */
@ApiOperation(value = "删除优惠券", notes = "根据ID批量删除优惠券信息")
@ApiImplicitParam(name = "ids", value = "优惠券ID数组", required = true, paramType = "path", dataType = "String[]", example = "1,2,3")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功")
})
// @PreAuthorize("@customSs.hasPermission('shop:coupon:remove')") // @PreAuthorize("@customSs.hasPermission('shop:coupon:remove')")
@Log(title = "优惠券信息", businessType = BusinessType.DELETE) @Log(title = "优惠券信息", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}") @DeleteMapping("/{ids}")

View File

@@ -6,6 +6,13 @@ import com.starry.admin.modules.shop.service.IPlayGiftInfoService;
import com.starry.common.annotation.Log; import com.starry.common.annotation.Log;
import com.starry.common.enums.BusinessType; import com.starry.common.enums.BusinessType;
import com.starry.common.result.R; import com.starry.common.result.R;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import io.swagger.annotations.ApiResponse;
import io.swagger.annotations.ApiResponses;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource; import javax.annotation.Resource;
@@ -16,6 +23,7 @@ import javax.annotation.Resource;
* @author admin * @author admin
* @since 2024-04-25 * @since 2024-04-25
*/ */
@Api(tags = "礼物管理", description = "礼物信息管理相关接口,包括查询、新增、修改和删除等操作")
@RestController @RestController
@RequestMapping("/play/giff") @RequestMapping("/play/giff")
public class PlayGiftInfoController { public class PlayGiftInfoController {
@@ -25,8 +33,12 @@ public class PlayGiftInfoController {
/** /**
* 查询礼物列表 * 查询礼物列表
*/ */
@ApiOperation(value = "查询礼物列表", notes = "分页查询礼物信息列表")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = PlayGiftInfoEntity.class, responseContainer = "Page")
})
@GetMapping("/list") @GetMapping("/list")
public R list(PlayGiftInfoEntity playGiftInfo) { public R list(@ApiParam(value = "查询条件") PlayGiftInfoEntity playGiftInfo) {
IPage<PlayGiftInfoEntity> list = playGiftInfoService.selectPlayGiftInfoByPage(playGiftInfo); IPage<PlayGiftInfoEntity> list = playGiftInfoService.selectPlayGiftInfoByPage(playGiftInfo);
return R.ok(list); return R.ok(list);
} }
@@ -34,6 +46,11 @@ public class PlayGiftInfoController {
/** /**
* 获取礼物详细信息 * 获取礼物详细信息
*/ */
@ApiOperation(value = "获取礼物详情", notes = "根据ID获取礼物详细信息")
@ApiImplicitParam(name = "id", value = "礼物ID", required = true, paramType = "path", dataType = "String", example = "1")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = PlayGiftInfoEntity.class)
})
@GetMapping(value = "/{id}") @GetMapping(value = "/{id}")
public R getInfo(@PathVariable("id") String id) { public R getInfo(@PathVariable("id") String id) {
return R.ok(playGiftInfoService.selectPlayGiftInfoById(id)); return R.ok(playGiftInfoService.selectPlayGiftInfoById(id));
@@ -42,9 +59,14 @@ public class PlayGiftInfoController {
/** /**
* 新增礼物 * 新增礼物
*/ */
@ApiOperation(value = "新增礼物", notes = "新增礼物信息")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功"),
@ApiResponse(code = 500, message = "添加失败,包含详细错误信息")
})
@Log(title = "礼物", businessType = BusinessType.INSERT) @Log(title = "礼物", businessType = BusinessType.INSERT)
@PostMapping("/create") @PostMapping("/create")
public R create(@RequestBody PlayGiftInfoEntity playGiftInfo) { public R create(@ApiParam(value = "礼物信息", required = true) @RequestBody PlayGiftInfoEntity playGiftInfo) {
boolean success = playGiftInfoService.create(playGiftInfo); boolean success = playGiftInfoService.create(playGiftInfo);
if (success) { if (success) {
return R.ok(); return R.ok();
@@ -55,9 +77,15 @@ public class PlayGiftInfoController {
/** /**
* 修改礼物 * 修改礼物
*/ */
@ApiOperation(value = "修改礼物", notes = "修改礼物信息")
@ApiImplicitParam(name = "id", value = "礼物ID", required = true, paramType = "path", dataType = "String", example = "1")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功"),
@ApiResponse(code = 500, message = "修改失败,包含详细错误信息")
})
@Log(title = "礼物", businessType = BusinessType.UPDATE) @Log(title = "礼物", businessType = BusinessType.UPDATE)
@PostMapping(value = "/update/{id}") @PostMapping(value = "/update/{id}")
public R update(@PathVariable String id, @RequestBody PlayGiftInfoEntity playGiftInfo) { public R update(@PathVariable String id, @ApiParam(value = "礼物信息", required = true) @RequestBody PlayGiftInfoEntity playGiftInfo) {
playGiftInfo.setId(id); playGiftInfo.setId(id);
boolean success = playGiftInfoService.update(playGiftInfo); boolean success = playGiftInfoService.update(playGiftInfo);
if (success) { if (success) {
@@ -69,6 +97,11 @@ public class PlayGiftInfoController {
/** /**
* 删除礼物 * 删除礼物
*/ */
@ApiOperation(value = "删除礼物", notes = "根据ID批量删除礼物信息")
@ApiImplicitParam(name = "ids", value = "礼物ID数组", required = true, paramType = "path", dataType = "String[]", example = "1,2,3")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功")
})
@Log(title = "礼物", businessType = BusinessType.DELETE) @Log(title = "礼物", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}") @DeleteMapping("/{ids}")
public R remove(@PathVariable String[] ids) { public R remove(@PathVariable String[] ids) {

View File

@@ -11,6 +11,12 @@ import com.starry.common.annotation.Log;
import com.starry.common.enums.BusinessType; import com.starry.common.enums.BusinessType;
import com.starry.common.result.R; import com.starry.common.result.R;
import com.starry.common.utils.ConvertUtil; import com.starry.common.utils.ConvertUtil;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import io.swagger.annotations.ApiResponse;
import io.swagger.annotations.ApiResponses;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
@@ -23,6 +29,7 @@ import java.util.Date;
* @author admin * @author admin
* @since 2024-06-05 * @since 2024-06-05
*/ */
@Api(tags = "店铺文章管理", description = "店铺文章信息管理相关接口,包括查询、新增、修改和删除等操作")
@RestController @RestController
@RequestMapping("/shop/articleInfo") @RequestMapping("/shop/articleInfo")
public class PlayShopArticleInfoController { public class PlayShopArticleInfoController {
@@ -33,9 +40,13 @@ public class PlayShopArticleInfoController {
/** /**
* 查询店铺文章信息列表 * 查询店铺文章信息列表
*/ */
@ApiOperation(value = "分页查询文章列表", notes = "分页查询店铺文章信息列表")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = PlayShopArticleInfoEntity.class, responseContainer = "Page")
})
//@PreAuthorize("@customSs.hasPermission('shop:articleInfo:list')") //@PreAuthorize("@customSs.hasPermission('shop:articleInfo:list')")
@PostMapping("/listByPage") @PostMapping("/listByPage")
public R listByPage(@Validated @RequestBody PlayShopArticleInfoQueryVo vo) { public R listByPage(@ApiParam(value = "查询条件", required = true) @Validated @RequestBody PlayShopArticleInfoQueryVo vo) {
IPage<PlayShopArticleInfoEntity> list = playShopArticleInfoService.selectByPage(vo); IPage<PlayShopArticleInfoEntity> list = playShopArticleInfoService.selectByPage(vo);
return R.ok(list); return R.ok(list);
} }
@@ -44,9 +55,14 @@ public class PlayShopArticleInfoController {
/** /**
* 新增店铺文章信息 * 新增店铺文章信息
*/ */
@ApiOperation(value = "新增或修改文章", notes = "新增或修改店铺文章信息")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功"),
@ApiResponse(code = 500, message = "添加失败,包含详细错误信息")
})
//@PreAuthorize("@customSs.hasPermission('shop:articleInfo:add')") //@PreAuthorize("@customSs.hasPermission('shop:articleInfo:add')")
@PostMapping("/create") @PostMapping("/create")
public R create(@Validated @RequestBody PlayShopArticleInfoAddVo vo) { public R create(@ApiParam(value = "文章信息", required = true) @Validated @RequestBody PlayShopArticleInfoAddVo vo) {
PlayShopArticleInfoEntity entity = ConvertUtil.entityToVo(vo, PlayShopArticleInfoEntity.class); PlayShopArticleInfoEntity entity = ConvertUtil.entityToVo(vo, PlayShopArticleInfoEntity.class);
PlayShopArticleInfoEntity entity1 = playShopArticleInfoService.selectByType(entity.getArticleType()); PlayShopArticleInfoEntity entity1 = playShopArticleInfoService.selectByType(entity.getArticleType());
if (entity.getId() == null) { if (entity.getId() == null) {
@@ -69,9 +85,14 @@ public class PlayShopArticleInfoController {
/** /**
* 修改店铺文章信息 * 修改店铺文章信息
*/ */
@ApiOperation(value = "更新文章状态", notes = "修改店铺文章状态")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功"),
@ApiResponse(code = 500, message = "修改失败,包含详细错误信息")
})
//@PreAuthorize("@customSs.hasPermission('shop:articleInfo:update')") //@PreAuthorize("@customSs.hasPermission('shop:articleInfo:update')")
@PostMapping("/handleUpdateState") @PostMapping("/handleUpdateState")
public R listByPage(@Validated @RequestBody PlayShopArticleInfoUpdateVo vo) { public R listByPage(@ApiParam(value = "更新信息", required = true) @Validated @RequestBody PlayShopArticleInfoUpdateVo vo) {
PlayShopArticleInfoEntity entity = ConvertUtil.entityToVo(vo, PlayShopArticleInfoEntity.class); PlayShopArticleInfoEntity entity = ConvertUtil.entityToVo(vo, PlayShopArticleInfoEntity.class);
playShopArticleInfoService.update(entity); playShopArticleInfoService.update(entity);
return R.ok(); return R.ok();
@@ -80,6 +101,11 @@ public class PlayShopArticleInfoController {
/** /**
* 删除店铺文章信息 * 删除店铺文章信息
*/ */
@ApiOperation(value = "删除文章", notes = "根据ID批量删除店铺文章信息")
@ApiImplicitParam(name = "ids", value = "文章ID数组", required = true, paramType = "path", dataType = "String[]", example = "1,2,3")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功")
})
//@PreAuthorize("@customSs.hasPermission('shop:articleInfo:delete')") //@PreAuthorize("@customSs.hasPermission('shop:articleInfo:delete')")
@Log(title = "店铺文章信息", businessType = BusinessType.DELETE) @Log(title = "店铺文章信息", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}") @DeleteMapping("/{ids}")

View File

@@ -12,6 +12,12 @@ import com.starry.common.annotation.Log;
import com.starry.common.enums.BusinessType; import com.starry.common.enums.BusinessType;
import com.starry.common.result.R; import com.starry.common.result.R;
import com.starry.common.utils.ConvertUtil; import com.starry.common.utils.ConvertUtil;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import io.swagger.annotations.ApiResponse;
import io.swagger.annotations.ApiResponses;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile; import org.springframework.web.multipart.MultipartFile;
@@ -25,6 +31,7 @@ import java.io.IOException;
* @author admin * @author admin
* @since 2024-06-05 * @since 2024-06-05
*/ */
@Api(tags = "店铺轮播图管理", description = "店铺首页轮播图信息管理相关接口,包括查询、新增、修改和删除等操作")
@RestController @RestController
@RequestMapping("/shop/carousel") @RequestMapping("/shop/carousel")
public class PlayShopCarouselInfoController { public class PlayShopCarouselInfoController {
@@ -37,16 +44,25 @@ public class PlayShopCarouselInfoController {
/** /**
* 查询店铺首页轮播列表 * 查询店铺首页轮播列表
*/ */
@ApiOperation(value = "分页查询轮播图列表", notes = "分页查询店铺首页轮播图信息列表")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功", response = PlayShopCarouselInfoEntity.class, responseContainer = "Page")
})
//@PreAuthorize("@customSs.hasPermission('shop:carousel:list')") //@PreAuthorize("@customSs.hasPermission('shop:carousel:list')")
@PostMapping("/listByPage") @PostMapping("/listByPage")
public R listByPage(@Validated @RequestBody PlayShopCarouselInfoQueryVo vo) { public R listByPage(@ApiParam(value = "查询条件", required = true) @Validated @RequestBody PlayShopCarouselInfoQueryVo vo) {
IPage<PlayShopCarouselInfoEntity> list = playCarouselInfoService.selectByPage(vo); IPage<PlayShopCarouselInfoEntity> list = playCarouselInfoService.selectByPage(vo);
return R.ok(list); return R.ok(list);
} }
@ApiOperation(value = "上传轮播图文件", notes = "上传店铺首页轮播图文件")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功,返回文件地址"),
@ApiResponse(code = 500, message = "上传失败,包含详细错误信息")
})
//@PreAuthorize("@customSs.hasPermission('shop:carousel:add')") //@PreAuthorize("@customSs.hasPermission('shop:carousel:add')")
@PostMapping("/uploadFile") @PostMapping("/uploadFile")
public R uploadFile(@RequestParam("file") MultipartFile file) throws IOException { public R uploadFile(@ApiParam(value = "轮播图文件", required = true) @RequestParam("file") MultipartFile file) throws IOException {
String fileAddress = ossFileService.upload(file.getInputStream(), SecurityUtils.getTenantId(), file.getOriginalFilename()); String fileAddress = ossFileService.upload(file.getInputStream(), SecurityUtils.getTenantId(), file.getOriginalFilename());
return R.ok(fileAddress); return R.ok(fileAddress);
} }
@@ -55,9 +71,14 @@ public class PlayShopCarouselInfoController {
/** /**
* 新增页轮播列表 * 新增页轮播列表
*/ */
@ApiOperation(value = "新增轮播图", notes = "新增店铺首页轮播图信息")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功"),
@ApiResponse(code = 500, message = "添加失败,包含详细错误信息")
})
//@PreAuthorize("@customSs.hasPermission('shop:carousel:add')") //@PreAuthorize("@customSs.hasPermission('shop:carousel:add')")
@PostMapping("/create") @PostMapping("/create")
public R create(@Validated @RequestBody PlayShopCarouselInfoAddVo vo) { public R create(@ApiParam(value = "轮播图信息", required = true) @Validated @RequestBody PlayShopCarouselInfoAddVo vo) {
PlayShopCarouselInfoEntity entity = ConvertUtil.entityToVo(vo, PlayShopCarouselInfoEntity.class); PlayShopCarouselInfoEntity entity = ConvertUtil.entityToVo(vo, PlayShopCarouselInfoEntity.class);
playCarouselInfoService.create(entity); playCarouselInfoService.create(entity);
return R.ok(); return R.ok();
@@ -67,9 +88,14 @@ public class PlayShopCarouselInfoController {
/** /**
* 修改页轮播状态 * 修改页轮播状态
*/ */
@ApiOperation(value = "更新轮播图状态", notes = "修改店铺首页轮播图状态")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功"),
@ApiResponse(code = 500, message = "修改失败,包含详细错误信息")
})
//@PreAuthorize("@customSs.hasPermission('shop:carousel:update')") //@PreAuthorize("@customSs.hasPermission('shop:carousel:update')")
@PostMapping("/handleUpdateState") @PostMapping("/handleUpdateState")
public R listByPage(@Validated @RequestBody PlayShopCarouselInfoUpdateStateVo vo) { public R listByPage(@ApiParam(value = "更新信息", required = true) @Validated @RequestBody PlayShopCarouselInfoUpdateStateVo vo) {
PlayShopCarouselInfoEntity entity = ConvertUtil.entityToVo(vo, PlayShopCarouselInfoEntity.class); PlayShopCarouselInfoEntity entity = ConvertUtil.entityToVo(vo, PlayShopCarouselInfoEntity.class);
playCarouselInfoService.update(entity); playCarouselInfoService.update(entity);
return R.ok(); return R.ok();
@@ -78,6 +104,11 @@ public class PlayShopCarouselInfoController {
/** /**
* 删除店铺首页轮播 * 删除店铺首页轮播
*/ */
@ApiOperation(value = "删除轮播图", notes = "根据ID批量删除店铺首页轮播图信息")
@ApiImplicitParam(name = "ids", value = "轮播图ID数组", required = true, paramType = "path", dataType = "String[]", example = "1,2,3")
@ApiResponses({
@ApiResponse(code = 200, message = "操作成功")
})
//@PreAuthorize("@customSs.hasPermission('shop:carousel:delete')") //@PreAuthorize("@customSs.hasPermission('shop:carousel:delete')")
@Log(title = "店铺首页轮播", businessType = BusinessType.DELETE) @Log(title = "店铺首页轮播", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}") @DeleteMapping("/{ids}")

Some files were not shown because too many files have changed in this diff Show More