From a2f5fd455b0dd3840d9aa55fa8b758f370fb0375 Mon Sep 17 00:00:00 2001 From: zhengfangyuan Date: Fri, 4 Sep 2020 18:50:32 +0800 Subject: [PATCH 1/2] fix --- pom.xml | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index afc14ae26..766f3cc5a 100644 --- a/pom.xml +++ b/pom.xml @@ -394,7 +394,13 @@ 1.4 - + + com.sun + tools + 1.8.0 + system + ${env.JAVA_HOME}/lib/tools.jar + From 91e4b44778143e6c2cae9c92152c592dd96ac38a Mon Sep 17 00:00:00 2001 From: xhxu Date: Fri, 4 Sep 2020 23:10:09 +0800 Subject: [PATCH 2/2] update --- .../service/impl/WxMerchantServiceImpl.java | 93 ++++++++++--------- 1 file changed, 48 insertions(+), 45 deletions(-) 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 08c209f92..1b0652574 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxMerchantServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxMerchantServiceImpl.java @@ -461,53 +461,56 @@ public class WxMerchantServiceImpl implements WxMerchantService { wxMerchant.setUpdateDate(date); wxMerchantMapper.updateById(wxMerchant); List shopIds = wxMerchant.getShopids(); - //如果原来店铺在商户里面有有效的合同,则不能操作 - List oldShopIds = wxMerchantShopMapper.findShopIds(wxMerchant.getId()); - List coldShopIds = new ArrayList(); - if (null != oldShopIds && oldShopIds.size() > 0) { - coldShopIds.addAll(oldShopIds); - oldShopIds.removeAll(shopIds); - if (null != oldShopIds && oldShopIds.size() > 0 ) { - for (Long osid : oldShopIds) { - WxRentContract wrc = new WxRentContract(); - wrc.setMerchantId(wxMerchant.getId()); - wrc.setQueryShopId(osid); - wrc.setStatuss(EnumRentContractStatus.getValidStatus()); - wrc.updateTenantInfo(wxMerchant); - List clist = wxRentContractService.findList(wrc); - if (null != clist && clist.size() > 0 ) { - return new ResultData(ErrorCode.MERCHANT_HASRENTCONTRACT.getCode(),"店铺["+osid+"]存在有效的合同,不能解除绑定."); - } - } - //都验证过了之后,先把之前的商铺释放,删除关系 - wxShopMapper.updateUnRentByIds(oldShopIds); - wxMerchantShopMapper.realDelByMerchantId(wxMerchant.getId(),oldShopIds); + if(null != shopIds && shopIds.size() > 0){ + //如果原来店铺在商户里面有有效的合同,则不能操作 + List oldShopIds = wxMerchantShopMapper.findShopIds(wxMerchant.getId()); + List coldShopIds = new ArrayList(); + if (null != oldShopIds && oldShopIds.size() > 0) { + coldShopIds.addAll(oldShopIds); + oldShopIds.removeAll(shopIds); + if (null != oldShopIds && oldShopIds.size() > 0 ) { + for (Long osid : oldShopIds) { + WxRentContract wrc = new WxRentContract(); + wrc.setMerchantId(wxMerchant.getId()); + wrc.setQueryShopId(osid); + wrc.setStatuss(EnumRentContractStatus.getValidStatus()); + wrc.updateTenantInfo(wxMerchant); + List clist = wxRentContractService.findList(wrc); + if (null != clist && clist.size() > 0 ) { + return new ResultData(ErrorCode.MERCHANT_HASRENTCONTRACT.getCode(),"店铺["+osid+"]存在有效的合同,不能解除绑定."); + } + } + //都验证过了之后,先把之前的商铺释放,删除关系 + wxShopMapper.updateUnRentByIds(oldShopIds); + wxMerchantShopMapper.realDelByMerchantId(wxMerchant.getId(),oldShopIds); + } + } + + if (null != shopIds) { + shopIds.removeAll(coldShopIds); + List currSIds = new ArrayList(); + for (Long sid: shopIds) { + if (!currSIds.contains(sid)) { + WxMerchantShop mcs = new WxMerchantShop(); + mcs.setMerchantId(wxMerchant.getId()); + mcs.setShopId(sid); + mcs.setIsDel(EnumDelStatus.NOT_DEL.getCode()); + mcs.setId(idWorker.nextId()); + mcs.updateTenantInfo(wxMerchant); + Date shopdate = new Date(); + mcs.setUpdateDate(shopdate); + mcs.setCreateDate(shopdate); + wxMerchantShopMapper.insert(mcs); + //更新商铺状态 + WxShop sh = wxShopMapper.selectById(sid); + sh.setStatus(EnumShopStatus.RENT.getCode()); + wxShopMapper.updateById(sh); + currSIds.add(sid); + } + } } } - - if (null != shopIds) { - shopIds.removeAll(coldShopIds); - List currSIds = new ArrayList(); - for (Long sid: shopIds) { - if (!currSIds.contains(sid)) { - WxMerchantShop mcs = new WxMerchantShop(); - mcs.setMerchantId(wxMerchant.getId()); - mcs.setShopId(sid); - mcs.setIsDel(EnumDelStatus.NOT_DEL.getCode()); - mcs.setId(idWorker.nextId()); - mcs.updateTenantInfo(wxMerchant); - Date shopdate = new Date(); - mcs.setUpdateDate(shopdate); - mcs.setCreateDate(shopdate); - wxMerchantShopMapper.insert(mcs); - //更新商铺状态 - WxShop sh = wxShopMapper.selectById(sid); - sh.setStatus(EnumShopStatus.RENT.getCode()); - wxShopMapper.updateById(sh); - currSIds.add(sid); - } - } - } + return new ResultData(Result.SUCCESS, "商户更新成功");