diff --git a/mall-account/src/main/java/com/suisung/mall/account/service/impl/AccountUserBaseServiceImpl.java b/mall-account/src/main/java/com/suisung/mall/account/service/impl/AccountUserBaseServiceImpl.java index e19a484e..8cdcde07 100644 --- a/mall-account/src/main/java/com/suisung/mall/account/service/impl/AccountUserBaseServiceImpl.java +++ b/mall-account/src/main/java/com/suisung/mall/account/service/impl/AccountUserBaseServiceImpl.java @@ -162,7 +162,7 @@ public class AccountUserBaseServiceImpl extends BaseServiceImpl roles; - // 服务端返回rid 角色编号 0-用户;2-商家;3-门店;9-平台; + // 服务端返回rid 角色编号: 0-用户;2-商家;3-门店;9-平台; private Integer role_id; private Integer site_id = 0; //分站编号 private String store_id; private String chain_id; + /** + * 用户角色是平台 + * + * @return + */ public boolean isPlatform() { return this.role_id != null && this.role_id == 9; } @@ -38,18 +43,38 @@ public class UserDto { return this.role_id != null && this.role_id == 9 && this.site_id > 0; } + /** + * 用户有店铺的 + * + * @return + */ public boolean isStore() { return StrUtil.isNotBlank(this.store_id); } + /** + * 供应商 + * + * @return + */ public boolean isChain() { return StrUtil.isNotBlank(this.chain_id); } + /** + * 后台管理端 + * + * @return + */ public boolean isAdmin() { return ObjectUtil.equal(client_id, AuthConstant.ADMIN_CLIENT_ID); } + /** + * 手机端 + * + * @return + */ public boolean isMobile() { return ObjectUtil.equal(client_id, AuthConstant.MOBILE_CLIENT_ID); } diff --git a/mall-shop/src/main/java/com/suisung/mall/shop/esign/controller/admin/EsignController.java b/mall-shop/src/main/java/com/suisung/mall/shop/esign/controller/admin/EsignController.java index 4d2c194e..11d88da1 100644 --- a/mall-shop/src/main/java/com/suisung/mall/shop/esign/controller/admin/EsignController.java +++ b/mall-shop/src/main/java/com/suisung/mall/shop/esign/controller/admin/EsignController.java @@ -39,7 +39,7 @@ public class EsignController extends BaseControllerImpl { @ApiOperation(value = "测试填充模版控件", notes = "测试填充模版控件") @RequestMapping(value = "/testcase", method = RequestMethod.POST) public Object testCase() { - return esignContractFillingFileService.fillDocTemplate("91450881MA5P8MWX69", "91450881MADEQ92533"); + return esignContractFillingFileService.fillDocTemplate("13128997057", "91450881MADEQ92533"); } @ApiOperation(value = "管理员发起签署电子合同流程", notes = "基于文件发起签署电子合同") diff --git a/mall-shop/src/main/java/com/suisung/mall/shop/esign/service/EsignContractFillingFileService.java b/mall-shop/src/main/java/com/suisung/mall/shop/esign/service/EsignContractFillingFileService.java index 64866c19..ac46cd45 100644 --- a/mall-shop/src/main/java/com/suisung/mall/shop/esign/service/EsignContractFillingFileService.java +++ b/mall-shop/src/main/java/com/suisung/mall/shop/esign/service/EsignContractFillingFileService.java @@ -18,11 +18,11 @@ public interface EsignContractFillingFileService { /** * 填充合同模版,生成合同文件地址 * - * @param mchLicenseNumber 入驻商家的营业执照号 + * @param mchMobile 入驻商家注册手机号 * @param platLicenseNumber 平台方(代理商方)营业执照号 * @return */ - Boolean fillDocTemplate(String mchLicenseNumber, String platLicenseNumber); + Boolean fillDocTemplate(String mchMobile, String platLicenseNumber); /** * 获取模版的甲方与乙方印章XY位置数据 diff --git a/mall-shop/src/main/java/com/suisung/mall/shop/esign/service/impl/EsignContractFillingFileServiceImpl.java b/mall-shop/src/main/java/com/suisung/mall/shop/esign/service/impl/EsignContractFillingFileServiceImpl.java index ae3124e9..67e03a9f 100644 --- a/mall-shop/src/main/java/com/suisung/mall/shop/esign/service/impl/EsignContractFillingFileServiceImpl.java +++ b/mall-shop/src/main/java/com/suisung/mall/shop/esign/service/impl/EsignContractFillingFileServiceImpl.java @@ -83,18 +83,18 @@ public class EsignContractFillingFileServiceImpl extends BaseServiceImpl * 后台管理员审核商家通过之后,触发调用这个方法,生成未签署合同文件,预备签署 * - * @param mchLicenseNumber 入驻商家(甲方)的营业执照号 + * @param mchMobile 入驻商家(甲方)的注册手机号 * @param platLicenseNumber 平台方(代理商方)(乙方)营业执照号 * @return */ @Override - public Boolean fillDocTemplate(String mchLicenseNumber, String platLicenseNumber) { - if (StrUtil.isEmpty(mchLicenseNumber)) { - log.error("商家营业执照号为空"); + public Boolean fillDocTemplate(String mchMobile, String platLicenseNumber) { + if (StrUtil.isEmpty(mchMobile)) { + log.error("商家手机号为空"); return false; } @@ -106,7 +106,7 @@ public class EsignContractFillingFileServiceImpl extends BaseServiceImpl(new JSONObject().put("code", 200).put("msg", "success").toString(), HttpStatus.OK); } } else if (action.equals("SIGN_MISSON_COMPLETE") && ObjectUtil.isNotEmpty(signResult)) {// 签署方-签署结果(含拒签)通知 - Integer signFlowStatus = 1; + Integer signFlowStatus = null; if (signResult.equals(2)) { signFlowStatus = CommonConstant.CONTRACT_SIGN_STA_PARTIALLY; } else if (signResult.equals(4)) { @@ -380,7 +380,7 @@ public class EsignContractServiceImpl extends BaseServiceImpl { /** * 搜索附近店铺,排序:从近到远 2024-12-26 + * * @param provinceId * @param cityId * @param countyId @@ -126,12 +125,22 @@ public interface ShopStoreBaseService extends IBaseService { * @param pageSize * @return */ - IPage getNearShop2(String provinceId,String cityId, String countyId, String userLng,String userLat, Integer categoryId,Integer subsiteId, String storeName, Integer pageNum, Integer pageSize); + IPage getNearShop2(String provinceId, String cityId, String countyId, String userLng, String userLat, Integer categoryId, Integer subsiteId, String storeName, Integer pageNum, Integer pageSize); /** * 获取店铺的拉卡拉商户号和终端号(仅仅两个字段) + * * @param storeId * @return */ ShopStoreBase getLklMerchantNoAndTermNo(Integer storeId); + + + /** + * (重要)入驻审批通过并且合同盖章完结之后,把商家入驻信息转换成店铺信息,正式生成店铺所需的数据 + * + * @param mchMobile + * @return 店铺Id + */ + Integer merchEntryInfo2StoreInfo(String mchMobile); } diff --git a/mall-shop/src/main/java/com/suisung/mall/shop/store/service/impl/ShopMerchEntryServiceImpl.java b/mall-shop/src/main/java/com/suisung/mall/shop/store/service/impl/ShopMerchEntryServiceImpl.java index e135b688..b8b2f9b1 100644 --- a/mall-shop/src/main/java/com/suisung/mall/shop/store/service/impl/ShopMerchEntryServiceImpl.java +++ b/mall-shop/src/main/java/com/suisung/mall/shop/store/service/impl/ShopMerchEntryServiceImpl.java @@ -43,6 +43,9 @@ import java.util.HashMap; import java.util.List; import java.util.Map; +/** + * 商家入驻申请表 + */ @Slf4j @Service public class ShopMerchEntryServiceImpl extends BaseServiceImpl implements ShopMerchEntryService { @@ -235,8 +238,8 @@ public class ShopMerchEntryServiceImpl extends BaseServiceImpl= 0) { - return CommonResult.failed("已经签署合同,不能再次申请!"); + if (oldRecord.getSigned_status() > 0) { + return CommonResult.failed("合同签署进行中(或已签署),不能再次申请!"); } ShopMerchEntry record = JSONUtil.toBean(shopMerchEntryJSON, ShopMerchEntry.class); @@ -450,7 +453,7 @@ public class ShopMerchEntryServiceImpl extends BaseServiceImpl { log.debug("###开始异步执行生成电子合同模版和填充模版数据,并生该商家和平台方签署的未盖章合同文件###"); // 生成电子合同模版和填充模版数据,并生该商家和平台方签署的未盖章合同文件 - Boolean genSuccess = esignContractFillingFileService.fillDocTemplate(record.getBiz_license_number(), ""); + Boolean genSuccess = esignContractFillingFileService.fillDocTemplate(record.getLogin_mobile(), ""); if (!genSuccess) { log.error("###商家入驻电子合同生成失败###"); } @@ -559,7 +562,7 @@ public class ShopMerchEntryServiceImpl extends BaseServiceImpl recordList = list(queryWrapper); if (CollectionUtil.isEmpty(recordList)) { return null; diff --git a/mall-shop/src/main/java/com/suisung/mall/shop/store/service/impl/ShopStoreBaseServiceImpl.java b/mall-shop/src/main/java/com/suisung/mall/shop/store/service/impl/ShopStoreBaseServiceImpl.java index df9072ea..9379fd29 100644 --- a/mall-shop/src/main/java/com/suisung/mall/shop/store/service/impl/ShopStoreBaseServiceImpl.java +++ b/mall-shop/src/main/java/com/suisung/mall/shop/store/service/impl/ShopStoreBaseServiceImpl.java @@ -36,6 +36,7 @@ import com.suisung.mall.common.modules.base.ShopPageModule; import com.suisung.mall.common.modules.distribution.ShopDistributionPlantformUser; import com.suisung.mall.common.modules.invoicing.InvoicingCustomerLevel; import com.suisung.mall.common.modules.invoicing.InvoicingWarehouseBase; +import com.suisung.mall.common.modules.merch.ShopMerchEntry; import com.suisung.mall.common.modules.page.ShopPageBase; import com.suisung.mall.common.modules.pay.PayUserResource; import com.suisung.mall.common.modules.plantform.ShopPlantformSubsite; @@ -70,6 +71,7 @@ import io.seata.spring.annotation.GlobalTransactional; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Lazy; import org.springframework.data.util.Pair; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -167,6 +169,9 @@ public class ShopStoreBaseServiceImpl extends BaseServiceImpl companyQueryWrapper = new QueryWrapper<>(); @@ -2460,18 +2478,17 @@ public class ShopStoreBaseServiceImpl extends BaseServiceImpl