| | |
| | | return SUCCESS_TIP; |
| | | } |
| | | |
| | | @Resource |
| | | private ITUserService userService; |
| | | |
| | | @RequestMapping(value = "/frozenOrder") |
| | | @ResponseBody |
| | | public Object frozenOrder(@RequestParam Integer tOrderPrivateCarId) throws Exception { |
| | |
| | | |
| | | //添加已收入明细 |
| | | TDriver tDriver = driverService.selectById(orderPrivateCar.getDriverId()); |
| | | orderPrivateCar = this.setMoney(orderPrivateCar, 0D, 0D);//计算费用 |
| | | |
| | | //添加已收入明细 |
| | | TCompany company = companyService.selectById(orderPrivateCar.getCompanyId()); |
| | | Double taxi = company.getSpeMoney().doubleValue(); |
| | | Integer language =tDriver.getLanguage(); |
| | | BigDecimal d = null;//企业收入 |
| | | BigDecimal c = null;//司机收入 |
| | | if(company.getIsSpeFixedOrProportional() == 2){//固定 |
| | | d = new BigDecimal(taxi); |
| | | c = orderPrivateCar.getOrderMoney().subtract(d).setScale(2, BigDecimal.ROUND_HALF_EVEN); |
| | | } |
| | | if(company.getIsSpeFixedOrProportional() == 1){//比例 |
| | | Double price = orderPrivateCar.getStartMoney().doubleValue() + orderPrivateCar.getMileageMoney().doubleValue() + orderPrivateCar.getWaitMoney().doubleValue()+ orderPrivateCar.getDurationMoney().doubleValue() + orderPrivateCar.getLongDistanceMoney().doubleValue(); |
| | | d = new BigDecimal(price).multiply(new BigDecimal(taxi).divide(new BigDecimal(100))).setScale(2, BigDecimal.ROUND_HALF_EVEN); |
| | | c = orderPrivateCar.getOrderMoney().subtract(d).setScale(2, BigDecimal.ROUND_HALF_EVEN); |
| | | } |
| | | if(orderPrivateCar.getIsFrozen()==1){ |
| | | TDriver driver = driverService.selectById(orderPrivateCar.getDriverId()); |
| | | driver.setBusinessMoney(new BigDecimal(null != driver.getBusinessMoney() ? driver.getBusinessMoney() : 0).subtract(c).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue()); |
| | |
| | | orderPrivateCar1.setState(8); |
| | | orderPrivateCar1.setIsFree(2); |
| | | //添加已收入明细 |
| | | TCompany company = companyService.selectById(orderPrivateCar1.getCompanyId()); |
| | | BigDecimal speMoney = company.getSpeMoney(); |
| | | TCompany tCompany = companyService.selectById(orderPrivateCar1.getCompanyId()); |
| | | BigDecimal speMoney = tCompany.getSpeMoney(); |
| | | |
| | | if(company.getIsSpeFixedOrProportional() == 2){//固定 |
| | | if(tCompany.getIsSpeFixedOrProportional() == 2){//固定 |
| | | d = speMoney; |
| | | c = orderPrivateCar1.getOrderMoney().subtract(d);//只有出行金额参与抽成,其余归属司机 |
| | | } |
| | | if(company.getIsSpeFixedOrProportional() == 1){//比例 |
| | | if(tCompany.getIsSpeFixedOrProportional() == 1){//比例 |
| | | BigDecimal price = orderPrivateCar1.getStartMoney().add(orderPrivateCar1.getMileageMoney()).add(new BigDecimal(orderPrivateCar1.getWaitMoney())).add(orderPrivateCar1.getDurationMoney()).add(orderPrivateCar1.getLongDistanceMoney()); |
| | | d = price.multiply(speMoney).divide(new BigDecimal(100), new MathContext(2, RoundingMode.HALF_EVEN)); |
| | | c = orderPrivateCar1.getOrderMoney().subtract(d).setScale(2, BigDecimal.ROUND_HALF_EVEN); |