Browse Source

Merge branch 'release_toaliyun_real_20230701' of https://git.malls.iformall.com/server/formallProject into release_toaliyun_real_20230701

release_toaliyun_real
xhxu 2 years ago
parent
commit
ef8bbf7035
6 changed files with 67 additions and 23 deletions
  1. +4
    -4
      mallinkAdmin/src/main/java/com/iformall/controller/basic/TtMerchantPoiController.java
  2. +4
    -0
      mallinkAdmin/src/main/java/com/iformall/controller/car/WxCarController.java
  3. +34
    -7
      mallinkAdmin/src/main/java/com/iformall/controller/mem/AsyncTask.java
  4. +3
    -0
      mallinkService/src/main/java/com/iformall/domain/po/WxMerchant.java
  5. +2
    -2
      mallinkService/src/main/java/com/iformall/service/impl/TtMerchantPoiServiceImpl.java
  6. +20
    -10
      mallinkService/src/main/java/com/iformall/service/impl/WxMerchantServiceImpl.java

+ 4
- 4
mallinkAdmin/src/main/java/com/iformall/controller/basic/TtMerchantPoiController.java View File

@@ -278,12 +278,12 @@ public class TtMerchantPoiController extends DouyinBaseController {
//得到当前用户ID
final MallUserInfo user = getUser();
String userId = "" + user.getId();
String importKey = Constant.importPoiPrev + userId;
File lFile = handlerImportFile(mFile,importKey,"poi");
//String importKey = Constant.importPoiPrev + userId;
File lFile = handlerImportFile(mFile,null,"poi");
if (isSaas) {
asyncTask.importExcelPoiDataForNew(lFile, user, importKey,request,response);
asyncTask.importExcelPoiDataForNew(lFile, user, null,request,response);
}else {
asyncTask.importExcelPoiData(lFile, user, importKey,request,response);
asyncTask.importExcelPoiData(lFile, user, null,request,response);
}
} catch (Exception e) {
logger.error("allTreeList error.",e);


+ 4
- 0
mallinkAdmin/src/main/java/com/iformall/controller/car/WxCarController.java View File

@@ -18,6 +18,7 @@ import com.iformall.mapper.WxCouponMapper;
import com.iformall.service.*;
import com.iformall.service.park.impl.etcp.ETCPUtil;
import com.iformall.service.park.impl.tjd.TJDUtil;
import com.iformall.utils.Constant;

import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
@@ -191,6 +192,9 @@ public class WxCarController extends BaseController {
}
WxMerchant wxMerchant = wxMerchantService.getById(merchantId);
String carParams = wxMerchant.getCarParams();
if (StringUtils.isBlank(carParams)) {
return null;
}
JSONObject objParams1 = JSON.parseObject(carParams);
businessId = objParams1.getString("businessId");
return businessId;


+ 34
- 7
mallinkAdmin/src/main/java/com/iformall/controller/mem/AsyncTask.java View File

@@ -52,6 +52,8 @@ import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.concurrent.TimeUnit;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@@ -112,11 +114,28 @@ public class AsyncTask {
if (value == null) {
value = "";
}
//管理员手机号校验手机号格式
if ("管理员手机号".equals(name)) {
String _v = (String)value;
if (StringUtils.isNotBlank(_v) && (!isMobile(_v))) {
throw new MallinkException(ErrorCode.SYS_SERVER_ERROR.getCode(),"管理员手机号必须是移动号码");
}
}
return super.importHandler(obj, name, value);
}

}
private static boolean isMobile(String str) {
Pattern p = null;
Matcher m = null;
boolean b = false;
p = Pattern.compile("^[1][3,4,5,7,8][0-9]{9}$"); // 验证手机号
m = p.matcher(str);
b = m.matches();
return b;
}
private class CardPriceExcelHandler extends ExcelDataHandlerDefaultImpl<WxCardPriceTemplate> {
@Override
public Object importHandler(WxCardPriceTemplate obj, String name, Object value) {
@@ -290,7 +309,7 @@ public class AsyncTask {
return datalist;
}
@Async
//@Async
public void importExcelPoiData(File file, MallUserInfo user, String importKey,HttpServletRequest request, HttpServletResponse response) {
String[] importFields = new String[]{"服务商POI_ID", "POI名称", "省份", "城市", "地址", "经度", "纬度", "高德ID(非必填)",
"已匹配POI_ID", "已匹配POI名称", "已匹配POI省份", "已匹配POI城市", "已匹配POI地址", "未匹配原因", "其他信息","POI导入结果"};
@@ -310,11 +329,15 @@ public class AsyncTask {
logger.error("session :"+ue.getMessage());
}
});
stringRedisTemplate.expire(importKey,10, TimeUnit.SECONDS);
if (StringUtils.isNotBlank(importKey)) {
stringRedisTemplate.expire(importKey,10, TimeUnit.SECONDS);
}
exportExcel(request, response, successList,MerchantPoiT.class, "POI导入-结果.xlsx");
} catch (Exception e) {
logger.error("导入模板失败:"+e.getMessage(),e);
stringRedisTemplate.expire(importKey,10, TimeUnit.SECONDS);
if (StringUtils.isNotBlank(importKey)) {
stringRedisTemplate.expire(importKey,10, TimeUnit.SECONDS);
}
}
}
}
@@ -455,7 +478,7 @@ public class AsyncTask {
public void importExcelPoiDataForNew(File file, MallUserInfo user, String importKey,HttpServletRequest request, HttpServletResponse response) {
// 需要验证
String[] needFields = new String[]{"门店ID","富茂系统商户ID","富茂系统省份", "富茂系统城市", "富茂系统地址","富茂系统经度", "富茂系统纬度"};
ExcelImportResult<MerchantPoiTNew> datalist = handleImportFile(null,file,MerchantPoiTNew.class,poiImportFields,needFields,new AsyncTask.PoiNewExcelHandler());
ExcelImportResult<MerchantPoiTNew> datalist = handleImportFile(importKey,file,MerchantPoiTNew.class,poiImportFields,needFields,new AsyncTask.PoiNewExcelHandler());
if (null == datalist) {
return ;
}
@@ -470,11 +493,15 @@ public class AsyncTask {
logger.error("session :"+ue.getMessage(),ue);
}
});
stringRedisTemplate.expire(importKey,10, TimeUnit.SECONDS);
if (StringUtils.isNotBlank(importKey)) {
stringRedisTemplate.expire(importKey,10, TimeUnit.SECONDS);
}
exportExcel(request, response, successList,MerchantPoiTNew.class, "POI导入-结果.xlsx");
} catch (Exception e) {
logger.error("导入模板失败:"+e.getMessage(),e);
stringRedisTemplate.expire(importKey,10, TimeUnit.SECONDS);
if (StringUtils.isNotBlank(importKey)) {
stringRedisTemplate.expire(importKey,10, TimeUnit.SECONDS);
}
}
}
}
@@ -539,7 +566,7 @@ public class AsyncTask {
WxMerchant merchant = wxMerchantService.initMerchantByPoi(user,poiBase.getPoiName(), poiBase.getPoiId(),poiBase.getPhone());
poiBase.setMerchantId(String.valueOf(merchant.getId()));
poiBase.setMerchantName(merchant.getName());
poiBase.setInitMerchantRemark("初始化商户成功.");
poiBase.setInitMerchantRemark("初始化商户成功."+StringUtils.trimToEmpty(merchant.getInitLog()));
}catch(Exception e) {
poiBase.setInitMerchantRemark("初始化商户失败."+e.getMessage());
}


+ 3
- 0
mallinkService/src/main/java/com/iformall/domain/po/WxMerchant.java View File

@@ -439,5 +439,8 @@ public class WxMerchant extends TenantEntity {
private Integer noCarVendor;
@TableField(exist = false)
private List<Long> merchantIds;
@TableField(exist = false)
private String initLog;

}

+ 2
- 2
mallinkService/src/main/java/com/iformall/service/impl/TtMerchantPoiServiceImpl.java View File

@@ -548,10 +548,10 @@ public class TtMerchantPoiServiceImpl implements TtMerchantPoiService {
public void exportTemplate(HttpServletRequest request, HttpServletResponse response, boolean isNew) {
if (isNew) {
List<MerchantPoiTNew> list = new ArrayList<MerchantPoiTNew>();
excelService.exportExcel(list, null, "POI匹配模板", MerchantPoiTNew.class, "POI匹配模板.xlsx", response, true);
excelService.exportExcel(list, null, "POI匹配模板", MerchantPoiTNew.class, "门店数据模板.xlsx", response, true);
}else {
List<MerchantPoiT> list = new ArrayList<MerchantPoiT>();
excelService.exportExcel(list, null, "POI匹配模板", MerchantPoiT.class, "POI匹配模板.xlsx", response, true);
excelService.exportExcel(list, null, "POI匹配模板", MerchantPoiT.class, "门店数据模板.xlsx", response, true);
}
}


+ 20
- 10
mallinkService/src/main/java/com/iformall/service/impl/WxMerchantServiceImpl.java View File

@@ -160,6 +160,10 @@ public class WxMerchantServiceImpl implements WxMerchantService {
@Autowired
private WxMallBuildingService wxMallBuildingService;
@Lazy
@Autowired
private WxMerchantBUserService wxMerchantBUserService;
@Autowired
@Qualifier("objectCommonRedisTemplate")
RedisTemplate<String, Object> redisTemplate;
@@ -2204,8 +2208,9 @@ public class WxMerchantServiceImpl implements WxMerchantService {
shop.setBuilding(buildingId);
shop.setFloor(floorId);
shop.setOperationArea("0");
shop.setBusinessId(0);
shop.setBusinessId(Constant.default_business);
shop.setRentUnit(2);
shop.setImgUrl("https://formall.oss-accelerate.aliyuncs.com/789/7428a764-fc00-46e4-b7b7-8b4a794e1c39.jpg");
Result result = wxShopService.saveOrUpdate(shop);
if (null == result) {
return null;
@@ -2270,15 +2275,20 @@ public class WxMerchantServiceImpl implements WxMerchantService {
}
//加管理员
if (StringUtils.isNotBlank(phone)) {
List<WxMerchantBUser> users = new ArrayList<WxMerchantBUser>();
WxMerchantBUser buser = new WxMerchantBUser();
buser.setName("管理员");
buser.setPhone(phone);
buser.setUserPwd("123456Abc");
buser.setIsAdmin(merchant.getIsAdmin());
users.add(buser);
merchant.setUsers(users);
this.updateMerchantAdmin(merchant) ;
boolean hasPhone = wxMerchantBUserService.hasPhone(user, phone);
if (hasPhone) {
merchant.setInitLog("手机号已存在,跳过创建管理员账号");
}else {
List<WxMerchantBUser> users = new ArrayList<WxMerchantBUser>();
WxMerchantBUser buser = new WxMerchantBUser();
buser.setName("管理员");
buser.setPhone(phone);
buser.setUserPwd("123456Abc");
buser.setIsAdmin(EnumYesOrNo.YES.getCode());
users.add(buser);
merchant.setUsers(users);
this.updateMerchantAdmin(merchant) ;
}
}
return merchant;
}

Loading…
Cancel
Save