Просмотр исходного кода

增加根据商户ID和消费金额获取所增加积分接口

release_toaliyun_real
hanxueda 7 лет назад
Родитель
Сommit
7c15680fbc
3 измененных файлов: 42 добавлений и 9 удалений
  1. +18
    -2
      mallinkAdmin/src/main/java/com/iformall/controller/WxCreditHistoryController.java
  2. +3
    -6
      mallinkService/src/main/java/com/iformall/service/WxCreditHistoryService.java
  3. +21
    -1
      mallinkService/src/main/java/com/iformall/service/impl/WxCreditHistoryServiceImpl.java

+ 18
- 2
mallinkAdmin/src/main/java/com/iformall/controller/WxCreditHistoryController.java Просмотреть файл

@@ -1,5 +1,6 @@
package com.iformall.controller;

import com.iformall.common.ErrorCode;
import com.iformall.domain.dto.WxCreditHistoryDto;
import com.iformall.domain.vo.WxCreditHistoryVo;
import org.slf4j.LoggerFactory;
@@ -37,14 +38,26 @@ public class WxCreditHistoryController extends BaseController
@ApiImplicitParam(name="pageNum",value="页数",dataType="int", paramType = "query",required=true),
@ApiImplicitParam(name="pageSize",value="每页条数",dataType="int", paramType = "query",required=true)})
public ResultData list(@ModelAttribute WxCreditHistory wxCreditHistory, Integer pageNum, Integer pageSize) {
if (null == wxCreditHistory) wxCreditHistory = new WxCreditHistory();
logger.debug("[" + getIpAddr() + "] WxCreditHistoryController::list");
if (null == wxCreditHistory) wxCreditHistory = new WxCreditHistory();
final PageInfo<WxCreditHistoryVo> page = wxCreditHistoryService.listAsPageMore(wxCreditHistory, pageNum, pageSize);
return new ResultData(page);
}

@ApiOperation("根据商户ID和消费金额获取所增加积分 取data里credit的值")
@GetMapping("findByMerchantIdAndSpend")
@ApiImplicitParams({
@ApiImplicitParam(name="merchantId",value="商户ID",dataType="long", paramType = "query",required=true),
@ApiImplicitParam(name="spend",value="消费金额",dataType="int", paramType = "query",required=true)})
public ResultData findByMerchantIdAndSpend(@RequestParam Long merchantId, @RequestParam Integer spend) {
logger.debug("[" + getIpAddr() + "] WxCreditHistoryController::findByMerchantIdAndSpend");
return new ResultData(wxCreditHistoryService.findByMerchantIdAndSpend(merchantId,spend,getTenantId()));
}

@ApiOperation("新增接口")
@PostMapping("add")
public ResultData add(@RequestBody WxCreditHistory wxCreditHistory) {
logger.debug("[" + getIpAddr() + "] WxCreditHistoryController::add");
wxCreditHistory.setTenantId(getTenantId());
wxCreditHistoryService.saveOrUpdate(wxCreditHistory);
return new ResultData();
@@ -53,6 +66,7 @@ public class WxCreditHistoryController extends BaseController
@ApiOperation("根据id更新接口")
@PostMapping("update")
public ResultData update(@RequestBody WxCreditHistory wxCreditHistory) {
logger.debug("[" + getIpAddr() + "] WxCreditHistoryController::update");
wxCreditHistoryService.saveOrUpdate(wxCreditHistory);
return new ResultData();
}
@@ -61,6 +75,7 @@ public class WxCreditHistoryController extends BaseController
@GetMapping("/del")
@ApiImplicitParam(name="id",value="id",dataType="Long", paramType = "query",required=true)
public ResultData delete(Long id) {
logger.debug("[" + getIpAddr() + "] WxCreditHistoryController::delete");
wxCreditHistoryService.deleteById(id);
return new ResultData(Result.SUCCESS, "删除成功", null);
}
@@ -69,7 +84,8 @@ public class WxCreditHistoryController extends BaseController
@GetMapping("/findById")
@ApiImplicitParam(name="id",value="id",dataType="Long", paramType = "query",required=true)
public ResultData findById(Long id) {
return new ResultData(Result.SUCCESS,"查询成功",wxCreditHistoryService.getById(id));
logger.debug("[" + getIpAddr() + "] WxCreditHistoryController::findById");
return new ResultData(Result.SUCCESS,"查询成功",wxCreditHistoryService.getById(id));
}


+ 3
- 6
mallinkService/src/main/java/com/iformall/service/WxCreditHistoryService.java Просмотреть файл

@@ -6,6 +6,7 @@ import com.iformall.common.ResultData;
import com.iformall.domain.dto.WxCreditHistoryDto;
import com.iformall.domain.po.WxCreditHistory;
import com.iformall.domain.vo.WxCreditHistoryVo;
import org.springframework.web.bind.annotation.RequestParam;

public interface WxCreditHistoryService {

@@ -50,12 +51,8 @@ public interface WxCreditHistoryService {
* @param id
*/
void deleteById(Long id);

Map<String, Integer> findByMerchantIdAndSpend(Long merchantId, Integer spend, String tenantId);

}

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

@@ -8,6 +8,7 @@ import com.alibaba.fastjson.JSONObject;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.google.common.collect.Lists;
import com.google.common.collect.Maps;
import com.iformall.common.ErrorCode;
import com.iformall.common.Result;
import com.iformall.common.ResultData;
@@ -46,6 +47,9 @@ public class WxCreditHistoryServiceImpl implements WxCreditHistoryService {
@Autowired
WxScoreRulesService wxScoreRulesService;

@Autowired
WxMerchantMapper wxMerchantMapper;

@Override
public PageInfo<WxCreditHistory> listAsPage(WxCreditHistory record, Integer pageIndex, Integer pageSize) {
return PageHelper.startPage(pageIndex, pageSize).doSelectPageInfo(() -> wxCreditHistoryMapper.findList(record));
@@ -164,6 +168,22 @@ public class WxCreditHistoryServiceImpl implements WxCreditHistoryService {
wxCreditHistoryMapper.deleteByPrimaryKey(id);
}

@Override
public Map<String, Integer> findByMerchantIdAndSpend(Long merchantId, Integer spend ,String tenantId) {
WxMerchant wxMerchant = wxMerchantMapper.selectByPrimaryKey(merchantId);
Map<String, Integer> creditMap = Maps.newHashMap();
if (wxMerchant != null && wxMerchant.getBusinessId() != null) {
WxCreditHistory wxCreditHistory = new WxCreditHistory();
wxCreditHistory.setBusinessId(Long.valueOf(wxMerchant.getBusinessId()));
wxCreditHistory.setTenantId(tenantId);
wxCreditHistory.setSpend(spend);
int credit = payAddCredit(wxCreditHistory);
creditMap.put("credit",credit);
}
return creditMap;
}


//根据积分类型计算"增加积分"
private int creditIncrement(WxCreditHistory record) {
if (record.getCreditType() == EnumScoreType.LOGIN.getCode()) {
@@ -267,7 +287,7 @@ public class WxCreditHistoryServiceImpl implements WxCreditHistoryService {
private int payAddCredit(WxCreditHistory record) {
int addCreditNumber = 0;
// 订单金额为0时不计入
if (record.getCreditNum() == 0)
if (record.getCreditNum() != null && record.getCreditNum() == 0)
return 0;
// 1. 获取score rules
WxScoreRules scoreRules = wxScoreRulesService.getCreditRules(record.getTenantId());


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