From 19fa90abbc2043b73bef3992428d912d011fc8c5 Mon Sep 17 00:00:00 2001 From: puzhibing <393733352@qq.com> Date: 星期三, 30 八月 2023 09:59:49 +0800 Subject: [PATCH] 合并代码 --- user/guns-admin/src/main/java/com/supersavedriving/user/modular/api/OrderController.java | 92 ++++++++++++++++++++++++++++++++++++++++------ 1 files changed, 80 insertions(+), 12 deletions(-) diff --git a/user/guns-admin/src/main/java/com/supersavedriving/user/modular/api/OrderController.java b/user/guns-admin/src/main/java/com/supersavedriving/user/modular/api/OrderController.java index 43c629a..10c71f4 100644 --- a/user/guns-admin/src/main/java/com/supersavedriving/user/modular/api/OrderController.java +++ b/user/guns-admin/src/main/java/com/supersavedriving/user/modular/api/OrderController.java @@ -7,6 +7,8 @@ import com.supersavedriving.user.core.util.ToolUtil; import com.supersavedriving.user.modular.system.model.*; import com.supersavedriving.user.modular.system.service.*; +import com.supersavedriving.user.modular.system.util.GaoDe.MapUtil; +import com.supersavedriving.user.modular.system.util.GaoDe.model.District; import com.supersavedriving.user.modular.system.util.MallBook.model.InterfaceResponse; import com.supersavedriving.user.modular.system.util.MallBook.model.Receive; import com.supersavedriving.user.modular.system.util.MallBook.model.ReceiveUser; @@ -18,12 +20,16 @@ import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.PrintWriter; +import java.math.BigDecimal; +import java.math.RoundingMode; import java.util.*; import java.util.stream.Collectors; @@ -35,6 +41,8 @@ @RestController @RequestMapping("") public class OrderController { + + Logger logger = LoggerFactory.getLogger(OrderController.class); @Autowired private IOrderService orderService; @@ -55,6 +63,12 @@ private IDriverService driverService; @Autowired + private IBranchOfficeService branchOfficeService; + + @Autowired + private ISystemConfigService systemConfigService; + + @Autowired private IRechargeRecordService rechargeRecordService; @Autowired @@ -62,6 +76,55 @@ @Autowired private IDivisionRecordService divisionRecordService; + + + + + + @ResponseBody + @PostMapping("/api/order/queryServerPrice") +// @ServiceLog(name = "获取正在进行中的订单id", url = "/api/order/queryServerOrder") + @ApiOperation(value = "根据定位获取恶劣天气+节假日信息", tags = {"用户端-首页"}, notes = "") + @ApiImplicitParams({ + @ApiImplicitParam(name = "Authorization", value = "用户token(Bearer +token)", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9....."), + @ApiImplicitParam(value = "纬度", name = "lat", required = true, dataType = "String"), + @ApiImplicitParam(value = "经度", name = "lon", required = true, dataType = "String"), + }) + public ResponseWarpper<Integer> queryServerPrice(String lat,String lon){ + try { + Integer i =0; // 0为不能接单 1为恶劣天气 2为节假日 3为恶劣+节假日 + District geocode = MapUtil.geocode(lon, lat); + String districtCode = geocode.getDistrictCode(); + List<BranchOffice> districtCode1 = branchOfficeService.selectList(new EntityWrapper<BranchOffice>().eq("districtCode", districtCode).eq("status",1)); + if(districtCode1.size()>0){ + BranchOffice branchOffice = districtCode1.get(0); + Integer id = branchOffice.getId(); + SystemConfig systemConfig = systemConfigService.selectOne(new EntityWrapper<SystemConfig>().eq("type", 8).eq("companyId", id)); + if(systemConfig!=null){ + String content = systemConfig.getContent(); + JSONObject jsonObject = JSONObject.parseObject(content); + String num1 = jsonObject.get("num1").toString(); + String num9 = jsonObject.get("num3").toString(); + if("1".equals(num1)){ + i=1; + } + if("1".equals(num9)){ + i=2; + } + if("1".equals(num1)&&"1".equals(num9)){ + i=3; + } + } + if(i == 0){ + i = 4; + } + } + return ResponseWarpper.success(i); + }catch (Exception e){ + e.printStackTrace(); + return new ResponseWarpper(500, e.getMessage()); + } + } @@ -90,6 +153,7 @@ return new ResponseWarpper(500, e.getMessage()); } } + @@ -369,9 +433,9 @@ if(2 == status){ Order order = orderService.selectById(orderId); AccountChangeDetail accountChangeDetail = accountChangeDetailService.selectById(parameter2); - Double m = accountChangeDetail.getOldData() - accountChangeDetail.getNewData(); + Double m = new BigDecimal(accountChangeDetail.getOldData()).subtract(new BigDecimal(accountChangeDetail.getNewData())).setScale(2, RoundingMode.HALF_EVEN).doubleValue(); AppUser appUser1 = appUserService.selectById(order.getUserId()); - appUser1.setAccountBalance(appUser1.getAccountBalance() + m); + appUser1.setAccountBalance(new BigDecimal(appUser1.getAccountBalance()).add(new BigDecimal(m)).setScale(2, RoundingMode.HALF_EVEN).doubleValue()); appUserService.updateById(appUser1); accountChangeDetailService.deleteById(accountChangeDetail.getId()); System.err.println("支付失败"); @@ -410,7 +474,7 @@ JSONObject jsonObject = JSON.parseObject(execute.getResult()); Integer status = jsonObject.getInteger("status");//0:待处理;1:成功;2:失败 if(2 == status){ - System.err.println("转账失败"); + logger.warn("转账失败"); return; } String parameter1 = jsonObject.getString("parameter1"); @@ -423,7 +487,7 @@ out.flush(); out.close(); }else{ - System.err.println("转账失败:" + execute.getMsg()); + logger.warn("转账失败:" + execute.getMsg()); return; } }catch (Exception e){ @@ -447,40 +511,44 @@ JSONObject jsonObject = JSON.parseObject(execute.getResult()); Integer status = jsonObject.getInteger("status"); if(2 == status){ - System.err.println("异步分账回调异常"); + logger.warn("异步分账回调异常"); return; } String merOrderId = jsonObject.getString("merOrderId"); String divisionRecordId = jsonObject.getString("parameter1"); + DivisionRecord divisionRecord = divisionRecordService.selectById(divisionRecordId); + if(divisionRecord.getState() == 2){ + + } + //确认收货 new Timer().schedule(new TimerTask() { @Override public void run() { - DivisionRecord divisionRecord = divisionRecordService.selectById(divisionRecordId); Receive receive = new Receive();//确认收货 receive.setOriginalMerOrderId(merOrderId); - receive.setRcvAmount(String.valueOf(Double.valueOf(divisionRecord.getAmount() * 100).intValue())); + receive.setRcvAmount(new BigDecimal(divisionRecord.getAmount()).multiply(new BigDecimal(100)).setScale(0, RoundingMode.HALF_EVEN).longValue() + ""); List<ReceiveUser> splitList = new ArrayList<>(); ReceiveUser receiveUser = new ReceiveUser(); receiveUser.setSplitUserId(divisionRecord.getMerchantNumber()); - receiveUser.setRcvSplitAmount(String.valueOf(Double.valueOf(divisionRecord.getAmount() * 100).intValue())); + receiveUser.setRcvSplitAmount(new BigDecimal(divisionRecord.getAmount()).multiply(new BigDecimal(100)).setScale(0, RoundingMode.HALF_EVEN).longValue() + ""); splitList.add(receiveUser); receive.setSplitList(splitList); TrhRequest<Receive> request1 = new TrhRequest(); InterfaceResponse execute = request1.execute(receive, Receive.SERVICE_CODE); if(!"0000".equals(execute.getCode())){ - System.err.println("确认收货" + execute.getMsg()); + logger.warn("确认收货" + execute.getMsg()); } JSONObject jsonObject = JSON.parseObject(execute.getResult()); String status = jsonObject.getString("status"); if("2".equals(status)){ - System.err.println("确认收货失败"); + logger.warn("确认收货失败"); } if("0".equals(status)){ - System.err.println("确认收货处理中"); + logger.warn("确认收货处理中"); } } - }, 15000); + }, 60000); response.setStatus(200); PrintWriter out = response.getWriter(); out.print("OK"); -- Gitblit v1.7.1