diff --git a/mallinkAdmin/src/main/java/com/iformall/controller/WxCampaignController.java b/mallinkAdmin/src/main/java/com/iformall/controller/WxCampaignController.java
index 342a64f68..19d6b08d1 100644
--- a/mallinkAdmin/src/main/java/com/iformall/controller/WxCampaignController.java
+++ b/mallinkAdmin/src/main/java/com/iformall/controller/WxCampaignController.java
@@ -3,12 +3,14 @@ package com.iformall.controller;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.github.pagehelper.PageInfo;
+import com.iformall.common.ErrorCode;
import com.iformall.common.Result;
import com.iformall.common.ResultData;
import com.iformall.domain.po.WxCampaign;
import com.iformall.domain.po.WxCouponChannel;
import com.iformall.domain.vo.WxCouponChannelVo;
import com.iformall.enums.EnumCampaignStatus;
+import com.iformall.enums.EnumCampaignType;
import com.iformall.enums.EnumCouponChannelType;
import com.iformall.service.WxCampaignService;
import com.iformall.service.WxCouponChannelService;
@@ -61,9 +63,26 @@ public class WxCampaignController extends BaseController {
@PostMapping("add")
public ResultData add(@RequestBody WxCampaign wxCampaign) {
logger.debug("[" + getIpAddr() + "] WxCampaignController::add");
- //Assert.notNull(wxCampaign.getName(), "角色名不能为空");
- //Assert.isTrue(!checkUnique(sysRole.getName(), null), "重复的角色名");
-// int sortNum = wxCampaignService.getMaxSortNum(getTenantId());
+ if (StringUtils.isEmpty(wxCampaign.getCoverImg())) {
+ return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL, "封面图不能为空");
+ }
+ if(wxCampaign.getType().equals(EnumCampaignType.STABLE.getCode())) {
+ if (StringUtils.isEmpty(wxCampaign.getTitle())) {
+ return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL, "标题不能为空");
+ }
+ if (StringUtils.isEmpty(wxCampaign.getDetail())) {
+ return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL, "活动说明不能为空");
+ }
+ }else if(wxCampaign.getType().equals(EnumCampaignType.FREE.getCode())) {
+ if (StringUtils.isEmpty(wxCampaign.getHtml())) {
+ return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL, "图文不能为空");
+ }
+ }else{
+ if (StringUtils.isEmpty(wxCampaign.getLink())) {
+ return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL, "图文不能为空");
+ }
+ }
+
if (StringUtils.isNotBlank(wxCampaign.getCouponIds())) {
String[] arys = wxCampaign.getCouponIds().split(",");
wxCampaign.setCouponIds(JSON.toJSONString(arys));
@@ -72,7 +91,6 @@ public class WxCampaignController extends BaseController {
}
wxCampaign.setStatus(EnumCampaignStatus.STATUS_THROW_IN.getCode());
wxCampaign.setTenantId(getTenantId());
-// wxCampaign.setSortNum(sortNum+1);
wxCampaignService.saveOrUpdate(wxCampaign);
return new ResultData();
}
@@ -81,6 +99,27 @@ public class WxCampaignController extends BaseController {
@PostMapping("update")
public ResultData update(@RequestBody WxCampaign wxCampaign) {
logger.debug("[" + getIpAddr() + "] WxCampaignController::update");
+
+ if (StringUtils.isEmpty(wxCampaign.getCoverImg())) {
+ return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL, "封面图不能为空");
+ }
+ if(wxCampaign.getType().equals(EnumCampaignType.STABLE.getCode())) {
+ if (StringUtils.isEmpty(wxCampaign.getTitle())) {
+ return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL, "标题不能为空");
+ }
+ if (StringUtils.isEmpty(wxCampaign.getDetail())) {
+ return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL, "活动说明不能为空");
+ }
+ }else if(wxCampaign.getType().equals(EnumCampaignType.FREE.getCode())) {
+ if (StringUtils.isEmpty(wxCampaign.getHtml())) {
+ return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL, "图文不能为空");
+ }
+ }else{
+ if (StringUtils.isEmpty(wxCampaign.getLink())) {
+ return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL, "图文不能为空");
+ }
+ }
+
if (StringUtils.isNotBlank(wxCampaign.getCouponIds())) {
String[] arys = wxCampaign.getCouponIds().split(",");
wxCampaign.setCouponIds(JSON.toJSONString(arys));
diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxCampaign.java b/mallinkService/src/main/java/com/iformall/domain/po/WxCampaign.java
index 65fbba3b9..ffa93a3b1 100644
--- a/mallinkService/src/main/java/com/iformall/domain/po/WxCampaign.java
+++ b/mallinkService/src/main/java/com/iformall/domain/po/WxCampaign.java
@@ -2,12 +2,12 @@ package com.iformall.domain.po;
import com.iformall.domain.vo.WxCouponChannelVo;
-import javax.persistence.*;
-import java.util.*;
-import javax.persistence.Transient;
-import java.util.List;
import javax.persistence.Id;
+import javax.persistence.Table;
+import javax.persistence.Transient;
import java.io.Serializable;
+import java.util.Date;
+import java.util.List;
@Table(name = "wx_campaign")
public class WxCampaign implements Serializable {
@@ -104,6 +104,10 @@ public class WxCampaign implements Serializable {
/***/
@io.swagger.annotations.ApiModelProperty(value="",name="updateTime")
private Date updateTime;
+ @io.swagger.annotations.ApiModelProperty(value="富文本",name="html")
+ private String html;
+ @io.swagger.annotations.ApiModelProperty(value="外部链接",name="link")
+ private String link;
public String getTenantId() {
return tenantId;
}
@@ -207,7 +211,21 @@ public class WxCampaign implements Serializable {
updateTime = _updateTime;
}
+ public String getHtml() {
+ return html;
+ }
+
+ public void setHtml(String html) {
+ this.html = html;
+ }
+ public String getLink() {
+ return link;
+ }
+
+ public void setLink(String link) {
+ this.link = link;
+ }
public static enum Field
{
diff --git a/mallinkService/src/main/java/com/iformall/enums/EnumCampaignType.java b/mallinkService/src/main/java/com/iformall/enums/EnumCampaignType.java
new file mode 100644
index 000000000..97857addc
--- /dev/null
+++ b/mallinkService/src/main/java/com/iformall/enums/EnumCampaignType.java
@@ -0,0 +1,39 @@
+package com.iformall.enums;
+
+/**
+ * Created by Stormeye on 2018/08/09.
+ */
+public enum EnumCampaignType {
+
+ // 0-已上架;1-已下架;
+
+ STABLE(1, "固定格式"),
+ FREE(2, "自由图文"),
+ LINK(3,"外部网址")
+ ;
+
+ public static EnumCampaignType getEnum(Integer code) {
+ for (EnumCampaignType value : values()) {
+ if (value.getCode().equals(code)) {
+ return value;
+ }
+ }
+ return null;
+ }
+
+ private Integer code;
+ private String message;
+
+ EnumCampaignType(Integer code, String message) {
+ this.code = code;
+ this.message = message;
+ }
+
+ public Integer getCode() {
+ return code;
+ }
+
+ public String getMessage() {
+ return message;
+ }
+}
diff --git a/mallinkService/src/main/resources/mapper/WxCampaignMapper.xml b/mallinkService/src/main/resources/mapper/WxCampaignMapper.xml
index 07f71166a..ab113aa41 100644
--- a/mallinkService/src/main/resources/mapper/WxCampaignMapper.xml
+++ b/mallinkService/src/main/resources/mapper/WxCampaignMapper.xml
@@ -20,10 +20,14 @@
+
+
+
- `id`,`tenant_id`,`cover_img`,`title`,`sub_title`,`use_price`,`discount_price`,`detail`,`valid_start_date`,`valid_end_date`,`img_detail`,`type`,`coupon_ids`,`mechant_id`,`sort_num`,`status`,`create_time`,`update_time`
+ `id`,`tenant_id`,`cover_img`,`title`,`sub_title`,`use_price`,`discount_price`,`detail`,`valid_start_date`,`valid_end_date`,`img_detail`,`type`,`coupon_ids`,
+ `mechant_id`,`sort_num`,`status`,`create_time`,`update_time`,`html`,`link`