package com.goafanti.memberGrade.controller; import java.text.DateFormat; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Calendar; import java.util.Date; import java.util.HashMap; import java.util.List; import java.util.Map; 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 com.alibaba.fastjson.JSON; import com.goafanti.common.bo.Error; import com.goafanti.common.bo.Result; import com.goafanti.common.controller.BaseApiController; import com.goafanti.common.model.MemberOrder; import com.goafanti.common.utils.StringUtils; import com.goafanti.memberGrade.bo.MemberGrade; import com.goafanti.memberGrade.bo.MemberGradeBO; import com.goafanti.memberGrade.service.MemberGradeService; /** * 会员等级管理 后台 * * @author Administrator * */ @RestController @RequestMapping(value = "/api/admin/member") public class MemberGradeController extends BaseApiController { @Autowired private MemberGradeService memberGradeService; /** * 查询全部信息 * * @return */ @RequestMapping(value = "/selectMemberGrade", method = RequestMethod.GET) public Result selectMemberGrade() { List list = memberGradeService.selectMemberGrade(); List result = new ArrayList<>(); for (MemberGrade mg : list) { result.add(new MemberGradeBO(mg.getId(), mg.getGradeName(), JSON.parseObject(mg.getBusiness()), JSON.parseObject(mg.getCost()), mg.getMemberRank())); } return res().data(result); } /** * 删除会员等级 * * @param id * @return */ @RequestMapping(value = "/delGrade", method = RequestMethod.POST) public Result delGrade(int id) { return res().data(memberGradeService.delGrade(id)); } /** * 新增会员等级名称 * * @param name * @return */ @RequestMapping(value = "/addGradeName", method = RequestMethod.POST) public Result addGradeName(MemberGrade me) { if (memberGradeService.selectRank(me) >= 1) { Error e = new Error(); e.setMessage("该会员等级已存在"); return res().error(e); } memberGradeService.addGradeName(me); return res().data(me.getId()); } /** * 增加业务及费用 与更改 * * @param me * @return */ @RequestMapping(value = "/addBusinessAndCost", method = RequestMethod.POST) public Result addBusinessAndCost(MemberGrade me) { return res().data(memberGradeService.addBusinessAndCost(me)); } /** * 后台会员订单列表单 * * @param pageNo * @param pageSize * @return */ @RequestMapping(value = "/selectMemberOrderBa", method = RequestMethod.GET) public Result selectMemberOrderBa(String pageNo, String pageSize, Long id, String mobile, String nickname, Integer orderState, String startTime, String endTime) { Integer pNo = 1; Integer pSize = 10; String da = null; if (StringUtils.isNumeric(pageSize)) { pSize = Integer.parseInt(pageSize); } if (StringUtils.isNumeric(pageNo)) { pNo = Integer.parseInt(pageNo); } Integer pNos = (pNo - 1) * pSize; Map map = new HashMap<>(); map.put("pNos", pNos); map.put("pSize", pSize); map.put("id", id); map.put("mobile", mobile); map.put("nickname", nickname); map.put("orderState", orderState); map.put("startTimes", startTime); if (endTime != null) { DateFormat df = new SimpleDateFormat("yyyy-MM-dd"); try { Date date = df.parse(endTime); Calendar calendar = Calendar.getInstance(); calendar.setTime(date); calendar.add(Calendar.DAY_OF_MONTH, 1); da = df.format(calendar.getTime()); } catch (ParseException e) { // TODO Auto-generated catch block e.printStackTrace(); } } map.put("endTimes", da); List list = memberGradeService.selectMemberOrderBa(map); int countWhere = memberGradeService.countMemberOrderWhere(map); Map maps = new HashMap<>(); maps.put("List", list); maps.put("countWhere", countWhere); maps.put("pNo", pNo); return res().data(maps); } /** * 后台会员更改 * * @param id * @param memberRank * @param validMonth * @param paymentValue * @param orderState * @param paymentTime * @param paymentType * @return */ @RequestMapping(value = "/updateMemberOrder", method = RequestMethod.GET) public Result updateMemberOrder(Long id, int memberRank, Integer validMonth, Double paymentValue, Integer orderState, String paymentTime, String paymentType) { Map map = new HashMap<>(); map.put("id", id); map.put("menberType", memberRank); map.put("validMonth", validMonth); map.put("paymentValue", paymentValue); map.put("orderState", orderState); map.put("paymentTime", paymentTime); map.put("paymentType", paymentType); return res().data(memberGradeService.updateMemberOrder(map)); } }