版本管理、优化订单模块
This commit is contained in:
parent
96b611f014
commit
19581d153a
BIN
null/download/1094464973f74e6fa672edd9334c0422_商品信息数据.xlsx
Normal file
BIN
null/download/1094464973f74e6fa672edd9334c0422_商品信息数据.xlsx
Normal file
Binary file not shown.
BIN
null/download/6ec52049deea405ba618b7c04d5afc9f_商品信息数据.xlsx
Normal file
BIN
null/download/6ec52049deea405ba618b7c04d5afc9f_商品信息数据.xlsx
Normal file
Binary file not shown.
Binary file not shown.
Before Width: | Height: | Size: 444 B |
Binary file not shown.
Before Width: | Height: | Size: 419 B |
Binary file not shown.
Before Width: | Height: | Size: 424 B |
Binary file not shown.
Before Width: | Height: | Size: 435 B |
Binary file not shown.
Before Width: | Height: | Size: 410 B |
@ -23,8 +23,8 @@ import java.util.Map;
|
||||
@RestController
|
||||
public class IndexController {
|
||||
|
||||
@Autowired
|
||||
private IndexService indexService;
|
||||
|
||||
private final IndexService indexService;
|
||||
|
||||
/**
|
||||
* 访问首页,提示语
|
||||
|
@ -9,17 +9,20 @@ import com.wzj.soopin.member.service.IMemberAccountService;
|
||||
import com.wzj.soopin.order.mapper.OrderMapper;
|
||||
import com.wzj.soopin.transaction.domain.po.Withdraw;
|
||||
import com.wzj.soopin.transaction.service.IWithdrawService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.dromara.system.mapper.SysIntegralHistoryMapper;
|
||||
import org.dromara.system.mapper.SysTenantMapper;
|
||||
import org.dromara.system.mapper.SystemStatisticsMapper;
|
||||
import org.dromara.web.service.IndexService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* @author fxh
|
||||
*/
|
||||
@Service
|
||||
@RequiredArgsConstructor
|
||||
public class IndexServiceImpl implements IndexService {
|
||||
|
||||
|
||||
@ -33,71 +36,68 @@ public class IndexServiceImpl implements IndexService {
|
||||
private final ProductMapper productMapper;
|
||||
private final OrderMapper orderMapper;
|
||||
|
||||
public IndexServiceImpl(SysTenantMapper sysTenantMapper, VlogMapper vlogMapper, IMemberAccountService memberService, IFeedbackService feedbackService, IWithdrawService withdrawService, SystemStatisticsMapper systemStatisticsMapper, SysIntegralHistoryMapper sysIntegralHistoryMapper, ProductMapper productMapper, OrderMapper orderMapper) {
|
||||
this.sysTenantMapper = sysTenantMapper;
|
||||
this.vlogMapper = vlogMapper;
|
||||
this.memberService = memberService;
|
||||
this.feedbackService = feedbackService;
|
||||
this.withdrawService = withdrawService;
|
||||
this.systemStatisticsMapper = systemStatisticsMapper;
|
||||
this.sysIntegralHistoryMapper = sysIntegralHistoryMapper;
|
||||
this.productMapper = productMapper;
|
||||
this.orderMapper = orderMapper;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Map<String, Object> getCount() {
|
||||
Map<String, Object> result = new HashMap<>();
|
||||
//用户数量
|
||||
result.put("memberCount", memberService.count());
|
||||
//待审核视频
|
||||
result.put("vlogCount", vlogMapper.countVlog());
|
||||
Map<String, Object> result = new HashMap<>(16);
|
||||
|
||||
// 待审核举报统计
|
||||
QueryWrapper<Feedback> FeedbackWrapper = new QueryWrapper<>();
|
||||
FeedbackWrapper.eq("status", 0);
|
||||
result.put("feedbackCount", feedbackService.count(FeedbackWrapper));
|
||||
// 待审核提现统计
|
||||
QueryWrapper<Withdraw> withdrawQueryWrapper = new QueryWrapper<>();
|
||||
withdrawQueryWrapper.eq("audit_status", 0);
|
||||
result.put("WithdrawCount", withdrawService.count(withdrawQueryWrapper));
|
||||
//(用户、视频、举报、提现)
|
||||
addBasicStatistics(result);
|
||||
|
||||
// 商品统计、待审核商品统计
|
||||
Map<String, Object> productCounts = productMapper.countProduct();
|
||||
result.put("productCount", productCounts.get("count1"));
|
||||
result.put("productAudit", productCounts.get("count2"));
|
||||
//(商品、店铺、订单)
|
||||
addCompositeStatistics(result);
|
||||
|
||||
// 店铺统计、待审核店铺统计
|
||||
Map<String, Object> StoreCounts = sysTenantMapper.countProduct();
|
||||
result.put("storeCount", StoreCounts.get("count1"));
|
||||
result.put("StoreAudit", StoreCounts.get("count2"));
|
||||
// Top20排行榜
|
||||
addTop20Statistics(result);
|
||||
|
||||
// 订单统计、待审核退款统计
|
||||
Map<String, Object> OrderCounts = orderMapper.countOrder();
|
||||
result.put("orderCount", OrderCounts.get("count1"));
|
||||
result.put("orderAudit", OrderCounts.get("count2"));
|
||||
|
||||
// 店铺TOP20
|
||||
List<Map<String, Object>> top20Stores = sysTenantMapper.getTop20Stores();
|
||||
result.put("top20Stores", top20Stores);
|
||||
|
||||
// 商品TOP20
|
||||
List<Map<String, Object>> top20Product = productMapper.getTop20Product();
|
||||
result.put("top20Product", top20Product);
|
||||
|
||||
// 分月用户量统计
|
||||
List<Map<String, Object>> monthlyUserVolume = systemStatisticsMapper.getMonthlyUserVolume();
|
||||
result.put("monthlyUserVolume", monthlyUserVolume);
|
||||
|
||||
// 分月短视频统计
|
||||
List<Map<String, Object>> monthlyVlog = vlogMapper.getMonthlyVlog();
|
||||
result.put("monthlyVlog", monthlyVlog);
|
||||
|
||||
// 分月收入支出统计
|
||||
List<Map<String, Object>> monthlyIncomeExpense = sysIntegralHistoryMapper.getIncomeExpense();
|
||||
result.put("monthlyIncomeExpense", monthlyIncomeExpense);
|
||||
// 月度趋势统计
|
||||
addMonthlyTrendStatistics(result);
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
private void addBasicStatistics(Map<String, Object> result) {
|
||||
result.put("memberCount", memberService.count());
|
||||
result.put("vlogCount", vlogMapper.countVlog());
|
||||
|
||||
// 待审核举报
|
||||
result.put("feedbackCount", feedbackService.count(
|
||||
new QueryWrapper<Feedback>().eq("status", 0)
|
||||
));
|
||||
|
||||
// 待审核提现
|
||||
result.put("WithdrawCount", withdrawService.count(
|
||||
new QueryWrapper<Withdraw>().eq("audit_status", 0)
|
||||
));
|
||||
}
|
||||
|
||||
private void addCompositeStatistics(Map<String, Object> result) {
|
||||
// 商品统计
|
||||
Map<String, Object> productCounts = productMapper.countProduct();
|
||||
result.put("productCount", productCounts.get("count2"));
|
||||
result.put("productAudit", productCounts.get("count1"));
|
||||
|
||||
// 店铺统计
|
||||
Map<String, Object> storeCounts = sysTenantMapper.countProduct();
|
||||
result.put("storeCount", storeCounts.get("count1"));
|
||||
result.put("StoreAudit", storeCounts.get("count2"));
|
||||
|
||||
// 订单统计
|
||||
Map<String, Object> orderCounts = orderMapper.countOrder();
|
||||
result.put("orderCount", orderCounts.get("count1"));
|
||||
result.put("orderAudit", orderCounts.get("count2"));
|
||||
}
|
||||
|
||||
/** Top20排行榜 */
|
||||
private void addTop20Statistics(Map<String, Object> result) {
|
||||
result.put("top20Stores", sysTenantMapper.getTop20Stores());
|
||||
result.put("top20Product", productMapper.getTop20Product());
|
||||
}
|
||||
|
||||
/** 月度趋势统计 */
|
||||
private void addMonthlyTrendStatistics(Map<String, Object> result) {
|
||||
result.put("monthlyUserVolume", systemStatisticsMapper.getMonthlyUserVolume());
|
||||
result.put("monthlyVlog", vlogMapper.getMonthlyVlog());
|
||||
result.put("monthlyIncomeExpense", sysIntegralHistoryMapper.getIncomeExpense());
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -52,9 +52,9 @@ spring:
|
||||
driverClassName: com.mysql.cj.jdbc.Driver
|
||||
# jdbc 所有参数配置参考 https://lionli.blog.csdn.net/article/details/122018562
|
||||
# rewriteBatchedStatements=true 批处理优化 大幅提升批量插入更新删除性能(对数据库有性能损耗 使用批量操作应考虑性能问题)
|
||||
url: jdbc:mysql://localhost:3306/ry-vue?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&autoReconnect=true&rewriteBatchedStatements=true&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true
|
||||
username: root
|
||||
password: root
|
||||
url: jdbc:mysql://82.156.121.2:23306/ry-vue?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&autoReconnect=true&rewriteBatchedStatements=true&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true
|
||||
username: wzj
|
||||
password: A085F27A43B0
|
||||
# # 从库数据源
|
||||
# slave:
|
||||
# lazy: true
|
||||
|
@ -176,6 +176,11 @@ tenant:
|
||||
- trans_divide_detail
|
||||
- trans_divide_rule
|
||||
- trans_divide_rule_detail
|
||||
- aws_system_statistics
|
||||
- act_integral_history
|
||||
- sys_version
|
||||
|
||||
|
||||
|
||||
# MyBatisPlus配置
|
||||
# https://baomidou.com/config/
|
||||
|
@ -1,24 +1,19 @@
|
||||
package com.wzj.soopin.goods.controller;
|
||||
|
||||
|
||||
import cn.dev33.satoken.annotation.SaCheckPermission;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.wzj.soopin.goods.convert.BrandConvert;
|
||||
import com.wzj.soopin.goods.domain.bo.BrandBo;
|
||||
import com.wzj.soopin.goods.domain.entity.Brand;
|
||||
import com.wzj.soopin.goods.domain.query.BrandQuery;
|
||||
import com.wzj.soopin.goods.domain.vo.BrandVO;
|
||||
import com.wzj.soopin.goods.service.impl.BrandServiceImpl;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.dromara.common.core.domain.R;
|
||||
import org.dromara.common.excel.utils.ExcelUtil;
|
||||
import org.dromara.common.log.annotation.Log;
|
||||
import org.dromara.common.log.enums.BusinessType;
|
||||
import org.dromara.common.web.core.BaseController;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.util.List;
|
||||
@ -31,11 +26,11 @@ import java.util.List;
|
||||
@Tag(name ="品牌管理接口列表")
|
||||
@RestController
|
||||
@RequestMapping("/pms/brand")
|
||||
@RequiredArgsConstructor
|
||||
public class BrandController extends BaseController {
|
||||
@Autowired
|
||||
private BrandServiceImpl service;
|
||||
@Autowired
|
||||
private BrandConvert convert;
|
||||
|
||||
private final BrandServiceImpl service;
|
||||
private final BrandConvert convert;
|
||||
|
||||
|
||||
@Tag(name ="所有品牌管理列表")
|
||||
@ -47,13 +42,14 @@ public class BrandController extends BaseController {
|
||||
|
||||
@Tag(name ="导出品牌管理列表")
|
||||
@Log(title = "品牌管理", businessType = BusinessType.EXPORT)
|
||||
@GetMapping("export")
|
||||
public ResponseEntity<String> export(BrandBo query) {
|
||||
@PostMapping("export")
|
||||
public R<String> export(BrandBo query) {
|
||||
List<Brand> list = service.list(query.toWrapper());
|
||||
ExcelUtil<BrandVO> util = new ExcelUtil<>(BrandVO.class);
|
||||
return ResponseEntity.ok(util.writeExcel(convert.toVO(list), "品牌管理数据"));
|
||||
return R.ok(util.writeExcel(convert.toVO(list), "品牌管理数据"));
|
||||
}
|
||||
|
||||
|
||||
@Tag(name ="获取品牌管理详细信息")
|
||||
@GetMapping(value = "/{id}")
|
||||
public R getInfo(@PathVariable("id") Long id) {
|
||||
|
@ -2,26 +2,18 @@ package com.wzj.soopin.goods.controller;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.wzj.soopin.goods.convert.ProductCategoryConvert;
|
||||
import com.wzj.soopin.goods.domain.bo.BrandBo;
|
||||
import com.wzj.soopin.goods.domain.bo.ProductCategoryBo;
|
||||
import com.wzj.soopin.goods.domain.entity.Brand;
|
||||
import com.wzj.soopin.goods.domain.entity.ProductCategory;
|
||||
import com.wzj.soopin.goods.domain.query.ProductCategoryQuery;
|
||||
import com.wzj.soopin.goods.domain.vo.BrandVO;
|
||||
import com.wzj.soopin.goods.domain.vo.ProductCategoryVO;
|
||||
import com.wzj.soopin.goods.service.impl.ProductCategoryServiceImpl;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.dromara.common.core.domain.R;
|
||||
import org.dromara.common.log.annotation.Log;
|
||||
import org.dromara.common.log.enums.BusinessType;
|
||||
import org.dromara.common.web.core.BaseController;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 商品分类Controller
|
||||
@ -32,11 +24,11 @@ import java.util.List;
|
||||
@Tag(name ="商品分类接口列表")
|
||||
@RestController
|
||||
@RequestMapping("/pms/productCategory")
|
||||
@RequiredArgsConstructor
|
||||
public class ProductCategoryController extends BaseController {
|
||||
@Autowired
|
||||
private ProductCategoryServiceImpl service;
|
||||
@Autowired
|
||||
private ProductCategoryConvert convert;
|
||||
|
||||
private final ProductCategoryServiceImpl service;
|
||||
private final ProductCategoryConvert convert;
|
||||
|
||||
@Tag(name ="查询商品分类列表")
|
||||
@PostMapping("list")
|
||||
|
@ -4,28 +4,18 @@ package com.wzj.soopin.goods.controller;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.wzj.soopin.goods.convert.ProductConvert;
|
||||
import com.wzj.soopin.goods.domain.bo.BrandBo;
|
||||
import com.wzj.soopin.goods.domain.bo.ProductBo;
|
||||
import com.wzj.soopin.goods.domain.bo.ProductCategoryBo;
|
||||
import com.wzj.soopin.goods.domain.entity.Brand;
|
||||
import com.wzj.soopin.goods.domain.entity.Product;
|
||||
import com.wzj.soopin.goods.domain.entity.ProductCategory;
|
||||
import com.wzj.soopin.goods.domain.query.ProductQuery;
|
||||
import com.wzj.soopin.goods.domain.vo.BrandVO;
|
||||
import com.wzj.soopin.goods.domain.vo.ProductCategoryVO;
|
||||
import com.wzj.soopin.goods.domain.vo.ProductVO;
|
||||
import com.wzj.soopin.goods.service.ProductService;
|
||||
import com.wzj.soopin.goods.service.impl.ProductServiceImpl;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.dromara.common.core.domain.R;
|
||||
import org.dromara.common.excel.utils.ExcelUtil;
|
||||
import org.dromara.common.log.annotation.Log;
|
||||
import org.dromara.common.log.enums.BusinessType;
|
||||
import org.dromara.common.web.core.BaseController;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.util.List;
|
||||
@ -37,14 +27,13 @@ import java.util.List;
|
||||
*/
|
||||
@Tag(name ="商品信息接口列表")
|
||||
@RestController
|
||||
@RequestMapping("/pms/product")
|
||||
@RequestMapping("/pms/product")
|
||||
@RequiredArgsConstructor
|
||||
public class ProductController extends BaseController {
|
||||
@Autowired
|
||||
private ProductServiceImpl service;
|
||||
@Autowired
|
||||
private ProductConvert convert;
|
||||
@Autowired
|
||||
private ProductService productService;
|
||||
|
||||
private final ProductServiceImpl service;
|
||||
private final ProductConvert convert;
|
||||
private final ProductService productService;
|
||||
|
||||
@Tag(name ="查询商品信息列表")
|
||||
@PostMapping("list")
|
||||
@ -55,14 +44,13 @@ public class ProductController extends BaseController {
|
||||
|
||||
@Tag(name ="导出商品信息列表")
|
||||
@Log(title = "商品信息", businessType = BusinessType.EXPORT)
|
||||
@GetMapping("export")
|
||||
public ResponseEntity<String> export(ProductBo query) {
|
||||
@PostMapping("export")
|
||||
public R<String> export(ProductBo query) {
|
||||
List<Product> list = service.list(query.toWrapper());
|
||||
ExcelUtil<ProductVO> util = new ExcelUtil<>(ProductVO.class);
|
||||
return ResponseEntity.ok(util.writeExcel(convert.toVO(list), "商品信息数据"));
|
||||
return R.ok(util.writeExcel(convert.toVO(list), "商品信息数据"));
|
||||
}
|
||||
|
||||
|
||||
@Tag(name ="获取商品信息详细信息")
|
||||
@GetMapping(value = "/{id}")
|
||||
public R getInfo(@PathVariable("id") Long id) {
|
||||
@ -95,14 +83,17 @@ public class ProductController extends BaseController {
|
||||
@Tag(name ="审核商品")
|
||||
@Log(title = "审核商品", businessType = BusinessType.UPDATE)
|
||||
@GetMapping("/audit")
|
||||
public R audit( @RequestParam Long id, @RequestParam Integer authFlag,@RequestParam(required = false) String reasons) {
|
||||
public R audit( @RequestParam Long id,
|
||||
@RequestParam Integer authFlag,
|
||||
@RequestParam(required = false) String reasons) {
|
||||
return R.ok(service.audit(id,authFlag,reasons));
|
||||
}
|
||||
|
||||
@Tag(name ="上下架商品")
|
||||
@Log(title = "上下架商品", businessType = BusinessType.UPDATE)
|
||||
@GetMapping("/publish")
|
||||
public R publish( @RequestParam Long id, @RequestParam Integer publishStatus) {
|
||||
public R publish( @RequestParam Long id,
|
||||
@RequestParam Integer publishStatus) {
|
||||
return R.ok(service.publish(id,publishStatus));
|
||||
}
|
||||
|
||||
|
@ -3,24 +3,17 @@ package com.wzj.soopin.goods.controller;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.wzj.soopin.goods.convert.SkuConvert;
|
||||
import com.wzj.soopin.goods.domain.bo.ProductBo;
|
||||
import com.wzj.soopin.goods.domain.bo.SkuBo;
|
||||
import com.wzj.soopin.goods.domain.entity.Product;
|
||||
import com.wzj.soopin.goods.domain.entity.Sku;
|
||||
import com.wzj.soopin.goods.domain.query.SkuQuery;
|
||||
import com.wzj.soopin.goods.domain.vo.ProductVO;
|
||||
import com.wzj.soopin.goods.domain.vo.SkuVO;
|
||||
import com.wzj.soopin.goods.service.impl.SkuServiceImpl;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.dromara.common.core.domain.R;
|
||||
import org.dromara.common.excel.utils.ExcelUtil;
|
||||
import org.dromara.common.log.annotation.Log;
|
||||
import org.dromara.common.log.enums.BusinessType;
|
||||
import org.dromara.common.web.core.BaseController;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.util.List;
|
||||
@ -28,16 +21,16 @@ import java.util.List;
|
||||
* sku信息Controller
|
||||
*
|
||||
* @author zcc
|
||||
* @date 2022-11-28
|
||||
* @date 2022-11-28
|
||||
*/
|
||||
@Tag(name ="sku信息接口列表")
|
||||
@RestController
|
||||
@RequestMapping("/pms/sku")
|
||||
@RequiredArgsConstructor
|
||||
public class SkuController extends BaseController {
|
||||
@Autowired
|
||||
private SkuServiceImpl service;
|
||||
@Autowired
|
||||
private SkuConvert convert;
|
||||
|
||||
private final SkuServiceImpl service;
|
||||
private final SkuConvert convert;
|
||||
|
||||
@Tag(name ="查询商品信息列表")
|
||||
@PostMapping("list")
|
||||
@ -45,14 +38,13 @@ public class SkuController extends BaseController {
|
||||
return R.ok(service.getList(query,page));
|
||||
}
|
||||
|
||||
|
||||
@Tag(name ="导出sku信息列表")
|
||||
@Log(title = "sku信息", businessType = BusinessType.EXPORT)
|
||||
@GetMapping("export")
|
||||
public ResponseEntity<String> export(SkuBo query) {
|
||||
@PostMapping("export")
|
||||
public R<String> export(SkuBo query) {
|
||||
List<Sku> list = service.list(query.toWrapper());
|
||||
ExcelUtil<SkuVO> util = new ExcelUtil<>(SkuVO.class);
|
||||
return ResponseEntity.ok(util.writeExcel(convert.toVO(list), "sku信息数据"));
|
||||
return R.ok(util.writeExcel(convert.toVO(list), "sku信息数据"));
|
||||
}
|
||||
|
||||
@Tag(name ="获取sku信息详细信息")
|
||||
|
@ -6,7 +6,6 @@ import com.wzj.soopin.goods.domain.vo.BrandVO;
|
||||
import org.dromara.common.web.core.BaseConverter;
|
||||
import org.mapstruct.Mapper;
|
||||
|
||||
import java.util.List;
|
||||
/**
|
||||
* 品牌管理 DO <=> DTO <=> VO / BO / Query
|
||||
*
|
||||
@ -15,5 +14,4 @@ import java.util.List;
|
||||
@Mapper(componentModel = "spring")
|
||||
public interface BrandConvert extends BaseConverter<BrandVO, BrandBo,Brand> {
|
||||
|
||||
// List<BrandVO> dos2vos(List<Brand> list);
|
||||
}
|
||||
|
@ -1,7 +1,6 @@
|
||||
package com.wzj.soopin.goods.convert;
|
||||
|
||||
import com.wzj.soopin.goods.domain.bo.ProductCategoryBo;
|
||||
import com.wzj.soopin.goods.domain.dto.CategoryDTO;
|
||||
import com.wzj.soopin.goods.domain.entity.ProductCategory;
|
||||
import com.wzj.soopin.goods.domain.vo.ProductCategoryVO;
|
||||
import org.dromara.common.web.core.BaseConverter;
|
||||
@ -16,7 +15,4 @@ import java.util.List;
|
||||
@Mapper(componentModel = "spring")
|
||||
public interface ProductCategoryConvert extends BaseConverter<ProductCategoryVO, ProductCategoryBo, ProductCategory> {
|
||||
|
||||
// List<ProductCategoryVO> dos2vos(List<ProductCategory> list);
|
||||
//
|
||||
// CategoryDTO do2dto(ProductCategory it);
|
||||
}
|
||||
|
@ -3,13 +3,10 @@ package com.wzj.soopin.goods.convert;
|
||||
|
||||
import com.wzj.soopin.goods.domain.bo.ProductBo;
|
||||
import com.wzj.soopin.goods.domain.entity.Product;
|
||||
import com.wzj.soopin.goods.domain.vo.H5ProductVO;
|
||||
import com.wzj.soopin.goods.domain.vo.ProductVO;
|
||||
import org.apache.poi.ss.formula.functions.T;
|
||||
import org.dromara.common.web.core.BaseConverter;
|
||||
import org.mapstruct.Mapper;
|
||||
|
||||
import java.util.List;
|
||||
/**
|
||||
* 商品信息 DO <=> DTO <=> VO / BO / Query
|
||||
*
|
||||
@ -18,9 +15,4 @@ import java.util.List;
|
||||
@Mapper(componentModel = "spring")
|
||||
public interface ProductConvert extends BaseConverter<ProductVO, ProductBo, Product> {
|
||||
|
||||
// List<ProductVO> dos2vos(List<Product> list);
|
||||
// Product vo2do(ProductVO productVO);
|
||||
// ProductVO do2vo(Product product);
|
||||
//
|
||||
// List<H5ProductVO> dos2dtos(List<Product> products);
|
||||
}
|
||||
|
@ -6,7 +6,6 @@ import com.wzj.soopin.goods.domain.vo.SkuVO;
|
||||
import org.dromara.common.web.core.BaseConverter;
|
||||
import org.mapstruct.Mapper;
|
||||
|
||||
import java.util.List;
|
||||
/**
|
||||
* sku信息 DO <=> DTO <=> VO / BO / Query
|
||||
*
|
||||
@ -15,5 +14,4 @@ import java.util.List;
|
||||
@Mapper(componentModel = "spring")
|
||||
public interface SkuConvert extends BaseConverter<SkuVO, SkuBo, Sku> {
|
||||
|
||||
// List<SkuVO> dos2vos(List<Sku> list);
|
||||
}
|
||||
|
@ -2,7 +2,6 @@ package com.wzj.soopin.goods.domain.bo;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.Wrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
|
||||
import com.wzj.soopin.goods.domain.entity.Product;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
@ -71,7 +70,6 @@ public class ProductBo {
|
||||
@Schema(description = "搜索关键字")
|
||||
private String search;
|
||||
|
||||
// 排查的id
|
||||
@Schema(description = "排除的商品ID列表")
|
||||
private List<Long> excludeProductIds;
|
||||
|
||||
|
@ -6,9 +6,9 @@ import com.wzj.soopin.goods.domain.entity.ProductCategory;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @author fxh
|
||||
*/
|
||||
@Data
|
||||
@Schema(description = "商品分类 查询 对象")
|
||||
public class ProductCategoryBo {
|
||||
|
@ -5,7 +5,6 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.wzj.soopin.goods.domain.entity.Sku;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
import org.dromara.common.excel.annotation.Excel;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
|
||||
|
@ -92,7 +92,7 @@ public class Product extends BaseAudit {
|
||||
|
||||
@Schema(description = "店铺id")
|
||||
@Excel(name = "店铺id")
|
||||
private String tenantId;
|
||||
private Long tenantId;
|
||||
|
||||
@Schema(description = "审核状态 1.待审核;->2.审核通过;3->审核驳回")
|
||||
@Excel(name = "审核状态 1.待审核;->2.审核通过;3->审核驳回")
|
||||
|
@ -3,6 +3,7 @@ package com.wzj.soopin.goods.domain.entity;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import org.dromara.common.core.domain.model.BaseAudit;
|
||||
import org.dromara.common.excel.annotation.Excel;
|
||||
|
||||
@ -13,6 +14,7 @@ import java.math.BigDecimal;
|
||||
*
|
||||
* @author zcc
|
||||
*/
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@Schema(description = "SKU信息对象")
|
||||
@Data
|
||||
@TableName("pms_sku")
|
||||
|
@ -113,7 +113,7 @@ public class ProductVO extends BaseAudit {
|
||||
private String contactPhone;
|
||||
|
||||
@Schema(description = "店铺id")
|
||||
private String tenantId;
|
||||
private Long tenantId;
|
||||
|
||||
@Schema(description = "审核状态 1.待审核、2.审核通过、3.审核驳回")
|
||||
private String authFlag;
|
||||
|
@ -32,12 +32,6 @@ public interface ProductMapper extends BaseMapper<Product> {
|
||||
|
||||
|
||||
|
||||
@Select("SELECT " +
|
||||
"SUM(CASE WHEN auth_flag = 1 THEN 1 ELSE 0 END) AS count1, " +
|
||||
"SUM(CASE WHEN auth_flag = 2 THEN 1 ELSE 0 END) AS count2 " +
|
||||
"FROM pms_product")
|
||||
Map<String, Object> countProduct();
|
||||
|
||||
@Select("SELECT " +
|
||||
"name, " +
|
||||
"sales, " +
|
||||
@ -50,4 +44,10 @@ public interface ProductMapper extends BaseMapper<Product> {
|
||||
|
||||
|
||||
ProductVO selectProductWithSkus(@Param("id") Long id);
|
||||
|
||||
@Select("SELECT " +
|
||||
"SUM(CASE WHEN auth_flag = 1 THEN 1 ELSE 0 END) AS count1, " +
|
||||
"SUM(CASE WHEN auth_flag = 2 THEN 1 ELSE 0 END) AS count2 " +
|
||||
"FROM pms_product")
|
||||
Map<String, Object> countProduct();
|
||||
}
|
||||
|
@ -8,5 +8,7 @@ import com.wzj.soopin.goods.domain.entity.Product;
|
||||
import com.wzj.soopin.goods.domain.vo.ProductVO;
|
||||
|
||||
public interface ProductService extends IService<Product> {
|
||||
|
||||
IPage<ProductVO> getList(ProductBo query, Page<Product> page);
|
||||
|
||||
}
|
||||
|
@ -1,20 +1,12 @@
|
||||
package com.wzj.soopin.goods.service.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.wzj.soopin.goods.domain.entity.Brand;
|
||||
import com.wzj.soopin.goods.domain.query.BrandQuery;
|
||||
import com.wzj.soopin.goods.mapper.BrandMapper;
|
||||
import com.wzj.soopin.goods.service.BrandService;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.data.domain.Pageable;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 品牌管理Service业务层处理
|
||||
*
|
||||
|
@ -1,33 +1,11 @@
|
||||
package com.wzj.soopin.goods.service.impl;
|
||||
|
||||
import cn.hutool.core.collection.CollUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.OrderItem;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.wzj.soopin.goods.convert.ProductCategoryConvert;
|
||||
import com.wzj.soopin.goods.convert.ProductConvert;
|
||||
import com.wzj.soopin.goods.domain.dto.CategoryDTO;
|
||||
import com.wzj.soopin.goods.domain.entity.Product;
|
||||
import com.wzj.soopin.goods.domain.entity.ProductCategory;
|
||||
import com.wzj.soopin.goods.domain.query.ProductCategoryQuery;
|
||||
import com.wzj.soopin.goods.domain.vo.ProductCategoryVO;
|
||||
import com.wzj.soopin.goods.mapper.ProductCategoryMapper;
|
||||
import com.wzj.soopin.goods.mapper.ProductMapper;
|
||||
import com.wzj.soopin.goods.service.ProductCategoryService;
|
||||
import com.wzj.soopin.goods.service.ProductService;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.dromara.common.core.exception.base.BaseException;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.data.domain.Pageable;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* 商品分类Service业务层处理
|
||||
|
@ -1,35 +1,15 @@
|
||||
package com.wzj.soopin.goods.service.impl;
|
||||
|
||||
import cn.hutool.core.collection.CollectionUtil;
|
||||
import cn.hutool.json.JSONUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.wzj.soopin.goods.convert.ProductConvert;
|
||||
import com.wzj.soopin.goods.domain.bo.ProductBo;
|
||||
import com.wzj.soopin.goods.domain.entity.Product;
|
||||
import com.wzj.soopin.goods.domain.entity.Sku;
|
||||
import com.wzj.soopin.goods.domain.query.ProductQuery;
|
||||
import com.wzj.soopin.goods.domain.vo.ProductDetailVO;
|
||||
import com.wzj.soopin.goods.domain.vo.ProductVO;
|
||||
import com.wzj.soopin.goods.mapper.BrandMapper;
|
||||
import com.wzj.soopin.goods.mapper.ProductMapper;
|
||||
import com.wzj.soopin.goods.mapper.SkuMapper;
|
||||
import com.wzj.soopin.goods.service.ProductService;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.data.domain.Pageable;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* 商品信息Service业务层处理
|
||||
@ -38,19 +18,21 @@ import java.util.stream.Collectors;
|
||||
* @author zcc
|
||||
*/
|
||||
@Service
|
||||
@Slf4j
|
||||
@RequiredArgsConstructor
|
||||
public class ProductServiceImpl extends ServiceImpl<ProductMapper, Product> implements ProductService {
|
||||
@Autowired
|
||||
private ProductMapper productMapper;
|
||||
|
||||
|
||||
private final ProductMapper productMapper;
|
||||
|
||||
@Override
|
||||
public IPage<ProductVO> getList(ProductBo query, Page<Product> page) {
|
||||
IPage<ProductVO> resultPage = productMapper.getlist(page,query);
|
||||
return resultPage;
|
||||
return productMapper.getlist(page,query);
|
||||
}
|
||||
public Product audit(Long id, Integer authFlag,String reasons) {
|
||||
Product productToUpdate = new Product();
|
||||
productToUpdate.setId(id);
|
||||
Product productToUpdate = productMapper.selectById(id);
|
||||
if (productToUpdate == null) {
|
||||
throw new RuntimeException("商品不存在");
|
||||
}
|
||||
productToUpdate.setAuthFlag(authFlag);
|
||||
productToUpdate.setReasons(reasons);
|
||||
productMapper.updateById(productToUpdate);
|
||||
@ -58,8 +40,10 @@ public class ProductServiceImpl extends ServiceImpl<ProductMapper, Product> impl
|
||||
}
|
||||
|
||||
public Product publish(Long id, Integer publishStatus) {
|
||||
Product product = new Product();
|
||||
product.setId(id);
|
||||
Product product = productMapper.selectById(id);
|
||||
if (product == null) {
|
||||
throw new RuntimeException("商品不存在");
|
||||
}
|
||||
product.setPublishStatus(publishStatus);
|
||||
productMapper.updateById(product);
|
||||
return product;
|
||||
|
@ -1,6 +1,5 @@
|
||||
package com.wzj.soopin.goods.service.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
@ -9,12 +8,9 @@ import com.wzj.soopin.goods.domain.entity.Sku;
|
||||
import com.wzj.soopin.goods.domain.vo.SkuVO;
|
||||
import com.wzj.soopin.goods.mapper.SkuMapper;
|
||||
import com.wzj.soopin.goods.service.SkuService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* sku信息Service业务层处理
|
||||
@ -23,12 +19,13 @@ import java.util.List;
|
||||
* @author zcc
|
||||
*/
|
||||
@Service
|
||||
@RequiredArgsConstructor
|
||||
public class SkuServiceImpl extends ServiceImpl<SkuMapper, Sku> implements SkuService {
|
||||
@Autowired private SkuMapper skuMapper;
|
||||
|
||||
private final SkuMapper skuMapper;
|
||||
|
||||
public IPage<SkuVO> getList(SkuBo query, Page<Sku> page) {
|
||||
IPage<SkuVO> resultPage = skuMapper.getlist(page,query);
|
||||
return resultPage;
|
||||
return skuMapper.getlist(page,query);
|
||||
}
|
||||
|
||||
public SkuVO selectSkuByid(Long id) {
|
||||
|
@ -56,7 +56,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
</where>
|
||||
</select>
|
||||
|
||||
<select id="getlist" resultType="ProductVO">
|
||||
<select id="getlist" resultType="com.wzj.soopin.goods.domain.vo.ProductVO">
|
||||
SELECT
|
||||
p.*,
|
||||
b.name AS brandName,
|
||||
|
@ -2,6 +2,7 @@
|
||||
<!DOCTYPE mapper
|
||||
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<!--suppress MybatisPlusMapperXmlInspection -->
|
||||
<mapper namespace="com.wzj.soopin.goods.mapper.SkuMapper">
|
||||
|
||||
<resultMap type="Sku" id="SkuResult">
|
||||
|
@ -162,6 +162,10 @@
|
||||
<groupId>org.dromara</groupId>
|
||||
<artifactId>ruoyi-content</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.dromara</groupId>
|
||||
<artifactId>ruoyi-im</artifactId>
|
||||
</dependency>
|
||||
|
||||
</dependencies>
|
||||
</project>
|
||||
|
@ -10,6 +10,7 @@ import com.wzj.soopin.order.domain.form.DealWithAftersaleForm;
|
||||
import com.wzj.soopin.order.domain.vo.*;
|
||||
import com.wzj.soopin.order.service.impl.AftersaleServiceImpl;
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.dromara.common.core.domain.R;
|
||||
import org.dromara.common.core.domain.model.LoginUser;
|
||||
@ -19,7 +20,6 @@ import org.dromara.common.log.annotation.Log;
|
||||
import org.dromara.common.log.enums.BusinessType;
|
||||
import org.dromara.common.redis.redis.RedisService;
|
||||
import org.dromara.common.web.core.BaseController;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
@ -35,18 +35,13 @@ import java.util.List;
|
||||
@RestController
|
||||
@RequestMapping("/oms/aftersale")
|
||||
@Slf4j
|
||||
@RequiredArgsConstructor
|
||||
public class AftersaleController extends BaseController {
|
||||
|
||||
private final AftersaleServiceImpl service;
|
||||
private final AftersaleConvert convert;
|
||||
private final RedisService redisService;
|
||||
|
||||
public AftersaleController(AftersaleServiceImpl service, AftersaleConvert convert, RedisService redisService) {
|
||||
this.service = service;
|
||||
this.convert = convert;
|
||||
this.redisService = redisService;
|
||||
}
|
||||
|
||||
|
||||
@Tag(name ="查询订单售后列表")
|
||||
@PostMapping("/list")
|
||||
@ -57,11 +52,11 @@ public class AftersaleController extends BaseController {
|
||||
|
||||
@Tag(name ="导出订单售后列表")
|
||||
@Log(title = "订单售后", businessType = BusinessType.EXPORT)
|
||||
@GetMapping("export")
|
||||
public ResponseEntity<String> export(AftersaleBo query) {
|
||||
@PostMapping("export")
|
||||
public R<String> export(AftersaleBo query) {
|
||||
List<Aftersale> list = service.list(query.toWrapper());
|
||||
ExcelUtil<AftersaleVO> util = new ExcelUtil<>(AftersaleVO.class);
|
||||
return ResponseEntity.ok(util.writeExcel(convert.toVO(list), "订单售后数据"));
|
||||
return R.ok(util.writeExcel(convert.toVO(list), "订单售后数据"));
|
||||
}
|
||||
|
||||
@Tag(name ="获取订单售后详细信息")
|
||||
|
@ -1,33 +1,20 @@
|
||||
package com.wzj.soopin.order.controller;
|
||||
|
||||
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.wzj.soopin.member.domain.bo.MemberAccountBO;
|
||||
import com.wzj.soopin.member.domain.po.Member;
|
||||
import com.wzj.soopin.member.domain.po.MemberAccount;
|
||||
import com.wzj.soopin.member.domain.vo.MemberAccountVO;
|
||||
import com.wzj.soopin.order.convert.AftersaleItemConvert;
|
||||
import com.wzj.soopin.order.domain.bo.AftersaleBo;
|
||||
import com.wzj.soopin.order.domain.bo.AftersaleItemBo;
|
||||
import com.wzj.soopin.order.domain.entity.Aftersale;
|
||||
import com.wzj.soopin.order.domain.entity.AftersaleItem;
|
||||
import com.wzj.soopin.order.domain.form.ManagerAftersaleOrderForm;
|
||||
import com.wzj.soopin.order.domain.query.AftersaleItemQuery;
|
||||
import com.wzj.soopin.order.domain.vo.AftersaleItemVO;
|
||||
import com.wzj.soopin.order.domain.vo.AftersaleVO;
|
||||
import com.wzj.soopin.order.domain.vo.PageVO;
|
||||
import com.wzj.soopin.order.service.AftersaleItemService;
|
||||
import com.wzj.soopin.order.service.impl.AftersaleItemServiceImpl;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.dromara.common.core.domain.R;
|
||||
import org.dromara.common.excel.utils.ExcelUtil;
|
||||
import org.dromara.common.log.annotation.Log;
|
||||
import org.dromara.common.log.enums.BusinessType;
|
||||
import org.dromara.common.web.core.BaseController;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
@ -41,13 +28,12 @@ import java.util.List;
|
||||
@Tag(name ="订单售后接口列表")
|
||||
@RestController
|
||||
@RequestMapping("/oms/aftersaleItem")
|
||||
@RequiredArgsConstructor
|
||||
public class AftersaleItemController extends BaseController {
|
||||
@Autowired
|
||||
private AftersaleItemServiceImpl service;
|
||||
@Autowired
|
||||
private AftersaleItemConvert convert;
|
||||
@Autowired
|
||||
private AftersaleItemService aftersaleItemService;
|
||||
|
||||
private final AftersaleItemServiceImpl service;
|
||||
private final AftersaleItemConvert convert;
|
||||
private final AftersaleItemService aftersaleItemService;
|
||||
|
||||
@Tag(name ="查询订单售后列表")
|
||||
@PostMapping("/list")
|
||||
@ -56,15 +42,13 @@ public class AftersaleItemController extends BaseController {
|
||||
return R.ok(convert.toVO(list));
|
||||
}
|
||||
|
||||
|
||||
|
||||
@Tag(name ="导出订单售后列表")
|
||||
@Log(title = "订单售后", businessType = BusinessType.EXPORT)
|
||||
@GetMapping("export")
|
||||
public ResponseEntity<String> export(AftersaleItemBo query) {
|
||||
@PostMapping("export")
|
||||
public R<String> export(AftersaleItemBo query) {
|
||||
List<AftersaleItem> list = service.list(query.toWrapper());
|
||||
ExcelUtil<AftersaleItemVO> util = new ExcelUtil<>(AftersaleItemVO.class);
|
||||
return ResponseEntity.ok(util.writeExcel(convert.toVO(list), "订单售后数据"));
|
||||
return R.ok(util.writeExcel(convert.toVO(list), "订单售后数据"));
|
||||
}
|
||||
|
||||
@Tag(name ="获取订单售后详细信息")
|
||||
|
@ -10,6 +10,7 @@ import com.wzj.soopin.order.domain.vo.*;
|
||||
import com.wzj.soopin.order.service.OrderService;
|
||||
import com.wzj.soopin.order.service.impl.OrderServiceImpl;
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.dromara.common.core.domain.R;
|
||||
import org.dromara.common.core.utils.SecurityUtils;
|
||||
@ -18,7 +19,6 @@ import org.dromara.common.log.annotation.Log;
|
||||
import org.dromara.common.log.enums.BusinessType;
|
||||
import org.dromara.common.redis.redis.RedisService;
|
||||
import org.dromara.common.web.core.BaseController;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
|
||||
import org.springframework.http.ResponseEntity;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
@ -28,21 +28,19 @@ import java.util.List;
|
||||
* 订单表Controller
|
||||
*
|
||||
* @author zcc
|
||||
* @date 2022-12-01
|
||||
* @date 2022-12-01
|
||||
*/
|
||||
@Tag(name ="订单表接口列表")
|
||||
@RestController
|
||||
@RequestMapping("/oms/order")
|
||||
@Slf4j
|
||||
@RequiredArgsConstructor
|
||||
public class OrderController extends BaseController {
|
||||
@Autowired
|
||||
private OrderServiceImpl service;
|
||||
@Autowired
|
||||
private OrderConvert convert;
|
||||
@Autowired
|
||||
private RedisService redisService;
|
||||
@Autowired
|
||||
private OrderService orderService;
|
||||
|
||||
private final OrderServiceImpl service;
|
||||
private final OrderConvert convert;
|
||||
private final RedisService redisService;
|
||||
private final OrderService orderService;
|
||||
|
||||
|
||||
@Tag(name ="查询订单列表")
|
||||
@ -60,13 +58,12 @@ public class OrderController extends BaseController {
|
||||
@Tag(name ="导出订单表列表")
|
||||
@Log(title = "订单售后", businessType = BusinessType.EXPORT)
|
||||
@PostMapping("export")
|
||||
public ResponseEntity<String> export(OrderBo query) {
|
||||
public R<String> export(OrderBo query) {
|
||||
List<Order> list = service.list(query.toWrapper());
|
||||
ExcelUtil<OrderVO> util = new ExcelUtil<>(OrderVO.class);
|
||||
return ResponseEntity.ok(util.writeExcel(convert.toVO(list), "订单售后数据"));
|
||||
return R.ok(util.writeExcel(convert.toVO(list), "订单列表数据"));
|
||||
}
|
||||
|
||||
|
||||
@Tag(name ="获取订单表详细信息")
|
||||
@GetMapping(value = "/{id}")
|
||||
public R<ManagerOrderDetailVO> getInfo(@PathVariable("id") Long id) {
|
||||
@ -77,7 +74,16 @@ public class OrderController extends BaseController {
|
||||
@Log(title = "订单表", businessType = BusinessType.INSERT)
|
||||
@PostMapping("/add")
|
||||
public R add(@RequestBody Order order) {
|
||||
return service.insert(order);
|
||||
R<Order> result = service.insert(order);
|
||||
|
||||
if (result != null) {
|
||||
// 订单创建成功,发送消息
|
||||
service.sendMessage(order);
|
||||
log.info("订单创建成功,消息已发送,订单ID: {}", order.getId());
|
||||
} else {
|
||||
log.warn("订单创建失败: {}", "返回结果为null");
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
@Tag(name ="修改订单表")
|
||||
@ -97,7 +103,7 @@ public class OrderController extends BaseController {
|
||||
@Tag(name ="添加备注")
|
||||
@Log(title = "订单表", businessType = BusinessType.UPDATE)
|
||||
@PostMapping("/merchantNote/add")
|
||||
public R<Order> saveMerchantNote(@RequestBody Order order){
|
||||
public R saveMerchantNote(@RequestBody Order order){
|
||||
return service.saveMerchantNote(order);
|
||||
}
|
||||
|
||||
|
@ -3,29 +3,18 @@ package com.wzj.soopin.order.controller;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.wzj.soopin.order.convert.OrderDeliveryHistoryConvert;
|
||||
import com.wzj.soopin.order.domain.bo.OrderBo;
|
||||
import com.wzj.soopin.order.domain.bo.OrderDeliveryHistoryBo;
|
||||
import com.wzj.soopin.order.domain.entity.Order;
|
||||
import com.wzj.soopin.order.domain.entity.OrderDeliveryHistory;
|
||||
import com.wzj.soopin.order.domain.form.DeliverProductForm;
|
||||
import com.wzj.soopin.order.domain.form.ManagerOrderQueryForm;
|
||||
import com.wzj.soopin.order.domain.query.OrderDeliveryHistoryQuery;
|
||||
import com.wzj.soopin.order.domain.vo.ManagerOrderVO;
|
||||
import com.wzj.soopin.order.domain.vo.OrderDeliveryHistoryVO;
|
||||
import com.wzj.soopin.order.domain.vo.OrderVO;
|
||||
import com.wzj.soopin.order.domain.vo.PageVO;
|
||||
import com.wzj.soopin.order.service.OrderDeliveryHistoryService;
|
||||
import com.wzj.soopin.order.service.impl.OrderDeliveryHistoryServiceImpl;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.dromara.common.core.domain.R;
|
||||
import org.dromara.common.excel.utils.ExcelUtil;
|
||||
import org.dromara.common.log.annotation.Log;
|
||||
import org.dromara.common.log.enums.BusinessType;
|
||||
import org.dromara.common.web.core.BaseController;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.util.List;
|
||||
@ -38,13 +27,12 @@ import java.util.List;
|
||||
@Tag(name ="订单发货记录接口列表")
|
||||
@RestController
|
||||
@RequestMapping("/oms/orderDeliveryHistory")
|
||||
@RequiredArgsConstructor
|
||||
public class OrderDeliveryHistoryController extends BaseController {
|
||||
@Autowired
|
||||
private OrderDeliveryHistoryServiceImpl service;
|
||||
@Autowired
|
||||
private OrderDeliveryHistoryConvert convert;
|
||||
@Autowired
|
||||
private OrderDeliveryHistoryService historyService;
|
||||
|
||||
private final OrderDeliveryHistoryServiceImpl service;
|
||||
private final OrderDeliveryHistoryConvert convert;
|
||||
private final OrderDeliveryHistoryService historyService;
|
||||
|
||||
@Tag(name ="查询订单发货列表")
|
||||
@PostMapping("/list")
|
||||
@ -53,14 +41,13 @@ public class OrderDeliveryHistoryController extends BaseController {
|
||||
return R.ok(convert.toVO(list));
|
||||
}
|
||||
|
||||
|
||||
@Tag(name ="导出订单发货记录列表")
|
||||
@Log(title = "订单发货记录", businessType = BusinessType.EXPORT)
|
||||
@GetMapping("export")
|
||||
public ResponseEntity<String> export(OrderDeliveryHistoryBo query) {
|
||||
@PostMapping("export")
|
||||
public R<String> export(OrderDeliveryHistoryBo query) {
|
||||
List<OrderDeliveryHistory> list = service.list(query.toWrapper());
|
||||
ExcelUtil<OrderDeliveryHistoryVO> util = new ExcelUtil<>(OrderDeliveryHistoryVO.class);
|
||||
return ResponseEntity.ok(util.writeExcel(convert.toVO(list), "订单发货记录数据"));
|
||||
return R.ok(util.writeExcel(convert.toVO(list), "订单发货记录数据"));
|
||||
}
|
||||
|
||||
|
||||
|
@ -1,37 +1,20 @@
|
||||
package com.wzj.soopin.order.controller;
|
||||
|
||||
import cn.dev33.satoken.annotation.SaCheckPermission;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.wzj.soopin.member.domain.bo.MemberBO;
|
||||
import com.wzj.soopin.member.domain.po.Member;
|
||||
import com.wzj.soopin.member.domain.vo.MemberVO;
|
||||
import com.wzj.soopin.order.convert.OrderItemConvert;
|
||||
import com.wzj.soopin.order.domain.bo.AftersaleBo;
|
||||
import com.wzj.soopin.order.domain.bo.AftersaleItemBo;
|
||||
import com.wzj.soopin.order.domain.bo.OrderDeliveryHistoryBo;
|
||||
import com.wzj.soopin.order.domain.bo.OrderItemBo;
|
||||
import com.wzj.soopin.order.domain.entity.AftersaleItem;
|
||||
import com.wzj.soopin.order.domain.entity.OrderDeliveryHistory;
|
||||
import com.wzj.soopin.order.domain.entity.OrderItem;
|
||||
import com.wzj.soopin.order.domain.query.OrderDeliveryHistoryQuery;
|
||||
import com.wzj.soopin.order.domain.query.OrderItemQuery;
|
||||
import com.wzj.soopin.order.domain.vo.AftersaleItemVO;
|
||||
import com.wzj.soopin.order.domain.vo.OrderDeliveryHistoryVO;
|
||||
import com.wzj.soopin.order.domain.vo.OrderItemVO;
|
||||
import com.wzj.soopin.order.domain.vo.PageVO;
|
||||
import com.wzj.soopin.order.service.OrderItemService;
|
||||
import com.wzj.soopin.order.service.impl.OrderItemServiceImpl;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.dromara.common.core.domain.R;
|
||||
import org.dromara.common.excel.utils.ExcelUtil;
|
||||
import org.dromara.common.log.annotation.Log;
|
||||
import org.dromara.common.log.enums.BusinessType;
|
||||
import org.dromara.common.web.core.BaseController;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.util.List;
|
||||
@ -44,13 +27,13 @@ import java.util.List;
|
||||
@Tag(name ="订单中所包含的商品接口列表")
|
||||
@RestController
|
||||
@RequestMapping("/oms/orderItem")
|
||||
@RequiredArgsConstructor
|
||||
public class OrderItemController extends BaseController {
|
||||
@Autowired
|
||||
private OrderItemServiceImpl service;
|
||||
@Autowired
|
||||
private OrderItemConvert convert;
|
||||
@Autowired
|
||||
private OrderItemService orderItemService;
|
||||
|
||||
|
||||
private final OrderItemServiceImpl service;
|
||||
private final OrderItemConvert convert;
|
||||
private final OrderItemService orderItemService;
|
||||
|
||||
@Tag(name = "查询订单中所包含的商品列表")
|
||||
@PostMapping("/list")
|
||||
@ -59,14 +42,13 @@ public class OrderItemController extends BaseController {
|
||||
return R.ok(convert.toVO(list));
|
||||
}
|
||||
|
||||
|
||||
@Tag(name = "导出会员信息列表")
|
||||
@Tag(name ="导出会员信息列表")
|
||||
@Log(title = "会员信息", businessType = BusinessType.EXPORT)
|
||||
@GetMapping("export")
|
||||
public ResponseEntity<String> export(OrderItemBo query) {
|
||||
@PostMapping("export")
|
||||
public R<String> export(OrderItemBo query) {
|
||||
List<OrderItem> list = service.list(query.toWrapper());
|
||||
ExcelUtil<OrderItemVO> util = new ExcelUtil<>(OrderItemVO.class);
|
||||
return ResponseEntity.ok(util.writeExcel(convert.toVO(list), "订单中所包含的商品数据"));
|
||||
return R.ok(util.writeExcel(convert.toVO(list), "订单中所包含的商品数据"));
|
||||
}
|
||||
|
||||
@Tag(name = "获取订单中所包含的商品详细信息")
|
||||
|
@ -1,30 +1,19 @@
|
||||
package com.wzj.soopin.order.controller;
|
||||
|
||||
import cn.dev33.satoken.annotation.SaCheckPermission;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.wzj.soopin.order.convert.OrderOperateHistoryConvert;
|
||||
import com.wzj.soopin.order.domain.bo.OrderItemBo;
|
||||
import com.wzj.soopin.order.domain.bo.OrderOperateHistoryBo;
|
||||
import com.wzj.soopin.order.domain.entity.OrderItem;
|
||||
import com.wzj.soopin.order.domain.entity.OrderOperateHistory;
|
||||
import com.wzj.soopin.order.domain.query.OrderItemQuery;
|
||||
import com.wzj.soopin.order.domain.query.OrderOperateHistoryQuery;
|
||||
import com.wzj.soopin.order.domain.vo.OrderItemVO;
|
||||
import com.wzj.soopin.order.domain.vo.OrderOperateHistoryVO;
|
||||
import com.wzj.soopin.order.domain.vo.PageVO;
|
||||
import com.wzj.soopin.order.service.OrderOperateHistoryService;
|
||||
import com.wzj.soopin.order.service.impl.OrderOperateHistoryServiceImpl;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.dromara.common.core.domain.R;
|
||||
import org.dromara.common.excel.utils.ExcelUtil;
|
||||
import org.dromara.common.log.annotation.Log;
|
||||
import org.dromara.common.log.enums.BusinessType;
|
||||
import org.dromara.common.web.core.BaseController;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.util.List;
|
||||
@ -37,11 +26,12 @@ import java.util.List;
|
||||
@Tag(name ="订单操作历史记录接口列表")
|
||||
@RestController
|
||||
@RequestMapping("/oms/orderOperateHistory")
|
||||
@RequiredArgsConstructor
|
||||
public class OrderOperateHistoryController extends BaseController {
|
||||
@Autowired
|
||||
private OrderOperateHistoryServiceImpl service;
|
||||
@Autowired
|
||||
private OrderOperateHistoryConvert convert;
|
||||
|
||||
|
||||
private final OrderOperateHistoryServiceImpl service;
|
||||
private final OrderOperateHistoryConvert convert;
|
||||
|
||||
@Tag(name ="查询订单操作历史记录列表")
|
||||
@PostMapping("/list")
|
||||
@ -53,11 +43,11 @@ public class OrderOperateHistoryController extends BaseController {
|
||||
|
||||
@Tag(name ="导出订单操作历史记录列表")
|
||||
@Log(title = "订单操作历史记录", businessType = BusinessType.EXPORT)
|
||||
@GetMapping("export")
|
||||
public ResponseEntity<String> export(OrderOperateHistoryBo query) {
|
||||
@PostMapping("export")
|
||||
public R<String> export(OrderOperateHistoryBo query) {
|
||||
List<OrderOperateHistory> list = service.list(query.toWrapper());
|
||||
ExcelUtil<OrderOperateHistoryVO> util = new ExcelUtil<>(OrderOperateHistoryVO.class);
|
||||
return ResponseEntity.ok(util.writeExcel(convert.toVO(list), "订单操作历史记录数据"));
|
||||
return R.ok(util.writeExcel(convert.toVO(list), "订单操作历史记录数据"));
|
||||
}
|
||||
|
||||
@Tag(name ="获取订单操作历史记录详细信息")
|
||||
|
@ -2,23 +2,25 @@ package com.wzj.soopin.order.controller;
|
||||
|
||||
import com.wzj.soopin.order.domain.dto.CodeVerificationDto;
|
||||
import com.wzj.soopin.order.service.VerificationCodeService;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.dromara.common.core.domain.R;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
/**
|
||||
* 核销码相关接口
|
||||
* @author fxh
|
||||
*/
|
||||
@Tag(name = "核销码接口")
|
||||
@RestController
|
||||
@RequestMapping("/oms/verification")
|
||||
@RequiredArgsConstructor
|
||||
@Slf4j
|
||||
public class VerificationCodeController {
|
||||
|
||||
@Autowired
|
||||
private VerificationCodeService verificationCodeService;
|
||||
|
||||
private final VerificationCodeService verificationCodeService;
|
||||
|
||||
|
||||
/**
|
||||
@ -32,12 +34,19 @@ public class VerificationCodeController {
|
||||
|
||||
/**
|
||||
* 扫码核销接口
|
||||
* @return 核销结果z
|
||||
* @return 核销结果
|
||||
*/
|
||||
@PostMapping("/verify")
|
||||
@Tag(name = "扫码核销接口")
|
||||
public R verifyCode(@RequestBody CodeVerificationDto codeVerificationDto) {
|
||||
return verificationCodeService.verifyCode(codeVerificationDto);
|
||||
R result = verificationCodeService.verifyCode(codeVerificationDto);
|
||||
if (R.isSuccess(result)){
|
||||
verificationCodeService.sendMessage(codeVerificationDto);
|
||||
}
|
||||
else{
|
||||
verificationCodeService.sendMessageNo(codeVerificationDto);
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -3,27 +3,18 @@ package com.wzj.soopin.order.controller;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.wzj.soopin.order.convert.WechatPaymentHistoryConvert;
|
||||
import com.wzj.soopin.order.domain.bo.OrderOperateHistoryBo;
|
||||
import com.wzj.soopin.order.domain.bo.WechatPaymentHistoryBo;
|
||||
import com.wzj.soopin.order.domain.entity.OrderOperateHistory;
|
||||
import com.wzj.soopin.order.domain.entity.WechatPaymentHistory;
|
||||
import com.wzj.soopin.order.domain.query.OrderOperateHistoryQuery;
|
||||
import com.wzj.soopin.order.domain.query.WechatPaymentHistoryQuery;
|
||||
import com.wzj.soopin.order.domain.vo.OrderOperateHistoryVO;
|
||||
import com.wzj.soopin.order.domain.vo.PageVO;
|
||||
import com.wzj.soopin.order.domain.vo.WechatPaymentHistoryVO;
|
||||
import com.wzj.soopin.order.service.WechatPaymentHistoryService;
|
||||
import com.wzj.soopin.order.service.impl.WechatPaymentHistoryServiceImpl;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.dromara.common.core.domain.R;
|
||||
import org.dromara.common.excel.utils.ExcelUtil;
|
||||
import org.dromara.common.log.annotation.Log;
|
||||
import org.dromara.common.log.enums.BusinessType;
|
||||
import org.dromara.common.web.core.BaseController;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.util.List;
|
||||
@ -31,18 +22,17 @@ import java.util.List;
|
||||
* 微信订单表Controller
|
||||
*
|
||||
* @author zcc
|
||||
* @date 2023-07-12
|
||||
* @date 2023-07-12
|
||||
*/
|
||||
@Tag(name ="微信订单表接口列表")
|
||||
@RestController
|
||||
@RequestMapping("/pms/omsWechatPaymentHistory")
|
||||
@RequiredArgsConstructor
|
||||
public class WechatPaymentHistoryController extends BaseController {
|
||||
@Autowired
|
||||
private WechatPaymentHistoryServiceImpl service;
|
||||
@Autowired
|
||||
private WechatPaymentHistoryConvert convert;
|
||||
@Autowired
|
||||
private WechatPaymentHistoryService wechatPaymentHistoryService;
|
||||
|
||||
private final WechatPaymentHistoryServiceImpl service;
|
||||
private final WechatPaymentHistoryConvert convert;
|
||||
private final WechatPaymentHistoryService wechatPaymentHistoryService;
|
||||
@Tag(name ="查询微信订单表列表")
|
||||
@PostMapping("/list")
|
||||
public R<IPage<WechatPaymentHistoryVO>> list(@RequestBody WechatPaymentHistoryBo query, Page<WechatPaymentHistory> page) {
|
||||
@ -50,14 +40,13 @@ public class WechatPaymentHistoryController extends BaseController {
|
||||
return R.ok(convert.toVO(list));
|
||||
}
|
||||
|
||||
|
||||
@Tag(name ="导出微信订单表列表")
|
||||
@Log(title = "微信订单表", businessType = BusinessType.EXPORT)
|
||||
@GetMapping("export")
|
||||
public ResponseEntity<String> export(WechatPaymentHistoryBo query) {
|
||||
@PostMapping("export")
|
||||
public R<String> export(WechatPaymentHistoryBo query) {
|
||||
List<WechatPaymentHistory> list = service.list(query.toWrapper());
|
||||
ExcelUtil<WechatPaymentHistoryVO> util = new ExcelUtil<>(WechatPaymentHistoryVO.class);
|
||||
return ResponseEntity.ok(util.writeExcel(convert.toVO(list), "微信订单表数据"));
|
||||
return R.ok(util.writeExcel(convert.toVO(list), "微信订单表数据"));
|
||||
}
|
||||
|
||||
@Tag(name ="获取微信订单表详细信息")
|
||||
|
@ -34,7 +34,7 @@ public class Order extends BaseAudit {
|
||||
private Long payId;
|
||||
|
||||
@Schema(description = "租户id")
|
||||
private String tenantId;
|
||||
private Long tenantId;
|
||||
|
||||
@Schema(description = "订单编号")
|
||||
@Excel(name = "订单编号")
|
||||
|
@ -37,7 +37,7 @@ public class OrderVO extends BaseAudit {
|
||||
private Long memberId;
|
||||
|
||||
@Schema(description ="租户id")
|
||||
private String tenantId;
|
||||
private Long tenantId;
|
||||
|
||||
@Schema(description ="用户帐号")
|
||||
@Excel(name = "用户帐号")
|
||||
|
@ -1,12 +1,9 @@
|
||||
package com.wzj.soopin.order.mapper;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.InterceptorIgnore;
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.wzj.soopin.order.domain.entity.AftersaleItem;
|
||||
import com.wzj.soopin.order.domain.query.AftersaleItemQuery;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
|
||||
import java.util.List;
|
||||
|
||||
|
@ -8,8 +8,6 @@ import com.wzj.soopin.order.domain.entity.Aftersale;
|
||||
import com.wzj.soopin.order.domain.form.ManagerAftersaleOrderForm;
|
||||
import com.wzj.soopin.order.domain.vo.AftersaleVO;
|
||||
import com.wzj.soopin.order.domain.vo.ManagerRefundOrderVO;
|
||||
import com.wzj.soopin.order.domain.vo.OrderAndAftersaleStatisticsVO;
|
||||
import com.wzj.soopin.order.domain.vo.OrderVO;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
|
@ -1,17 +1,8 @@
|
||||
package com.wzj.soopin.order.mapper;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.InterceptorIgnore;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Constants;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.wzj.soopin.order.domain.entity.OrderDeliveryHistory;
|
||||
import com.wzj.soopin.order.domain.query.OrderDeliveryHistoryQuery;
|
||||
import com.wzj.soopin.order.domain.vo.OrderDeliveryHistoryVO;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
import org.springframework.data.domain.Pageable;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
|
@ -3,6 +3,7 @@ package com.wzj.soopin.order.mapper;
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.wzj.soopin.order.domain.entity.OrderItem;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.apache.ibatis.annotations.Select;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@ -20,4 +21,17 @@ public interface OrderItemMapper extends BaseMapper<OrderItem> {
|
||||
* @return 订单中所包含的商品集合
|
||||
*/
|
||||
List<OrderItem> selectByEntity(OrderItem orderItem);
|
||||
|
||||
/**
|
||||
* 根据订单ID查询商品名称
|
||||
*
|
||||
* @param orderId 订单ID
|
||||
* @return 商品名称
|
||||
*/
|
||||
@Select("SELECT p.name " +
|
||||
"FROM oms_order_item oi " +
|
||||
"JOIN pms_product p ON oi.product_id = p.id " +
|
||||
"WHERE oi.order_id = #{orderId} " +
|
||||
"LIMIT 1")
|
||||
String getName(Long orderId);
|
||||
}
|
||||
|
@ -7,13 +7,11 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.wzj.soopin.order.domain.bo.OrderBo;
|
||||
import com.wzj.soopin.order.domain.entity.Order;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.dromara.system.domain.SystemStatistics;
|
||||
import com.wzj.soopin.order.domain.form.ManagerOrderQueryForm;
|
||||
import com.wzj.soopin.order.domain.vo.*;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
import org.apache.ibatis.annotations.Select;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
|
@ -1,13 +1,8 @@
|
||||
package com.wzj.soopin.order.mapper;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.InterceptorIgnore;
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.wzj.soopin.order.domain.entity.OrderItem;
|
||||
import com.wzj.soopin.order.domain.entity.OrderOperateHistory;
|
||||
import com.wzj.soopin.order.domain.query.OrderOperateHistoryQuery;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
|
@ -3,12 +3,17 @@ package com.wzj.soopin.order.mapper;
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.wzj.soopin.order.domain.entity.VerificationCodes;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.apache.ibatis.annotations.Select;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
@Mapper
|
||||
public interface VerificationCodesMapper extends BaseMapper<VerificationCodes> {
|
||||
|
||||
|
||||
LocalDateTime verificationTime(String code);
|
||||
|
||||
Map<String, Object> getProduvtNameAndMemberId(String code);
|
||||
|
||||
String getReason(String code);
|
||||
}
|
||||
|
@ -1,12 +1,8 @@
|
||||
package com.wzj.soopin.order.mapper;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.InterceptorIgnore;
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.wzj.soopin.order.domain.entity.WechatPaymentHistory;
|
||||
import com.wzj.soopin.order.domain.query.WechatPaymentHistoryQuery;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
|
@ -8,4 +8,6 @@ import java.util.List;
|
||||
public interface OrderItemService extends IService<OrderItem> {
|
||||
|
||||
List<OrderItem> findByOrderId(Long orderId);
|
||||
|
||||
|
||||
}
|
||||
|
@ -1,15 +1,12 @@
|
||||
package com.wzj.soopin.order.service;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.Wrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.wzj.soopin.order.domain.bo.OrderBo;
|
||||
import com.wzj.soopin.order.domain.entity.Order;
|
||||
import com.wzj.soopin.order.domain.vo.OrderVO;
|
||||
import com.wzj.soopin.order.domain.vo.PageVO;
|
||||
|
||||
import java.util.Map;
|
||||
|
||||
public interface OrderService extends IService<Order> {
|
||||
|
||||
|
@ -11,4 +11,8 @@ public interface VerificationCodeService extends IService<VerificationCodes> {
|
||||
R generateVerificationCode(Long orderId);
|
||||
|
||||
R verifyCode(CodeVerificationDto codeVerificationDto);
|
||||
|
||||
void sendMessage(CodeVerificationDto codeVerificationDto);
|
||||
|
||||
void sendMessageNo(CodeVerificationDto codeVerificationDto);
|
||||
}
|
||||
|
@ -1,21 +1,11 @@
|
||||
package com.wzj.soopin.order.service.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.wzj.soopin.order.domain.entity.AftersaleItem;
|
||||
import com.wzj.soopin.order.domain.query.AftersaleItemQuery;
|
||||
import com.wzj.soopin.order.domain.vo.PageVO;
|
||||
import com.wzj.soopin.order.mapper.AftersaleItemMapper;
|
||||
import com.wzj.soopin.order.service.AftersaleItemService;
|
||||
import com.wzj.soopin.order.utils.PageUtil;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.data.domain.Pageable;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 订单售后Service业务层处理
|
||||
|
@ -1,6 +1,5 @@
|
||||
package com.wzj.soopin.order.service.impl;
|
||||
|
||||
import cn.hutool.core.collection.CollectionUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import com.alibaba.fastjson.JSON;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
@ -20,27 +19,24 @@ import com.wzj.soopin.member.mapper.MemberMapper;
|
||||
import com.wzj.soopin.member.mapper.MemberWechatMapper;
|
||||
import com.wzj.soopin.order.domain.bo.AftersaleBo;
|
||||
import com.wzj.soopin.order.service.AftersaleService;
|
||||
import com.wzj.soopin.order.convert.OrderOperateHistoryConvert;
|
||||
import com.wzj.soopin.order.domain.entity.*;
|
||||
import com.wzj.soopin.order.domain.form.DealWithAftersaleForm;
|
||||
import com.wzj.soopin.order.domain.form.ManagerAftersaleOrderForm;
|
||||
import com.wzj.soopin.order.domain.vo.*;
|
||||
import com.wzj.soopin.order.mapper.*;
|
||||
import com.wzj.soopin.order.wechat.WechatPayService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.dromara.common.core.domain.R;
|
||||
import org.dromara.common.core.domain.event.Constants;
|
||||
import org.dromara.common.core.enums.AftersaleStatus;
|
||||
import org.dromara.common.core.enums.OrderRefundStatus;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.data.domain.Pageable;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.*;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* 订单售后Service业务层处理
|
||||
@ -49,31 +45,22 @@ import java.util.stream.Collectors;
|
||||
*/
|
||||
@Service
|
||||
@Slf4j
|
||||
@RequiredArgsConstructor
|
||||
public class AftersaleServiceImpl extends ServiceImpl<AftersaleMapper, Aftersale> implements AftersaleService {
|
||||
@Autowired
|
||||
private AftersaleMapper aftersaleMapper;
|
||||
private final AftersaleMapper aftersaleMapper;
|
||||
private final OrderMapper orderMapper;
|
||||
private final OrderItemMapper orderItemMapper;
|
||||
private final OrderOperateHistoryMapper orderOperateHistoryMapper;
|
||||
private final MemberMapper memberMapper;
|
||||
private final SkuMapper skuMapper;
|
||||
private final WechatPaymentHistoryMapper wechatPaymentHistoryMapper;
|
||||
private final MemberWechatMapper memberWechatMapper;
|
||||
private final OrderOperateHistoryMapper operateHistoryMapper;
|
||||
|
||||
@Autowired
|
||||
private OrderMapper orderMapper;
|
||||
|
||||
@Autowired
|
||||
private OrderItemMapper orderItemMapper;
|
||||
|
||||
@Autowired
|
||||
private OrderOperateHistoryMapper orderOperateHistoryMapper;
|
||||
|
||||
@Autowired
|
||||
private MemberMapper memberMapper;
|
||||
@Autowired
|
||||
private SkuMapper skuMapper;
|
||||
@Autowired
|
||||
private WechatPaymentHistoryMapper wechatPaymentHistoryMapper;
|
||||
@Autowired
|
||||
private MemberWechatMapper memberWechatMapper;
|
||||
@Autowired(required = false)
|
||||
private WechatPayService wechatPayService;
|
||||
@Autowired
|
||||
private OrderOperateHistoryMapper operateHistoryMapper;
|
||||
|
||||
|
||||
/**
|
||||
* 查询订单售后
|
||||
@ -307,7 +294,6 @@ public class AftersaleServiceImpl extends ServiceImpl<AftersaleMapper, Aftersale
|
||||
/**
|
||||
* 订单退款回调MQ
|
||||
*
|
||||
* @param weChatRefundNotify
|
||||
*/
|
||||
@Transactional
|
||||
public void refundOrderExc(RefundNotification weChatRefundNotify) {
|
||||
@ -392,8 +378,7 @@ public class AftersaleServiceImpl extends ServiceImpl<AftersaleMapper, Aftersale
|
||||
}
|
||||
|
||||
public IPage<AftersaleVO> getlist(Page<Aftersale> page, AftersaleBo query) {
|
||||
IPage<AftersaleVO> resultPage = aftersaleMapper.getlist(page,query);
|
||||
return resultPage;
|
||||
return aftersaleMapper.getlist(page,query);
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -1,22 +1,11 @@
|
||||
package com.wzj.soopin.order.service.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.wzj.soopin.order.domain.entity.OrderDeliveryHistory;
|
||||
import com.wzj.soopin.order.domain.query.OrderDeliveryHistoryQuery;
|
||||
import com.wzj.soopin.order.domain.vo.OrderDeliveryHistoryVO;
|
||||
import com.wzj.soopin.order.domain.vo.PageVO;
|
||||
import com.wzj.soopin.order.mapper.OrderDeliveryHistoryMapper;
|
||||
import com.wzj.soopin.order.service.OrderDeliveryHistoryService;
|
||||
import com.wzj.soopin.order.utils.PageUtil;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.data.domain.Pageable;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 订单发货记录Service业务层处理
|
||||
|
@ -1,26 +1,12 @@
|
||||
package com.wzj.soopin.order.service.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.wzj.soopin.member.domain.po.Member;
|
||||
import com.wzj.soopin.order.domain.dto.OrderProductListDTO;
|
||||
import com.wzj.soopin.order.domain.entity.OrderItem;
|
||||
import com.wzj.soopin.order.domain.query.OrderItemQuery;
|
||||
import com.wzj.soopin.order.domain.vo.PageVO;
|
||||
import com.wzj.soopin.order.mapper.OrderItemMapper;
|
||||
import com.wzj.soopin.order.service.OrderItemService;
|
||||
import com.wzj.soopin.order.utils.PageUtil;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.dromara.common.core.utils.IDGenerator;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.data.domain.Pageable;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
|
@ -1,24 +1,12 @@
|
||||
package com.wzj.soopin.order.service.impl;
|
||||
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.wzj.soopin.order.domain.entity.OrderItem;
|
||||
import com.wzj.soopin.order.domain.entity.OrderOperateHistory;
|
||||
import com.wzj.soopin.order.domain.query.OrderOperateHistoryQuery;
|
||||
import com.wzj.soopin.order.domain.vo.PageVO;
|
||||
import com.wzj.soopin.order.mapper.OrderOperateHistoryMapper;
|
||||
import com.wzj.soopin.order.service.OrderOperateHistoryService;
|
||||
import com.wzj.soopin.order.utils.PageUtil;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.data.domain.Pageable;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 订单操作历史记录Service业务层处理
|
||||
*
|
||||
|
@ -8,14 +8,10 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.wzj.soopin.goods.convert.SkuConvert;
|
||||
import com.wzj.soopin.goods.domain.entity.Sku;
|
||||
import com.wzj.soopin.goods.mapper.ProductMapper;
|
||||
import com.wzj.soopin.goods.mapper.SkuMapper;
|
||||
import com.wzj.soopin.member.domain.po.Member;
|
||||
import com.wzj.soopin.member.mapper.*;
|
||||
import com.wzj.soopin.order.convert.OrderConvert;
|
||||
import com.wzj.soopin.order.convert.OrderOperateHistoryConvert;
|
||||
import com.wzj.soopin.order.domain.bo.OrderBo;
|
||||
import com.wzj.soopin.order.domain.entity.Order;
|
||||
import com.wzj.soopin.order.domain.entity.OrderDeliveryHistory;
|
||||
@ -31,15 +27,20 @@ import com.wzj.soopin.order.mapper.OrderMapper;
|
||||
import com.wzj.soopin.order.mapper.OrderOperateHistoryMapper;
|
||||
import com.wzj.soopin.order.service.OrderService;
|
||||
import com.wzj.soopin.order.service.VerificationCodeService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.dromara.common.core.domain.R;
|
||||
import org.dromara.common.core.domain.event.Constants;
|
||||
import org.dromara.common.core.utils.PhoneUtils;
|
||||
import org.dromara.common.core.utils.SecurityUtils;
|
||||
import org.dromara.system.domain.SysTenant;
|
||||
import org.dromara.system.mapper.SysOperLogMapper;
|
||||
import org.dromara.system.domain.bo.SysMessageBo;
|
||||
import org.dromara.system.domain.vo.SysMessageTemplateVo;
|
||||
import org.dromara.system.mapper.SysTenantMapper;
|
||||
import org.dromara.system.service.ISysMessageTemplateService;
|
||||
import org.dromara.system.service.impl.SysMessageServiceImpl;
|
||||
import org.dromara.system.service.impl.SysMessageTemplateServiceImpl;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.data.domain.PageImpl;
|
||||
import org.springframework.data.domain.Pageable;
|
||||
import org.springframework.stereotype.Service;
|
||||
@ -56,6 +57,8 @@ import java.util.stream.Collectors;
|
||||
* @author zcc
|
||||
*/
|
||||
@Service
|
||||
@Slf4j
|
||||
@RequiredArgsConstructor
|
||||
public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements OrderService {
|
||||
private final OrderMapper orderMapper;
|
||||
private final OrderItemMapper orderItemMapper;
|
||||
@ -65,19 +68,8 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
|
||||
private final OrderDeliveryHistoryMapper orderDeliveryHistoryMapper;
|
||||
private final VerificationCodeService verificationCodeService;
|
||||
private final SysTenantMapper sysTenantMapper;
|
||||
|
||||
public OrderServiceImpl(OrderMapper orderMapper, OrderItemMapper orderItemMapper, SkuMapper skuMapper,
|
||||
OrderOperateHistoryMapper orderOperateHistoryMapper, MemberMapper memberMapper, OrderDeliveryHistoryMapper orderDeliveryHistoryMapper, VerificationCodeService verificationCodeService, SysTenantMapper sysTenantMapper) {
|
||||
this.orderMapper = orderMapper;
|
||||
this.orderItemMapper = orderItemMapper;
|
||||
this.skuMapper = skuMapper;
|
||||
this.orderOperateHistoryMapper = orderOperateHistoryMapper;
|
||||
this.memberMapper = memberMapper;
|
||||
this.orderDeliveryHistoryMapper = orderDeliveryHistoryMapper;
|
||||
this.verificationCodeService = verificationCodeService;
|
||||
this.sysTenantMapper = sysTenantMapper;
|
||||
}
|
||||
|
||||
private final ISysMessageTemplateService templateService;
|
||||
private final SysMessageServiceImpl sysMessageService;
|
||||
|
||||
/**
|
||||
* 查询订单表
|
||||
@ -525,28 +517,32 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
|
||||
return resultPage;
|
||||
}
|
||||
|
||||
// @Override
|
||||
// public Map<String, Object> getCount() {
|
||||
// Map<String, Object> result = new HashMap<>();
|
||||
// result.put("MemberCount", memberMapper.countMember());
|
||||
// result.put("storeCount", sysTenantMapper.countStore());
|
||||
// result.put("productCount", productMapper.countProduct());
|
||||
// result.put("orderCount", orderMapper.countOrder());
|
||||
//
|
||||
//
|
||||
//
|
||||
//// result.put("productAudit", productMapper.AuditProduct());
|
||||
////
|
||||
//// List<Map<String, Object>> incomeExpenseList = incomeExpenseMapper.getIncomeExpenseByMonth();
|
||||
//// result.put("incomeExpense", incomeExpenseList);
|
||||
//
|
||||
// return result;
|
||||
// }
|
||||
|
||||
|
||||
@Override
|
||||
public Order getByNo(String orderNo) {
|
||||
return baseMapper.selectOne(new LambdaQueryWrapper<Order>().eq(Order::getOrderSn,orderNo));
|
||||
}
|
||||
|
||||
public void sendMessage(Order order) {
|
||||
Long memberId = order.getMemberId();
|
||||
Long orderId = order.getId();
|
||||
// 订单创建成功模板ID
|
||||
Long templateId =1940586928850100226L;
|
||||
// 查询模板信息
|
||||
SysMessageTemplateVo template = templateService.selectTemplateById(templateId);
|
||||
log.info("模板信息为: {}", template);
|
||||
|
||||
if (template != null) {
|
||||
String content = template.getTemplateContent()
|
||||
.replace("${orderSn}", order.getOrderSn())
|
||||
.replace("${productName}", orderItemMapper.getName(orderId));
|
||||
log.info("模板内容为: {}", content);
|
||||
SysMessageBo messageBo = new SysMessageBo();
|
||||
messageBo.setTitle(template.getTitle());
|
||||
messageBo.setContent(content);
|
||||
messageBo.setSenderId(memberId);
|
||||
sysMessageService.sendMessageToUser(messageBo, memberId);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -12,18 +12,26 @@ import com.wzj.soopin.order.mapper.VerificationLogsMapper;
|
||||
import com.wzj.soopin.order.service.VerificationCodeService;
|
||||
import com.wzj.soopin.order.utils.QrCodeGenerator;
|
||||
import com.wzj.soopin.order.utils.StringUtils;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.lang3.RandomStringUtils;
|
||||
import org.dromara.common.core.domain.R;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.dromara.system.domain.bo.SysMessageBo;
|
||||
import org.dromara.system.domain.vo.SysMessageTemplateVo;
|
||||
import org.dromara.system.service.ISysMessageTemplateService;
|
||||
import org.dromara.system.service.impl.SysMessageServiceImpl;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
import java.time.format.DateTimeFormatter;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* @author fxh
|
||||
*/
|
||||
@Service
|
||||
@Slf4j
|
||||
@RequiredArgsConstructor
|
||||
public class VerificationCodeServiceImpl extends ServiceImpl<VerificationCodesMapper, VerificationCodes> implements VerificationCodeService{
|
||||
|
||||
|
||||
@ -32,13 +40,8 @@ public class VerificationCodeServiceImpl extends ServiceImpl<VerificationCodesM
|
||||
private final OrderMapper orderMapper;
|
||||
private final QrCodeGenerator qrCodeGenerator;
|
||||
private final VerificationLogsMapper logMapper;
|
||||
|
||||
public VerificationCodeServiceImpl(VerificationCodesMapper codeMapper, OrderMapper orderMapper, QrCodeGenerator qrCodeGenerator, VerificationLogsMapper logMapper) {
|
||||
this.codeMapper = codeMapper;
|
||||
this.orderMapper = orderMapper;
|
||||
this.qrCodeGenerator = qrCodeGenerator;
|
||||
this.logMapper = logMapper;
|
||||
}
|
||||
private final ISysMessageTemplateService templateService;
|
||||
private final SysMessageServiceImpl sysMessageService;
|
||||
|
||||
/**
|
||||
* 生成核销码并关联订单
|
||||
@ -69,30 +72,30 @@ public class VerificationCodeServiceImpl extends ServiceImpl<VerificationCodesM
|
||||
code.setOrderId(orderId);
|
||||
code.setExpireTime(expireTime);
|
||||
code.setCreateTime(LocalDateTime.now());
|
||||
code.setStatus(0); // 未使用状态
|
||||
// 未使用状态
|
||||
code.setStatus(0);
|
||||
int insertResult = codeMapper.insert(code);
|
||||
|
||||
if (insertResult != 1) {
|
||||
return R.fail("核销码生成失败");
|
||||
}
|
||||
|
||||
// 构建保存路径
|
||||
String filePath = "qrcode/" + orderId + ".png";
|
||||
String qrCodeUrl = qrCodeGenerator.generateQrCode(
|
||||
"核销码:" + codeValue + ",订单ID:" + orderId,
|
||||
200,
|
||||
200,
|
||||
filePath
|
||||
);
|
||||
// 打印生成后的二维码URL
|
||||
log.info("生成的二维码URL: {}", qrCodeUrl);
|
||||
if (qrCodeUrl == null) {
|
||||
log.error("二维码生成失败");
|
||||
}
|
||||
// // 构建保存路径
|
||||
// String filePath = "qrcode/" + orderId + ".png";
|
||||
// String qrCodeUrl = qrCodeGenerator.generateQrCode(
|
||||
// "核销码:" + codeValue + ",订单ID:" + orderId,
|
||||
// 200,
|
||||
// 200,
|
||||
// filePath
|
||||
// );
|
||||
// // 打印生成后的二维码URL
|
||||
// log.info("生成的二维码URL: {}", qrCodeUrl);
|
||||
// if (qrCodeUrl == null) {
|
||||
// log.error("二维码生成失败");
|
||||
// }
|
||||
|
||||
|
||||
// 将二维码URL保存到订单表中
|
||||
order.setCodeUrl(qrCodeUrl);
|
||||
// // 将二维码URL保存到订单表中
|
||||
// order.setCodeUrl(qrCodeUrl);
|
||||
orderMapper.updateById(order);
|
||||
return R.ok("核销码生成成功", code);
|
||||
}
|
||||
@ -148,7 +151,7 @@ public class VerificationCodeServiceImpl extends ServiceImpl<VerificationCodesM
|
||||
VerificationLogs existingLog = logMapper.selectOne(
|
||||
new LambdaQueryWrapper<VerificationLogs>()
|
||||
.eq(VerificationLogs::getOrderId, code.getOrderId())
|
||||
.eq(VerificationLogs::getResult, 1) // 只检查成功核销的记录
|
||||
.eq(VerificationLogs::getResult, 1)
|
||||
);
|
||||
|
||||
if (existingLog != null) {
|
||||
@ -158,7 +161,7 @@ public class VerificationCodeServiceImpl extends ServiceImpl<VerificationCodesM
|
||||
}
|
||||
|
||||
// 执行核销
|
||||
code.setStatus(1); // 已使用
|
||||
code.setStatus(1);
|
||||
code.setUsedTime(LocalDateTime.now());
|
||||
code.setUsedMerchantId(usedMerchantId);
|
||||
int result = codeMapper.updateById(code);
|
||||
@ -169,7 +172,7 @@ public class VerificationCodeServiceImpl extends ServiceImpl<VerificationCodesM
|
||||
}
|
||||
|
||||
// 更新订单状态
|
||||
order.setStatus(7); // 已核销
|
||||
order.setStatus(7);
|
||||
order.setUsedTime(LocalDateTime.now());
|
||||
orderMapper.updateById(order);
|
||||
|
||||
@ -213,4 +216,65 @@ public class VerificationCodeServiceImpl extends ServiceImpl<VerificationCodesM
|
||||
String uuid = java.util.UUID.randomUUID().toString().replaceAll("-", "");
|
||||
return uuid.substring(0, 16).toUpperCase();
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public void sendMessage(CodeVerificationDto codeVerificationDto) {
|
||||
|
||||
String code = codeVerificationDto.getCodeValue();
|
||||
Map<String, Object> resultMap = codeMapper.getProduvtNameAndMemberId(code);
|
||||
String productName = (String) resultMap.get("productName");
|
||||
Long memberId = (Long) resultMap.get("memberId");
|
||||
|
||||
LocalDateTime verificationTime = codeMapper.verificationTime(code);
|
||||
String formattedTime = verificationTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));
|
||||
|
||||
|
||||
// 核销成功模板ID
|
||||
Long templateId = 1940678210012340225L;
|
||||
// 查询模板信息
|
||||
SysMessageTemplateVo template = templateService.selectTemplateById(templateId);
|
||||
log.info("模板信息为: {}", template);
|
||||
|
||||
if (template != null) {
|
||||
String content = template.getTemplateContent()
|
||||
.replace("${productName}", productName)
|
||||
.replace("${verificationTime}",formattedTime);
|
||||
log.info("模板内容为: {}", content);
|
||||
SysMessageBo messageBo = new SysMessageBo();
|
||||
messageBo.setTitle(template.getTitle());
|
||||
messageBo.setContent(content);
|
||||
messageBo.setSenderId(memberId);
|
||||
sysMessageService.sendMessageToUser(messageBo, memberId);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void sendMessageNo(CodeVerificationDto codeVerificationDto) {
|
||||
String code = codeVerificationDto.getCodeValue();
|
||||
|
||||
Map<String, Object> resultMap = codeMapper.getProduvtNameAndMemberId(code);
|
||||
String productName = (String) resultMap.get("productName");
|
||||
Long memberId = (Long) resultMap.get("memberId");
|
||||
|
||||
String reason = codeMapper.getReason(code);
|
||||
|
||||
// 核销成功模板ID
|
||||
Long templateId = 1940687666448195586L;
|
||||
// 查询模板信息
|
||||
SysMessageTemplateVo template = templateService.selectTemplateById(templateId);
|
||||
log.info("模板信息为: {}", template);
|
||||
|
||||
if (template != null) {
|
||||
String content = template.getTemplateContent()
|
||||
.replace("${productName}", productName)
|
||||
.replace("${reason}",reason);
|
||||
log.info("模板内容为: {}", content);
|
||||
SysMessageBo messageBo = new SysMessageBo();
|
||||
messageBo.setTitle(template.getTitle());
|
||||
messageBo.setContent(content);
|
||||
messageBo.setSenderId(memberId);
|
||||
sysMessageService.sendMessageToUser(messageBo, memberId);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -6,6 +6,9 @@ import com.wzj.soopin.order.mapper.VerificationLogsMapper;
|
||||
import com.wzj.soopin.order.service.VerificationLogsService;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
/**
|
||||
* @author fengxiaohang
|
||||
*/
|
||||
@Service
|
||||
public class VerificationLogsServiceImpl extends ServiceImpl<VerificationLogsMapper, VerificationLogs> implements VerificationLogsService {
|
||||
}
|
||||
|
@ -1,22 +1,11 @@
|
||||
package com.wzj.soopin.order.service.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.wzj.soopin.order.domain.entity.WechatPaymentHistory;
|
||||
import com.wzj.soopin.order.domain.query.WechatPaymentHistoryQuery;
|
||||
import com.wzj.soopin.order.domain.vo.PageVO;
|
||||
import com.wzj.soopin.order.mapper.WechatPaymentHistoryMapper;
|
||||
import com.wzj.soopin.order.service.WechatPaymentHistoryService;
|
||||
import com.wzj.soopin.order.utils.PageUtil;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.data.domain.Pageable;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 微信订单表Service业务层处理
|
||||
|
@ -0,0 +1,33 @@
|
||||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.wzj.soopin.order.mapper.VerificationCodesMapper">
|
||||
|
||||
<select id="getProduvtNameAndMemberId" resultType="map">
|
||||
SELECT
|
||||
p.name AS productName,
|
||||
vc.member_id AS memberId
|
||||
FROM oms_verification_codes vc
|
||||
JOIN oms_order_item oi ON vc.order_id = oi.order_id
|
||||
JOIN pms_product p ON oi.product_id = p.id
|
||||
WHERE vc.code = #{code}
|
||||
LIMIT 1
|
||||
</select>
|
||||
|
||||
<select id="verificationTime" resultType="java.time.LocalDateTime">
|
||||
SELECT vlogs.verification_time
|
||||
FROM oms_verification_codes vcodes
|
||||
JOIN oms_verification_logs vlogs ON vcodes.order_id = vlogs.order_id
|
||||
WHERE vcodes.code = #{code}
|
||||
LIMIT 1
|
||||
</select>
|
||||
|
||||
<select id="getReason" resultType="java.lang.String">
|
||||
SELECT logs.reason
|
||||
FROM oms_verification_codes codes
|
||||
JOIN oms_verification_logs logs ON codes.order_id = logs.order_id
|
||||
WHERE codes.code = #{code}
|
||||
LIMIT 1
|
||||
</select>
|
||||
|
||||
|
||||
</mapper>
|
@ -0,0 +1,57 @@
|
||||
package org.dromara.system.controller;
|
||||
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.dromara.common.core.domain.R;
|
||||
import org.dromara.common.log.annotation.Log;
|
||||
import org.dromara.common.log.enums.BusinessType;
|
||||
import org.dromara.system.domain.SysVersion;
|
||||
import org.dromara.system.domain.bo.SysVersionBo;
|
||||
import org.dromara.system.domain.vo.SysVersionVo;
|
||||
import org.dromara.system.service.ISysVerisonService;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
/**
|
||||
* @author fxh
|
||||
*/
|
||||
@Validated
|
||||
@RequiredArgsConstructor
|
||||
@RestController
|
||||
@RequestMapping("/system/version")
|
||||
public class SysVersionController {
|
||||
|
||||
private final ISysVerisonService sysVerisonService;
|
||||
|
||||
@Tag(name ="查询app版本管理")
|
||||
@PostMapping("/list")
|
||||
public R<IPage<SysVersionVo>> list(@RequestBody SysVersionBo query, Page<SysVersion> page){
|
||||
return R.ok(sysVerisonService.getList(page,query));
|
||||
}
|
||||
|
||||
@Tag(name = "新增app版本管理")
|
||||
@Log(title = "新增app版本管理", businessType = BusinessType.INSERT)
|
||||
@PostMapping("/add")
|
||||
public R add(@RequestBody SysVersion sysVersion) {
|
||||
return R.ok(sysVerisonService.save(sysVersion));
|
||||
}
|
||||
|
||||
@Tag(name ="修改状态")
|
||||
@Log(title = "修改状态", businessType = BusinessType.UPDATE)
|
||||
@GetMapping("/update")
|
||||
public R updateStatus( @RequestParam Long id,
|
||||
@RequestParam Integer status) {
|
||||
return R.ok(sysVerisonService.updateStatus(id,status));
|
||||
}
|
||||
|
||||
@Tag(name ="删除版本管理")
|
||||
@Log(title = "删除版本管理", businessType = BusinessType.DELETE)
|
||||
@DeleteMapping("/{id}")
|
||||
public R remove(@PathVariable Long id) {
|
||||
return R.ok(sysVerisonService.removeById(id));
|
||||
}
|
||||
|
||||
|
||||
}
|
@ -0,0 +1,37 @@
|
||||
package org.dromara.system.domain;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
import org.dromara.common.core.domain.model.BaseAudit;
|
||||
|
||||
@Data
|
||||
@TableName("sys_version")
|
||||
public class SysVersion extends BaseAudit {
|
||||
|
||||
@Schema(description = "id")
|
||||
private Long id;
|
||||
|
||||
@Schema(description = "平台类型")
|
||||
private String platformType;
|
||||
|
||||
@Schema(description = "版本号")
|
||||
private String versionCode;
|
||||
|
||||
@Schema(description = "版本名称")
|
||||
private String versionName;
|
||||
|
||||
@Schema(description = "下载地址")
|
||||
private String downloadUrl;
|
||||
|
||||
@Schema(description = "是否强制更新(0否、1是)")
|
||||
private Integer isForceUpdate;
|
||||
|
||||
@Schema(description = "版本说明")
|
||||
private String releaseNotes;
|
||||
|
||||
@Schema(description = "状态(0停用/1启用)")
|
||||
private Integer status;
|
||||
|
||||
|
||||
}
|
@ -0,0 +1,17 @@
|
||||
package org.dromara.system.domain.bo;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
public class SysVersionBo {
|
||||
|
||||
@Schema(description = "平台类型(ios/android)")
|
||||
private String platformType;
|
||||
|
||||
@Schema(description = "版本号")
|
||||
private String versionCode;
|
||||
|
||||
@Schema(description = "版本名称")
|
||||
private String versionName;
|
||||
}
|
@ -0,0 +1,36 @@
|
||||
package org.dromara.system.domain.vo;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
import org.dromara.common.core.domain.model.BaseAudit;
|
||||
|
||||
@Data
|
||||
public class SysVersionVo extends BaseAudit {
|
||||
|
||||
@Schema(description = "id")
|
||||
private Long id;
|
||||
|
||||
@Schema(description = "平台类型")
|
||||
private String platformType;
|
||||
|
||||
@Schema(description = "版本号")
|
||||
private String versionCode;
|
||||
|
||||
@Schema(description = "版本名称")
|
||||
private String versionName;
|
||||
|
||||
@Schema(description = "下载地址")
|
||||
private String downloadUrl;
|
||||
|
||||
@Schema(description = "是否强制更新(0否、1是)")
|
||||
private Integer isForceUpdate;
|
||||
|
||||
@Schema(description = "版本说明")
|
||||
private String releaseNotes;
|
||||
|
||||
@Schema(description = "状态(0停用/1启用)")
|
||||
private Integer status;
|
||||
|
||||
|
||||
|
||||
}
|
@ -0,0 +1,16 @@
|
||||
package org.dromara.system.mapper;
|
||||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
import org.dromara.system.domain.SysVersion;
|
||||
import org.dromara.system.domain.bo.SysVersionBo;
|
||||
import org.dromara.system.domain.vo.SysVersionVo;
|
||||
|
||||
@Mapper
|
||||
public interface SysVerisonMapper extends BaseMapper<SysVersion> {
|
||||
|
||||
IPage<SysVersionVo> getList(@Param("page") Page<SysVersion> page, @Param("query") SysVersionBo query);
|
||||
}
|
@ -0,0 +1,15 @@
|
||||
package org.dromara.system.service;
|
||||
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import org.dromara.system.domain.SysVersion;
|
||||
import org.dromara.system.domain.bo.SysVersionBo;
|
||||
import org.dromara.system.domain.vo.SysVersionVo;
|
||||
|
||||
public interface ISysVerisonService extends IService<SysVersion> {
|
||||
|
||||
IPage<SysVersionVo> getList(Page<SysVersion> page, SysVersionBo query);
|
||||
|
||||
SysVersion updateStatus(Long id, Integer status);
|
||||
}
|
@ -0,0 +1,37 @@
|
||||
package org.dromara.system.service.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.dromara.system.domain.SysVersion;
|
||||
import org.dromara.system.domain.bo.SysVersionBo;
|
||||
import org.dromara.system.domain.vo.SysVersionVo;
|
||||
import org.dromara.system.mapper.SysVerisonMapper;
|
||||
import org.dromara.system.service.ISysVerisonService;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
@Slf4j
|
||||
@RequiredArgsConstructor
|
||||
@Service
|
||||
public class SysVerisonServiceImpl extends ServiceImpl<SysVerisonMapper, SysVersion> implements ISysVerisonService {
|
||||
|
||||
private final SysVerisonMapper sysVerisonMapper;
|
||||
|
||||
@Override
|
||||
public IPage<SysVersionVo> getList(Page<SysVersion> page, SysVersionBo query) {
|
||||
return sysVerisonMapper.getList(page,query);
|
||||
}
|
||||
|
||||
@Override
|
||||
public SysVersion updateStatus(Long id, Integer status) {
|
||||
SysVersion sysVersion = sysVerisonMapper.selectById(id);
|
||||
if (sysVersion == null) {
|
||||
throw new RuntimeException("版本不存在");
|
||||
}
|
||||
sysVersion.setStatus(status);
|
||||
sysVerisonMapper.updateById(sysVersion);
|
||||
return sysVersion;
|
||||
}
|
||||
}
|
@ -0,0 +1,26 @@
|
||||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<!DOCTYPE mapper
|
||||
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="org.dromara.system.mapper.SysVerisonMapper">
|
||||
|
||||
<select id="getList" resultType="org.dromara.system.domain.vo.SysVersionVo">
|
||||
|
||||
SELECT *
|
||||
FROM sys_version v
|
||||
<where>
|
||||
<if test="query.versionName != null and query.versionName != ''">
|
||||
v.version_name LIKE CONCAT('%', #{query.versionName}, '%')
|
||||
</if>
|
||||
<if test="query.versionCode != null and query.versionCode != ''">
|
||||
AND v.version_code LIKE CONCAT('%', #{query.versionCode}, '%')
|
||||
</if>
|
||||
<if test="query.platformType != null and query.platformType != ''">
|
||||
AND v.platform_type LIKE CONCAT('%', #{query.platformType}, '%')
|
||||
</if>
|
||||
</where>
|
||||
ORDER BY v.version_code asc
|
||||
|
||||
</select>
|
||||
|
||||
</mapper>
|
Loading…
x
Reference in New Issue
Block a user