management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TBranchOfficeController.java
@@ -214,6 +214,9 @@ @ResponseBody public Object list(String branchOfficeName,String principal,String principalPhone,Integer operatingBusiness ,Integer status) { List<TBranchOfficeResp> tBranchOfficeRespList = tBranchOfficeService.getPageList(branchOfficeName,principal,principalPhone,operatingBusiness,status); for (TBranchOfficeResp tBranchOfficeResp : tBranchOfficeRespList) { tBranchOfficeResp.setUserType(Objects.requireNonNull(ShiroKit.getUser()).getRoleType()); } // 分公司查询优惠券,订单,司机等信息 tBranchOfficeService.queryOtherInfo(tBranchOfficeRespList); return tBranchOfficeRespList; management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/THomePageController.java
@@ -319,11 +319,35 @@ List<Integer> ids = tAgentList.stream().map(TAgent::getId).collect(Collectors.toList()); // 查询服务中的订单列表 List<TOrderServerResp> orderServerRespList = tOrderService.getDataStatisticsServerListByIds(ids); List<TOrder> orderList = tOrderService.selectList(new EntityWrapper<TOrder>()); // 查询司机 for (TOrderServerResp tOrderServerResp : orderServerRespList) { TDriver tDriver = tDriverService.selectById(tOrderServerResp.getDriverId()); tOrderServerResp.setAvatar(tDriver.getAvatar()); tOrderServerResp.setDriverName(tDriver.getName()); List<TOrder> collect = orderList.stream().filter(order -> tDriver.getId().equals(order.getDriverId()) && (order.getState().equals(OrderStateEnum.WAIT_PAY.getCode()) || order.getState().equals(OrderStateEnum.WAIT_EVALUATED.getCode()) || order.getState().equals(OrderStateEnum.FINISH.getCode()))).collect(Collectors.toList()); // 驾龄 Period period = Period.between(LocalDate.now(), DateUtil.dateToLocalDate(tDriver.getFirstCertificateTime())); tOrderServerResp.setDrivingExperience(Math.max(Math.abs(period.getYears()), 1)); // 代驾次数 tOrderServerResp.setValetDrivingCount(collect.size()); // 行驶时间 long goTime = 0; for (TOrder tOrder : collect) { // 下车时间 Date getoffTime = tOrder.getGetoffTime(); // 上车时间 Date boardingTime = tOrder.getBoardingTime(); long minutes = Duration.between(DateUtil.dateToLocalDateTime(getoffTime), DateUtil.dateToLocalDateTime(boardingTime)).toMinutes(); goTime += Math.abs(minutes); } tOrderServerResp.setGoTime(Long.valueOf(goTime).intValue()); // 行驶里程 int sum = collect.stream().mapToInt(TOrder::getActualMileage).sum(); tOrderServerResp.setMileageTraveled(sum/1000); } map.put("serverList",orderServerRespList); }else { @@ -331,11 +355,35 @@ List<Integer> ids = tAgentList.stream().map(TAgent::getId).collect(Collectors.toList()); // 查询服务中的订单列表 List<TOrderServerResp> orderServerRespList = tOrderService.getDataStatisticsServerListByIds(ids); List<TOrder> orderList = tOrderService.selectList(new EntityWrapper<TOrder>()); // 查询司机 for (TOrderServerResp tOrderServerResp : orderServerRespList) { TDriver tDriver = tDriverService.selectById(tOrderServerResp.getDriverId()); tOrderServerResp.setAvatar(tDriver.getAvatar()); tOrderServerResp.setDriverName(tDriver.getName()); List<TOrder> collect = orderList.stream().filter(order -> tDriver.getId().equals(order.getDriverId()) && (order.getState().equals(OrderStateEnum.WAIT_PAY.getCode()) || order.getState().equals(OrderStateEnum.WAIT_EVALUATED.getCode()) || order.getState().equals(OrderStateEnum.FINISH.getCode()))).collect(Collectors.toList()); // 驾龄 Period period = Period.between(LocalDate.now(), DateUtil.dateToLocalDate(tDriver.getFirstCertificateTime())); tOrderServerResp.setDrivingExperience(Math.max(Math.abs(period.getYears()), 1)); // 代驾次数 tOrderServerResp.setValetDrivingCount(collect.size()); // 行驶时间 long goTime = 0; for (TOrder tOrder : collect) { // 下车时间 Date getoffTime = tOrder.getGetoffTime(); // 上车时间 Date boardingTime = tOrder.getBoardingTime(); long minutes = Duration.between(DateUtil.dateToLocalDateTime(getoffTime), DateUtil.dateToLocalDateTime(boardingTime)).toMinutes(); goTime += Math.abs(minutes); } tOrderServerResp.setGoTime(Long.valueOf(goTime).intValue()); // 行驶里程 int sum = collect.stream().mapToInt(TOrder::getActualMileage).sum(); tOrderServerResp.setMileageTraveled(sum/1000); } map.put("serverList",orderServerRespList); } management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/resp/TBranchOfficeResp.java
@@ -25,6 +25,17 @@ @ApiModelProperty(value = "司机数量") private Integer driverCount; @ApiModelProperty(value = "用户角色") private Integer userType; public Integer getUserType() { return userType; } public void setUserType(Integer userType) { this.userType = userType; } public Integer getDriverCount() { return driverCount; } management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TAgentServiceImpl.java
@@ -22,6 +22,7 @@ import java.math.BigDecimal; import java.text.SimpleDateFormat; import java.time.LocalDate; import java.time.LocalDateTime; import java.util.*; import java.util.stream.Collectors; @@ -236,8 +237,8 @@ Integer agentTotal = tAgentMapper.selectCount(new EntityWrapper<TAgent>() .eq("id", agentId)); // 代理商最近一个月新增数量 LocalDate now = LocalDate.now(); LocalDate localDate = now.plusMonths(1); LocalDateTime now = LocalDateTime.now(); LocalDateTime localDate = now.minusMonths(1); Integer agentMonthTotal = tAgentMapper.selectCount(new EntityWrapper<TAgent>() .eq("id", agentId) .between("createTime", localDate, now)); @@ -253,8 +254,8 @@ Integer agentTotal = tAgentMapper.selectCount(new EntityWrapper<TAgent>() .in("id", ids)); // 代理商最近一个月新增数量 LocalDate now = LocalDate.now(); LocalDate localDate = now.plusMonths(1); LocalDateTime now = LocalDateTime.now(); LocalDateTime localDate = now.minusMonths(1); Integer agentMonthTotal = tAgentMapper.selectCount(new EntityWrapper<TAgent>() .in("id", ids) .between("createTime", localDate, now)); management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TDriverServiceImpl.java
@@ -24,6 +24,7 @@ import org.slf4j.LoggerFactory; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.format.annotation.DateTimeFormat; import org.springframework.stereotype.Service; import org.springframework.ui.Model; import org.springframework.util.CollectionUtils; @@ -37,8 +38,10 @@ import java.net.URLConnection; import java.text.SimpleDateFormat; import java.time.LocalDate; import java.time.LocalDateTime; import java.time.Period; import java.time.ZoneId; import java.time.format.DateTimeFormatter; import java.util.*; import java.util.concurrent.atomic.AtomicInteger; import java.util.stream.Collectors; @@ -506,11 +509,11 @@ Integer driverTotal = tDriverMapper.selectCount(new EntityWrapper<TDriver>() .eq("agentId", agentId)); // 司机最近一月数量 LocalDate now = LocalDate.now(); LocalDate localDate = now.plusMonths(1); LocalDateTime now = LocalDateTime.now(); LocalDateTime localDateTime = now.minusMonths(1); Integer driverMonthTotal = tDriverMapper.selectCount(new EntityWrapper<TDriver>() .eq("agentId", agentId) .between("createTime", localDate, now)); .between("createTime", localDateTime, now)); model.addAttribute("driverTotal",driverTotal); model.addAttribute("driverMonthTotal",driverMonthTotal); map.put("driverTotal",driverTotal); @@ -523,8 +526,8 @@ Integer driverTotal = tDriverMapper.selectCount(new EntityWrapper<TDriver>() .in("agentId", ids)); // 司机最近一月数量 LocalDate now = LocalDate.now(); LocalDate localDate = now.plusMonths(1); LocalDateTime now = LocalDateTime.now(); LocalDateTime localDate = now.minusMonths(1); Integer driverMonthTotal = tDriverMapper.selectCount(new EntityWrapper<TDriver>() .in("agentId", ids) .between("createTime", localDate, now)); management/guns-admin/src/main/webapp/WEB-INF/view/system/tSystemConfig/tSystemConfigPriceRules.html
@@ -29,14 +29,12 @@ <input class="control-label" id="num2" name="num2" value="${ChargeStandard.num2}" type="text" placeholder="00:00" style="height: 30px;width: 80px"> <span class="control-label" >代驾里程</span> <input class="control-label" id="num3" name="num3" value="${ChargeStandard.num3}" type="number" min="0" style="height: 30px;width: 80px"> <span class="control-label" >——</span> <input class="control-label" id="num4" name="num4" value="${ChargeStandard.num4}" type="number" min="0" style="height: 30px;width: 80px"> <span class="control-label" >公里,起步价</span> <input class="control-label" id="num5" name="num5" value="${ChargeStandard.num5}" type="number" min="0" style="height: 30px;width: 80px"> <input class="control-label" id="num4" name="num4" value="${ChargeStandard.num4}" type="number" min="0" style="height: 30px;width: 80px"> <span class="control-label" >元,超出里程每</span> <input class="control-label" id="num6" name="num6" value="${ChargeStandard.num6}" type="number" min="0" style="height: 30px;width: 80px"> <input class="control-label" id="num5" name="num5" value="${ChargeStandard.num5}" type="number" min="0" style="height: 30px;width: 80px"> <span class="control-label" >公里,收费</span> <input class="control-label" id="num7" name="num7" value="${ChargeStandard.num7}" type="number" min="0" style="height: 30px;width: 80px"> <input class="control-label" id="num6" name="num6" value="${ChargeStandard.num6}" type="number" min="0" style="height: 30px;width: 80px"> <span class="control-label" >元</span> @if(ChargeStandard.key == 0){ @@ -47,16 +45,16 @@ @} </div> <div class="initialLevel col-sm-12 control-label form-group" > <span class="control-label" >代驾里程</span> <input class="control-label" id="num8" name="num8" value="${ChargeStandard.num8}" type="number" min="0" style="height: 30px;width: 80px"> <span class="control-label" >长途里程</span> <input class="control-label" id="num7" name="num7" value="${ChargeStandard.num7}" type="number" min="0" style="height: 30px;width: 80px"> <span class="control-label" >——</span> <input class="control-label" id="num9" name="num9" value="${ChargeStandard.num9}" type="number" min="0" style="height: 30px;width: 80px"> <span class="control-label" >公里,起步价</span> <input class="control-label" id="num10" name="num10" value="${ChargeStandard.num10}" type="number" min="0" style="height: 30px;width: 80px"> <span class="control-label" >元,超出里程每</span> <input class="control-label" id="num11" name="num11" value="${ChargeStandard.num11}" type="number" min="0" style="height: 30px;width: 80px"> <input class="control-label" id="num8" name="num8" value="${ChargeStandard.num8}" type="number" min="0" style="height: 30px;width: 80px"> <span class="control-label" >公里,收费</span> <input class="control-label" id="num12" name="num12" value="${ChargeStandard.num12}" type="number" min="0" style="height: 30px;width: 80px"> <input class="control-label" id="num9" name="num9" value="${ChargeStandard.num9}" type="number" min="0" style="height: 30px;width: 80px"> <span class="control-label" >元,超出里程每</span> <input class="control-label" id="num10" name="num10" value="${ChargeStandard.num10}" type="number" min="0" style="height: 30px;width: 80px"> <span class="control-label" >公里,收费</span> <input class="control-label" id="num11" name="num11" value="${ChargeStandard.num11}" type="number" min="0" style="height: 30px;width: 80px"> <span class="control-label" >元</span> </div> </div> @@ -74,13 +72,13 @@ <div class="initialLevel col-sm-12 control-label form-group" style="text-align: left" > <div class="initialLevel col-sm-12 control-label form-group" > <span class="control-label" >等待</span> <input class="control-label" id="num13" name="num13" value="${ExtraCost.num1}" type="number" min="0" style="height: 30px;width: 80px"> <input class="control-label" id="num12" name="num12" value="${ExtraCost.num1}" type="number" min="0" style="height: 30px;width: 80px"> <span class="control-label" >分钟,收取</span> <input class="control-label" id="num14" name="num14" value="${ExtraCost.num2}" type="number" min="0" style="height: 30px;width: 80px"> <input class="control-label" id="num13" name="num13" value="${ExtraCost.num2}" type="number" min="0" style="height: 30px;width: 80px"> <span class="control-label" >元,超出</span> <input class="control-label" id="num15" name="num15" value="${ExtraCost.num3}" type="number" min="0" style="height: 30px;width: 80px"> <input class="control-label" id="num14" name="num14" value="${ExtraCost.num3}" type="number" min="0" style="height: 30px;width: 80px"> <span class="control-label" >分钟,收取</span> <input class="control-label" id="num16" name="num16" value="${ExtraCost.num4}" type="number" min="0" style="height: 30px;width: 80px"> <input class="control-label" id="num15" name="num15" value="${ExtraCost.num4}" type="number" min="0" style="height: 30px;width: 80px"> <span class="control-label" >元/分钟</span> </div> <input hidden id="zcOne" value="${zcOne}"> @@ -95,15 +93,15 @@ @if(1 == zcOne){ <div class="initialLevel col-sm-10 control-label form-group" > <span class="control-label" >恶劣天气</span> <input class="control-label" id="num17" name="num17" value="${ExtraCost.num5}" type="number" min="0" style="height: 30px;width: 80px"> <input class="control-label" id="num16" name="num16" value="${ExtraCost.num5}" type="number" min="0" style="height: 30px;width: 80px"> <span class="control-label" >公里以内,加收</span> <input class="control-label" id="num18" name="num18" value="${ExtraCost.num6}" type="number" min="0" style="height: 30px;width: 80px"> <input class="control-label" id="num17" name="num17" value="${ExtraCost.num6}" type="number" min="0" style="height: 30px;width: 80px"> <span class="control-label" >元,超出</span> <input class="control-label" id="num19" name="num19" value="${ExtraCost.num7}" type="number" min="0" style="height: 30px;width: 80px"> <input class="control-label" id="num18" name="num18" value="${ExtraCost.num7}" type="number" min="0" style="height: 30px;width: 80px"> <span class="control-label" >公里,收取订单的</span> <input class="control-label" id="num20" name="num20" value="${ExtraCost.num8}" type="number" min="0" style="height: 30px;width: 80px"> <input class="control-label" id="num19" name="num19" value="${ExtraCost.num8}" type="number" min="0" style="height: 30px;width: 80px"> <span class="control-label" >倍计费,最高收取</span> <input class="control-label" id="num21" name="num21" value="${ExtraCost.num9}" type="number" min="0" style="height: 30px;width: 80px"> <input class="control-label" id="num20" name="num20" value="${ExtraCost.num9}" type="number" min="0" style="height: 30px;width: 80px"> <span class="control-label" >元</span> </div> @} management/guns-admin/src/main/webapp/static/modular/system/tBranchOffice/tBranchOffice.js
@@ -56,8 +56,12 @@ }, {title: '操作', visible: true, align: 'center', valign: 'middle',width:150, formatter: function (value, row) { return '<a href="#" onclick="TBranchOffice.searchTBranchOfficeDetail('+row.id+')" style="color:blue">详情</a>' +' ' + '<a href="#" onclick="TBranchOffice.delete('+row.id+')" style="color:red">删除</a>' if(row.userType !== 1){ return '<a href="#" onclick="TBranchOffice.searchTBranchOfficeDetail('+row.id+')" style="color:blue">详情</a>' }else { return '<a href="#" onclick="TBranchOffice.searchTBranchOfficeDetail('+row.id+')" style="color:blue">详情</a>' +' ' + '<a href="#" onclick="TBranchOffice.delete('+row.id+')" style="color:red">删除</a>' } } } ]; management/guns-admin/src/main/webapp/static/modular/system/tRevenue/tRevenue.js
@@ -88,11 +88,11 @@ {title: '操作', visible: true, align: 'center', valign: 'middle',width:150, formatter: function (value, row) { if (row.businessType === 1){ return '<a href="#" onclick="TRevenue.searchTRevenueOrderDetail('+row.code.toString()+')" style="color:blue">详情</a>' return '<a href="#" onclick="TRevenue.searchTRevenueOrderDetail('+row.code+')" style="color:blue">详情</a>' }else if (row.businessType === 11){ return '<a href="#" onclick="TRevenue.searchTRevenueCommissionDetail('+row.code.toString()+')" style="color:blue">详情</a>' return '<a href="#" onclick="TRevenue.searchTRevenueCommissionDetail('+row.code+')" style="color:blue">详情</a>' }else if (row.businessType === 12){ return '<a href="#" onclick="TRevenue.searchTRevenueBalanceDetail('+row.code.toString()+')" style="color:blue">详情</a>' return '<a href="#" onclick="TRevenue.searchTRevenueBalanceDetail('+row.code+')" style="color:blue">详情</a>' } } } management/guns-admin/src/main/webapp/static/modular/system/tSystemConfig/tSystemConfig.js
@@ -196,20 +196,19 @@ arr['num9'] = Number($($('input[name="num9"]')[i]).val()); arr['num10'] = Number($($('input[name="num10"]')[i]).val()); arr['num11'] = Number($($('input[name="num11"]')[i]).val()); arr['num12'] = Number($($('input[name="num12"]')[i]).val()); json1.push(arr) } var ExtraCost = {}; ExtraCost['num1'] = Number($('#num13').val()); ExtraCost['num2'] = Number($('#num14').val()); ExtraCost['num3'] = Number($('#num15').val()); ExtraCost['num4'] = Number($('#num16').val()); ExtraCost['num5'] = Number($('#num17').val()); ExtraCost['num6'] = Number($('#num18').val()); ExtraCost['num7'] = Number($('#num19').val()); ExtraCost['num8'] = Number($('#num20').val()); ExtraCost['num9'] = Number($('#num21').val()); ExtraCost['num1'] = Number($('#num12').val()); ExtraCost['num2'] = Number($('#num13').val()); ExtraCost['num3'] = Number($('#num14').val()); ExtraCost['num4'] = Number($('#num15').val()); ExtraCost['num5'] = Number($('#num16').val()); ExtraCost['num6'] = Number($('#num17').val()); ExtraCost['num7'] = Number($('#num18').val()); ExtraCost['num8'] = Number($('#num19').val()); ExtraCost['num9'] = Number($('#num20').val()); var reqData = {}; reqData['ChargeStandard'] = json1; @@ -264,28 +263,26 @@ " <input class=\"control-label\" id=\"num2-"+i+"\" name=\"num2\" type=\"text\" placeholder=\"00:00\" style=\"height: 30px;width: 80px\">\n" + " <span class=\"control-label\" >代驾里程</span>\n" + " <input class=\"control-label\" id=\"num3-"+i+"\" name=\"num3\" type=\"number\" style=\"height: 30px;width: 80px\">\n" + " <span class=\"control-label\" >——</span>\n" + " <input class=\"control-label\" id=\"num4-"+i+"\" name=\"num4\" type=\"number\" style=\"height: 30px;width: 80px\">\n" + " <span class=\"control-label\" >公里,起步价</span>\n" + " <input class=\"control-label\" id=\"num5-"+i+"\" name=\"num5\" type=\"number\" style=\"height: 30px;width: 80px\">\n" + " <input class=\"control-label\" id=\"num4-"+i+"\" name=\"num4\" type=\"number\" style=\"height: 30px;width: 80px\">\n" + " <span class=\"control-label\" >元,超出里程每</span>\n" + " <input class=\"control-label\" id=\"num6-"+i+"\" name=\"num6\" type=\"number\" style=\"height: 30px;width: 80px\">\n" + " <input class=\"control-label\" id=\"num5-"+i+"\" name=\"num5\" type=\"number\" style=\"height: 30px;width: 80px\">\n" + " <span class=\"control-label\" >公里,收费</span>\n" + " <input class=\"control-label\" id=\"num7-"+i+"\" name=\"num7\" type=\"number\" style=\"height: 30px;width: 80px\">\n" + " <input class=\"control-label\" id=\"num6-"+i+"\" name=\"num6\" type=\"number\" style=\"height: 30px;width: 80px\">\n" + " <span class=\"control-label\" >元</span>\n" + " <span class=\"fa fa-remove\" onclick=\"TSystemConfig.delBox(this)\"></span>\n" + " </div>\n" + " <div class=\"initialLevel col-sm-12 control-label form-group\" >\n" + " <span class=\"control-label\" >代驾里程</span>\n" + " <input class=\"control-label\" id=\"num8-"+i+"\" name=\"num8\" type=\"number\" style=\"height: 30px;width: 80px\">\n" + " <span class=\"control-label\" >长途里程</span>\n" + " <input class=\"control-label\" id=\"num7-"+i+"\" name=\"num7\" type=\"number\" style=\"height: 30px;width: 80px\">\n" + " <span class=\"control-label\" >——</span>\n" + " <input class=\"control-label\" id=\"num9-"+i+"\" name=\"num9\" type=\"number\" style=\"height: 30px;width: 80px\">\n" + " <span class=\"control-label\" >公里,起步价</span>\n" + " <input class=\"control-label\" id=\"num10-"+i+"\" name=\"num10\" type=\"number\" style=\"height: 30px;width: 80px\">\n" + " <span class=\"control-label\" >元,超出里程每</span>\n" + " <input class=\"control-label\" id=\"num11-"+i+"\" name=\"num11\" type=\"number\" style=\"height: 30px;width: 80px\">\n" + " <input class=\"control-label\" id=\"num8-"+i+"\" name=\"num8\" type=\"number\" style=\"height: 30px;width: 80px\">\n" + " <span class=\"control-label\" >公里,收费</span>\n" + " <input class=\"control-label\" id=\"num12-"+i+"\" name=\"num12\" type=\"number\" style=\"height: 30px;width: 80px\">\n" + " <input class=\"control-label\" id=\"num9-"+i+"\" name=\"num9\" type=\"number\" style=\"height: 30px;width: 80px\">\n" + " <span class=\"control-label\" >元,超出里程每</span>\n" + " <input class=\"control-label\" id=\"num10-"+i+"\" name=\"num10\" type=\"number\" style=\"height: 30px;width: 80px\">\n" + " <span class=\"control-label\" >公里,收费</span>\n" + " <input class=\"control-label\" id=\"num11-"+i+"\" name=\"num11\" type=\"number\" style=\"height: 30px;width: 80px\">\n" + " <span class=\"control-label\" >元</span>\n" + " </div>\n" + " </div>"