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

fix card

release_toaliyun_real
lin 3 лет назад
Родитель
Сommit
5e98e92217
3 измененных файлов: 72 добавлений и 1 удалений
  1. +46
    -1
      mallinkAdmin/src/main/java/com/iformall/controller/market/WxCouponPasswordController.java
  2. +1
    -0
      mallinkService/src/main/java/com/iformall/service/WxCouponPasswordService.java
  3. +25
    -0
      mallinkService/src/main/java/com/iformall/service/impl/WxCouponPasswordServiceImpl.java

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

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

import com.alibaba.fastjson.JSONArray;
import com.github.pagehelper.PageInfo;
import com.iformall.annotation.SystemControllerLog;
import com.iformall.annotation.TenantIgnore;
@@ -31,8 +32,13 @@ import java.io.BufferedInputStream;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.Map;
import java.util.concurrent.TimeUnit;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
@@ -159,6 +165,12 @@ public class WxCouponPasswordController extends BaseController {
return new ResultData();
}
@TenantIgnore
@RequestMapping("/exportTemplate")
public void exportTemplate(HttpServletRequest request, HttpServletResponse response) {
wxCouponPasswordService.exportTemplate(request, response);
}
@TenantIgnore
@PostMapping(value = "/importPrice", consumes = "multipart/*")
@SystemControllerLog(description = "消费卡批量导入面额")
@@ -237,10 +249,43 @@ public class WxCouponPasswordController extends BaseController {
}
}

asyncTask.importExcelData(lFile, user, importKey);
asyncTask.importCardPriceData(lFile, user, importKey);

return new ResultData(Result.SUCCESS, "模板正在导入");
}

@TenantIgnore
@GetMapping("/queryTemplateCount")
public ResultData queryTemplateCount() {
String importKey = Constant.importCardPrice + getUser().getId();
Map entries = stringRedisTemplate.opsForHash().entries(importKey);
if (entries.size() < 4) {
entries.clear();
return new ResultData(Result.SUCCESS, "ok", entries);
}
String allCount = entries.get("allCount").toString();
String allSuccessCount = entries.get("allSuccessCount").toString();
String processCount = entries.get("processCount").toString();
String failCount = entries.get("failCount").toString();

if (StringUtils.isNotBlank(failCount) && allCount.equals(failCount)) {//stringRedisTemplate.expire(userId,1,TimeUnit.SECONDS);
//完全失败
stringRedisTemplate.opsForHash().delete(importKey, "allCount");
stringRedisTemplate.opsForHash().delete(importKey, "allSuccessCount");
stringRedisTemplate.opsForHash().delete(importKey, "processCount");
stringRedisTemplate.opsForHash().delete(importKey, "failCount");
return new ResultData(ErrorCode.MEM_IMPORT_ERR);
}
//导入完成
if (StringUtils.isNotBlank(allSuccessCount) && allSuccessCount.equals(processCount)) {
ResultData ok = new ResultData(Result.SUCCESS, "ok", entries);
stringRedisTemplate.opsForHash().delete(importKey, "allCount");
stringRedisTemplate.opsForHash().delete(importKey, "allSuccessCount");
stringRedisTemplate.opsForHash().delete(importKey, "processCount");
stringRedisTemplate.opsForHash().delete(importKey, "failCount");
return ok;
}
return new ResultData(Result.SUCCESS, "查询成功", entries);
}

}

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

@@ -82,5 +82,6 @@ public interface WxCouponPasswordService {
void setPrice(WxCouponPassword wxCouponPassword);
void exportTemplate(HttpServletRequest request, HttpServletResponse response);
void importPrice(MallUserInfo user,String importKey, WxCardPriceTemplate template);
}

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

@@ -16,6 +16,7 @@ import com.iformall.domain.po.base.TenantEntity;
import com.iformall.enums.EnumCouponOrderStatus;
import com.iformall.enums.EnumCouponPasswordStatus;
import com.iformall.enums.EnumYesOrNo;
import com.iformall.domain.vo.WxCUserBasicInfoVo;
import com.iformall.domain.vo.WxCardPriceTemplate;
import com.iformall.domain.vo.WxCouponOrderBVo;
import com.iformall.domain.vo.WxCouponPasswordCountInfoVO;
@@ -44,6 +45,7 @@ import javax.servlet.http.HttpServletResponse;

import java.lang.reflect.InvocationTargetException;
import java.math.BigDecimal;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
@@ -348,6 +350,27 @@ public class WxCouponPasswordServiceImpl implements WxCouponPasswordService {
wxCouponPasswordMapper.setPrice(wxCouponPassword);
}

@Override
public void exportTemplate(HttpServletRequest request, HttpServletResponse response) {
List<WxCardPriceTemplate> list = new ArrayList<>();
WxCardPriceTemplate u1 = new WxCardPriceTemplate();
u1.setCouponPasswordId("791300030879526912");
u1.setPrice("500");
WxCardPriceTemplate u2 = new WxCardPriceTemplate();
u2.setCouponPasswordId("791300030879526913");
u2.setPrice("500.3");
WxCardPriceTemplate u3 = new WxCardPriceTemplate();
u3.setCouponPasswordId("791300030879526914");
u3.setPrice("500.68");
list.add(u1);
list.add(u2);
list.add(u3);
excelService.exportExcel(list, null, "卡设置面额模板", WxCUserBasicInfoVo.class, "卡设置面额模板.xlsx", response, true);
}
@Override
public void importPrice(MallUserInfo user,String importKey, WxCardPriceTemplate template) {
if (StringUtils.isBlank(template.getCouponPasswordId())) {
@@ -375,5 +398,7 @@ public class WxCouponPasswordServiceImpl implements WxCouponPasswordService {
stringRedisTemplate.opsForHash().increment(importKey,"processCount",1);
stringRedisTemplate.expire(importKey,10, TimeUnit.SECONDS);
}
}

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