| @@ -4,9 +4,12 @@ import com.github.pagehelper.PageInfo; | |||||
| import com.iformall.annotation.SystemControllerLog; | import com.iformall.annotation.SystemControllerLog; | ||||
| import com.iformall.annotation.TenantIgnore; | import com.iformall.annotation.TenantIgnore; | ||||
| import com.iformall.annotation.UserDataRuleAnnotation; | import com.iformall.annotation.UserDataRuleAnnotation; | ||||
| import com.iformall.common.ErrorCode; | |||||
| import com.iformall.common.Result; | import com.iformall.common.Result; | ||||
| import com.iformall.common.ResultData; | import com.iformall.common.ResultData; | ||||
| import com.iformall.controller.base.BaseController; | import com.iformall.controller.base.BaseController; | ||||
| import com.iformall.domain.po.WxAppinfo; | |||||
| import com.iformall.domain.po.WxPayAccount; | |||||
| import com.iformall.domain.po.base.BaseEntity; | import com.iformall.domain.po.base.BaseEntity; | ||||
| import com.iformall.domain.po.WxMerchant; | import com.iformall.domain.po.WxMerchant; | ||||
| import com.iformall.domain.po.WxProfitSharingReceiver; | import com.iformall.domain.po.WxProfitSharingReceiver; | ||||
| @@ -16,8 +19,7 @@ import com.iformall.domain.vo.WxMerchantVo; | |||||
| import com.iformall.enums.EnumAppPlat; | import com.iformall.enums.EnumAppPlat; | ||||
| import com.iformall.enums.EnumMerchantStatus; | import com.iformall.enums.EnumMerchantStatus; | ||||
| import com.iformall.enums.EnumPayWay; | import com.iformall.enums.EnumPayWay; | ||||
| import com.iformall.service.QrCodeService; | |||||
| import com.iformall.service.WxMerchantService; | |||||
| import com.iformall.service.*; | |||||
| import com.iformall.utils.Constant; | import com.iformall.utils.Constant; | ||||
| import io.swagger.annotations.ApiImplicitParam; | import io.swagger.annotations.ApiImplicitParam; | ||||
| import io.swagger.annotations.ApiImplicitParams; | import io.swagger.annotations.ApiImplicitParams; | ||||
| @@ -45,6 +47,14 @@ public class WxMerchantController extends BaseController { | |||||
| @Autowired | @Autowired | ||||
| private QrCodeService qrCodeService; | private QrCodeService qrCodeService; | ||||
| @Autowired | |||||
| private WxAppinfoService wxAppinfoService; | |||||
| @Autowired | |||||
| private WxPayAccountService payAccountService; | |||||
| @Autowired | |||||
| private WxProfitSharingReceiverService wxProfitSharingReceiverService; | |||||
| @UserDataRuleAnnotation("merchant_list") | @UserDataRuleAnnotation("merchant_list") | ||||
| @ApiOperation("分页列表接口") | @ApiOperation("分页列表接口") | ||||
| @GetMapping("listVo") | @GetMapping("listVo") | ||||
| @@ -331,4 +341,45 @@ public class WxMerchantController extends BaseController { | |||||
| wxMerchantService.exportUserTradeList(wxMerchant, request,response); | wxMerchantService.exportUserTradeList(wxMerchant, request,response); | ||||
| } | } | ||||
| @ApiOperation("刷新进件页面") | |||||
| @GetMapping("/updateTtReceiver") | |||||
| @ApiImplicitParam(name = "id", value = "id", dataType = "Long", paramType = "query", required = true) | |||||
| @SystemControllerLog(description = "商户-删除") | |||||
| public ResultData updateTtReceiver(Long id) { | |||||
| logger.debug("[" + getIpAddr() + "] WxMerchantController::updateTtReceiver"); | |||||
| WxMerchant merchant = wxMerchantService.selectById(id); | |||||
| if(merchant == null){ | |||||
| return new ResultData(ErrorCode.SYS_PARAMETER_ERROR.getCode(),"请检查传递参数"); | |||||
| } | |||||
| WxAppinfo appInfo = wxAppinfoService.getCAppInfo(getTenantInfo(), EnumAppPlat.TOUTIAO); | |||||
| if(appInfo == null) { | |||||
| return new ResultData(ErrorCode.APP_ID_NOT_FOUND); | |||||
| } | |||||
| WxPayAccount payAcount = payAccountService.getById(appInfo.getPayId()); | |||||
| if(payAcount == null){ | |||||
| return new ResultData(ErrorCode.APP_ID_NOT_FOUND); | |||||
| } | |||||
| return wxProfitSharingReceiverService.updateTtReceiver(merchant,appInfo.getAppId(),payAcount.getMerchantApiKey()); | |||||
| } | |||||
| @ApiOperation("修改可用状态") | |||||
| @GetMapping("/updateTtReceiverIsUse") | |||||
| @ApiImplicitParam(name = "id", value = "id", dataType = "Long", paramType = "query", required = true) | |||||
| @SystemControllerLog(description = "商户-删除") | |||||
| public ResultData updateTtReceiverIsUse(Long id) { | |||||
| WxMerchant merchant = wxMerchantService.selectById(id); | |||||
| if(merchant == null){ | |||||
| return new ResultData(ErrorCode.SYS_PARAMETER_ERROR.getCode(),"请检查传递参数"); | |||||
| } | |||||
| WxAppinfo appInfo = wxAppinfoService.getCAppInfo(getTenantInfo(), EnumAppPlat.TOUTIAO); | |||||
| if(appInfo == null) { | |||||
| return new ResultData(ErrorCode.APP_ID_NOT_FOUND); | |||||
| } | |||||
| WxPayAccount payAcount = payAccountService.getById(appInfo.getPayId()); | |||||
| if(payAcount == null){ | |||||
| return new ResultData(ErrorCode.APP_ID_NOT_FOUND); | |||||
| } | |||||
| return wxProfitSharingReceiverService.updateTtReceiverIsUse(merchant,appInfo.getAppId(),payAcount.getMerchantApiKey()); | |||||
| } | |||||
| } | } | ||||
| @@ -0,0 +1,3 @@ | |||||
| ALTER TABLE `mallink`.`wx_profit_sharing_receiver` | |||||
| ADD COLUMN `tt_import_url` varchar(500) COMMENT '进件页面' AFTER `plat`, | |||||
| ADD COLUMN `tt_balance_url` varchar(500) COMMENT '余额页面' AFTER `tt_import_url`; | |||||
| @@ -0,0 +1,89 @@ | |||||
| package com.iformall.schedule; | |||||
| import com.iformall.domain.po.*; | |||||
| import com.iformall.enums.*; | |||||
| import com.iformall.mapper.WxMerchantMapper; | |||||
| import com.iformall.service.*; | |||||
| import org.slf4j.Logger; | |||||
| import org.slf4j.LoggerFactory; | |||||
| import org.springframework.beans.factory.annotation.Autowired; | |||||
| import org.springframework.scheduling.annotation.Scheduled; | |||||
| import org.springframework.stereotype.Component; | |||||
| import java.util.HashMap; | |||||
| import java.util.List; | |||||
| import java.util.Map; | |||||
| import java.util.stream.Collectors; | |||||
| /** | |||||
| * @author gongbiao | |||||
| */ | |||||
| @Component | |||||
| public class TtMerchantReciverSchedule { | |||||
| private final Logger logger = LoggerFactory.getLogger(this.getClass()); | |||||
| @Autowired | |||||
| private WxMallService wxMallService; | |||||
| @Autowired | |||||
| private WxMerchantMapper wxMerchantMapper; | |||||
| @Autowired | |||||
| private WxAppinfoService wxAppinfoService; | |||||
| @Autowired | |||||
| private WxPayAccountService payAccountService; | |||||
| @Autowired | |||||
| private WxProfitSharingReceiverService wxProfitSharingReceiverService; | |||||
| /** | |||||
| * 每天0点执行 | |||||
| */ | |||||
| @Scheduled(cron = "0 0 0 * * ?") | |||||
| // @Scheduled(cron = "0 */5 * * * *?") //测试五分钟执行 | |||||
| public void updateMerchantReciverSchedule() { | |||||
| WxMall mallQ = new WxMall(); | |||||
| mallQ.setSaleType(EnumSaleType.TT_ALL_ROUND.getCode()); | |||||
| List<WxMall> mallList = wxMallService.findList(mallQ); | |||||
| if(mallList == null || mallList.isEmpty()){ | |||||
| return; | |||||
| } | |||||
| List<String> tenantIds = mallList.stream().map(m -> m.getTenantId()).collect(Collectors.toList()); | |||||
| List<WxMerchant> merchants = wxMerchantMapper.findByTenantIds(tenantIds); | |||||
| if(merchants == null || merchants.isEmpty()){ | |||||
| return; | |||||
| } | |||||
| Map<String, String> appIdMap = new HashMap<>(); | |||||
| Map<String, String> payAccountKeyMap = new HashMap<>(); | |||||
| WxAppinfo appQ = new WxAppinfo(); | |||||
| appQ.setType(EnumAppType.C.getCode()); | |||||
| appQ.setPlat(EnumPayWay.PAY_WAY_TT.getPlat().getCode()); | |||||
| List<WxAppinfo> wxAppinfoList = wxAppinfoService.getList(appQ); | |||||
| for (WxAppinfo wxAppinfo:wxAppinfoList) { | |||||
| appIdMap.put(wxAppinfo.getTenantId(),wxAppinfo.getAppId()); | |||||
| WxPayAccount wxPayAccount = payAccountService.getById(wxAppinfo.getId()); | |||||
| payAccountKeyMap.put(wxAppinfo.getTenantId(),wxPayAccount.getApiKey()); | |||||
| } | |||||
| for (WxMerchant m:merchants) { | |||||
| try { | |||||
| wxProfitSharingReceiverService.updateTtReceiver(m,appIdMap.get(m.getTenantId()),payAccountKeyMap.get(m.getTenantId())); | |||||
| } catch (Exception e) { | |||||
| e.printStackTrace(); | |||||
| logger.error("TtMerchantReciverSchedule error.updateTtReceiver:"+m.getId(),e); | |||||
| } | |||||
| try { | |||||
| wxProfitSharingReceiverService.updateTtReceiverIsUse(m,appIdMap.get(m.getTenantId()),payAccountKeyMap.get(m.getTenantId())); | |||||
| } catch (Exception e) { | |||||
| e.printStackTrace(); | |||||
| logger.error("TtMerchantReciverSchedule error.updateTtReceiver:"+m.getId(),e); | |||||
| } | |||||
| } | |||||
| } | |||||
| } | |||||
| @@ -49,4 +49,10 @@ public class WxProfitSharingReceiver extends TenantEntity { | |||||
| @io.swagger.annotations.ApiModelProperty(value = "是否使用 0,不使用 1,使用", name = "isUse") | @io.swagger.annotations.ApiModelProperty(value = "是否使用 0,不使用 1,使用", name = "isUse") | ||||
| private Integer isUse; | private Integer isUse; | ||||
| @io.swagger.annotations.ApiModelProperty(value = "进件页面", name = "ttImportUrl") | |||||
| private String ttImportUrl; | |||||
| @io.swagger.annotations.ApiModelProperty(value = "余额页面", name = "ttBalanceUrl") | |||||
| private String ttBalanceUrl; | |||||
| } | } | ||||
| @@ -17,6 +17,7 @@ public interface WxMerchantMapper extends CommonMapper<WxMerchant, Long> { | |||||
| List<WxMerchant> findList(WxMerchant wxMerchant); | List<WxMerchant> findList(WxMerchant wxMerchant); | ||||
| List<Long> findIdList(WxMerchant wxMerchant); | List<Long> findIdList(WxMerchant wxMerchant); | ||||
| List<WxMerchant> findByTenantIds(@Param("tenantIds")List<String> tenantIds); | |||||
| List<WxMerchant> findIdNameList(WxMerchant wxMerchant); | List<WxMerchant> findIdNameList(WxMerchant wxMerchant); | ||||
| @@ -53,4 +53,7 @@ public interface WxProfitSharingReceiverService { | |||||
| void sendMsg(String phone, String account, String merchant, String time, Integer modelType, TenantEntity tenantEntity); | void sendMsg(String phone, String account, String merchant, String time, Integer modelType, TenantEntity tenantEntity); | ||||
| ResultData updateTtReceiver(WxMerchant merchant, String appId, String payAccountKey); | |||||
| ResultData updateTtReceiverIsUse(WxMerchant merchant, String appId, String payAccountKey); | |||||
| } | } | ||||
| @@ -251,6 +251,10 @@ public class WxProfitSharingOrderServiceImpl implements WxProfitSharingOrderServ | |||||
| psReceiverQ.setMerchantId(sharingOrderDto.getMerchantId()); | psReceiverQ.setMerchantId(sharingOrderDto.getMerchantId()); | ||||
| psReceiverQ.setSharingType(payServiceFactory.getPayShareAdapterService(payWay).getProfitSharingType()); | psReceiverQ.setSharingType(payServiceFactory.getPayShareAdapterService(payWay).getProfitSharingType()); | ||||
| psReceiverQ.setStatus(EnumProfitSharingReceiverStatus.PROFIT_SHARING_RECEIVER_STATUS_VALID.getCode()); | psReceiverQ.setStatus(EnumProfitSharingReceiverStatus.PROFIT_SHARING_RECEIVER_STATUS_VALID.getCode()); | ||||
| psReceiverQ.setPlat(EnumPayWay.getEnum(payWay).getPlat().getCode()); | |||||
| if(EnumAppPlat.TOUTIAO.getCode().equals(psReceiverQ.getPlat())){ | |||||
| psReceiverQ.setIsUse(EnumProfitSharingUse.YES.getCode()); | |||||
| } | |||||
| List<WxProfitSharingReceiver> psReceiverList = wxProfitSharingReceiverMapper.findList(psReceiverQ); | List<WxProfitSharingReceiver> psReceiverList = wxProfitSharingReceiverMapper.findList(psReceiverQ); | ||||
| if (psReceiverList.size() < 0 || psReceiverList.size() > 50) { | if (psReceiverList.size() < 0 || psReceiverList.size() > 50) { | ||||
| return new ResultData(ErrorCode.PROFIT_SHARING_RECEIVER_INVALID); | return new ResultData(ErrorCode.PROFIT_SHARING_RECEIVER_INVALID); | ||||
| @@ -16,6 +16,11 @@ import com.iformall.domain.po.WxProfitSharingReceiver; | |||||
| import com.iformall.domain.po.base.TenantEntity; | import com.iformall.domain.po.base.TenantEntity; | ||||
| import com.iformall.domain.po.msg.WxMsgRecord; | import com.iformall.domain.po.msg.WxMsgRecord; | ||||
| import com.iformall.domain.vo.WxMerchantVo; | import com.iformall.domain.vo.WxMerchantVo; | ||||
| import com.iformall.douyin.pay.DouYinPayHelper; | |||||
| import com.iformall.douyin.pay.enums.AppAddSubMerchantUrlType; | |||||
| import com.iformall.douyin.pay.orderQuery.QueryMerchantResult; | |||||
| import com.iformall.douyin.pay.preOrder.AppAddSubMerchant; | |||||
| import com.iformall.douyin.pay.preOrder.AppAddSubMerchantResult; | |||||
| import com.iformall.enums.*; | import com.iformall.enums.*; | ||||
| import com.iformall.mapper.WxAppinfoMapper; | import com.iformall.mapper.WxAppinfoMapper; | ||||
| import com.iformall.mapper.WxMerchantMapper; | import com.iformall.mapper.WxMerchantMapper; | ||||
| @@ -88,12 +93,16 @@ public class WxProfitSharingReceiverServiceImpl implements WxProfitSharingReceiv | |||||
| @Override | @Override | ||||
| public void saveOrUpdate(WxProfitSharingReceiver record) { | public void saveOrUpdate(WxProfitSharingReceiver record) { | ||||
| Date date = new Date(); | |||||
| if (record.getId() == null) { | if (record.getId() == null) { | ||||
| //record.setId(UUID.randomUUID().toString().replaceAll("-", "")); | //record.setId(UUID.randomUUID().toString().replaceAll("-", "")); | ||||
| final IdWorker idWorker = IdWorker.get(); | final IdWorker idWorker = IdWorker.get(); | ||||
| record.setId(idWorker.nextId()); | record.setId(idWorker.nextId()); | ||||
| record.setCreateTime(date); | |||||
| record.setUpdateTime(date); | |||||
| wxProfitSharingReceiverMapper.insert(record); | wxProfitSharingReceiverMapper.insert(record); | ||||
| } else { | } else { | ||||
| record.setUpdateTime(date); | |||||
| wxProfitSharingReceiverMapper.updateById(record); | wxProfitSharingReceiverMapper.updateById(record); | ||||
| } | } | ||||
| } | } | ||||
| @@ -104,14 +113,19 @@ public class WxProfitSharingReceiverServiceImpl implements WxProfitSharingReceiv | |||||
| } | } | ||||
| //todo 微信和抖音分账可能存在两个分账信息 | |||||
| @Override | @Override | ||||
| public WxProfitSharingReceiver findReceiver(WxMerchant merchant) { | public WxProfitSharingReceiver findReceiver(WxMerchant merchant) { | ||||
| WxProfitSharingReceiver receiver = new WxProfitSharingReceiver(); | WxProfitSharingReceiver receiver = new WxProfitSharingReceiver(); | ||||
| receiver.updateTenantInfo(merchant); | receiver.updateTenantInfo(merchant); | ||||
| receiver.setMerchantId(merchant.getId()); | receiver.setMerchantId(merchant.getId()); | ||||
| receiver.setSharingType(EnumProfitSharingType.PROFIT_SHARING_TYPE_WECHAT.getCode()); | |||||
| // receiver.setSharingType(EnumProfitSharingType.PROFIT_SHARING_TYPE_WECHAT.getCode()); | |||||
| receiver.setStatus(EnumProfitSharingReceiverStatus.PROFIT_SHARING_RECEIVER_STATUS_VALID.getCode()); | receiver.setStatus(EnumProfitSharingReceiverStatus.PROFIT_SHARING_RECEIVER_STATUS_VALID.getCode()); | ||||
| return wxProfitSharingReceiverMapper.selectOne(new QueryWrapper(receiver)); | |||||
| List<WxProfitSharingReceiver> list = wxProfitSharingReceiverMapper.findList(receiver); | |||||
| if(list != null && list.size() > 0){ | |||||
| return list.get(0); | |||||
| } | |||||
| return null; | |||||
| } | } | ||||
| @@ -230,6 +244,84 @@ public class WxProfitSharingReceiverServiceImpl implements WxProfitSharingReceiv | |||||
| logger.info("》》》》》》》》》》》"); | logger.info("》》》》》》》》》》》"); | ||||
| } | } | ||||
| @Override | |||||
| public ResultData updateTtReceiver(WxMerchant merchant, String appId, String payAccountKey) { | |||||
| if(merchant == null || StringUtils.isBlank(appId) || StringUtils.isBlank(payAccountKey)) { | |||||
| return new ResultData(ErrorCode.SYS_PARAMETER_ERROR.getCode(),"请检查传递参数"); | |||||
| } | |||||
| WxProfitSharingReceiver oldReceiver = new WxProfitSharingReceiver(); | |||||
| oldReceiver.updateTenantInfo(merchant); | |||||
| oldReceiver.setMerchantId(merchant.getId()); | |||||
| oldReceiver.setSharingType(EnumProfitSharingType.PROFIT_SHARING_TYPE_DOUYIN.getCode()); | |||||
| oldReceiver.setPlat(EnumAppPlat.TOUTIAO.getCode()); | |||||
| WxProfitSharingReceiver wxProfitSharingReceiver = wxProfitSharingReceiverMapper.selectOne(new QueryWrapper(oldReceiver)); | |||||
| if(wxProfitSharingReceiver == null){ | |||||
| wxProfitSharingReceiver = oldReceiver; | |||||
| wxProfitSharingReceiver.setReceiverType(EnumProfitSharingReceiverType.PROFIT_SHARING_RECEIVER_MERCHANT_ID.getCode()); | |||||
| wxProfitSharingReceiver.setReceiverAccount("0"); | |||||
| wxProfitSharingReceiver.setIsUse(EnumProfitSharingUse.APPLY.getCode()); | |||||
| wxProfitSharingReceiver.setStatus(EnumProfitSharingReceiverStatus.PROFIT_SHARING_RECEIVER_STATUS_VALID.getCode()); | |||||
| this.saveOrUpdate(wxProfitSharingReceiver); | |||||
| } | |||||
| //进件页面 | |||||
| AppAddSubMerchantResult improt_URLResult = appAddSubMerchant(appId,payAccountKey,merchant.getId().toString(),AppAddSubMerchantUrlType.improt_URL); | |||||
| if(improt_URLResult.isSuccess()){ | |||||
| wxProfitSharingReceiver.setReceiverAccount(improt_URLResult.getMerchantId()); | |||||
| wxProfitSharingReceiver.setTtImportUrl(improt_URLResult.getUrl()); | |||||
| }else{ | |||||
| logger.error("获取进件页面 error{}"+improt_URLResult.getMsg()); | |||||
| } | |||||
| //余额页面 | |||||
| AppAddSubMerchantResult balance_URLResult = appAddSubMerchant(appId,payAccountKey,merchant.getId().toString(),AppAddSubMerchantUrlType.Balance_URL); | |||||
| if(balance_URLResult.isSuccess()){ | |||||
| wxProfitSharingReceiver.setReceiverAccount(improt_URLResult.getMerchantId()); | |||||
| wxProfitSharingReceiver.setTtBalanceUrl(balance_URLResult.getMerchantId()); | |||||
| }else{ | |||||
| logger.error("获取余额页面 error{}"+improt_URLResult.getMsg()); | |||||
| } | |||||
| this.saveOrUpdate(wxProfitSharingReceiver); | |||||
| return new ResultData(); | |||||
| } | |||||
| @Override | |||||
| public ResultData updateTtReceiverIsUse(WxMerchant merchant, String appId, String payAccountKey) { | |||||
| if(merchant == null || StringUtils.isBlank(appId) || StringUtils.isBlank(payAccountKey)) { | |||||
| return new ResultData(ErrorCode.SYS_PARAMETER_ERROR.getCode(),"请检查传递参数"); | |||||
| } | |||||
| WxProfitSharingReceiver oldReceiver = new WxProfitSharingReceiver(); | |||||
| oldReceiver.updateTenantInfo(merchant); | |||||
| oldReceiver.setMerchantId(merchant.getId()); | |||||
| oldReceiver.setSharingType(EnumProfitSharingType.PROFIT_SHARING_TYPE_DOUYIN.getCode()); | |||||
| oldReceiver.setPlat(EnumAppPlat.TOUTIAO.getCode()); | |||||
| WxProfitSharingReceiver wxProfitSharingReceiver = wxProfitSharingReceiverMapper.selectOne(new QueryWrapper(oldReceiver)); | |||||
| if(wxProfitSharingReceiver == null){ | |||||
| return new ResultData(ErrorCode.SYS_PARAMETER_ERROR.getCode(),"未找到分账信息"); | |||||
| } | |||||
| QueryMerchantResult queryMerchantResult = DouYinPayHelper.queryMerchantStatus(appId, payAccountKey, wxProfitSharingReceiver.getReceiverAccount(), wxProfitSharingReceiver.getMerchantId().toString(), null); | |||||
| if(queryMerchantResult != null){ | |||||
| if(queryMerchantResult.getWx().intValue() != 1){ | |||||
| return new ResultData(ErrorCode.SYS_PARAMETER_ERROR.getCode(),"微信渠道未进件成功!"); | |||||
| } | |||||
| if(queryMerchantResult.getAlipay().intValue() != 1){ | |||||
| return new ResultData(ErrorCode.SYS_PARAMETER_ERROR.getCode(),"支付宝渠道未进件成功!"); | |||||
| } | |||||
| wxProfitSharingReceiver.setIsUse(EnumProfitSharingUse.YES.getCode()); | |||||
| this.saveOrUpdate(wxProfitSharingReceiver); | |||||
| return new ResultData(); | |||||
| }else{ | |||||
| return new ResultData(ErrorCode.SYS_SERVER_ERROR.getCode(),"查询进件状态出错!"); | |||||
| } | |||||
| } | |||||
| private AppAddSubMerchantResult appAddSubMerchant(String appId, String payAccountKey, String merchantId, AppAddSubMerchantUrlType appAddSubMerchantUrlType){ | |||||
| AppAddSubMerchant appAddSubMerchant = new AppAddSubMerchant(); | |||||
| appAddSubMerchant.setAppId(appId); | |||||
| appAddSubMerchant.setSalt(payAccountKey); | |||||
| appAddSubMerchant.setSubMerchantId(merchantId); | |||||
| appAddSubMerchant.setUrlType(appAddSubMerchantUrlType.getCode()); | |||||
| return DouYinPayHelper.appAddSubMerchant(appAddSubMerchant); | |||||
| } | |||||
| @Override | @Override | ||||
| public ResultData delReceiver(WxProfitSharingReceiver receiver, Integer send) { | public ResultData delReceiver(WxProfitSharingReceiver receiver, Integer send) { | ||||
| WxAppinfo appInfo = new WxAppinfo(); | WxAppinfo appInfo = new WxAppinfo(); | ||||
| @@ -284,6 +376,7 @@ public class WxProfitSharingReceiverServiceImpl implements WxProfitSharingReceiv | |||||
| oldReceiver.setMerchantId(merchant.getId()); | oldReceiver.setMerchantId(merchant.getId()); | ||||
| oldReceiver.setSharingType(EnumProfitSharingType.PROFIT_SHARING_TYPE_WECHAT.getCode()); | oldReceiver.setSharingType(EnumProfitSharingType.PROFIT_SHARING_TYPE_WECHAT.getCode()); | ||||
| oldReceiver.setStatus(EnumProfitSharingReceiverStatus.PROFIT_SHARING_RECEIVER_STATUS_VALID.getCode()); | oldReceiver.setStatus(EnumProfitSharingReceiverStatus.PROFIT_SHARING_RECEIVER_STATUS_VALID.getCode()); | ||||
| oldReceiver.setPlat(payWay.getPlat().getCode()); | |||||
| List<WxProfitSharingReceiver> delList = wxProfitSharingReceiverMapper.selectList(new QueryWrapper(oldReceiver)); | List<WxProfitSharingReceiver> delList = wxProfitSharingReceiverMapper.selectList(new QueryWrapper(oldReceiver)); | ||||
| oldReceiver.setReceiverAccount(receiver.getReceiverAccount()); | oldReceiver.setReceiverAccount(receiver.getReceiverAccount()); | ||||
| oldReceiver.setReceiverType(receiver.getReceiverType()); | oldReceiver.setReceiverType(receiver.getReceiverType()); | ||||
| @@ -182,6 +182,20 @@ | |||||
| from wx_merchant m | from wx_merchant m | ||||
| <include refid="dynamicWhereConditions"/> | <include refid="dynamicWhereConditions"/> | ||||
| </select> | </select> | ||||
| <select id="findByTenantIds" parameterType="java.util.Map" resultMap="BaseResultMap"> | |||||
| select | |||||
| <include refid="allColumns"/> | |||||
| from wx_merchant m | |||||
| where m.is_del = 0 | |||||
| and m.`status` = 1 | |||||
| <if test=" null != tenantIds "> | |||||
| and m.tenant_id in | |||||
| <foreach collection="tenantIds" index="index" item="tenantId" open="(" separator="," close=")"> | |||||
| #{tenantId} | |||||
| </foreach> | |||||
| </if> | |||||
| </select> | |||||
| <select id="findIdList" parameterType="com.iformall.domain.po.WxMerchant" resultType="Long"> | <select id="findIdList" parameterType="com.iformall.domain.po.WxMerchant" resultType="Long"> | ||||
| select id | select id | ||||
| @@ -20,7 +20,7 @@ | |||||
| </resultMap> | </resultMap> | ||||
| <sql id="allColumns"> | <sql id="allColumns"> | ||||
| `id`,`tenant_id`,`parent_tenant_id`,`merchant_id`,`receiver_type`,`receiver_account`,`receiver_comments`,`create_time`,`update_time`,`sharing_type`,`bank_no`,`true_name`,`bank_code`,`status`,`parameter` | |||||
| `id`,`tenant_id`,`parent_tenant_id`,`merchant_id`,`receiver_type`,`receiver_account`,`receiver_comments`,`create_time`,`update_time`,`sharing_type`,`bank_no`,`true_name`,`bank_code`,`status`,`parameter`,`is_use` | |||||
| </sql> | </sql> | ||||
| <sql id="dynamicWhereConditions"> | <sql id="dynamicWhereConditions"> | ||||
| @@ -93,6 +93,11 @@ | |||||
| </if> | </if> | ||||
| <if test=" null !=isUse "> | |||||
| and `is_use` = #{isUse} | |||||
| </if> | |||||
| <if test=" null != ids "> | <if test=" null != ids "> | ||||
| and id in | and id in | ||||
| <foreach collection="ids" index="index" item="idItem" open="(" separator="," close=")"> | <foreach collection="ids" index="index" item="idItem" open="(" separator="," close=")"> | ||||