From 6771fff413935485b5dce61769f133a44533d15c Mon Sep 17 00:00:00 2001
From: longz <longzhaoz@qq.com>
Date: 星期六, 30 五月 2026 14:35:14 +0800
Subject: [PATCH] fix
---
ManagementYKDTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/specialTrain/TLineController.java | 56 ++++++++++++++++++++++++++++++++++++++++++++++++++------
1 files changed, 50 insertions(+), 6 deletions(-)
diff --git a/ManagementYKDTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/specialTrain/TLineController.java b/ManagementYKDTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/specialTrain/TLineController.java
index c3e64a8..47d814b 100644
--- a/ManagementYKDTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/specialTrain/TLineController.java
+++ b/ManagementYKDTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/specialTrain/TLineController.java
@@ -244,6 +244,9 @@
@ResponseBody
public ResultUtil add(TLine tLine,Integer startSiteId,Integer endSiteId,@RequestParam String subArr,
@RequestParam String shuArr, @RequestParam(required = false) String destArr) {
+ if (!hasCommissionSetting(tLine.getOutSetting())) {
+ return ResultUtil.error("请设置司机抽成");
+ }
JSONArray jsonArray1 = JSON.parseArray(shuArr);
int size1 = jsonArray1.size();
for (int i = 0; i < size1; i++) {
@@ -251,9 +254,9 @@
String shiftTime = jsonObject.getString("shiftTime");
if (SinataUtil.isNotEmpty(shiftTime)){
String[] timeArray = shiftTime.split(" - ");
- String startTime = timeArray[0].split(":")[0];
- String endTime = timeArray[1].split(":")[0];
- if(Integer.valueOf(startTime) >= Integer.valueOf(endTime)){
+ String startTime = timeArray[0];
+ String endTime = timeArray[1];
+ if(startTime.compareTo(endTime) >= 0){
return ResultUtil.error("班次结束时间不能小于开始时间");
}
}
@@ -766,6 +769,9 @@
@ResponseBody
public ResultUtil update(TLine tLine,Integer startSiteId,Integer endSiteId,@RequestParam String subArr,
@RequestParam String shuArr, @RequestParam(required = false) String destArr) {
+ if (!hasCommissionSetting(tLine.getOutSetting())) {
+ return ResultUtil.error("请设置司机抽成");
+ }
JSONArray jsonArray1 = JSON.parseArray(shuArr);
int size1 = jsonArray1.size();
for (int i = 0; i < size1; i++) {
@@ -773,9 +779,9 @@
String shiftTime = jsonObject.getString("shiftTime");
if (SinataUtil.isNotEmpty(shiftTime)){
String[] timeArray = shiftTime.split(" - ");
- String startTime = timeArray[0].split(":")[0];
- String endTime = timeArray[1].split(":")[0];
- if(Integer.valueOf(startTime) >= Integer.valueOf(endTime)){
+ String startTime = timeArray[0];
+ String endTime = timeArray[1];
+ if(startTime.compareTo(endTime) >= 0){
return ResultUtil.error("班次结束时间不能小于开始时间");
}
}
@@ -841,6 +847,44 @@
/**
* 添加线路目的地配置
*/
+ private boolean hasCommissionSetting(String outSetting) {
+ if (SinataUtil.isEmpty(outSetting)) {
+ return false;
+ }
+ try {
+ JSONObject config = JSON.parseObject(outSetting);
+ JSONArray rules = config.getJSONArray("rules");
+ if (hasCommissionRule(rules)) {
+ return true;
+ }
+ JSONArray timeRules = config.getJSONArray("time_rules");
+ if (timeRules != null) {
+ for (int i = 0; i < timeRules.size(); i++) {
+ JSONArray oneTimeRules = timeRules.getJSONArray(i);
+ if (hasCommissionRule(oneTimeRules)) {
+ return true;
+ }
+ }
+ }
+ } catch (Exception e) {
+ return false;
+ }
+ return false;
+ }
+
+ private boolean hasCommissionRule(JSONArray rules) {
+ if (rules == null || rules.size() <= 0) {
+ return false;
+ }
+ for (int i = 0; i < rules.size(); i++) {
+ JSONObject rule = rules.getJSONObject(i);
+ if (rule != null && rule.containsKey("percent") && SinataUtil.isNotEmpty(rule.getString("percent"))) {
+ return true;
+ }
+ }
+ return false;
+ }
+
private ResultUtil addDestination(Integer lineId, String destArr) {
if (SinataUtil.isEmpty(destArr)) {
return ResultUtil.error("请至少设置一个目的地");
--
Gitblit v1.7.1