修改了合同页面

master
Ji Liu 2025-04-23 16:29:15 +08:00
parent 3e4a0c6272
commit 2269d59d4b
16 changed files with 140 additions and 83 deletions

BIN
.DS_Store vendored

Binary file not shown.

View File

@ -16,7 +16,7 @@ public class RuoYiApplication
{
// System.setProperty("spring.devtools.restart.enabled", "false");
SpringApplication.run(RuoYiApplication.class, args);
System.out.println("(♥◠‿◠)ノ゙ 若依启动成功 ლ(´ڡ`ლ)゙ \n" +
System.out.println("(♥◠‿◠)ノ゙ Application Start Completely ლ(´ڡ`ლ)゙ \n" +
" .-------. ____ __ \n" +
" | _ _ \\ \\ \\ / / \n" +
" | ( ' ) | \\ _. / ' \n" +

Binary file not shown.

View File

@ -6,7 +6,7 @@ spring:
druid:
# 主库数据源
master:
url: jdbc:mysql://121.199.168.157:3306/unis_pms?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
url: jdbc:mysql://121.199.168.157:3306/unis_pms?useUnicode=true&rewriteBatchedStatements=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
username: root
password: unis@db
# 从库数据源

Binary file not shown.

Binary file not shown.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 139 KiB

After

Width:  |  Height:  |  Size: 328 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 139 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 79 KiB

After

Width:  |  Height:  |  Size: 5.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 79 KiB

View File

@ -3,8 +3,8 @@
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0">
<title>登录若依系统</title>
<meta name="description" content="若依后台管理框架">
<title>登录应用管理系统</title>
<meta name="description" content="紫光汇智应用管理系统">
<link href="../static/css/bootstrap.min.css" th:href="@{/css/bootstrap.min.css}" rel="stylesheet"/>
<link href="../static/css/font-awesome.min.css" th:href="@{/css/font-awesome.min.css}" rel="stylesheet"/>
<link href="../static/css/style.min.css" th:href="@{/css/style.min.css}" rel="stylesheet"/>
@ -26,10 +26,10 @@
<div class="col-sm-7">
<div class="signin-info">
<div class="logopanel m-b">
<h1><img alt="[ 若依 ]" src="../static/ruoyi.png" th:src="@{/ruoyi.png}"></h1>
<h1><img alt="[ 紫光汇智 ]" src="../static/ruoyi.png" th:src="@{/ruoyi.png}"></h1>
</div>
<div class="m-b"></div>
<h4>欢迎使用 <strong>若依 后台管理系统</strong></h4>
<h4>欢迎使用 <strong>紫光汇智 应用管理系统</strong></h4>
<ul class="m-b">
<li><i class="fa fa-arrow-circle-o-right m-r-xs"></i> SpringBoot</li>
<li><i class="fa fa-arrow-circle-o-right m-r-xs"></i> Mybatis</li>

View File

@ -0,0 +1,82 @@
<!DOCTYPE html>
<html lang="zh" xmlns:th="http://www.thymeleaf.org">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0">
<title>登录若依系统</title>
<meta name="description" content="若依后台管理框架">
<link href="../static/css/bootstrap.min.css" th:href="@{/css/bootstrap.min.css}" rel="stylesheet"/>
<link href="../static/css/font-awesome.min.css" th:href="@{/css/font-awesome.min.css}" rel="stylesheet"/>
<link href="../static/css/style.min.css" th:href="@{/css/style.min.css}" rel="stylesheet"/>
<link href="../static/css/login.min.css" th:href="@{/css/login.min.css}" rel="stylesheet"/>
<link href="../static/ruoyi/css/ry-ui.css" th:href="@{/ruoyi/css/ry-ui.css?v=4.8.0}" rel="stylesheet"/>
<!-- 360浏览器急速模式 -->
<meta name="renderer" content="webkit">
<!-- 避免IE使用兼容模式 -->
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<link rel="shortcut icon" href="../static/favicon.ico" th:href="@{favicon.ico}"/>
<style type="text/css">label.error { position:inherit; }</style>
<script>
if(window.top!==window.self){alert('未登录或登录超时。请重新登录');window.top.location=window.location};
</script>
</head>
<body class="signin">
<div class="signinpanel">
<div class="row">
<div class="col-sm-7">
<div class="signin-info">
<div class="logopanel m-b">
<h1><img alt="[ 若依 ]" src="../static/ruoyi.png" th:src="@{/ruoyi.png}"></h1>
</div>
<div class="m-b"></div>
<h4>欢迎使用 <strong>若依 后台管理系统</strong></h4>
<ul class="m-b">
<li><i class="fa fa-arrow-circle-o-right m-r-xs"></i> SpringBoot</li>
<li><i class="fa fa-arrow-circle-o-right m-r-xs"></i> Mybatis</li>
<li><i class="fa fa-arrow-circle-o-right m-r-xs"></i> Shiro</li>
<li><i class="fa fa-arrow-circle-o-right m-r-xs"></i> Thymeleaf</li>
<li><i class="fa fa-arrow-circle-o-right m-r-xs"></i> Bootstrap</li>
</ul>
<strong th:if="${isAllowRegister}">还没有账号? <a th:href="@{/register}">立即注册&raquo;</a></strong>
</div>
</div>
<div class="col-sm-5">
<form id="signupForm" autocomplete="off">
<h4 class="no-margins">登录:</h4>
<p class="m-t-md">你若不离不弃,我必生死相依</p>
<input type="text" name="username" class="form-control uname" placeholder="用户名" value="admin" />
<input type="password" name="password" class="form-control pword" placeholder="密码" value="admin@123" />
<div class="row m-t" th:if="${captchaEnabled==true}">
<div class="col-xs-6">
<input type="text" name="validateCode" class="form-control code" placeholder="验证码" maxlength="5" />
</div>
<div class="col-xs-6">
<a href="javascript:void(0);" title="点击更换验证码">
<img th:src="@{/captcha/captchaImage(type=${captchaType})}" class="imgcode" width="85%"/>
</a>
</div>
</div>
<div class="checkbox-custom" th:if="${isRemembered}" th:classappend="${captchaEnabled==false} ? 'm-t'">
<input type="checkbox" id="rememberme" name="rememberme"> <label for="rememberme">记住我</label>
</div>
<button class="btn btn-success btn-block" id="btnSubmit" data-loading="正在验证登录,请稍候...">登录</button>
</form>
</div>
</div>
<div class="signup-footer">
<div class="pull-left">
Copyright © 2018-2025 ruoyi.vip All Rights Reserved. <br>
</div>
</div>
</div>
<script th:inline="javascript"> var ctx = [[@{/}]]; var captchaType = [[${captchaType}]]; var captchaEnabled = [[${captchaEnabled}]];</script>
<!--[if lte IE 8]><script>window.location.href=ctx+'html/ie.html';</script><![endif]-->
<!-- 全局js -->
<script src="../static/js/jquery.min.js" th:src="@{/js/jquery.min.js}"></script>
<script src="../static/ajax/libs/validate/jquery.validate.min.js" th:src="@{/ajax/libs/validate/jquery.validate.min.js}"></script>
<script src="../static/ajax/libs/layer/layer.min.js" th:src="@{/ajax/libs/layer/layer.min.js}"></script>
<script src="../static/ajax/libs/blockUI/jquery.blockUI.js" th:src="@{/ajax/libs/blockUI/jquery.blockUI.js}"></script>
<script src="../static/ruoyi/js/ry-ui.js" th:src="@{/ruoyi/js/ry-ui.js?v=4.8.0}"></script>
<script src="../static/ruoyi/login.js" th:src="@{/ruoyi/login.js}"></script>
</body>
</html>

View File

@ -128,12 +128,8 @@
</div>
<h4 class="form-header h4">合同清单列表</h4>
<div class="row">
<div class="col-sm-12">
<button type="button" class="btn btn-white btn-sm" onclick="addRow()"><i class="fa fa-plus"> 增加</i></button>
<button type="button" class="btn btn-white btn-sm" onclick="sub.delRow()"><i class="fa fa-minus"> 删除</i></button>
<div class="col-sm-12 select-table table-striped">
<table id="bootstrap-table"></table>
</div>
<div class="col-sm-12 select-table table-striped">
<table id="bootstrap-table"></table>
</div>
</div>
</form>
@ -203,15 +199,17 @@
showColumns: false,
sidePagination: "client",
columns: [{
checkbox: true
checkbox: false
},
{
field: 'index',
align: 'center',
title: "序号",
formatter: function (value, row, index) {
var columnIndex = $.common.sprintf("<input type='hidden' name='index' value='%s'>", $.table.serialNumber(index));
return columnIndex + $.table.serialNumber(index);
// var columnIndex = $.common.sprintf("<input type='hidden' name='index' value='%s'>", $.table.serialNumber(index));
//var html = $.common.sprintf("<input class='form-control' type='text' name='orderListList[%s].id' value='%s'>", index, value);
var html = $.common.sprintf("<input type='hidden' name='orderListList[%s].id' value='%s'>", index, value);
return html+$.table.serialNumber(index);
}
},
{
@ -219,7 +217,16 @@
align: 'center',
title: 'BOM编码',
formatter: function(value, row, index) {
var html = $.common.sprintf("<input class='form-control' type='text' name='orderListList[%s].productCode' value='%s'>", index, value);
var html = $.common.sprintf("<p class='form-control-static'>%s</p>", value);
return html;
}
},
{
field: 'productName',
align: 'center',
title: '产品名称',
formatter: function(value, row, index) {
var html = $.common.sprintf("<p class='form-control-static'>%s</p>", value);
return html;
}
},
@ -234,16 +241,6 @@
}
},
{
field: 'price',
align: 'center',
title: '单价',
formatter: function(value, row, index) {
var html = $.common.sprintf("<input class='form-control' type='text' name='orderListList[%s].price' value='%s'>", index, value);
return html;
}
},
{
field: 'amount',
align: 'center',
@ -262,35 +259,10 @@
var html = $.common.sprintf("<input class='form-control' type='text' name='orderListList[%s].remark' value='%s'>", index, value);
return html;
}
},
{
title: '操作',
align: 'center',
formatter: function(value, row, index) {
var value = $.common.isNotEmpty(row.index) ? row.index : $.table.serialNumber(index);
return '<a class="btn btn-danger btn-xs" href="javascript:void(0)" onclick="sub.delRowByIndex(\'' + value + '\')"><i class="fa fa-remove"></i>删除</a>';
}
}]
};
$.table.init(options);
});
function addRow() {
var count = $("#" + table.options.id).bootstrapTable('getData').length;
var row = {
index: $.table.serialNumber(count),
productId: "",
quantity: "",
price: "",
amount: "",
remark: "",
createdAt: "",
updatedAt: "",
deletedAt: "",
}
sub.addRow(row);
}
</script>
</body>
</html>

View File

@ -26,9 +26,12 @@ public class OrderList extends BaseEntity
private Long orderId;
/** 产品编码,关联产品编码表 */
@Excel(name = "产品编码,关联产品编码表")
@Excel(name = "BOM编码")
private String productCode;
@Excel(name = "产品名称")
private String productName;
/** 数量 */
@Excel(name = "数量")
private Long quantity;
@ -42,7 +45,6 @@ public class OrderList extends BaseEntity
private BigDecimal amount;
private String operateFlag;
/** 创建时间 */
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
@Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd")
@ -85,6 +87,10 @@ public class OrderList extends BaseEntity
{
return productCode;
}
public String getProductName()
{
return productName;
}
public void setQuantity(Long quantity)
{
this.quantity = quantity;
@ -140,13 +146,6 @@ public class OrderList extends BaseEntity
return deletedAt;
}
public String getOperateFlag() {
return operateFlag;
}
public void setOperateFlag(String operateFlag) {
this.operateFlag = operateFlag;
}
@Override
public String toString() {
@ -154,6 +153,7 @@ public class OrderList extends BaseEntity
.append("id", getId())
.append("orderId", getOrderId())
.append("productCode", getProductCode())
.append("productName", getProductName())
.append("quantity", getQuantity())
.append("price", getPrice())
.append("amount", getAmount())

View File

@ -96,8 +96,12 @@ public class OrderInfoServiceImpl implements IOrderInfoService
//
// orderInfoMapper.logicRemoveListById(deleteList);
// }
orderInfoMapper.deleteOrderListByOrderId(orderInfo.getId());
insertOrderList(orderInfo);
// orderInfoMapper.deleteOrderListByOrderId(orderInfo.getId());
// insertOrderList(orderInfo);
List<OrderList> orderListList = orderInfo.getOrderListList();
if (orderListList!=null && !orderListList.isEmpty()){
orderInfoMapper.updateListBatch(orderListList);
}
return orderInfoMapper.updateOrderInfo(orderInfo);
}

View File

@ -94,7 +94,7 @@
t1.status,
t1.remark,
t1.created_at,
t1. updated_at,
t1.updated_at,
t1.deleted_at,
t2.dept_name as order_dept_name,
t3.dept_name as partner_dept_name
@ -105,19 +105,21 @@
</select>
<select id="selectOrderListList" resultMap="OrderListResult">
select id,
order_id,
product_code,
quantity,
price,
amount,
remark,
created_at,
updated_at,
deleted_at
from order_list
where order_id = #{order_id}
and status=0
select t1.id,
t1.order_id,
t1.product_code,
t2.product_name,
t1.quantity,
t1.price,
t1.amount,
t1.remark,
t1.created_at,
t1.updated_at,
t1.deleted_at
from order_list t1
left join product_info t2 on t1.product_code=t2.product_code
where t1.order_id = #{order_id}
and t1.status=0
</select>
<select id="listOrderListByDeliveryId" resultMap="OrderListResult">
select id,
@ -205,12 +207,9 @@
<foreach item="item" index="index" collection="list" separator=";">
update order_list
<trim prefix="SET" suffixOverrides=",">
<if test="productCode != null">product_code = #{productCode},</if>
<if test="quantity != null ">quantity = #{quantity},</if>
<if test="price != null">price = #{price},</if>
<if test="amount != null">amount = #{amount},</if>
<if test="remark != null and remark!=''">remark = #{remark},</if>
<if test="item.quantity != null ">quantity = #{item.quantity},</if>
<if test="item.amount != null">amount = #{item.amount},</if>
<if test="item.remark != null and item.remark!=''">remark = #{item.remark},</if>
updated_at = NOW(),
</trim>
where id = #{item.id}
@ -232,7 +231,7 @@
</delete>
<delete id="deleteOrderListByOrderIds" parameterType="String">
update order_list set status=1, deleted_at=now() where order_id in
update order_list set status=1, deleted_at=now() where order_id in
<foreach item="orderId" collection="array" open="(" separator="," close=")">
#{orderId}
</foreach>