融资管理系统项目

2024-08-22 22:20
文章标签 管理系统 项目 融资

本文主要是介绍融资管理系统项目,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

系列文章目录

第一章 基础知识、数据类型学习
第二章 万年历项目
第三章 代码逻辑训练习题
第四章 方法、数组学习
第五章 图书管理系统项目
第六章 面向对象编程:封装、继承、多态学习
第七章 封装继承多态习题
第八章 常用类、包装类、异常处理机制学习
第九章 集合学习
第十章 IO流、多线程学习
第十一章 仓库管理系统项目
第十二章 员工管理系统、多表查询、反射实现DBHelper学习
第十三章 DML、DDL、数据库对象学习
第十四章 网络编程、各种标签、CSS学习
第十五章 ECMAScript、BOM学习
第十六章 DOM、jQuery学习
第十七章 Servlet、jsp、Cookie、Ajax学习
第十八章 融资管理系统项目


文章目录

  • 系列文章目录
  • 前言
  • 一、项目需求
    • 1. 项目背景
    • 2. 功能描述
      • 1. 登录
      • 2. 凭证管理
        • 2.1 融资列表
        • 2.2 融资详情
      • 3. 我的凭证
        • 3.1 凭证列表
        • 3.2 凭证详情
        • 3.3 融资
          • 3.3.1 凭证基本信息
          • 3.3.2 融资业务信息
          • 3.3.3 金融机构信息
          • 3.3.4 提交
    • 3. 数据库表
  • 二、项目分析
  • 三、项目分析
    • 1. 查询难点分析
    • 2. 融资难点分析
    • 3. 分页难点分析
  • 总结


前言

本文我们将介绍这两天做的融资管理系统项目,是管理凭证(类似支票
)和融资(从凭证里取钱),主要用到的技术包括
1、Java的三层架构
2、ajax异步发送
3、JavaScript页面编码技术
4、css技术
5、jdbc技术
融资管理系统
通过百度网盘分享的文件:小组项目2.zip
链接:https://pan.baidu.com/s/1y0yujuEquC7CfdoqfpBcgw?pwd=0803
提取码:0803
消失了好多天,我去‱∮∑⋙星吃鸭货来着,我吃了很多麻辣的鸭肠、鸭肚、鸭翅、鸭头、鸭锁骨,好好吃!


一、项目需求

1. 项目背景

电子债权凭证作为一种金融工具,可看做企业中的一种流动资产,其本质与应收账款相似。电子债权凭证是卖方企业与买方企业兑现现金的重要凭证。由于现阶段信息技术的快速发展,基于区块链的电子债权凭证越来越得到各个金融机构的认可,卖方企业可依托手中的电子债权凭证向金融机构申请融资,以解决自身现金流的问题。

2. 功能描述

1. 登录

输入账号和密码登录

2. 凭证管理

2.1 融资列表

展示当前登录企业发起融资的记录。

注意: 凭证金额一般比较大,所以按照融资金额查询时单位是万元。

2.2 融资详情

回显融资申请的详细信息。
注意:
1.预计到账日期后面的剩余10天代表当前日期和预计到账日期之间的差值,与申请日期没有关系。
例如:预计到账日期是2022年4月28日,今天是2022年4月18日,那么显示剩余10天。
2.凭证编号是融资时选择的凭证的编号。

3. 我的凭证

3.1 凭证列表

展示当前登录企业所拥有的凭证。
注意:
1.凭证编号是模糊查询。
2.凭证金额一般比较大,所以查询时单位是万元。
3.凭证状态是未融资时操作中才有融资。

3.2 凭证详情

凭证详情查询我的凭证表数据。
注意: 到期日期后面的剩余10天代表当前日期和到期日期之间的差值,与开单日期没有关系。

3.3 融资

凭证融资页面包含三部分内容,凭证基本信息.融资业务信息和金融机构信息。

3.3.1 凭证基本信息

从我的凭证表中查询基本信息,回显到页面中,到期日期后的剩余时间的计算规则同上。

3.3.2 融资业务信息

融资金额可以自由填写,也可以点击全部融资,全部融资就是把当前凭证的所有金额进行融资,即凭证基本信息的凭证金额填入融资金额中。
注意:
1.剩余凭证金额 : 凭证金额 . 融资金额
2.融资金额只能输入数字,且不能大于凭证金额,做好校验。

3.3.3 金融机构信息

查询金融机构表数据,将金融机构展示到金融机构信息的列表中。
注意:
1.预计到账 : 融资金额 . 融资成本
2.融资成本 : 融资金额 * 融资利率(利息)
3.融资金额在融资业务信息中获取,要根据填入的数据动态变化,这也意味着预计到账和融资成本的数据也会随着融资金额的修改而同步变化。

3.3.4 提交

点击提交后,要在融资表添加一条记录,并修改我的凭证表数据状态为已融资。
注意:
1、如果融资金额和凭证金额相同,那么只需要修改凭证数据的凭证状态即可。
2、如果融资金额小于凭证金额,那么除了要修改原凭证的凭证状态外,还要在我的凭证表中添加一条新的记录,用于保存剩余金额的数据,其他字段规则如下:
(1)凭证编号需要重新生成;
(2)凭证来源为融资留存;
(3)开单企业、所属企业、金融机构、开单日期、到期日期和付息方式为原凭证数据;
(4)来源凭证id为原凭证id。
3、新凭证编号生成规则:R+yyyyMMdd+序列号,序列化长度6位,编号总长度15位。
例如:今天是2022年10月1日,今天开具的第一个凭证编号为:R20221001000001
4、上链地址随机生成一个16位的字符串即可。

3. 数据库表

  1. 用户表(user)
    在这里插入图片描述
  2. 企业表(enterprise)
    在这里插入图片描述
  3. 金融机构表(instituty)
    在这里插入图片描述
  4. 我的凭证表(voucher)
    在这里插入图片描述
  5. 融资表(financing)
    在这里插入图片描述

二、项目分析

项目可以分为六个功能:
1、登录:跳转到融资列表页,显示登录用户所属企业的全部融资信息
2、融资列表:显示所有符合条件的融资信息(转到融资详情)
3、融资详情:显示他的全部信息
4、凭证列表:显示所有符合条件的凭证信息(转到凭证详情、融资)
5、凭证详情:显示他的全部信息(与)
6、融资:从凭证中取钱,添加一条融资信息

三、项目分析

1. 查询难点分析

查询时,需要获取所有输入的查询条件,然后实时更新。如何实现实时更新这一效果呢?
首先我们定义变量获取所有在上方查询条件获取到值
在这里插入图片描述

var enterprise_id = null;
var buttonName = null;
var no = null;
var instituty_id = null;
var amount_low = null;
var amount_high = null;
var create_time = null;
var status = null;

其次我们定义一个方法,每次点击包裹查询条件的div控件都会进行一次向servlet层传值进行查询

$(document).on("click", "#clickPlace", function () {financeCondition();$.get("financing/queryByFinancingCondition", {"enterprise_id":enterprise_id,"no": no,"instituty_id": instituty_id,"amount_low": amount_low,"amount_high": amount_high,"create_time": create_time,"status": status}, function (pageHelper) {JSON.stringify(pageHelper);forFinancing(pageHelper.list);showButton(pageHelper);});
});

我们在servlet层添加此方法进行查询并返回结果

public void  queryByFinancingCondition(HttpServletRequest request, HttpServletResponse response){String enterprise_id = request.getParameter("enterprise_id");String no = request.getParameter("no");String instituty_id =request.getParameter("instituty_id");String amount_low = request.getParameter("amount_low");String amount_high =request.getParameter("amount_high");String create_time = request.getParameter("create_time");String status = request.getParameter("status");String whichPage = request.getParameter("whichPage");FinancingCondition financingCondition = new FinancingCondition();if (enterprise_id != null && enterprise_id != "")financingCondition.setInstituty_id(Integer.parseInt(enterprise_id));if (no != null && no != "")financingCondition.setNo(no);if(instituty_id != null && instituty_id != "")financingCondition.setInstituty_id(Integer.parseInt(instituty_id));if (amount_low != null && amount_low != ""){financingCondition.setAmount_low(Double.parseDouble(amount_low));financingCondition.setAmount_low(financingCondition.getAmount_low() * 10000);}if (amount_high != null && amount_high != ""){financingCondition.setAmount_high(Double.parseDouble(amount_high));financingCondition.setAmount_high(financingCondition.getAmount_high() * 10000);}if (create_time != null && create_time != "")financingCondition.setCreate_time(create_time);if (status != null && status != ""){if (status.equals("0"));if (status.equals("1"))financingCondition.setStatus("成功");if (status.equals("2"))financingCondition.setStatus("融资中");if (status.equals("3"))financingCondition.setStatus("失败");}
//        System.out.println("servlet层内"+no + ":" + instituty_id + ":" + amount_low + ":" + amount_high + ":" + create_time + ":" + status);PageHelper pageHelper = new PageHelper();if (whichPage != null)pageHelper.setWhichPage(Integer.parseInt(whichPage));pageHelper.setAllNum(financingService.selectFinancingCount(financingCondition));ArrayList<FinancingAndInstituty> financingAndInstituties = financingService.selectFinancingList(financingCondition, pageHelper);pageHelper.setList(financingAndInstituties);Gson gson = new Gson();try {response.getWriter().println(gson.toJson(pageHelper));} catch (IOException e) {e.printStackTrace();}
}

2. 融资难点分析

在这里插入图片描述
每次点击金融机构,此凭证信息应随之更改,但本页面无法更改,所以加一个reload函数重新加载本页面

$("#doc-modal-list").on("click", "tr", function () {location.reload(true);var thisId = $(this).attr("id");$.get("financing/updateVoucher", {"Vid":$("[name='hiddentxt']").val(),"Iid":thisId});
});

3. 分页难点分析

在这里插入图片描述


总结

没啥好说的了,放段网盘链接吧
融资管理系统

这篇关于融资管理系统项目的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1097554

相关文章

vite搭建vue3项目的搭建步骤

《vite搭建vue3项目的搭建步骤》本文主要介绍了vite搭建vue3项目的搭建步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学... 目录1.确保Nodejs环境2.使用vite-cli工具3.进入项目安装依赖1.确保Nodejs环境

idea+spring boot创建项目的搭建全过程

《idea+springboot创建项目的搭建全过程》SpringBoot是Spring社区发布的一个开源项目,旨在帮助开发者快速并且更简单的构建项目,:本文主要介绍idea+springb... 目录一.idea四种搭建方式1.Javaidea命名规范2JavaWebTomcat的安装一.明确tomcat

pycharm跑python项目易出错的问题总结

《pycharm跑python项目易出错的问题总结》:本文主要介绍pycharm跑python项目易出错问题的相关资料,当你在PyCharm中运行Python程序时遇到报错,可以按照以下步骤进行排... 1. 一定不要在pycharm终端里面创建环境安装别人的项目子模块等,有可能出现的问题就是你不报错都安装

Spring Boot分层架构详解之从Controller到Service再到Mapper的完整流程(用户管理系统为例)

《SpringBoot分层架构详解之从Controller到Service再到Mapper的完整流程(用户管理系统为例)》本文将以一个实际案例(用户管理系统)为例,详细解析SpringBoot中Co... 目录引言:为什么学习Spring Boot分层架构?第一部分:Spring Boot的整体架构1.1

uni-app小程序项目中实现前端图片压缩实现方式(附详细代码)

《uni-app小程序项目中实现前端图片压缩实现方式(附详细代码)》在uni-app开发中,文件上传和图片处理是很常见的需求,但也经常会遇到各种问题,下面:本文主要介绍uni-app小程序项目中实... 目录方式一:使用<canvas>实现图片压缩(推荐,兼容性好)示例代码(小程序平台):方式二:使用uni

MyCat分库分表的项目实践

《MyCat分库分表的项目实践》分库分表解决大数据量和高并发性能瓶颈,MyCat作为中间件支持分片、读写分离与事务处理,本文就来介绍一下MyCat分库分表的实践,感兴趣的可以了解一下... 目录一、为什么要分库分表?二、分库分表的常见方案三、MyCat简介四、MyCat分库分表深度解析1. 架构原理2. 分

linux查找java项目日志查找报错信息方式

《linux查找java项目日志查找报错信息方式》日志查找定位步骤:进入项目,用tail-f实时跟踪日志,tail-n1000查看末尾1000行,grep搜索关键词或时间,vim内精准查找并高亮定位,... 目录日志查找定位在当前文件里找到报错消息总结日志查找定位1.cd 进入项目2.正常日志 和错误日

在.NET项目中嵌入Python代码的实践指南

《在.NET项目中嵌入Python代码的实践指南》在现代开发中,.NET与Python的协作需求日益增长,从机器学习模型集成到科学计算,从脚本自动化到数据分析,然而,传统的解决方案(如HTTPAPI或... 目录一、CSnakes vs python.NET:为何选择 CSnakes?二、环境准备:从 Py

基于 Cursor 开发 Spring Boot 项目详细攻略

《基于Cursor开发SpringBoot项目详细攻略》Cursor是集成GPT4、Claude3.5等LLM的VSCode类AI编程工具,支持SpringBoot项目开发全流程,涵盖环境配... 目录cursor是什么?基于 Cursor 开发 Spring Boot 项目完整指南1. 环境准备2. 创建

Three.js构建一个 3D 商品展示空间完整实战项目

《Three.js构建一个3D商品展示空间完整实战项目》Three.js是一个强大的JavaScript库,专用于在Web浏览器中创建3D图形,:本文主要介绍Three.js构建一个3D商品展... 目录引言项目核心技术1. 项目架构与资源组织2. 多模型切换、交互热点绑定3. 移动端适配与帧率优化4. 可