1 Star 0 Fork 0

StopNo / steedos-contracts-app

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README
Apache-2.0

华炎合同管理系统

界面效果图

合同管理是落实企业风险管理和内部控制的一项核心的管理业务,合同管理的好坏直接影响企业的经营绩效。

华炎合同管理系统是国内首个全功能的开源合同管理解决方案,以合同为中心,通过合同订立、执行、监督、统计及维护跟踪,在规避法律风险的同时实现合同价值最大化。

管合同

对公司所有的合同进行分类管理,包括合同的对方单位、签订日期、金额、履约状态、分类等基本要素,以及合同的应收应付、实收实付、验收状态、开票记录等相关表信息。

通过配置列表视图,开发人员可以呈现个性化的列表界面给用户,包括列表中显示的字段、排序规则、数据筛选条件,并可指定常用字段为筛选字段,由最终用户筛选,进行数据过滤。双击列表中的字段,可以快捷更改记录的内容。

点击合同标题,即可进入合同查看页面。业务对象的所有字段均通过配置文件申明,如需新增字段,或是修改字段的类型、显示名称、可选项、相关表、字段分组、显示顺序等,均可通过修改配置文件满足业务需求。例如对于外资企业,可以增加币种字段;对于上市公司,可以增加是否关联交易字段;对于服务类合同,可以记录合同的开始日期和结束日期。在合同查看页面双击字段名,一样可以快捷修改。

除了显示合同的基本要素,合同查看页面还列出了合同的应收应付、实收实付、验收状态、开票记录等相关表信息。业务人员可以在同一个界面中对合同相关信息有全面的了解,还可以快捷的为此合同创建相关付款记录。而实现这些功能,只需要在配置文件中配置对象的关联属性即可。

管对方单位

合同台账中可以设定对方单位相关表,将公司的客户、供应商进行统一登记管理。可以记录单位的类别、优先级、基本资料以及相关的联系人等信息,可以对单位的历史信誉进行评分和评价。点击单位名称,可以查看到与此单位签订的所有合同清单、应收应付以及待办任务。新增合同时可从单位主数据库中选择,也可以创建新的单位。

管资金

合同台账可以设定应收应付子表,可在合同签订阶段登记合同约定的应收应付日期、合同的开票日期等信息。并在实际付款流程走完之后更新相关信息。通过对应收应付数据的统计,可以实现对未来1个月~1年的应收、应付账款进行预算,帮助财务部门做好资金准备。

管进度

对于合同中需要分配的任务和需要提醒的预警信息,可以配置任务子表,对每个合同创建待办任务。任务可以分派给具体的责任人,可以指定提醒日期。责任人可以在统一的界面中汇总查看来自各个合同中的待办任务,并通过月历视图浏览每个月的任务安排。

管权限

通过配置合同对象的权限,可以限制经办人只能查看本人负责的合同、公司主管可以查看本单位的合同,集团领导可以查看集团所有合同。对于重要字段,例如金额、对方单位、履约状态等,还可以配置审计功能,对这些字段的任何修改,系统均会自动记录审计日志。

管统计分析

通过配置合同统计报表,可以按履约状态、按日期、按分类对合同进行多维度的汇总与分析。系统支持普通的列表统计、分类统计、二维表,支持通过可视化的界面对报表样式进行排版。对于复杂需求的报表,也可以通过javascript和html编写报表模版文件,实现完全个性化的统计分析。

管审批

通过与华炎审批王系统集成,配置合同审批流程,从合同的拟稿,部门初审,到相关部门的会审,到自动进入台账,均可自动完成。只需编写配置文件,审批单中的要素可自动映射为合同台账中的字段。开发人员还可以编写触发器,当审批单进入合同台账时进行必要的计算与处理。

审批王界面效果图

源码解析

每个企业因行业不同、规模不同、业务不同,合同管理的要素和侧重点也不一样。华炎合同管理系统基于Creator“低代码”平台开发,在提供强大功能的同时,按需定制也非常方便。开发人员无需编写代码,只需调整配置文件,即可快速满足业务部门的需求。

项目结构

项目核心源码非常简单,包括以下内容:

系统配置文件

文件 steedos-config.yml ,配置系统参数:

  • 数据库连接方式;
  • 附件存储位置;
  • 服务端口和访问地址。

系统可以连接到默认的MongoDB数据库,也可以连接到第三方系统的Oracle, SQL Server, MySQL, PostgreSQL数据库。

对象配置文件

文件 src/contract/contracts.object.yml,每一个业务对象是一个独立的配置文件。

  • 设定对象的基本属性,例如显示名、数据表名、图标等;
  • 设定对象启用的功能,包括:
    • 允许上传附件;
    • 允许全局搜索;
    • 允许创建任务;
    • 允许创建日程;
    • 允许发表评论;
    • 开通API接口;
    • 开启审计日志;
    • 启用回收站。

配置对象字段

开发人员可以配置对象的字段,Creator支持常见的字段类型:

  • 文本型;
  • 日期型;
  • 布尔型;
  • 数值型;
  • 选择型(单选、多选);
  • 关联到相关表(单选、多选)。

开发人员可以设定字段的显示名称、描述、可选项、是否必填、分组显示等参数。 开发人员可以将字段关联到另一个对象,两个对象之间会自动创建关联关系,在查看主表记录时,自动显示相关的子表记录。

配置列表视图:

开发人员可以配置对象的列表视图,一个对象可以由一个或多个列表视图组成。业务人员在前台操作时,可以很方便的切换列表视图,也可以自定义列表视图。

列表视图可以配置以下参数:

  • 选择列表显示的字段;
  • 设定排序规则;
  • 设定列表过滤条件;
  • 设定快捷过滤字段。

配置访问权限:

开发人员可以配置对象的默认访问权限,系统上线后,系统管理员也可以在设置界面中设置对象权限。

对象可以配置以下权限:

  • 允许创建;
  • 允许修改;
  • 允许删除;
  • 允许查看所有记录;
  • 允许修改所有记录; 高级权限配置:
  • 对于集团企业,可以设定只能查看、修改本单位的数据;
  • 对于敏感的业务数据,可以设定只能查看、修改部分字段。

触发器

触发器 src/triggers/contracts.object.js,业务逻辑触发器,可以在数据增删改发生时处理业务逻辑。

  • 数据插入前;
  • 数据插入后;
  • 数据更新前;
  • 数据更新后;
  • 数据删除前;
  • 数据删除后;

项目源码基于NodeJS,使用MongoDB数据库,可以轻松与您现有的NodeJS项目集成,或是通过系统提供的标准化ODATA、GraphQL接口与第三方业务系统集成。

源码安装与调试

安装前准备

安装 yarn

npm i yarn -g

使用yarn安装依赖包

yarn

启动服务器

yarn start

了解更多

关于 Steedos 低代码开发平台

Copyright 2001-present Steedos, Inc. Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION 1. Definitions. "License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. "Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. "Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. "You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. "Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. "Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. "Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). "Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. "Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." "Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. 2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. 3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. 4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: (a) You must give any other recipients of the Work or Derivative Works a copy of this License; and (b) You must cause any modified files to carry prominent notices stating that You changed the files; and (c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and (d) If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. 5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. 6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. 7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. 8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. 9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. END OF TERMS AND CONDITIONS APPENDIX: How to apply the Apache License to your work. To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets "{}" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page" as the copyright notice for easier identification within third-party archives. Copyright {yyyy} {name of copyright owner} Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

简介

暂无描述 展开 收起
Apache-2.0
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
1
https://gitee.com/stopno/steedos-contracts-app.git
git@gitee.com:stopno/steedos-contracts-app.git
stopno
steedos-contracts-app
steedos-contracts-app
master

搜索帮助