winter 2 лет назад
Родитель
Сommit
066acef139
3 измененных файлов: 76 добавлений и 1 удалений
  1. +39
    -1
      mallinkAdmin/src/main/java/com/iformall/controller/market/WxCashBackActivityController.java
  2. +7
    -0
      mallinkService/src/main/java/com/iformall/service/WxCashBackActivityService.java
  3. +30
    -0
      mallinkService/src/main/java/com/iformall/service/impl/WxCashBackActivityServiceImpl.java

+ 39
- 1
mallinkAdmin/src/main/java/com/iformall/controller/market/WxCashBackActivityController.java Просмотреть файл

@@ -10,6 +10,7 @@ import com.iformall.domain.po.WxCashBackActivity;
import com.iformall.domain.po.WxCashBackActivityRecord;
import com.iformall.domain.po.WxCashOut;
import com.iformall.domain.po.WxCoupon;
import com.iformall.domain.po.WxMerchant;
import com.iformall.domain.po.base.BaseEntity.SortField;
import com.iformall.domain.po.base.TenantEntity;
import com.iformall.enums.EnumCashBackActivityRecordStatus;
@@ -180,12 +181,49 @@ public class WxCashBackActivityController extends BaseController {
wxCashBackActivityService.exportData(result,"现金返现记录",WxCashBackActivityRecord.class, request, response);
}
@ApiOperation("查询当前提现信息")
@GetMapping("recordInfo")
@ApiImplicitParams({
@ApiImplicitParam(name = "id", value = "主键id", dataType = "Long", paramType = "query", required = true)})
public ResultData recordInfo(Long id) {
TenantEntity tenantInfo = getTenantInfo();
WxCashBackActivityRecord activity = wxCashBackActivityService.getActivityRecordById(id, tenantInfo.getTenantId());
if (null != activity) {
if (null != activity.getActivityId()) {
WxCashBackActivity a = wxCashBackActivityService.getActivityById(activity.getActivityId(), tenantInfo.getTenantId());
if (null != a) {
activity.setActivityName(a.getName());
}
}
if (null != activity.getMerchantId()) {
WxMerchant m = new WxMerchant();
m.updateTenantInfo(activity);
m.setId(activity.getMerchantId());
WxMerchant _m = wxMerchantService.findListOne(m);
if (null != _m) {
activity.setMerchantName(_m.getName());
}
}
}
return new ResultData(activity);
}
@ApiOperation("新增修改接口")
@PostMapping("recordAudit")
public ResultData recordAudit(@RequestBody WxCashBackActivityRecord wxCashBackActivityRecord) {
TenantEntity tenantEntity = getTenantInfo();
wxCashBackActivityRecord.updateTenantInfo(tenantEntity);
wxCashBackActivityService.updateActivityStatus(wxCashBackActivity);
wxCashBackActivityService.auditRecord(wxCashBackActivityRecord);
return new ResultData();
}
@ApiOperation("新增修改接口")
@PostMapping("calRecordMoney")
public ResultData calRecordMoney(@RequestBody WxCashBackActivityRecord wxCashBackActivityRecord) {
TenantEntity tenantEntity = getTenantInfo();
wxCashBackActivityRecord.updateTenantInfo(tenantEntity);
wxCashBackActivityService.auditRecord(wxCashBackActivityRecord);
return new ResultData(wxCashBackActivityRecord);
}
}

+ 7
- 0
mallinkService/src/main/java/com/iformall/service/WxCashBackActivityService.java Просмотреть файл

@@ -43,6 +43,9 @@ public interface WxCashBackActivityService {
WxCashBackActivity getActivityById(Long id,String tenantId);
WxCashBackActivityItem getActivityItemById(Long id,String tenantId);
WxCashBackActivityRecord getActivityRecordById(Long id,String tenantId);
/**
*更新状态
@@ -57,5 +60,9 @@ public interface WxCashBackActivityService {
void exportData(List objectList,String sheetName,Class objectCalss,HttpServletRequest request, HttpServletResponse response);
void auditRecord(WxCashBackActivityRecord record);
void calcuteMoney(WxCashBackActivityRecord record);
}

+ 30
- 0
mallinkService/src/main/java/com/iformall/service/impl/WxCashBackActivityServiceImpl.java Просмотреть файл

@@ -11,6 +11,7 @@ import com.iformall.domain.po.WxCashBackActivityRecord;
import com.iformall.domain.po.WxMerchant;
import com.iformall.domain.po.base.TenantEntity;
import com.iformall.domain.vo.WxCUserBasicInfoVo;
import com.iformall.enums.EnumCashBackActivityItemRule;
import com.iformall.enums.EnumCashBackActivityRecordStatus;
import com.iformall.mapper.WxCashBackActivityItemMapper;
import com.iformall.mapper.WxCashBackActivityMapper;
@@ -24,6 +25,7 @@ import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.math.BigDecimal;
import java.util.*;

import javax.servlet.http.HttpServletRequest;
@@ -158,6 +160,11 @@ public class WxCashBackActivityServiceImpl implements WxCashBackActivityService
public WxCashBackActivityItem getActivityItemById(Long id,String tenantId) {
return wxCashBackActivityItemMapper.selectById(id,tenantId);
}
@Override
public WxCashBackActivityRecord getActivityRecordById(Long id,String tenantId) {
return wxCashBackActivityRecordMapper.selectById(id,tenantId);
}

@Override
public void updateActivityStatus(WxCashBackActivity record) {
@@ -254,4 +261,27 @@ public class WxCashBackActivityServiceImpl implements WxCashBackActivityService
excelService.exportExcel(objectList, null, sheetName, objectCalss, sheetName+".xlsx", response, false);
}

@Override
public void auditRecord(WxCashBackActivityRecord record) {
wxCashBackActivityRecordMapper.updateStatus(record);
}

@Override
public void calcuteMoney(WxCashBackActivityRecord record) {
WxCashBackActivityItem item = wxCashBackActivityItemMapper.selectById(record.getItemId(), record.getTenantId());
EnumCashBackActivityItemRule moneyRule = EnumCashBackActivityItemRule.getEnum(item.getMoneyRule());
record.setCashRate(item.getTotalBackRate());
record.setCashMoney(record.getOrderMoney().multiply(item.getTotalBackRate()).setScale(2,BigDecimal.ROUND_HALF_UP));
if (moneyRule == EnumCashBackActivityItemRule.MALL_ONLY) {
record.setMallCashMoney(record.getCashMoney());
record.setMerchantCashMoney(new BigDecimal(0));
}else if(moneyRule == EnumCashBackActivityItemRule.MERCHANT_ONLY) {
record.setMallCashMoney(new BigDecimal(0));
record.setMerchantCashMoney(record.getCashMoney());
}else if (moneyRule == EnumCashBackActivityItemRule.SHARE) {
record.setMallCashMoney(record.getCashMoney().multiply(item.getMallBackRate()).setScale(2,BigDecimal.ROUND_HALF_UP));
record.setMerchantCashMoney(record.getCashMoney().multiply(item.getMerchantBackRate()).setScale(2,BigDecimal.ROUND_HALF_UP));
}
}

}

Загрузка…
Отмена
Сохранить