项目结构改造

This commit is contained in:
macro 2019-04-20 10:18:46 +08:00
parent cdd332a667
commit b5800856fb
34 changed files with 500 additions and 634 deletions

View File

@ -4,19 +4,12 @@
<groupId>com.macro.mall</groupId>
<artifactId>mall-admin</artifactId>
<version>0.0.1-SNAPSHOT</version>
<version>1.0-SNAPSHOT</version>
<packaging>jar</packaging>
<name>mall-admin</name>
<description>mall-admin project for mall</description>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.1.3.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
@ -24,50 +17,22 @@
<skipTests>true</skipTests>
</properties>
<parent>
<groupId>com.macro.mall</groupId>
<artifactId>mall</artifactId>
<version>1.0-SNAPSHOT</version>
</parent>
<dependencies>
<dependency>
<groupId>com.macro.mall</groupId>
<artifactId>mall-mbg</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-security</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-aop</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<!--MyBatis分页插件-->
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper-spring-boot-starter</artifactId>
<version>1.2.10</version>
</dependency>
<!--Swagger-UI API文档生产工具-->
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<version>2.6.1</version>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
<version>2.6.1</version>
</dependency>
<!--JWT(Json Web Token)登录支持-->
<dependency>
<groupId>io.jsonwebtoken</groupId>
@ -86,12 +51,6 @@
<artifactId>logstash-logback-encoder</artifactId>
<version>4.8</version>
</dependency>
<!--集成druid连接池-->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid-spring-boot-starter</artifactId>
<version>1.1.10</version>
</dependency>
<!--lombok依赖-->
<dependency>
<groupId>org.projectlombok</groupId>

39
mall-common/pom.xml Normal file
View File

@ -0,0 +1,39 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.macro.mall</groupId>
<artifactId>mall-common</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>jar</packaging>
<name>mall-common</name>
<description>mall-common project for mall</description>
<dependencies>
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper</artifactId>
<version>5.1.8</version>
</dependency>
<!--Swagger-UI API文档生产工具-->
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<version>2.7.0</version>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
<version>2.7.0</version>
</dependency>
<dependency>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-commons</artifactId>
<version>2.1.5.RELEASE</version>
<scope>compile</scope>
</dependency>
</dependencies>
</project>

View File

@ -1,6 +1,7 @@
package com.macro.mall.demo.dto;
package com.macro.mall.common.api;
import com.github.pagehelper.PageInfo;
import org.springframework.data.domain.Page;
import java.util.List;
@ -17,8 +18,8 @@ public class CommonPage<T> {
* 将PageHelper分页后的list转为分页信息
*/
public static <T> CommonPage<T> restPage(List<T> list) {
CommonPage<T> result = new CommonPage<>();
PageInfo<T> pageInfo = new PageInfo<>(list);
CommonPage<T> result = new CommonPage<T>();
PageInfo<T> pageInfo = new PageInfo<T>(list);
result.setTotalPage(pageInfo.getTotal() / pageInfo.getPageSize());
result.setPageNum(pageInfo.getPageNum());
result.setPageSize(pageInfo.getPageSize());
@ -26,6 +27,18 @@ public class CommonPage<T> {
return result;
}
/**
* 将SpringData分页后的list转为分页信息
*/
public static <T> CommonPage<T> restPage(Page<T> pageInfo) {
CommonPage<T> result = new CommonPage<T>();
result.setTotalPage((long) pageInfo.getTotalPages());
result.setPageNum(pageInfo.getNumber());
result.setPageSize(pageInfo.getSize());
result.setList(pageInfo.getContent());
return result;
}
public Integer getPageNum() {
return pageNum;
}

View File

@ -0,0 +1,118 @@
package com.macro.mall.common.api;
/**
* 通用返回对象
*/
public class CommonResult<T> {
private long code;
private String message;
private T data;
/**
* 普通成功返回
*
* @param data 获取的数据
*/
public static <T> CommonResult<T> success(T data) {
CommonResult<T> result = new CommonResult<T>();
result.setCode(ResultCode.SUCCESS.getCode());
result.setMessage(ResultCode.SUCCESS.getMsg());
result.setData(data);
return result;
}
/**
* 普通成功返回
*
* @param data 获取的数据
*/
public static <T> CommonResult<T> success(T data,String message) {
CommonResult<T> result = new CommonResult<T>();
result.setCode(ResultCode.SUCCESS.getCode());
result.setMessage(message);
result.setData(data);
return result;
}
/**
* 通过错误码对象构造返回结果
*/
public static <T> CommonResult<T> failed(IErrorCode errorCode) {
CommonResult<T> result = new CommonResult<T>();
result.setCode(errorCode.getCode());
result.setMessage(errorCode.getMsg());
return result;
}
/**
* 普通失败提示信息
*/
public static <T> CommonResult<T> failed(String message) {
CommonResult<T> result = new CommonResult<T>();
result.setCode(ResultCode.FAILED.getCode());
result.setMessage(message);
return result;
}
/**
* 普通操作失败
*/
public static <T> CommonResult<T> failed() {
return failed(ResultCode.FAILED);
}
/**
* 参数验证失败使用
*/
public static <T> CommonResult<T> validateFailed() {
return failed(ResultCode.VALIDATE_FAILED);
}
/**
* 参数验证失败使用
*/
public static <T> CommonResult<T> validateFailed(String message) {
CommonResult<T> result = new CommonResult<T>();
result.setCode(ResultCode.FAILED.getCode());
result.setMessage(message);
return result;
}
/**
* 用户没有登录
*/
public static <T> CommonResult<T> unauthorized() {
return failed(ResultCode.UNAUTHORIZED);
}
/**
* 用户没有相应权限
*/
public static <T> CommonResult<T> forbidden() {
return failed(ResultCode.UNAUTHORIZED);
}
public long getCode() {
return code;
}
public void setCode(long code) {
this.code = code;
}
public String getMessage() {
return message;
}
public void setMessage(String message) {
this.message = message;
}
public T getData() {
return data;
}
public void setData(T data) {
this.data = data;
}
}

View File

@ -0,0 +1,11 @@
package com.macro.mall.common.api;
/**
* 封装API的错误码
* Created by macro on 2019/4/19.
*/
public interface IErrorCode {
long getCode();
String getMsg();
}

View File

@ -0,0 +1,28 @@
package com.macro.mall.common.api;
/**
* 枚举了一些常用API操作码
* Created by macro on 2019/4/19.
*/
public enum ResultCode implements IErrorCode {
SUCCESS(200, "操作成功"),
FAILED(500, "操作失败"),
VALIDATE_FAILED(404, "参数检验失败"),
UNAUTHORIZED(401, "暂未登录或token已经过期"),
FORBIDDEN(403, "没有相关权限");
private long code;
private String msg;
private ResultCode(long code, String msg) {
this.code = code;
this.msg = msg;
}
public long getCode() {
return code;
}
public String getMsg() {
return msg;
}
}

View File

@ -5,35 +5,28 @@
<groupId>com.macro.mall</groupId>
<artifactId>mall-demo</artifactId>
<version>0.0.1-SNAPSHOT</version>
<version>1.0-SNAPSHOT</version>
<packaging>jar</packaging>
<name>mall-demo</name>
<description>Demo project for Spring Boot</description>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.1.3.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<java.version>1.8</java.version>
</properties>
<parent>
<groupId>com.macro.mall</groupId>
<artifactId>mall</artifactId>
<version>1.0-SNAPSHOT</version>
</parent>
<dependencies>
<dependency>
<groupId>com.macro.mall</groupId>
<artifactId>mall-mbg</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
@ -42,36 +35,6 @@
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-security</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-aop</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<!--MyBatis分页插件-->
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper-spring-boot-starter</artifactId>
<version>1.2.10</version>
</dependency>
<!--Swagger-UI API文档生产工具-->
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<version>2.6.1</version>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
<version>2.6.1</version>
</dependency>
<!--logstash日志收集插件-->
<dependency>
<groupId>net.logstash.logback</groupId>

View File

@ -1,7 +1,7 @@
package com.macro.mall.demo.controller;
import com.macro.mall.demo.dto.CommonPage;
import com.macro.mall.demo.dto.CommonResult;
import com.macro.mall.common.api.CommonPage;
import com.macro.mall.common.api.CommonResult;
import com.macro.mall.demo.dto.PmsBrandDto;
import com.macro.mall.demo.service.DemoService;
import com.macro.mall.model.PmsBrand;
@ -11,7 +11,6 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.validation.BindingResult;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;

View File

@ -1,6 +1,6 @@
package com.macro.mall.demo.controller;
import com.macro.mall.demo.dto.CommonResult;
import com.macro.mall.common.api.CommonResult;
import com.macro.mall.model.PmsBrand;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;

View File

@ -1,71 +0,0 @@
package com.macro.mall.demo.dto;
/**
* 通用返回对象
*/
public class CommonResult<T> {
public static final int SUCCESS = 0;
public static final int FAILED = 1;
public static final int VALIDATE_FAILED = 2;
private int code;
private String message;
private T data;
/**
* 普通成功返回
*
* @param data 获取的数据
*/
public static <T> CommonResult<T> success(T data) {
CommonResult<T> result = new CommonResult<T>();
result.setCode(SUCCESS);
result.setData(data);
return result;
}
/**
* 普通失败提示信息
*/
public static <T> CommonResult<T> failed(String message) {
CommonResult result = new CommonResult();
result.setCode(FAILED);
result.setMessage(message);
return result;
}
/**
* 参数验证失败使用
*
* @param message 错误信息
*/
public static <T> CommonResult<T> validateFailed(String message) {
CommonResult result = new CommonResult();
result.setCode(VALIDATE_FAILED);
result.setMessage(message);
return result;
}
public int getCode() {
return code;
}
public void setCode(int code) {
this.code = code;
}
public String getMessage() {
return message;
}
public void setMessage(String message) {
this.message = message;
}
public T getData() {
return data;
}
public void setData(T data) {
this.data = data;
}
}

View File

@ -13,6 +13,11 @@
<description>mall-mbg project for mall</description>
<dependencies>
<dependency>
<groupId>com.macro.mall</groupId>
<artifactId>mall-common</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
<!-- MyBatis 生成器 -->
<dependency>
<groupId>org.mybatis.generator</groupId>

View File

@ -5,19 +5,12 @@
<groupId>com.macro.mall</groupId>
<artifactId>mall-portal</artifactId>
<version>0.0.1-SNAPSHOT</version>
<version>1.0-SNAPSHOT</version>
<packaging>jar</packaging>
<name>mall-portal</name>
<description>Demo project for Spring Boot</description>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.1.3.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
@ -25,6 +18,13 @@
<skipTests>true</skipTests>
</properties>
<parent>
<groupId>com.macro.mall</groupId>
<artifactId>mall</artifactId>
<version>1.0-SNAPSHOT</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<dependencies>
<dependency>
<groupId>com.macro.mall</groupId>
@ -35,47 +35,15 @@
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-mongodb</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-security</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<!--MyBatis分页插件-->
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper-spring-boot-starter</artifactId>
<version>1.2.10</version>
</dependency>
<!--Swagger-UI API文档生产工具-->
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<version>2.6.1</version>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
<version>2.6.1</version>
</dependency>
<!--redis依赖配置-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
<!--集成druid连接池-->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid-spring-boot-starter</artifactId>
<version>1.1.10</version>
</dependency>
<!--集成消息队列-->
<dependency>
<groupId>org.springframework.boot</groupId>

View File

@ -1,6 +1,6 @@
package com.macro.mall.portal.component;
import com.macro.mall.portal.domain.CommonResult;
import com.macro.mall.common.api.CommonResult;
import com.macro.mall.portal.service.OmsPortalOrderService;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

View File

@ -1,9 +1,9 @@
package com.macro.mall.portal.controller;
import com.macro.mall.common.api.CommonResult;
import com.macro.mall.model.CmsSubject;
import com.macro.mall.model.PmsProduct;
import com.macro.mall.model.PmsProductCategory;
import com.macro.mall.portal.domain.CommonResult;
import com.macro.mall.portal.domain.HomeContentResult;
import com.macro.mall.portal.service.HomeService;
import io.swagger.annotations.Api;
@ -28,35 +28,35 @@ public class HomeController {
@ApiOperation("首页内容页信息展示")
@RequestMapping(value = "/content", method = RequestMethod.GET)
@ResponseBody
public Object content() {
public CommonResult<HomeContentResult> content() {
HomeContentResult contentResult = homeService.content();
return new CommonResult().success(contentResult);
return CommonResult.success(contentResult);
}
@ApiOperation("分页获取推荐商品")
@RequestMapping(value = "/recommendProductList", method = RequestMethod.GET)
@ResponseBody
public Object recommendProductList(@RequestParam(value = "pageSize", defaultValue = "4") Integer pageSize,
public CommonResult<List<PmsProduct>> recommendProductList(@RequestParam(value = "pageSize", defaultValue = "4") Integer pageSize,
@RequestParam(value = "pageNum", defaultValue = "1") Integer pageNum) {
List<PmsProduct> productList = homeService.recommendProductList(pageSize, pageNum);
return new CommonResult().success(productList);
return CommonResult.success(productList);
}
@ApiOperation("获取首页商品分类")
@RequestMapping(value = "/productCateList/{parentId}", method = RequestMethod.GET)
@ResponseBody
public Object getProductCateList(@PathVariable Long parentId) {
public CommonResult<List<PmsProductCategory>> getProductCateList(@PathVariable Long parentId) {
List<PmsProductCategory> productCategoryList = homeService.getProductCateList(parentId);
return new CommonResult().success(productCategoryList);
return CommonResult.success(productCategoryList);
}
@ApiOperation("根据分类获取专题")
@RequestMapping(value = "/subjectList", method = RequestMethod.GET)
@ResponseBody
public Object getSubjectList(@RequestParam(required = false) Long cateId,
public CommonResult<List<CmsSubject>> getSubjectList(@RequestParam(required = false) Long cateId,
@RequestParam(value = "pageSize", defaultValue = "4") Integer pageSize,
@RequestParam(value = "pageNum", defaultValue = "1") Integer pageNum) {
List<CmsSubject> subjectList = homeService.getSubjectList(cateId,pageSize,pageNum);
return new CommonResult().success(subjectList);
return CommonResult.success(subjectList);
}
}

View File

@ -1,6 +1,6 @@
package com.macro.mall.portal.controller;
import com.macro.mall.portal.domain.CommonResult;
import com.macro.mall.common.api.CommonResult;
import com.macro.mall.portal.domain.MemberBrandAttention;
import com.macro.mall.portal.service.MemberAttentionService;
import io.swagger.annotations.Api;
@ -24,32 +24,32 @@ public class MemberAttentionController {
@ApiOperation("添加品牌关注")
@RequestMapping(value = "/add", method = RequestMethod.POST)
@ResponseBody
public Object add(@RequestBody MemberBrandAttention memberBrandAttention) {
public CommonResult add(@RequestBody MemberBrandAttention memberBrandAttention) {
int count = memberAttentionService.add(memberBrandAttention);
if(count>0){
return new CommonResult().success(count);
return CommonResult.success(count);
}else{
return new CommonResult().failed();
return CommonResult.failed();
}
}
@ApiOperation("取消关注")
@RequestMapping(value = "/delete", method = RequestMethod.POST)
@ResponseBody
public Object delete(Long memberId, Long brandId) {
public CommonResult delete(Long memberId, Long brandId) {
int count = memberAttentionService.delete(memberId,brandId);
if(count>0){
return new CommonResult().success(count);
return CommonResult.success(count);
}else{
return new CommonResult().failed();
return CommonResult.failed();
}
}
@ApiOperation("显示关注列表")
@RequestMapping(value = "/list/{memberId}", method = RequestMethod.GET)
@ResponseBody
public Object list(@PathVariable Long memberId) {
public CommonResult<List<MemberBrandAttention>> list(@PathVariable Long memberId) {
List<MemberBrandAttention> memberBrandAttentionList = memberAttentionService.list(memberId);
return new CommonResult().success(memberBrandAttentionList);
return CommonResult.success(memberBrandAttentionList);
}
}

View File

@ -1,6 +1,6 @@
package com.macro.mall.portal.controller;
import com.macro.mall.portal.domain.CommonResult;
import com.macro.mall.common.api.CommonResult;
import com.macro.mall.portal.domain.MemberProductCollection;
import com.macro.mall.portal.service.MemberCollectionService;
import io.swagger.annotations.Api;
@ -21,35 +21,36 @@ import java.util.List;
public class MemberCollectionController {
@Autowired
private MemberCollectionService memberCollectionService;
@ApiOperation("添加商品收藏")
@RequestMapping(value = "/addProduct", method = RequestMethod.POST)
@ResponseBody
public Object addProduct(@RequestBody MemberProductCollection productCollection) {
public CommonResult addProduct(@RequestBody MemberProductCollection productCollection) {
int count = memberCollectionService.addProduct(productCollection);
if (count > 0) {
return new CommonResult().success(count);
return CommonResult.success(count);
} else {
return new CommonResult().failed();
return CommonResult.failed();
}
}
@ApiOperation("删除收藏商品")
@RequestMapping(value = "/deleteProduct", method = RequestMethod.POST)
@ResponseBody
public Object deleteProduct(Long memberId, Long productId) {
public CommonResult deleteProduct(Long memberId, Long productId) {
int count = memberCollectionService.deleteProduct(memberId, productId);
if (count > 0) {
return new CommonResult().success(count);
return CommonResult.success(count);
} else {
return new CommonResult().failed();
return CommonResult.failed();
}
}
@ApiOperation("显示关注列表")
@RequestMapping(value = "/listProduct/{memberId}", method = RequestMethod.GET)
@ResponseBody
public Object listProduct(@PathVariable Long memberId) {
public CommonResult<List<MemberProductCollection>> listProduct(@PathVariable Long memberId) {
List<MemberProductCollection> memberProductCollectionList = memberCollectionService.listProduct(memberId);
return new CommonResult().success(memberProductCollectionList);
return CommonResult.success(memberProductCollectionList);
}
}

View File

@ -1,6 +1,6 @@
package com.macro.mall.portal.controller;
import com.macro.mall.portal.domain.CommonResult;
import com.macro.mall.common.api.CommonResult;
import com.macro.mall.portal.domain.MemberReadHistory;
import com.macro.mall.portal.service.MemberReadHistoryService;
import io.swagger.annotations.Api;
@ -25,32 +25,32 @@ public class MemberReadHistoryController {
@ApiOperation("创建浏览记录")
@RequestMapping(value = "/create", method = RequestMethod.POST)
@ResponseBody
public Object create(@RequestBody MemberReadHistory memberReadHistory) {
public CommonResult create(@RequestBody MemberReadHistory memberReadHistory) {
int count = memberReadHistoryService.create(memberReadHistory);
if (count > 0) {
return new CommonResult().success(count);
return CommonResult.success(count);
} else {
return new CommonResult().failed();
return CommonResult.failed();
}
}
@ApiOperation("删除浏览记录")
@RequestMapping(value = "/delete", method = RequestMethod.POST)
@ResponseBody
public Object delete(@RequestParam("ids") List<String> ids) {
public CommonResult delete(@RequestParam("ids") List<String> ids) {
int count = memberReadHistoryService.delete(ids);
if (count > 0) {
return new CommonResult().success(count);
return CommonResult.success(count);
} else {
return new CommonResult().failed();
return CommonResult.failed();
}
}
@ApiOperation("展示浏览记录")
@RequestMapping(value = "/list", method = RequestMethod.GET)
@ResponseBody
public Object list(Long memberId) {
public CommonResult<List<MemberReadHistory>> list(Long memberId) {
List<MemberReadHistory> memberReadHistoryList = memberReadHistoryService.list(memberId);
return new CommonResult().success(memberReadHistoryList);
return CommonResult.success(memberReadHistoryList);
}
}

View File

@ -1,9 +1,9 @@
package com.macro.mall.portal.controller;
import com.macro.mall.common.api.CommonResult;
import com.macro.mall.model.OmsCartItem;
import com.macro.mall.portal.domain.CartProduct;
import com.macro.mall.portal.domain.CartPromotionItem;
import com.macro.mall.portal.domain.CommonResult;
import com.macro.mall.portal.service.OmsCartItemService;
import com.macro.mall.portal.service.UmsMemberService;
import io.swagger.annotations.Api;
@ -30,80 +30,80 @@ public class OmsCartItemController {
@ApiOperation("添加商品到购物车")
@RequestMapping(value = "/add", method = RequestMethod.POST)
@ResponseBody
public Object add(@RequestBody OmsCartItem cartItem) {
public CommonResult add(@RequestBody OmsCartItem cartItem) {
int count = cartItemService.add(cartItem);
if (count > 0) {
return new CommonResult().success(count);
return CommonResult.success(count);
}
return new CommonResult().failed();
return CommonResult.failed();
}
@ApiOperation("获取某个会员的购物车列表")
@RequestMapping(value = "/list", method = RequestMethod.GET)
@ResponseBody
public Object list() {
public CommonResult<List<OmsCartItem>> list() {
List<OmsCartItem> cartItemList = cartItemService.list(memberService.getCurrentMember().getId());
return new CommonResult().success(cartItemList);
return CommonResult.success(cartItemList);
}
@ApiOperation("获取某个会员的购物车列表,包括促销信息")
@RequestMapping(value = "/list/promotion", method = RequestMethod.GET)
@ResponseBody
public Object listPromotion() {
public CommonResult<List<CartPromotionItem>> listPromotion() {
List<CartPromotionItem> cartPromotionItemList = cartItemService.listPromotion(memberService.getCurrentMember().getId());
return new CommonResult().success(cartPromotionItemList);
return CommonResult.success(cartPromotionItemList);
}
@ApiOperation("修改购物车中某个商品的数量")
@RequestMapping(value = "/update/quantity", method = RequestMethod.GET)
@ResponseBody
public Object updateQuantity(@RequestParam Long id,
public CommonResult updateQuantity(@RequestParam Long id,
@RequestParam Integer quantity) {
int count = cartItemService.updateQuantity(id, memberService.getCurrentMember().getId(), quantity);
if (count > 0) {
return new CommonResult().success(count);
return CommonResult.success(count);
}
return new CommonResult().failed();
return CommonResult.failed();
}
@ApiOperation("获取购物车中某个商品的规格,用于重选规格")
@RequestMapping(value = "/getProduct/{productId}", method = RequestMethod.GET)
@ResponseBody
public Object getCartProduct(@PathVariable Long productId) {
public CommonResult<CartProduct> getCartProduct(@PathVariable Long productId) {
CartProduct cartProduct = cartItemService.getCartProduct(productId);
return new CommonResult().success(cartProduct);
return CommonResult.success(cartProduct);
}
@ApiOperation("修改购物车中商品的规格")
@RequestMapping(value = "/update/attr", method = RequestMethod.POST)
@ResponseBody
public Object updateAttr(@RequestBody OmsCartItem cartItem) {
public CommonResult updateAttr(@RequestBody OmsCartItem cartItem) {
int count = cartItemService.updateAttr(cartItem);
if (count > 0) {
return new CommonResult().success(count);
return CommonResult.success(count);
}
return new CommonResult().failed();
return CommonResult.failed();
}
@ApiOperation("删除购物车中的某个商品")
@RequestMapping(value = "/delete", method = RequestMethod.POST)
@ResponseBody
public Object delete(@RequestParam("ids") List<Long> ids) {
public CommonResult delete(@RequestParam("ids") List<Long> ids) {
int count = cartItemService.delete(memberService.getCurrentMember().getId(), ids);
if (count > 0) {
return new CommonResult().success(count);
return CommonResult.success(count);
}
return new CommonResult().failed();
return CommonResult.failed();
}
@ApiOperation("清空购物车")
@RequestMapping(value = "/clear", method = RequestMethod.POST)
@ResponseBody
public Object clear() {
public CommonResult clear() {
int count = cartItemService.clear(memberService.getCurrentMember().getId());
if (count > 0) {
return new CommonResult().success(count);
return CommonResult.success(count);
}
return new CommonResult().failed();
return CommonResult.failed();
}
}

View File

@ -1,6 +1,6 @@
package com.macro.mall.portal.controller;
import com.macro.mall.portal.domain.CommonResult;
import com.macro.mall.common.api.CommonResult;
import com.macro.mall.portal.domain.ConfirmOrderResult;
import com.macro.mall.portal.domain.OrderParam;
import com.macro.mall.portal.service.OmsPortalOrderService;
@ -23,9 +23,9 @@ public class OmsPortalOrderController {
@ApiOperation("根据购物车信息生成确认单信息")
@RequestMapping(value = "/generateConfirmOrder",method = RequestMethod.POST)
@ResponseBody
public Object generateConfirmOrder(){
public CommonResult<ConfirmOrderResult> generateConfirmOrder(){
ConfirmOrderResult confirmOrderResult = portalOrderService.generateConfirmOrder();
return new CommonResult().success(confirmOrderResult);
return CommonResult.success(confirmOrderResult);
}
@ApiOperation("根据购物车信息生成订单")
@ -51,8 +51,8 @@ public class OmsPortalOrderController {
@ApiOperation("取消单个超时订单")
@RequestMapping(value = "/cancelOrder",method = RequestMethod.POST)
@ResponseBody
public Object cancelOrder(Long orderId){
public CommonResult cancelOrder(Long orderId){
portalOrderService.sendDelayMessageCancelOrder(orderId);
return new CommonResult().success(null);
return CommonResult.success(null);
}
}

View File

@ -1,6 +1,6 @@
package com.macro.mall.portal.controller;
import com.macro.mall.portal.domain.CommonResult;
import com.macro.mall.common.api.CommonResult;
import com.macro.mall.portal.domain.OmsOrderReturnApplyParam;
import com.macro.mall.portal.service.OmsPortalOrderReturnApplyService;
import io.swagger.annotations.Api;
@ -26,11 +26,11 @@ public class OmsPortalOrderReturnApplyController {
@ApiOperation("申请退货")
@RequestMapping(value = "/create", method = RequestMethod.POST)
@ResponseBody
public Object create(@RequestBody OmsOrderReturnApplyParam returnApply) {
public CommonResult create(@RequestBody OmsOrderReturnApplyParam returnApply) {
int count = returnApplyService.create(returnApply);
if (count > 0) {
return new CommonResult().success(count);
return CommonResult.success(count);
}
return new CommonResult().failed();
return CommonResult.failed();
}
}

View File

@ -1,5 +1,6 @@
package com.macro.mall.portal.controller;
import com.macro.mall.common.api.CommonResult;
import com.macro.mall.portal.service.UmsMemberService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
@ -24,7 +25,7 @@ public class UmsMemberController {
@ApiOperation("注册")
@RequestMapping(value = "/register", method = RequestMethod.POST)
@ResponseBody
public Object register(@RequestParam String username,
public CommonResult register(@RequestParam String username,
@RequestParam String password,
@RequestParam String telephone,
@RequestParam String authCode) {
@ -34,14 +35,14 @@ public class UmsMemberController {
@ApiOperation("获取验证码")
@RequestMapping(value = "/getAuthCode", method = RequestMethod.GET)
@ResponseBody
public Object getAuthCode(@RequestParam String telephone) {
public CommonResult getAuthCode(@RequestParam String telephone) {
return memberService.generateAuthCode(telephone);
}
@ApiOperation("修改密码")
@RequestMapping(value = "/updatePassword", method = RequestMethod.POST)
@ResponseBody
public Object updatePassword(@RequestParam String telephone,
public CommonResult updatePassword(@RequestParam String telephone,
@RequestParam String password,
@RequestParam String authCode) {
return memberService.updatePassword(telephone,password,authCode);

View File

@ -1,8 +1,8 @@
package com.macro.mall.portal.controller;
import com.macro.mall.common.api.CommonResult;
import com.macro.mall.model.SmsCouponHistory;
import com.macro.mall.portal.domain.CartPromotionItem;
import com.macro.mall.portal.domain.CommonResult;
import com.macro.mall.portal.domain.SmsCouponHistoryDetail;
import com.macro.mall.portal.service.OmsCartItemService;
import com.macro.mall.portal.service.UmsMemberCouponService;
@ -34,7 +34,7 @@ public class UmsMemberCouponController {
@ApiOperation("领取指定优惠券")
@RequestMapping(value = "/add/{couponId}", method = RequestMethod.POST)
@ResponseBody
public Object add(@PathVariable Long couponId) {
public CommonResult add(@PathVariable Long couponId) {
return memberCouponService.add(couponId);
}
@ -43,9 +43,9 @@ public class UmsMemberCouponController {
allowableValues = "0,1,2", paramType = "query", dataType = "integer")
@RequestMapping(value = "/list", method = RequestMethod.GET)
@ResponseBody
public Object list(@RequestParam(value = "useStatus", required = false) Integer useStatus) {
public CommonResult<List<SmsCouponHistory>> list(@RequestParam(value = "useStatus", required = false) Integer useStatus) {
List<SmsCouponHistory> couponHistoryList = memberCouponService.list(useStatus);
return new CommonResult().success(couponHistoryList);
return CommonResult.success(couponHistoryList);
}
@ApiOperation("获取登录会员购物车的相关优惠券")
@ -53,9 +53,9 @@ public class UmsMemberCouponController {
defaultValue = "1", allowableValues = "0,1", paramType = "query", dataType = "integer")
@RequestMapping(value = "/list/cart/{type}", method = RequestMethod.GET)
@ResponseBody
public Object listCart(@PathVariable Integer type) {
public CommonResult<List<SmsCouponHistoryDetail>> listCart(@PathVariable Integer type) {
List<CartPromotionItem> cartPromotionItemList = cartItemService.listPromotion(memberService.getCurrentMember().getId());
List<SmsCouponHistoryDetail> couponHistoryList = memberCouponService.listCart(cartPromotionItemList, type);
return new CommonResult().success(couponHistoryList);
return CommonResult.success(couponHistoryList);
}
}

View File

@ -1,7 +1,7 @@
package com.macro.mall.portal.controller;
import com.macro.mall.common.api.CommonResult;
import com.macro.mall.model.UmsMemberReceiveAddress;
import com.macro.mall.portal.domain.CommonResult;
import com.macro.mall.portal.service.UmsMemberReceiveAddressService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
@ -21,52 +21,53 @@ import java.util.List;
public class UmsMemberReceiveAddressController {
@Autowired
private UmsMemberReceiveAddressService memberReceiveAddressService;
@ApiOperation("添加收货地址")
@RequestMapping(value = "/add", method = RequestMethod.POST)
@ResponseBody
public Object add(@RequestBody UmsMemberReceiveAddress address) {
public CommonResult add(@RequestBody UmsMemberReceiveAddress address) {
int count = memberReceiveAddressService.add(address);
if (count > 0) {
return new CommonResult().success(count);
return CommonResult.success(count);
}
return new CommonResult().failed();
return CommonResult.failed();
}
@ApiOperation("删除收货地址")
@RequestMapping(value = "/delete/{id}", method = RequestMethod.POST)
@ResponseBody
public Object delete(@PathVariable Long id) {
public CommonResult delete(@PathVariable Long id) {
int count = memberReceiveAddressService.delete(id);
if (count > 0) {
return new CommonResult().success(count);
return CommonResult.success(count);
}
return new CommonResult().failed();
return CommonResult.failed();
}
@ApiOperation("修改收货地址")
@RequestMapping(value = "/update/{id}", method = RequestMethod.POST)
@ResponseBody
public Object update(@PathVariable Long id,@RequestBody UmsMemberReceiveAddress address) {
public CommonResult update(@PathVariable Long id, @RequestBody UmsMemberReceiveAddress address) {
int count = memberReceiveAddressService.update(id, address);
if (count > 0) {
return new CommonResult().success(count);
return CommonResult.success(count);
}
return new CommonResult().failed();
return CommonResult.failed();
}
@ApiOperation("显示所有收货地址")
@RequestMapping(value = "/list", method = RequestMethod.GET)
@ResponseBody
public Object list() {
public CommonResult<List<UmsMemberReceiveAddress>> list() {
List<UmsMemberReceiveAddress> addressList = memberReceiveAddressService.list();
return new CommonResult().success(addressList);
return CommonResult.success(addressList);
}
@ApiOperation("显示所有收货地址")
@RequestMapping(value = "/{id}", method = RequestMethod.GET)
@ResponseBody
public Object getItem(@PathVariable Long id) {
public CommonResult<UmsMemberReceiveAddress> getItem(@PathVariable Long id) {
UmsMemberReceiveAddress address = memberReceiveAddressService.getItem(id);
return new CommonResult().success(address);
return CommonResult.success(address);
}
}

View File

@ -1,97 +0,0 @@
package com.macro.mall.portal.domain;
import org.springframework.data.domain.Page;
import java.util.HashMap;
import java.util.Map;
/**
* 通用返回对象
* Created by macro on 2018/4/26.
*/
public class CommonResult {
//操作成功
public static final int SUCCESS = 200;
//操作失败
public static final int FAILED = 500;
private int code;
private String message;
private Object data;
/**
* 普通成功返回
*
* @param data 获取的数据
*/
public CommonResult success(Object data) {
this.code = SUCCESS;
this.message = "操作成功";
this.data = data;
return this;
}
/**
* 普通成功返回
*/
public CommonResult success(String message,Object data) {
this.code = SUCCESS;
this.message = message;
this.data = data;
return this;
}
/**
* 返回分页成功数据
*/
public CommonResult pageSuccess(Page pageInfo) {
Map<String, Object> result = new HashMap<>();
result.put("pageSize", pageInfo.getSize());
result.put("totalPage", pageInfo.getTotalPages());
result.put("total", pageInfo.getTotalElements());
result.put("pageNum", pageInfo.getNumber());
result.put("list", pageInfo.getContent());
this.code = SUCCESS;
this.message = "操作成功";
this.data = result;
return this;
}
/**
* 普通失败提示信息
*/
public CommonResult failed() {
this.code = FAILED;
this.message = "操作失败";
return this;
}
public CommonResult failed(String message){
this.code = FAILED;
this.message = message;
return this;
}
public int getCode() {
return code;
}
public void setCode(int code) {
this.code = code;
}
public String getMessage() {
return message;
}
public void setMessage(String message) {
this.message = message;
}
public Object getData() {
return data;
}
public void setData(Object data) {
this.data = data;
}
}

View File

@ -1,6 +1,6 @@
package com.macro.mall.portal.service;
import com.macro.mall.portal.domain.CommonResult;
import com.macro.mall.common.api.CommonResult;
import com.macro.mall.portal.domain.ConfirmOrderResult;
import com.macro.mall.portal.domain.OrderParam;
import org.springframework.transaction.annotation.Transactional;

View File

@ -1,8 +1,8 @@
package com.macro.mall.portal.service;
import com.macro.mall.common.api.CommonResult;
import com.macro.mall.model.SmsCouponHistory;
import com.macro.mall.portal.domain.CartPromotionItem;
import com.macro.mall.portal.domain.CommonResult;
import com.macro.mall.portal.domain.SmsCouponHistoryDetail;
import org.springframework.transaction.annotation.Transactional;

View File

@ -1,7 +1,7 @@
package com.macro.mall.portal.service;
import com.macro.mall.common.api.CommonResult;
import com.macro.mall.model.UmsMember;
import com.macro.mall.portal.domain.CommonResult;
import org.springframework.transaction.annotation.Transactional;
/**

View File

@ -1,5 +1,6 @@
package com.macro.mall.portal.service.impl;
import com.macro.mall.common.api.CommonResult;
import com.macro.mall.mapper.*;
import com.macro.mall.model.*;
import com.macro.mall.portal.component.CancelOrderSender;
@ -109,7 +110,7 @@ public class OmsPortalOrderServiceImpl implements OmsPortalOrderService {
}
//判断购物车中商品是否都有库存
if (!hasStock(cartPromotionItemList)) {
return new CommonResult().failed("库存不足,无法下单");
return CommonResult.failed("库存不足,无法下单");
}
//判断使用使用了优惠券
if (orderParam.getCouponId() == null) {
@ -121,7 +122,7 @@ public class OmsPortalOrderServiceImpl implements OmsPortalOrderService {
//使用优惠券
SmsCouponHistoryDetail couponHistoryDetail = getUseCoupon(cartPromotionItemList, orderParam.getCouponId());
if (couponHistoryDetail == null) {
return new CommonResult().failed("该优惠券不可用");
return CommonResult.failed("该优惠券不可用");
}
//对下单商品的优惠券进行处理
handleCouponAmount(orderItemList, couponHistoryDetail);
@ -137,7 +138,7 @@ public class OmsPortalOrderServiceImpl implements OmsPortalOrderService {
BigDecimal totalAmount = calcTotalAmount(orderItemList);
BigDecimal integrationAmount = getUseIntegrationAmount(orderParam.getUseIntegration(), totalAmount, currentMember, orderParam.getCouponId() != null);
if (integrationAmount.compareTo(new BigDecimal(0)) == 0) {
return new CommonResult().failed("积分不可用");
return CommonResult.failed("积分不可用");
} else {
//可用情况下分摊到可用商品中
for (OmsOrderItem orderItem : orderItemList) {
@ -223,7 +224,7 @@ public class OmsPortalOrderServiceImpl implements OmsPortalOrderService {
Map<String, Object> result = new HashMap<>();
result.put("order", order);
result.put("orderItemList", orderItemList);
return new CommonResult().success("下单成功", result);
return CommonResult.success(result, "下单成功");
}
@Override
@ -237,7 +238,7 @@ public class OmsPortalOrderServiceImpl implements OmsPortalOrderService {
//恢复所有下单商品的锁定库存扣减真实库存
OmsOrderDetail orderDetail = portalOrderDao.getDetail(orderId);
int count = portalOrderDao.updateSkuStock(orderDetail.getOrderItemList());
return new CommonResult().success("支付成功",count);
return CommonResult.success(count,"支付成功");
}
@Override
@ -246,7 +247,7 @@ public class OmsPortalOrderServiceImpl implements OmsPortalOrderService {
//查询超时未支付的订单及订单详情
List<OmsOrderDetail> timeOutOrders = portalOrderDao.getTimeOutOrders(orderSetting.getNormalOrderOvertime());
if (CollectionUtils.isEmpty(timeOutOrders)) {
return new CommonResult().failed("暂无超时订单");
return CommonResult.failed("暂无超时订单");
}
//修改订单状态为交易取消
List<Long> ids = new ArrayList<>();
@ -265,7 +266,7 @@ public class OmsPortalOrderServiceImpl implements OmsPortalOrderService {
memberService.updateIntegration(timeOutOrder.getMemberId(), member.getIntegration() + timeOutOrder.getUseIntegration());
}
}
return new CommonResult().success(null);
return CommonResult.success(null);
}
@Override
@ -363,6 +364,7 @@ public class OmsPortalOrderServiceImpl implements OmsPortalOrderService {
/**
* 将优惠券信息更改为指定状态
*
* @param couponId 优惠券id
* @param memberId 会员id
* @param useStatus 0->未使用1->已使用

View File

@ -1,11 +1,11 @@
package com.macro.mall.portal.service.impl;
import com.macro.mall.common.api.CommonResult;
import com.macro.mall.mapper.SmsCouponHistoryMapper;
import com.macro.mall.mapper.SmsCouponMapper;
import com.macro.mall.model.*;
import com.macro.mall.portal.dao.SmsCouponHistoryDao;
import com.macro.mall.portal.domain.CartPromotionItem;
import com.macro.mall.portal.domain.CommonResult;
import com.macro.mall.portal.domain.SmsCouponHistoryDetail;
import com.macro.mall.portal.service.UmsMemberCouponService;
import com.macro.mall.portal.service.UmsMemberService;
@ -35,21 +35,21 @@ public class UmsMemberCouponServiceImpl implements UmsMemberCouponService {
//获取优惠券信息判断数量
SmsCoupon coupon = couponMapper.selectByPrimaryKey(couponId);
if(coupon==null){
return new CommonResult().failed("优惠券不存在");
return CommonResult.failed("优惠券不存在");
}
if(coupon.getCount()<=0){
return new CommonResult().failed("优惠券已经领完了");
return CommonResult.failed("优惠券已经领完了");
}
Date now = new Date();
if(now.before(coupon.getEnableTime())){
return new CommonResult().failed("优惠券还没到领取时间");
return CommonResult.failed("优惠券还没到领取时间");
}
//判断用户领取的优惠券数量是否超过限制
SmsCouponHistoryExample couponHistoryExample = new SmsCouponHistoryExample();
couponHistoryExample.createCriteria().andCouponIdEqualTo(couponId).andMemberIdEqualTo(currentMember.getId());
int count = couponHistoryMapper.countByExample(couponHistoryExample);
if(count>=coupon.getPerLimit()){
return new CommonResult().failed("您已经领取过该优惠券");
return CommonResult.failed("您已经领取过该优惠券");
}
//生成领取优惠券历史
SmsCouponHistory couponHistory = new SmsCouponHistory();
@ -67,7 +67,7 @@ public class UmsMemberCouponServiceImpl implements UmsMemberCouponService {
coupon.setCount(coupon.getCount()-1);
coupon.setReceiveCount(coupon.getReceiveCount()==null?1:coupon.getReceiveCount()+1);
couponMapper.updateByPrimaryKey(coupon);
return new CommonResult().success("领取成功",null);
return CommonResult.success(null,"领取成功");
}
/**

View File

@ -1,12 +1,12 @@
package com.macro.mall.portal.service.impl;
import com.macro.mall.common.api.CommonResult;
import com.macro.mall.mapper.UmsMemberLevelMapper;
import com.macro.mall.mapper.UmsMemberMapper;
import com.macro.mall.model.UmsMember;
import com.macro.mall.model.UmsMemberExample;
import com.macro.mall.model.UmsMemberLevel;
import com.macro.mall.model.UmsMemberLevelExample;
import com.macro.mall.portal.domain.CommonResult;
import com.macro.mall.portal.domain.MemberDetails;
import com.macro.mall.portal.service.RedisService;
import com.macro.mall.portal.service.UmsMemberService;
@ -63,7 +63,7 @@ public class UmsMemberServiceImpl implements UmsMemberService {
public CommonResult register(String username, String password, String telephone, String authCode) {
//验证验证码
if(!verifyAuthCode(authCode,telephone)){
return new CommonResult().failed("验证码错误");
return CommonResult.failed("验证码错误");
}
//查询是否已有该用户
UmsMemberExample example = new UmsMemberExample();
@ -71,7 +71,7 @@ public class UmsMemberServiceImpl implements UmsMemberService {
example.or(example.createCriteria().andPhoneEqualTo(telephone));
List<UmsMember> umsMembers = memberMapper.selectByExample(example);
if (!CollectionUtils.isEmpty(umsMembers)) {
return new CommonResult().failed("该用户已经存在");
return CommonResult.failed("该用户已经存在");
}
//没有该用户进行添加操作
UmsMember umsMember = new UmsMember();
@ -89,7 +89,7 @@ public class UmsMemberServiceImpl implements UmsMemberService {
}
memberMapper.insert(umsMember);
umsMember.setPassword(null);
return new CommonResult().success("注册成功",null);
return CommonResult.success(null,"注册成功");
}
@Override
@ -102,7 +102,7 @@ public class UmsMemberServiceImpl implements UmsMemberService {
//验证码绑定手机号并存储到redis
redisService.set(REDIS_KEY_PREFIX_AUTH_CODE+telephone,sb.toString());
redisService.expire(REDIS_KEY_PREFIX_AUTH_CODE+telephone,AUTH_CODE_EXPIRE_SECONDS);
return new CommonResult().success("获取验证码成功",sb.toString());
return CommonResult.success(sb.toString(),"获取验证码成功");
}
@Override
@ -111,16 +111,16 @@ public class UmsMemberServiceImpl implements UmsMemberService {
example.createCriteria().andPhoneEqualTo(telephone);
List<UmsMember> memberList = memberMapper.selectByExample(example);
if(CollectionUtils.isEmpty(memberList)){
return new CommonResult().failed("该账号不存在");
return CommonResult.failed("该账号不存在");
}
//验证验证码
if(!verifyAuthCode(authCode,telephone)){
return new CommonResult().failed("验证码错误");
return CommonResult.failed("验证码错误");
}
UmsMember umsMember = memberList.get(0);
umsMember.setPassword(passwordEncoder.encode(password));
memberMapper.updateByPrimaryKeySelective(umsMember);
return new CommonResult().success("密码修改成功",null);
return CommonResult.success(null,"密码修改成功");
}
@Override

View File

@ -5,17 +5,16 @@
<groupId>com.macro.mall</groupId>
<artifactId>mall-search</artifactId>
<version>0.0.1-SNAPSHOT</version>
<version>1.0-SNAPSHOT</version>
<packaging>jar</packaging>
<name>mall-search</name>
<description>mall-search project for mall</description>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.1.3.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
<groupId>com.macro.mall</groupId>
<artifactId>mall</artifactId>
<version>1.0-SNAPSHOT</version>
</parent>
<properties>
@ -35,38 +34,6 @@
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-elasticsearch</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<!--MyBatis分页插件-->
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper-spring-boot-starter</artifactId>
<version>1.2.10</version>
</dependency>
<!--Swagger-UI API文档生产工具-->
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<version>2.6.1</version>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
<version>2.6.1</version>
</dependency>
<!--集成druid连接池-->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid-spring-boot-starter</artifactId>
<version>1.1.10</version>
</dependency>
</dependencies>
<build>

View File

@ -1,6 +1,7 @@
package com.macro.mall.search.controller;
import com.macro.mall.search.domain.CommonResult;
import com.macro.mall.common.api.CommonPage;
import com.macro.mall.common.api.CommonResult;
import com.macro.mall.search.domain.EsProduct;
import com.macro.mall.search.domain.EsProductRelatedInfo;
import com.macro.mall.search.service.EsProductService;
@ -28,47 +29,47 @@ public class EsProductController {
@ApiOperation(value = "导入所有数据库中商品到ES")
@RequestMapping(value = "/importAll", method = RequestMethod.POST)
@ResponseBody
public Object importAllList() {
public CommonResult<Integer> importAllList() {
int count = esProductService.importAll();
return new CommonResult().success(count);
return CommonResult.success(count);
}
@ApiOperation(value = "根据id删除商品")
@RequestMapping(value = "/delete/{id}", method = RequestMethod.GET)
@ResponseBody
public Object delete(@PathVariable Long id) {
public CommonResult<Object> delete(@PathVariable Long id) {
esProductService.delete(id);
return new CommonResult().success(null);
return CommonResult.success(null);
}
@ApiOperation(value = "根据id批量删除商品")
@RequestMapping(value = "/delete/batch", method = RequestMethod.POST)
@ResponseBody
public Object delete(@RequestParam("ids") List<Long> ids) {
public CommonResult<Object> delete(@RequestParam("ids") List<Long> ids) {
esProductService.delete(ids);
return new CommonResult().success(null);
return CommonResult.success(null);
}
@ApiOperation(value = "根据id创建商品")
@RequestMapping(value = "/create/{id}", method = RequestMethod.POST)
@ResponseBody
public Object create(@PathVariable Long id) {
public CommonResult<EsProduct> create(@PathVariable Long id) {
EsProduct esProduct = esProductService.create(id);
if (esProduct != null) {
return new CommonResult().success(esProduct);
return CommonResult.success(esProduct);
} else {
return new CommonResult().failed();
return CommonResult.failed();
}
}
@ApiOperation(value = "简单搜索")
@RequestMapping(value = "/search/simple", method = RequestMethod.GET)
@ResponseBody
public Object search(@RequestParam(required = false) String keyword,
public CommonResult<CommonPage<EsProduct>> search(@RequestParam(required = false) String keyword,
@RequestParam(required = false, defaultValue = "0") Integer pageNum,
@RequestParam(required = false, defaultValue = "5") Integer pageSize) {
Page<EsProduct> esProductPage = esProductService.search(keyword, pageNum, pageSize);
return new CommonResult().pageSuccess(esProductPage);
return CommonResult.success(CommonPage.restPage(esProductPage));
}
@ApiOperation(value = "综合搜索、筛选、排序")
@ -76,31 +77,31 @@ public class EsProductController {
defaultValue = "0", allowableValues = "0,1,2,3,4", paramType = "query", dataType = "integer")
@RequestMapping(value = "/search", method = RequestMethod.GET)
@ResponseBody
public Object search(@RequestParam(required = false) String keyword,
public CommonResult<CommonPage<EsProduct>> search(@RequestParam(required = false) String keyword,
@RequestParam(required = false) Long brandId,
@RequestParam(required = false) Long productCategoryId,
@RequestParam(required = false, defaultValue = "0") Integer pageNum,
@RequestParam(required = false, defaultValue = "5") Integer pageSize,
@RequestParam(required = false, defaultValue = "0") Integer sort) {
Page<EsProduct> esProductPage = esProductService.search(keyword, brandId, productCategoryId, pageNum, pageSize, sort);
return new CommonResult().pageSuccess(esProductPage);
return CommonResult.success(CommonPage.restPage(esProductPage));
}
@ApiOperation(value = "根据商品id推荐商品")
@RequestMapping(value = "/recommend/{id}", method = RequestMethod.GET)
@ResponseBody
public Object recommend(@PathVariable Long id,
public CommonResult<CommonPage<EsProduct>> recommend(@PathVariable Long id,
@RequestParam(required = false, defaultValue = "0") Integer pageNum,
@RequestParam(required = false, defaultValue = "5") Integer pageSize) {
Page<EsProduct> esProductPage = esProductService.recommend(id, pageNum, pageSize);
return new CommonResult().pageSuccess(esProductPage);
return CommonResult.success(CommonPage.restPage(esProductPage));
}
@ApiOperation(value = "获取搜索的相关品牌、分类及筛选属性")
@RequestMapping(value = "/search/relate", method = RequestMethod.GET)
@ResponseBody
public Object searchRelatedInfo(@RequestParam(required = false) String keyword){
public CommonResult<EsProductRelatedInfo> searchRelatedInfo(@RequestParam(required = false) String keyword) {
EsProductRelatedInfo productRelatedInfo = esProductService.searchRelatedInfo(keyword);
return new CommonResult().success(productRelatedInfo);
return CommonResult.success(productRelatedInfo);
}
}

View File

@ -1,81 +0,0 @@
package com.macro.mall.search.domain;
import org.springframework.data.domain.Page;
import java.util.HashMap;
import java.util.Map;
/**
* 通用返回对象
* Created by macro on 2018/4/26.
*/
public class CommonResult {
//操作成功
public static final int SUCCESS = 200;
//操作失败
public static final int FAILED = 500;
private int code;
private String message;
private Object data;
/**
* 普通成功返回
*
* @param data 获取的数据
*/
public CommonResult success(Object data) {
this.code = SUCCESS;
this.message = "操作成功";
this.data = data;
return this;
}
/**
* 返回分页成功数据
*/
public CommonResult pageSuccess(Page pageInfo) {
Map<String, Object> result = new HashMap<>();
result.put("pageSize", pageInfo.getSize());
result.put("totalPage", pageInfo.getTotalPages());
result.put("total", pageInfo.getTotalElements());
result.put("pageNum", pageInfo.getNumber());
result.put("list", pageInfo.getContent());
this.code = SUCCESS;
this.message = "操作成功";
this.data = result;
return this;
}
/**
* 普通失败提示信息
*/
public CommonResult failed() {
this.code = FAILED;
this.message = "操作失败";
return this;
}
public int getCode() {
return code;
}
public void setCode(int code) {
this.code = code;
}
public String getMessage() {
return message;
}
public void setMessage(String message) {
this.message = message;
}
public Object getData() {
return data;
}
public void setData(Object data) {
this.data = data;
}
}

41
pom.xml
View File

@ -10,11 +10,50 @@
<packaging>pom</packaging>
<modules>
<module>mall-common</module>
<module>mall-mbg</module>
<module>mall-demo</module>
<module>mall-admin</module>
<module>mall-search</module>
<module>mall-portal</module>
<module>mall-demo</module>
</modules>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.1.3.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-aop</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<!--MyBatis分页插件-->
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper-spring-boot-starter</artifactId>
<version>1.2.10</version>
</dependency>
<!--集成druid连接池-->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid-spring-boot-starter</artifactId>
<version>1.1.10</version>
</dependency>
</dependencies>
</project>