# 物资管理后台

> 本项目使用 [Ant Design Pro](https://pro.ant.design) 后台管理系统进行统一开发，所有组件/路由配置/项目配置都可以在官方文档进行查询<br />
> 第一期由外包团队进行开发，后续由公司自有团队进行后续开发和维护

## 项目 Git

#### [Gogs Git address](https://gogs.ywtinfo.com/guochengfeng/material-mg)

https://jenkins.ywtinfo.com/view/qa/job/qa-fe-material-mg/

#### 生产环境分支：publish

#### QA 环境分支：test

#### 开发环境分支：视需求版本而定

## jenkins deploy

分支代码更新后，需要在 jenkins 进行手动构建更新

qa 环境 <br />
[物资管理系统](https://jenkins.ywtinfo.com/view/qa/job/qa-fe-material-mg/) <br />
　<br />
prod 环境 <br/>
[物资管理系统](https://jenkins.ywtinfo.com/view/product/job/product-fe-material-mg/) <br />

## 项目 Command

node version: v12.14.0 及以上，yarn(包管理工具) install

安装依赖

```bash
npm install
```

or

```bash
yarn
```

### 启动项目

```bash
npm start
```

### 打包项目

```bash
npm run build
```

## 文件目录

```
├─ config                   项目的配置文件
│  ├─ config.dev.ts         开发阶段的配置文件
│  ├─ config.ts             总配置文件
│  ├─ defaultSettings.ts    ant全局样式配置文件
│  ├─ oneapi.json           ant生成的配置文件
│  ├─ proxy.ts              网络代理配置文件
│  └─ routes.ts             本地路由配置文件
├─ jest.config.js           单元测试的配置文件
├─ jsconfig.json            项目生成的配置文件
├─ lib                      第三方库依赖项
├─ mock                     mock数据
├─ package.json             项目依赖和配置文件
├─ public                   静态资源文件
├─ README.md                项目文档说明
├─ src                      业务代码存放文件
│  ├─ access.ts
│  ├─ app.tsx               运行时配置文件
│  ├─ assets                静态资源文件
│  ├─ components            业务组件存放文件
│  ├─ e2e                   框架生成的配置文件
│  ├─ global.less           全局样式文件
│  ├─ global.tsx            全局前置脚本文件
│  ├─ locales               国际化配置文件
│  ├─ pages                 业务代码文件
│  │  ├─ 403.tsx
│  │  ├─ 404.tsx
│  │  ├─ Admin.tsx
│  │  ├─ Administrative     科室管理模块
│  │  │  ├─ components
│  │  │  │  ├─ AddAdminForm.tsx 添加科室管理员模块
│  │  │  │  ├─ AddForm.tsx      添加科室模块
│  │  │  │  ├─ AdminList.tsx    科室列表弹窗模块
│  │  │  │  ├─ AgreementList.tsx 科室协议/须知模块
│  │  │  │  ├─ JsonForm.tsx       导入科室弹窗
│  │  │  │  └─ PersonnelJson.tsx    导入科室人员弹窗
│  │  │  ├─ data.d.ts
│  │  │  ├─ index.less
│  │  │  ├─ index.tsx           科室管理模块主文件
│  │  │  └─ service.ts           科室管理相关网络请求
│  │  ├─ HomePage               首页模块
│  │  │  ├─ data.d.ts
│  │  │  ├─ index.less
│  │  │  ├─ index.tsx            首页模块主文件
│  │  │  └─ service.ts            网络请求模块
│  │  ├─ OrderList                请领单模块
│  │  │  ├─ components
│  │  │  │  ├─ DetailEnquiry.tsx    物资明细下载弹窗
│  │  │  │  ├─ GoodsCancelDetail.tsx    退货详情弹窗
│  │  │  │  ├─ OrderDetail.less
│  │  │  │  ├─ OrderDetail.tsx      工单详情弹窗
│  │  │  ├─ data.d.ts
│  │  │  ├─ index.less
│  │  │  ├─ index.tsx            请领单模块主文件
│  │  │  └─ service.ts          请领单模块相关网络请求
│  │  ├─ RolesTableList         系统管理模块添加用户模块
│  │  ├─ StockList          物资出入库管理模块
│  │  │  ├─ components
│  │  │  │  ├─ AddGoodsForm.tsx 添加物资弹窗
│  │  │  │  ├─ GoodsFees.tsx    所属费用弹窗
│  │  │  │  ├─ GoodsList.tsx    物资列表
│  │  │  │  ├─ GoodsLogs.tsx    物资出入库记录弹窗
│  │  │  │  ├─ InventoryForm.tsx    修改库存弹窗
│  │  │  │  ├─ JsonForm.tsx     导入物资弹窗
│  │  │  │  └─ UnitForm.tsx     单位管理弹窗
│  │  │  ├─ data.d.ts
│  │  │  ├─ index.less
│  │  │  ├─ index.tsx       物资出入库管理模块主文件
│  │  │  └─ service.ts      物资出入库管理模块相关网络请求
│  │  ├─ Supplier             供应商资料管理模块
│  │  │  ├─ components
│  │  │  │  ├─ AddSupplierForm.tsx  添加供应商弹窗
│  │  │  │  ├─ AuditForm.tsx        审核供应商资料弹窗
│  │  │  │  ├─ EditSupplierForm.tsx 供应商修改资料弹窗
│  │  │  ├─ data.d.ts
│  │  │  ├─ index.less
│  │  │  ├─ index.tsx           供应商资料管理模块主文件
│  │  │  └─ service.ts           供应商资料管理模块相关网络请求
│  │  ├─ user                   用户相关模块
│  │  │  └─ Login               登录模块
│  │  │     ├─ index.less
│  │  │     ├─ index.tsx
│  │  │     └─ service.ts       登录模块相关网络请求
│  │  └─ Warehouse              仓库管理模块
│  │     ├─ components
│  │     │  ├─ AddAreaForm.tsx  添加用户弹窗
│  │     │  ├─ NoticeForm.tsx   须知编辑弹窗
│  │     │  └─ WarehouseForm.tsx 添加仓库弹窗
│  │     ├─ data.d.ts
│  │     ├─ index.less
│  │     ├─ index.tsx       仓库管理主模块
│  │     └─ service.ts      仓库管理相关网络请求
│  ├─ service-worker.js
│  ├─ services              公共网络请求模块
│  │  ├─ ant-design-pro
│  │  │  ├─ api.ts
│  │  │  ├─ index.ts
│  │  │  ├─ login.ts
│  │  │  └─ typings.d.ts
│  │  ├─ auth.ts            用户相关网络请求
│  │  ├─ menu.ts            菜单相关网络请求
│  │  ├─ public.ts           公共网络请求
│  ├─ typings.d.ts
│  └─ utils
│     └─ downloadExecl.tsx
├─ tests            单元测试相关
│  ├─ beforeTest.js
│  ├─ getBrowser.js
│  ├─ PuppeteerEnvironment.js
│  ├─ run-tests.js
│  └─ setupTests.js
├─ tsconfig.json
└─ hahah

```

# 本地启动

```
1、删掉src下面的 .umi、.umi-production 这两个文件夹
2、修改config文件下面的proxy.ts 文件，修改 target 所在路径
```
