package com.mzl.flower.web.flower;
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.mzl.flower.base.BaseController;
|
import com.mzl.flower.base.R;
|
import com.mzl.flower.base.ReturnDataDTO;
|
import com.mzl.flower.base.annotation.OperationLog;
|
import com.mzl.flower.constant.Constants;
|
import com.mzl.flower.dto.request.flower.*;
|
import com.mzl.flower.dto.request.flower.FlowerTagMultipleDTO;
|
import com.mzl.flower.dto.response.flower.*;
|
import com.mzl.flower.entity.flower.Flower;
|
import com.mzl.flower.entity.log.OperationRecord;
|
import com.mzl.flower.service.flower.FlowerParamService;
|
import com.mzl.flower.service.flower.FlowerService;
|
import io.swagger.annotations.Api;
|
import io.swagger.annotations.ApiImplicitParam;
|
import io.swagger.annotations.ApiImplicitParams;
|
import io.swagger.annotations.ApiOperation;
|
import lombok.extern.slf4j.Slf4j;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.http.ResponseEntity;
|
import org.springframework.validation.annotation.Validated;
|
import org.springframework.web.bind.annotation.*;
|
|
import java.util.List;
|
|
@RestController
|
@RequestMapping("/api/flower")
|
@Api(value = "商品管理-运营端", tags = "商品管理-运营端")
|
@Validated
|
@Slf4j
|
public class FlowerController extends BaseController {
|
|
@Autowired
|
private FlowerService flowerService;
|
|
@Autowired
|
private FlowerParamService paramService;
|
|
@GetMapping("/list")
|
@ApiOperation(value = "商品列表")
|
public ResponseEntity<ReturnDataDTO<Page<FlowerListDTO>>> selectFlowerList(Page page, FlowerQueryDTO dto){
|
return returnData(R.SUCCESS.getCode(), flowerService.selectFlowerList(page, dto));
|
}
|
|
@GetMapping("/list/view")
|
@ApiOperation(value = "商品详情")
|
@ApiImplicitParams({
|
@ApiImplicitParam(name = "id", value = "商品id", required = true, dataType = "Long", paramType = "query")
|
})
|
public ResponseEntity<ReturnDataDTO<FlowerDTO>> getFlowerDetail(Long id) {
|
return returnData(R.SUCCESS.getCode(), flowerService.getFlowerDetail(id));
|
}
|
|
@PostMapping("/list/pass")
|
@ApiOperation(value = "审核通过")
|
public ResponseEntity<ReturnDataDTO> passFlower(@RequestBody FlowerAuditDTO dto) {
|
flowerService.auditFlower(dto.getId(), dto.getAuditRemarks(), Constants.FLOWER_STATUS.UP.name());
|
return returnData(R.SUCCESS.getCode(), null);
|
}
|
|
@PostMapping("/list/reject")
|
@ApiOperation(value = "审核驳回")
|
public ResponseEntity<ReturnDataDTO> rejectFlower(@RequestBody FlowerAuditDTO dto) {
|
flowerService.auditFlower(dto.getId(), dto.getAuditRemarks(), Constants.FLOWER_STATUS.REJECT.name());
|
return returnData(R.SUCCESS.getCode(), null);
|
}
|
|
@PostMapping("/list/pass/multi")
|
@ApiOperation(value = "批量审核通过")
|
public ResponseEntity<ReturnDataDTO> passFlowers(@RequestBody FlowerAuditMultipleDTO dto) {
|
flowerService.auditFlowers(dto, Constants.FLOWER_STATUS.UP.name());
|
String content = "批量审核通过id是:【" + dto.getIds() + "】,审核意见为【" + dto.getAuditRemarks() + "】";
|
OperationRecord operationRecord = getOperationRecord(content);
|
return returnData(R.SUCCESS.getCode(), null, operationRecord);
|
}
|
|
@PostMapping("/list/reject/multi")
|
@OperationLog(value = "批量审核驳回", type = "flower_list")
|
@ApiOperation(value = "批量审核驳回")
|
public ResponseEntity<ReturnDataDTO> rejectFlowers(@RequestBody FlowerAuditMultipleDTO dto) {
|
flowerService.auditFlowers(dto, Constants.FLOWER_STATUS.REJECT.name());
|
String content = "批量审核驳回id:【" + dto.getIds() + "】,审核意见为:【" + dto.getAuditRemarks() + "】";
|
OperationRecord operationRecord = getOperationRecord(content);
|
return returnData(R.SUCCESS.getCode(), null, operationRecord);
|
}
|
|
@PostMapping("/list/tags")
|
@OperationLog(value = "批量设置标签", type = "flower_list")
|
@ApiOperation(value = "批量设置标签")
|
public ResponseEntity<ReturnDataDTO> setFlowersTags(@RequestBody FlowerTagMultipleDTO dto) {
|
flowerService.setFlowersTags(dto);
|
String content = "批量设置标签id:【" + dto.getIds() + "】,标签名称为:【" + dto.getTags() + "】";
|
OperationRecord operationRecord = getOperationRecord(content);
|
return returnData(R.SUCCESS.getCode(), null, operationRecord);
|
}
|
|
@PostMapping("/list/zones")
|
@OperationLog(value = "批量设置专区", type = "flower_list")
|
@ApiOperation(value = "批量设置专区")
|
public ResponseEntity<ReturnDataDTO> setFlowerZone(@RequestBody FlowerZoneBatchDTO dto) {
|
flowerService.setFlowerZone(dto);
|
String content = "批量设置专区id:【" + dto.getIds() + "】,专区id为:【" + dto.getZoneId() + "】";
|
OperationRecord operationRecord = getOperationRecord(content);
|
return returnData(R.SUCCESS.getCode(), null, operationRecord);
|
}
|
|
@PostMapping("/list/off")
|
@OperationLog(value = "批量强制下架", type = "flower_list")
|
@ApiOperation(value = "批量强制下架")
|
public ResponseEntity<ReturnDataDTO> setFlowersForceOff(@RequestBody FlowerOffDTO dto) {
|
flowerService.setFlowersForceOff(dto);
|
String content = "批量强制下架商品id:【" + dto.getIds() + "】";
|
OperationRecord operationRecord = getOperationRecord(content);
|
return returnData(R.SUCCESS.getCode(), null, operationRecord);
|
}
|
|
@GetMapping("/list/delete")
|
@ApiOperation(value = "商品删除")
|
@OperationLog(value = "商品删除", type = "flower_list")
|
@ApiImplicitParams({
|
@ApiImplicitParam(name = "id", value = "商品id", required = true, dataType = "Long", paramType = "query")
|
})
|
public ResponseEntity<ReturnDataDTO<?>> deleteFlower(Long id) {
|
flowerService.deleteFlower(id);
|
Flower flower = flowerService.selectFlowerById(id);
|
String content = "删除商品id:【" + id + "】,商品名称:【" + flower.getName() + "】,商品售价:【" + flower.getPrice() + "】";
|
OperationRecord operationRecord = getOperationRecord(content);
|
return returnData(R.SUCCESS.getCode(), null, operationRecord);
|
}
|
|
|
@GetMapping("/params")
|
@ApiOperation(value = "获取分类参数列表")
|
@ApiImplicitParams({
|
@ApiImplicitParam(name = "categoryId", value = "商品分类id", required = true, dataType = "Long", paramType = "query")
|
})
|
public ResponseEntity<ReturnDataDTO<List<ParamItemDTO>>> getParamItemListByCategoryId(Long categoryId){
|
return returnData(R.SUCCESS.getCode(), paramService.getParamItemListByCategoryId(categoryId));
|
}
|
|
@PostMapping("/list/edit")
|
@ApiOperation(value = "编辑商品")
|
public ResponseEntity<ReturnDataDTO> editFlowerAdmin(@RequestBody FlowerUpdateAdminDTO dto) {
|
return returnData(R.SUCCESS.getCode(), flowerService.editFlowerAdmin(dto));
|
}
|
|
@PostMapping("/list/recommend/set")
|
@OperationLog(value = "批量设置推荐", type = "flower_list")
|
@ApiOperation(value = "批量设置推荐")
|
public ResponseEntity<ReturnDataDTO> setFlowerRecommend(@RequestBody FlowerRecommendMultipleDTO dto) {
|
flowerService.setFlowerRecommend(dto);
|
String content = "批量设置推荐id:【" + dto.getIds() + "】";
|
OperationRecord operationRecord = getOperationRecord(content);
|
return returnData(R.SUCCESS.getCode(), null, operationRecord);
|
}
|
|
@PostMapping("/list/recommend/cancel")
|
@OperationLog(value = "批量取消推荐", type = "flower_list")
|
@ApiOperation(value = "批量取消推荐")
|
public ResponseEntity<ReturnDataDTO> cancelFlowerRecommend(@RequestBody FlowerRecommendMultipleDTO dto) {
|
flowerService.cancelFlowerRecommend(dto);
|
String content = "批量取消推荐id:【" + dto.getIds() + "】";
|
OperationRecord operationRecord = getOperationRecord(content);
|
return returnData(R.SUCCESS.getCode(), null, operationRecord);
|
}
|
|
|
@PostMapping("/list/recommend/set/rank")
|
@ApiOperation(value = "设置推荐排序")
|
public ResponseEntity<ReturnDataDTO> setFlowerRecommendRank(@RequestBody FlowerRecommendRankDTO dto) {
|
flowerService.setFlowerRecommendRank(dto);
|
return returnData(R.SUCCESS.getCode(), null);
|
}
|
|
|
@GetMapping("/list/shown")
|
@ApiOperation(value = "显示商品")
|
@ApiImplicitParams({
|
@ApiImplicitParam(name = "id", value = "商品id", required = true, dataType = "Long", paramType = "query")
|
})
|
public ResponseEntity<ReturnDataDTO<?>> showFlower(Long id){
|
flowerService.setFlowerShown(id, true);
|
return returnData(R.SUCCESS.getCode(), null);
|
}
|
|
@GetMapping("/list/hidden")
|
@ApiOperation(value = "隐藏商品")
|
@ApiImplicitParams({
|
@ApiImplicitParam(name = "id", value = "商品id", required = true, dataType = "Long", paramType = "query")
|
})
|
public ResponseEntity<ReturnDataDTO<?>> hideFlower(Long id){
|
flowerService.setFlowerShown(id, false);
|
return returnData(R.SUCCESS.getCode(), null);
|
}
|
|
@PostMapping("/list/limiteds")
|
@OperationLog(value = "批量设置每人限购", type = "flower_list")
|
@ApiOperation(value = "批量设置每人限购")
|
public ResponseEntity<ReturnDataDTO> setFlowersLimited(@RequestBody FlowerLimitedDTO dto) {
|
flowerService.setFlowersLimited(dto);
|
String content = "批量设置每人限购id:【" + dto.getIds() + "】,限购数量:【"+dto.getLimited()+"】";
|
OperationRecord operationRecord = getOperationRecord(content);
|
return returnData(R.SUCCESS.getCode(), null, operationRecord);
|
}
|
}
|