WXCustBindingServiceImpl.java 3.14 KB
package com.zteits.pay.biz;

import org.apache.commons.lang3.StringUtils;
import com.zteits.clouds.api.apibase.bean.BizResult;
import com.zteits.clouds.api.apibase.constants.ErrorType;
import com.zteits.clouds.api.apibase.exception.BizException;
import com.zteits.clouds.api.dto.pay.TdCCustPersonDTO;
import com.zteits.clouds.api.dto.wx.dto.TdBCustBindingDTO;
import com.zteits.clouds.api.dto.wx.param.CustInfoQueryByOpenIdRequest;
import com.zteits.clouds.api.dto.wx.param.CustPersonBindInfoInsertRequest;
import com.zteits.clouds.api.dto.wx.param.WXPhoneRandCodeSendRequest;
import com.zteits.clouds.api.service.wx.WXCustBindingService;
import com.zteits.pay.dao.WXCustBindingDao;
import com.zteits.pay.domain.TdBCustBinding;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;

/**
 * Copyright: Copyright (c) 2017  zteits
 *
 * @ClassName: com.zteits.pay.biz
 * @Description:
 * @version: v1.0.0
 * @author: atao
 * @date: 2017/9/9   下午1:04
 * Modification History:
 * Date         Author          Version      Description
 * ---------------------------------------------------------*
 * 2017/9/9      atao          v1.0.0          创建
 */
@Component
public class WXCustBindingServiceImpl implements WXCustBindingService {

    @Autowired
    private WXCustBindingDao wxCustBindingDao;

    @Override
    public BizResult<Boolean> sendRandCodeToPhone(WXPhoneRandCodeSendRequest phoneRandCodeSendRequest)
            throws Exception {

        return null;
    }

    @Override
    public BizResult<TdCCustPersonDTO> queryCustPersonByOpenId(CustInfoQueryByOpenIdRequest request) {
        if (StringUtils.isBlank(request.getBindindId())) {
            throw new BizException(ErrorType.PARAMM_NULL, "绑定ID");
        }

        if (null == request.getBindingType()) {
            throw new BizException(ErrorType.PARAMM_NULL, "绑定类型");
        }

        TdCCustPersonDTO tdCCustPersonDTO = wxCustBindingDao.queryCustPersonByBindId(request);

        return new BizResult<>(tdCCustPersonDTO);
    }

    @Override
    public BizResult<Integer> insertCustPersonBindInfo(CustPersonBindInfoInsertRequest request) {

        Integer num = wxCustBindingDao.saveCustBindInfo(request.getCustId(), request.getBindingId(),
                request.getBindingType());

        return new BizResult<>(num);
    }

    @Override
    public BizResult<TdBCustBindingDTO> queryCustBindingByCustId(CustPersonBindInfoInsertRequest request) {
        TdBCustBindingDTO tdBCustBindingDTO = new TdBCustBindingDTO();
        TdBCustBinding tdBCustBinding = wxCustBindingDao.queryCustBindingByCustId(request.getCustId());
        if (tdBCustBinding != null) {
            BeanUtils.copyProperties(tdBCustBinding, tdBCustBindingDTO);
        }
        return new BizResult<TdBCustBindingDTO>(tdBCustBindingDTO);
    }

    @Override
    public BizResult<Integer> deleteCustBindInfoByCustId(CustPersonBindInfoInsertRequest request) {
        Integer num = wxCustBindingDao.updateCustBindInfoByCustId(request.getCustId(), request.getBindingId(), request.getBindingType());
        return new BizResult<>(num);
    }

}