From c313a253b1fcdc75b6be5db575fc2b29fb407021 Mon Sep 17 00:00:00 2001
From: rk <94314517@qq.com>
Date: 星期三, 15 四月 2026 20:05:04 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 admin/src/views/business/sysParams.vue |  169 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 169 insertions(+), 0 deletions(-)

diff --git a/admin/src/views/business/sysParams.vue b/admin/src/views/business/sysParams.vue
new file mode 100644
index 0000000..5fbf631
--- /dev/null
+++ b/admin/src/views/business/sysParams.vue
@@ -0,0 +1,169 @@
+<template>
+  <TableLayout>
+    <template v-slot:table-wrap>
+      <div class="params-container">
+      <div class="section">
+        <h3 class="section-title">鍙告満瑙勫垯</h3>
+        <div class="form-item">
+          <span class="label">鍙告満姣忔棩鍙彇娑堣鍗曟鏁颁负</span>
+          <el-input-number v-model="form.driverDailyCancelLimit" :min="0" controls-position="right"></el-input-number>
+          <span class="label">娆★紝瓒呰繃娆℃暟鍚庯紝浠婃棩涓嶅彲鎶㈠崟</span>
+        </div>
+        <div class="form-item">
+          <span class="label">鍙告満鏈�澶у悓鏃惰繘琛屼腑璁㈠崟鏁伴噺涓�</span>
+          <el-input-number v-model="form.orderAcceptLimit" :min="0" controls-position="right"></el-input-number>
+          <span class="label">涓紝瓒呰繃璇ユ暟閲忎笉鍏佽鎶㈠崟<span class="red">锛堝嵆璁㈠崟鐘舵��=寰呭彇浠�/閰嶉�佷腑锛�</span></span>
+        </div>
+        <div class="form-item">
+          <span class="label">瀹㈡埛涓嬪崟鍚庢瘡闅�</span>
+          <el-input-number v-model="form.orderAcceptLimit" :min="0" controls-position="right"></el-input-number>
+          <span class="label">鍒嗛挓鏈湁鍙告満鎶㈠崟锛岀郴缁熸帹閫佸钩鍙扮鐞嗗憳</span>
+          <el-input-number v-model="form.orderAcceptLimit" :min="0" controls-position="right"></el-input-number>
+          <span class="label">鎻愰啋鍔犳�ユ淳鍗曞鐞嗐��</span>
+        </div>
+      </div>
+
+      <div class="section">
+        <h3 class="section-title">璁㈠崟瑙勫垯</h3>
+        <div class="form-item">
+          <span class="label">瓒呮椂</span>
+          <el-input-number v-model="form.autoCancelTime" :min="0" controls-position="right"></el-input-number>
+          <span class="label">鍒嗛挓鏈敮浠橈紝璁㈠崟鑷姩鍙栨秷</span>
+        </div>
+        <div class="form-item">
+          <span class="label">鎬ラ�熻揪璁㈠崟璁′环绯绘暟</span>
+          <el-input-number v-model="form.urgentCoefficient" :min="0" :precision="2" controls-position="right"></el-input-number>
+        </div>
+        <div class="form-item">
+          <span class="label">鐗╁搧淇濊垂姣斾緥</span>
+          <el-input-number v-model="form.insuranceRate" :min="0" :precision="2" controls-position="right"></el-input-number>
+          <span class="desc">%</span>
+        </div>
+        <div class="form-item">
+          <span class="label">寮傚湴瀵勯�佹ā寮忎笅锛岃嫢鐗╁搧宸查�佽揪锛岃�屽鎴峰綋澶╂湭鍙栦欢锛屽垯鍚庣画绯荤粺鎸�</span>
+          <el-input-number v-model="form.unpickedDiscount" :min="0" :precision="2" controls-position="right"></el-input-number>
+          <span class="desc">鎶樻墸绯绘暟璁$畻</span>
+        </div>
+        <div class="form-item">
+          <span class="label">璁㈠崟閫佽揪鍚庨粯璁�</span>
+          <el-input-number v-model="form.autoConfirmReceipt" :min="0" controls-position="right"></el-input-number>
+          <span class="label">澶╁悗鑷姩纭鏀惰揣<span class="red">锛堜粎闄愭敹浠跺湴鍧�涓嶆槸鏈嶅姟鐐圭殑鎯呭喌锛�</span></span>
+        </div>
+        <div class="form-item">
+          <span class="label">璁㈠崟瀹屾垚鍚�</span>
+          <el-input-number v-model="form.settlementDate" :min="0" controls-position="right"></el-input-number>
+          <span class="label">澶╁悗绯荤粺缁撶畻璁㈠崟锛屽苟缁欎笌鍙備笌瑙掕壊鎸夋瘮渚嬪垎鎴�</span>
+        </div>
+      </div>
+
+      <div class="footer">
+        <el-button type="primary" @click="handleSave" :loading="isWorking.save">淇濆瓨</el-button>
+      </div>
+    </div>
+    </template>
+  </TableLayout>
+</template>
+
+<script>
+import TableLayout from '@/layouts/TableLayout'
+import { getParams, saveParams } from '@/api/business/sysParams'
+
+export default {
+  name: 'SysParams',
+  components: { TableLayout },
+  data () {
+    return {
+      form: {
+        autoCancelTime: '',
+        autoConfirmReceipt: '',
+        driverDailyCancelLimit: '',
+        insuranceRate: '',
+        orderAcceptLimit: '',
+        settlementDate: '',
+        unpickedDiscount: '',
+        urgentCoefficient: ''
+      },
+      isWorking: {
+        save: false
+      }
+    }
+  },
+  created () {
+    this.loadData()
+  },
+  methods: {
+    loadData () {
+      getParams().then(res => {
+        this.form = {
+          autoCancelTime: res.autoCancelTime || '',
+          autoConfirmReceipt: res.autoConfirmReceipt || '',
+          driverDailyCancelLimit: res.driverDailyCancelLimit || '',
+          insuranceRate: res.insuranceRate || '',
+          orderAcceptLimit: res.orderAcceptLimit || '',
+          settlementDate: res.settlementDate || '',
+          unpickedDiscount: res.unpickedDiscount || '',
+          urgentCoefficient: res.urgentCoefficient || ''
+        }
+      }).catch(e => {
+        this.$tip.apiFailed(e)
+      })
+    },
+    handleSave () {
+      this.isWorking.save = true
+      saveParams(this.form).then(res => {
+        this.$tip.apiSuccess(res || '淇濆瓨鎴愬姛')
+      }).catch(e => {
+        this.$tip.apiFailed(e)
+      }).finally(() => {
+        this.isWorking.save = false
+      })
+    }
+  }
+}
+</script>
+
+<style scoped>
+.params-container {
+  padding: 20px;
+}
+.section {
+  margin-bottom: 40px;
+}
+.section-title {
+  font-size: 16px;
+  font-weight: bold;
+  color: #303133;
+  margin-bottom: 20px;
+  padding-left: 10px;
+  border-left: 4px solid #2E68EC;
+}
+.form-item {
+  display: flex;
+  align-items: center;
+  margin-bottom: 20px;
+  flex-wrap: wrap;
+}
+.form-item .label {
+  color: #606266;
+  font-size: 14px;
+  white-space: nowrap;
+}
+.form-item .desc {
+  color: #909399;
+  font-size: 14px;
+  margin-left: 10px;
+}
+.form-item .red {
+  color: #f56c6c;
+}
+.form-item /deep/ .el-input-number {
+  margin: 0 10px;
+}
+.form-item /deep/ .el-input-number .el-input__inner {
+  text-align: center;
+}
+.footer {
+  padding-top: 20px;
+  border-top: 1px solid #eee;
+}
+</style>

--
Gitblit v1.9.3