diff --git a/项目管理库/诺唯赞CRM项目/CRM模块拆解分析/应收-开票-收款-核销分析.md b/项目管理库/诺唯赞CRM项目/CRM模块拆解分析/应收-开票-收款-核销分析.md
index ca20ef1..c807680 100644
--- a/项目管理库/诺唯赞CRM项目/CRM模块拆解分析/应收-开票-收款-核销分析.md
+++ b/项目管理库/诺唯赞CRM项目/CRM模块拆解分析/应收-开票-收款-核销分析.md
@@ -75,980 +75,9 @@ a+b+c=x

五、接口列表
----
-title: 诺唯赞CRM
-language_tabs:
- - shell: Shell
- - http: HTTP
- - javascript: JavaScript
- - ruby: Ruby
- - python: Python
- - php: PHP
- - java: Java
- - go: Go
-toc_footers: []
-includes: []
-search: true
-code_clipboard: true
-highlight_theme: darkula
-headingLevel: 2
-generator: "@tarslib/widdershins v4.0.22"
-
----
-
-# 诺唯赞CRM
-
-Base URLs:
-
-# Authentication
-
-# 发票明细
-
-## GET 根据发票号查询发票明细列表
-
-GET /api/invoiceDetail/listInvoiceDetail/{invoiceNum}
-
-### 请求参数
-
-|名称|位置|类型|必选|说明|
-|---|---|---|---|---|
-|invoiceNum|path|string| 是 |发票号|
-|Authorization|header|string| 是 |none|
-
-> 返回示例
-
-> 成功
-
-```json
-{
- "resultMsg": "",
- "resultCode": 0,
- "result": [
- {
- "id": "",
- "invoiceid": "",
- "ordercode": "",
- "productnum": "",
- "productcode": "",
- "productname": "",
- "spec": "",
- "salesUnitcode": "",
- "salesUnit": "",
- "taxprice": 0,
- "fileprice": 0,
- "promprice": 0,
- "valuationUnit": "",
- "valuationQuantity": 0,
- "salenum": 0,
- "taxRate": "",
- "amount": 0,
- "total": 0,
- "lotnum": "",
- "busiid": "",
- "sourcecode": "",
- "invoicenum": "",
- "orderdetailid": "",
- "erpdeptcode": "",
- "erpdeptname": "",
- "status": "",
- "sourceId": "",
- "productChainName": "",
- "isgift": "",
- "gifttype": "",
- "ordererName": "",
- "clientname": ""
- }
- ]
-}
-```
-
-### 返回结果
-
-|状态码|状态码含义|说明|数据模型|
-|---|---|---|---|
-|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|成功|Inline|
-
-### 返回数据结构
-
-## POST 根据发票编码查询发票明细列表
-
-POST /api/invoiceDetail/listInvoiceDetailByCodes
-
-> Body 请求参数
-
-```json
-[
- "string"
-]
-```
-
-### 请求参数
-
-|名称|位置|类型|必选|说明|
-|---|---|---|---|---|
-|Authorization|header|string| 是 |none|
-|body|body|array[string]| 否 |none|
-
-> 返回示例
-
-> 成功
-
-```json
-{
- "resultMsg": "",
- "resultCode": 0,
- "result": [
- {
- "id": "",
- "invoiceid": "",
- "ordercode": "",
- "productnum": "",
- "productcode": "",
- "productname": "",
- "spec": "",
- "salesUnitcode": "",
- "salesUnit": "",
- "taxprice": 0,
- "fileprice": 0,
- "promprice": 0,
- "valuationUnit": "",
- "valuationQuantity": 0,
- "salenum": 0,
- "taxRate": "",
- "amount": 0,
- "total": 0,
- "lotnum": "",
- "busiid": "",
- "sourcecode": "",
- "invoicenum": "",
- "orderdetailid": "",
- "erpdeptcode": "",
- "erpdeptname": "",
- "status": "",
- "sourceId": "",
- "productChainName": "",
- "isgift": "",
- "gifttype": "",
- "ordererName": "",
- "clientname": ""
- }
- ]
-}
-```
-
-### 返回结果
-
-|状态码|状态码含义|说明|数据模型|
-|---|---|---|---|
-|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|成功|Inline|
-
-### 返回数据结构
-
-## GET 根据应收单编码分组获取开票金额
-
-GET /api/invoiceDetail/getSumTotalGroupByReccode/{reccode}/{ordercode}
-
-### 请求参数
-
-|名称|位置|类型|必选|说明|
-|---|---|---|---|---|
-|reccode|query|string| 是 |none|
-|ordercode|query|string| 是 |none|
-|Authorization|header|string| 是 |none|
-
-> 返回示例
-
-> 成功
-
-```json
-[
- {
- "id": "",
- "invoicecode": "",
- "busidate": "",
- "invoicenum": "",
- "invoiceTime": "",
- "invoiceCategory": "",
- "status": "",
- "redorblue": "",
- "total": 0,
- "currency": "",
- "clientname": "",
- "clientcode": "",
- "invoicePname": "",
- "isred": "",
- "rednum": "",
- "istooffice": "",
- "invoicetype": "",
- "isinvoicing": "",
- "iswithgood": "",
- "isintime": "",
- "iswithtax": "",
- "isoffpricetax": "",
- "isgold": "",
- "iselectronic": "",
- "iscombined": "",
- "taxnumber": "",
- "openbank": "",
- "bankacc": "",
- "invoiceHead": "",
- "invoiceAdd": "",
- "phone": "",
- "remark": "",
- "detailList": [
- {
- "id": "",
- "invoiceid": "",
- "ordercode": "",
- "productnum": "",
- "productcode": "",
- "productname": "",
- "spec": "",
- "salesUnitcode": "",
- "salesUnit": "",
- "taxprice": 0,
- "fileprice": 0,
- "promprice": 0,
- "valuationUnit": "",
- "valuationQuantity": 0,
- "salenum": 0,
- "taxRate": "",
- "amount": 0,
- "total": 0,
- "lotnum": "",
- "busiid": "",
- "sourcecode": "",
- "invoicenum": "",
- "orderdetailid": "",
- "erpdeptcode": "",
- "erpdeptname": "",
- "status": "",
- "sourceId": "",
- "productChainName": "",
- "isgift": "",
- "gifttype": "",
- "ordererName": "",
- "clientname": ""
- }
- ],
- "receiptAdd": "",
- "invEmail": "",
- "invUrl": "",
- "writeamount": 0,
- "receivedStatus": "",
- "sourcecode": "",
- "busiid": "",
- "witeoffStatus": "",
- "isAuto": "",
- "redInvoiceWord": "",
- "invoiceWord": "",
- "isCheckAuthenticity": "",
- "invoiceOfd": "",
- "invoiceXml": ""
- }
-]
-```
-
-### 返回结果
-
-|状态码|状态码含义|说明|数据模型|
-|---|---|---|---|
-|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|成功|Inline|
-
-### 返回数据结构
-
-状态码 **200**
-
-|名称|类型|必选|约束|中文名|说明|
-|---|---|---|---|---|---|
-|*anonymous*|[[InvoiceDetailRes](#schemainvoicedetailres)]|false|none||none|
-|» id|string¦null|false|none||发票主键ID|
-|» invoicecode|string¦null|false|none||发票编号|
-|» busidate|string¦null|false|none||业务日期|
-|» invoicenum|string¦null|false|none||发票号|
-|» invoiceTime|string¦null|false|none||发票日期|
-|» invoiceCategory|string¦null|false|none||开票类型 :(发票类别):普票--common;专票--special|
-|» status|string¦null|false|none||开票状态 暂存--Z;创建--A;审核中--B;已审核--C;重新审核--D|
-|» redorblue|string¦null|false|none||红蓝字|
-|» total|number¦null|false|none||开票金额|
-|» currency|string¦null|false|none||币别|
-|» clientname|string¦null|false|none||客户名称|
-|» clientcode|string¦null|false|none||客户编码|
-|» invoicePname|string¦null|false|none||开票单位名称|
-|» isred|string¦null|false|none||是否红冲|
-|» rednum|string¦null|false|none||红冲票号|
-|» istooffice|string¦null|false|none||是否寄往办事处|
-|» invoicetype|string¦null|false|none||单据类型|
-|» isinvoicing|string¦null|false|none||是否立即开票|
-|» iswithgood|string¦null|false|none||是否随货同行|
-|» isintime|string¦null|false|none||是否及时发送|
-|» iswithtax|string¦null|false|none||是否按含税单价录入|
-|» isoffpricetax|string¦null|false|none||是否价外税|
-|» isgold|string¦null|false|none||是否开金税票|
-|» iselectronic|string¦null|false|none||开电子发票:是:Y;否:N;|
-|» iscombined|string¦null|false|none||合并开票:是:Y;否:N;|
-|» taxnumber|string¦null|false|none||纳税号|
-|» openbank|string¦null|false|none||开户银行|
-|» bankacc|string¦null|false|none||银行账户|
-|» invoiceHead|string¦null|false|none||开票抬头|
-|» invoiceAdd|string¦null|false|none||开票地址|
-|» phone|string¦null|false|none||电话|
-|» remark|string¦null|false|none||备注|
-|» detailList|[[InvoiceDetailEntity](#schemainvoicedetailentity)]¦null|false|none||发票明细|
-|»» id|string¦null|false|none||唯一ID
主键ID|
-|»» invoiceid|string¦null|false|none||对应开票表主键|
-|»» ordercode|string¦null|false|none||对应订单编码|
-|»» productnum|string¦null|false|none||货号|
-|»» productcode|string¦null|false|none||产品编码|
-|»» productname|string¦null|false|none||产品名称|
-|»» spec|string¦null|false|none||规格型号|
-|»» salesUnitcode|string¦null|false|none||销售单位编码|
-|»» salesUnit|string¦null|false|none||销售单位|
-|»» taxprice|number¦null|false|none||含税单价|
-|»» fileprice|number¦null|false|none||目录价|
-|»» promprice|number¦null|false|none||促销价|
-|»» valuationUnit|string¦null|false|none||计价单位|
-|»» valuationQuantity|number¦null|false|none||计价数量,这个是用来配合发票金额进行保存的,可以是小数|
-|»» salenum|number¦null|false|none||销售数量|
-|»» taxRate|string¦null|false|none||税率%|
-|»» amount|number¦null|false|none||产品总金额|
-|»» total|number¦null|false|none||价税合计=产品总金额 + 税额|
-|»» lotnum|string¦null|false|none||批号|
-|»» busiid|string¦null|false|none||业务ID:对应的应收单明细ID、订单明细ID|
-|»» sourcecode|string¦null|false|none||业务来源编码:订单编码;应收单编码;
业务来源编码:订单编码;应收单编码|
-|»» invoicenum|string¦null|false|none||发票号|
-|»» orderdetailid|string¦null|false|none||订单明细id(订单上开票使用)|
-|»» erpdeptcode|string¦null|false|none||ERP部门编码|
-|»» erpdeptname|string¦null|false|none||ERP部门名称|
-|»» status|string¦null|false|none||状态 启用:QY;禁用:JY|
-|»» sourceId|string¦null|false|none||来源ID|
-|»» productChainName|string¦null|false|none||物料中文描述|
-|»» isgift|string¦null|false|none||是否赠品|
-|»» gifttype|string¦null|false|none||赠品类型|
-|»» ordererName|string¦null|false|none||订货人|
-|»» clientname|string¦null|false|none||客户名称|
-|» receiptAdd|string¦null|false|none||文件地址|
-|» invEmail|string¦null|false|none||邮箱地址|
-|» invUrl|string¦null|false|none||电子发票地址|
-|» writeamount|number¦null|false|none||核销金额|
-|» receivedStatus|string¦null|false|none||核销情况|
-|» sourcecode|string¦null|false|none||业务来源编码:订单编码;应收单编码;|
-|» busiid|string¦null|false|none||发票业务id|
-|» witeoffStatus|string¦null|false|none||核销状态|
-|» isAuto|string¦null|false|none||是否自动开票 Y:是,N:否|
-|» redInvoiceWord|string¦null|false|none||红字发票代码|
-|» invoiceWord|string¦null|false|none||发票代码|
-|» isCheckAuthenticity|string¦null|false|none||是否查验真伪|
-|» invoiceOfd|string¦null|false|none||ofd格式|
-|» invoiceXml|string¦null|false|none||xml格式|
-
-## GET 根据订单编码分组获取开票金额
-
-GET /api/invoiceDetail/getSumTotalGroupByOrdercode/{ordercode}/{invoicecode}
-
-### 请求参数
-
-|名称|位置|类型|必选|说明|
-|---|---|---|---|---|
-|ordercode|query|string| 是 |none|
-|invoicecode|query|string| 是 |none|
-|Authorization|header|string| 是 |none|
-
-> 返回示例
-
-> 成功
-
-```json
-[
- {
- "id": "",
- "invoiceid": "",
- "ordercode": "",
- "productnum": "",
- "productcode": "",
- "productname": "",
- "spec": "",
- "salesUnitcode": "",
- "salesUnit": "",
- "taxprice": 0,
- "fileprice": 0,
- "promprice": 0,
- "valuationUnit": "",
- "valuationQuantity": 0,
- "salenum": 0,
- "taxRate": "",
- "amount": 0,
- "total": 0,
- "lotnum": "",
- "busiid": "",
- "sourcecode": "",
- "invoicenum": "",
- "orderdetailid": "",
- "erpdeptcode": "",
- "erpdeptname": "",
- "status": "",
- "sourceId": "",
- "productChainName": "",
- "isgift": "",
- "gifttype": "",
- "ordererName": "",
- "clientname": ""
- }
-]
-```
-
-### 返回结果
-
-|状态码|状态码含义|说明|数据模型|
-|---|---|---|---|
-|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|成功|Inline|
-
-### 返回数据结构
-
-状态码 **200**
-
-|名称|类型|必选|约束|中文名|说明|
-|---|---|---|---|---|---|
-|*anonymous*|[[InvoiceDetailEntity](#schemainvoicedetailentity)]|false|none||none|
-|» id|string¦null|false|none||唯一ID
主键ID|
-|» invoiceid|string¦null|false|none||对应开票表主键|
-|» ordercode|string¦null|false|none||对应订单编码|
-|» productnum|string¦null|false|none||货号|
-|» productcode|string¦null|false|none||产品编码|
-|» productname|string¦null|false|none||产品名称|
-|» spec|string¦null|false|none||规格型号|
-|» salesUnitcode|string¦null|false|none||销售单位编码|
-|» salesUnit|string¦null|false|none||销售单位|
-|» taxprice|number¦null|false|none||含税单价|
-|» fileprice|number¦null|false|none||目录价|
-|» promprice|number¦null|false|none||促销价|
-|» valuationUnit|string¦null|false|none||计价单位|
-|» valuationQuantity|number¦null|false|none||计价数量,这个是用来配合发票金额进行保存的,可以是小数|
-|» salenum|number¦null|false|none||销售数量|
-|» taxRate|string¦null|false|none||税率%|
-|» amount|number¦null|false|none||产品总金额|
-|» total|number¦null|false|none||价税合计=产品总金额 + 税额|
-|» lotnum|string¦null|false|none||批号|
-|» busiid|string¦null|false|none||业务ID:对应的应收单明细ID、订单明细ID|
-|» sourcecode|string¦null|false|none||业务来源编码:订单编码;应收单编码;
业务来源编码:订单编码;应收单编码|
-|» invoicenum|string¦null|false|none||发票号|
-|» orderdetailid|string¦null|false|none||订单明细id(订单上开票使用)|
-|» erpdeptcode|string¦null|false|none||ERP部门编码|
-|» erpdeptname|string¦null|false|none||ERP部门名称|
-|» status|string¦null|false|none||状态 启用:QY;禁用:JY|
-|» sourceId|string¦null|false|none||来源ID|
-|» productChainName|string¦null|false|none||物料中文描述|
-|» isgift|string¦null|false|none||是否赠品|
-|» gifttype|string¦null|false|none||赠品类型|
-|» ordererName|string¦null|false|none||订货人|
-|» clientname|string¦null|false|none||客户名称|
-
-## GET 根据开票单主键获取明细集合
-
-GET /api/invoiceDetail/getListByInvoiceid/{invoiceid}
-
-### 请求参数
-
-|名称|位置|类型|必选|说明|
-|---|---|---|---|---|
-|invoiceid|query|string| 是 |none|
-|Authorization|header|string| 是 |none|
-
-> 返回示例
-
-> 成功
-
-```json
-{
- "resultMsg": "",
- "resultCode": 0,
- "result": {}
-}
-```
-
-### 返回结果
-
-|状态码|状态码含义|说明|数据模型|
-|---|---|---|---|
-|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|成功|[AjaxResult](#schemaajaxresult)|
-
-## POST 根据id批量修改SAP发票号
-
-POST /api/invoiceDetail/updateSapInvoiceNumberById
-
-> Body 请求参数
-
-```json
-[
- {
- "id": "string",
- "invoiceid": "string",
- "ordercode": "string",
- "productnum": "string",
- "productcode": "string",
- "productname": "string",
- "spec": "string",
- "salesUnitcode": "string",
- "salesUnit": "string",
- "taxprice": 0,
- "fileprice": 0,
- "promprice": 0,
- "valuationUnit": "string",
- "valuationQuantity": 0,
- "salenum": 0,
- "taxRate": "string",
- "amount": 0,
- "total": 0,
- "lotnum": "string",
- "busiid": "string",
- "sourcecode": "string",
- "invoicenum": "string",
- "orderdetailid": "string",
- "erpdeptcode": "string",
- "erpdeptname": "string",
- "status": "string",
- "sourceId": "string",
- "productChainName": "string",
- "isgift": "string",
- "gifttype": "string",
- "ordererName": "string",
- "clientname": "string"
- }
-]
-```
-
-### 请求参数
-
-|名称|位置|类型|必选|说明|
-|---|---|---|---|---|
-|Authorization|header|string| 是 |none|
-|body|body|[InvoiceDetailEntity](#schemainvoicedetailentity)| 否 |none|
-
-> 返回示例
-
-> 成功
-
-```json
-{
- "resultMsg": "",
- "resultCode": 0,
- "result": {}
-}
-```
-
-### 返回结果
-
-|状态码|状态码含义|说明|数据模型|
-|---|---|---|---|
-|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|成功|[AjaxResult](#schemaajaxresult)|
-
-## POST 根据发票主键id集合获取对应的发票明细集合
-
-POST /api/invoiceDetail/listByInvoiceIdList
-
-> Body 请求参数
-
-```json
-[
- "string"
-]
-```
-
-### 请求参数
-
-|名称|位置|类型|必选|说明|
-|---|---|---|---|---|
-|Authorization|header|string| 是 |none|
-|body|body|array[string]| 否 |none|
-
-> 返回示例
-
-> 成功
-
-```json
-{
- "resultMsg": "",
- "resultCode": 0,
- "result": [
- {
- "id": "",
- "invoiceid": "",
- "ordercode": "",
- "productnum": "",
- "productcode": "",
- "productname": "",
- "spec": "",
- "salesUnitcode": "",
- "salesUnit": "",
- "taxprice": 0,
- "fileprice": 0,
- "promprice": 0,
- "valuationUnit": "",
- "valuationQuantity": 0,
- "salenum": 0,
- "taxRate": "",
- "amount": 0,
- "total": 0,
- "lotnum": "",
- "busiid": "",
- "sourcecode": "",
- "invoicenum": "",
- "orderdetailid": "",
- "erpdeptcode": "",
- "erpdeptname": "",
- "status": "",
- "sourceId": "",
- "productChainName": "",
- "isgift": "",
- "gifttype": "",
- "ordererName": "",
- "clientname": ""
- }
- ]
-}
-```
-
-### 返回结果
-
-|状态码|状态码含义|说明|数据模型|
-|---|---|---|---|
-|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|成功|Inline|
-
-### 返回数据结构
-
-# 数据模型
-
-