| @@ -114,6 +114,7 @@ public enum ErrorCode{ | |||||
| MERCHANT_HASRENTCONTRACT(2017,"该商户存在计租中合同"), | MERCHANT_HASRENTCONTRACT(2017,"该商户存在计租中合同"), | ||||
| MERCHANT_CODE_IS_FOUND(2018, "商户编码已存在"), | MERCHANT_CODE_IS_FOUND(2018, "商户编码已存在"), | ||||
| MERCHANT_BRAND_IS_FOUND(2019, "品牌商户已存在"), | MERCHANT_BRAND_IS_FOUND(2019, "品牌商户已存在"), | ||||
| MERCHANT_ADMIN_IS_FOUND(20020, "商管商户已存在"), | |||||
| /** | /** | ||||
| * 券 | * 券 | ||||
| @@ -31,6 +31,7 @@ public interface WxMerchantMapper extends CommonMapper<WxMerchant, Long> { | |||||
| int hasMerchant(WxMerchant wxMerchant); | int hasMerchant(WxMerchant wxMerchant); | ||||
| int hasMerchantEncode(WxMerchant wxMerchant); | int hasMerchantEncode(WxMerchant wxMerchant); | ||||
| int hasMerchantBrand(WxMerchant wxMerchant); | int hasMerchantBrand(WxMerchant wxMerchant); | ||||
| int hasMerchantIsAdmin(WxMerchant wxMerchant); | |||||
| void updateCreditLocked(WxMerchant wxMerchant); | void updateCreditLocked(WxMerchant wxMerchant); | ||||
| @@ -162,6 +162,7 @@ public interface WxMerchantService { | |||||
| boolean hasMerchant(WxMerchant wxMerchant); | boolean hasMerchant(WxMerchant wxMerchant); | ||||
| boolean hasMerchantEncode(WxMerchant wxMerchant); | boolean hasMerchantEncode(WxMerchant wxMerchant); | ||||
| boolean hasMerchantBrand(WxMerchant wxMerchant); | boolean hasMerchantBrand(WxMerchant wxMerchant); | ||||
| boolean hasMerchantIsAdmin(WxMerchant wxMerchant); | |||||
| WxMerchant getMerchantByEncode(String encode); | WxMerchant getMerchantByEncode(String encode); | ||||
| @@ -909,7 +909,12 @@ public class WxMerchantServiceImpl implements WxMerchantService { | |||||
| if (wxMerchant.getId() == null) { | if (wxMerchant.getId() == null) { | ||||
| return new ResultData(ErrorCode.MERCHANT_INFO_NOT_FOUND); | return new ResultData(ErrorCode.MERCHANT_INFO_NOT_FOUND); | ||||
| } | } | ||||
| if(!EnumMerchantAdmin.PUBLIC_ADMIN.getCode().equals(wxMerchant.getIsAdmin())){ | |||||
| if(EnumMerchantAdmin.PUBLIC_ADMIN.getCode().equals(wxMerchant.getIsAdmin())){ | |||||
| //检查商管商户 | |||||
| if (hasMerchantIsAdmin(wxMerchant)) { | |||||
| return new ResultData(ErrorCode.MERCHANT_ADMIN_IS_FOUND); | |||||
| } | |||||
| }else{ | |||||
| //删除关联的其他门店用户 | //删除关联的其他门店用户 | ||||
| wxMerchantBUserMapper.deleteOtherMerchant(wxMerchant.getTenantId(),wxMerchant.getId().toString()); | wxMerchantBUserMapper.deleteOtherMerchant(wxMerchant.getTenantId(),wxMerchant.getId().toString()); | ||||
| } | } | ||||
| @@ -1045,6 +1050,12 @@ public class WxMerchantServiceImpl implements WxMerchantService { | |||||
| return false; | return false; | ||||
| } | } | ||||
| @Override | |||||
| public boolean hasMerchantIsAdmin(WxMerchant wxMerchant) { | |||||
| wxMerchant.setStatus(EnumMerchantStatus.VALID.getCode()); | |||||
| return wxMerchantMapper.hasMerchantIsAdmin(wxMerchant) > 0 ? true : false; | |||||
| } | |||||
| @Override | @Override | ||||
| public WxMerchant getMerchantByEncode(String encode){ | public WxMerchant getMerchantByEncode(String encode){ | ||||
| return wxMerchantMapper.getMerchantByEncode(encode); | return wxMerchantMapper.getMerchantByEncode(encode); | ||||
| @@ -331,6 +331,16 @@ | |||||
| </if> | </if> | ||||
| </select> | </select> | ||||
| <select id="hasMerchantIsAdmin" parameterType="com.iformall.domain.po.WxMerchant" resultType="int"> | |||||
| select count(1) from wx_merchant where `is_admin`=#{isAdmin} | |||||
| <if test=" null != status "> | |||||
| and `status` = #{status} | |||||
| </if> | |||||
| <if test=" null != id"> | |||||
| and `id` != #{id} | |||||
| </if> | |||||
| </select> | |||||
| <update id="updateCreditLocked" parameterType="com.iformall.domain.po.WxMerchant"> | <update id="updateCreditLocked" parameterType="com.iformall.domain.po.WxMerchant"> | ||||
| update wx_merchant set credit_locked = #{creditLocked} where tenant_id = #{tenantId} | update wx_merchant set credit_locked = #{creditLocked} where tenant_id = #{tenantId} | ||||