shiyj1101
2021-08-11 62e6b01e151c3226084f6cb2485f18e22bb10748
弹二维码
4个文件已添加
1个文件已修改
227 ■■■■■ 已修改文件
service-front/src/main/java/com/java110/front/controller/app/PaymentController.java 44 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service-front/src/main/java/com/java110/front/smo/payment/IToPayBackCitySMO.java 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service-front/src/main/java/com/java110/front/smo/payment/IToPayInGoOutSMO.java 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service-front/src/main/java/com/java110/front/smo/payment/impl/ToPayBackCitySMOImpl.java 65 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service-front/src/main/java/com/java110/front/smo/payment/impl/ToPayInGoOutSMOImpl.java 84 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service-front/src/main/java/com/java110/front/controller/app/PaymentController.java
@@ -63,6 +63,10 @@
    @Autowired
    private IToQrPayOweFeeSMO toQrPayOweFeeSMOImpl;
    @Autowired
    private IToPayInGoOutSMO toPayInGoOutSMOImpl;
    @Autowired
    private IToPayBackCitySMO toPayBackCitySMOImpl;
    /**
     * <p>统一下单入口</p>
@@ -111,6 +115,46 @@
     * @param request
     * @throws Exception
     */
    @RequestMapping(path = "/toQrInGoOutPay", method = RequestMethod.POST)
    public ResponseEntity<String> toQrInGoOutPay(@RequestBody String postInfo, HttpServletRequest request) {
        IPageData pd = (IPageData) request.getAttribute(CommonConstant.CONTEXT_PAGE_DATA);
        /*IPageData pd = (IPageData) request.getAttribute(CommonConstant.CONTEXT_PAGE_DATA);*/
        String appId = request.getHeader("APP_ID");
        if (StringUtil.isEmpty(appId)) {
            appId = request.getHeader("APP-ID");
        }
        IPageData newPd = PageData.newInstance().builder(pd.getUserId(), pd.getUserName(), pd.getToken(), postInfo,
                "", "", "", pd.getSessionId(),
                appId);
        return toPayInGoOutSMOImpl.toPay(newPd);
    }
    /**
     * <p>统一下单入口</p>
     *
     * @param request
     * @throws Exception
     */
    @RequestMapping(path = "/toQrBackCityPay", method = RequestMethod.POST)
    public ResponseEntity<String> toQrBackCityPay(@RequestBody String postInfo, HttpServletRequest request) {
        IPageData pd = (IPageData) request.getAttribute(CommonConstant.CONTEXT_PAGE_DATA);
        /*IPageData pd = (IPageData) request.getAttribute(CommonConstant.CONTEXT_PAGE_DATA);*/
        String appId = request.getHeader("APP_ID");
        if (StringUtil.isEmpty(appId)) {
            appId = request.getHeader("APP-ID");
        }
        IPageData newPd = PageData.newInstance().builder(pd.getUserId(), pd.getUserName(), pd.getToken(), postInfo,
                "", "", "", pd.getSessionId(),
                appId);
        return toPayBackCitySMOImpl.toPay(newPd);
    }
    /**
     * <p>统一下单入口</p>
     *
     * @param request
     * @throws Exception
     */
    @RequestMapping(path = "/toPayTempCarInout", method = RequestMethod.POST)
    public ResponseEntity<String> toPayTempCarInout(@RequestBody String postInfo, HttpServletRequest request) {
        IPageData pd = (IPageData) request.getAttribute(CommonConstant.CONTEXT_PAGE_DATA);
service-front/src/main/java/com/java110/front/smo/payment/IToPayBackCitySMO.java
New file
@@ -0,0 +1,17 @@
package com.java110.front.smo.payment;
import com.java110.core.context.IPageData;
import org.springframework.http.ResponseEntity;
/**
 * 统一下单接口类
 */
public interface IToPayBackCitySMO {
    /**
     * 下单
     * @param pd
     * @return
     */
    public ResponseEntity<String> toPay(IPageData pd);
}
service-front/src/main/java/com/java110/front/smo/payment/IToPayInGoOutSMO.java
New file
@@ -0,0 +1,17 @@
package com.java110.front.smo.payment;
import com.java110.core.context.IPageData;
import org.springframework.http.ResponseEntity;
/**
 * 统一下单接口类
 */
public interface IToPayInGoOutSMO {
    /**
     * 下单
     * @param pd
     * @return
     */
    public ResponseEntity<String> toPay(IPageData pd);
}
service-front/src/main/java/com/java110/front/smo/payment/impl/ToPayBackCitySMOImpl.java
New file
@@ -0,0 +1,65 @@
package com.java110.front.smo.payment.impl;
import com.alibaba.fastjson.JSONObject;
import com.java110.core.context.IPageData;
import com.java110.front.properties.WechatAuthProperties;
import com.java110.front.smo.AppAbstractComponentSMO;
import com.java110.front.smo.payment.IToPayBackCitySMO;
import com.java110.front.smo.payment.IToPayInGoOutSMO;
import com.java110.utils.cache.MappingCache;
import com.java110.utils.util.Assert;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
import org.springframework.stereotype.Service;
import org.springframework.web.client.RestTemplate;
import java.util.HashMap;
import java.util.Map;
@Service("toPayBackCitySMOImpl")
public class ToPayBackCitySMOImpl extends AppAbstractComponentSMO implements IToPayBackCitySMO {
    private static final Logger logger = LoggerFactory.getLogger( ToPayBackCitySMOImpl.class);
    @Autowired
    private RestTemplate restTemplate;
    @Autowired
    private RestTemplate outRestTemplate;
    @Autowired
    private WechatAuthProperties wechatAuthProperties;
    @Override
    public ResponseEntity<String> toPay(IPageData pd) {
        return super.businessProcess(pd);
    }
    @Override
    protected void validate(IPageData pd, JSONObject paramIn) {
        Assert.jsonObjectHaveKey(paramIn, "communityId", "请求报文中未包含settingId节点");
    }
    @Override
    protected ResponseEntity<String> doBusinessProcess(IPageData pd, JSONObject paramIn) throws Exception {
        ResponseEntity responseEntity = null;
        String ownerUrl = MappingCache.getValue("OWNER_WECHAT_URL")
                + "/#/pages/reportInfoBack/reportInfoBack?communityId="
                + paramIn.getString( "communityId" ) ;
        Map result = new HashMap(  );
        result.put( "codeUrl", ownerUrl);
        responseEntity = new ResponseEntity(JSONObject.toJSONString(result), HttpStatus.OK);
        return responseEntity;
    }
}
service-front/src/main/java/com/java110/front/smo/payment/impl/ToPayInGoOutSMOImpl.java
New file
@@ -0,0 +1,84 @@
package com.java110.front.smo.payment.impl;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.java110.core.context.IPageData;
import com.java110.core.context.PageData;
import com.java110.core.factory.GenerateCodeFactory;
import com.java110.dto.app.AppDto;
import com.java110.dto.fee.FeeDto;
import com.java110.dto.owner.OwnerAppUserDto;
import com.java110.dto.smallWeChat.SmallWeChatDto;
import com.java110.front.properties.WechatAuthProperties;
import com.java110.front.smo.AppAbstractComponentSMO;
import com.java110.front.smo.payment.IToPayInGoOutSMO;
import com.java110.front.smo.payment.adapt.IPayAdapt;
import com.java110.utils.cache.CommonCache;
import com.java110.utils.cache.MappingCache;
import com.java110.utils.constant.ServiceConstant;
import com.java110.utils.constant.WechatConstant;
import com.java110.utils.factory.ApplicationContextFactory;
import com.java110.utils.util.Assert;
import com.java110.utils.util.BeanConvertUtil;
import com.java110.utils.util.StringUtil;
import com.java110.vo.ResultVo;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpMethod;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
import org.springframework.stereotype.Service;
import org.springframework.web.client.RestTemplate;
import java.math.BigDecimal;
import java.util.HashMap;
import java.util.Map;
@Service("toPayInGoOutSMOImpl")
public class ToPayInGoOutSMOImpl extends AppAbstractComponentSMO implements IToPayInGoOutSMO {
    private static final Logger logger = LoggerFactory.getLogger( ToPayInGoOutSMOImpl.class);
    @Autowired
    private RestTemplate restTemplate;
    @Autowired
    private RestTemplate outRestTemplate;
    @Autowired
    private WechatAuthProperties wechatAuthProperties;
    @Override
    public ResponseEntity<String> toPay(IPageData pd) {
        return super.businessProcess(pd);
    }
    @Override
    protected void validate(IPageData pd, JSONObject paramIn) {
        Assert.jsonObjectHaveKey(paramIn, "settingId", "请求报文中未包含communityId节点");
        Assert.jsonObjectHaveKey(paramIn, "communityId", "请求报文中未包含settingId节点");
    }
    @Override
    protected ResponseEntity<String> doBusinessProcess(IPageData pd, JSONObject paramIn) throws Exception {
        ResponseEntity responseEntity = null;
        String ownerUrl = MappingCache.getValue("OWNER_WECHAT_URL")
                + "/#/pages/reportInfoDetail/reportInfoDetail?settingId=" +
                paramIn.getString( "settingId" ) +
                "&communityId=" + paramIn.getString( "communityId" )  ;
        Map result = new HashMap(  );
        result.put( "codeUrl", ownerUrl);
        responseEntity = new ResponseEntity(JSONObject.toJSONString(result), HttpStatus.OK);
        return responseEntity;
    }
}