| @@ -56,6 +56,18 @@ public class WxOfflineActivityRecordController extends BaseController { | |||||
| return new ResultData(page); | return new ResultData(page); | ||||
| } | } | ||||
| @ApiOperation("新增修改接口") | |||||
| @PostMapping("saveOrUpdate") | |||||
| public ResultData saveOrUpdate(@RequestBody WxOfflineActivityRecord wxOfflineActivityRecord) { | |||||
| if(wxOfflineActivityRecord.getId() == null){ | |||||
| return new ResultData(Result.ERROR,"id不能为空"); | |||||
| } | |||||
| TenantEntity tenantEntity = getTenantInfo(); | |||||
| wxOfflineActivityRecord.updateTenantInfo(tenantEntity); | |||||
| wxOfflineActivityRecordService.saveOrUpdate(wxOfflineActivityRecord); | |||||
| return new ResultData(); | |||||
| } | |||||
| @ApiOperation("获取待审批数量") | @ApiOperation("获取待审批数量") | ||||
| @GetMapping("waitAudiCount") | @GetMapping("waitAudiCount") | ||||
| public ResultData waitAudiCount() { | public ResultData waitAudiCount() { | ||||
| @@ -6,6 +6,8 @@ import com.iformall.common.ResultData; | |||||
| import com.iformall.domain.po.WxOfflineActivityRecord; | import com.iformall.domain.po.WxOfflineActivityRecord; | ||||
| import com.iformall.domain.po.base.BaseEntity.SortField; | import com.iformall.domain.po.base.BaseEntity.SortField; | ||||
| import com.iformall.domain.po.base.TenantEntity; | import com.iformall.domain.po.base.TenantEntity; | ||||
| import com.iformall.enums.EnumOfflineActivityRecordStatus; | |||||
| import com.iformall.exception.MallinkException; | |||||
| import com.iformall.service.*; | import com.iformall.service.*; | ||||
| import io.swagger.annotations.Api; | import io.swagger.annotations.Api; | ||||
| import io.swagger.annotations.ApiImplicitParam; | import io.swagger.annotations.ApiImplicitParam; | ||||
| @@ -57,10 +59,18 @@ public class WxOfflineActivityRecordController extends BaseController { | |||||
| if (null == wxOfflineActivityRecord.getOrderMoney() ) { | if (null == wxOfflineActivityRecord.getOrderMoney() ) { | ||||
| return new ResultData(Result.ERROR,"订单金额不能为空"); | return new ResultData(Result.ERROR,"订单金额不能为空"); | ||||
| } | } | ||||
| if(wxOfflineActivityRecord.getId() != null){ | |||||
| WxOfflineActivityRecord record = wxOfflineActivityRecordService.getById(wxOfflineActivityRecord.getId(),wxOfflineActivityRecord.getTenantId()); | |||||
| if(!EnumOfflineActivityRecordStatus.AUDT_FAIL.getCode().equals(record.getAuditStatus())){ | |||||
| throw new MallinkException(Result.ERROR,"订单状态不允许修改"); | |||||
| } | |||||
| wxOfflineActivityRecord.setAuditRemark(""); | |||||
| } | |||||
| TenantEntity tenantEntity = getTenantInfo(); | TenantEntity tenantEntity = getTenantInfo(); | ||||
| wxOfflineActivityRecord.updateTenantInfo(tenantEntity); | wxOfflineActivityRecord.updateTenantInfo(tenantEntity); | ||||
| wxOfflineActivityRecord.setCreateBy(getMerchantBUserId()); | wxOfflineActivityRecord.setCreateBy(getMerchantBUserId()); | ||||
| wxOfflineActivityRecord.setMerchantId(getLoginBUser().getMerchantId()); | wxOfflineActivityRecord.setMerchantId(getLoginBUser().getMerchantId()); | ||||
| wxOfflineActivityRecord.setAuditStatus(EnumOfflineActivityRecordStatus.AUDTING.getCode()); | |||||
| wxOfflineActivityRecordService.saveOrUpdate(wxOfflineActivityRecord); | wxOfflineActivityRecordService.saveOrUpdate(wxOfflineActivityRecord); | ||||
| return new ResultData(); | return new ResultData(); | ||||
| } | } | ||||
| @@ -139,6 +139,12 @@ public class WxLegionActivity extends TenantEntity { | |||||
| @TableField(exist = false) | @TableField(exist = false) | ||||
| private List<WxLegionActivityConfig> legionList; | private List<WxLegionActivityConfig> legionList; | ||||
| /** | |||||
| * 线下活动 | |||||
| */ | |||||
| @TableField(exist = false) | |||||
| private List<WxOfflineActivity> offlineActivityList; | |||||
| @TableField(exist = false) | @TableField(exist = false) | ||||
| private Integer legionCount; | private Integer legionCount; | ||||
| @TableField(exist = false) | @TableField(exist = false) | ||||
| @@ -49,8 +49,8 @@ public class WxLegionActivityOrder extends TenantEntity { | |||||
| /** | /** | ||||
| * 订单金额 | * 订单金额 | ||||
| */ | */ | ||||
| @io.swagger.annotations.ApiModelProperty(value="已收定金",name="orderMoney") | |||||
| @Excel(name = "已收定金", width = 20, orderNum = "10") | |||||
| @io.swagger.annotations.ApiModelProperty(value="订单金额",name="orderMoney") | |||||
| @Excel(name = "订单金额", width = 20, orderNum = "10") | |||||
| @TableField(value = "order_money") | @TableField(value = "order_money") | ||||
| private BigDecimal orderMoney; | private BigDecimal orderMoney; | ||||
| @@ -33,6 +33,12 @@ public class WxOfflineActivityRecord extends TenantEntity { | |||||
| @TableId(value = "id") | @TableId(value = "id") | ||||
| private Long id; | private Long id; | ||||
| /** | |||||
| * 来源订单号 | |||||
| */ | |||||
| @TableId(value = "from_order_id") | |||||
| private Long fromOrderId; | |||||
| /** | /** | ||||
| * 订单号 | * 订单号 | ||||
| */ | */ | ||||
| @@ -18,6 +18,7 @@ import com.iformall.service.*; | |||||
| import jodd.util.StringUtil; | import jodd.util.StringUtil; | ||||
| import org.springframework.beans.factory.annotation.Autowired; | import org.springframework.beans.factory.annotation.Autowired; | ||||
| import org.springframework.stereotype.Service; | import org.springframework.stereotype.Service; | ||||
| import org.springframework.transaction.annotation.Transactional; | |||||
| import javax.servlet.http.HttpServletRequest; | import javax.servlet.http.HttpServletRequest; | ||||
| import javax.servlet.http.HttpServletResponse; | import javax.servlet.http.HttpServletResponse; | ||||
| @@ -52,6 +53,9 @@ public class WxLegionActivityOrderServiceImpl implements WxLegionActivityOrderSe | |||||
| @Autowired | @Autowired | ||||
| private WxLegionActivityMerchantConfigMapper wxLegionActivityMerchantConfigMapper; | private WxLegionActivityMerchantConfigMapper wxLegionActivityMerchantConfigMapper; | ||||
| @Autowired | |||||
| private WxLegionActivityOfflineConfigService wxLegionActivityOfflineConfigService; | |||||
| @Autowired | @Autowired | ||||
| private WxMerchantMapper wxMerchantMapper; | private WxMerchantMapper wxMerchantMapper; | ||||
| @@ -290,12 +294,17 @@ public class WxLegionActivityOrderServiceImpl implements WxLegionActivityOrderSe | |||||
| } | } | ||||
| @Override | @Override | ||||
| @Transactional(rollbackFor = Exception.class) | |||||
| public void auditRecord(WxLegionActivityOrder wxLegionActivityOrder, Long userId) { | public void auditRecord(WxLegionActivityOrder wxLegionActivityOrder, Long userId) { | ||||
| Date now = new Date(); | Date now = new Date(); | ||||
| wxLegionActivityOrder.setUpdateDate(now); | wxLegionActivityOrder.setUpdateDate(now); | ||||
| wxLegionActivityOrder.setAuditTime(now); | wxLegionActivityOrder.setAuditTime(now); | ||||
| wxLegionActivityOrder.setAuditBy(userId); | wxLegionActivityOrder.setAuditBy(userId); | ||||
| wxLegionActivityOrderMapper.updateAuditStatus(wxLegionActivityOrder); | wxLegionActivityOrderMapper.updateAuditStatus(wxLegionActivityOrder); | ||||
| //同步订单 | |||||
| WxLegionActivityOrder legionActivityOrder = wxLegionActivityOrderMapper.selectById(wxLegionActivityOrder.getId(), wxLegionActivityOrder.getTenantId()); | |||||
| wxLegionActivityOfflineConfigService.syncOfflineActivityRecord(legionActivityOrder); | |||||
| } | } | ||||
| @Override | @Override | ||||
| @@ -48,6 +48,12 @@ public class WxLegionActivityServiceImpl implements WxLegionActivityService{ | |||||
| @Autowired | @Autowired | ||||
| private WxLegionActivityMerchantConfigService wxLegionActivityMerchantConfigService; | private WxLegionActivityMerchantConfigService wxLegionActivityMerchantConfigService; | ||||
| @Autowired | |||||
| private WxLegionActivityOfflineConfigMapper wxLegionActivityOfflineConfigMapper; | |||||
| @Autowired | |||||
| private WxLegionActivityOfflineConfigService wxLegionActivityOfflineConfigService; | |||||
| @Autowired | @Autowired | ||||
| private WxLegionActivityOrderService wxLegionActivityOrderService; | private WxLegionActivityOrderService wxLegionActivityOrderService; | ||||
| @@ -180,6 +186,8 @@ public class WxLegionActivityServiceImpl implements WxLegionActivityService{ | |||||
| wxLegionActivity.setUpdateDate(now); | wxLegionActivity.setUpdateDate(now); | ||||
| wxLegionActivityMapper.updateById(wxLegionActivity); | wxLegionActivityMapper.updateById(wxLegionActivity); | ||||
| } | } | ||||
| //处理线下活动配置 | |||||
| wxLegionActivityOfflineConfigService.handleOfflineConfig(wxLegionActivity); | |||||
| //处理军团配置 | //处理军团配置 | ||||
| wxLegionActivityConfigService.handleLegionConfig(wxLegionActivity); | wxLegionActivityConfigService.handleLegionConfig(wxLegionActivity); | ||||
| @@ -196,6 +204,8 @@ public class WxLegionActivityServiceImpl implements WxLegionActivityService{ | |||||
| if(activity == null){ | if(activity == null){ | ||||
| return activity; | return activity; | ||||
| } | } | ||||
| //获取活动发奖配置 | |||||
| activity.setOfflineActivityList(wxLegionActivityOfflineConfigService.getOfflineActivityList(activity)); | |||||
| //获取军团配置 | //获取军团配置 | ||||
| WxLegionActivityConfig legionConfigQ = new WxLegionActivityConfig(); | WxLegionActivityConfig legionConfigQ = new WxLegionActivityConfig(); | ||||
| legionConfigQ.updateTenantInfo(activity); | legionConfigQ.updateTenantInfo(activity); | ||||
| @@ -168,16 +168,12 @@ public class WxOfflineActivityRecordServiceImpl implements WxOfflineActivityReco | |||||
| wxOfflineActivityRecord.setId(idWorker.nextId()); | wxOfflineActivityRecord.setId(idWorker.nextId()); | ||||
| wxOfflineActivityRecord.setCreateDate(now); | wxOfflineActivityRecord.setCreateDate(now); | ||||
| wxOfflineActivityRecord.setUpdateDate(now); | wxOfflineActivityRecord.setUpdateDate(now); | ||||
| wxOfflineActivityRecord.setAuditStatus(EnumOfflineActivityRecordStatus.AUDTING.getCode()); | |||||
| // wxOfflineActivityRecord.setAuditStatus(EnumOfflineActivityRecordStatus.AUDTING.getCode()); | |||||
| wxOfflineActivityRecordMapper.insert(wxOfflineActivityRecord); | wxOfflineActivityRecordMapper.insert(wxOfflineActivityRecord); | ||||
| } | } | ||||
| else{ | else{ | ||||
| WxOfflineActivityRecord record = wxOfflineActivityRecordMapper.selectById(wxOfflineActivityRecord.getId(),wxOfflineActivityRecord.getTenantId()); | |||||
| if(!EnumOfflineActivityRecordStatus.AUDT_FAIL.getCode().equals(record.getAuditStatus())){ | |||||
| throw new MallinkException(Result.ERROR,"订单状态不允许修改"); | |||||
| } | |||||
| wxOfflineActivityRecord.setAuditRemark(""); | |||||
| wxOfflineActivityRecord.setAuditStatus(EnumOfflineActivityRecordStatus.AUDTING.getCode()); | |||||
| // wxOfflineActivityRecord.setAuditRemark(""); | |||||
| // wxOfflineActivityRecord.setAuditStatus(EnumOfflineActivityRecordStatus.AUDTING.getCode()); | |||||
| wxOfflineActivityRecord.setUpdateDate(now); | wxOfflineActivityRecord.setUpdateDate(now); | ||||
| wxOfflineActivityRecordMapper.updateById(wxOfflineActivityRecord); | wxOfflineActivityRecordMapper.updateById(wxOfflineActivityRecord); | ||||
| } | } | ||||
| @@ -8,6 +8,7 @@ | |||||
| <id property="id" column="id" jdbcType="BIGINT"/> | <id property="id" column="id" jdbcType="BIGINT"/> | ||||
| <result property="tenantId" column="tenant_id" jdbcType="VARCHAR"/> | <result property="tenantId" column="tenant_id" jdbcType="VARCHAR"/> | ||||
| <result property="parentTenantId" column="parent_tenant_id" jdbcType="VARCHAR"/> | <result property="parentTenantId" column="parent_tenant_id" jdbcType="VARCHAR"/> | ||||
| <result property="fromOrderId" column="from_order_id" jdbcType="BIGINT"/> | |||||
| <result property="orderNo" column="order_no" jdbcType="VARCHAR"/> | <result property="orderNo" column="order_no" jdbcType="VARCHAR"/> | ||||
| <result property="orderMoney" column="order_money" jdbcType="DECIMAL"/> | <result property="orderMoney" column="order_money" jdbcType="DECIMAL"/> | ||||
| <result property="cusName" column="cus_name" jdbcType="VARCHAR"/> | <result property="cusName" column="cus_name" jdbcType="VARCHAR"/> | ||||
| @@ -31,7 +32,7 @@ | |||||
| <sql id="allColumns"> | <sql id="allColumns"> | ||||
| id,tenant_id,parent_tenant_id, | id,tenant_id,parent_tenant_id, | ||||
| order_no,order_money,cus_name, | |||||
| from_order_id,order_no,order_money,cus_name, | |||||
| real_cus_name,cus_phone,cus_address, | real_cus_name,cus_phone,cus_address, | ||||
| cus_card,lottery_num,lottery_count, | cus_card,lottery_num,lottery_count, | ||||
| anniversary_lottery_num,create_by,merchant_id,business_id, | anniversary_lottery_num,create_by,merchant_id,business_id, | ||||
| @@ -66,6 +67,10 @@ | |||||
| and `cus_phone` = #{cusPhone} | and `cus_phone` = #{cusPhone} | ||||
| </if> | </if> | ||||
| <if test=" null != fromOrderId "> | |||||
| and `from_order_id` = #{fromOrderId} | |||||
| </if> | |||||
| <if test=" null != orderNo and orderNo != '' "> | <if test=" null != orderNo and orderNo != '' "> | ||||
| and `order_no` like concat('%', #{orderNo},'%') | and `order_no` like concat('%', #{orderNo},'%') | ||||
| </if> | </if> | ||||