Browse Source

增加优惠劵功能

zangguocen 3 năm trước cách đây
mục cha
commit
0967412e70
18 tập tin đã thay đổi với 1598 bổ sung86 xóa
  1. 132 5
      yijia-coupon/src/main/java/com/yijia/coupon/controller/CouponInfoController.java
  2. 179 0
      yijia-coupon/src/main/java/com/yijia/coupon/controller/CouponIssueController.java
  3. 97 0
      yijia-coupon/src/main/java/com/yijia/coupon/controller/CouponIssueRelationController.java
  4. 265 65
      yijia-coupon/src/main/java/com/yijia/coupon/domain/CouponInfo.java
  5. 133 0
      yijia-coupon/src/main/java/com/yijia/coupon/domain/CouponIssue.java
  6. 69 0
      yijia-coupon/src/main/java/com/yijia/coupon/domain/CouponIssueRelation.java
  7. 1 1
      yijia-coupon/src/main/java/com/yijia/coupon/mapper/CouponInfoMapper.java
  8. 61 0
      yijia-coupon/src/main/java/com/yijia/coupon/mapper/CouponIssueMapper.java
  9. 68 0
      yijia-coupon/src/main/java/com/yijia/coupon/mapper/CouponIssueRelationMapper.java
  10. 1 1
      yijia-coupon/src/main/java/com/yijia/coupon/service/ICouponInfoService.java
  11. 68 0
      yijia-coupon/src/main/java/com/yijia/coupon/service/ICouponIssueRelationService.java
  12. 61 0
      yijia-coupon/src/main/java/com/yijia/coupon/service/ICouponIssueService.java
  13. 1 1
      yijia-coupon/src/main/java/com/yijia/coupon/service/impl/CouponInfoServiceImpl.java
  14. 101 0
      yijia-coupon/src/main/java/com/yijia/coupon/service/impl/CouponIssueRelationServiceImpl.java
  15. 96 0
      yijia-coupon/src/main/java/com/yijia/coupon/service/impl/CouponIssueServiceImpl.java
  16. 85 13
      yijia-coupon/src/main/resources/mapper/coupon/CouponInfoMapper.xml
  17. 93 0
      yijia-coupon/src/main/resources/mapper/coupon/CouponIssueMapper.xml
  18. 87 0
      yijia-coupon/src/main/resources/mapper/coupon/CouponIssueRelationMapper.xml

+ 132 - 5
yijia-coupon/src/main/java/com/yijia/coupon/controller/CouponInfoController.java

@@ -1,7 +1,14 @@
 package com.yijia.coupon.controller;
-
+import java.text.ParseException;
+import java.text.SimpleDateFormat;
+import java.util.ArrayList;
+import java.util.Arrays;
 import java.util.List;
-import org.springframework.security.access.prepost.PreAuthorize;
+import java.util.stream.Collectors;
+
+import com.yijia.common.core.domain.model.LoginUser;
+import com.yijia.common.utils.SecurityUtils;
+import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.PostMapping;
@@ -22,9 +29,9 @@ import com.yijia.common.core.page.TableDataInfo;
 
 /**
  * 优惠劵Controller
- * 
+ *
  * @author yijia
- * @date 2021-04-27
+ * @date 2021-08-09
  */
 @RestController
 @RequestMapping("/coupon/info")
@@ -39,8 +46,40 @@ public class CouponInfoController extends BaseController
     @GetMapping("/list")
     public TableDataInfo list(CouponInfo couponInfo)
     {
+        LoginUser currentUser = SecurityUtils.getLoginUser();
+        couponInfo.setStationId(currentUser.getUser().getDeptId());
         startPage();
+        SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
         List<CouponInfo> list = couponInfoService.selectCouponInfoList(couponInfo);
+        if(list!=null && list.size()>0){
+            for(CouponInfo coupon:list){
+                if(coupon!=null && coupon.getOilName()!=null){
+                    coupon.setOilNameList(Arrays.asList(coupon.getOilName().split(",")));
+                }
+                List<String> eff = new ArrayList<>();
+                if(coupon!=null && coupon.getEffectiveTimeStart()!=null){
+                    eff.add(dateFormat.format(coupon.getEffectiveTimeStart()));
+                }
+                if(coupon!=null && coupon.getEffectiveTimeEnd()!=null){
+                    eff.add(dateFormat.format(coupon.getEffectiveTimeEnd()));
+                }
+                coupon.setEffectiveTime(eff);
+                if(coupon!=null && coupon.getVerification()!=null){
+                  //List<Integer> integerList =   Arrays.asList(stringList).stream().map(s -> Integer.parseInt(s.trim())).collect(Collectors.toList());
+                    List<String> stringList = Arrays.asList(coupon.getVerification().split(","));
+                    List<Integer> sssd = stringList.stream()
+                            .map(s -> Integer.parseInt(s))
+                            .collect(Collectors.toList());
+                    coupon.setVerificationList(sssd);
+                }
+                if(coupon!=null && coupon.getAppointedDays()!=null){
+                    coupon.setAppointedDaysList(Arrays.asList(coupon.getAppointedDays().split(",")));
+                }
+                if(coupon!=null && coupon.getCycleDays()!=null){
+                    coupon.setCycleDaysList(Arrays.asList(coupon.getCycleDays().split(",")));
+                }
+            }
+        }
         return getDataTable(list);
     }
 
@@ -62,7 +101,29 @@ public class CouponInfoController extends BaseController
     @GetMapping(value = "/{id}")
     public AjaxResult getInfo(@PathVariable("id") Integer id)
     {
-        return AjaxResult.success(couponInfoService.selectCouponInfoById(id));
+        SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+        CouponInfo couponInfo = couponInfoService.selectCouponInfoById(id);
+        if(couponInfo!=null && couponInfo.getOilName()!=null){
+            couponInfo.setOilNameList(Arrays.asList(couponInfo.getOilName().split(",")));
+        }
+        List<String> eff = new ArrayList<>();
+        if(couponInfo!=null && couponInfo.getEffectiveTimeStart()!=null){
+            eff.add(dateFormat.format(couponInfo.getEffectiveTimeStart()));
+        }
+        if(couponInfo!=null && couponInfo.getEffectiveTimeEnd()!=null){
+            eff.add(dateFormat.format(couponInfo.getEffectiveTimeEnd()));
+        }
+        couponInfo.setEffectiveTime(eff);
+        if(couponInfo!=null && couponInfo.getVerification()!=null){
+            couponInfo.setVerificationList(Arrays.asList(couponInfo.getVerification().split(",")).stream().map(s -> Integer.parseInt(s.trim())).collect(Collectors.toList()));
+        }
+        if(couponInfo!=null && couponInfo.getAppointedDays()!=null){
+            couponInfo.setAppointedDaysList(Arrays.asList(couponInfo.getAppointedDays().split(",")));
+        }
+        if(couponInfo!=null && couponInfo.getCycleDays()!=null){
+            couponInfo.setCycleDaysList(Arrays.asList(couponInfo.getCycleDays().split(",")));
+        }
+        return AjaxResult.success(couponInfo);
     }
 
     /**
@@ -72,6 +133,40 @@ public class CouponInfoController extends BaseController
     @PostMapping
     public AjaxResult add(@RequestBody CouponInfo couponInfo)
     {
+        try {
+            SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+            LoginUser currentUser = SecurityUtils.getLoginUser();
+            couponInfo.setCreateBy(String.valueOf(currentUser.getUser().getUserId()));
+            couponInfo.setStationId(currentUser.getUser().getDeptId());
+            if(couponInfo!=null &&couponInfo.getVerificationList()!=null && couponInfo.getVerificationList().size()>0){
+                String verification= StringUtils.join( couponInfo.getVerificationList(),",");
+                couponInfo.setVerification(verification);
+            }
+            if(couponInfo!=null&& couponInfo.getOilNameList() !=null && couponInfo.getOilNameList().size()>0){
+                String oilname= String.join(",", couponInfo.getOilNameList());
+                couponInfo.setOilName(oilname);
+            }
+            if(couponInfo!=null && couponInfo.getEffectiveTime() !=null&& couponInfo.getEffectiveTime().size()>0){
+                String start = couponInfo.getEffectiveTime().get(0);
+                String end = couponInfo.getEffectiveTime().get(1);
+                if(start!=null && start!=""){
+                    couponInfo.setEffectiveTimeStart( dateFormat.parse(start));
+                }
+                if(end!=null && end!=""){
+                    couponInfo.setEffectiveTimeEnd(dateFormat.parse(end));
+                }
+            }
+            if(couponInfo!=null&& couponInfo.getCycleDaysList() !=null && couponInfo.getCycleDaysList().size()>0){
+                String cycleDays= String.join(",", couponInfo.getCycleDaysList());
+                couponInfo.setCycleDays(cycleDays);
+            }
+            if(couponInfo!=null&& couponInfo.getAppointedDaysList() !=null && couponInfo.getAppointedDaysList().size()>0){
+                String appointedDays= String.join(",", couponInfo.getAppointedDaysList());
+                couponInfo.setAppointedDays(appointedDays);
+            }
+        } catch (ParseException e) {
+            e.printStackTrace();
+        }
         return toAjax(couponInfoService.insertCouponInfo(couponInfo));
     }
 
@@ -82,6 +177,38 @@ public class CouponInfoController extends BaseController
     @PutMapping
     public AjaxResult edit(@RequestBody CouponInfo couponInfo)
     {
+        try {
+            if(couponInfo!=null &&couponInfo.getVerificationList()!=null && couponInfo.getVerificationList().size()>0){
+                String verification= StringUtils.join( couponInfo.getVerificationList(),",");
+                couponInfo.setVerification(verification);
+            }
+            if(couponInfo!=null&& couponInfo.getOilNameList() !=null && couponInfo.getOilNameList() .size()>0){
+                String oilname= String.join(",", couponInfo.getOilNameList());
+                couponInfo.setOilName(oilname);
+            }
+            if(couponInfo!=null && couponInfo.getEffectiveTime() !=null&& couponInfo.getEffectiveTime().size()>0){
+                String start = couponInfo.getEffectiveTime().get(0);
+                String end = couponInfo.getEffectiveTime().get(1);
+                SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+                if(start!=null && start!=""){
+                    couponInfo.setEffectiveTimeStart( dateFormat.parse(start));
+                }
+                if(end!=null && end!=""){
+                    couponInfo.setEffectiveTimeStart(dateFormat.parse(end));
+                }
+            }
+
+            if(couponInfo!=null&& couponInfo.getCycleDaysList() !=null && couponInfo.getCycleDaysList().size()>0){
+                String cycleDays= String.join(",", couponInfo.getCycleDaysList());
+                couponInfo.setCycleDays(cycleDays);
+            }
+            if(couponInfo!=null&& couponInfo.getAppointedDaysList() !=null && couponInfo.getAppointedDaysList().size()>0){
+                String appointedDays= String.join(",", couponInfo.getAppointedDaysList());
+                couponInfo.setAppointedDays(appointedDays);
+            }
+        } catch (ParseException e) {
+            e.printStackTrace();
+        }
         return toAjax(couponInfoService.updateCouponInfo(couponInfo));
     }
 

+ 179 - 0
yijia-coupon/src/main/java/com/yijia/coupon/controller/CouponIssueController.java

@@ -0,0 +1,179 @@
+package com.yijia.coupon.controller;
+import java.util.Arrays;
+import java.util.List;
+import com.yijia.common.core.domain.model.LoginUser;
+import com.yijia.common.utils.SecurityUtils;
+import com.yijia.coupon.domain.CouponIssueRelation;
+import com.yijia.coupon.service.ICouponIssueRelationService;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.transaction.annotation.Transactional;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.PutMapping;
+import org.springframework.web.bind.annotation.DeleteMapping;
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+import com.yijia.common.annotation.Log;
+import com.yijia.common.core.controller.BaseController;
+import com.yijia.common.core.domain.AjaxResult;
+import com.yijia.common.enums.BusinessType;
+import com.yijia.coupon.domain.CouponIssue;
+import com.yijia.coupon.service.ICouponIssueService;
+import com.yijia.common.utils.poi.ExcelUtil;
+import com.yijia.common.core.page.TableDataInfo;
+
+/**
+ * 优惠劵发放方式Controller
+ * @author yijia
+ * @date 2021-08-13
+ */
+@RestController
+@RequestMapping("/coupon/issue")
+public class CouponIssueController extends BaseController
+{
+    @Autowired
+    private ICouponIssueService couponIssueService;
+    @Autowired
+    private ICouponIssueRelationService couponIssueRelationService;
+    /**
+     * 查询优惠劵发放方式列表
+     */
+    @GetMapping("/list")
+    public TableDataInfo list(CouponIssue couponIssue)
+    {
+        LoginUser currentUser = SecurityUtils.getLoginUser();
+        couponIssue.setStationId(currentUser.getUser().getDeptId());
+        startPage();
+        List<CouponIssue> list = couponIssueService.selectCouponIssueList(couponIssue);
+        if(list!=null && list.size()>0){
+            for(CouponIssue issue:list){
+                if(issue!=null && issue.getShowId()!=null){
+                    issue.setShowIdList(Arrays.asList(issue.getShowId().split(",")));
+                }
+                CouponIssueRelation couponIssueRelation =new CouponIssueRelation();
+                couponIssueRelation.setIssueId(issue.getId());
+                List<CouponIssueRelation> detailList = couponIssueRelationService.selectCouponIssueRelationList(couponIssueRelation);
+                if(detailList!=null &&detailList.size()>0){
+                    issue.setCouponIssueRelationList(detailList);
+                }
+            }
+        }
+        return getDataTable(list);
+    }
+
+    /**
+     * 导出优惠劵发放方式列表
+     */
+    @Log(title = "优惠劵发放方式", businessType = BusinessType.EXPORT)
+    @GetMapping("/export")
+    public AjaxResult export(CouponIssue couponIssue)
+    {
+        List<CouponIssue> list = couponIssueService.selectCouponIssueList(couponIssue);
+        ExcelUtil<CouponIssue> util = new ExcelUtil<CouponIssue>(CouponIssue.class);
+        return util.exportExcel(list, "issue");
+    }
+
+    /**
+     * 获取优惠劵发放方式详细信息
+     */
+    @GetMapping(value = "/{id}")
+    public AjaxResult getInfo(@PathVariable("id") Integer id)
+    {
+        //查询优惠劵发放方式
+        CouponIssue couponIssue = couponIssueService.selectCouponIssueById(id);
+        if(couponIssue!=null ){
+            //查询发放对应的优惠
+            CouponIssueRelation relation =new CouponIssueRelation();
+            relation.setCouponId(couponIssue.getId());
+            List<CouponIssueRelation>  list =  couponIssueRelationService.selectCouponIssueRelationList(relation);
+            couponIssue.setCouponIssueRelationList(list);
+        }
+        return AjaxResult.success(couponIssue);
+    }
+
+    /**
+     * 新增优惠劵发放方式
+     */
+    @Log(title = "优惠劵发放方式", businessType = BusinessType.INSERT)
+    @PostMapping
+    @Transactional
+    public AjaxResult add(@RequestBody CouponIssue couponIssue)
+    {
+        int i=0;
+        if(couponIssue!=null &&couponIssue.getShowIdList()!=null && couponIssue.getShowIdList().size()>0){
+            String verification= StringUtils.join( couponIssue.getShowIdList(),",");
+            couponIssue.setShowId(verification);
+        }
+        LoginUser currentUser = SecurityUtils.getLoginUser();
+        List<CouponIssueRelation> list = couponIssue.getCouponIssueRelationList();
+        couponIssue.setCreateBy(String.valueOf(currentUser.getUser().getUserId()));
+        i=couponIssueService.insertCouponIssue(couponIssue);
+        if(list!=null && list.size()>0){
+            for (CouponIssueRelation detail : list){
+                detail.setIssueId(couponIssue.getId());
+                detail.setCreateBy(String.valueOf(currentUser.getUser().getUserId()));
+                i=  couponIssueRelationService.insertCouponIssueRelation(detail);
+            }
+        }
+        return toAjax(i);
+    }
+
+    /**
+     * 修改优惠劵发放方式
+     */
+    @Log(title = "优惠劵发放方式", businessType = BusinessType.UPDATE)
+    @PutMapping
+    @Transactional
+    public AjaxResult edit(@RequestBody CouponIssue couponIssue)
+    {
+        int i=0;
+        if(couponIssue!=null &&couponIssue.getShowIdList()!=null && couponIssue.getShowIdList().size()>0){
+            String verification= StringUtils.join( couponIssue.getShowIdList(),",");
+            couponIssue.setShowId(verification);
+        }
+        LoginUser currentUser = SecurityUtils.getLoginUser();
+        List<CouponIssueRelation> list = couponIssue.getCouponIssueRelationList();
+        couponIssue.setUpdateBy(String.valueOf(currentUser.getUser().getUserId()));
+        i=couponIssueService.updateCouponIssue(couponIssue);
+        //删除所有的已绑定的优惠劵
+        CouponIssueRelation detail = new CouponIssueRelation();
+        detail.setIssueId(couponIssue.getId());
+        i =  couponIssueRelationService.deleteCouponIssueRelation(detail);
+        if(list!=null && list.size()>0){
+            for (CouponIssueRelation issueDetail : list){
+                issueDetail.setIssueId(couponIssue.getId());
+                issueDetail.setCreateBy(String.valueOf(currentUser.getUser().getUserId()));
+                i=  couponIssueRelationService.insertCouponIssueRelation(issueDetail);
+            }
+        }
+        return toAjax(i);
+    }
+
+    @Log(title = "修改优惠劵发放方式状态", businessType = BusinessType.UPDATE)
+    @PutMapping("/updateCouponIssueStatus")
+    @Transactional
+    public AjaxResult updateCouponIssueStatus(@RequestBody CouponIssue couponIssue)
+    {
+        int i=0;
+        if(couponIssue!=null &&couponIssue.getShowIdList()!=null && couponIssue.getShowIdList().size()>0){
+            String verification= StringUtils.join( couponIssue.getShowIdList(),",");
+            couponIssue.setShowId(verification);
+        }
+        LoginUser currentUser = SecurityUtils.getLoginUser();
+        couponIssue.setUpdateBy(String.valueOf(currentUser.getUser().getUserId()));
+        i=couponIssueService.updateCouponIssue(couponIssue);
+        return toAjax(i);
+    }
+    /**
+     * 删除优惠劵发放方式
+     */
+    @Log(title = "优惠劵发放方式", businessType = BusinessType.DELETE)
+	@DeleteMapping("/{ids}")
+    public AjaxResult remove(@PathVariable Integer[] ids)
+    {
+        return toAjax(couponIssueService.deleteCouponIssueByIds(ids));
+    }
+}

+ 97 - 0
yijia-coupon/src/main/java/com/yijia/coupon/controller/CouponIssueRelationController.java

@@ -0,0 +1,97 @@
+package com.yijia.coupon.controller;
+
+import java.util.List;
+
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.PutMapping;
+import org.springframework.web.bind.annotation.DeleteMapping;
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+import com.yijia.common.annotation.Log;
+import com.yijia.common.core.controller.BaseController;
+import com.yijia.common.core.domain.AjaxResult;
+import com.yijia.common.enums.BusinessType;
+import com.yijia.coupon.domain.CouponIssueRelation;
+import com.yijia.coupon.service.ICouponIssueRelationService;
+import com.yijia.common.utils.poi.ExcelUtil;
+import com.yijia.common.core.page.TableDataInfo;
+
+/**
+ * 发放方式,优惠劵信息Controller
+ *
+ * @author yijia
+ * @date 2021-08-13
+ */
+@RestController
+@RequestMapping("/coupon/detail")
+public class CouponIssueRelationController extends BaseController
+{
+    @Autowired
+    private ICouponIssueRelationService couponIssueRelationService;
+
+    /**
+     * 查询发放方式,优惠劵信息列表
+     */
+    @GetMapping("/list")
+    public TableDataInfo list(CouponIssueRelation couponIssueRelation)
+    {
+        startPage();
+        List<CouponIssueRelation> list = couponIssueRelationService.selectCouponIssueRelationList(couponIssueRelation);
+        return getDataTable(list);
+    }
+
+    /**
+     * 导出发放方式,优惠劵信息列表
+     */
+    @Log(title = "发放方式,优惠劵信息", businessType = BusinessType.EXPORT)
+    @GetMapping("/export")
+    public AjaxResult export(CouponIssueRelation couponIssueRelation)
+    {
+        List<CouponIssueRelation> list = couponIssueRelationService.selectCouponIssueRelationList(couponIssueRelation);
+        ExcelUtil<CouponIssueRelation> util = new ExcelUtil<CouponIssueRelation>(CouponIssueRelation.class);
+        return util.exportExcel(list, "detail");
+    }
+
+    /**
+     * 获取发放方式,优惠劵信息详细信息
+     */
+    @GetMapping(value = "/{id}")
+    public AjaxResult getInfo(@PathVariable("id") Long id)
+    {
+        return AjaxResult.success(couponIssueRelationService.selectCouponIssueRelationById(id));
+    }
+
+    /**
+     * 新增发放方式,优惠劵信息
+     */
+    @Log(title = "发放方式,优惠劵信息", businessType = BusinessType.INSERT)
+    @PostMapping
+    public AjaxResult add(@RequestBody CouponIssueRelation couponIssueRelation)
+    {
+        return toAjax(couponIssueRelationService.insertCouponIssueRelation(couponIssueRelation));
+    }
+
+    /**
+     * 修改发放方式,优惠劵信息
+     */
+    @Log(title = "发放方式,优惠劵信息", businessType = BusinessType.UPDATE)
+    @PutMapping
+    public AjaxResult edit(@RequestBody CouponIssueRelation couponIssueRelation)
+    {
+        return toAjax(couponIssueRelationService.updateCouponIssueRelation(couponIssueRelation));
+    }
+
+    /**
+     * 删除发放方式,优惠劵信息
+     */
+    @Log(title = "发放方式,优惠劵信息", businessType = BusinessType.DELETE)
+	@DeleteMapping("/{ids}")
+    public AjaxResult remove(@PathVariable Long[] ids)
+    {
+        return toAjax(couponIssueRelationService.deleteCouponIssueRelationByIds(ids));
+    }
+}

+ 265 - 65
yijia-coupon/src/main/java/com/yijia/coupon/domain/CouponInfo.java

@@ -2,7 +2,10 @@ package com.yijia.coupon.domain;
 
 import java.math.BigDecimal;
 import java.util.Date;
+import java.util.List;
+
 import com.fasterxml.jackson.annotation.JsonFormat;
+import com.fasterxml.jackson.annotation.JsonIgnore;
 import org.apache.commons.lang3.builder.ToStringBuilder;
 import org.apache.commons.lang3.builder.ToStringStyle;
 import com.yijia.common.annotation.Excel;
@@ -10,9 +13,9 @@ import com.yijia.common.core.domain.BaseEntity;
 
 /**
  * 优惠劵对象 coupon_info
- * 
+ *
  * @author yijia
- * @date 2021-04-27
+ * @date 2021-08-09
  */
 public class CouponInfo extends BaseEntity
 {
@@ -21,9 +24,9 @@ public class CouponInfo extends BaseEntity
     /** $column.columnComment */
     private Integer id;
 
-    /** 优惠劵ID */
-    @Excel(name = "优惠劵ID")
-    private String couponId;
+    /** 油站ID */
+    @Excel(name = "油站ID")
+    private Long stationId;
 
     /** 优惠劵名称 */
     @Excel(name = "优惠劵名称")
@@ -33,28 +36,34 @@ public class CouponInfo extends BaseEntity
     @Excel(name = "优惠劵类型 1现金劵,2折扣券,3兑换券")
     private String couponType;
 
+    /** 优惠券使用门槛金额 */
+    @Excel(name = "优惠券使用门槛金额")
+    private Long couponThresholdAmt;
+
     /** 优惠劵使用门槛类型。 1.无门槛,2满减劵,3折扣 */
     @Excel(name = "优惠劵使用门槛类型。 1.无门槛,2满减劵,3折扣")
     private String useDiscountType;
 
-    /** 油品名称 */
-    @Excel(name = "油品名称")
+    /** 油品 */
+    @Excel(name = "油品")
     private String oilName;
 
-    /** 1 柴油,2 汽油 */
-    @Excel(name = "1 柴油,2 汽油")
+    /** 1 汽油,2 柴油,3非油品,4LNG 5 CNG */
+    @Excel(name = "1 汽油,2 柴油,3非油品,4LNG 5 CNG")
     private String oilType;
 
-    /** 优惠劵面值,金额 */
-    @Excel(name = "优惠劵面值,金额")
+    /** 优惠劵面值,金额,折扣比例 */
+    @Excel(name = "优惠劵面值,金额,折扣比例")
     private BigDecimal couponAmt;
 
     /** 优惠劵数量 */
     @Excel(name = "优惠劵数量")
-    private Long couponNum;
+    private Integer couponNum;
+    /** 优惠劵持有张数 */
+    private Integer couponHoldNum;
 
-    /** 有效时间类型 1固定时间,2领取后x天内有效 */
-    @Excel(name = "有效时间类型 1固定时间,2领取后x天内有效")
+    /** 有效时间类型: 1,固定时间;2,领取后x天内有效 */
+    @Excel(name = "有效时间类型: 1,固定时间;2,领取后x天内有效")
     private String effectiveTimeType;
 
     /** 固定时间-有效开始时间 */
@@ -75,184 +84,373 @@ public class CouponInfo extends BaseEntity
     @Excel(name = "优惠劵领取数量")
     private Integer couponReceiveNum;
 
+    /**优惠劵累计领用数量*/
+    private Integer couponCumulativeNum;
+    /**优惠劵累计使用数量*/
+    private Integer couponUseNum;
+
     /** 发放平台,1.微信 2支付宝 */
     @Excel(name = "发放平台,1.微信 2支付宝")
     private String openPlatform;
 
-    /** 发放状态 */
-    @Excel(name = "发放状态")
+    /** 优惠内容*/
+    private String couponDetails;
+
+    /** 发放状态:0,未发放;1,已发放; */
+    @Excel(name = "发放状态:0,未发放;1,已发放;")
     private String grantStatus;
 
-    /** 有效状态,1未生效 */
-    @Excel(name = "有效状态,1未生效")
+    /** 有效状态:0,未生效; 1,生效;2,失效; */
+    @Excel(name = "有效状态:0,未生效; 1,生效;2,失效;")
     private String status;
 
-    public void setId(Integer id) 
+    /** 是否删除优惠劵 1是 0 否 */
+    private String delFlag;
+    /** 优惠劵 站点id **/
+    private String verification;
+    /**优惠卷站点id*/
+    private List<Integer> verificationList;
+    private List<String> oilNameList;
+    /**是否开启电子卡*/
+    private String isCardFlag;
+    /**是否开启等级*/
+    private String isGradeFlag;
+    /**是否开启营销*/
+    private String isMarketFlag;
+    private String editFlag;
+    private String appointedDays;
+    private String cycleDays;
+    private String availableControl;
+
+    private List<String> appointedDaysList;
+    private List<String> cycleDaysList;
+
+    public List<String> getAppointedDaysList() {
+        return appointedDaysList;
+    }
+
+    public void setAppointedDaysList(List<String> appointedDaysList) {
+        this.appointedDaysList = appointedDaysList;
+    }
+
+    public List<String> getCycleDaysList() {
+        return cycleDaysList;
+    }
+
+    public void setCycleDaysList(List<String> cycleDaysList) {
+        this.cycleDaysList = cycleDaysList;
+    }
+
+    public String getAppointedDays() {
+        return appointedDays;
+    }
+
+    public void setAppointedDays(String appointedDays) {
+        this.appointedDays = appointedDays;
+    }
+
+    public String getCycleDays() {
+        return cycleDays;
+    }
+
+    public void setCycleDays(String cycleDays) {
+        this.cycleDays = cycleDays;
+    }
+
+    public String getAvailableControl() {
+        return availableControl;
+    }
+
+    public void setAvailableControl(String availableControl) {
+        this.availableControl = availableControl;
+    }
+
+    public String getEditFlag() {
+        return editFlag;
+    }
+
+    public void setEditFlag(String editFlag) {
+        this.editFlag = editFlag;
+    }
+
+    /**
+     * 时间数组
+     */
+    private List<String> effectiveTime;
+
+    public String getIsCardFlag() {
+        return isCardFlag;
+    }
+
+    public void setIsCardFlag(String isCardFlag) {
+        this.isCardFlag = isCardFlag;
+    }
+
+    public String getIsGradeFlag() {
+        return isGradeFlag;
+    }
+
+    public void setIsGradeFlag(String isGradeFlag) {
+        this.isGradeFlag = isGradeFlag;
+    }
+
+    public String getIsMarketFlag() {
+        return isMarketFlag;
+    }
+
+    public void setIsMarketFlag(String isMarketFlag) {
+        this.isMarketFlag = isMarketFlag;
+    }
+
+    public List<String> getEffectiveTime() {
+        return effectiveTime;
+    }
+
+    public void setEffectiveTime(List<String> effectiveTime) {
+        this.effectiveTime = effectiveTime;
+    }
+
+    public List<String> getOilNameList() {
+        return oilNameList;
+    }
+
+    public void setOilNameList(List<String> oilNameList) {
+        this.oilNameList = oilNameList;
+    }
+
+    public Integer getCouponCumulativeNum() {
+        return couponCumulativeNum;
+    }
+
+    public void setCouponCumulativeNum(Integer couponCumulativeNum) {
+        this.couponCumulativeNum = couponCumulativeNum;
+    }
+
+    public Integer getCouponUseNum() {
+        return couponUseNum;
+    }
+
+    public void setCouponUseNum(Integer couponUseNum) {
+        this.couponUseNum = couponUseNum;
+    }
+
+    public List<Integer> getVerificationList() {
+        return verificationList;
+    }
+
+    public void setVerificationList(List<Integer> verificationList) {
+        this.verificationList = verificationList;
+    }
+
+    public String getVerification() {
+        return verification;
+    }
+
+    public void setVerification(String verification) {
+        this.verification = verification;
+    }
+
+    public void setId(Integer id)
     {
         this.id = id;
     }
 
-    public Integer getId() 
+    public Integer getId()
     {
         return id;
     }
-    public void setCouponId(String couponId) 
-    {
-        this.couponId = couponId;
+
+    public Integer getCouponNum() {
+        return couponNum;
     }
 
-    public String getCouponId() 
-    {
-        return couponId;
+    public void setCouponNum(Integer couponNum) {
+        this.couponNum = couponNum;
+    }
+
+    public Integer getCouponHoldNum() {
+        return couponHoldNum;
+    }
+
+    public void setCouponHoldNum(Integer couponHoldNum) {
+        this.couponHoldNum = couponHoldNum;
     }
-    public void setCouponName(String couponName) 
+
+    public String getCouponDetails() {
+        return couponDetails;
+    }
+
+    public void setCouponDetails(String couponDetails) {
+        this.couponDetails = couponDetails;
+    }
+
+    public Long getStationId() {
+        return stationId;
+    }
+
+    public void setStationId(Long stationId) {
+        this.stationId = stationId;
+    }
+
+    public void setCouponName(String couponName)
     {
         this.couponName = couponName;
     }
 
-    public String getCouponName() 
+    public String getCouponName()
     {
         return couponName;
     }
-    public void setCouponType(String couponType) 
+    public void setCouponType(String couponType)
     {
         this.couponType = couponType;
     }
 
-    public String getCouponType() 
+    public String getCouponType()
     {
         return couponType;
     }
-    public void setUseDiscountType(String useDiscountType) 
+    public void setCouponThresholdAmt(Long couponThresholdAmt)
+    {
+        this.couponThresholdAmt = couponThresholdAmt;
+    }
+
+    public Long getCouponThresholdAmt()
+    {
+        return couponThresholdAmt;
+    }
+    public void setUseDiscountType(String useDiscountType)
     {
         this.useDiscountType = useDiscountType;
     }
 
-    public String getUseDiscountType() 
+    public String getUseDiscountType()
     {
         return useDiscountType;
     }
-    public void setOilName(String oilName) 
+    public void setOilName(String oilName)
     {
         this.oilName = oilName;
     }
 
-    public String getOilName() 
+    public String getOilName()
     {
         return oilName;
     }
-    public void setOilType(String oilType) 
+    public void setOilType(String oilType)
     {
         this.oilType = oilType;
     }
 
-    public String getOilType() 
+    public String getOilType()
     {
         return oilType;
     }
-    public void setCouponAmt(BigDecimal couponAmt) 
+    public void setCouponAmt(BigDecimal couponAmt)
     {
         this.couponAmt = couponAmt;
     }
 
-    public BigDecimal getCouponAmt() 
+    public BigDecimal getCouponAmt()
     {
         return couponAmt;
     }
-    public void setCouponNum(Long couponNum) 
-    {
-        this.couponNum = couponNum;
-    }
 
-    public Long getCouponNum() 
-    {
-        return couponNum;
-    }
-    public void setEffectiveTimeType(String effectiveTimeType) 
+    public void setEffectiveTimeType(String effectiveTimeType)
     {
         this.effectiveTimeType = effectiveTimeType;
     }
 
-    public String getEffectiveTimeType() 
+    public String getEffectiveTimeType()
     {
         return effectiveTimeType;
     }
-    public void setEffectiveTimeStart(Date effectiveTimeStart) 
+    public void setEffectiveTimeStart(Date effectiveTimeStart)
     {
         this.effectiveTimeStart = effectiveTimeStart;
     }
 
-    public Date getEffectiveTimeStart() 
+    public Date getEffectiveTimeStart()
     {
         return effectiveTimeStart;
     }
-    public void setEffectiveTimeEnd(Date effectiveTimeEnd) 
+    public void setEffectiveTimeEnd(Date effectiveTimeEnd)
     {
         this.effectiveTimeEnd = effectiveTimeEnd;
     }
 
-    public Date getEffectiveTimeEnd() 
+    public Date getEffectiveTimeEnd()
     {
         return effectiveTimeEnd;
     }
-    public void setEffectiveDayNum(Integer effectiveDayNum) 
+    public void setEffectiveDayNum(Integer effectiveDayNum)
     {
         this.effectiveDayNum = effectiveDayNum;
     }
 
-    public Integer getEffectiveDayNum() 
+    public Integer getEffectiveDayNum()
     {
         return effectiveDayNum;
     }
-    public void setCouponReceiveNum(Integer couponReceiveNum) 
+    public void setCouponReceiveNum(Integer couponReceiveNum)
     {
         this.couponReceiveNum = couponReceiveNum;
     }
 
-    public Integer getCouponReceiveNum() 
+    public Integer getCouponReceiveNum()
     {
         return couponReceiveNum;
     }
-    public void setOpenPlatform(String openPlatform) 
+    public void setOpenPlatform(String openPlatform)
     {
         this.openPlatform = openPlatform;
     }
 
-    public String getOpenPlatform() 
+    public String getOpenPlatform()
     {
         return openPlatform;
     }
-    public void setGrantStatus(String grantStatus) 
+    public void setGrantStatus(String grantStatus)
     {
         this.grantStatus = grantStatus;
     }
 
-    public String getGrantStatus() 
+    public String getGrantStatus()
     {
         return grantStatus;
     }
-    public void setStatus(String status) 
+    public void setStatus(String status)
     {
         this.status = status;
     }
 
-    public String getStatus() 
+    public String getStatus()
     {
         return status;
     }
+    public void setDelFlag(String delFlag)
+    {
+        this.delFlag = delFlag;
+    }
+
+    public String getDelFlag()
+    {
+        return delFlag;
+    }
 
     @Override
     public String toString() {
         return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
             .append("id", getId())
-            .append("couponId", getCouponId())
+            .append("stationId", getStationId())
             .append("couponName", getCouponName())
             .append("couponType", getCouponType())
+            .append("couponThresholdAmt", getCouponThresholdAmt())
             .append("useDiscountType", getUseDiscountType())
             .append("oilName", getOilName())
             .append("oilType", getOilType())
-            .append("couponAmt", getCouponAmt())
-            .append("couponNum", getCouponNum())
+            .append("couponAmt",getCouponAmt())
+            .append("couponNum",getCouponNum())
             .append("effectiveTimeType", getEffectiveTimeType())
             .append("effectiveTimeStart", getEffectiveTimeStart())
             .append("effectiveTimeEnd", getEffectiveTimeEnd())
@@ -265,6 +463,8 @@ public class CouponInfo extends BaseEntity
             .append("createTime", getCreateTime())
             .append("updateBy", getUpdateBy())
             .append("updateTime", getUpdateTime())
+            .append("delFlag", getDelFlag())
+            .append("verification", getVerification())
             .toString();
     }
 }

+ 133 - 0
yijia-coupon/src/main/java/com/yijia/coupon/domain/CouponIssue.java

@@ -0,0 +1,133 @@
+package com.yijia.coupon.domain;
+
+import java.math.BigDecimal;
+import java.util.List;
+
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+import com.yijia.common.annotation.Excel;
+import com.yijia.common.core.domain.BaseEntity;
+
+/**
+ * 优惠劵发放方式对象 coupon_issue
+ *
+ * @author yijia
+ * @date 2021-08-13
+ */
+public class CouponIssue extends BaseEntity
+{
+    private static final long serialVersionUID = 1L;
+
+    /** 发放表主键id */
+    private Long id;
+
+    /** 发放类型 (1主动发放,2消费发放,3扫码发放,4展示发放) */
+    @Excel(name = "发放类型 ", readConverterExp = "1=主动发放,2消费发放,3扫码发放,4展示发放")
+    private String issueType;
+
+    /** 主动发放时,优惠券发放门槛 */
+    @Excel(name = "被动发放时,优惠券发放门槛")
+    private BigDecimal discountThresholdAmt;
+
+    /** 状态,1启用,2停用 */
+    @Excel(name = "状态,1启用,2停用")
+    private String status;
+
+    /** 站点id */
+    @Excel(name = "站点id")
+    private Long stationId;
+
+    /** 展示位置id(1支付成功之后的展示位,2待定,3待定) */
+    @Excel(name = "展示位置id(1支付成功之后的展示位,2待定,3待定)")
+    private String showId;
+
+    private List<String> showIdList;
+
+    private List<CouponIssueRelation> couponIssueRelationList;
+
+    public List<CouponIssueRelation> getCouponIssueRelationList() {
+        return couponIssueRelationList;
+    }
+
+    public void setCouponIssueRelationList(List<CouponIssueRelation> couponIssueRelationList) {
+        this.couponIssueRelationList = couponIssueRelationList;
+    }
+
+    public List<String> getShowIdList() {
+        return showIdList;
+    }
+
+    public void setShowIdList(List<String> showIdList) {
+        this.showIdList = showIdList;
+    }
+
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+
+    public void setIssueType(String issueType)
+    {
+        this.issueType = issueType;
+    }
+
+    public String getIssueType()
+    {
+        return issueType;
+    }
+    public void setDiscountThresholdAmt(BigDecimal discountThresholdAmt)
+    {
+        this.discountThresholdAmt = discountThresholdAmt;
+    }
+
+    public BigDecimal getDiscountThresholdAmt()
+    {
+        return discountThresholdAmt;
+    }
+    public void setStatus(String status)
+    {
+        this.status = status;
+    }
+
+    public String getStatus()
+    {
+        return status;
+    }
+
+    public Long getStationId() {
+        return stationId;
+    }
+
+    public void setStationId(Long stationId) {
+        this.stationId = stationId;
+    }
+
+    public void setShowId(String showId)
+    {
+        this.showId = showId;
+    }
+
+    public String getShowId()
+    {
+        return showId;
+    }
+
+    @Override
+    public String toString() {
+        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
+            .append("id", getId())
+            .append("issueType", getIssueType())
+            .append("discountThresholdAmt", getDiscountThresholdAmt())
+            .append("status", getStatus())
+            .append("stationId", getStationId())
+            .append("createBy", getCreateBy())
+            .append("createTime", getCreateTime())
+            .append("updateBy", getUpdateBy())
+            .append("updateTime", getUpdateTime())
+            .append("showId", getShowId())
+            .toString();
+    }
+}

+ 69 - 0
yijia-coupon/src/main/java/com/yijia/coupon/domain/CouponIssueRelation.java

@@ -0,0 +1,69 @@
+package com.yijia.coupon.domain;
+
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+import com.yijia.common.annotation.Excel;
+import com.yijia.common.core.domain.BaseEntity;
+
+/**
+ * 发放方式,优惠劵信息对象 coupon_issue_relation
+ *
+ * @author yijia
+ * @date 2021-08-13
+ */
+public class CouponIssueRelation extends BaseEntity
+{
+    private static final long serialVersionUID = 1L;
+
+    /** $column.columnComment */
+    private Long id;
+
+    /** 优惠劵发放方式主键id */
+    @Excel(name = "优惠劵发放方式主键id")
+    private Long issueId;
+
+    /** 优惠劵表主键id */
+    @Excel(name = "优惠劵表主键id")
+    private Long couponId;
+
+    public void setId(Long id)
+    {
+        this.id = id;
+    }
+
+    public Long getId()
+    {
+        return id;
+    }
+    public void setIssueId(Long issueId)
+    {
+        this.issueId = issueId;
+    }
+
+    public Long getIssueId()
+    {
+        return issueId;
+    }
+    public void setCouponId(Long couponId)
+    {
+        this.couponId = couponId;
+    }
+
+    public Long getCouponId()
+    {
+        return couponId;
+    }
+
+    @Override
+    public String toString() {
+        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
+            .append("id", getId())
+            .append("issueId", getIssueId())
+            .append("couponId", getCouponId())
+            .append("createBy", getCreateBy())
+            .append("createTime", getCreateTime())
+            .append("updateBy", getUpdateBy())
+            .append("updateTime", getUpdateTime())
+            .toString();
+    }
+}

+ 1 - 1
yijia-coupon/src/main/java/com/yijia/coupon/mapper/CouponInfoMapper.java

@@ -7,7 +7,7 @@ import com.yijia.coupon.domain.CouponInfo;
  * 优惠劵Mapper接口
  * 
  * @author yijia
- * @date 2021-04-27
+ * @date 2021-08-09
  */
 public interface CouponInfoMapper 
 {

+ 61 - 0
yijia-coupon/src/main/java/com/yijia/coupon/mapper/CouponIssueMapper.java

@@ -0,0 +1,61 @@
+package com.yijia.coupon.mapper;
+
+import java.util.List;
+import com.yijia.coupon.domain.CouponIssue;
+
+/**
+ * 优惠劵发放方式Mapper接口
+ * 
+ * @author yijia
+ * @date 2021-08-13
+ */
+public interface CouponIssueMapper 
+{
+    /**
+     * 查询优惠劵发放方式
+     * 
+     * @param id 优惠劵发放方式ID
+     * @return 优惠劵发放方式
+     */
+    public CouponIssue selectCouponIssueById(Integer id);
+
+    /**
+     * 查询优惠劵发放方式列表
+     * 
+     * @param couponIssue 优惠劵发放方式
+     * @return 优惠劵发放方式集合
+     */
+    public List<CouponIssue> selectCouponIssueList(CouponIssue couponIssue);
+
+    /**
+     * 新增优惠劵发放方式
+     * 
+     * @param couponIssue 优惠劵发放方式
+     * @return 结果
+     */
+    public int insertCouponIssue(CouponIssue couponIssue);
+
+    /**
+     * 修改优惠劵发放方式
+     * 
+     * @param couponIssue 优惠劵发放方式
+     * @return 结果
+     */
+    public int updateCouponIssue(CouponIssue couponIssue);
+
+    /**
+     * 删除优惠劵发放方式
+     * 
+     * @param id 优惠劵发放方式ID
+     * @return 结果
+     */
+    public int deleteCouponIssueById(Integer id);
+
+    /**
+     * 批量删除优惠劵发放方式
+     * 
+     * @param ids 需要删除的数据ID
+     * @return 结果
+     */
+    public int deleteCouponIssueByIds(Integer[] ids);
+}

+ 68 - 0
yijia-coupon/src/main/java/com/yijia/coupon/mapper/CouponIssueRelationMapper.java

@@ -0,0 +1,68 @@
+package com.yijia.coupon.mapper;
+
+import java.util.List;
+import com.yijia.coupon.domain.CouponIssueRelation;
+
+/**
+ * 发放方式,优惠劵信息Mapper接口
+ *
+ * @author yijia
+ * @date 2021-08-13
+ */
+public interface CouponIssueRelationMapper
+{
+    /**
+     * 查询发放方式,优惠劵信息
+     *
+     * @param id 发放方式,优惠劵信息ID
+     * @return 发放方式,优惠劵信息
+     */
+    public CouponIssueRelation selectCouponIssueRelationById(Long id);
+
+    /**
+     * 查询发放方式,优惠劵信息列表
+     *
+     * @param couponIssueRelation 发放方式,优惠劵信息
+     * @return 发放方式,优惠劵信息集合
+     */
+    public List<CouponIssueRelation> selectCouponIssueRelationList(CouponIssueRelation couponIssueRelation);
+
+    /**
+     * 新增发放方式,优惠劵信息
+     *
+     * @param couponIssueRelation 发放方式,优惠劵信息
+     * @return 结果
+     */
+    public int insertCouponIssueRelation(CouponIssueRelation couponIssueRelation);
+
+    /**
+     * 修改发放方式,优惠劵信息
+     *
+     * @param couponIssueRelation 发放方式,优惠劵信息
+     * @return 结果
+     */
+    public int updateCouponIssueRelation(CouponIssueRelation couponIssueRelation);
+
+    /**
+     * 删除发放方式,优惠劵信息
+     *
+     * @param id 发放方式,优惠劵信息ID
+     * @return 结果
+     */
+    public int deleteCouponIssueRelationById(Long id);
+
+    /**
+     * 批量删除发放方式,优惠劵信息
+     *
+     * @param ids 需要删除的数据ID
+     * @return 结果
+     */
+    public int deleteCouponIssueRelationByIds(Long[] ids);
+
+    /**
+     * 删除发放方式对应的所有优惠劵
+     * @param detail
+     * @return
+     */
+    public int deleteCouponIssueRelation(CouponIssueRelation detail);
+}

+ 1 - 1
yijia-coupon/src/main/java/com/yijia/coupon/service/ICouponInfoService.java

@@ -7,7 +7,7 @@ import com.yijia.coupon.domain.CouponInfo;
  * 优惠劵Service接口
  * 
  * @author yijia
- * @date 2021-04-27
+ * @date 2021-08-09
  */
 public interface ICouponInfoService 
 {

+ 68 - 0
yijia-coupon/src/main/java/com/yijia/coupon/service/ICouponIssueRelationService.java

@@ -0,0 +1,68 @@
+package com.yijia.coupon.service;
+
+import java.util.List;
+import com.yijia.coupon.domain.CouponIssueRelation;
+
+/**
+ * 发放方式,优惠劵信息Service接口
+ *
+ * @author yijia
+ * @date 2021-08-13
+ */
+public interface ICouponIssueRelationService
+{
+    /**
+     * 查询发放方式,优惠劵信息
+     *
+     * @param id 发放方式,优惠劵信息ID
+     * @return 发放方式,优惠劵信息
+     */
+    public CouponIssueRelation selectCouponIssueRelationById(Long id);
+
+    /**
+     * 查询发放方式,优惠劵信息列表
+     *
+     * @param couponIssueRelation 发放方式,优惠劵信息
+     * @return 发放方式,优惠劵信息集合
+     */
+    public List<CouponIssueRelation> selectCouponIssueRelationList(CouponIssueRelation couponIssueRelation);
+
+    /**
+     * 新增发放方式,优惠劵信息
+     *
+     * @param couponIssueRelation 发放方式,优惠劵信息
+     * @return 结果
+     */
+    public int insertCouponIssueRelation(CouponIssueRelation couponIssueRelation);
+
+    /**
+     * 修改发放方式,优惠劵信息
+     *
+     * @param couponIssueRelation 发放方式,优惠劵信息
+     * @return 结果
+     */
+    public int updateCouponIssueRelation(CouponIssueRelation couponIssueRelation);
+
+    /**
+     * 批量删除发放方式,优惠劵信息
+     *
+     * @param ids 需要删除的发放方式,优惠劵信息ID
+     * @return 结果
+     */
+    public int deleteCouponIssueRelationByIds(Long[] ids);
+
+    /**
+     * 删除发放方式,优惠劵信息信息
+     *
+     * @param id 发放方式,优惠劵信息ID
+     * @return 结果
+     */
+    public int deleteCouponIssueRelationById(Long id);
+
+    /**
+     * 删除发放方式对应的所有优惠劵
+     * @param detail
+     * @return
+     */
+    public int deleteCouponIssueRelation(CouponIssueRelation detail);
+}

+ 61 - 0
yijia-coupon/src/main/java/com/yijia/coupon/service/ICouponIssueService.java

@@ -0,0 +1,61 @@
+package com.yijia.coupon.service;
+
+import java.util.List;
+import com.yijia.coupon.domain.CouponIssue;
+
+/**
+ * 优惠劵发放方式Service接口
+ * 
+ * @author yijia
+ * @date 2021-08-13
+ */
+public interface ICouponIssueService 
+{
+    /**
+     * 查询优惠劵发放方式
+     * 
+     * @param id 优惠劵发放方式ID
+     * @return 优惠劵发放方式
+     */
+    public CouponIssue selectCouponIssueById(Integer id);
+
+    /**
+     * 查询优惠劵发放方式列表
+     * 
+     * @param couponIssue 优惠劵发放方式
+     * @return 优惠劵发放方式集合
+     */
+    public List<CouponIssue> selectCouponIssueList(CouponIssue couponIssue);
+
+    /**
+     * 新增优惠劵发放方式
+     * 
+     * @param couponIssue 优惠劵发放方式
+     * @return 结果
+     */
+    public int insertCouponIssue(CouponIssue couponIssue);
+
+    /**
+     * 修改优惠劵发放方式
+     * 
+     * @param couponIssue 优惠劵发放方式
+     * @return 结果
+     */
+    public int updateCouponIssue(CouponIssue couponIssue);
+
+    /**
+     * 批量删除优惠劵发放方式
+     * 
+     * @param ids 需要删除的优惠劵发放方式ID
+     * @return 结果
+     */
+    public int deleteCouponIssueByIds(Integer[] ids);
+
+    /**
+     * 删除优惠劵发放方式信息
+     * 
+     * @param id 优惠劵发放方式ID
+     * @return 结果
+     */
+    public int deleteCouponIssueById(Integer id);
+}

+ 1 - 1
yijia-coupon/src/main/java/com/yijia/coupon/service/impl/CouponInfoServiceImpl.java

@@ -12,7 +12,7 @@ import com.yijia.coupon.service.ICouponInfoService;
  * 优惠劵Service业务层处理
  * 
  * @author yijia
- * @date 2021-04-27
+ * @date 2021-08-09
  */
 @Service
 public class CouponInfoServiceImpl implements ICouponInfoService 

+ 101 - 0
yijia-coupon/src/main/java/com/yijia/coupon/service/impl/CouponIssueRelationServiceImpl.java

@@ -0,0 +1,101 @@
+package com.yijia.coupon.service.impl;
+
+import java.util.List;
+import com.yijia.common.utils.DateUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import com.yijia.coupon.mapper.CouponIssueRelationMapper;
+import com.yijia.coupon.domain.CouponIssueRelation;
+import com.yijia.coupon.service.ICouponIssueRelationService;
+
+/**
+ * 发放方式,优惠劵信息Service业务层处理
+ *
+ * @author yijia
+ * @date 2021-08-13
+ */
+@Service
+public class CouponIssueRelationServiceImpl implements ICouponIssueRelationService
+{
+    @Autowired
+    private CouponIssueRelationMapper couponIssueRelationMapper;
+
+    /**
+     * 查询发放方式,优惠劵信息
+     *
+     * @param id 发放方式,优惠劵信息ID
+     * @return 发放方式,优惠劵信息
+     */
+    @Override
+    public CouponIssueRelation selectCouponIssueRelationById(Long id)
+    {
+        return couponIssueRelationMapper.selectCouponIssueRelationById(id);
+    }
+
+    /**
+     * 查询发放方式,优惠劵信息列表
+     *
+     * @param couponIssueRelation 发放方式,优惠劵信息
+     * @return 发放方式,优惠劵信息
+     */
+    @Override
+    public List<CouponIssueRelation> selectCouponIssueRelationList(CouponIssueRelation couponIssueRelation)
+    {
+        return couponIssueRelationMapper.selectCouponIssueRelationList(couponIssueRelation);
+    }
+
+    /**
+     * 新增发放方式,优惠劵信息
+     *
+     * @param couponIssueRelation 发放方式,优惠劵信息
+     * @return 结果
+     */
+    @Override
+    public int insertCouponIssueRelation(CouponIssueRelation couponIssueRelation)
+    {
+        couponIssueRelation.setCreateTime(DateUtils.getNowDate());
+        return couponIssueRelationMapper.insertCouponIssueRelation(couponIssueRelation);
+    }
+
+    /**
+     * 修改发放方式,优惠劵信息
+     *
+     * @param couponIssueRelation 发放方式,优惠劵信息
+     * @return 结果
+     */
+    @Override
+    public int updateCouponIssueRelation(CouponIssueRelation couponIssueRelation)
+    {
+        couponIssueRelation.setUpdateTime(DateUtils.getNowDate());
+        return couponIssueRelationMapper.updateCouponIssueRelation(couponIssueRelation);
+    }
+
+    /**
+     * 批量删除发放方式,优惠劵信息
+     *
+     * @param ids 需要删除的发放方式,优惠劵信息ID
+     * @return 结果
+     */
+    @Override
+    public int deleteCouponIssueRelationByIds(Long[] ids)
+    {
+        return couponIssueRelationMapper.deleteCouponIssueRelationByIds(ids);
+    }
+
+    /**
+     * 删除发放方式,优惠劵信息信息
+     *
+     * @param id 发放方式,优惠劵信息ID
+     * @return 结果
+     */
+    @Override
+    public int deleteCouponIssueRelationById(Long id)
+    {
+        return couponIssueRelationMapper.deleteCouponIssueRelationById(id);
+    }
+
+    @Override
+    public int deleteCouponIssueRelation(CouponIssueRelation detail) {
+        return couponIssueRelationMapper.deleteCouponIssueRelation(detail);
+    }
+}

+ 96 - 0
yijia-coupon/src/main/java/com/yijia/coupon/service/impl/CouponIssueServiceImpl.java

@@ -0,0 +1,96 @@
+package com.yijia.coupon.service.impl;
+
+import java.util.List;
+import com.yijia.common.utils.DateUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import com.yijia.coupon.mapper.CouponIssueMapper;
+import com.yijia.coupon.domain.CouponIssue;
+import com.yijia.coupon.service.ICouponIssueService;
+
+/**
+ * 优惠劵发放方式Service业务层处理
+ * 
+ * @author yijia
+ * @date 2021-08-13
+ */
+@Service
+public class CouponIssueServiceImpl implements ICouponIssueService 
+{
+    @Autowired
+    private CouponIssueMapper couponIssueMapper;
+
+    /**
+     * 查询优惠劵发放方式
+     * 
+     * @param id 优惠劵发放方式ID
+     * @return 优惠劵发放方式
+     */
+    @Override
+    public CouponIssue selectCouponIssueById(Integer id)
+    {
+        return couponIssueMapper.selectCouponIssueById(id);
+    }
+
+    /**
+     * 查询优惠劵发放方式列表
+     * 
+     * @param couponIssue 优惠劵发放方式
+     * @return 优惠劵发放方式
+     */
+    @Override
+    public List<CouponIssue> selectCouponIssueList(CouponIssue couponIssue)
+    {
+        return couponIssueMapper.selectCouponIssueList(couponIssue);
+    }
+
+    /**
+     * 新增优惠劵发放方式
+     * 
+     * @param couponIssue 优惠劵发放方式
+     * @return 结果
+     */
+    @Override
+    public int insertCouponIssue(CouponIssue couponIssue)
+    {
+        couponIssue.setCreateTime(DateUtils.getNowDate());
+        return couponIssueMapper.insertCouponIssue(couponIssue);
+    }
+
+    /**
+     * 修改优惠劵发放方式
+     * 
+     * @param couponIssue 优惠劵发放方式
+     * @return 结果
+     */
+    @Override
+    public int updateCouponIssue(CouponIssue couponIssue)
+    {
+        couponIssue.setUpdateTime(DateUtils.getNowDate());
+        return couponIssueMapper.updateCouponIssue(couponIssue);
+    }
+
+    /**
+     * 批量删除优惠劵发放方式
+     * 
+     * @param ids 需要删除的优惠劵发放方式ID
+     * @return 结果
+     */
+    @Override
+    public int deleteCouponIssueByIds(Integer[] ids)
+    {
+        return couponIssueMapper.deleteCouponIssueByIds(ids);
+    }
+
+    /**
+     * 删除优惠劵发放方式信息
+     * 
+     * @param id 优惠劵发放方式ID
+     * @return 结果
+     */
+    @Override
+    public int deleteCouponIssueById(Integer id)
+    {
+        return couponIssueMapper.deleteCouponIssueById(id);
+    }
+}

+ 85 - 13
yijia-coupon/src/main/resources/mapper/coupon/CouponInfoMapper.xml

@@ -3,17 +3,20 @@
 PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="com.yijia.coupon.mapper.CouponInfoMapper">
-    
+
     <resultMap type="CouponInfo" id="CouponInfoResult">
         <result property="id"    column="id"    />
-        <result property="couponId"    column="coupon_id"    />
+        <result property="stationId"    column="station_id"    />
         <result property="couponName"    column="coupon_name"    />
         <result property="couponType"    column="coupon_type"    />
+        <result property="couponThresholdAmt"    column="coupon_threshold_amt"    />
         <result property="useDiscountType"    column="use_discount_type"    />
         <result property="oilName"    column="oil_name"    />
         <result property="oilType"    column="oil_type"    />
         <result property="couponAmt"    column="coupon_amt"    />
         <result property="couponNum"    column="coupon_num"    />
+        <result property="couponHoldNum"    column="coupon_hold_num"    />
+        <result property="couponDetails"    column="coupon_details"    />
         <result property="effectiveTimeType"    column="effective_time_type"    />
         <result property="effectiveTimeStart"    column="effective_time_start"    />
         <result property="effectiveTimeEnd"    column="effective_time_end"    />
@@ -26,23 +29,41 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <result property="createTime"    column="create_time"    />
         <result property="updateBy"    column="update_by"    />
         <result property="updateTime"    column="update_time"    />
+        <result property="delFlag"    column="del_flag"    />
+        <result property="verification"    column="verification" />
+        <result property="couponCumulativeNum"    column="coupon_cumulative_num" />
+        <result property="couponUseNum"    column="coupon_use_num" />
+        <result property="isCardFlag"    column="is_card_flag" />
+        <result property="isGradeFlag"    column="is_grade_flag" />
+        <result property="isMarketFlag"    column="is_market_flag" />
+        <result property="editFlag"    column="edit_flag" />
+        <result property="appointedDays"    column="appointed_days" />
+        <result property="cycleDays"    column="cycle_days" />
+        <result property="availableControl"    column="available_control" />
     </resultMap>
 
     <sql id="selectCouponInfoVo">
-        select id, coupon_id, coupon_name, coupon_type, use_discount_type, oil_name, oil_type, coupon_amt, coupon_num, effective_time_type, effective_time_start, effective_time_end, effective_day_num, coupon_receive_num, open_platform, grant_status, status, create_by, create_time, update_by, update_time from coupon_info
+        select id, station_id, coupon_name, coupon_type, coupon_threshold_amt, use_discount_type, oil_name, oil_type, coupon_amt, coupon_num,
+        coupon_details,coupon_hold_num,effective_time_type, effective_time_start, effective_time_end, effective_day_num, coupon_receive_num,
+         open_platform, grant_status, status, create_by, create_time, update_by, update_time, del_flag,verification,coupon_cumulative_num,
+         coupon_use_num,is_market_flag,is_grade_flag,is_card_flag,edit_flag,appointed_days,cycle_days,available_control
+         from coupon_info
     </sql>
 
     <select id="selectCouponInfoList" parameterType="CouponInfo" resultMap="CouponInfoResult">
         <include refid="selectCouponInfoVo"/>
-        <where>  
-            <if test="couponId != null  and couponId != ''"> and coupon_id = #{couponId}</if>
+        <where>
+            <if test="stationId != null "> and station_id = #{stationId}</if>
             <if test="couponName != null  and couponName != ''"> and coupon_name like concat('%', #{couponName}, '%')</if>
             <if test="couponType != null  and couponType != ''"> and coupon_type = #{couponType}</if>
+            <if test="couponThresholdAmt != null "> and coupon_threshold_amt = #{couponThresholdAmt}</if>
             <if test="useDiscountType != null  and useDiscountType != ''"> and use_discount_type = #{useDiscountType}</if>
             <if test="oilName != null  and oilName != ''"> and oil_name like concat('%', #{oilName}, '%')</if>
             <if test="oilType != null  and oilType != ''"> and oil_type = #{oilType}</if>
             <if test="couponAmt != null "> and coupon_amt = #{couponAmt}</if>
             <if test="couponNum != null "> and coupon_num = #{couponNum}</if>
+            <if test="couponHoldNum != null "> and coupon_hold_num = #{couponHoldNum}</if>
+            <if test="couponDetails != null "> and coupon_details = #{couponDetails}</if>
             <if test="effectiveTimeType != null  and effectiveTimeType != ''"> and effective_time_type = #{effectiveTimeType}</if>
             <if test="effectiveTimeStart != null "> and effective_time_start = #{effectiveTimeStart}</if>
             <if test="effectiveTimeEnd != null "> and effective_time_end = #{effectiveTimeEnd}</if>
@@ -51,25 +72,39 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="openPlatform != null  and openPlatform != ''"> and open_platform = #{openPlatform}</if>
             <if test="grantStatus != null  and grantStatus != ''"> and grant_status = #{grantStatus}</if>
             <if test="status != null  and status != ''"> and status = #{status}</if>
+            <if test="verification != null  and verification != ''"> and verification = #{verification}</if>
+            <if test="appointedDays != null  and appointedDays != ''"> and appointed_days = #{appointedDays}</if>
+            <if test="cycleDays != null  and cycleDays != ''"> and cycle_days = #{cycleDays}</if>
+            <if test="availableControl != null  and availableControl != ''"> and available_control = #{availableControl}</if>
+            <if test="stationIdList != null ">
+                and station_id in
+                <foreach item="item" index="index" collection="stationIdList"
+                         open="(" separator="," close=")">
+                    #{item}
+                </foreach>
+            </if>
         </where>
     </select>
-    
+
     <select id="selectCouponInfoById" parameterType="Integer" resultMap="CouponInfoResult">
         <include refid="selectCouponInfoVo"/>
         where id = #{id}
     </select>
-        
+
     <insert id="insertCouponInfo" parameterType="CouponInfo" useGeneratedKeys="true" keyProperty="id">
         insert into coupon_info
         <trim prefix="(" suffix=")" suffixOverrides=",">
-            <if test="couponId != null">coupon_id,</if>
+            <if test="stationId != null">station_id,</if>
             <if test="couponName != null">coupon_name,</if>
             <if test="couponType != null">coupon_type,</if>
+            <if test="couponThresholdAmt != null">coupon_threshold_amt,</if>
             <if test="useDiscountType != null">use_discount_type,</if>
             <if test="oilName != null">oil_name,</if>
             <if test="oilType != null">oil_type,</if>
             <if test="couponAmt != null">coupon_amt,</if>
             <if test="couponNum != null">coupon_num,</if>
+            <if test="couponHoldNum != null">coupon_hold_num,</if>
+            <if test="couponDetails != null">coupon_details,</if>
             <if test="effectiveTimeType != null">effective_time_type,</if>
             <if test="effectiveTimeStart != null">effective_time_start,</if>
             <if test="effectiveTimeEnd != null">effective_time_end,</if>
@@ -82,16 +117,30 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="createTime != null">create_time,</if>
             <if test="updateBy != null">update_by,</if>
             <if test="updateTime != null">update_time,</if>
+            <if test="delFlag != null">del_flag,</if>
+            <if test="verification != null">verification,</if>
+            <if test="couponCumulativeNum != null">coupon_cumulative_num,</if>
+            <if test="couponUseNum != null">coupon_use_num,</if>
+            <if test="isCardFlag != null">is_card_flag,</if>
+            <if test="isGradeFlag != null">is_grade_flag,</if>
+            <if test="isMarketFlag != null">is_market_flag,</if>
+            <if test="editFlag != null">edit_flag,</if>
+            <if test="appointedDays != null">appointed_days,</if>
+            <if test="cycleDays != null">cycle_days,</if>
+            <if test="availableControl != null">available_control,</if>
          </trim>
         <trim prefix="values (" suffix=")" suffixOverrides=",">
-            <if test="couponId != null">#{couponId},</if>
+            <if test="stationId != null">#{stationId},</if>
             <if test="couponName != null">#{couponName},</if>
             <if test="couponType != null">#{couponType},</if>
+            <if test="couponThresholdAmt != null">#{couponThresholdAmt},</if>
             <if test="useDiscountType != null">#{useDiscountType},</if>
             <if test="oilName != null">#{oilName},</if>
             <if test="oilType != null">#{oilType},</if>
             <if test="couponAmt != null">#{couponAmt},</if>
             <if test="couponNum != null">#{couponNum},</if>
+            <if test="couponHoldNum != null">#{couponHoldNum},</if>
+            <if test="couponDetails != null">#{couponDetails},</if>
             <if test="effectiveTimeType != null">#{effectiveTimeType},</if>
             <if test="effectiveTimeStart != null">#{effectiveTimeStart},</if>
             <if test="effectiveTimeEnd != null">#{effectiveTimeEnd},</if>
@@ -104,20 +153,34 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="createTime != null">#{createTime},</if>
             <if test="updateBy != null">#{updateBy},</if>
             <if test="updateTime != null">#{updateTime},</if>
+            <if test="delFlag != null">#{delFlag},</if>
+            <if test="verification != null">#{verification},</if>
+            <if test="couponCumulativeNum != null">#{couponCumulativeNum},</if>
+            <if test="couponUseNum != null">#{couponUseNum},</if>
+            <if test="isCardFlag != null">#{isCardFlag},</if>
+            <if test="isGradeFlag != null">#{isGradeFlag},</if>
+            <if test="isMarketFlag != null">#{isMarketFlag},</if>
+            <if test="editFlag != null">#{editFlag},</if>
+            <if test="appointedDays != null">#{appointedDays},</if>
+            <if test="cycleDays != null">#{cycleDays},</if>
+            <if test="availableControl != null">#{availableControl},</if>
          </trim>
     </insert>
 
     <update id="updateCouponInfo" parameterType="CouponInfo">
         update coupon_info
         <trim prefix="SET" suffixOverrides=",">
-            <if test="couponId != null">coupon_id = #{couponId},</if>
+            <if test="stationId != null">station_id = #{stationId},</if>
             <if test="couponName != null">coupon_name = #{couponName},</if>
             <if test="couponType != null">coupon_type = #{couponType},</if>
+            <if test="couponThresholdAmt != null">coupon_threshold_amt = #{couponThresholdAmt},</if>
             <if test="useDiscountType != null">use_discount_type = #{useDiscountType},</if>
             <if test="oilName != null">oil_name = #{oilName},</if>
             <if test="oilType != null">oil_type = #{oilType},</if>
             <if test="couponAmt != null">coupon_amt = #{couponAmt},</if>
             <if test="couponNum != null">coupon_num = #{couponNum},</if>
+            <if test="couponHoldNum != null">coupon_hold_num = #{couponHoldNum},</if>
+            <if test="couponDetails != null">coupon_details = #{couponDetails},</if>
             <if test="effectiveTimeType != null">effective_time_type = #{effectiveTimeType},</if>
             <if test="effectiveTimeStart != null">effective_time_start = #{effectiveTimeStart},</if>
             <if test="effectiveTimeEnd != null">effective_time_end = #{effectiveTimeEnd},</if>
@@ -130,6 +193,15 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="createTime != null">create_time = #{createTime},</if>
             <if test="updateBy != null">update_by = #{updateBy},</if>
             <if test="updateTime != null">update_time = #{updateTime},</if>
+            <if test="delFlag != null">del_flag = #{delFlag},</if>
+            <if test="verification != null">verification = #{verification},</if>
+            <if test="isCardFlag != null">is_card_flag = #{isCardFlag},</if>
+            <if test="isGradeFlag != null">is_grade_flag = #{isGradeFlag},</if>
+            <if test="isMarketFlag != null">is_market_flag = #{isMarketFlag},</if>
+            <if test="editFlag != null">edit_flag = #{editFlag},</if>
+            <if test="appointedDays != null">appointed_days = #{appointedDays},</if>
+            <if test="cycleDays != null">cycle_days = #{cycleDays},</if>
+            <if test="availableControl != null">available_control = #{availableControl},</if>
         </trim>
         where id = #{id}
     </update>
@@ -139,10 +211,10 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
     </delete>
 
     <delete id="deleteCouponInfoByIds" parameterType="String">
-        delete from coupon_info where id in 
+        delete from coupon_info where id in
         <foreach item="id" collection="array" open="(" separator="," close=")">
             #{id}
         </foreach>
     </delete>
-    
-</mapper>
+
+</mapper>

+ 93 - 0
yijia-coupon/src/main/resources/mapper/coupon/CouponIssueMapper.xml

@@ -0,0 +1,93 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper
+PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.yijia.coupon.mapper.CouponIssueMapper">
+    
+    <resultMap type="CouponIssue" id="CouponIssueResult">
+        <result property="id"    column="id"    />
+        <result property="issueType"    column="issue_type"    />
+        <result property="discountThresholdAmt"    column="discount_threshold_amt"    />
+        <result property="status"    column="status"    />
+        <result property="stationId"    column="station_id"    />
+        <result property="createBy"    column="create_by"    />
+        <result property="createTime"    column="create_time"    />
+        <result property="updateBy"    column="update_by"    />
+        <result property="updateTime"    column="update_time"    />
+        <result property="showId"    column="show_id"    />
+    </resultMap>
+
+    <sql id="selectCouponIssueVo">
+        select id, issue_type, discount_threshold_amt, status, station_id, create_by, create_time, update_by, update_time, show_id from coupon_issue
+    </sql>
+
+    <select id="selectCouponIssueList" parameterType="CouponIssue" resultMap="CouponIssueResult">
+        <include refid="selectCouponIssueVo"/>
+        <where>  
+            <if test="issueType != null  and issueType != ''"> and issue_type = #{issueType}</if>
+            <if test="discountThresholdAmt != null "> and discount_threshold_amt = #{discountThresholdAmt}</if>
+            <if test="status != null  and status != ''"> and status = #{status}</if>
+            <if test="stationId != null "> and station_id = #{stationId}</if>
+            <if test="showId != null  and showId != ''"> and show_id = #{showId}</if>
+        </where>
+    </select>
+    
+    <select id="selectCouponIssueById" parameterType="Integer" resultMap="CouponIssueResult">
+        <include refid="selectCouponIssueVo"/>
+        where id = #{id}
+    </select>
+        
+    <insert id="insertCouponIssue" parameterType="CouponIssue" useGeneratedKeys="true" keyProperty="id">
+        insert into coupon_issue
+        <trim prefix="(" suffix=")" suffixOverrides=",">
+            <if test="issueType != null">issue_type,</if>
+            <if test="discountThresholdAmt != null">discount_threshold_amt,</if>
+            <if test="status != null">status,</if>
+            <if test="stationId != null">station_id,</if>
+            <if test="createBy != null">create_by,</if>
+            <if test="createTime != null">create_time,</if>
+            <if test="updateBy != null">update_by,</if>
+            <if test="updateTime != null">update_time,</if>
+            <if test="showId != null">show_id,</if>
+         </trim>
+        <trim prefix="values (" suffix=")" suffixOverrides=",">
+            <if test="issueType != null">#{issueType},</if>
+            <if test="discountThresholdAmt != null">#{discountThresholdAmt},</if>
+            <if test="status != null">#{status},</if>
+            <if test="stationId != null">#{stationId},</if>
+            <if test="createBy != null">#{createBy},</if>
+            <if test="createTime != null">#{createTime},</if>
+            <if test="updateBy != null">#{updateBy},</if>
+            <if test="updateTime != null">#{updateTime},</if>
+            <if test="showId != null">#{showId},</if>
+         </trim>
+    </insert>
+
+    <update id="updateCouponIssue" parameterType="CouponIssue">
+        update coupon_issue
+        <trim prefix="SET" suffixOverrides=",">
+            <if test="issueType != null">issue_type = #{issueType},</if>
+            <if test="discountThresholdAmt != null">discount_threshold_amt = #{discountThresholdAmt},</if>
+            <if test="status != null">status = #{status},</if>
+            <if test="stationId != null">station_id = #{stationId},</if>
+            <if test="createBy != null">create_by = #{createBy},</if>
+            <if test="createTime != null">create_time = #{createTime},</if>
+            <if test="updateBy != null">update_by = #{updateBy},</if>
+            <if test="updateTime != null">update_time = #{updateTime},</if>
+            <if test="showId != null">show_id = #{showId},</if>
+        </trim>
+        where id = #{id}
+    </update>
+
+    <delete id="deleteCouponIssueById" parameterType="Integer">
+        delete from coupon_issue where id = #{id}
+    </delete>
+
+    <delete id="deleteCouponIssueByIds" parameterType="String">
+        delete from coupon_issue where id in 
+        <foreach item="id" collection="array" open="(" separator="," close=")">
+            #{id}
+        </foreach>
+    </delete>
+    
+</mapper>

+ 87 - 0
yijia-coupon/src/main/resources/mapper/coupon/CouponIssueRelationMapper.xml

@@ -0,0 +1,87 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper
+PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.yijia.coupon.mapper.CouponIssueRelationMapper">
+
+    <resultMap type="CouponIssueRelation" id="CouponIssueRelationResult">
+        <result property="id"    column="id"    />
+        <result property="issueId"    column="issue_id"    />
+        <result property="couponId"    column="coupon_id"    />
+        <result property="createBy"    column="create_by"    />
+        <result property="createTime"    column="create_time" />
+        <result property="updateBy"    column="update_by"    />
+        <result property="updateTime"    column="update_time"  />
+    </resultMap>
+
+    <sql id="selectCouponIssueRelationVo">
+        select id, issue_id, coupon_id, create_by, create_time, update_by, update_time from coupon_issue_relation
+    </sql>
+
+    <select id="selectCouponIssueRelationList" parameterType="CouponIssueRelation" resultMap="CouponIssueRelationResult">
+        <include refid="selectCouponIssueRelationVo"/>
+        <where>
+            <if test="issueId != null "> and issue_id = #{issueId}</if>
+            <if test="couponId != null "> and coupon_id = #{couponId}</if>
+        </where>
+    </select>
+
+    <select id="selectCouponIssueRelationById" parameterType="Long" resultMap="CouponIssueRelationResult">
+        <include refid="selectCouponIssueRelationVo"/>
+        where id = #{id}
+    </select>
+
+    <insert id="insertCouponIssueRelation" parameterType="CouponIssueRelation">
+        insert into coupon_issue_relation
+        <trim prefix="(" suffix=")" suffixOverrides=",">
+            <if test="id != null">id,</if>
+            <if test="issueId != null">issue_id,</if>
+            <if test="couponId != null">coupon_id,</if>
+            <if test="createBy != null">create_by,</if>
+            <if test="createTime != null">create_time,</if>
+            <if test="updateBy != null">update_by,</if>
+            <if test="updateTime != null">update_time,</if>
+         </trim>
+        <trim prefix="values (" suffix=")" suffixOverrides=",">
+            <if test="id != null">#{id},</if>
+            <if test="issueId != null">#{issueId},</if>
+            <if test="couponId != null">#{couponId},</if>
+            <if test="createBy != null">#{createBy},</if>
+            <if test="createTime != null">#{createTime},</if>
+            <if test="updateBy != null">#{updateBy},</if>
+            <if test="updateTime != null">#{updateTime},</if>
+         </trim>
+    </insert>
+
+    <update id="updateCouponIssueRelation" parameterType="CouponIssueRelation">
+        update coupon_issue_relation
+        <trim prefix="SET" suffixOverrides=",">
+            <if test="issueId != null">issue_id = #{issueId},</if>
+            <if test="couponId != null">coupon_id = #{couponId},</if>
+            <if test="createBy != null">create_by = #{createBy},</if>
+            <if test="createTime != null">create_time = #{createTime},</if>
+            <if test="updateBy != null">update_by = #{updateBy},</if>
+            <if test="updateTime != null">update_time = #{updateTime},</if>
+        </trim>
+        where id = #{id}
+    </update>
+
+    <delete id="deleteCouponIssueRelationById" parameterType="Long">
+        delete from coupon_issue_relation where id = #{id}
+    </delete>
+
+    <delete id="deleteCouponIssueRelation" parameterType="Long">
+        delete from coupon_issue_relation
+        <where>
+            <if test="issueId != null "> and issue_id = #{issueId}</if>
+            <if test="couponId != null "> and coupon_id = #{couponId}</if>
+        </where>
+    </delete>
+    <delete id="deleteCouponIssueRelationByIds" parameterType="String">
+        delete from coupon_issue_relation where id in
+        <foreach item="id" collection="array" open="(" separator="," close=")">
+            #{id}
+        </foreach>
+    </delete>
+
+</mapper>