diff --git a/mallinkAdmin/src/main/java/com/iformall/controller/WxSubsidyController.java b/mallinkAdmin/src/main/java/com/iformall/controller/WxSubsidyController.java index 909c30d09..8d0e1a56c 100644 --- a/mallinkAdmin/src/main/java/com/iformall/controller/WxSubsidyController.java +++ b/mallinkAdmin/src/main/java/com/iformall/controller/WxSubsidyController.java @@ -36,8 +36,8 @@ public class WxSubsidyController extends BaseController { @ApiOperation("补贴扫码支付发起") @GetMapping("prePay") @ApiImplicitParams({ - @ApiImplicitParam(name = "amount", value = "金额", dataType = "int", paramType = "query", required = true)}) - public void subsidyPrepay(Integer amount, HttpServletResponse response) throws Exception { + @ApiImplicitParam(name = "amount", value = "金额", dataType = "String", paramType = "query", required = true)}) + public void subsidyPrepay(String amount, HttpServletResponse response) throws Exception { String ipStr = getIpAddr(); logger.info("subsidyPrepay: " + ipStr + "-" + amount); MallUserInfo userInfo = getUser(); diff --git a/mallinkService/src/main/java/com/iformall/service/WxSubsidyService.java b/mallinkService/src/main/java/com/iformall/service/WxSubsidyService.java index 3971f5075..c1f54c1b1 100644 --- a/mallinkService/src/main/java/com/iformall/service/WxSubsidyService.java +++ b/mallinkService/src/main/java/com/iformall/service/WxSubsidyService.java @@ -12,10 +12,10 @@ public interface WxSubsidyService { /** * 创建补贴订单 - * @param amount + * @param amountStr * @return */ - ResultData createSubsidy(MallUserInfo user, String ip, Integer amount); + ResultData createSubsidy(MallUserInfo user, String ip, String amountStr); /** * 根据实体查询分页列表 diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxSubsidyServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxSubsidyServiceImpl.java index 92a9ac575..eb9358d6f 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxSubsidyServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxSubsidyServiceImpl.java @@ -30,6 +30,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.iformall.common.IdWorker; +import java.math.BigDecimal; import java.text.ParseException; import java.util.*; @@ -81,7 +82,7 @@ public class WxSubsidyServiceImpl implements WxSubsidyService { "\"XML_FORMAT_ERROR\":{\"detail\":\"XML格式错误\t\",\"reason\":\"XML格式错误\",\"reason\":\"请检查XML参数格式是否正确\"}}"); @Override - public ResultData createSubsidy(MallUserInfo user, String ip, Integer amount) { + public ResultData createSubsidy(MallUserInfo user, String ip, String amountStr) { final IdWorker idWorker = IdWorker.get(); EnumPayShare isShare = EnumPayShare.NO; Date curDate = new Date(); @@ -93,7 +94,8 @@ public class WxSubsidyServiceImpl implements WxSubsidyService { isShare = EnumPayShare.YES; } // 3. 补贴订单 - Integer totalFee = amount * 100; // 元->分 + BigDecimal amountY = new BigDecimal(amountStr); + int totalFee = amountY.multiply(new BigDecimal(100)).intValue(); // 元->分 Long id = idWorker.nextId(); String payOrderNo = String.valueOf(id); @@ -104,7 +106,7 @@ public class WxSubsidyServiceImpl implements WxSubsidyService { record.setCreateTime(curDate); record.setUpdateTime(curDate); record.setOrderNo(payOrderNo); - record.setBody("商场补贴-"+amount + "元"); + record.setBody("商场补贴-"+amountStr + "元"); record.setIp(ip); record.setStatus(EnumPayStatus.PAY_STATUS_WAIT.getCode()); record.setPayTimeStart(curDate);