# demo-test **Repository Path**: tufeiping/demo-test ## Basic Information - **Project Name**: demo-test - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: dev - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2022-03-05 - **Last Updated**: 2022-03-05 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 审易A8 **审易A8** 是 `北京用友审计软件有限公司` 的 `离线审计作业系统` 的产品名称,`北京用友审计软件有限公司`拥有全部知识产权,未经授权的情况下,任何组织及个人均不得泄露相关代码。 ## 客户环境要求 - 操作系统:Windows 7/8/10 Linux 3+ MacOS 10.10+ - CPU:Intel Core i5/i7/i9/AMD Ryzen/Ryzen - 内存:8G/16G/32G/64G - 硬盘:500G/1T ## 审易A8安装包包含 根据操作系统不同,安装包的类型不同,A8提供EXE,DMG或者ZIP格式。 安装包安装后的文件夹包含: - 主程序 - 依赖库 - MySQL数据库 - 帮助文档 ## 技术架构 桌面端应用,支持 `Windows/Linux/MacOS` 操作系统,支持 `x86/x64` 架构。采用 `Electron` 作为基础框架。UI 组件采用 `React` 开发。所有的三方组件均为开源项目(即使用于商业环境,也不存在版权问题)。 数据库采用 `MySQL` 数据库。 ### 应用程序架构 采用最常用的 `C/S` 架构,`审易A8` 产品是 `Client` 端,`Node/Electron`作为`Server`端(C/S一体),后端数据存储为 `MySQL`。 ~~~text +---------+ | Web UI | +---------+ | v +---------+ | NodeJS | +---------+ | v +---------+ | MySQL | +---------+ ~~~ ### 技术栈 进行**审易A8**的开发,需要开发人员熟悉以下技术栈 - NodeJS - Electron/Chromium - React - Webpack > 需要了解 Electron 的基本原理,对于 React 部分,前期⼤家都有接触了,后续加深理解和应⽤即可。开发模式其实与之前⼤家开发⽅式基本⼀样,Electron还是⽐较简单的(在不研究内部实现代码的情况下) 想了解**审易A8**选型背景的可以下载文档[《审易A8技术选型及技术栈简介.pdf》](http://10.2.112.21:30003/platform/shenyia8/-/blob/master/%E5%AE%A1%E6%98%93A8%E6%8A%80%E6%9C%AF%E9%80%89%E5%9E%8B%E5%8F%8A%E6%8A%80%E6%9C%AF%E6%A0%88%E7%AE%80%E4%BB%8B.pdf) ## 环境依赖 ### 编译期依赖 - `Electron` - `Node.js` - `npm` - `Webpack` - `React` > 如果提示 `electron-builder`(打包时) 没有,可以全局安装该工具 `npm i -g electron-builder` ### 运行期依赖 运行期在安装后,对于系统没有外部依赖(Linux环境可能需要安装`libudev`),可以直接使用。 ## 怎么开始? - 从gitlab代码仓库签出代码 `git clone http://10.2.112.21:30003/platform/shenyia8.git` - 安装依赖 `npm install` - 调试模式 `npm run start && npm run gui-start` - 打包 `npm run gui-build` > 注: 如果 `npm` 拉取依赖过慢或失败,建议使用 `nrm` 工具进行npm源调整,如果部分包还是不行,请翻墙后拉取 ## 用了哪些三方库? **审易A8** 产品不是凭空而来,也不是全部由`用友审计`的研发工程师们开发的,它是构建在`开源社区`提供的很多好的`框架/库`的基础之上,以下是产品用到的三方库(可能不全,这里列出比较重要的库,会随时新增): - [React](https://reactjs.org/) v17.0.2 - [NodeJS](https://nodejs.org/) v16.13.0 - [Electron](https://electronjs.org/) v15.3.0 - [Electron-builder](https://www.electron.build/using-electron-builder) v8.1.0 - [Webpack](https://webpack.js.org/) v4.44.2 - [MySQL](https://www.mysql.com/) v8+ - [DWZ](https://jui.org/doc/dwz-user-guide.pdf) v1.6.2 - [jQuery](https://jquery.com/) v3.4.1 - [i18next](https://www.i18next.com/) v21.4.0 - [yup](https://www.npmjs.com/package/yup) v0.32.11 - [formik](https://formik.org/) v2.2.9 - [material-ui](https://material-ui.com/) v5.0.0 - [visual studio code](https://code.visualstudio.com/) latest ## 关于版权 产品用到的所有的三方框架/库均为`开源免费`(特别关注其是否允许商业使用),且可以用于商业目的的框架/库,如果您发现有不符合或后续某个库`授权协议`有修改,请告知。基于`开源免费`的框架/库,我们会尽量保持其原有的授权协议,但不是说本产品(审易A8)本身是开源免费的,本产品(包括二进制发行包及所有代码)是商业私有的授权模式,所有的知识产权均归`北京用友审计软件有限公司`所有。 ----------- 👇 以下内容为React标准的 `README.md` 文档内容,因为我们整个项目还是用`npx create-react-app` 建立的骨架,所以了解一下也是必要的! ----------- # Getting Started with Create React App This project was bootstrapped with [Create React App](https://github.com/facebook/create-react-app). ## Available Scripts In the project directory, you can run: ### `yarn start` Runs the app in the development mode.\ Open [http://localhost:3000](http://localhost:3000) to view it in the browser. The page will reload if you make edits.\ You will also see any lint errors in the console. ### `yarn test` Launches the test runner in the interactive watch mode.\ See the section about [running tests](https://facebook.github.io/create-react-app/docs/running-tests) for more information. ### `yarn build` Builds the app for production to the `build` folder.\ It correctly bundles React in production mode and optimizes the build for the best performance. The build is minified and the filenames include the hashes.\ Your app is ready to be deployed! See the section about [deployment](https://facebook.github.io/create-react-app/docs/deployment) for more information. ### `yarn eject` **Note: this is a one-way operation. Once you `eject`, you can’t go back!** If you aren’t satisfied with the build tool and configuration choices, you can `eject` at any time. This command will remove the single build dependency from your project. Instead, it will copy all the configuration files and the transitive dependencies (webpack, Babel, ESLint, etc) right into your project so you have full control over them. All of the commands except `eject` will still work, but they will point to the copied scripts so you can tweak them. At this point you’re on your own. You don’t have to ever use `eject`. The curated feature set is suitable for small and middle deployments, and you shouldn’t feel obligated to use this feature. However we understand that this tool wouldn’t be useful if you couldn’t customize it when you are ready for it. ## Learn More You can learn more in the [Create React App documentation](https://facebook.github.io/create-react-app/docs/getting-started). To learn React, check out the [React documentation](https://reactjs.org/). ### Code Splitting This section has moved here: [https://facebook.github.io/create-react-app/docs/code-splitting](https://facebook.github.io/create-react-app/docs/code-splitting) ### Analyzing the Bundle Size This section has moved here: [https://facebook.github.io/create-react-app/docs/analyzing-the-bundle-size](https://facebook.github.io/create-react-app/docs/analyzing-the-bundle-size) ### Making a Progressive Web App This section has moved here: [https://facebook.github.io/create-react-app/docs/making-a-progressive-web-app](https://facebook.github.io/create-react-app/docs/making-a-progressive-web-app) ### Advanced Configuration This section has moved here: [https://facebook.github.io/create-react-app/docs/advanced-configuration](https://facebook.github.io/create-react-app/docs/advanced-configuration) ### Deployment This section has moved here: [https://facebook.github.io/create-react-app/docs/deployment](https://facebook.github.io/create-react-app/docs/deployment) ### `yarn build` fails to minify This section has moved here: [https://facebook.github.io/create-react-app/docs/troubleshooting#npm-run-build-fails-to-minify](https://facebook.github.io/create-react-app/docs/troubleshooting#npm-run-build-fails-to-minify)