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

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; package com.iformall.controller.market;


import com.alibaba.fastjson.JSONArray;
import com.github.pagehelper.PageInfo; import com.github.pagehelper.PageInfo;
import com.iformall.annotation.SystemControllerLog; import com.iformall.annotation.SystemControllerLog;
import com.iformall.annotation.TenantIgnore; import com.iformall.annotation.TenantIgnore;
@@ -31,8 +32,13 @@ import java.io.BufferedInputStream;
import java.io.File; import java.io.File;
import java.io.FileOutputStream; import java.io.FileOutputStream;
import java.io.IOException; import java.io.IOException;
import java.util.Map;
import java.util.concurrent.TimeUnit; 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.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
@@ -159,6 +165,12 @@ public class WxCouponPasswordController extends BaseController {
return new ResultData(); return new ResultData();
} }
@TenantIgnore
@RequestMapping("/exportTemplate")
public void exportTemplate(HttpServletRequest request, HttpServletResponse response) {
wxCouponPasswordService.exportTemplate(request, response);
}
@TenantIgnore @TenantIgnore
@PostMapping(value = "/importPrice", consumes = "multipart/*") @PostMapping(value = "/importPrice", consumes = "multipart/*")
@SystemControllerLog(description = "消费卡批量导入面额") @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, "模板正在导入"); 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 setPrice(WxCouponPassword wxCouponPassword);
void exportTemplate(HttpServletRequest request, HttpServletResponse response);
void importPrice(MallUserInfo user,String importKey, WxCardPriceTemplate template); 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.EnumCouponOrderStatus;
import com.iformall.enums.EnumCouponPasswordStatus; import com.iformall.enums.EnumCouponPasswordStatus;
import com.iformall.enums.EnumYesOrNo; import com.iformall.enums.EnumYesOrNo;
import com.iformall.domain.vo.WxCUserBasicInfoVo;
import com.iformall.domain.vo.WxCardPriceTemplate; import com.iformall.domain.vo.WxCardPriceTemplate;
import com.iformall.domain.vo.WxCouponOrderBVo; import com.iformall.domain.vo.WxCouponOrderBVo;
import com.iformall.domain.vo.WxCouponPasswordCountInfoVO; import com.iformall.domain.vo.WxCouponPasswordCountInfoVO;
@@ -44,6 +45,7 @@ import javax.servlet.http.HttpServletResponse;


import java.lang.reflect.InvocationTargetException; import java.lang.reflect.InvocationTargetException;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.text.SimpleDateFormat;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Date; import java.util.Date;
import java.util.HashMap; import java.util.HashMap;
@@ -348,6 +350,27 @@ public class WxCouponPasswordServiceImpl implements WxCouponPasswordService {
wxCouponPasswordMapper.setPrice(wxCouponPassword); 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 @Override
public void importPrice(MallUserInfo user,String importKey, WxCardPriceTemplate template) { public void importPrice(MallUserInfo user,String importKey, WxCardPriceTemplate template) {
if (StringUtils.isBlank(template.getCouponPasswordId())) { if (StringUtils.isBlank(template.getCouponPasswordId())) {
@@ -375,5 +398,7 @@ public class WxCouponPasswordServiceImpl implements WxCouponPasswordService {
stringRedisTemplate.opsForHash().increment(importKey,"processCount",1); stringRedisTemplate.opsForHash().increment(importKey,"processCount",1);
stringRedisTemplate.expire(importKey,10, TimeUnit.SECONDS); stringRedisTemplate.expire(importKey,10, TimeUnit.SECONDS);
} }
} }

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