Bläddra i källkod

feat:优惠券

Joburgess 4 år sedan
förälder
incheckning
f945e10edb

+ 34 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/page/SysCouponQueryInfo.java

@@ -0,0 +1,34 @@
+package com.ym.mec.biz.dal.page;
+
+import com.ym.mec.biz.dal.enums.CouponTypeEnum;
+import com.ym.mec.common.page.QueryInfo;
+import io.swagger.annotations.ApiModelProperty;
+
+/**
+ * @Author Joburgess
+ * @Date 2021/9/8 0008
+ */
+public class SysCouponQueryInfo extends QueryInfo {
+
+    @ApiModelProperty("券类型:FULL_REDUCTION(满减券),DISCOUNT(折扣券)")
+    private CouponTypeEnum type;
+
+    @ApiModelProperty("状态:0停用,1启用")
+    private Integer status;
+
+    public CouponTypeEnum getType() {
+        return type;
+    }
+
+    public void setType(CouponTypeEnum type) {
+        this.type = type;
+    }
+
+    public Integer getStatus() {
+        return status;
+    }
+
+    public void setStatus(Integer status) {
+        this.status = status;
+    }
+}

+ 4 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/SysCouponService.java

@@ -1,10 +1,14 @@
 package com.ym.mec.biz.service;
 
 import com.ym.mec.biz.dal.entity.SysCoupon;
+import com.ym.mec.biz.dal.page.SysCouponQueryInfo;
+import com.ym.mec.common.page.PageInfo;
 import com.ym.mec.common.service.BaseService;
 
 public interface SysCouponService extends BaseService<Integer, SysCoupon> {
 
+    PageInfo<SysCoupon> queryPage(SysCouponQueryInfo queryInfo);
+
     void updateCoupon(SysCoupon sysCoupon);
 
 }

+ 27 - 7
mec-biz/src/main/java/com/ym/mec/biz/service/impl/SysCouponServiceImpl.java

@@ -1,17 +1,20 @@
 package com.ym.mec.biz.service.impl;
 
+import com.ym.mec.biz.dal.dao.SysCouponDao;
+import com.ym.mec.biz.dal.entity.SysCoupon;
+import com.ym.mec.biz.dal.page.SysCouponQueryInfo;
+import com.ym.mec.biz.service.SysCouponService;
 import com.ym.mec.common.dal.BaseDAO;
 import com.ym.mec.common.exception.BizException;
-import org.springframework.beans.factory.annotation.Autowired;
+import com.ym.mec.common.page.PageInfo;
 import com.ym.mec.common.service.impl.BaseServiceImpl;
-import com.ym.mec.biz.dal.entity.SysCoupon;
-import com.ym.mec.biz.service.SysCouponService;
-import com.ym.mec.biz.dal.dao.SysCouponDao;
+import com.ym.mec.util.collection.MapUtil;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Isolation;
 import org.springframework.transaction.annotation.Transactional;
 
-import java.util.Objects;
+import java.util.*;
 
 @Service
 public class SysCouponServiceImpl extends BaseServiceImpl<Integer, SysCoupon>  implements SysCouponService {
@@ -25,6 +28,23 @@ public class SysCouponServiceImpl extends BaseServiceImpl<Integer, SysCoupon>  i
 	}
 
 	@Override
+	public PageInfo<SysCoupon> queryPage(SysCouponQueryInfo queryInfo) {
+		PageInfo<SysCoupon> pageInfo = new PageInfo<>(queryInfo.getPage(), queryInfo.getRows());
+		Map<String, Object> params = new HashMap<String, Object>();
+		MapUtil.populateMap(params, queryInfo);
+
+		List<SysCoupon> dataList = new ArrayList<>();
+		int count = this.findCount(params);
+		if (count > 0) {
+			pageInfo.setTotal(count);
+			params.put("offset", pageInfo.getOffset());
+			dataList = this.getDAO().queryPage(params);
+		}
+		pageInfo.setRows(dataList);
+		return pageInfo;
+	}
+
+	@Override
 	@Transactional(rollbackFor = Exception.class, isolation = Isolation.READ_COMMITTED)
 	public void updateCoupon(SysCoupon sysCoupon) {
 		SysCoupon oldCoupon = sysCouponDao.lockCoupon(sysCoupon.getId());
@@ -37,8 +57,8 @@ public class SysCouponServiceImpl extends BaseServiceImpl<Integer, SysCoupon>  i
 			oldCoupon.setStockCount(sysCoupon.getStockCount());
 			oldCoupon.setWarningStockNum(sysCoupon.getWarningStockNum());
 			sysCouponDao.update(oldCoupon);
-			return;
+		}else{
+			sysCouponDao.update(sysCoupon);
 		}
-		sysCouponDao.update(sysCoupon);
 	}
 }

+ 19 - 1
mec-biz/src/main/resources/config/mybatis/SysCouponMapper.xml

@@ -110,14 +110,32 @@
 		DELETE FROM sys_coupon WHERE id_ = #{id}
 	</delete>
 
+	<sql id="queryCondition">
+		<where>
+			<if test="status != null">
+				AND status_ = #{status}
+			</if>
+			<if test="type != null">
+				AND type_ = #{type, typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler}
+			</if>
+			<if test="search != null and search != ''">
+				AND (id_=#{search} OR name_ LIKE CONCAT('%', #{search}, '%'))
+			</if>
+		</where>
+	</sql>
+
 	<!-- 分页查询 -->
 	<select id="queryPage" resultMap="SysCoupon" parameterType="map">
-		SELECT * FROM sys_coupon ORDER BY id_ <include refid="global.limit"/>
+		SELECT * FROM sys_coupon
+		<include refid="queryCondition"></include>
+		ORDER BY id_
+		<include refid="global.limit"/>
 	</select>
 
 	<!-- 查询当前表的总记录数 -->
 	<select id="queryCount" resultType="int">
 		SELECT COUNT(*) FROM sys_coupon
+		<include refid="queryCondition"></include>
 	</select>
 
 	<select id="lockCoupon" resultMap="SysCoupon">

+ 6 - 5
mec-web/src/main/java/com/ym/mec/web/controller/SysCouponController.java

@@ -1,9 +1,10 @@
 package com.ym.mec.web.controller;
 
 import com.ym.mec.biz.dal.entity.SysCoupon;
+import com.ym.mec.biz.dal.page.SysCouponQueryInfo;
 import com.ym.mec.biz.service.SysCouponService;
 import com.ym.mec.common.controller.BaseController;
-import com.ym.mec.common.page.QueryInfo;
+import com.ym.mec.common.entity.HttpResponseResult;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -26,14 +27,14 @@ public class SysCouponController extends BaseController {
 	@ApiOperation("新增")
 	@PostMapping(value = "add")
 	@PreAuthorize("@pcs.hasPermissions('sysCoupon/add')")
-	public Object add(@RequestBody SysCoupon sysCoupon) {
+	public HttpResponseResult add(@RequestBody SysCoupon sysCoupon) {
 		return succeed(sysCouponService.insert(sysCoupon));
 	}
 
 	@ApiOperation("修改")
 	@PostMapping(value = "updateCoupon")
 	@PreAuthorize("@pcs.hasPermissions('sysCoupon/updateCoupon')")
-	public Object updateCoupon(@RequestBody SysCoupon sysCoupon) {
+	public HttpResponseResult updateCoupon(@RequestBody SysCoupon sysCoupon) {
 		sysCouponService.updateCoupon(sysCoupon);
 		return succeed();
 	}
@@ -41,7 +42,7 @@ public class SysCouponController extends BaseController {
 	@ApiOperation("删除")
 	@PostMapping(value = "delete")
 	@PreAuthorize("@pcs.hasPermissions('sysCoupon/delete')")
-	public Object del(Integer id) {
+	public HttpResponseResult del(Integer id) {
 		SysCoupon sysCoupon = sysCouponService.get(id);
 		if(Objects.isNull(sysCoupon)){
 			return failed("优惠券信息不存在");
@@ -55,7 +56,7 @@ public class SysCouponController extends BaseController {
 	@ApiOperation("分页查询")
 	@PostMapping(value = "queryPage")
 	@PreAuthorize("@pcs.hasPermissions('sysCoupon/queryPage')")
-	public Object queryPage(QueryInfo queryInfo) {
+	public HttpResponseResult queryPage(SysCouponQueryInfo queryInfo) {
 		return succeed(sysCouponService.queryPage(queryInfo));
 	}
 }