package com.yami.trading.api.controller;
|
|
import com.yami.trading.bean.model.C2cPaymentMethodConfig;
|
import com.yami.trading.bean.model.C2cTranslate;
|
import com.yami.trading.common.constants.Constants;
|
import com.yami.trading.common.constants.PayTemplateParamEnum;
|
import com.yami.trading.common.domain.Result;
|
import com.yami.trading.common.exception.BusinessException;
|
import com.yami.trading.common.util.StringUtils;
|
import com.yami.trading.service.AwsS3OSSFileService;
|
import com.yami.trading.service.c2c.C2cPaymentMethodConfigService;
|
import com.yami.trading.service.c2c.C2cTranslateService;
|
import lombok.extern.slf4j.Slf4j;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.web.bind.annotation.CrossOrigin;
|
import org.springframework.web.bind.annotation.RequestMapping;
|
import org.springframework.web.bind.annotation.RestController;
|
|
import javax.servlet.http.HttpServletRequest;
|
import java.util.HashMap;
|
import java.util.Map;
|
|
/**
|
* C2C支付方式模板
|
*/
|
@RestController
|
@CrossOrigin
|
@Slf4j
|
public class ApiC2cPaymentMethodConfigController {
|
@Autowired
|
C2cPaymentMethodConfigService c2cPaymentMethodConfigService;
|
@Autowired
|
C2cTranslateService c2cTranslateService;
|
@Autowired
|
AwsS3OSSFileService awsS3OSSFileService;
|
|
/**
|
* 获取 支付方式模板 列表
|
*/
|
@RequestMapping("/api/c2cPaymentMethodConfig!list.action")
|
public Object list(HttpServletRequest request) {
|
String language = request.getParameter("language");
|
log.info("c2cPaymentMethodConfig:{}", language);
|
Map<String, C2cPaymentMethodConfig> methodConfigMap = this.c2cPaymentMethodConfigService.getC2cPMethodConfigMap();
|
// 多语言
|
Map<String, String> retPayMap = new HashMap<>();
|
for (String id : methodConfigMap.keySet()) {
|
C2cPaymentMethodConfig configEntity = methodConfigMap.get(id);
|
|
String payParamLangKeyPrefix = "pay.param.";
|
String payMethodNameLangKey = payParamLangKeyPrefix + PayTemplateParamEnum.METHOD_NAME.getCode() + "." + configEntity.getUuid();
|
|
C2cTranslate trans = this.c2cTranslateService.get(id, payMethodNameLangKey, language);
|
if (null != trans) {
|
retPayMap.put(id, trans.getTranslate());
|
}
|
}
|
|
return Result.succeed(retPayMap);
|
}
|
|
/**
|
* 获取 支付方式模板 详情
|
*/
|
@RequestMapping("/api/c2cPaymentMethodConfig!get.action")
|
public Object get(HttpServletRequest request) {
|
String id = request.getParameter("id");
|
String language = request.getParameter("language");
|
C2cPaymentMethodConfig config = this.c2cPaymentMethodConfigService.getById(id);
|
if (null == config) {
|
throw new BusinessException("支付方式模板不存在");
|
}
|
if (StringUtils.isNotEmpty(config.getMethodImg())) {
|
String path = Constants.IMAGES_HTTP+config.getMethodImg();
|
config.setMethodImg(path);
|
}
|
|
C2cPaymentMethodConfig payConfig = this.c2cTranslateService.translatePmc(config, language);
|
return Result.succeed(payConfig);
|
}
|
}
|