From f5b91c3bd063721de0a586a6693ab48106a25c65 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=8E=8B=E6=96=87=E6=98=8A?= Date: Tue, 16 Jun 2026 19:35:52 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E5=AE=8C=E6=88=90=E8=AE=A2=E5=8D=95?= =?UTF-8?q?=E5=B1=A5=E7=BA=A6=E8=8F=9C=E5=8D=95=E9=87=8D=E6=9E=84=E4=B8=8E?= =?UTF-8?q?=E4=B8=9A=E5=8A=A1=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 1. 调整token有效期从30分钟改为60分钟 2. 重构订单履约菜单结构,拆分出供应商履约子目录 3. 修复发货单状态校验逻辑,允许confirmed状态发货 4. 调整页面表格样式与列宽适配 5. 新增供应商履约相关路由与菜单权限 6. 替换首页仪表盘为福安德平台首页 7. 新增批量客户初始化SQL与重复菜单清理脚本 8. 移除顶部导航栏的源码和文档地址入口 --- .../src/main/resources/application.yml | 4 +- .../bid/impl/BizDeliveryOrderServiceImpl.java | 2 +- ruoyi-ui/src/assets/styles/theme-jd.scss | 15 +- ruoyi-ui/src/layout/components/Navbar.vue | 8 - ruoyi-ui/src/router/index.js | 85 ++-- .../src/views/bid/clientDelivery/pending.vue | 4 +- ruoyi-ui/src/views/bid/order/history.vue | 18 +- ruoyi-ui/src/views/bid/order/pending.vue | 14 +- ruoyi-ui/src/views/bid/order/transit.vue | 18 +- ruoyi-ui/src/views/index.vue | 375 ++++++++++-------- sql/fix_dup_menu.sql | 12 + sql/fix_menu_supplier_fulfill.sql | 43 ++ sql/seed_clients.sql | 23 ++ 13 files changed, 368 insertions(+), 253 deletions(-) create mode 100644 sql/fix_dup_menu.sql create mode 100644 sql/fix_menu_supplier_fulfill.sql create mode 100644 sql/seed_clients.sql diff --git a/ruoyi-admin/src/main/resources/application.yml b/ruoyi-admin/src/main/resources/application.yml index d74beca2..021821de 100644 --- a/ruoyi-admin/src/main/resources/application.yml +++ b/ruoyi-admin/src/main/resources/application.yml @@ -123,8 +123,8 @@ token: header: Authorization # 令牌密钥 secret: abcdefghijklmnopqrstuvwxyz - # 令牌有效期(默认30分钟) - expireTime: 30 + # 令牌有效期(默认60分钟) + expireTime: 60 # MyBatis配置 mybatis: diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/bid/impl/BizDeliveryOrderServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/bid/impl/BizDeliveryOrderServiceImpl.java index 855de522..fb4d5a4d 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/service/bid/impl/BizDeliveryOrderServiceImpl.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/bid/impl/BizDeliveryOrderServiceImpl.java @@ -98,7 +98,7 @@ public class BizDeliveryOrderServiceImpl implements IBizDeliveryOrderService { public int ship(Long id) { BizDeliveryOrder d = mapper.selectBizDeliveryOrderById(id); if (d == null) throw new RuntimeException("发货单不存在"); - if (!"pending".equals(d.getDeliveryStatus())) + if (!"pending".equals(d.getDeliveryStatus()) && !"confirmed".equals(d.getDeliveryStatus())) throw new RuntimeException("当前状态不允许发货确认"); return mapper.updateDeliveryStatus(id, "transit", null, null, ""); } diff --git a/ruoyi-ui/src/assets/styles/theme-jd.scss b/ruoyi-ui/src/assets/styles/theme-jd.scss index d48be6a1..e364cf1c 100644 --- a/ruoyi-ui/src/assets/styles/theme-jd.scss +++ b/ruoyi-ui/src/assets/styles/theme-jd.scss @@ -435,12 +435,12 @@ body { /* 小按钮紧凑 */ .el-button--mini { - padding: 5px 10px !important; + padding: 4px 7px !important; font-size: 12px !important; } .el-button--small { - padding: 7px 12px !important; + padding: 6px 10px !important; font-size: 12px !important; } @@ -451,7 +451,6 @@ body { border: 1px solid var(--border-gray) !important; border-bottom: none !important; font-size: 12px !important; - table-layout: fixed !important; /* 表头 */ thead th { @@ -470,21 +469,21 @@ body { td { color: var(--text-dark) !important; font-size: 12px !important; - padding: 4px 6px !important; + padding: 3px 4px !important; border-bottom: 1px solid var(--border-light) !important; white-space: nowrap !important; overflow: hidden !important; text-overflow: ellipsis !important; } - /* cell 内部无换行 */ + /* cell 内部(操作列允许换行) */ .cell { white-space: nowrap !important; overflow: hidden !important; text-overflow: ellipsis !important; - line-height: 1.4 !important; - padding-left: 2px !important; - padding-right: 2px !important; + line-height: 1.3 !important; + padding-left: 1px !important; + padding-right: 1px !important; } /* 行悬停 */ diff --git a/ruoyi-ui/src/layout/components/Navbar.vue b/ruoyi-ui/src/layout/components/Navbar.vue index 14dfffab..5e8b2074 100644 --- a/ruoyi-ui/src/layout/components/Navbar.vue +++ b/ruoyi-ui/src/layout/components/Navbar.vue @@ -12,14 +12,6 @@ @@ -72,7 +72,7 @@ export default { }}, created() { this.getList() }, methods: { - getList() { this.loading=true; listDelivery(this.q).then(r=>{this.list=(r.rows||[]).map(d=>({...d,deliveryDate:d.deliveryDate?d.deliveryDate.substring(0,10):''}));this.total=r.total||0;this.loading=false}).catch(()=>{this.loading=false}) }, + getList() { this.loading=true; listDelivery(this.q).then(r=>{const all=r.rows||[];const filtered=all.filter(d=>d.deliveryStatus!=='transit'&&d.deliveryStatus!=='history');this.list=filtered.map(d=>({...d,deliveryDate:d.deliveryDate?d.deliveryDate.substring(0,10):''}));this.total=filtered.length;this.loading=false}).catch(()=>{this.loading=false}) }, search() { this.q.pageNum=1; this.getList() }, resetSearch() { this.q.doNo=""; this.q.clientName=""; this.search() }, handleView(row) { getDelivery(row.doId).then(r=>{this.detailData=r.data;this.detailOpen=true}).catch(()=>{}) }, handleShip(row) { this.$modal.confirm("确认发货?").then(()=>shipDelivery(row.doId)).then(()=>{this.$modal.msgSuccess("已发货");this.getList()}).catch(()=>{}) }, diff --git a/ruoyi-ui/src/views/bid/order/history.vue b/ruoyi-ui/src/views/bid/order/history.vue index d1630d99..0e1b28ff 100644 --- a/ruoyi-ui/src/views/bid/order/history.vue +++ b/ruoyi-ui/src/views/bid/order/history.vue @@ -38,27 +38,27 @@
- + - - + + - - - + + + - - + + - +