| @@ -5,6 +5,7 @@ import com.simple.common.Result; | |||
| import com.simple.common.ResultData; | |||
| import com.simple.domain.po.WxCouponOrder; | |||
| import com.simple.service.WxCouponOrderService; | |||
| import io.swagger.annotations.Api; | |||
| import io.swagger.annotations.ApiImplicitParam; | |||
| import io.swagger.annotations.ApiImplicitParams; | |||
| import io.swagger.annotations.ApiOperation; | |||
| @@ -14,6 +15,7 @@ import org.springframework.web.bind.annotation.*; | |||
| @RestController | |||
| @RequestMapping("wxCouponOrder") | |||
| @Api(description="核销和用户卡券查询接口") | |||
| public class WxCouponOrderController extends BaseController | |||
| { | |||
| @Autowired | |||
| @@ -62,6 +64,13 @@ public class WxCouponOrderController extends BaseController | |||
| public ResultData findById(Long id) { | |||
| return new ResultData(Result.SUCCESS,"查询成功",wxCouponOrderService.getById(id)); | |||
| } | |||
| @ApiOperation("核销接口") | |||
| @PostMapping("verify") | |||
| public ResultData verify(@RequestBody WxCouponOrder wxCouponOrder) { | |||
| wxCouponOrderService.verify(wxCouponOrder.getId(),getUser()); | |||
| return new ResultData(); | |||
| } | |||
| @@ -1,6 +1,7 @@ | |||
| package com.simple.domain.po; | |||
| import javax.persistence.*; | |||
| import java.text.DecimalFormat; | |||
| import java.util.*; | |||
| import java.math.*; | |||
| import javax.persistence.Transient; | |||
| @@ -41,6 +42,14 @@ public class WxCoupon implements Serializable { | |||
| } | |||
| @Transient | |||
| private String salePriceStr; | |||
| @Transient | |||
| private String usePriceStr; | |||
| @Transient | |||
| private String priceStr; | |||
| /*租户ID**/ | |||
| @io.swagger.annotations.ApiModelProperty(value="租户ID",name="tenantId") | |||
| @@ -276,6 +285,41 @@ public class WxCoupon implements Serializable { | |||
| public void setBusiness(String _business) { | |||
| business = _business; | |||
| } | |||
| public String getSalePriceStr() { | |||
| if(salePrice!=null) { | |||
| DecimalFormat df=new DecimalFormat("0.00"); | |||
| salePriceStr = df.format((float)salePrice/100); | |||
| } | |||
| return salePriceStr; | |||
| } | |||
| public void setSalePriceStr(String salePriceStr) { | |||
| this.salePriceStr = salePriceStr; | |||
| } | |||
| public String getUsePriceStr() { | |||
| if(usePrice!=null) { | |||
| DecimalFormat df=new DecimalFormat("0.00"); | |||
| usePriceStr = df.format((float)usePrice/100); | |||
| } | |||
| return usePriceStr; | |||
| } | |||
| public void setUsePriceStr(String usePriceStr) { | |||
| this.usePriceStr = usePriceStr; | |||
| } | |||
| public String getPriceStr() { | |||
| if(price!=null) { | |||
| DecimalFormat df=new DecimalFormat("0.00"); | |||
| priceStr = df.format((float)price/100); | |||
| } | |||
| return priceStr; | |||
| } | |||
| public void setPriceStr(String priceStr) { | |||
| this.priceStr = priceStr; | |||
| } | |||
| @@ -2,6 +2,8 @@ package com.simple.service; | |||
| import java.util.*; | |||
| import com.github.pagehelper.PageInfo; | |||
| import com.simple.common.ResultData; | |||
| import com.simple.domain.po.MallUserInfo; | |||
| import com.simple.domain.po.WxCouponOrder; | |||
| public interface WxCouponOrderService { | |||
| @@ -37,6 +39,13 @@ public interface WxCouponOrderService { | |||
| * @param id | |||
| */ | |||
| void deleteById(Long id); | |||
| /** | |||
| * 根据主键Id(券码)核销 | |||
| * | |||
| * @param id | |||
| * @param mallUserInfo 核销人(登录用户) | |||
| */ | |||
| ResultData verify(Long id, MallUserInfo mallUserInfo); | |||
| @@ -0,0 +1,73 @@ | |||
| package com.simple.service.impl; | |||
| import com.github.pagehelper.PageHelper; | |||
| import com.github.pagehelper.PageInfo; | |||
| import com.simple.common.IdWorker; | |||
| import com.simple.common.Result; | |||
| import com.simple.common.ResultData; | |||
| import com.simple.domain.po.MallUserInfo; | |||
| import com.simple.domain.po.WxCouponOrder; | |||
| import com.simple.mapper.WxCouponOrderMapper; | |||
| import com.simple.service.WxCouponOrderService; | |||
| import org.springframework.beans.factory.annotation.Autowired; | |||
| import org.springframework.stereotype.Service; | |||
| import java.util.Date; | |||
| @Service | |||
| public class WxCouponOrderServiceImpl implements WxCouponOrderService { | |||
| @Autowired | |||
| WxCouponOrderMapper wxCouponOrderMapper; | |||
| @Override | |||
| public PageInfo<WxCouponOrder> listAsPage(WxCouponOrder record, Integer pageIndex, Integer pageSize) { | |||
| return PageHelper.startPage(pageIndex, pageSize).doSelectPageInfo(() -> wxCouponOrderMapper.findList(record)); | |||
| } | |||
| @Override | |||
| public WxCouponOrder getById(Long id) { | |||
| return wxCouponOrderMapper.selectByPrimaryKey(id); | |||
| } | |||
| @Override | |||
| public void saveOrUpdate(WxCouponOrder record) { | |||
| if (record.getId() == null) { | |||
| //record.setId(UUID.randomUUID().toString().replaceAll("-", "")); | |||
| IdWorker idWorker = new IdWorker(0, 0); | |||
| record.setId(idWorker.nextId()); | |||
| wxCouponOrderMapper.insertSelective(record); | |||
| } else { | |||
| wxCouponOrderMapper.updateByPrimaryKeySelective(record); | |||
| } | |||
| } | |||
| @Override | |||
| public void deleteById(Long id) { | |||
| wxCouponOrderMapper.deleteByPrimaryKey(id); | |||
| } | |||
| @Override | |||
| public ResultData verify(Long id, MallUserInfo mallUserInfo) { | |||
| WxCouponOrder wxCouponOrder = wxCouponOrderMapper.selectByPrimaryKey(id); | |||
| if (wxCouponOrder.getCouponOrderStatus() == 2) { | |||
| return new ResultData(Result.ERROR, "已过期"); | |||
| } | |||
| if (wxCouponOrder.getCouponOrderStatus() == 3) { | |||
| return new ResultData(Result.ERROR, "已退款"); | |||
| } | |||
| if (wxCouponOrder.getCouponOrderStatus() == 1) { | |||
| return new ResultData(Result.ERROR, "已经核销过的券"); | |||
| } | |||
| wxCouponOrder.setCouponOrderStatus(1); //1核销 | |||
| wxCouponOrder.setBUserId(mallUserInfo.getId()); | |||
| wxCouponOrder.setUpdateDate(new Date()); | |||
| wxCouponOrderMapper.updateByPrimaryKeySelective(wxCouponOrder); | |||
| return new ResultData(); | |||
| } | |||
| } | |||