Commit dfa30de5 authored by 高宇's avatar 高宇

会员码接口

parent d4b7cba4
package com.emall.flash.api.controller.system;
import com.emall.flash.bean.entity.system.MemberBenefits;
import com.emall.flash.bean.vo.front.Ret;
import com.emall.flash.bean.vo.front.Rets;
import com.emall.flash.service.system.ManagerService;
import com.emall.flash.service.system.MemberBenefitsService;
import com.emall.flash.web.controller.BaseController;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import java.util.List;
@RestController
@RequestMapping("/memberBenefits")
......@@ -17,9 +18,48 @@ public class MemberController extends BaseController {
@Autowired
private MemberBenefitsService service;
// 查询会员等级
@RequestMapping(value = "/queryNumber",method = RequestMethod.GET)
public Object queryNumber(){
int number = service.queryNumber();
return Rets.success(number);
}
// 查询列表
@RequestMapping(value = "/queryMemberBenefits",method = RequestMethod.GET)
public Object queryMemberBenefits(MemberBenefits memberBenefits){
List<MemberBenefits> benefits = service.queryMemberBenefits(memberBenefits);
return Rets.success(benefits);
}
// 添加会员等级
@RequestMapping(value = "/add",method = RequestMethod.POST)
public Object add(@RequestBody MemberBenefits memberBenefits){
memberBenefits.setDelFlag(0);
memberBenefits.setStatus(1);
if (Boolean.TRUE.equals(service.isRepeat(memberBenefits)))
return Rets.failure("会员等级名称重复");
service.insert(memberBenefits);
return Rets.success(memberBenefits.getId());
}
// 编辑会员等级
@RequestMapping(value = "/update",method = RequestMethod.PUT)
public Object update(@RequestBody MemberBenefits memberBenefits){
if (Boolean.TRUE.equals(service.isRepeat(memberBenefits)))
return Rets.failure("会员等级名称重复");
service.update(memberBenefits);
return Rets.success();
}
// 删除会员等级
@RequestMapping(method = RequestMethod.DELETE)
public Object delete(@RequestParam Long id) {
MemberBenefits memberBenefits = service.get(id);
int maxLevel = service.queryMaxNumber();
if (memberBenefits.getLevel() < maxLevel) {
return Rets.failure("只能删除等级最大的会员等级");
} else {
memberBenefits.setStatus(0);
memberBenefits.setDelFlag(1);
service.update(memberBenefits);
return Rets.success();
}
}
}
......@@ -29,6 +29,13 @@ public class MemberBenefits extends BaseEntity {
private Integer delFlag;
@Column
private Long rankCard;
@Column
private Integer status;
@Column
private Long membershioCard;
@Transient
private String randUrl;
@Transient
private String memberUrl;
}
......@@ -4,6 +4,8 @@ import com.emall.flash.dao.BaseRepository;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.NoRepositoryBean;
import java.util.List;
/**
* 封装基础的dao接口
*
......@@ -13,8 +15,13 @@ import org.springframework.data.repository.NoRepositoryBean;
public interface MemberBenefitsRepository extends BaseRepository<MemberBenefits,Long> {
// 查询会员级别
@Query(nativeQuery = true,value = "SELECT count( id ) FROM t_member_benefits where del_flag = 0 and `status` = 1")
int queryNumber();
// 查询会员等级列表
@Query(nativeQuery = true,value = "SELECT mb.id AS id, mb.`name` AS `name`, mb.`level` AS `level`, mb.integral AS integral,mb.discount AS discount,mb.`status` AS `status`,mb.del_flag AS delFlag,mb.create_by AS create_by,mb.create_time AS create_time,mb.modify_by AS modify_by,mb.modify_time AS modify_time,t1.real_file_name AS randUrl,oi2.real_file_name AS memberUrl FROM t_member_benefits mb LEFT JOIN t_sys_file_info t1 ON mb.rank_card = t1.id LEFT JOIN t_sys_file_info oi2 ON mb.membership_card = oi2.id WHERE mb.del_flag = 0 AND mb.`status` = 1")
List<MemberBenefits> queryAllInfo(MemberBenefits memberBenefits);
// 查询最大会员等级数
@Query(nativeQuery = true,value = "SELECT IFNULL(max(`level`), 0) FROM t_member_benefits where del_flag = 0 and `status` = 1")
int queryMaxLevel();
}
\ No newline at end of file
package com.emall.flash.service.system;
import com.emall.flash.bean.entity.shop.ActivityInfo;
import com.emall.flash.bean.entity.system.MemberBenefits;
import com.emall.flash.bean.entity.system.Role;
import com.emall.flash.bean.vo.query.SearchFilter;
import com.emall.flash.dao.system.MemberBenefitsRepository;
import com.emall.flash.dao.system.RoleRepository;
import com.emall.flash.service.BaseService;
import com.emall.flash.utils.Lists;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* Created on 2018/3/25 0025.
......@@ -18,11 +23,52 @@ public class MemberBenefitsService extends BaseService<MemberBenefits,Long, Memb
@Autowired
private MemberBenefitsRepository benefitsRepository;
/**
* 查询会员等级
* @param
* @return
*/
public int queryNumber(){
int number = benefitsRepository.queryNumber();
System.out.println("number"+number);
return number+1;
}
/**
* 查询会员等级列表
* @param
* @return
*/
public List<MemberBenefits> queryMemberBenefits(MemberBenefits memberBenefits){
List<MemberBenefits> memberBenefitsList = benefitsRepository.queryAllInfo(memberBenefits);
return memberBenefitsList;
}
/**
* 校验名称是否重复
* @param
* @return
*/
public Boolean isRepeat(MemberBenefits memberBenefits) {
MemberBenefits old = null;
if (memberBenefits.getId() != null) {
old = get(
Lists.newArrayList(SearchFilter.build("name", memberBenefits.getName()),
SearchFilter.build("delFlag", 0),
SearchFilter.build("id", SearchFilter.Operator.NE, memberBenefits.getId())
));
} else {
old = get( Lists.newArrayList(SearchFilter.build("name", memberBenefits.getName()),
SearchFilter.build("delFlag", 0)));
}
return old != null;
}
/**
* 获取最大的会员等级数
* @param
* @return
*/
public int queryMaxNumber(){
int maxLevel = benefitsRepository.queryMaxLevel();
return maxLevel;
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment