refactor(sip): 优化项目管理页面样式和功能

-调整订单列表页面布局和样式
- 优化订单添加和编辑页面布局
- 统一折扣输入框样式
- 修复项目列表页面样式问题
-优化排序功能
master
chenhao 2025-06-13 17:52:41 +08:00
parent c25f211083
commit 80ab707e8f
8 changed files with 35 additions and 36 deletions

View File

@ -148,7 +148,7 @@
</label> </label>
</td> </td>
<td><input value="${data.discount || ''}" name="softwareProjectProductInfoList[${length}].discount" type="hidden" class="form-control discount" required> <td><input value="${data.discount || ''}" name="softwareProjectProductInfoList[${length}].discount" type="hidden" class="form-control discount" required>
<label style="display: flex;align-items: center"><input style="width: calc(100% - 10px);" value="${data.discountFormat || ''}" required type="number" min="0" max="100" step="0.1" class="form-control discount-format" required>% <label style="display: flex;align-items: center"><input style="width: calc(100% - 10px);" value="${data.discountFormat || ''}" type="number" min="0" max="100" step="0.1" class="form-control discount-format" required>%
</label></td> </label></td>
<td> <td>
<input value="${data.price || ''}" name="softwareProjectProductInfoList[${length}].price" type="hidden" class="form-control price" placeholder="自动计算" required readonly> <input value="${data.price || ''}" name="softwareProjectProductInfoList[${length}].price" type="hidden" class="form-control price" placeholder="自动计算" required readonly>
@ -190,7 +190,7 @@
</label> </label>
</td> </td>
<td><input value="${data.discount || ''}" name="hardwareProjectProductInfoList[${length}].discount" type="hidden" class="form-control discount" required> <td><input value="${data.discount || ''}" name="hardwareProjectProductInfoList[${length}].discount" type="hidden" class="form-control discount" required>
<label style="display: flex;align-items: center"><input style="width: calc(100% - 10px);" value="${data.discountFormat || ''}" required type="number" min="0" max="100" step="0.01" class="form-control discount-format" required>% <label style="display: flex;align-items: center"><input style="width: calc(100% - 10px);" value="${data.discountFormat || ''}" required type="number" min="0" max="100" step="0.01" class="form-control discount-format" >%
</label></td> </label></td>
<td> <td>
<input value="${data.price || ''}" name="hardwareProjectProductInfoList[${length}].price" type="hidden" class="form-control price" placeholder="自动计算" required readonly> <input value="${data.price || ''}" name="hardwareProjectProductInfoList[${length}].price" type="hidden" class="form-control price" placeholder="自动计算" required readonly>
@ -227,7 +227,7 @@
</td> </td>
<td> <td>
<input value="${data.guidanceDiscount || ''}" name="maintenanceProjectProductInfoList[${length}].guidanceDiscount" readonly type="hidden" class="form-control guidanceDiscount" > <input value="${data.guidanceDiscount || ''}" name="maintenanceProjectProductInfoList[${length}].guidanceDiscount" readonly type="hidden" class="form-control guidanceDiscount" >
<label style="display: flex;align-items: center"><input style="width: calc(100% - 10px);" value="${data.guidanceDiscountFormat || ''}" readonly required type="number" min="0" max="100" step="0.01" class="form-control guidance-discount-format" required>% <label style="display: flex;align-items: center"><input style="width: calc(100% - 10px);" value="${data.guidanceDiscountFormat || ''}" readonly type="number" min="0" max="100" step="0.01" class="form-control guidance-discount-format" required>%
</label> </label>
</td> </td>
<td><input value="${data.discount || ''}" name="maintenanceProjectProductInfoList[${length}].discount" type="hidden" class="form-control discount" required> <td><input value="${data.discount || ''}" name="maintenanceProjectProductInfoList[${length}].discount" type="hidden" class="form-control discount" required>

View File

@ -3,6 +3,11 @@
<head> <head>
<th:block th:include="include :: header('合同档案列表')" /> <th:block th:include="include :: header('合同档案列表')" />
</head> </head>
<style>
.select-list li p, .select-list li label:not(.radio-box){
width: 95px;
}
</style>
<body class="gray-bg"> <body class="gray-bg">
<div class="container-div"> <div class="container-div">
<div class="row"> <div class="row">

View File

@ -154,7 +154,7 @@
</div> </div>
<div class="btn-group-sm" id="toolbar" role="group"> <div class="btn-group-sm" id="toolbar" role="group">
<a class="btn btn-success" onclick="$.operate.addFull()" shiro:hasPermission="sip:product:add"> <a class="btn btn-success" onclick="$.operate.addFull()" shiro:hasPermission="sip:project:add">
<i class="fa fa-plus"></i> 添加 <i class="fa fa-plus"></i> 添加
</a> </a>
@ -162,7 +162,7 @@
shiro:hasPermission="sip:product:remove"> shiro:hasPermission="sip:product:remove">
<i class="fa fa-remove"></i> 删除 <i class="fa fa-remove"></i> 删除
</a> </a>
<a class="btn btn-warning" onclick="$.table.exportExcel()" shiro:hasPermission="sip:product:export"> <a class="btn btn-warning" onclick="$.table.exportExcel()" shiro:hasPermission=" sip:project:export">
<i class="fa fa-download"></i> 导出 <i class="fa fa-download"></i> 导出
</a> </a>
</div> </div>
@ -174,8 +174,8 @@
<th:block th:include="include :: footer"/> <th:block th:include="include :: footer"/>
<th:block th:include="include :: bootstrap-table-fixed-columns-js" /> <th:block th:include="include :: bootstrap-table-fixed-columns-js" />
<script th:inline="javascript"> <script th:inline="javascript">
var editFlag = [[${@permission.hasPermi('sip:product:edit')}]]; var editFlag = [[${@permission.hasPermi('sip:project:edit')}]];
var removeFlag = [[${@permission.hasPermi('sip:product:remove')}]]; var removeFlag = [[${@permission.hasPermi('sip:project:remove')}]];
var prefix = ctx + "sip/project"; var prefix = ctx + "sip/project";
$(function () { $(function () {
@ -251,7 +251,7 @@
title: '项目把握度', title: '项目把握度',
width: 100, width: 100,
formatter: function (value, row, index) { formatter: function (value, row, index) {
return '<div style="text-align: center">'+value+'</div>' return value?'<div style="text-align: center">'+value+'</div>':'-'
} }
}, },
{ {
@ -366,27 +366,20 @@
} }
function initSrot() { function initSrot() {
let sort1 = $(`<div class="sortBox"><div class="sortBtn timeAction" sort="asc"></div><div class="sortBtn" sort="desc"></div></div>`) let sort1 = $(`<div class="sortBox"><div class="sortBtn timeAction" onclick="changeSort(this,0)" sort="asc"></div><div class="sortBtn" onclick="changeSort(this,0)" sort="desc"></div></div>`)
$('thead .time1 .th-inner').append(sort1) $('thead .time1 .th-inner').append(sort1)
let sort2 = $(`<div class="sortBox"><div class="sortBtn" sort="asc"></div><div class="sortBtn" sort="desc"></div></div>`) let sort2 = $(`<div class="sortBox"><div class="sortBtn" onclick="changeSort(this,1)" sort="asc"></div><div onclick="changeSort(this,1)" class="sortBtn" sort="desc"></div></div>`)
$('thead .time2 .th-inner').append(sort2) $('thead .time2 .th-inner').append(sort2)
let sort3 = $(`<div class="sortBox"><div class="sortBtn" sort="asc"></div><div class="sortBtn" sort="desc"></div></div>`) let sort3 = $(`<div class="sortBox"><div class="sortBtn" onclick="changeSort(this,2)" sort="asc"></div><div onclick="changeSort(this,2)" class="sortBtn" sort="desc"></div></div>`)
$('thead .time3 .th-inner').append(sort3) $('thead .time3 .th-inner').append(sort3)
bindSort([sort1, sort2, sort3])
} }
function bindSort(list) {
list.forEach((ele, index) => {
$(ele).find('.sortBtn').on('click', function () {
changeSort(this, index)
})
})
}
function changeSort(ele, index) { function changeSort(ele, index) {
let arr = ['estimated_orderTime', 'estimated_deliverTime', 'update_time'] let arr = ['estimated_orderTime', 'estimated_deliverTime', 'update_time']
$('.sortBox').find('.timeAction').removeClass('timeAction') $('.sortBox').find('.timeAction').removeClass('timeAction')
$(ele).addClass('timeAction') $(ele).addClass('timeAction')

View File

@ -37,7 +37,7 @@
padding: 10px 0; padding: 10px 0;
color: #0075ff; color: #0075ff;
display: flex; display: flex;
align-items: flex-end; /* 垂直居中 */ align-items: baseline; /* 垂直居中 */
font-family: "微软雅黑", Arial, sans-serif; /* 统一字体 */ font-family: "微软雅黑", Arial, sans-serif; /* 统一字体 */
} }
@ -113,10 +113,11 @@
<div class="wrapper wrapper-content animated fadeInRight ibox-content"> <div class="wrapper wrapper-content animated fadeInRight ibox-content">
<form id="form-order-add"> <form id="form-order-add">
<div class="section-title"> <div class="section-title">
<span class="title-text">编辑订单</span> <span class="title-text">新增订单</span>
<span style="padding-bottom: 4px; margin-left: 10px;" >|</span> <span style="position: relative;top: -3px;margin-left: 10px" >|</span>
<span id="projectNameBox" style="margin-left: 10px;color: black;font-size: 24px"></span> <span id="projectNameBox" style="margin-left: 10px;color: black;font-size: 24px"></span>
</div> </div>
<table>
<tr> <tr>
<td class="shortTd">项目编号<span class="is-required">*</span></td> <td class="shortTd">项目编号<span class="is-required">*</span></td>
<td> <td>

View File

@ -37,7 +37,7 @@
padding: 10px 0; padding: 10px 0;
color: #0075ff; color: #0075ff;
display: flex; display: flex;
align-items: flex-end; /* 垂直居中 */ align-items: baseline; /* 垂直居中 */
font-family: "微软雅黑", Arial, sans-serif; /* 统一字体 */ font-family: "微软雅黑", Arial, sans-serif; /* 统一字体 */
} }
@ -108,7 +108,7 @@
<form id="form-order-edit" th:object="${projectOrderInfo}"> <form id="form-order-edit" th:object="${projectOrderInfo}">
<div class="section-title"> <div class="section-title">
<span class="title-text">编辑订单</span> <span class="title-text">编辑订单</span>
<span style="padding-bottom: 4px; margin-left: 10px;" >|</span> <span style="position: relative;top: -3px;margin-left: 10px">|</span>
<span id="projectNameBox" style="margin-left: 10px;color: black;font-size: 24px"></span> <span id="projectNameBox" style="margin-left: 10px;color: black;font-size: 24px"></span>
</div> </div>
<table> <table>

View File

@ -117,14 +117,14 @@
</div> </div>
<div class="btn-group-sm" id="toolbar" role="group"> <div class="btn-group-sm" id="toolbar" role="group">
<a class="btn btn-success" onclick="$.operate.addFull()" shiro:hasPermission="product:order:add"> <a class="btn btn-success" onclick="$.operate.addFull()" shiro:hasPermission="project:order:add">
<i class="fa fa-plus"></i> 添加 <i class="fa fa-plus"></i> 添加
</a> </a>
<a class="btn btn-danger multiple disabled" onclick="$.operate.removeAll()" shiro:hasPermission="product:order:remove"> <a class="btn btn-danger multiple disabled" onclick="$.operate.removeAll()" shiro:hasPermission="project:order:remove">
<i class="fa fa-remove"></i> 删除 <i class="fa fa-remove"></i> 删除
</a> </a>
<a class="btn btn-warning" onclick="$.table.exportExcel()" shiro:hasPermission="product:order:export"> <a class="btn btn-warning" onclick="$.table.exportExcel()" shiro:hasPermission="project:order:export">
<i class="fa fa-download"></i> 导出 <i class="fa fa-download"></i> 导出
</a> </a>
</div> </div>
@ -138,15 +138,15 @@
<th:block th:include="include :: jquery-cxselect-js" /> <th:block th:include="include :: jquery-cxselect-js" />
<script th:inline="javascript"> <script th:inline="javascript">
var editFlag = [[${@permission.hasPermi('product:order:edit')}]]; var editFlag = [[${@permission.hasPermi('project:order:edit')}]];
var removeFlag = [[${@permission.hasPermi('product:order:remove')}]]; var removeFlag = [[${@permission.hasPermi('project:order:remove')}]];
var prefix = ctx + "project/order"; var prefix = ctx + "project/order";
function initSrot() { function initSrot() {
let sort3 = $(`<div class="sortBox"><div class="sortBtn" sort="asc"></div><div class="sortBtn" sort="desc"></div></div>`) let sort3 = $(`<div class="sortBox"><div class="sortBtn" onclick="changeSort(this, 0)" sort="asc"></div><div class="sortBtn" onclick="changeSort(this, 0)" sort="desc"></div></div>`)
$('thead .time3 .th-inner').append(sort3) $('thead .time3 .th-inner').append(sort3)
let sort4 = $(`<div class="sortBox"><div class="sortBtn" sort="asc"></div><div class="sortBtn" sort="desc"></div></div>`) let sort4 = $(`<div class="sortBox"><div class="sortBtn" onclick="changeSort(this, 1)" sort="asc"></div><div onclick="changeSort(this, 1)" class="sortBtn" sort="desc"></div></div>`)
$('thead .time4 .th-inner').append(sort4) $('thead .time4 .th-inner').append(sort4)
let sort5 = $(`<div class="sortBox"><div class="sortBtn" sort="asc"></div><div class="sortBtn" sort="desc"></div></div>`) let sort5 = $(`<div class="sortBox"><div class="sortBtn" onclick="changeSort(this, 2)" sort="asc"></div><div onclick="changeSort(this, 2)" class="sortBtn" sort="desc"></div></div>`)
$('thead .time5 .th-inner').append(sort5) $('thead .time5 .th-inner').append(sort5)
bindSort([ sort3, sort4, sort5]) bindSort([ sort3, sort4, sort5])

View File

@ -29,7 +29,7 @@ import com.ruoyi.common.core.page.TableDataInfo;
@RequestMapping("/sip/project") @RequestMapping("/sip/project")
public class ProjectInfoController extends BaseController public class ProjectInfoController extends BaseController
{ {
private String prefix = "/project/info"; private String prefix = "project/info";
@Autowired @Autowired
private IProjectInfoService projectInfoService; private IProjectInfoService projectInfoService;

View File

@ -41,13 +41,13 @@ public class OrderList extends BaseEntity
private Long quantity; private Long quantity;
/** 单价 */ /** 单价 */
@Excel(name = "目录单价(¥)") @Excel(name = "目录单价(RMB)")
private BigDecimal price; private BigDecimal price;
/** 优惠 */ /** 优惠 */
@Excel(name = "折扣") @Excel(name = "折扣")
private BigDecimal discount; private BigDecimal discount;
/** 总价 */ /** 总价 */
@Excel(name = "目录总价(¥)") @Excel(name = "目录总价(RMB)")
private BigDecimal amount; private BigDecimal amount;
@Excel(name = "备注") @Excel(name = "备注")
private String remark; private String remark;