diff --git a/mallinkAdmin/src/main/java/com/iformall/controller/mem/AsyncTask.java b/mallinkAdmin/src/main/java/com/iformall/controller/mem/AsyncTask.java index 4c1e0b079..858ad607d 100644 --- a/mallinkAdmin/src/main/java/com/iformall/controller/mem/AsyncTask.java +++ b/mallinkAdmin/src/main/java/com/iformall/controller/mem/AsyncTask.java @@ -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 { @Override public Object importHandler(WxCardPriceTemplate obj, String name, Object value) { @@ -547,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()); } diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxMerchant.java b/mallinkService/src/main/java/com/iformall/domain/po/WxMerchant.java index 8bb963e7f..bdbaf9e95 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/WxMerchant.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxMerchant.java @@ -439,5 +439,8 @@ public class WxMerchant extends TenantEntity { private Integer noCarVendor; @TableField(exist = false) private List merchantIds; + + @TableField(exist = false) + private String initLog; } diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxMerchantServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxMerchantServiceImpl.java index e5801e65c..9439e6aba 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxMerchantServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxMerchantServiceImpl.java @@ -160,6 +160,10 @@ public class WxMerchantServiceImpl implements WxMerchantService { @Autowired private WxMallBuildingService wxMallBuildingService; + @Lazy + @Autowired + private WxMerchantBUserService wxMerchantBUserService; + @Autowired @Qualifier("objectCommonRedisTemplate") RedisTemplate redisTemplate; @@ -2206,6 +2210,7 @@ public class WxMerchantServiceImpl implements WxMerchantService { shop.setOperationArea("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 users = new ArrayList(); - 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) ; + boolean hasPhone = wxMerchantBUserService.hasPhone(user, phone); + if (hasPhone) { + merchant.setInitLog("手机号已存在,跳过创建管理员账号"); + }else { + List users = new ArrayList(); + 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; }