Skip to content
项目
群组
代码片段
帮助
正在加载...
帮助
提交反馈
为 GitLab 提交贡献
登录
切换导航
I
iBiz企业中心
项目
项目
详情
动态
版本
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
计划
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
统计图
创建新议题
作业
提交
议题看板
打开侧边栏
iBiz企业套件
iBiz企业中心
提交
4a96b2a1
提交
4a96b2a1
编写于
6月 29, 2020
作者:
ibizdev
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
lab_gzf 发布系统代码
上级
08888428
变更
43
隐藏空白字符变更
内嵌
并排
正在显示
43 个修改的文件
包含
4326 行增加
和
60 行删除
+4326
-60
data-dictionary.json
app_CRM/public/assets/json/data-dictionary.json
+124
-0
view-config.json
app_CRM/public/assets/json/view-config.json
+81
-1
invoice-detail.ts
app_CRM/src/interface/entity/invoice-detail.ts
+560
-0
en-US.ts
app_CRM/src/locale/lang/en-US.ts
+2
-0
zh-CN.ts
app_CRM/src/locale/lang/zh-CN.ts
+2
-0
codelist_en_US.ts
app_CRM/src/locale/lanres/codelist/codelist_en_US.ts
+17
-0
codelist_zh_CN.ts
app_CRM/src/locale/lanres/codelist/codelist_zh_CN.ts
+17
-0
invoice-detail_en_US.ts
...le/lanres/entities/invoice-detail/invoice-detail_en_US.ts
+195
-0
invoice-detail_zh_CN.ts
...le/lanres/entities/invoice-detail/invoice-detail_zh_CN.ts
+194
-0
invoice_en_US.ts
app_CRM/src/locale/lanres/entities/invoice/invoice_en_US.ts
+86
-0
invoice_zh_CN.ts
app_CRM/src/locale/lanres/entities/invoice/invoice_zh_CN.ts
+86
-0
sales-order_en_US.ts
...c/locale/lanres/entities/sales-order/sales-order_en_US.ts
+9
-1
sales-order_zh_CN.ts
...c/locale/lanres/entities/sales-order/sales-order_zh_CN.ts
+9
-1
codelist.ts
app_CRM/src/mock/codelist/codelist.ts
+124
-0
invoice-details.ts
app_CRM/src/mock/entity/invoice-details/invoice-details.ts
+651
-0
index.ts
app_CRM/src/mock/index.ts
+1
-0
viewconfig.ts
app_CRM/src/mock/viewconfig/viewconfig.ts
+65
-1
opportunity-info-abstract.html
.../opportunity-info-abstract/opportunity-info-abstract.html
+0
-3
sales-order-quick-create-view-base.tsx
...-quick-create-view/sales-order-quick-create-view-base.tsx
+1
-1
sales-order-quick-create-view.html
...rder-quick-create-view/sales-order-quick-create-view.html
+1
-1
sales-order-quick-create-view.vue
...order-quick-create-view/sales-order-quick-create-view.vue
+1
-1
entity-service-register.ts
app_CRM/src/service/entity-service-register.ts
+1
-0
invoice-detail-service-base.ts
...src/service/invoice-detail/invoice-detail-service-base.ts
+227
-0
invoice-detail-service.ts
app_CRM/src/service/invoice-detail/invoice-detail-service.ts
+25
-0
invoice-service-base.ts
app_CRM/src/service/invoice/invoice-service-base.ts
+50
-0
state.ts
app_CRM/src/store/modules/view-action/state.ts
+4
-1
invoice-detail-ui-service-base.ts
...iservice/invoice-detail/invoice-detail-ui-service-base.ts
+212
-0
invoice-detail-ui-service.ts
...src/uiservice/invoice-detail/invoice-detail-ui-service.ts
+21
-0
invoice-ui-service-base.ts
app_CRM/src/uiservice/invoice/invoice-ui-service-base.ts
+4
-0
sales-order-ui-service-base.ts
.../src/uiservice/sales-order/sales-order-ui-service-base.ts
+2
-0
ui-service-register.ts
app_CRM/src/uiservice/ui-service-register.ts
+1
-0
abstract-info-dashboard.vue
...unity/abstract-info-dashboard/abstract-info-dashboard.vue
+1
-1
application-crm-prod.yml
...ntral-app-crm/src/main/resources/application-crm-prod.yml
+4
-0
InvoiceDetail.java
...ab/businesscentral/core/finance/domain/InvoiceDetail.java
+30
-15
InvoiceDetailSearchContext.java
...ntral/core/finance/filter/InvoiceDetailSearchContext.java
+28
-0
InvoiceDetailServiceImpl.java
...l/core/finance/service/impl/InvoiceDetailServiceImpl.java
+33
-0
h2_table.xml
...esscentral-core/src/main/resources/liquibase/h2_table.xml
+32
-30
InvoiceDetailMapper.xml
...rces/mapper/finance/invoicedetail/InvoiceDetailMapper.xml
+3
-3
systemResource.json
...al-core/src/main/resources/permission/systemResource.json
+8
-0
InvoiceDetailDTO.java
...zlab/businesscentral/centralapi/dto/InvoiceDetailDTO.java
+1097
-0
InvoiceDetailMapping.java
...inesscentral/centralapi/mapping/InvoiceDetailMapping.java
+16
-0
InvoiceDetailResource.java
...usinesscentral/centralapi/rest/InvoiceDetailResource.java
+297
-0
AppController.java
...a/cn/ibizlab/businesscentral/util/rest/AppController.java
+4
-0
未找到文件。
app_CRM/public/assets/json/data-dictionary.json
浏览文件 @
4a96b2a1
...
@@ -2654,6 +2654,83 @@
...
@@ -2654,6 +2654,83 @@
}
}
]
]
},
},
{
"srfkey"
:
"Invoice__ShippingMethodCode"
,
"emptytext"
:
"未定义"
,
"codelisttype"
:
"static"
,
"items"
:
[
{
"id"
:
"2"
,
"label"
:
"DHL"
,
"text"
:
"DHL"
,
"data"
:
""
,
"codename"
:
"Item_2"
,
"value"
:
"2"
,
"disabled"
:
false
}
,
{
"id"
:
"3"
,
"label"
:
"FedEx"
,
"text"
:
"FedEx"
,
"data"
:
""
,
"codename"
:
"Item_3"
,
"value"
:
"3"
,
"disabled"
:
false
}
,
{
"id"
:
"6"
,
"label"
:
"Full Load"
,
"text"
:
"Full Load"
,
"data"
:
""
,
"codename"
:
"Item_6"
,
"value"
:
"6"
,
"disabled"
:
false
}
,
{
"id"
:
"4"
,
"label"
:
"UPS"
,
"text"
:
"UPS"
,
"data"
:
""
,
"codename"
:
"Item_4"
,
"value"
:
"4"
,
"disabled"
:
false
}
,
{
"id"
:
"7"
,
"label"
:
"Will Call"
,
"text"
:
"Will Call"
,
"data"
:
""
,
"codename"
:
"Item_7"
,
"value"
:
"7"
,
"disabled"
:
false
}
,
{
"id"
:
"1"
,
"label"
:
"航空运输"
,
"text"
:
"航空运输"
,
"data"
:
""
,
"codename"
:
"Item_1"
,
"value"
:
"1"
,
"disabled"
:
false
}
,
{
"id"
:
"5"
,
"label"
:
"邮递"
,
"text"
:
"邮递"
,
"data"
:
""
,
"codename"
:
"Item_5"
,
"value"
:
"5"
,
"disabled"
:
false
}
]
},
{
{
"srfkey"
:
"Lead__StatusCode"
,
"srfkey"
:
"Lead__StatusCode"
,
"emptytext"
:
"未定义"
,
"emptytext"
:
"未定义"
,
...
@@ -2731,6 +2808,53 @@
...
@@ -2731,6 +2808,53 @@
}
}
]
]
},
},
{
"srfkey"
:
"Invoice__PaymentTermsCode"
,
"emptytext"
:
"未定义"
,
"codelisttype"
:
"static"
,
"items"
:
[
{
"id"
:
"2"
,
"label"
:
"2/10 N30"
,
"text"
:
"2/10 N30"
,
"data"
:
""
,
"codename"
:
"Item_2"
,
"value"
:
"2"
,
"disabled"
:
false
}
,
{
"id"
:
"1"
,
"label"
:
"N30"
,
"text"
:
"N30"
,
"data"
:
""
,
"codename"
:
"Item_1"
,
"value"
:
"1"
,
"disabled"
:
false
}
,
{
"id"
:
"3"
,
"label"
:
"N45"
,
"text"
:
"N45"
,
"data"
:
""
,
"codename"
:
"Item_3"
,
"value"
:
"3"
,
"disabled"
:
false
}
,
{
"id"
:
"4"
,
"label"
:
"N60"
,
"text"
:
"N60"
,
"data"
:
""
,
"codename"
:
"Item_4"
,
"value"
:
"4"
,
"disabled"
:
false
}
]
},
{
{
"srfkey"
:
"Account__PreferredContactMethodCode"
,
"srfkey"
:
"Account__PreferredContactMethodCode"
,
"emptytext"
:
"未定义"
,
"emptytext"
:
"未定义"
,
...
...
app_CRM/public/assets/json/view-config.json
浏览文件 @
4a96b2a1
...
@@ -109,6 +109,16 @@
...
@@ -109,6 +109,16 @@
"viewtag"
:
"0f4dc7da727ad15a2cad62fe966a633c"
,
"viewtag"
:
"0f4dc7da727ad15a2cad62fe966a633c"
,
"memo"
:
"系统自动添加"
"memo"
:
"系统自动添加"
},
},
"invoicequickcreateview"
:
{
"title"
:
"快速新建"
,
"caption"
:
"发票"
,
"viewtype"
:
"DEOPTVIEW"
,
"viewmodule"
:
"Finance"
,
"viewname"
:
"InvoiceQuickCreateView"
,
"viewfilename"
:
"invoice-quick-create-view"
,
"viewtag"
:
"0fc09bf520af62b4d89aef845fc72636"
,
"memo"
:
""
},
"salesordereditview"
:
{
"salesordereditview"
:
{
"title"
:
"订单编辑视图"
,
"title"
:
"订单编辑视图"
,
"caption"
:
"订单"
,
"caption"
:
"订单"
,
...
@@ -279,6 +289,16 @@
...
@@ -279,6 +289,16 @@
"viewtag"
:
"2b787c59ba090b37b9a1ba8f8ba045b4"
,
"viewtag"
:
"2b787c59ba090b37b9a1ba8f8ba045b4"
,
"memo"
:
""
"memo"
:
""
},
},
"invoicedetailinvoiceprogridview"
:
{
"title"
:
"发票产品表格视图"
,
"caption"
:
"发票产品"
,
"viewtype"
:
"DEGRIDVIEW"
,
"viewmodule"
:
"Finance"
,
"viewname"
:
"InvoiceDetailInvoiceProGridView"
,
"viewfilename"
:
"invoice-detail-invoice-pro-grid-view"
,
"viewtag"
:
"2bb0e34c7ae753e03404e4d96b17e90c"
,
"memo"
:
""
},
"listleadbylist"
:
{
"listleadbylist"
:
{
"title"
:
"营销列表-潜在客户(根据营销列表)"
,
"title"
:
"营销列表-潜在客户(根据营销列表)"
,
"caption"
:
"潜在客户"
,
"caption"
:
"潜在客户"
,
...
@@ -489,6 +509,16 @@
...
@@ -489,6 +509,16 @@
"viewtag"
:
"4799b0e7139b537ebe9313a004daa0ac"
,
"viewtag"
:
"4799b0e7139b537ebe9313a004daa0ac"
,
"memo"
:
"系统自动添加"
"memo"
:
"系统自动添加"
},
},
"invoicedetaileditview"
:
{
"title"
:
"发票产品编辑视图"
,
"caption"
:
"发票产品"
,
"viewtype"
:
"DEEDITVIEW"
,
"viewmodule"
:
"Finance"
,
"viewname"
:
"InvoiceDetailEditView"
,
"viewfilename"
:
"invoice-detail-edit-view"
,
"viewtag"
:
"485d1a17354fe57fd79dde512adb715b"
,
"memo"
:
"系统自动添加"
},
"listaccounteditview"
:
{
"listaccounteditview"
:
{
"title"
:
"营销列表-账户编辑视图"
,
"title"
:
"营销列表-账户编辑视图"
,
"caption"
:
"营销列表-账户"
,
"caption"
:
"营销列表-账户"
,
...
@@ -779,6 +809,16 @@
...
@@ -779,6 +809,16 @@
"viewtag"
:
"75b6e6474d2b1adcae64bafd60edb618"
,
"viewtag"
:
"75b6e6474d2b1adcae64bafd60edb618"
,
"memo"
:
"系统自动添加"
"memo"
:
"系统自动添加"
},
},
"invoicesummaryview"
:
{
"title"
:
"发票数据看板视图"
,
"caption"
:
"发票"
,
"viewtype"
:
"DEPORTALVIEW"
,
"viewmodule"
:
"Finance"
,
"viewname"
:
"InvoiceSummaryView"
,
"viewfilename"
:
"invoice-summary-view"
,
"viewtag"
:
"77ef5d53fe0cadbe03c9d2f9d25c804b"
,
"memo"
:
""
},
"goaleditview"
:
{
"goaleditview"
:
{
"title"
:
"目标编辑视图"
,
"title"
:
"目标编辑视图"
,
"caption"
:
"目标"
,
"caption"
:
"目标"
,
...
@@ -1209,6 +1249,16 @@
...
@@ -1209,6 +1249,16 @@
"viewtag"
:
"aaa875342bd9286a39c2d193a150afc4"
,
"viewtag"
:
"aaa875342bd9286a39c2d193a150afc4"
,
"memo"
:
""
"memo"
:
""
},
},
"invoiceinfoview"
:
{
"title"
:
"发票信息"
,
"caption"
:
"发票"
,
"viewtype"
:
"DETABEXPVIEW"
,
"viewmodule"
:
"Finance"
,
"viewname"
:
"InvoiceInfoView"
,
"viewfilename"
:
"invoice-info-view"
,
"viewtag"
:
"ab653866ca40a1cefde21241ac5ba44c"
,
"memo"
:
""
},
"competitorinfo"
:
{
"competitorinfo"
:
{
"title"
:
"竞争对手"
,
"title"
:
"竞争对手"
,
"caption"
:
"竞争对手"
,
"caption"
:
"竞争对手"
,
...
@@ -1379,6 +1429,16 @@
...
@@ -1379,6 +1429,16 @@
"viewtag"
:
"c74c14188b89f72079643170a83c25f5"
,
"viewtag"
:
"c74c14188b89f72079643170a83c25f5"
,
"memo"
:
""
"memo"
:
""
},
},
"salesorderpickupgridview"
:
{
"title"
:
"订单选择表格视图"
,
"caption"
:
"订单"
,
"viewtype"
:
"DEPICKUPGRIDVIEW"
,
"viewmodule"
:
"Sales"
,
"viewname"
:
"SalesOrderPickupGridView"
,
"viewfilename"
:
"sales-order-pickup-grid-view"
,
"viewtag"
:
"c78a9fa4a75c9a957de0bacd4c0c911c"
,
"memo"
:
"系统自动添加"
},
"listcontacteditview"
:
{
"listcontacteditview"
:
{
"title"
:
"营销列表-联系人编辑视图"
,
"title"
:
"营销列表-联系人编辑视图"
,
"caption"
:
"营销列表-联系人"
,
"caption"
:
"营销列表-联系人"
,
...
@@ -1459,6 +1519,16 @@
...
@@ -1459,6 +1519,16 @@
"viewtag"
:
"e0aef8c0d1f1ae28f628a0541b118961"
,
"viewtag"
:
"e0aef8c0d1f1ae28f628a0541b118961"
,
"memo"
:
""
"memo"
:
""
},
},
"invoiceinfo_invoiceview"
:
{
"title"
:
"发票编辑视图"
,
"caption"
:
"发票"
,
"viewtype"
:
"DEEDITVIEW"
,
"viewmodule"
:
"Finance"
,
"viewname"
:
"InvoiceInfo_InvoiceView"
,
"viewfilename"
:
"invoice-info-invoice-view"
,
"viewtag"
:
"e167550b61bf1bd019a8e522b8fccc21"
,
"memo"
:
""
},
"accountinfo_contactsetting"
:
{
"accountinfo_contactsetting"
:
{
"title"
:
"客户编辑视图"
,
"title"
:
"客户编辑视图"
,
"caption"
:
"客户"
,
"caption"
:
"客户"
,
...
@@ -1520,7 +1590,7 @@
...
@@ -1520,7 +1590,7 @@
"memo"
:
"系统自动添加"
"memo"
:
"系统自动添加"
},
},
"salesorderquickcreateview"
:
{
"salesorderquickcreateview"
:
{
"title"
:
"
订单选项操作视图
"
,
"title"
:
"
快速新建
"
,
"caption"
:
"订单"
,
"caption"
:
"订单"
,
"viewtype"
:
"DEOPTVIEW"
,
"viewtype"
:
"DEOPTVIEW"
,
"viewmodule"
:
"Sales"
,
"viewmodule"
:
"Sales"
,
...
@@ -1549,6 +1619,16 @@
...
@@ -1549,6 +1619,16 @@
"viewtag"
:
"f63525be2835a01da997d7f059efb09f"
,
"viewtag"
:
"f63525be2835a01da997d7f059efb09f"
,
"memo"
:
"系统自动添加"
"memo"
:
"系统自动添加"
},
},
"salesorderpickupview"
:
{
"title"
:
"订单数据选择视图"
,
"caption"
:
"订单"
,
"viewtype"
:
"DEPICKUPVIEW"
,
"viewmodule"
:
"Sales"
,
"viewname"
:
"SalesOrderPickupView"
,
"viewfilename"
:
"sales-order-pickup-view"
,
"viewtag"
:
"f6f91153f3caa976cf7f552636f7e012"
,
"memo"
:
"系统自动添加"
},
"taskeditview"
:
{
"taskeditview"
:
{
"title"
:
"任务编辑视图"
,
"title"
:
"任务编辑视图"
,
"caption"
:
"任务"
,
"caption"
:
"任务"
,
...
...
app_CRM/src/interface/entity/invoice-detail.ts
0 → 100644
浏览文件 @
4a96b2a1
/**
* 发票产品
*
* @export
* @interface InvoiceDetail
*/
export
interface
InvoiceDetail
{
/**
* 更新时间
*
* @returns {*}
* @memberof InvoiceDetail
*/
updatedate
?:
any
;
/**
* 名称
*
* @returns {*}
* @memberof InvoiceDetail
*/
invoicedetailname
?:
any
;
/**
* 负责人类型
*
* @returns {*}
* @memberof InvoiceDetail
*/
owneridtype
?:
any
;
/**
* 延期交货数量
*
* @returns {*}
* @memberof InvoiceDetail
*/
quantitybackordered
?:
any
;
/**
* 产品类型
*
* @returns {*}
* @memberof InvoiceDetail
*/
producttypecode
?:
any
;
/**
* 发票状态
*
* @returns {*}
* @memberof InvoiceDetail
*/
invoicestatecode
?:
any
;
/**
* Time Zone Rule Version Number
*
* @returns {*}
* @memberof InvoiceDetail
*/
timezoneruleversionnumber
?:
any
;
/**
* 送至省/市/自治区
*
* @returns {*}
* @memberof InvoiceDetail
*/
shipto_stateorprovince
?:
any
;
/**
* 金额 (Base)
*
* @returns {*}
* @memberof InvoiceDetail
*/
baseamount_base
?:
any
;
/**
* 送货地址
*
* @returns {*}
* @memberof InvoiceDetail
*/
willcall
?:
any
;
/**
* Record Created On
*
* @returns {*}
* @memberof InvoiceDetail
*/
overriddencreatedon
?:
any
;
/**
* 父捆绑销售
*
* @returns {*}
* @memberof InvoiceDetail
*/
parentbundleid
?:
any
;
/**
* Import Sequence Number
*
* @returns {*}
* @memberof InvoiceDetail
*/
importsequencenumber
?:
any
;
/**
* 属性配置
*
* @returns {*}
* @memberof InvoiceDetail
*/
propertyconfigurationstatus
?:
any
;
/**
* 更新人
*
* @returns {*}
* @memberof InvoiceDetail
*/
updateman
?:
any
;
/**
* 单价 (Base)
*
* @returns {*}
* @memberof InvoiceDetail
*/
priceperunit_base
?:
any
;
/**
* 送至国家/地区
*
* @returns {*}
* @memberof InvoiceDetail
*/
shipto_country
?:
any
;
/**
* 已复制
*
* @returns {*}
* @memberof InvoiceDetail
*/
copied
?:
any
;
/**
* 明细项目编号
*
* @returns {*}
* @memberof InvoiceDetail
*/
lineitemnumber
?:
any
;
/**
* 单价
*
* @returns {*}
* @memberof InvoiceDetail
*/
priceperunit
?:
any
;
/**
* 批发折扣 (Base)
*
* @returns {*}
* @memberof InvoiceDetail
*/
volumediscountamount_base
?:
any
;
/**
* 送货地的传真号码
*
* @returns {*}
* @memberof InvoiceDetail
*/
shipto_fax
?:
any
;
/**
* 送至街道 1
*
* @returns {*}
* @memberof InvoiceDetail
*/
shipto_line1
?:
any
;
/**
* 说明
*
* @returns {*}
* @memberof InvoiceDetail
*/
description
?:
any
;
/**
* 货运条款
*
* @returns {*}
* @memberof InvoiceDetail
*/
shipto_freighttermscode
?:
any
;
/**
* 负责人
*
* @returns {*}
* @memberof InvoiceDetail
*/
ownerid
?:
any
;
/**
* 税 (Base)
*
* @returns {*}
* @memberof InvoiceDetail
*/
tax_base
?:
any
;
/**
* 送货地的电话号码
*
* @returns {*}
* @memberof InvoiceDetail
*/
shipto_telephone
?:
any
;
/**
* 定价
*
* @returns {*}
* @memberof InvoiceDetail
*/
priceoverridden
?:
any
;
/**
* 交付时间
*
* @returns {*}
* @memberof InvoiceDetail
*/
actualdeliveryon
?:
any
;
/**
* 送货地的名称
*
* @returns {*}
* @memberof InvoiceDetail
*/
shipto_name
?:
any
;
/**
* 建立人
*
* @returns {*}
* @memberof InvoiceDetail
*/
createman
?:
any
;
/**
* 金额
*
* @returns {*}
* @memberof InvoiceDetail
*/
baseamount
?:
any
;
/**
* 运货跟踪号码
*
* @returns {*}
* @memberof InvoiceDetail
*/
shippingtrackingnumber
?:
any
;
/**
* 发票产品
*
* @returns {*}
* @memberof InvoiceDetail
*/
invoicedetailid
?:
any
;
/**
* 汇率
*
* @returns {*}
* @memberof InvoiceDetail
*/
exchangerate
?:
any
;
/**
* 送至街道 3
*
* @returns {*}
* @memberof InvoiceDetail
*/
shipto_line3
?:
any
;
/**
* 负责人
*
* @returns {*}
* @memberof InvoiceDetail
*/
owneridyominame
?:
any
;
/**
* 捆绑销售项关联
*
* @returns {*}
* @memberof InvoiceDetail
*/
productassociationid
?:
any
;
/**
* 送货地的邮政编码
*
* @returns {*}
* @memberof InvoiceDetail
*/
shipto_postalcode
?:
any
;
/**
* 建立时间
*
* @returns {*}
* @memberof InvoiceDetail
*/
createdate
?:
any
;
/**
* 选择产品
*
* @returns {*}
* @memberof InvoiceDetail
*/
productoverridden
?:
any
;
/**
* 销售员
*
* @returns {*}
* @memberof InvoiceDetail
*/
salesrepid
?:
any
;
/**
* SalesRepIdYomiName
*
* @returns {*}
* @memberof InvoiceDetail
*/
salesrepidyominame
?:
any
;
/**
* UTC Conversion Time Zone Code
*
* @returns {*}
* @memberof InvoiceDetail
*/
utcconversiontimezonecode
?:
any
;
/**
* 应收净额
*
* @returns {*}
* @memberof InvoiceDetail
*/
extendedamount
?:
any
;
/**
* 目录外产品
*
* @returns {*}
* @memberof InvoiceDetail
*/
productdescription
?:
any
;
/**
* 送至街道 2
*
* @returns {*}
* @memberof InvoiceDetail
*/
shipto_line2
?:
any
;
/**
* 零售折扣
*
* @returns {*}
* @memberof InvoiceDetail
*/
manualdiscountamount
?:
any
;
/**
* 序号
*
* @returns {*}
* @memberof InvoiceDetail
*/
sequencenumber
?:
any
;
/**
* 已发货数量
*
* @returns {*}
* @memberof InvoiceDetail
*/
quantityshipped
?:
any
;
/**
* 已取消数量
*
* @returns {*}
* @memberof InvoiceDetail
*/
quantitycancelled
?:
any
;
/**
* 定价错误
*
* @returns {*}
* @memberof InvoiceDetail
*/
pricingerrorcode
?:
any
;
/**
* Version Number
*
* @returns {*}
* @memberof InvoiceDetail
*/
versionnumber
?:
any
;
/**
* SkipPriceCalculation
*
* @returns {*}
* @memberof InvoiceDetail
*/
skippricecalculation
?:
any
;
/**
* 数量
*
* @returns {*}
* @memberof InvoiceDetail
*/
quantity
?:
any
;
/**
* 税
*
* @returns {*}
* @memberof InvoiceDetail
*/
tax
?:
any
;
/**
* 应收净额 (Base)
*
* @returns {*}
* @memberof InvoiceDetail
*/
extendedamount_base
?:
any
;
/**
* 批发折扣
*
* @returns {*}
* @memberof InvoiceDetail
*/
volumediscountamount
?:
any
;
/**
* 送至市/县
*
* @returns {*}
* @memberof InvoiceDetail
*/
shipto_city
?:
any
;
/**
* 发票价格已锁定
*
* @returns {*}
* @memberof InvoiceDetail
*/
invoiceispricelocked
?:
any
;
/**
* 货币
*
* @returns {*}
* @memberof InvoiceDetail
*/
transactioncurrencyid
?:
any
;
/**
* Order Product Id
*
* @returns {*}
* @memberof InvoiceDetail
*/
salesorderdetailid
?:
any
;
/**
* Parent bundle product
*
* @returns {*}
* @memberof InvoiceDetail
*/
parentbundleidref
?:
any
;
/**
* 现有产品
*
* @returns {*}
* @memberof InvoiceDetail
*/
productid
?:
any
;
/**
* 发票编码
*
* @returns {*}
* @memberof InvoiceDetail
*/
invoiceid
?:
any
;
/**
* 计价单位
*
* @returns {*}
* @memberof InvoiceDetail
*/
uomid
?:
any
;
/**
* 产品名称
*
* @returns {*}
* @memberof InvoiceDetail
*/
productname
?:
any
;
/**
* 计价单位
*
* @returns {*}
* @memberof InvoiceDetail
*/
uomname
?:
any
;
}
\ No newline at end of file
app_CRM/src/locale/lang/en-US.ts
浏览文件 @
4a96b2a1
...
@@ -3,6 +3,7 @@ import campaignlist_en_US from '@locale/lanres/entities/campaign-list/campaign-l
...
@@ -3,6 +3,7 @@ import campaignlist_en_US from '@locale/lanres/entities/campaign-list/campaign-l
import
task_en_US
from
'@locale/lanres/entities/task/task_en_US'
;
import
task_en_US
from
'@locale/lanres/entities/task/task_en_US'
;
import
letter_en_US
from
'@locale/lanres/entities/letter/letter_en_US'
;
import
letter_en_US
from
'@locale/lanres/entities/letter/letter_en_US'
;
import
pricelevel_en_US
from
'@locale/lanres/entities/price-level/price-level_en_US'
;
import
pricelevel_en_US
from
'@locale/lanres/entities/price-level/price-level_en_US'
;
import
invoicedetail_en_US
from
'@locale/lanres/entities/invoice-detail/invoice-detail_en_US'
;
import
email_en_US
from
'@locale/lanres/entities/email/email_en_US'
;
import
email_en_US
from
'@locale/lanres/entities/email/email_en_US'
;
import
serviceappointment_en_US
from
'@locale/lanres/entities/service-appointment/service-appointment_en_US'
;
import
serviceappointment_en_US
from
'@locale/lanres/entities/service-appointment/service-appointment_en_US'
;
import
uom_en_US
from
'@locale/lanres/entities/uom/uom_en_US'
;
import
uom_en_US
from
'@locale/lanres/entities/uom/uom_en_US'
;
...
@@ -145,6 +146,7 @@ export default {
...
@@ -145,6 +146,7 @@ export default {
task
:
task_en_US
,
task
:
task_en_US
,
letter
:
letter_en_US
,
letter
:
letter_en_US
,
pricelevel
:
pricelevel_en_US
,
pricelevel
:
pricelevel_en_US
,
invoicedetail
:
invoicedetail_en_US
,
email
:
email_en_US
,
email
:
email_en_US
,
serviceappointment
:
serviceappointment_en_US
,
serviceappointment
:
serviceappointment_en_US
,
uom
:
uom_en_US
,
uom
:
uom_en_US
,
...
...
app_CRM/src/locale/lang/zh-CN.ts
浏览文件 @
4a96b2a1
...
@@ -3,6 +3,7 @@ import campaignlist_zh_CN from '@locale/lanres/entities/campaign-list/campaign-l
...
@@ -3,6 +3,7 @@ import campaignlist_zh_CN from '@locale/lanres/entities/campaign-list/campaign-l
import
task_zh_CN
from
'@locale/lanres/entities/task/task_zh_CN'
;
import
task_zh_CN
from
'@locale/lanres/entities/task/task_zh_CN'
;
import
letter_zh_CN
from
'@locale/lanres/entities/letter/letter_zh_CN'
;
import
letter_zh_CN
from
'@locale/lanres/entities/letter/letter_zh_CN'
;
import
pricelevel_zh_CN
from
'@locale/lanres/entities/price-level/price-level_zh_CN'
;
import
pricelevel_zh_CN
from
'@locale/lanres/entities/price-level/price-level_zh_CN'
;
import
invoicedetail_zh_CN
from
'@locale/lanres/entities/invoice-detail/invoice-detail_zh_CN'
;
import
email_zh_CN
from
'@locale/lanres/entities/email/email_zh_CN'
;
import
email_zh_CN
from
'@locale/lanres/entities/email/email_zh_CN'
;
import
serviceappointment_zh_CN
from
'@locale/lanres/entities/service-appointment/service-appointment_zh_CN'
;
import
serviceappointment_zh_CN
from
'@locale/lanres/entities/service-appointment/service-appointment_zh_CN'
;
import
uom_zh_CN
from
'@locale/lanres/entities/uom/uom_zh_CN'
;
import
uom_zh_CN
from
'@locale/lanres/entities/uom/uom_zh_CN'
;
...
@@ -145,6 +146,7 @@ export default {
...
@@ -145,6 +146,7 @@ export default {
task
:
task_zh_CN
,
task
:
task_zh_CN
,
letter
:
letter_zh_CN
,
letter
:
letter_zh_CN
,
pricelevel
:
pricelevel_zh_CN
,
pricelevel
:
pricelevel_zh_CN
,
invoicedetail
:
invoicedetail_zh_CN
,
email
:
email_zh_CN
,
email
:
email_zh_CN
,
serviceappointment
:
serviceappointment_zh_CN
,
serviceappointment
:
serviceappointment_zh_CN
,
uom
:
uom_zh_CN
,
uom
:
uom_zh_CN
,
...
...
app_CRM/src/locale/lanres/codelist/codelist_en_US.ts
浏览文件 @
4a96b2a1
...
@@ -361,6 +361,16 @@ export default {
...
@@ -361,6 +361,16 @@ export default {
'CAMPAIGNRESPONSE'
:
"市场活动响应"
,
'CAMPAIGNRESPONSE'
:
"市场活动响应"
,
empty
:
""
,
empty
:
""
,
},
},
Invoice__ShippingMethodCode
:
{
'2'
:
"DHL"
,
'3'
:
"FedEx"
,
'6'
:
"Full Load"
,
'4'
:
"UPS"
,
'7'
:
"Will Call"
,
'1'
:
"航空运输"
,
'5'
:
"邮递"
,
empty
:
""
,
},
Lead__StatusCode
:
{
Lead__StatusCode
:
{
'6'
:
"不再感兴趣"
,
'6'
:
"不再感兴趣"
,
'4'
:
"丢单"
,
'4'
:
"丢单"
,
...
@@ -371,6 +381,13 @@ export default {
...
@@ -371,6 +381,13 @@ export default {
'5'
:
"无法联系"
,
'5'
:
"无法联系"
,
empty
:
""
,
empty
:
""
,
},
},
Invoice__PaymentTermsCode
:
{
'2'
:
"2/10 N30"
,
'1'
:
"N30"
,
'3'
:
"N45"
,
'4'
:
"N60"
,
empty
:
""
,
},
Account__PreferredContactMethodCode
:
{
Account__PreferredContactMethodCode
:
{
'1'
:
"任何方式"
,
'1'
:
"任何方式"
,
'4'
:
"传真"
,
'4'
:
"传真"
,
...
...
app_CRM/src/locale/lanres/codelist/codelist_zh_CN.ts
浏览文件 @
4a96b2a1
...
@@ -361,6 +361,16 @@ export default {
...
@@ -361,6 +361,16 @@ export default {
'CAMPAIGNRESPONSE'
:
"市场活动响应"
,
'CAMPAIGNRESPONSE'
:
"市场活动响应"
,
empty
:
""
,
empty
:
""
,
},
},
Invoice__ShippingMethodCode
:
{
'2'
:
"DHL"
,
'3'
:
"FedEx"
,
'6'
:
"Full Load"
,
'4'
:
"UPS"
,
'7'
:
"Will Call"
,
'1'
:
"航空运输"
,
'5'
:
"邮递"
,
empty
:
""
,
},
Lead__StatusCode
:
{
Lead__StatusCode
:
{
'6'
:
"不再感兴趣"
,
'6'
:
"不再感兴趣"
,
'4'
:
"丢单"
,
'4'
:
"丢单"
,
...
@@ -371,6 +381,13 @@ export default {
...
@@ -371,6 +381,13 @@ export default {
'5'
:
"无法联系"
,
'5'
:
"无法联系"
,
empty
:
""
,
empty
:
""
,
},
},
Invoice__PaymentTermsCode
:
{
'2'
:
"2/10 N30"
,
'1'
:
"N30"
,
'3'
:
"N45"
,
'4'
:
"N60"
,
empty
:
""
,
},
Account__PreferredContactMethodCode
:
{
Account__PreferredContactMethodCode
:
{
'1'
:
"任何方式"
,
'1'
:
"任何方式"
,
'4'
:
"传真"
,
'4'
:
"传真"
,
...
...
app_CRM/src/locale/lanres/entities/invoice-detail/invoice-detail_en_US.ts
0 → 100644
浏览文件 @
4a96b2a1
export
default
{
fields
:
{
updatedate
:
"更新时间"
,
invoicedetailname
:
"名称"
,
owneridtype
:
"负责人类型"
,
quantitybackordered
:
"延期交货数量"
,
producttypecode
:
"产品类型"
,
invoicestatecode
:
"发票状态"
,
timezoneruleversionnumber
:
"Time Zone Rule Version Number"
,
shipto_stateorprovince
:
"送至省/市/自治区"
,
baseamount_base
:
"金额 (Base)"
,
willcall
:
"送货地址"
,
overriddencreatedon
:
"Record Created On"
,
parentbundleid
:
"父捆绑销售"
,
importsequencenumber
:
"Import Sequence Number"
,
propertyconfigurationstatus
:
"属性配置"
,
updateman
:
"更新人"
,
priceperunit_base
:
"单价 (Base)"
,
shipto_country
:
"送至国家/地区"
,
copied
:
"已复制"
,
lineitemnumber
:
"明细项目编号"
,
priceperunit
:
"单价"
,
volumediscountamount_base
:
"批发折扣 (Base)"
,
shipto_fax
:
"送货地的传真号码"
,
shipto_line1
:
"送至街道 1"
,
description
:
"说明"
,
shipto_freighttermscode
:
"货运条款"
,
ownerid
:
"负责人"
,
tax_base
:
"税 (Base)"
,
shipto_telephone
:
"送货地的电话号码"
,
priceoverridden
:
"定价"
,
actualdeliveryon
:
"交付时间"
,
shipto_name
:
"送货地的名称"
,
createman
:
"建立人"
,
baseamount
:
"金额"
,
shippingtrackingnumber
:
"运货跟踪号码"
,
invoicedetailid
:
"发票产品"
,
exchangerate
:
"汇率"
,
shipto_line3
:
"送至街道 3"
,
owneridyominame
:
"负责人"
,
productassociationid
:
"捆绑销售项关联"
,
shipto_postalcode
:
"送货地的邮政编码"
,
createdate
:
"建立时间"
,
productoverridden
:
"选择产品"
,
salesrepid
:
"销售员"
,
salesrepidyominame
:
"SalesRepIdYomiName"
,
utcconversiontimezonecode
:
"UTC Conversion Time Zone Code"
,
extendedamount
:
"应收净额"
,
productdescription
:
"目录外产品"
,
shipto_line2
:
"送至街道 2"
,
manualdiscountamount
:
"零售折扣"
,
sequencenumber
:
"序号"
,
quantityshipped
:
"已发货数量"
,
quantitycancelled
:
"已取消数量"
,
pricingerrorcode
:
"定价错误"
,
versionnumber
:
"Version Number"
,
skippricecalculation
:
"SkipPriceCalculation"
,
quantity
:
"数量"
,
tax
:
"税"
,
extendedamount_base
:
"应收净额 (Base)"
,
volumediscountamount
:
"批发折扣"
,
shipto_city
:
"送至市/县"
,
invoiceispricelocked
:
"发票价格已锁定"
,
transactioncurrencyid
:
"货币"
,
salesorderdetailid
:
"Order Product Id"
,
parentbundleidref
:
"Parent bundle product"
,
productid
:
"现有产品"
,
invoiceid
:
"发票编码"
,
uomid
:
"计价单位"
,
productname
:
"产品名称"
,
uomname
:
"计价单位"
,
},
views
:
{
invoiceprogridview
:
{
caption
:
"发票产品"
,
title
:
"发票产品表格视图"
,
},
editview
:
{
caption
:
"发票产品"
,
title
:
"发票产品编辑视图"
,
},
},
main_form
:
{
details
:
{
group1
:
"invoicedetail基本信息"
,
formpage1
:
"基本信息"
,
srfupdatedate
:
"更新时间"
,
srforikey
:
""
,
srfkey
:
"发票产品"
,
srfmajortext
:
"名称"
,
srftempmode
:
""
,
srfuf
:
""
,
srfdeid
:
""
,
srfsourcekey
:
""
,
productname
:
"产品名称"
,
priceperunit
:
"单价"
,
quantity
:
"数量"
,
uomname
:
"计价单位"
,
manualdiscountamount
:
"零售折扣"
,
tax
:
"税"
,
productid
:
"现有产品"
,
invoicedetailid
:
"发票产品"
,
uomid
:
"计价单位"
,
},
uiactions
:
{
},
},
invoiceproductgrid_grid
:
{
columns
:
{
productname
:
"产品名称"
,
priceperunit
:
"单价"
,
quantity
:
"数量"
,
manualdiscountamount
:
"零售折扣"
,
extendedamount
:
"应收净额"
,
},
uiactions
:
{
},
},
default_searchform
:
{
details
:
{
formpage1
:
"常规条件"
,
},
uiactions
:
{
},
},
invoiceprogridviewtoolbar_toolbar
:
{
tbitem4
:
{
caption
:
"Edit"
,
tip
:
"Edit {0}"
,
},
tbitem7
:
{
caption
:
"-"
,
tip
:
""
,
},
tbitem8
:
{
caption
:
"Remove"
,
tip
:
"Remove {0}"
,
},
tbitem9
:
{
caption
:
"-"
,
tip
:
""
,
},
tbitem13
:
{
caption
:
"Export"
,
tip
:
"Export {0} Data To Excel"
,
},
tbitem10
:
{
caption
:
"-"
,
tip
:
""
,
},
tbitem19
:
{
caption
:
"Filter"
,
tip
:
"Filter"
,
},
},
editviewtoolbar_toolbar
:
{
tbitem3
:
{
caption
:
"Save"
,
tip
:
"Save"
,
},
tbitem4
:
{
caption
:
"Save And New"
,
tip
:
"Save And New"
,
},
tbitem5
:
{
caption
:
"Save And Close"
,
tip
:
"Save And Close Window"
,
},
tbitem6
:
{
caption
:
"-"
,
tip
:
""
,
},
tbitem7
:
{
caption
:
"Remove And Close"
,
tip
:
"Remove And Close Window"
,
},
tbitem8
:
{
caption
:
"-"
,
tip
:
""
,
},
tbitem12
:
{
caption
:
"New"
,
tip
:
"New"
,
},
tbitem13
:
{
caption
:
"-"
,
tip
:
""
,
},
tbitem14
:
{
caption
:
"Copy"
,
tip
:
"Copy {0}"
,
},
},
};
app_CRM/src/locale/lanres/entities/invoice-detail/invoice-detail_zh_CN.ts
0 → 100644
浏览文件 @
4a96b2a1
export
default
{
fields
:
{
updatedate
:
"更新时间"
,
invoicedetailname
:
"名称"
,
owneridtype
:
"负责人类型"
,
quantitybackordered
:
"延期交货数量"
,
producttypecode
:
"产品类型"
,
invoicestatecode
:
"发票状态"
,
timezoneruleversionnumber
:
"Time Zone Rule Version Number"
,
shipto_stateorprovince
:
"送至省/市/自治区"
,
baseamount_base
:
"金额 (Base)"
,
willcall
:
"送货地址"
,
overriddencreatedon
:
"Record Created On"
,
parentbundleid
:
"父捆绑销售"
,
importsequencenumber
:
"Import Sequence Number"
,
propertyconfigurationstatus
:
"属性配置"
,
updateman
:
"更新人"
,
priceperunit_base
:
"单价 (Base)"
,
shipto_country
:
"送至国家/地区"
,
copied
:
"已复制"
,
lineitemnumber
:
"明细项目编号"
,
priceperunit
:
"单价"
,
volumediscountamount_base
:
"批发折扣 (Base)"
,
shipto_fax
:
"送货地的传真号码"
,
shipto_line1
:
"送至街道 1"
,
description
:
"说明"
,
shipto_freighttermscode
:
"货运条款"
,
ownerid
:
"负责人"
,
tax_base
:
"税 (Base)"
,
shipto_telephone
:
"送货地的电话号码"
,
priceoverridden
:
"定价"
,
actualdeliveryon
:
"交付时间"
,
shipto_name
:
"送货地的名称"
,
createman
:
"建立人"
,
baseamount
:
"金额"
,
shippingtrackingnumber
:
"运货跟踪号码"
,
invoicedetailid
:
"发票产品"
,
exchangerate
:
"汇率"
,
shipto_line3
:
"送至街道 3"
,
owneridyominame
:
"负责人"
,
productassociationid
:
"捆绑销售项关联"
,
shipto_postalcode
:
"送货地的邮政编码"
,
createdate
:
"建立时间"
,
productoverridden
:
"选择产品"
,
salesrepid
:
"销售员"
,
salesrepidyominame
:
"SalesRepIdYomiName"
,
utcconversiontimezonecode
:
"UTC Conversion Time Zone Code"
,
extendedamount
:
"应收净额"
,
productdescription
:
"目录外产品"
,
shipto_line2
:
"送至街道 2"
,
manualdiscountamount
:
"零售折扣"
,
sequencenumber
:
"序号"
,
quantityshipped
:
"已发货数量"
,
quantitycancelled
:
"已取消数量"
,
pricingerrorcode
:
"定价错误"
,
versionnumber
:
"Version Number"
,
skippricecalculation
:
"SkipPriceCalculation"
,
quantity
:
"数量"
,
tax
:
"税"
,
extendedamount_base
:
"应收净额 (Base)"
,
volumediscountamount
:
"批发折扣"
,
shipto_city
:
"送至市/县"
,
invoiceispricelocked
:
"发票价格已锁定"
,
transactioncurrencyid
:
"货币"
,
salesorderdetailid
:
"Order Product Id"
,
parentbundleidref
:
"Parent bundle product"
,
productid
:
"现有产品"
,
invoiceid
:
"发票编码"
,
uomid
:
"计价单位"
,
productname
:
"产品名称"
,
uomname
:
"计价单位"
,
},
views
:
{
invoiceprogridview
:
{
caption
:
"发票产品"
,
title
:
"发票产品表格视图"
,
},
editview
:
{
caption
:
"发票产品"
,
title
:
"发票产品编辑视图"
,
},
},
main_form
:
{
details
:
{
group1
:
"invoicedetail基本信息"
,
formpage1
:
"基本信息"
,
srfupdatedate
:
"更新时间"
,
srforikey
:
""
,
srfkey
:
"发票产品"
,
srfmajortext
:
"名称"
,
srftempmode
:
""
,
srfuf
:
""
,
srfdeid
:
""
,
srfsourcekey
:
""
,
productname
:
"产品名称"
,
priceperunit
:
"单价"
,
quantity
:
"数量"
,
uomname
:
"计价单位"
,
manualdiscountamount
:
"零售折扣"
,
tax
:
"税"
,
productid
:
"现有产品"
,
invoicedetailid
:
"发票产品"
,
uomid
:
"计价单位"
,
},
uiactions
:
{
},
},
invoiceproductgrid_grid
:
{
columns
:
{
productname
:
"产品名称"
,
priceperunit
:
"单价"
,
quantity
:
"数量"
,
manualdiscountamount
:
"零售折扣"
,
extendedamount
:
"应收净额"
,
},
uiactions
:
{
},
},
default_searchform
:
{
details
:
{
formpage1
:
"常规条件"
,
},
uiactions
:
{
},
},
invoiceprogridviewtoolbar_toolbar
:
{
tbitem4
:
{
caption
:
"编辑"
,
tip
:
"编辑"
,
},
tbitem7
:
{
caption
:
"-"
,
tip
:
""
,
},
tbitem8
:
{
caption
:
"删除"
,
tip
:
"删除"
,
},
tbitem9
:
{
caption
:
"-"
,
tip
:
""
,
},
tbitem13
:
{
caption
:
"导出"
,
tip
:
"导出"
,
},
tbitem10
:
{
caption
:
"-"
,
tip
:
""
,
},
tbitem19
:
{
caption
:
"过滤"
,
tip
:
"过滤"
,
},
},
editviewtoolbar_toolbar
:
{
tbitem3
:
{
caption
:
"保存"
,
tip
:
"保存"
,
},
tbitem4
:
{
caption
:
"保存并新建"
,
tip
:
"保存并新建"
,
},
tbitem5
:
{
caption
:
"保存并关闭"
,
tip
:
"保存并关闭"
,
},
tbitem6
:
{
caption
:
"-"
,
tip
:
""
,
},
tbitem7
:
{
caption
:
"删除并关闭"
,
tip
:
"删除并关闭"
,
},
tbitem8
:
{
caption
:
"-"
,
tip
:
""
,
},
tbitem12
:
{
caption
:
"新建"
,
tip
:
"新建"
,
},
tbitem13
:
{
caption
:
"-"
,
tip
:
""
,
},
tbitem14
:
{
caption
:
"拷贝"
,
tip
:
"拷贝"
,
},
},
};
\ No newline at end of file
app_CRM/src/locale/lanres/entities/invoice/invoice_en_US.ts
浏览文件 @
4a96b2a1
...
@@ -99,10 +99,26 @@ export default {
...
@@ -99,10 +99,26 @@ export default {
caption
:
"发票"
,
caption
:
"发票"
,
title
:
"发票编辑视图"
,
title
:
"发票编辑视图"
,
},
},
quickcreateview
:
{
caption
:
"发票"
,
title
:
"快速新建"
,
},
summaryview
:
{
caption
:
"发票"
,
title
:
"发票数据看板视图"
,
},
infoview
:
{
caption
:
"发票"
,
title
:
"发票信息"
,
},
gridview
:
{
gridview
:
{
caption
:
"发票"
,
caption
:
"发票"
,
title
:
"发票表格视图"
,
title
:
"发票表格视图"
,
},
},
info_invoiceview
:
{
caption
:
"发票"
,
title
:
"发票编辑视图"
,
},
},
},
main_form
:
{
main_form
:
{
details
:
{
details
:
{
...
@@ -128,6 +144,76 @@ export default {
...
@@ -128,6 +144,76 @@ export default {
uiactions
:
{
uiactions
:
{
},
},
},
},
quickcreate_form
:
{
details
:
{
group1
:
"发票基本信息"
,
formpage1
:
"基本信息"
,
srfupdatedate
:
"更新时间"
,
srforikey
:
""
,
srfkey
:
"发票"
,
srfmajortext
:
"发票名称"
,
srftempmode
:
""
,
srfuf
:
""
,
srfdeid
:
""
,
srfsourcekey
:
""
,
invoicenumber
:
"发票编码"
,
invoicename
:
"发票名称"
,
transactioncurrencyname
:
"货币"
,
pricelevelname
:
"价目表"
,
transactioncurrencyid
:
"货币"
,
pricelevelid
:
"价目表"
,
invoiceid
:
"发票"
,
},
uiactions
:
{
},
},
info_form
:
{
details
:
{
group1
:
"发票基本信息"
,
grouppanel1
:
"详细信息"
,
grouppanel3
:
"发票金额"
,
grouppanel2
:
"销售信息"
,
grouppanel4
:
"帐单地址"
,
formpage1
:
"基本信息"
,
srfupdatedate
:
"更新时间"
,
srforikey
:
""
,
srfkey
:
"发票"
,
srfmajortext
:
"发票名称"
,
srftempmode
:
""
,
srfuf
:
""
,
srfdeid
:
""
,
srfsourcekey
:
""
,
invoicenumber
:
"发票编码"
,
invoicename
:
"发票名称"
,
transactioncurrencyname
:
"货币"
,
pricelevelname
:
"价目表"
,
datedelivered
:
"交付日期"
,
duedate
:
"截止日期"
,
shippingmethodcode
:
"送货方式"
,
paymenttermscode
:
"付款条件"
,
description
:
"说明"
,
totallineitemamount
:
"明细金额总计"
,
discountpercentage
:
"发票折扣(%)"
,
discountamount
:
"发票折扣金额"
,
totalamountlessfreight
:
"折后金额总计"
,
freightamount
:
"运费金额"
,
totalamount
:
"总金额"
,
opportunityname
:
"商机"
,
salesordername
:
"订单"
,
customerid
:
"客户"
,
billto_country
:
"国家/地区"
,
billto_stateorprovince
:
"省/市/自治区"
,
billto_city
:
"市/县"
,
billto_line1
:
"街道"
,
salesorderid
:
"订单"
,
transactioncurrencyid
:
"货币"
,
opportunityid
:
"商机"
,
pricelevelid
:
"价目表"
,
invoiceid
:
"发票"
,
},
uiactions
:
{
},
},
main_grid
:
{
main_grid
:
{
columns
:
{
columns
:
{
invoicename
:
"发票名称"
,
invoicename
:
"发票名称"
,
...
...
app_CRM/src/locale/lanres/entities/invoice/invoice_zh_CN.ts
浏览文件 @
4a96b2a1
...
@@ -98,10 +98,26 @@ export default {
...
@@ -98,10 +98,26 @@ export default {
caption
:
"发票"
,
caption
:
"发票"
,
title
:
"发票编辑视图"
,
title
:
"发票编辑视图"
,
},
},
quickcreateview
:
{
caption
:
"发票"
,
title
:
"快速新建"
,
},
summaryview
:
{
caption
:
"发票"
,
title
:
"发票数据看板视图"
,
},
infoview
:
{
caption
:
"发票"
,
title
:
"发票信息"
,
},
gridview
:
{
gridview
:
{
caption
:
"发票"
,
caption
:
"发票"
,
title
:
"发票表格视图"
,
title
:
"发票表格视图"
,
},
},
info_invoiceview
:
{
caption
:
"发票"
,
title
:
"发票编辑视图"
,
},
},
},
main_form
:
{
main_form
:
{
details
:
{
details
:
{
...
@@ -127,6 +143,76 @@ export default {
...
@@ -127,6 +143,76 @@ export default {
uiactions
:
{
uiactions
:
{
},
},
},
},
quickcreate_form
:
{
details
:
{
group1
:
"发票基本信息"
,
formpage1
:
"基本信息"
,
srfupdatedate
:
"更新时间"
,
srforikey
:
""
,
srfkey
:
"发票"
,
srfmajortext
:
"发票名称"
,
srftempmode
:
""
,
srfuf
:
""
,
srfdeid
:
""
,
srfsourcekey
:
""
,
invoicenumber
:
"发票编码"
,
invoicename
:
"发票名称"
,
transactioncurrencyname
:
"货币"
,
pricelevelname
:
"价目表"
,
transactioncurrencyid
:
"货币"
,
pricelevelid
:
"价目表"
,
invoiceid
:
"发票"
,
},
uiactions
:
{
},
},
info_form
:
{
details
:
{
group1
:
"发票基本信息"
,
grouppanel1
:
"详细信息"
,
grouppanel3
:
"发票金额"
,
grouppanel2
:
"销售信息"
,
grouppanel4
:
"帐单地址"
,
formpage1
:
"基本信息"
,
srfupdatedate
:
"更新时间"
,
srforikey
:
""
,
srfkey
:
"发票"
,
srfmajortext
:
"发票名称"
,
srftempmode
:
""
,
srfuf
:
""
,
srfdeid
:
""
,
srfsourcekey
:
""
,
invoicenumber
:
"发票编码"
,
invoicename
:
"发票名称"
,
transactioncurrencyname
:
"货币"
,
pricelevelname
:
"价目表"
,
datedelivered
:
"交付日期"
,
duedate
:
"截止日期"
,
shippingmethodcode
:
"送货方式"
,
paymenttermscode
:
"付款条件"
,
description
:
"说明"
,
totallineitemamount
:
"明细金额总计"
,
discountpercentage
:
"发票折扣(%)"
,
discountamount
:
"发票折扣金额"
,
totalamountlessfreight
:
"折后金额总计"
,
freightamount
:
"运费金额"
,
totalamount
:
"总金额"
,
opportunityname
:
"商机"
,
salesordername
:
"订单"
,
customerid
:
"客户"
,
billto_country
:
"国家/地区"
,
billto_stateorprovince
:
"省/市/自治区"
,
billto_city
:
"市/县"
,
billto_line1
:
"街道"
,
salesorderid
:
"订单"
,
transactioncurrencyid
:
"货币"
,
opportunityid
:
"商机"
,
pricelevelid
:
"价目表"
,
invoiceid
:
"发票"
,
},
uiactions
:
{
},
},
main_grid
:
{
main_grid
:
{
columns
:
{
columns
:
{
invoicename
:
"发票名称"
,
invoicename
:
"发票名称"
,
...
...
app_CRM/src/locale/lanres/entities/sales-order/sales-order_en_US.ts
浏览文件 @
4a96b2a1
...
@@ -117,6 +117,10 @@ export default {
...
@@ -117,6 +117,10 @@ export default {
caption
:
"订单"
,
caption
:
"订单"
,
title
:
"订单数据看板视图"
,
title
:
"订单数据看板视图"
,
},
},
pickupgridview
:
{
caption
:
"订单"
,
title
:
"订单选择表格视图"
,
},
gridview
:
{
gridview
:
{
caption
:
"订单"
,
caption
:
"订单"
,
title
:
"订单表格视图"
,
title
:
"订单表格视图"
,
...
@@ -127,7 +131,11 @@ export default {
...
@@ -127,7 +131,11 @@ export default {
},
},
quickcreateview
:
{
quickcreateview
:
{
caption
:
"订单"
,
caption
:
"订单"
,
title
:
"订单选项操作视图"
,
title
:
"快速新建"
,
},
pickupview
:
{
caption
:
"订单"
,
title
:
"订单数据选择视图"
,
},
},
},
},
main_form
:
{
main_form
:
{
...
...
app_CRM/src/locale/lanres/entities/sales-order/sales-order_zh_CN.ts
浏览文件 @
4a96b2a1
...
@@ -116,6 +116,10 @@ export default {
...
@@ -116,6 +116,10 @@ export default {
caption
:
"订单"
,
caption
:
"订单"
,
title
:
"订单数据看板视图"
,
title
:
"订单数据看板视图"
,
},
},
pickupgridview
:
{
caption
:
"订单"
,
title
:
"订单选择表格视图"
,
},
gridview
:
{
gridview
:
{
caption
:
"订单"
,
caption
:
"订单"
,
title
:
"订单表格视图"
,
title
:
"订单表格视图"
,
...
@@ -126,7 +130,11 @@ export default {
...
@@ -126,7 +130,11 @@ export default {
},
},
quickcreateview
:
{
quickcreateview
:
{
caption
:
"订单"
,
caption
:
"订单"
,
title
:
"订单选项操作视图"
,
title
:
"快速新建"
,
},
pickupview
:
{
caption
:
"订单"
,
title
:
"订单数据选择视图"
,
},
},
},
},
main_form
:
{
main_form
:
{
...
...
app_CRM/src/mock/codelist/codelist.ts
浏览文件 @
4a96b2a1
...
@@ -2662,6 +2662,83 @@ mock.onGet('./assets/json/data-dictionary.json').reply((config: any) => {
...
@@ -2662,6 +2662,83 @@ mock.onGet('./assets/json/data-dictionary.json').reply((config: any) => {
},
},
]
]
},
},
{
srfkey
:
'Invoice__ShippingMethodCode'
,
emptytext
:
'未定义'
,
"codelisttype"
:
"static"
,
items
:
[
{
id
:
'2'
,
label
:
"DHL"
,
text
:
"DHL"
,
"data"
:
""
,
"codename"
:
"Item_2"
,
value
:
'2'
,
disabled
:
false
,
},
{
id
:
'3'
,
label
:
"FedEx"
,
text
:
"FedEx"
,
"data"
:
""
,
"codename"
:
"Item_3"
,
value
:
'3'
,
disabled
:
false
,
},
{
id
:
'6'
,
label
:
"Full Load"
,
text
:
"Full Load"
,
"data"
:
""
,
"codename"
:
"Item_6"
,
value
:
'6'
,
disabled
:
false
,
},
{
id
:
'4'
,
label
:
"UPS"
,
text
:
"UPS"
,
"data"
:
""
,
"codename"
:
"Item_4"
,
value
:
'4'
,
disabled
:
false
,
},
{
id
:
'7'
,
label
:
"Will Call"
,
text
:
"Will Call"
,
"data"
:
""
,
"codename"
:
"Item_7"
,
value
:
'7'
,
disabled
:
false
,
},
{
id
:
'1'
,
label
:
"航空运输"
,
text
:
"航空运输"
,
"data"
:
""
,
"codename"
:
"Item_1"
,
value
:
'1'
,
disabled
:
false
,
},
{
id
:
'5'
,
label
:
"邮递"
,
text
:
"邮递"
,
"data"
:
""
,
"codename"
:
"Item_5"
,
value
:
'5'
,
disabled
:
false
,
},
]
},
{
{
srfkey
:
'Lead__StatusCode'
,
srfkey
:
'Lead__StatusCode'
,
emptytext
:
'未定义'
,
emptytext
:
'未定义'
,
...
@@ -2739,6 +2816,53 @@ mock.onGet('./assets/json/data-dictionary.json').reply((config: any) => {
...
@@ -2739,6 +2816,53 @@ mock.onGet('./assets/json/data-dictionary.json').reply((config: any) => {
},
},
]
]
},
},
{
srfkey
:
'Invoice__PaymentTermsCode'
,
emptytext
:
'未定义'
,
"codelisttype"
:
"static"
,
items
:
[
{
id
:
'2'
,
label
:
"2/10 N30"
,
text
:
"2/10 N30"
,
"data"
:
""
,
"codename"
:
"Item_2"
,
value
:
'2'
,
disabled
:
false
,
},
{
id
:
'1'
,
label
:
"N30"
,
text
:
"N30"
,
"data"
:
""
,
"codename"
:
"Item_1"
,
value
:
'1'
,
disabled
:
false
,
},
{
id
:
'3'
,
label
:
"N45"
,
text
:
"N45"
,
"data"
:
""
,
"codename"
:
"Item_3"
,
value
:
'3'
,
disabled
:
false
,
},
{
id
:
'4'
,
label
:
"N60"
,
text
:
"N60"
,
"data"
:
""
,
"codename"
:
"Item_4"
,
value
:
'4'
,
disabled
:
false
,
},
]
},
{
{
srfkey
:
'Account__PreferredContactMethodCode'
,
srfkey
:
'Account__PreferredContactMethodCode'
,
emptytext
:
'未定义'
,
emptytext
:
'未定义'
,
...
...
app_CRM/src/mock/entity/invoice-details/invoice-details.ts
0 → 100644
浏览文件 @
4a96b2a1
import
qs
from
'qs'
;
import
{
MockAdapter
}
from
'@/mock/mock-adapter'
;
const
mock
=
MockAdapter
.
getInstance
();
// 模拟数据
const
mockDatas
:
Array
<
any
>
=
[
];
//getwflink
mock
.
onGet
(
new
RegExp
(
/^
\/
wfcore
\/
ibizbusinesscentral-app-crm
\/
invoicedetails
\/[
a-zA-Z0-9
\-\;]
+
\/
usertasks
\/[
a-zA-Z0-9
\-\;]
+
\/
ways$/
)).
reply
((
config
:
any
)
=>
{
console
.
groupCollapsed
(
"实体:invoicedetail 方法: getwflink"
);
console
.
table
({
url
:
config
.
url
,
method
:
config
.
method
,
data
:
config
.
data
});
console
.
groupEnd
();
let
status
=
MockAdapter
.
mockStatus
(
config
);
if
(
status
!==
200
)
{
return
[
status
,
{}];
}
return
[
status
,[
{
"sequenceFlowId"
:
"dfdsfdsfdsfdsfds"
,
"sequenceFlowName"
:
"同意"
,
"taskId"
:
"aaaaddddccccddddd"
,
"processDefinitionKey"
:
"support-workorders-approve-v1"
,
"processInstanceId"
:
"ddlfldldfldsfds"
,
"refViewKey"
:
""
},
{
"sequenceFlowId"
:
"ddssdfdfdfdfsfdf"
,
"sequenceFlowName"
:
"不同意"
,
"taskId"
:
"aaaaddddccccddddd"
,
"processDefinitionKey"
:
"support-workorders-approve-v1"
,
"processInstanceId"
:
"ddfdsldlfdlldsf"
,
"refViewKey"
:
"workorder_ltform_editview"
}
]];
});
// getwfstep
mock
.
onGet
(
new
RegExp
(
/^
\/
wfcore
\/
ibizbusinesscentral-app-crm
\/
invoicedetails
\/
process-definitions-nodes$/
)).
reply
((
config
:
any
)
=>
{
console
.
groupCollapsed
(
"实体:invoicedetail 方法: getwfstep"
);
console
.
table
({
url
:
config
.
url
,
method
:
config
.
method
,
data
:
config
.
data
});
console
.
groupEnd
();
let
status
=
MockAdapter
.
mockStatus
(
config
);
if
(
status
!==
200
)
{
return
[
status
,
{}];
}
return
[
status
,
[
{
"userTaskId"
:
"sddfddfd-dfdf-fdfd-fdf-dfdfd"
,
"userTaskName"
:
"待审"
,
"cnt"
:
0
,
"processDefinitionKey"
:
"support-workorders-approve-v1"
,
"processDefinitionName"
:
"工单审批流程v1"
},
{
"userTaskId"
:
"sddfddfd-dfdf-fdfd-fdf-87927"
,
"userTaskName"
:
"待分配"
,
"cnt"
:
3
,
"processDefinitionKey"
:
"support-workorders-approve-v1"
,
"processDefinitionName"
:
"工单审批流程v1"
}
]];
});
// createBatch
mock
.
onPost
(
new
RegExp
(
/^
\/
invoicedetails
\/
batch$/
)).
reply
((
config
:
any
)
=>
{
console
.
groupCollapsed
(
"实体:invoicedetail 方法: createBatch"
);
console
.
table
({
url
:
config
.
url
,
method
:
config
.
method
,
data
:
config
.
data
});
console
.
groupEnd
();
let
status
=
MockAdapter
.
mockStatus
(
config
);
if
(
status
!==
200
)
{
return
[
status
,
{}];
}
return
[
status
,
{}];
});
// updateBatch
mock
.
onPut
(
new
RegExp
(
/^
\/
invoicedetails
\/
batch$/
)).
reply
((
config
:
any
)
=>
{
console
.
groupCollapsed
(
"实体:invoicedetail 方法: updateBatch"
);
console
.
table
({
url
:
config
.
url
,
method
:
config
.
method
,
data
:
config
.
data
});
console
.
groupEnd
();
let
status
=
MockAdapter
.
mockStatus
(
config
);
if
(
status
!==
200
)
{
return
[
status
,
{}];
}
return
[
status
,
{}];
});
// removeBatch
mock
.
onDelete
(
new
RegExp
(
/^
\/
invoicedetails
\/
batch$/
)).
reply
((
config
:
any
)
=>
{
console
.
groupCollapsed
(
"实体:invoicedetail 方法: removeBatch"
);
console
.
table
({
url
:
config
.
url
,
method
:
config
.
method
,
data
:
config
.
data
});
console
.
groupEnd
();
let
status
=
MockAdapter
.
mockStatus
(
config
);
if
(
status
!==
200
)
{
return
[
status
,
{}];
}
return
[
status
,
{}];
});
// Select
mock
.
onGet
(
new
RegExp
(
/^
\/
invoices
\/([
a-zA-Z0-9
\-\;]{1,35})\/
invoicedetails
\/([
a-zA-Z0-9
\-\;]{1,35})\/
select$/
)).
reply
((
config
:
any
)
=>
{
console
.
groupCollapsed
(
"实体:invoicedetail 方法: Select"
);
console
.
table
({
url
:
config
.
url
,
method
:
config
.
method
,
data
:
config
.
data
});
let
status
=
MockAdapter
.
mockStatus
(
config
);
if
(
status
!==
200
)
{
return
[
status
,
null
];
}
const
paramArray
:
Array
<
any
>
=
[
'invoiceid'
,
'invoicedetailid'
];
const
matchArray
:
any
=
new
RegExp
(
/^
\/
invoices
\/([
a-zA-Z0-9
\-\;]{1,35})\/
invoicedetails
\/([
a-zA-Z0-9
\-\;]{1,35})\/
select$/
).
exec
(
config
.
url
);
let
tempValue
:
any
=
{};
if
(
matchArray
&&
matchArray
.
length
>
1
&&
paramArray
&&
paramArray
.
length
>
0
){
paramArray
.
forEach
((
item
:
any
,
index
:
number
)
=>
{
Object
.
defineProperty
(
tempValue
,
item
,
{
enumerable
:
true
,
value
:
matchArray
[
index
+
1
]
});
});
}
let
items
=
mockDatas
?
mockDatas
:
[];
let
_items
=
items
.
find
((
item
:
any
)
=>
Object
.
is
(
item
.
invoicedetailid
,
tempValue
.
invoicedetailid
));
console
.
groupCollapsed
(
"response数据 status: "
+
status
+
" data: "
);
console
.
table
(
_items
);
console
.
groupEnd
();
console
.
groupEnd
();
return
[
status
,
_items
];
});
// Select
mock
.
onGet
(
new
RegExp
(
/^
\/
invoicedetails
\/([
a-zA-Z0-9
\-\;]{1,35})\/
select$/
)).
reply
((
config
:
any
)
=>
{
console
.
groupCollapsed
(
"实体:invoicedetail 方法: Select"
);
console
.
table
({
url
:
config
.
url
,
method
:
config
.
method
,
data
:
config
.
data
});
let
status
=
MockAdapter
.
mockStatus
(
config
);
if
(
status
!==
200
)
{
return
[
status
,
null
];
}
const
paramArray
:
Array
<
any
>
=
[
'invoicedetailid'
];
const
matchArray
:
any
=
new
RegExp
(
/^
\/
invoicedetails
\/([
a-zA-Z0-9
\-\;]{1,35})\/
select$/
).
exec
(
config
.
url
);
let
tempValue
:
any
=
{};
if
(
matchArray
&&
matchArray
.
length
>
1
&&
paramArray
&&
paramArray
.
length
>
0
){
paramArray
.
forEach
((
item
:
any
,
index
:
number
)
=>
{
Object
.
defineProperty
(
tempValue
,
item
,
{
enumerable
:
true
,
value
:
matchArray
[
index
+
1
]
});
});
}
let
items
=
mockDatas
?
mockDatas
:
[];
let
_items
=
items
.
find
((
item
:
any
)
=>
Object
.
is
(
item
.
invoicedetailid
,
tempValue
.
invoicedetailid
));
console
.
groupCollapsed
(
"response数据 status: "
+
status
+
" data: "
);
console
.
table
(
_items
);
console
.
groupEnd
();
console
.
groupEnd
();
return
[
status
,
_items
];
});
// CheckKey
mock
.
onPost
(
new
RegExp
(
/^
\/
invoices
\/([
a-zA-Z0-9
\-\;]{1,35})\/
invoicedetails
\/([
a-zA-Z0-9
\-\;]{1,35})\/
checkkey$/
)).
reply
((
config
:
any
)
=>
{
console
.
groupCollapsed
(
"实体:invoicedetail 方法: CheckKey"
);
console
.
table
({
url
:
config
.
url
,
method
:
config
.
method
,
data
:
config
.
data
});
let
status
=
MockAdapter
.
mockStatus
(
config
);
if
(
status
!==
200
)
{
return
[
status
,
null
];
}
const
paramArray
:
Array
<
any
>
=
[
'invoiceid'
,
'invoicedetailid'
];
const
matchArray
:
any
=
new
RegExp
(
/^
\/
invoices
\/([
a-zA-Z0-9
\-\;]{1,35})\/
invoicedetails
\/([
a-zA-Z0-9
\-\;]{1,35})\/
checkkey$/
).
exec
(
config
.
url
);
let
tempValue
:
any
=
{};
if
(
matchArray
&&
matchArray
.
length
>
1
&&
paramArray
&&
paramArray
.
length
>
0
){
paramArray
.
forEach
((
item
:
any
,
index
:
number
)
=>
{
Object
.
defineProperty
(
tempValue
,
item
,
{
enumerable
:
true
,
value
:
matchArray
[
index
+
1
]
});
});
}
console
.
groupCollapsed
(
"response数据 status: "
+
status
+
" data: "
);
console
.
table
({});
console
.
groupEnd
();
console
.
groupEnd
();
return
[
status
,
{}];
});
// CheckKey
mock
.
onPost
(
new
RegExp
(
/^
\/
invoicedetails
\/?([
a-zA-Z0-9
\-\;]{0,35})\/
checkkey$/
)).
reply
((
config
:
any
)
=>
{
console
.
groupCollapsed
(
"实体:invoicedetail 方法: CheckKey"
);
console
.
table
({
url
:
config
.
url
,
method
:
config
.
method
,
data
:
config
.
data
});
let
status
=
MockAdapter
.
mockStatus
(
config
);
if
(
status
!==
200
)
{
return
[
status
,
null
];
}
const
paramArray
:
Array
<
any
>
=
[
'invoicedetailid'
];
const
matchArray
:
any
=
new
RegExp
(
/^
\/
invoicedetails
\/([
a-zA-Z0-9
\-\;]{1,35})\/
checkkey$/
).
exec
(
config
.
url
);
let
tempValue
:
any
=
{};
if
(
matchArray
&&
matchArray
.
length
>
1
&&
paramArray
&&
paramArray
.
length
>
0
){
paramArray
.
forEach
((
item
:
any
,
index
:
number
)
=>
{
Object
.
defineProperty
(
tempValue
,
item
,
{
enumerable
:
true
,
value
:
matchArray
[
index
+
1
]
});
});
}
//let items = mockDatas ? mockDatas : [];
//let _items = items.find((item: any) => Object.is(item.invoicedetailid, tempValue.invoicedetailid));
let
data
=
JSON
.
parse
(
config
.
data
);
mockDatas
.
forEach
((
item
)
=>
{
if
(
item
[
'invoicedetailid'
]
==
tempValue
[
'invoicedetailid'
]
){
for
(
let
value
in
data
){
if
(
item
.
hasOwnProperty
(
value
)){
item
[
value
]
=
data
[
value
];
}
}
}
})
console
.
groupCollapsed
(
"response数据 status: "
+
status
+
" data: "
);
console
.
table
(
data
);
console
.
groupEnd
();
console
.
groupEnd
();
return
[
status
,
data
];
});
// Update
mock
.
onPut
(
new
RegExp
(
/^
\/
invoices
\/([
a-zA-Z0-9
\-\;]{1,35})\/
invoicedetails
\/([
a-zA-Z0-9
\-\;]{1,35})
$/
)).
reply
((
config
:
any
)
=>
{
console
.
groupCollapsed
(
"实体:invoicedetail 方法: Update"
);
console
.
table
({
url
:
config
.
url
,
method
:
config
.
method
,
data
:
config
.
data
});
let
status
=
MockAdapter
.
mockStatus
(
config
);
if
(
status
!==
200
)
{
return
[
status
,
null
];
}
const
paramArray
:
Array
<
any
>
=
[
'invoiceid'
,
'invoicedetailid'
];
const
matchArray
:
any
=
new
RegExp
(
/^
\/
invoices
\/([
a-zA-Z0-9
\-\;]{1,35})\/
invoicedetails
\/([
a-zA-Z0-9
\-\;]{1,35})
$/
).
exec
(
config
.
url
);
let
tempValue
:
any
=
{};
if
(
matchArray
&&
matchArray
.
length
>
1
&&
paramArray
&&
paramArray
.
length
>
0
){
paramArray
.
forEach
((
item
:
any
,
index
:
number
)
=>
{
Object
.
defineProperty
(
tempValue
,
item
,
{
enumerable
:
true
,
value
:
matchArray
[
index
+
1
]
});
});
}
console
.
groupCollapsed
(
"response数据 status: "
+
status
+
" data: "
);
console
.
table
({});
console
.
groupEnd
();
console
.
groupEnd
();
return
[
status
,
{}];
});
// Update
mock
.
onPut
(
new
RegExp
(
/^
\/
invoicedetails
\/?([
a-zA-Z0-9
\-\;]{0,35})
$/
)).
reply
((
config
:
any
)
=>
{
console
.
groupCollapsed
(
"实体:invoicedetail 方法: Update"
);
console
.
table
({
url
:
config
.
url
,
method
:
config
.
method
,
data
:
config
.
data
});
let
status
=
MockAdapter
.
mockStatus
(
config
);
if
(
status
!==
200
)
{
return
[
status
,
null
];
}
const
paramArray
:
Array
<
any
>
=
[
'invoicedetailid'
];
const
matchArray
:
any
=
new
RegExp
(
/^
\/
invoicedetails
\/([
a-zA-Z0-9
\-\;]{1,35})
$/
).
exec
(
config
.
url
);
let
tempValue
:
any
=
{};
if
(
matchArray
&&
matchArray
.
length
>
1
&&
paramArray
&&
paramArray
.
length
>
0
){
paramArray
.
forEach
((
item
:
any
,
index
:
number
)
=>
{
Object
.
defineProperty
(
tempValue
,
item
,
{
enumerable
:
true
,
value
:
matchArray
[
index
+
1
]
});
});
}
//let items = mockDatas ? mockDatas : [];
//let _items = items.find((item: any) => Object.is(item.invoicedetailid, tempValue.invoicedetailid));
let
data
=
JSON
.
parse
(
config
.
data
);
mockDatas
.
forEach
((
item
)
=>
{
if
(
item
[
'invoicedetailid'
]
==
tempValue
[
'invoicedetailid'
]
){
for
(
let
value
in
data
){
if
(
item
.
hasOwnProperty
(
value
)){
item
[
value
]
=
data
[
value
];
}
}
}
})
console
.
groupCollapsed
(
"response数据 status: "
+
status
+
" data: "
);
console
.
table
(
data
);
console
.
groupEnd
();
console
.
groupEnd
();
return
[
status
,
data
];
});
// Create
mock
.
onPost
(
new
RegExp
(
/^
\/
invoices
\/([
a-zA-Z0-9
\-\;]{1,35})\/
invoicedetails
\/([
a-zA-Z0-9
\-\;]{1,35})
$/
)).
reply
((
config
:
any
)
=>
{
console
.
groupCollapsed
(
"实体:invoicedetail 方法: Create"
);
console
.
table
({
url
:
config
.
url
,
method
:
config
.
method
,
data
:
config
.
data
});
let
status
=
MockAdapter
.
mockStatus
(
config
);
if
(
status
!==
200
)
{
return
[
status
,
null
];
}
const
paramArray
:
Array
<
any
>
=
[
'invoiceid'
,
'invoicedetailid'
];
const
matchArray
:
any
=
new
RegExp
(
/^
\/
invoices
\/([
a-zA-Z0-9
\-\;]{1,35})\/
invoicedetails
\/([
a-zA-Z0-9
\-\;]{1,35})
$/
).
exec
(
config
.
url
);
let
tempValue
:
any
=
{};
if
(
matchArray
&&
matchArray
.
length
>
1
&&
paramArray
&&
paramArray
.
length
>
0
){
paramArray
.
forEach
((
item
:
any
,
index
:
number
)
=>
{
Object
.
defineProperty
(
tempValue
,
item
,
{
enumerable
:
true
,
value
:
matchArray
[
index
+
1
]
});
});
}
console
.
groupCollapsed
(
"response数据 status: "
+
status
+
" data: "
);
console
.
table
({});
console
.
groupEnd
();
console
.
groupEnd
();
return
[
status
,
{}];
});
// Create
mock
.
onPost
(
new
RegExp
(
/^
\/
invoicedetails
\/?([
a-zA-Z0-9
\-\;]{0,35})
$/
)).
reply
((
config
:
any
)
=>
{
console
.
groupCollapsed
(
"实体:invoicedetail 方法: Create"
);
console
.
table
({
url
:
config
.
url
,
method
:
config
.
method
,
data
:
config
.
data
});
let
status
=
MockAdapter
.
mockStatus
(
config
);
if
(
status
!==
200
)
{
return
[
status
,
null
];
}
const
paramArray
:
Array
<
any
>
=
[
'invoicedetailid'
];
const
matchArray
:
any
=
new
RegExp
(
/^
\/
invoicedetails
\/([
a-zA-Z0-9
\-\;]{1,35})
$/
).
exec
(
config
.
url
);
let
tempValue
:
any
=
{};
if
(
matchArray
&&
matchArray
.
length
>
1
&&
paramArray
&&
paramArray
.
length
>
0
){
paramArray
.
forEach
((
item
:
any
,
index
:
number
)
=>
{
Object
.
defineProperty
(
tempValue
,
item
,
{
enumerable
:
true
,
value
:
matchArray
[
index
+
1
]
});
});
}
console
.
groupCollapsed
(
"response数据 status: "
+
status
+
" data: "
);
console
.
table
(
mockDatas
[
0
]);
console
.
groupEnd
();
console
.
groupEnd
();
return
[
status
,
mockDatas
[
0
]];
});
// GetDraft
mock
.
onGet
(
new
RegExp
(
/^
\/
invoices
\/([
a-zA-Z0-9
\-\;]{1,35})\/
invoicedetails
\/
getdraft$/
)).
reply
((
config
:
any
)
=>
{
console
.
groupCollapsed
(
"实体:invoicedetail 方法: GetDraft"
);
console
.
table
({
url
:
config
.
url
,
method
:
config
.
method
,
data
:
config
.
data
});
// GetDraft
let
status
=
MockAdapter
.
mockStatus
(
config
);
if
(
status
!==
200
)
{
return
[
status
,
null
];
}
console
.
groupCollapsed
(
"response数据 status: "
+
status
+
" data: "
);
console
.
table
({});
console
.
groupEnd
();
console
.
groupEnd
();
return
[
status
,
{}];
});
// GetDraft
mock
.
onGet
(
new
RegExp
(
/^
\/
invoicedetails
\/
getdraft$/
)).
reply
((
config
:
any
)
=>
{
console
.
groupCollapsed
(
"实体:invoicedetail 方法: GetDraft"
);
console
.
table
({
url
:
config
.
url
,
method
:
config
.
method
,
data
:
config
.
data
});
// GetDraft
let
status
=
MockAdapter
.
mockStatus
(
config
);
if
(
status
!==
200
)
{
return
[
status
,
null
];
}
console
.
groupCollapsed
(
"response数据 status: "
+
status
+
" data: "
);
console
.
table
({});
console
.
groupEnd
();
console
.
groupEnd
();
return
[
status
,
{}];
});
// Save
mock
.
onPost
(
new
RegExp
(
/^
\/
invoices
\/([
a-zA-Z0-9
\-\;]{1,35})\/
invoicedetails
\/([
a-zA-Z0-9
\-\;]{1,35})\/
save$/
)).
reply
((
config
:
any
)
=>
{
console
.
groupCollapsed
(
"实体:invoicedetail 方法: Save"
);
console
.
table
({
url
:
config
.
url
,
method
:
config
.
method
,
data
:
config
.
data
});
let
status
=
MockAdapter
.
mockStatus
(
config
);
if
(
status
!==
200
)
{
return
[
status
,
null
];
}
const
paramArray
:
Array
<
any
>
=
[
'invoiceid'
,
'invoicedetailid'
];
const
matchArray
:
any
=
new
RegExp
(
/^
\/
invoices
\/([
a-zA-Z0-9
\-\;]{1,35})\/
invoicedetails
\/([
a-zA-Z0-9
\-\;]{1,35})\/
save$/
).
exec
(
config
.
url
);
let
tempValue
:
any
=
{};
if
(
matchArray
&&
matchArray
.
length
>
1
&&
paramArray
&&
paramArray
.
length
>
0
){
paramArray
.
forEach
((
item
:
any
,
index
:
number
)
=>
{
Object
.
defineProperty
(
tempValue
,
item
,
{
enumerable
:
true
,
value
:
matchArray
[
index
+
1
]
});
});
}
console
.
groupCollapsed
(
"response数据 status: "
+
status
+
" data: "
);
console
.
table
({});
console
.
groupEnd
();
console
.
groupEnd
();
return
[
status
,
{}];
});
// Save
mock
.
onPost
(
new
RegExp
(
/^
\/
invoicedetails
\/?([
a-zA-Z0-9
\-\;]{0,35})\/
save$/
)).
reply
((
config
:
any
)
=>
{
console
.
groupCollapsed
(
"实体:invoicedetail 方法: Save"
);
console
.
table
({
url
:
config
.
url
,
method
:
config
.
method
,
data
:
config
.
data
});
let
status
=
MockAdapter
.
mockStatus
(
config
);
if
(
status
!==
200
)
{
return
[
status
,
null
];
}
const
paramArray
:
Array
<
any
>
=
[
'invoicedetailid'
];
const
matchArray
:
any
=
new
RegExp
(
/^
\/
invoicedetails
\/([
a-zA-Z0-9
\-\;]{1,35})\/
save$/
).
exec
(
config
.
url
);
let
tempValue
:
any
=
{};
if
(
matchArray
&&
matchArray
.
length
>
1
&&
paramArray
&&
paramArray
.
length
>
0
){
paramArray
.
forEach
((
item
:
any
,
index
:
number
)
=>
{
Object
.
defineProperty
(
tempValue
,
item
,
{
enumerable
:
true
,
value
:
matchArray
[
index
+
1
]
});
});
}
//let items = mockDatas ? mockDatas : [];
//let _items = items.find((item: any) => Object.is(item.invoicedetailid, tempValue.invoicedetailid));
let
data
=
JSON
.
parse
(
config
.
data
);
mockDatas
.
forEach
((
item
)
=>
{
if
(
item
[
'invoicedetailid'
]
==
tempValue
[
'invoicedetailid'
]
){
for
(
let
value
in
data
){
if
(
item
.
hasOwnProperty
(
value
)){
item
[
value
]
=
data
[
value
];
}
}
}
})
console
.
groupCollapsed
(
"response数据 status: "
+
status
+
" data: "
);
console
.
table
(
data
);
console
.
groupEnd
();
console
.
groupEnd
();
return
[
status
,
data
];
});
// FetchDefault
mock
.
onGet
(
new
RegExp
(
/^
\/
invoices
\/([
a-zA-Z0-9
\-\;]{1,35})\/
invoicedetails
\/
fetchdefault$/
)).
reply
((
config
:
any
)
=>
{
console
.
groupCollapsed
(
"实体:invoicedetail 方法: FetchDefault"
);
console
.
table
({
url
:
config
.
url
,
method
:
config
.
method
,
data
:
config
.
data
});
let
status
=
MockAdapter
.
mockStatus
(
config
);
if
(
status
!==
200
)
{
return
[
status
,
null
];
}
const
paramArray
:
Array
<
any
>
=
[
'invoiceid'
];
let
tempValue
:
any
=
{};
const
matchArray
:
any
=
new
RegExp
(
/^
\/
invoices
\/([
a-zA-Z0-9
\-\;]{1,35})\/
invoicedetails
\/
fetchdefault$/
).
exec
(
config
.
url
);
if
(
matchArray
&&
matchArray
.
length
>
1
&&
paramArray
&&
paramArray
.
length
>
0
){
paramArray
.
forEach
((
item
:
any
,
index
:
number
)
=>
{
Object
.
defineProperty
(
tempValue
,
item
,
{
enumerable
:
true
,
value
:
matchArray
[
index
+
1
]
});
});
}
let
items
=
mockDatas
?
mockDatas
:
[];
if
(
items
.
length
>
0
&&
paramArray
.
length
>
0
)
{
paramArray
.
forEach
((
paramkey
:
any
)
=>
{
if
(
tempValue
[
paramkey
]
&&
tempValue
[
paramkey
].
indexOf
(
";"
)
>
0
)
{
let
keysGrounp
:
Array
<
any
>
=
tempValue
[
paramkey
].
split
(
new
RegExp
(
/
[\;]
/
));
let
tempArray
:
Array
<
any
>
=
[];
keysGrounp
.
forEach
((
singlekey
:
any
)
=>
{
let
_items
=
items
.
filter
((
item
:
any
)
=>
{
return
item
[
paramkey
]
==
singlekey
});
if
(
_items
.
length
>
0
){
tempArray
.
push
(...
_items
);
}
})
items
=
tempArray
;
}
else
{
items
=
items
.
filter
((
item
:
any
)
=>
{
return
item
[
paramkey
]
==
tempValue
[
paramkey
]
});
}
})
}
console
.
groupCollapsed
(
"response数据 status: "
+
status
+
" data: "
);
console
.
table
(
items
);
console
.
groupEnd
();
console
.
groupEnd
();
return
[
status
,
items
];
});
// FetchDefault
mock
.
onGet
(
new
RegExp
(
/^
\/
invoicedetails
\/
fetchdefault$/
)).
reply
((
config
:
any
)
=>
{
console
.
groupCollapsed
(
"实体:invoicedetail 方法: FetchDefault"
);
console
.
table
({
url
:
config
.
url
,
method
:
config
.
method
,
data
:
config
.
data
});
let
status
=
MockAdapter
.
mockStatus
(
config
);
if
(
status
!==
200
)
{
return
[
status
,
null
];
}
console
.
groupCollapsed
(
"response数据 status: "
+
status
+
" data: "
);
console
.
table
(
mockDatas
);
console
.
groupEnd
();
console
.
groupEnd
();
return
[
status
,
mockDatas
?
mockDatas
:
[]];
});
// FetchDefault
mock
.
onGet
(
new
RegExp
(
/^
\/
invoicedetails
\/
fetchdefault
(\?[\w
-.
/
?%&=,
]
*
)
*$/
)).
reply
((
config
:
any
)
=>
{
console
.
groupCollapsed
(
"实体:invoicedetail 方法: FetchDefault"
);
console
.
table
({
url
:
config
.
url
,
method
:
config
.
method
,
data
:
config
.
data
});
if
(
config
.
url
.
includes
(
'page'
)){
let
url
=
config
.
url
.
split
(
'?'
)[
1
];
let
params
=
qs
.
parse
(
url
);
Object
.
assign
(
config
,
params
);
}
let
status
=
MockAdapter
.
mockStatus
(
config
);
if
(
status
!==
200
)
{
return
[
status
,
null
];
}
let
total
=
mockDatas
.
length
;
let
records
:
Array
<
any
>
=
[];
if
(
!
config
.
page
||
!
config
.
size
){
records
=
mockDatas
;
}
else
{
if
((
config
.
page
-
1
)
*
config
.
size
<
total
){
records
=
mockDatas
.
slice
(
config
.
page
,
config
.
size
);
}
}
console
.
groupCollapsed
(
"response数据 status: "
+
status
+
" data: "
);
console
.
table
(
records
?
records
:
[]);
console
.
groupEnd
();
console
.
groupEnd
();
return
[
status
,
records
?
records
:
[]];
});
// URI参数传递情况未实现
// URI参数传递情况未实现
// URI参数传递情况未实现
// URI参数传递情况未实现
// URI参数传递情况未实现
// URI参数传递情况未实现
// URI参数传递情况未实现
// URI参数传递情况未实现
// URI参数传递情况未实现
// URI参数传递情况未实现
// URI参数传递情况未实现
// URI参数传递情况未实现
// URI参数传递情况未实现
// URI参数传递情况未实现
// Get
mock
.
onGet
(
new
RegExp
(
/^
\/
invoices
\/([
a-zA-Z0-9
\-\;]{1,35})\/
invoicedetails
\/([
a-zA-Z0-9
\-\;]{1,35})
$/
)).
reply
((
config
:
any
)
=>
{
console
.
groupCollapsed
(
"实体:invoicedetail 方法: Get"
);
console
.
table
({
url
:
config
.
url
,
method
:
config
.
method
,
data
:
config
.
data
});
let
status
=
MockAdapter
.
mockStatus
(
config
);
if
(
status
!==
200
)
{
return
[
status
,
null
];
}
const
paramArray
:
Array
<
any
>
=
[
'invoiceid'
,
'invoicedetailid'
];
const
matchArray
:
any
=
new
RegExp
(
/^
\/
invoices
\/([
a-zA-Z0-9
\-\;]{1,35})\/
invoicedetails
\/([
a-zA-Z0-9
\-\;]{1,35})
$/
).
exec
(
config
.
url
);
let
tempValue
:
any
=
{};
if
(
matchArray
&&
matchArray
.
length
>
1
&&
paramArray
&&
paramArray
.
length
>
0
){
paramArray
.
forEach
((
item
:
any
,
index
:
number
)
=>
{
Object
.
defineProperty
(
tempValue
,
item
,
{
enumerable
:
true
,
value
:
matchArray
[
index
+
1
]
});
});
}
let
items
=
mockDatas
?
mockDatas
:
[];
let
_items
=
items
.
find
((
item
:
any
)
=>
Object
.
is
(
item
.
invoicedetailid
,
tempValue
.
invoicedetailid
));
console
.
groupCollapsed
(
"response数据 status: "
+
status
+
" data: "
);
console
.
table
(
_items
?
_items
:{});
console
.
groupEnd
();
console
.
groupEnd
();
return
[
status
,
_items
?
_items
:{}];
});
// Get
mock
.
onGet
(
new
RegExp
(
/^
\/
invoicedetails
\/([
a-zA-Z0-9
\-\;]{1,35})
$/
)).
reply
((
config
:
any
)
=>
{
console
.
groupCollapsed
(
"实体:invoicedetail 方法: Get"
);
console
.
table
({
url
:
config
.
url
,
method
:
config
.
method
,
data
:
config
.
data
});
let
status
=
MockAdapter
.
mockStatus
(
config
);
if
(
status
!==
200
)
{
return
[
status
,
null
];
}
const
paramArray
:
Array
<
any
>
=
[
'invoicedetailid'
];
const
matchArray
:
any
=
new
RegExp
(
/^
\/
invoicedetails
\/([
a-zA-Z0-9
\-\;]{1,35})
$/
).
exec
(
config
.
url
);
let
tempValue
:
any
=
{};
if
(
matchArray
&&
matchArray
.
length
>
1
&&
paramArray
&&
paramArray
.
length
>
0
){
paramArray
.
forEach
((
item
:
any
,
index
:
number
)
=>
{
Object
.
defineProperty
(
tempValue
,
item
,
{
enumerable
:
true
,
value
:
matchArray
[
index
+
1
]
});
});
}
let
items
=
mockDatas
?
mockDatas
:
[];
let
_items
=
items
.
find
((
item
:
any
)
=>
Object
.
is
(
item
.
invoicedetailid
,
tempValue
.
invoicedetailid
));
console
.
groupCollapsed
(
"response数据 status: "
+
status
+
" data: "
);
console
.
table
(
_items
?
_items
:{});
console
.
groupEnd
();
console
.
groupEnd
();
return
[
status
,
_items
?
_items
:{}];
});
// Remove
mock
.
onDelete
(
new
RegExp
(
/^
\/
invoices
\/([
a-zA-Z0-9
\-\;]{1,35})\/
invoicedetails
\/([
a-zA-Z0-9
\-\;]{1,35})
$/
)).
reply
((
config
:
any
)
=>
{
console
.
groupCollapsed
(
"实体:invoicedetail 方法: Remove"
);
console
.
table
({
url
:
config
.
url
,
method
:
config
.
method
,
data
:
config
.
data
});
let
status
=
MockAdapter
.
mockStatus
(
config
);
if
(
status
!==
200
)
{
return
[
status
,
null
];
}
const
paramArray
:
Array
<
any
>
=
[
'invoiceid'
,
'invoicedetailid'
];
const
matchArray
:
any
=
new
RegExp
(
/^
\/
invoices
\/([
a-zA-Z0-9
\-\;]{1,35})\/
invoicedetails
\/([
a-zA-Z0-9
\-\;]{1,35})
$/
).
exec
(
config
.
url
);
let
tempValue
:
any
=
{};
if
(
matchArray
&&
matchArray
.
length
>
1
&&
paramArray
&&
paramArray
.
length
>
0
){
paramArray
.
forEach
((
item
:
any
,
index
:
number
)
=>
{
Object
.
defineProperty
(
tempValue
,
item
,
{
enumerable
:
true
,
value
:
matchArray
[
index
+
1
]
});
});
}
let
items
=
mockDatas
?
mockDatas
:
[];
let
_items
=
items
.
find
((
item
:
any
)
=>
Object
.
is
(
item
.
invoicedetailid
,
tempValue
.
invoicedetailid
));
console
.
groupCollapsed
(
"response数据 status: "
+
status
+
" data: "
);
console
.
table
(
_items
?
_items
:{});
console
.
groupEnd
();
console
.
groupEnd
();
return
[
status
,
_items
?
_items
:{}];
});
// Remove
mock
.
onDelete
(
new
RegExp
(
/^
\/
invoicedetails
\/([
a-zA-Z0-9
\-\;]{1,35})
$/
)).
reply
((
config
:
any
)
=>
{
console
.
groupCollapsed
(
"实体:invoicedetail 方法: Remove"
);
console
.
table
({
url
:
config
.
url
,
method
:
config
.
method
,
data
:
config
.
data
});
let
status
=
MockAdapter
.
mockStatus
(
config
);
if
(
status
!==
200
)
{
return
[
status
,
null
];
}
const
paramArray
:
Array
<
any
>
=
[
'invoicedetailid'
];
const
matchArray
:
any
=
new
RegExp
(
/^
\/
invoicedetails
\/([
a-zA-Z0-9
\-\;]{1,35})
$/
).
exec
(
config
.
url
);
let
tempValue
:
any
=
{};
if
(
matchArray
&&
matchArray
.
length
>
1
&&
paramArray
&&
paramArray
.
length
>
0
){
paramArray
.
forEach
((
item
:
any
,
index
:
number
)
=>
{
Object
.
defineProperty
(
tempValue
,
item
,
{
enumerable
:
true
,
value
:
matchArray
[
index
+
1
]
});
});
}
let
items
=
mockDatas
?
mockDatas
:
[];
let
_items
=
items
.
find
((
item
:
any
)
=>
Object
.
is
(
item
.
invoicedetailid
,
tempValue
.
invoicedetailid
));
console
.
groupCollapsed
(
"response数据 status: "
+
status
+
" data: "
);
console
.
table
(
_items
?
_items
:{});
console
.
groupEnd
();
console
.
groupEnd
();
return
[
status
,
_items
?
_items
:{}];
});
app_CRM/src/mock/index.ts
浏览文件 @
4a96b2a1
...
@@ -12,6 +12,7 @@ import './entity/campaign-lists/campaign-lists';
...
@@ -12,6 +12,7 @@ import './entity/campaign-lists/campaign-lists';
import
'./entity/tasks/tasks'
;
import
'./entity/tasks/tasks'
;
import
'./entity/letters/letters'
;
import
'./entity/letters/letters'
;
import
'./entity/price-levels/price-levels'
;
import
'./entity/price-levels/price-levels'
;
import
'./entity/invoice-details/invoice-details'
;
import
'./entity/emails/emails'
;
import
'./entity/emails/emails'
;
import
'./entity/service-appointments/service-appointments'
;
import
'./entity/service-appointments/service-appointments'
;
import
'./entity/uoms/uoms'
;
import
'./entity/uoms/uoms'
;
...
...
app_CRM/src/mock/viewconfig/viewconfig.ts
浏览文件 @
4a96b2a1
...
@@ -95,6 +95,14 @@ mock.onGet('./assets/json/view-config.json').reply((config: any) => {
...
@@ -95,6 +95,14 @@ mock.onGet('./assets/json/view-config.json').reply((config: any) => {
"viewname"
:
"QuoteDetailEditView"
,
"viewname"
:
"QuoteDetailEditView"
,
"viewtag"
:
"0f4dc7da727ad15a2cad62fe966a633c"
"viewtag"
:
"0f4dc7da727ad15a2cad62fe966a633c"
},
},
"invoicequickcreateview"
:
{
"title"
:
"快速新建"
,
"caption"
:
"发票"
,
"viewtype"
:
"DEOPTVIEW"
,
"viewmodule"
:
"Finance"
,
"viewname"
:
"InvoiceQuickCreateView"
,
"viewtag"
:
"0fc09bf520af62b4d89aef845fc72636"
},
"salesordereditview"
:
{
"salesordereditview"
:
{
"title"
:
"订单编辑视图"
,
"title"
:
"订单编辑视图"
,
"caption"
:
"订单"
,
"caption"
:
"订单"
,
...
@@ -231,6 +239,14 @@ mock.onGet('./assets/json/view-config.json').reply((config: any) => {
...
@@ -231,6 +239,14 @@ mock.onGet('./assets/json/view-config.json').reply((config: any) => {
"viewname"
:
"ContactInfo_Book"
,
"viewname"
:
"ContactInfo_Book"
,
"viewtag"
:
"2b787c59ba090b37b9a1ba8f8ba045b4"
"viewtag"
:
"2b787c59ba090b37b9a1ba8f8ba045b4"
},
},
"invoicedetailinvoiceprogridview"
:
{
"title"
:
"发票产品表格视图"
,
"caption"
:
"发票产品"
,
"viewtype"
:
"DEGRIDVIEW"
,
"viewmodule"
:
"Finance"
,
"viewname"
:
"InvoiceDetailInvoiceProGridView"
,
"viewtag"
:
"2bb0e34c7ae753e03404e4d96b17e90c"
},
"listleadbylist"
:
{
"listleadbylist"
:
{
"title"
:
"营销列表-潜在客户(根据营销列表)"
,
"title"
:
"营销列表-潜在客户(根据营销列表)"
,
"caption"
:
"潜在客户"
,
"caption"
:
"潜在客户"
,
...
@@ -399,6 +415,14 @@ mock.onGet('./assets/json/view-config.json').reply((config: any) => {
...
@@ -399,6 +415,14 @@ mock.onGet('./assets/json/view-config.json').reply((config: any) => {
"viewname"
:
"ListAccountByList"
,
"viewname"
:
"ListAccountByList"
,
"viewtag"
:
"4799b0e7139b537ebe9313a004daa0ac"
"viewtag"
:
"4799b0e7139b537ebe9313a004daa0ac"
},
},
"invoicedetaileditview"
:
{
"title"
:
"发票产品编辑视图"
,
"caption"
:
"发票产品"
,
"viewtype"
:
"DEEDITVIEW"
,
"viewmodule"
:
"Finance"
,
"viewname"
:
"InvoiceDetailEditView"
,
"viewtag"
:
"485d1a17354fe57fd79dde512adb715b"
},
"listaccounteditview"
:
{
"listaccounteditview"
:
{
"title"
:
"营销列表-账户编辑视图"
,
"title"
:
"营销列表-账户编辑视图"
,
"caption"
:
"营销列表-账户"
,
"caption"
:
"营销列表-账户"
,
...
@@ -631,6 +655,14 @@ mock.onGet('./assets/json/view-config.json').reply((config: any) => {
...
@@ -631,6 +655,14 @@ mock.onGet('./assets/json/view-config.json').reply((config: any) => {
"viewname"
:
"ContactEditAddress"
,
"viewname"
:
"ContactEditAddress"
,
"viewtag"
:
"75b6e6474d2b1adcae64bafd60edb618"
"viewtag"
:
"75b6e6474d2b1adcae64bafd60edb618"
},
},
"invoicesummaryview"
:
{
"title"
:
"发票数据看板视图"
,
"caption"
:
"发票"
,
"viewtype"
:
"DEPORTALVIEW"
,
"viewmodule"
:
"Finance"
,
"viewname"
:
"InvoiceSummaryView"
,
"viewtag"
:
"77ef5d53fe0cadbe03c9d2f9d25c804b"
},
"goaleditview"
:
{
"goaleditview"
:
{
"title"
:
"目标编辑视图"
,
"title"
:
"目标编辑视图"
,
"caption"
:
"目标"
,
"caption"
:
"目标"
,
...
@@ -975,6 +1007,14 @@ mock.onGet('./assets/json/view-config.json').reply((config: any) => {
...
@@ -975,6 +1007,14 @@ mock.onGet('./assets/json/view-config.json').reply((config: any) => {
"viewname"
:
"ListContactInner"
,
"viewname"
:
"ListContactInner"
,
"viewtag"
:
"aaa875342bd9286a39c2d193a150afc4"
"viewtag"
:
"aaa875342bd9286a39c2d193a150afc4"
},
},
"invoiceinfoview"
:
{
"title"
:
"发票信息"
,
"caption"
:
"发票"
,
"viewtype"
:
"DETABEXPVIEW"
,
"viewmodule"
:
"Finance"
,
"viewname"
:
"InvoiceInfoView"
,
"viewtag"
:
"ab653866ca40a1cefde21241ac5ba44c"
},
"competitorinfo"
:
{
"competitorinfo"
:
{
"title"
:
"竞争对手"
,
"title"
:
"竞争对手"
,
"caption"
:
"竞争对手"
,
"caption"
:
"竞争对手"
,
...
@@ -1111,6 +1151,14 @@ mock.onGet('./assets/json/view-config.json').reply((config: any) => {
...
@@ -1111,6 +1151,14 @@ mock.onGet('./assets/json/view-config.json').reply((config: any) => {
"viewname"
:
"OpportunityInfo_Product"
,
"viewname"
:
"OpportunityInfo_Product"
,
"viewtag"
:
"c74c14188b89f72079643170a83c25f5"
"viewtag"
:
"c74c14188b89f72079643170a83c25f5"
},
},
"salesorderpickupgridview"
:
{
"title"
:
"订单选择表格视图"
,
"caption"
:
"订单"
,
"viewtype"
:
"DEPICKUPGRIDVIEW"
,
"viewmodule"
:
"Sales"
,
"viewname"
:
"SalesOrderPickupGridView"
,
"viewtag"
:
"c78a9fa4a75c9a957de0bacd4c0c911c"
},
"listcontacteditview"
:
{
"listcontacteditview"
:
{
"title"
:
"营销列表-联系人编辑视图"
,
"title"
:
"营销列表-联系人编辑视图"
,
"caption"
:
"营销列表-联系人"
,
"caption"
:
"营销列表-联系人"
,
...
@@ -1175,6 +1223,14 @@ mock.onGet('./assets/json/view-config.json').reply((config: any) => {
...
@@ -1175,6 +1223,14 @@ mock.onGet('./assets/json/view-config.json').reply((config: any) => {
"viewname"
:
"InvoiceGridView"
,
"viewname"
:
"InvoiceGridView"
,
"viewtag"
:
"e0aef8c0d1f1ae28f628a0541b118961"
"viewtag"
:
"e0aef8c0d1f1ae28f628a0541b118961"
},
},
"invoiceinfo_invoiceview"
:
{
"title"
:
"发票编辑视图"
,
"caption"
:
"发票"
,
"viewtype"
:
"DEEDITVIEW"
,
"viewmodule"
:
"Finance"
,
"viewname"
:
"InvoiceInfo_InvoiceView"
,
"viewtag"
:
"e167550b61bf1bd019a8e522b8fccc21"
},
"accountinfo_contactsetting"
:
{
"accountinfo_contactsetting"
:
{
"title"
:
"客户编辑视图"
,
"title"
:
"客户编辑视图"
,
"caption"
:
"客户"
,
"caption"
:
"客户"
,
...
@@ -1224,7 +1280,7 @@ mock.onGet('./assets/json/view-config.json').reply((config: any) => {
...
@@ -1224,7 +1280,7 @@ mock.onGet('./assets/json/view-config.json').reply((config: any) => {
"viewtag"
:
"e7ed63c9b06815f5310c4fff23b93c8b"
"viewtag"
:
"e7ed63c9b06815f5310c4fff23b93c8b"
},
},
"salesorderquickcreateview"
:
{
"salesorderquickcreateview"
:
{
"title"
:
"
订单选项操作视图
"
,
"title"
:
"
快速新建
"
,
"caption"
:
"订单"
,
"caption"
:
"订单"
,
"viewtype"
:
"DEOPTVIEW"
,
"viewtype"
:
"DEOPTVIEW"
,
"viewmodule"
:
"Sales"
,
"viewmodule"
:
"Sales"
,
...
@@ -1247,6 +1303,14 @@ mock.onGet('./assets/json/view-config.json').reply((config: any) => {
...
@@ -1247,6 +1303,14 @@ mock.onGet('./assets/json/view-config.json').reply((config: any) => {
"viewname"
:
"CampaignInfo_Schedule"
,
"viewname"
:
"CampaignInfo_Schedule"
,
"viewtag"
:
"f63525be2835a01da997d7f059efb09f"
"viewtag"
:
"f63525be2835a01da997d7f059efb09f"
},
},
"salesorderpickupview"
:
{
"title"
:
"订单数据选择视图"
,
"caption"
:
"订单"
,
"viewtype"
:
"DEPICKUPVIEW"
,
"viewmodule"
:
"Sales"
,
"viewname"
:
"SalesOrderPickupView"
,
"viewtag"
:
"f6f91153f3caa976cf7f552636f7e012"
},
"taskeditview"
:
{
"taskeditview"
:
{
"title"
:
"任务编辑视图"
,
"title"
:
"任务编辑视图"
,
"caption"
:
"任务"
,
"caption"
:
"任务"
,
...
...
app_CRM/src/pages/sales/opportunity-info-abstract/opportunity-info-abstract.html
浏览文件 @
4a96b2a1
<studio-view-style2
viewName=
"opportunityinfo_abstract"
viewTitle=
"商机编辑视图"
class=
'deeditview opportunity-info-abstract'
>
<studio-view-style2
viewName=
"opportunityinfo_abstract"
viewTitle=
"商机编辑视图"
class=
'deeditview opportunity-info-abstract'
>
<template
slot=
'title'
>
<span
class=
'caption-info'
>
{{$t(model.srfTitle)}}
</span>
</template>
<view
_form
<view
_form
:viewState=
"viewState"
:viewState=
"viewState"
:viewparams=
"viewparams"
:viewparams=
"viewparams"
...
...
app_CRM/src/pages/sales/sales-order-quick-create-view/sales-order-quick-create-view-base.tsx
浏览文件 @
4a96b2a1
...
@@ -4,7 +4,7 @@ import SalesOrderService from '@/service/sales-order/sales-order-service';
...
@@ -4,7 +4,7 @@ import SalesOrderService from '@/service/sales-order/sales-order-service';
import
OptionViewEngine
from
'@engine/view/option-view-engine'
;
import
OptionViewEngine
from
'@engine/view/option-view-engine'
;
/**
/**
*
订单选项操作视图
视图基类
*
快速新建
视图基类
*
*
* @export
* @export
* @class SalesOrderQuickCreateViewBase
* @class SalesOrderQuickCreateViewBase
...
...
app_CRM/src/pages/sales/sales-order-quick-create-view/sales-order-quick-create-view.html
浏览文件 @
4a96b2a1
<studio-view-style2
viewName=
"salesorderquickcreateview"
viewTitle=
"
订单选项操作视图
"
class=
'deoptview sales-order-quick-create-view'
>
<studio-view-style2
viewName=
"salesorderquickcreateview"
viewTitle=
"
快速新建
"
class=
'deoptview sales-order-quick-create-view'
>
<template
slot=
'title'
>
<template
slot=
'title'
>
<span
class=
'caption-info'
>
{{$t(model.srfTitle)}}
</span>
<span
class=
'caption-info'
>
{{$t(model.srfTitle)}}
</span>
</template>
</template>
...
...
app_CRM/src/pages/sales/sales-order-quick-create-view/sales-order-quick-create-view.vue
浏览文件 @
4a96b2a1
...
@@ -6,7 +6,7 @@ import { SalesOrderQuickCreateViewBase } from './sales-order-quick-create-view-b
...
@@ -6,7 +6,7 @@ import { SalesOrderQuickCreateViewBase } from './sales-order-quick-create-view-b
import view_form from '@widgets/sales-order/quick-create-form/quick-create-form.vue';
import view_form from '@widgets/sales-order/quick-create-form/quick-create-form.vue';
/**
/**
*
订单选项操作视图
视图
*
快速新建
视图
*
*
* @export
* @export
* @class SalesOrderQuickCreateView
* @class SalesOrderQuickCreateView
...
...
app_CRM/src/service/entity-service-register.ts
浏览文件 @
4a96b2a1
...
@@ -44,6 +44,7 @@ export class EntityServiceRegister {
...
@@ -44,6 +44,7 @@ export class EntityServiceRegister {
this
.
allEntityService
.
set
(
'task'
,
()
=>
import
(
'@/service/task/task-service'
));
this
.
allEntityService
.
set
(
'task'
,
()
=>
import
(
'@/service/task/task-service'
));
this
.
allEntityService
.
set
(
'letter'
,
()
=>
import
(
'@/service/letter/letter-service'
));
this
.
allEntityService
.
set
(
'letter'
,
()
=>
import
(
'@/service/letter/letter-service'
));
this
.
allEntityService
.
set
(
'pricelevel'
,
()
=>
import
(
'@/service/price-level/price-level-service'
));
this
.
allEntityService
.
set
(
'pricelevel'
,
()
=>
import
(
'@/service/price-level/price-level-service'
));
this
.
allEntityService
.
set
(
'invoicedetail'
,
()
=>
import
(
'@/service/invoice-detail/invoice-detail-service'
));
this
.
allEntityService
.
set
(
'email'
,
()
=>
import
(
'@/service/email/email-service'
));
this
.
allEntityService
.
set
(
'email'
,
()
=>
import
(
'@/service/email/email-service'
));
this
.
allEntityService
.
set
(
'serviceappointment'
,
()
=>
import
(
'@/service/service-appointment/service-appointment-service'
));
this
.
allEntityService
.
set
(
'serviceappointment'
,
()
=>
import
(
'@/service/service-appointment/service-appointment-service'
));
this
.
allEntityService
.
set
(
'uom'
,
()
=>
import
(
'@/service/uom/uom-service'
));
this
.
allEntityService
.
set
(
'uom'
,
()
=>
import
(
'@/service/uom/uom-service'
));
...
...
app_CRM/src/service/invoice-detail/invoice-detail-service-base.ts
0 → 100644
浏览文件 @
4a96b2a1
import
{
Http
,
Util
}
from
'@/utils'
;
import
EntityService
from
'../entity-service'
;
/**
* 发票产品服务对象基类
*
* @export
* @class InvoiceDetailServiceBase
* @extends {EntityServie}
*/
export
default
class
InvoiceDetailServiceBase
extends
EntityService
{
/**
* Creates an instance of InvoiceDetailServiceBase.
*
* @param {*} [opts={}]
* @memberof InvoiceDetailServiceBase
*/
constructor
(
opts
:
any
=
{})
{
super
(
opts
);
}
/**
* 初始化基础数据
*
* @memberof InvoiceDetailServiceBase
*/
public
initBasicData
(){
this
.
APPLYDEKEY
=
'invoicedetail'
;
this
.
APPDEKEY
=
'invoicedetailid'
;
this
.
APPDENAME
=
'invoicedetails'
;
this
.
APPDETEXT
=
'invoicedetailname'
;
this
.
APPNAME
=
'crm'
;
this
.
SYSTEMNAME
=
'ibizbusinesscentral'
;
}
// 实体接口
/**
* Select接口方法
*
* @param {*} [context={}]
* @param {*} [data={}]
* @param {boolean} [isloading]
* @returns {Promise<any>}
* @memberof InvoiceDetailServiceBase
*/
public
async
Select
(
context
:
any
=
{},
data
:
any
=
{},
isloading
?:
boolean
):
Promise
<
any
>
{
if
(
context
.
invoice
&&
context
.
invoicedetail
){
return
Http
.
getInstance
().
get
(
`/invoices/
${
context
.
invoice
}
/invoicedetails/
${
context
.
invoicedetail
}
/select`
,
isloading
);
}
return
Http
.
getInstance
().
get
(
`/invoicedetails/
${
context
.
invoicedetail
}
/select`
,
isloading
);
}
/**
* CheckKey接口方法
*
* @param {*} [context={}]
* @param {*} [data={}]
* @param {boolean} [isloading]
* @returns {Promise<any>}
* @memberof InvoiceDetailServiceBase
*/
public
async
CheckKey
(
context
:
any
=
{},
data
:
any
=
{},
isloading
?:
boolean
):
Promise
<
any
>
{
if
(
context
.
invoice
&&
context
.
invoicedetail
){
let
masterData
:
any
=
{};
Object
.
assign
(
data
,
masterData
);
let
res
:
any
=
await
Http
.
getInstance
().
post
(
`/invoices/
${
context
.
invoice
}
/invoicedetails/
${
context
.
invoicedetail
}
/checkkey`
,
data
,
isloading
);
return
res
;
}
return
Http
.
getInstance
().
post
(
`/invoicedetails/
${
context
.
invoicedetail
}
/checkkey`
,
data
,
isloading
);
}
/**
* Get接口方法
*
* @param {*} [context={}]
* @param {*} [data={}]
* @param {boolean} [isloading]
* @returns {Promise<any>}
* @memberof InvoiceDetailServiceBase
*/
public
async
Get
(
context
:
any
=
{},
data
:
any
=
{},
isloading
?:
boolean
):
Promise
<
any
>
{
if
(
context
.
invoice
&&
context
.
invoicedetail
){
let
res
:
any
=
await
Http
.
getInstance
().
get
(
`/invoices/
${
context
.
invoice
}
/invoicedetails/
${
context
.
invoicedetail
}
`
,
isloading
);
return
res
;
}
let
res
:
any
=
await
Http
.
getInstance
().
get
(
`/invoicedetails/
${
context
.
invoicedetail
}
`
,
isloading
);
return
res
;
}
/**
* Update接口方法
*
* @param {*} [context={}]
* @param {*} [data={}]
* @param {boolean} [isloading]
* @returns {Promise<any>}
* @memberof InvoiceDetailServiceBase
*/
public
async
Update
(
context
:
any
=
{},
data
:
any
=
{},
isloading
?:
boolean
):
Promise
<
any
>
{
if
(
context
.
invoice
&&
context
.
invoicedetail
){
let
masterData
:
any
=
{};
Object
.
assign
(
data
,
masterData
);
let
res
:
any
=
await
Http
.
getInstance
().
put
(
`/invoices/
${
context
.
invoice
}
/invoicedetails/
${
context
.
invoicedetail
}
`
,
data
,
isloading
);
return
res
;
}
let
masterData
:
any
=
{};
Object
.
assign
(
data
,
masterData
);
let
res
:
any
=
await
Http
.
getInstance
().
put
(
`/invoicedetails/
${
context
.
invoicedetail
}
`
,
data
,
isloading
);
return
res
;
}
/**
* Create接口方法
*
* @param {*} [context={}]
* @param {*} [data={}]
* @param {boolean} [isloading]
* @returns {Promise<any>}
* @memberof InvoiceDetailServiceBase
*/
public
async
Create
(
context
:
any
=
{},
data
:
any
=
{},
isloading
?:
boolean
):
Promise
<
any
>
{
if
(
context
.
invoice
&&
true
){
let
masterData
:
any
=
{};
Object
.
assign
(
data
,
masterData
);
if
(
!
data
.
srffrontuf
||
data
.
srffrontuf
!==
"1"
){
data
[
this
.
APPDEKEY
]
=
null
;
}
if
(
data
.
srffrontuf
){
delete
data
.
srffrontuf
;
}
let
tempContext
:
any
=
JSON
.
parse
(
JSON
.
stringify
(
context
));
let
res
:
any
=
await
Http
.
getInstance
().
post
(
`/invoices/
${
context
.
invoice
}
/invoicedetails`
,
data
,
isloading
);
return
res
;
}
let
masterData
:
any
=
{};
Object
.
assign
(
data
,
masterData
);
if
(
!
data
.
srffrontuf
||
data
.
srffrontuf
!==
"1"
){
data
[
this
.
APPDEKEY
]
=
null
;
}
if
(
data
.
srffrontuf
){
delete
data
.
srffrontuf
;
}
let
tempContext
:
any
=
JSON
.
parse
(
JSON
.
stringify
(
context
));
let
res
:
any
=
await
Http
.
getInstance
().
post
(
`/invoicedetails`
,
data
,
isloading
);
return
res
;
}
/**
* GetDraft接口方法
*
* @param {*} [context={}]
* @param {*} [data={}]
* @param {boolean} [isloading]
* @returns {Promise<any>}
* @memberof InvoiceDetailServiceBase
*/
public
async
GetDraft
(
context
:
any
=
{},
data
:
any
=
{},
isloading
?:
boolean
):
Promise
<
any
>
{
if
(
context
.
invoice
&&
true
){
let
res
:
any
=
await
Http
.
getInstance
().
get
(
`/invoices/
${
context
.
invoice
}
/invoicedetails/getdraft`
,
isloading
);
res
.
data
.
invoicedetail
=
data
.
invoicedetail
;
return
res
;
}
let
res
:
any
=
await
Http
.
getInstance
().
get
(
`/invoicedetails/getdraft`
,
isloading
);
res
.
data
.
invoicedetail
=
data
.
invoicedetail
;
return
res
;
}
/**
* Save接口方法
*
* @param {*} [context={}]
* @param {*} [data={}]
* @param {boolean} [isloading]
* @returns {Promise<any>}
* @memberof InvoiceDetailServiceBase
*/
public
async
Save
(
context
:
any
=
{},
data
:
any
=
{},
isloading
?:
boolean
):
Promise
<
any
>
{
if
(
context
.
invoice
&&
context
.
invoicedetail
){
let
masterData
:
any
=
{};
Object
.
assign
(
data
,
masterData
);
let
res
:
any
=
await
Http
.
getInstance
().
post
(
`/invoices/
${
context
.
invoice
}
/invoicedetails/
${
context
.
invoicedetail
}
/save`
,
data
,
isloading
);
return
res
;
}
let
masterData
:
any
=
{};
Object
.
assign
(
data
,
masterData
);
let
res
:
any
=
await
Http
.
getInstance
().
post
(
`/invoicedetails/
${
context
.
invoicedetail
}
/save`
,
data
,
isloading
);
return
res
;
}
/**
* Remove接口方法
*
* @param {*} [context={}]
* @param {*} [data={}]
* @param {boolean} [isloading]
* @returns {Promise<any>}
* @memberof InvoiceDetailServiceBase
*/
public
async
Remove
(
context
:
any
=
{},
data
:
any
=
{},
isloading
?:
boolean
):
Promise
<
any
>
{
if
(
context
.
invoice
&&
context
.
invoicedetail
){
return
Http
.
getInstance
().
delete
(
`/invoices/
${
context
.
invoice
}
/invoicedetails/
${
context
.
invoicedetail
}
`
,
isloading
);
}
return
Http
.
getInstance
().
delete
(
`/invoicedetails/
${
context
.
invoicedetail
}
`
,
isloading
);
}
/**
* FetchDefault接口方法
*
* @param {*} [context={}]
* @param {*} [data={}]
* @param {boolean} [isloading]
* @returns {Promise<any>}
* @memberof InvoiceDetailServiceBase
*/
public
async
FetchDefault
(
context
:
any
=
{},
data
:
any
=
{},
isloading
?:
boolean
):
Promise
<
any
>
{
if
(
context
.
invoice
&&
true
){
let
tempData
:
any
=
JSON
.
parse
(
JSON
.
stringify
(
data
));
return
Http
.
getInstance
().
get
(
`/invoices/
${
context
.
invoice
}
/invoicedetails/fetchdefault`
,
tempData
,
isloading
);
}
let
tempData
:
any
=
JSON
.
parse
(
JSON
.
stringify
(
data
));
return
Http
.
getInstance
().
get
(
`/invoicedetails/fetchdefault`
,
tempData
,
isloading
);
}
}
\ No newline at end of file
app_CRM/src/service/invoice-detail/invoice-detail-service.ts
0 → 100644
浏览文件 @
4a96b2a1
import
{
Http
,
Util
}
from
'@/utils'
;
import
InvoiceDetailServiceBase
from
'./invoice-detail-service-base'
;
/**
* 发票产品服务对象
*
* @export
* @class InvoiceDetailService
* @extends {InvoiceDetailServiceBase}
*/
export
default
class
InvoiceDetailService
extends
InvoiceDetailServiceBase
{
/**
* Creates an instance of InvoiceDetailService.
*
* @param {*} [opts={}]
* @memberof InvoiceDetailService
*/
constructor
(
opts
:
any
=
{})
{
super
(
opts
);
}
}
\ No newline at end of file
app_CRM/src/service/invoice/invoice-service-base.ts
浏览文件 @
4a96b2a1
...
@@ -62,6 +62,21 @@ export default class InvoiceServiceBase extends EntityService {
...
@@ -62,6 +62,21 @@ export default class InvoiceServiceBase extends EntityService {
*/
*/
public
async
Create
(
context
:
any
=
{},
data
:
any
=
{},
isloading
?:
boolean
):
Promise
<
any
>
{
public
async
Create
(
context
:
any
=
{},
data
:
any
=
{},
isloading
?:
boolean
):
Promise
<
any
>
{
let
masterData
:
any
=
{};
let
masterData
:
any
=
{};
let
invoicedetailsData
:
any
=
[];
if
(
!
Object
.
is
(
this
.
tempStorage
.
getItem
(
context
.
srfsessionkey
+
'_invoicedetails'
),
'undefined'
)){
invoicedetailsData
=
JSON
.
parse
(
this
.
tempStorage
.
getItem
(
context
.
srfsessionkey
+
'_invoicedetails'
)
as
any
);
if
(
invoicedetailsData
&&
invoicedetailsData
.
length
&&
invoicedetailsData
.
length
>
0
){
invoicedetailsData
.
forEach
((
item
:
any
)
=>
{
if
(
item
.
srffrontuf
){
if
(
Object
.
is
(
item
.
srffrontuf
,
"0"
)){
item
.
invoicedetailid
=
null
;
}
delete
item
.
srffrontuf
;
}
});
}
}
masterData
.
invoicedetails
=
invoicedetailsData
;
Object
.
assign
(
data
,
masterData
);
Object
.
assign
(
data
,
masterData
);
if
(
!
data
.
srffrontuf
||
data
.
srffrontuf
!==
"1"
){
if
(
!
data
.
srffrontuf
||
data
.
srffrontuf
!==
"1"
){
data
[
this
.
APPDEKEY
]
=
null
;
data
[
this
.
APPDEKEY
]
=
null
;
...
@@ -71,6 +86,7 @@ export default class InvoiceServiceBase extends EntityService {
...
@@ -71,6 +86,7 @@ export default class InvoiceServiceBase extends EntityService {
}
}
let
tempContext
:
any
=
JSON
.
parse
(
JSON
.
stringify
(
context
));
let
tempContext
:
any
=
JSON
.
parse
(
JSON
.
stringify
(
context
));
let
res
:
any
=
await
Http
.
getInstance
().
post
(
`/invoices`
,
data
,
isloading
);
let
res
:
any
=
await
Http
.
getInstance
().
post
(
`/invoices`
,
data
,
isloading
);
this
.
tempStorage
.
setItem
(
tempContext
.
srfsessionkey
+
'_invoicedetails'
,
JSON
.
stringify
(
res
.
data
.
invoicedetails
));
return
res
;
return
res
;
}
}
...
@@ -86,6 +102,7 @@ export default class InvoiceServiceBase extends EntityService {
...
@@ -86,6 +102,7 @@ export default class InvoiceServiceBase extends EntityService {
public
async
GetDraft
(
context
:
any
=
{},
data
:
any
=
{},
isloading
?:
boolean
):
Promise
<
any
>
{
public
async
GetDraft
(
context
:
any
=
{},
data
:
any
=
{},
isloading
?:
boolean
):
Promise
<
any
>
{
let
res
:
any
=
await
Http
.
getInstance
().
get
(
`/invoices/getdraft`
,
isloading
);
let
res
:
any
=
await
Http
.
getInstance
().
get
(
`/invoices/getdraft`
,
isloading
);
res
.
data
.
invoice
=
data
.
invoice
;
res
.
data
.
invoice
=
data
.
invoice
;
this
.
tempStorage
.
setItem
(
context
.
srfsessionkey
+
'_invoicedetails'
,
JSON
.
stringify
(
res
.
data
.
invoicedetails
));
return
res
;
return
res
;
}
}
...
@@ -100,8 +117,24 @@ export default class InvoiceServiceBase extends EntityService {
...
@@ -100,8 +117,24 @@ export default class InvoiceServiceBase extends EntityService {
*/
*/
public
async
Update
(
context
:
any
=
{},
data
:
any
=
{},
isloading
?:
boolean
):
Promise
<
any
>
{
public
async
Update
(
context
:
any
=
{},
data
:
any
=
{},
isloading
?:
boolean
):
Promise
<
any
>
{
let
masterData
:
any
=
{};
let
masterData
:
any
=
{};
let
invoicedetailsData
:
any
=
[];
if
(
!
Object
.
is
(
this
.
tempStorage
.
getItem
(
context
.
srfsessionkey
+
'_invoicedetails'
),
'undefined'
)){
invoicedetailsData
=
JSON
.
parse
(
this
.
tempStorage
.
getItem
(
context
.
srfsessionkey
+
'_invoicedetails'
)
as
any
);
if
(
invoicedetailsData
&&
invoicedetailsData
.
length
&&
invoicedetailsData
.
length
>
0
){
invoicedetailsData
.
forEach
((
item
:
any
)
=>
{
if
(
item
.
srffrontuf
){
if
(
Object
.
is
(
item
.
srffrontuf
,
"0"
)){
item
.
invoicedetailid
=
null
;
}
delete
item
.
srffrontuf
;
}
});
}
}
masterData
.
invoicedetails
=
invoicedetailsData
;
Object
.
assign
(
data
,
masterData
);
Object
.
assign
(
data
,
masterData
);
let
res
:
any
=
await
Http
.
getInstance
().
put
(
`/invoices/
${
context
.
invoice
}
`
,
data
,
isloading
);
let
res
:
any
=
await
Http
.
getInstance
().
put
(
`/invoices/
${
context
.
invoice
}
`
,
data
,
isloading
);
this
.
tempStorage
.
setItem
(
context
.
srfsessionkey
+
'_invoicedetails'
,
JSON
.
stringify
(
res
.
data
.
invoicedetails
));
return
res
;
return
res
;
}
}
...
@@ -142,8 +175,24 @@ export default class InvoiceServiceBase extends EntityService {
...
@@ -142,8 +175,24 @@ export default class InvoiceServiceBase extends EntityService {
*/
*/
public
async
Save
(
context
:
any
=
{},
data
:
any
=
{},
isloading
?:
boolean
):
Promise
<
any
>
{
public
async
Save
(
context
:
any
=
{},
data
:
any
=
{},
isloading
?:
boolean
):
Promise
<
any
>
{
let
masterData
:
any
=
{};
let
masterData
:
any
=
{};
let
invoicedetailsData
:
any
=
[];
if
(
!
Object
.
is
(
this
.
tempStorage
.
getItem
(
context
.
srfsessionkey
+
'_invoicedetails'
),
'undefined'
)){
invoicedetailsData
=
JSON
.
parse
(
this
.
tempStorage
.
getItem
(
context
.
srfsessionkey
+
'_invoicedetails'
)
as
any
);
if
(
invoicedetailsData
&&
invoicedetailsData
.
length
&&
invoicedetailsData
.
length
>
0
){
invoicedetailsData
.
forEach
((
item
:
any
)
=>
{
if
(
item
.
srffrontuf
){
if
(
Object
.
is
(
item
.
srffrontuf
,
"0"
)){
item
.
invoicedetailid
=
null
;
}
delete
item
.
srffrontuf
;
}
});
}
}
masterData
.
invoicedetails
=
invoicedetailsData
;
Object
.
assign
(
data
,
masterData
);
Object
.
assign
(
data
,
masterData
);
let
res
:
any
=
await
Http
.
getInstance
().
post
(
`/invoices/
${
context
.
invoice
}
/save`
,
data
,
isloading
);
let
res
:
any
=
await
Http
.
getInstance
().
post
(
`/invoices/
${
context
.
invoice
}
/save`
,
data
,
isloading
);
this
.
tempStorage
.
setItem
(
context
.
srfsessionkey
+
'_invoicedetails'
,
JSON
.
stringify
(
res
.
data
.
invoicedetails
));
return
res
;
return
res
;
}
}
...
@@ -158,6 +207,7 @@ export default class InvoiceServiceBase extends EntityService {
...
@@ -158,6 +207,7 @@ export default class InvoiceServiceBase extends EntityService {
*/
*/
public
async
Get
(
context
:
any
=
{},
data
:
any
=
{},
isloading
?:
boolean
):
Promise
<
any
>
{
public
async
Get
(
context
:
any
=
{},
data
:
any
=
{},
isloading
?:
boolean
):
Promise
<
any
>
{
let
res
:
any
=
await
Http
.
getInstance
().
get
(
`/invoices/
${
context
.
invoice
}
`
,
isloading
);
let
res
:
any
=
await
Http
.
getInstance
().
get
(
`/invoices/
${
context
.
invoice
}
`
,
isloading
);
this
.
tempStorage
.
setItem
(
context
.
srfsessionkey
+
'_invoicedetails'
,
JSON
.
stringify
(
res
.
data
.
invoicedetails
));
return
res
;
return
res
;
}
}
...
...
app_CRM/src/store/modules/view-action/state.ts
浏览文件 @
4a96b2a1
...
@@ -174,8 +174,11 @@ export const viewstate: any = {
...
@@ -174,8 +174,11 @@ export const viewstate: any = {
viewaction
:
''
,
viewaction
:
''
,
viewdatachange
:
false
,
viewdatachange
:
false
,
refviews
:
[
refviews
:
[
'aa79d35850f36fbc1a5085353ecd5af5'
,
'66b3d6f7e15711b61132066ba3a95f91'
,
'66b3d6f7e15711b61132066ba3a95f91'
,
'c74c14188b89f72079643170a83c25f5'
,
'a95d7d9111bc13a8b73a11ee1e4ff92a'
,
'893e62d6fbdc4580de7e3e802aec9108'
,
'a5213905238dbc5d8e1a505029105cc9'
,
],
],
},
},
{
{
...
...
app_CRM/src/uiservice/invoice-detail/invoice-detail-ui-service-base.ts
0 → 100644
浏览文件 @
4a96b2a1
import
{
Environment
}
from
'@/environments/environment'
;
import
{
UIActionTool
,
Util
}
from
'@/utils'
;
import
UIService
from
'../ui-service'
;
import
{
Subject
}
from
'rxjs'
;
import
InvoiceDetailService
from
'@/service/invoice-detail/invoice-detail-service'
;
/**
* 发票产品UI服务对象基类
*
* @export
* @class InvoiceDetailUIServiceBase
*/
export
default
class
InvoiceDetailUIServiceBase
extends
UIService
{
/**
* 是否支持工作流
*
* @memberof InvoiceDetailUIServiceBase
*/
public
isEnableWorkflow
:
boolean
=
false
;
/**
* 当前UI服务对应的数据服务对象
*
* @memberof InvoiceDetailUIServiceBase
*/
public
dataService
:
InvoiceDetailService
=
new
InvoiceDetailService
();
/**
* 所有关联视图
*
* @memberof InvoiceDetailUIServiceBase
*/
public
allViewMap
:
Map
<
string
,
Object
>
=
new
Map
();
/**
* 状态值
*
* @memberof InvoiceDetailUIServiceBase
*/
public
stateValue
:
number
=
0
;
/**
* 状态属性
*
* @memberof InvoiceDetailUIServiceBase
*/
public
stateField
:
string
=
""
;
/**
* 主状态属性集合
*
* @memberof InvoiceDetailUIServiceBase
*/
public
mainStateFields
:
Array
<
any
>
=
[];
/**
* 主状态集合Map
*
* @memberof InvoiceDetailUIServiceBase
*/
public
allDeMainStateMap
:
Map
<
string
,
string
>
=
new
Map
();
/**
* Creates an instance of InvoiceDetailUIServiceBase.
*
* @param {*} [opts={}]
* @memberof InvoiceDetailUIServiceBase
*/
constructor
(
opts
:
any
=
{})
{
super
(
opts
);
this
.
initViewMap
();
this
.
initDeMainStateMap
();
}
/**
* 初始化视图Map
*
* @memberof InvoiceDetailUIServiceBase
*/
public
initViewMap
(){
this
.
allViewMap
.
set
(
':'
,{
viewname
:
'invoiceprogridview'
,
srfappde
:
'invoicedetails'
});
this
.
allViewMap
.
set
(
'EDITVIEW:'
,{
viewname
:
'editview'
,
srfappde
:
'invoicedetails'
});
}
/**
* 初始化主状态集合
*
* @memberof InvoiceDetailUIServiceBase
*/
public
initDeMainStateMap
(){
}
/**
* 获取指定数据的重定向页面
*
* @param srfkey 数据主键
* @param isEnableWorkflow 重定向视图是否需要处理流程中的数据
* @memberof InvoiceDetailUIServiceBase
*/
public
async
getRDAppView
(
srfkey
:
string
,
isEnableWorkflow
:
boolean
){
this
.
isEnableWorkflow
=
isEnableWorkflow
;
// 进行数据查询
let
result
:
any
=
await
this
.
dataService
.
Get
({
invoicedetail
:
srfkey
});
const
curData
:
any
=
result
.
data
;
//判断当前数据模式,默认为true,todo
const
iRealDEModel
:
boolean
=
true
;
let
bDataInWF
:
boolean
=
false
;
let
bWFMode
:
any
=
false
;
// 计算数据模式
if
(
this
.
isEnableWorkflow
)
{
bDataInWF
=
await
this
.
dataService
.
testDataInWF
({
stateValue
:
this
.
stateValue
,
stateField
:
this
.
stateField
},
curData
);
if
(
bDataInWF
)
{
bDataInWF
=
true
;
bWFMode
=
await
this
.
dataService
.
testUserExistWorklist
(
null
,
curData
);
}
}
let
strPDTViewParam
:
string
=
await
this
.
getDESDDEViewPDTParam
(
curData
,
bDataInWF
,
bWFMode
);
//若不是当前数据模式,处理strPDTViewParam,todo
//查找视图
//返回视图
return
this
.
allViewMap
.
get
(
strPDTViewParam
);
}
/**
* 获取实际的数据类型
*
* @memberof InvoiceDetailUIServiceBase
*/
public
getRealDEType
(
entity
:
any
){
}
/**
* 获取实体单数据实体视图预定义参数
*
* @param curData 当前数据
* @param bDataInWF 是否有数据在工作流中
* @param bWFMode 是否工作流模式
* @memberof InvoiceDetailUIServiceBase
*/
public
async
getDESDDEViewPDTParam
(
curData
:
any
,
bDataInWF
:
boolean
,
bWFMode
:
boolean
){
let
strPDTParam
:
string
=
''
;
if
(
bDataInWF
)
{
// 判断数据是否在流程中
}
//多表单,todo
const
isEnableMultiForm
:
boolean
=
false
;
const
multiFormDEField
:
string
|
null
=
null
;
if
(
isEnableMultiForm
&&
multiFormDEField
)
{
const
objFormValue
:
string
=
curData
[
multiFormDEField
];
if
(
!
Environment
.
isAppMode
){
return
'MOBEDITVIEW'
+
objFormValue
;
}
return
'EDITVIEW'
+
objFormValue
;
}
if
(
!
Environment
.
isAppMode
){
if
(
this
.
getDEMainStateTag
(
curData
)){
return
`MOBEDITVIEW:MSTAG:
${
await
this
.
getDEMainStateTag
(
curData
)}
`
;
}
return
'MOBEDITVIEW:'
;
}
if
(
this
.
getDEMainStateTag
(
curData
)){
return
`EDITVIEW:MSTAG:
${
await
this
.
getDEMainStateTag
(
curData
)}
`
;
}
return
'EDITVIEW:'
;
}
/**
* 获取数据对象的主状态标识
*
* @param curData 当前数据
* @memberof InvoiceDetailUIServiceBase
*/
public
async
getDEMainStateTag
(
curData
:
any
){
if
(
this
.
mainStateFields
.
length
===
0
)
return
null
;
this
.
mainStateFields
.
forEach
((
singleMainField
:
any
)
=>
{
if
(
!
(
singleMainField
in
curData
)){
console
.
error
(
`当前数据对象不包含属性singleMainField,可能会发生错误`
);
}
})
let
strTag
:
String
=
""
;
for
(
let
i
=
0
;
i
<=
1
;
i
++
)
{
let
strTag
:
string
=
(
curData
[
this
.
mainStateFields
[
0
]])?(
i
==
0
)
?
curData
[
this
.
mainStateFields
[
0
]]
:
""
:
""
;
if
(
this
.
mainStateFields
.
length
>=
2
)
{
for
(
let
j
=
0
;
j
<=
1
;
j
++
)
{
let
strTag2
:
string
=
(
curData
[
this
.
mainStateFields
[
1
]])?
`
${
strTag
}
__
${(
j
==
0
)
?
curData
[
this
.
mainStateFields
[
1
]]
:
""
}
`
:
strTag
;
if
(
this
.
mainStateFields
.
length
>=
3
)
{
for
(
let
k
=
0
;
k
<=
1
;
k
++
)
{
let
strTag3
:
string
=
(
curData
[
this
.
mainStateFields
[
2
]])?
`
${
strTag2
}
__
${(
k
==
0
)
?
curData
[
this
.
mainStateFields
[
2
]]
:
""
}
`
:
strTag2
;
// 判断是否存在
return
this
.
allDeMainStateMap
.
get
(
strTag3
);
}
}
else
{
return
this
.
allDeMainStateMap
.
get
(
strTag2
);
}
}
}
else
{
return
this
.
allDeMainStateMap
.
get
(
strTag
);
}
}
return
null
;
}
}
\ No newline at end of file
app_CRM/src/uiservice/invoice-detail/invoice-detail-ui-service.ts
0 → 100644
浏览文件 @
4a96b2a1
import
InvoiceDetailUIServiceBase
from
'./invoice-detail-ui-service-base'
;
/**
* 发票产品UI服务对象
*
* @export
* @class InvoiceDetailUIService
*/
export
default
class
InvoiceDetailUIService
extends
InvoiceDetailUIServiceBase
{
/**
* Creates an instance of InvoiceDetailUIService.
*
* @param {*} [opts={}]
* @memberof InvoiceDetailUIService
*/
constructor
(
opts
:
any
=
{})
{
super
(
opts
);
}
}
\ No newline at end of file
app_CRM/src/uiservice/invoice/invoice-ui-service-base.ts
浏览文件 @
4a96b2a1
...
@@ -80,7 +80,11 @@ export default class InvoiceUIServiceBase extends UIService {
...
@@ -80,7 +80,11 @@ export default class InvoiceUIServiceBase extends UIService {
*/
*/
public
initViewMap
(){
public
initViewMap
(){
this
.
allViewMap
.
set
(
'EDITVIEW:'
,{
viewname
:
'editview'
,
srfappde
:
'invoices'
});
this
.
allViewMap
.
set
(
'EDITVIEW:'
,{
viewname
:
'editview'
,
srfappde
:
'invoices'
});
this
.
allViewMap
.
set
(
':'
,{
viewname
:
'quickcreateview'
,
srfappde
:
'invoices'
});
this
.
allViewMap
.
set
(
':'
,{
viewname
:
'summaryview'
,
srfappde
:
'invoices'
});
this
.
allViewMap
.
set
(
':'
,{
viewname
:
'infoview'
,
srfappde
:
'invoices'
});
this
.
allViewMap
.
set
(
'MDATAVIEW:'
,{
viewname
:
'gridview'
,
srfappde
:
'invoices'
});
this
.
allViewMap
.
set
(
'MDATAVIEW:'
,{
viewname
:
'gridview'
,
srfappde
:
'invoices'
});
this
.
allViewMap
.
set
(
':'
,{
viewname
:
'info_invoiceview'
,
srfappde
:
'invoices'
});
}
}
/**
/**
...
...
app_CRM/src/uiservice/sales-order/sales-order-ui-service-base.ts
浏览文件 @
4a96b2a1
...
@@ -82,9 +82,11 @@ export default class SalesOrderUIServiceBase extends UIService {
...
@@ -82,9 +82,11 @@ export default class SalesOrderUIServiceBase extends UIService {
this
.
allViewMap
.
set
(
'EDITVIEW:'
,{
viewname
:
'editview'
,
srfappde
:
'salesorders'
});
this
.
allViewMap
.
set
(
'EDITVIEW:'
,{
viewname
:
'editview'
,
srfappde
:
'salesorders'
});
this
.
allViewMap
.
set
(
':'
,{
viewname
:
'infoview'
,
srfappde
:
'salesorders'
});
this
.
allViewMap
.
set
(
':'
,{
viewname
:
'infoview'
,
srfappde
:
'salesorders'
});
this
.
allViewMap
.
set
(
':'
,{
viewname
:
'summaryview'
,
srfappde
:
'salesorders'
});
this
.
allViewMap
.
set
(
':'
,{
viewname
:
'summaryview'
,
srfappde
:
'salesorders'
});
this
.
allViewMap
.
set
(
':'
,{
viewname
:
'pickupgridview'
,
srfappde
:
'salesorders'
});
this
.
allViewMap
.
set
(
'MDATAVIEW:'
,{
viewname
:
'gridview'
,
srfappde
:
'salesorders'
});
this
.
allViewMap
.
set
(
'MDATAVIEW:'
,{
viewname
:
'gridview'
,
srfappde
:
'salesorders'
});
this
.
allViewMap
.
set
(
':'
,{
viewname
:
'info_soview'
,
srfappde
:
'salesorders'
});
this
.
allViewMap
.
set
(
':'
,{
viewname
:
'info_soview'
,
srfappde
:
'salesorders'
});
this
.
allViewMap
.
set
(
':'
,{
viewname
:
'quickcreateview'
,
srfappde
:
'salesorders'
});
this
.
allViewMap
.
set
(
':'
,{
viewname
:
'quickcreateview'
,
srfappde
:
'salesorders'
});
this
.
allViewMap
.
set
(
'PICKUPVIEW:'
,{
viewname
:
'pickupview'
,
srfappde
:
'salesorders'
});
}
}
/**
/**
...
...
app_CRM/src/uiservice/ui-service-register.ts
浏览文件 @
4a96b2a1
...
@@ -44,6 +44,7 @@ export class UIServiceRegister {
...
@@ -44,6 +44,7 @@ export class UIServiceRegister {
this
.
allUIService
.
set
(
'task'
,
()
=>
import
(
'@/uiservice/task/task-ui-service'
));
this
.
allUIService
.
set
(
'task'
,
()
=>
import
(
'@/uiservice/task/task-ui-service'
));
this
.
allUIService
.
set
(
'letter'
,
()
=>
import
(
'@/uiservice/letter/letter-ui-service'
));
this
.
allUIService
.
set
(
'letter'
,
()
=>
import
(
'@/uiservice/letter/letter-ui-service'
));
this
.
allUIService
.
set
(
'pricelevel'
,
()
=>
import
(
'@/uiservice/price-level/price-level-ui-service'
));
this
.
allUIService
.
set
(
'pricelevel'
,
()
=>
import
(
'@/uiservice/price-level/price-level-ui-service'
));
this
.
allUIService
.
set
(
'invoicedetail'
,
()
=>
import
(
'@/uiservice/invoice-detail/invoice-detail-ui-service'
));
this
.
allUIService
.
set
(
'email'
,
()
=>
import
(
'@/uiservice/email/email-ui-service'
));
this
.
allUIService
.
set
(
'email'
,
()
=>
import
(
'@/uiservice/email/email-ui-service'
));
this
.
allUIService
.
set
(
'serviceappointment'
,
()
=>
import
(
'@/uiservice/service-appointment/service-appointment-ui-service'
));
this
.
allUIService
.
set
(
'serviceappointment'
,
()
=>
import
(
'@/uiservice/service-appointment/service-appointment-ui-service'
));
this
.
allUIService
.
set
(
'uom'
,
()
=>
import
(
'@/uiservice/uom/uom-ui-service'
));
this
.
allUIService
.
set
(
'uom'
,
()
=>
import
(
'@/uiservice/uom/uom-ui-service'
));
...
...
app_CRM/src/widgets/opportunity/abstract-info-dashboard/abstract-info-dashboard.vue
浏览文件 @
4a96b2a1
...
@@ -3,7 +3,7 @@
...
@@ -3,7 +3,7 @@
import
{ Component } from 'vue-property-decorator';
import
{ Component } from 'vue-property-decorator';
import { VueLifeCycleProcessing } from '@/studio-core';
import { VueLifeCycleProcessing } from '@/studio-core';
import { AbstractInfoDashboardBase } from './abstract-info-dashboard-base';
import { AbstractInfoDashboardBase } from './abstract-info-dashboard-base';
import view_dashboard_sysportlet2 from '@widgets/
opportunity/view-opp-pro-portlet/view-opp-pro
-portlet.vue';
import view_dashboard_sysportlet2 from '@widgets/
activity-pointer/list-by-parent-key-portlet/list-by-parent-key
-portlet.vue';
import view_dashboard_sysportlet1 from '@widgets/opportunity/view-opp-abs-portlet/view-opp-abs-portlet.vue';
import view_dashboard_sysportlet1 from '@widgets/opportunity/view-opp-abs-portlet/view-opp-abs-portlet.vue';
...
...
businesscentral-app/businesscentral-app-crm/src/main/resources/application-crm-prod.yml
浏览文件 @
4a96b2a1
...
@@ -27,6 +27,10 @@ zuul:
...
@@ -27,6 +27,10 @@ zuul:
path
:
/pricelevels/**
path
:
/pricelevels/**
serviceId
:
ibizbusinesscentral-centralapi
serviceId
:
ibizbusinesscentral-centralapi
stripPrefix
:
false
stripPrefix
:
false
invoicedetail
:
path
:
/invoicedetails/**
serviceId
:
ibizbusinesscentral-centralapi
stripPrefix
:
false
email
:
email
:
path
:
/emails/**
path
:
/emails/**
serviceId
:
ibizbusinesscentral-centralapi
serviceId
:
ibizbusinesscentral-centralapi
...
...
businesscentral-core/src/main/java/cn/ibizlab/businesscentral/core/finance/domain/InvoiceDetail.java
浏览文件 @
4a96b2a1
...
@@ -129,13 +129,6 @@ public class InvoiceDetail extends EntityMP implements Serializable {
...
@@ -129,13 +129,6 @@ public class InvoiceDetail extends EntityMP implements Serializable {
@JSONField
(
name
=
"parentbundleid"
)
@JSONField
(
name
=
"parentbundleid"
)
@JsonProperty
(
"parentbundleid"
)
@JsonProperty
(
"parentbundleid"
)
private
String
parentbundleid
;
private
String
parentbundleid
;
/**
* Product Name
*/
@TableField
(
value
=
"productname"
)
@JSONField
(
name
=
"productname"
)
@JsonProperty
(
"productname"
)
private
String
productname
;
/**
/**
* Import Sequence Number
* Import Sequence Number
*/
*/
...
@@ -545,6 +538,20 @@ public class InvoiceDetail extends EntityMP implements Serializable {
...
@@ -545,6 +538,20 @@ public class InvoiceDetail extends EntityMP implements Serializable {
@JSONField
(
name
=
"uomid"
)
@JSONField
(
name
=
"uomid"
)
@JsonProperty
(
"uomid"
)
@JsonProperty
(
"uomid"
)
private
String
uomid
;
private
String
uomid
;
/**
* 产品名称
*/
@TableField
(
value
=
"productname"
)
@JSONField
(
name
=
"productname"
)
@JsonProperty
(
"productname"
)
private
String
productname
;
/**
* 计价单位
*/
@TableField
(
value
=
"uomname"
)
@JSONField
(
name
=
"uomname"
)
@JsonProperty
(
"uomname"
)
private
String
uomname
;
/**
/**
*
*
...
@@ -694,14 +701,6 @@ public class InvoiceDetail extends EntityMP implements Serializable {
...
@@ -694,14 +701,6 @@ public class InvoiceDetail extends EntityMP implements Serializable {
this
.
modify
(
"parentbundleid"
,
parentbundleid
);
this
.
modify
(
"parentbundleid"
,
parentbundleid
);
}
}
/**
* 设置 [Product Name]
*/
public
void
setProductname
(
String
productname
){
this
.
productname
=
productname
;
this
.
modify
(
"productname"
,
productname
);
}
/**
/**
* 设置 [Import Sequence Number]
* 设置 [Import Sequence Number]
*/
*/
...
@@ -1120,6 +1119,22 @@ public class InvoiceDetail extends EntityMP implements Serializable {
...
@@ -1120,6 +1119,22 @@ public class InvoiceDetail extends EntityMP implements Serializable {
this
.
modify
(
"uomid"
,
uomid
);
this
.
modify
(
"uomid"
,
uomid
);
}
}
/**
* 设置 [产品名称]
*/
public
void
setProductname
(
String
productname
){
this
.
productname
=
productname
;
this
.
modify
(
"productname"
,
productname
);
}
/**
* 设置 [计价单位]
*/
public
void
setUomname
(
String
uomname
){
this
.
uomname
=
uomname
;
this
.
modify
(
"uomname"
,
uomname
);
}
}
}
...
...
businesscentral-core/src/main/java/cn/ibizlab/businesscentral/core/finance/filter/InvoiceDetailSearchContext.java
浏览文件 @
4a96b2a1
...
@@ -118,6 +118,34 @@ public class InvoiceDetailSearchContext extends QueryWrapperContext<InvoiceDetai
...
@@ -118,6 +118,34 @@ public class InvoiceDetailSearchContext extends QueryWrapperContext<InvoiceDetai
this
.
getSearchCond
().
eq
(
"uomid"
,
n_uomid_eq
);
this
.
getSearchCond
().
eq
(
"uomid"
,
n_uomid_eq
);
}
}
}
}
private
String
n_productname_eq
;
//[产品名称]
public
void
setN_productname_eq
(
String
n_productname_eq
)
{
this
.
n_productname_eq
=
n_productname_eq
;
if
(!
ObjectUtils
.
isEmpty
(
this
.
n_productname_eq
)){
this
.
getSearchCond
().
eq
(
"productname"
,
n_productname_eq
);
}
}
private
String
n_productname_like
;
//[产品名称]
public
void
setN_productname_like
(
String
n_productname_like
)
{
this
.
n_productname_like
=
n_productname_like
;
if
(!
ObjectUtils
.
isEmpty
(
this
.
n_productname_like
)){
this
.
getSearchCond
().
like
(
"productname"
,
n_productname_like
);
}
}
private
String
n_uomname_eq
;
//[计价单位]
public
void
setN_uomname_eq
(
String
n_uomname_eq
)
{
this
.
n_uomname_eq
=
n_uomname_eq
;
if
(!
ObjectUtils
.
isEmpty
(
this
.
n_uomname_eq
)){
this
.
getSearchCond
().
eq
(
"uomname"
,
n_uomname_eq
);
}
}
private
String
n_uomname_like
;
//[计价单位]
public
void
setN_uomname_like
(
String
n_uomname_like
)
{
this
.
n_uomname_like
=
n_uomname_like
;
if
(!
ObjectUtils
.
isEmpty
(
this
.
n_uomname_like
)){
this
.
getSearchCond
().
like
(
"uomname"
,
n_uomname_like
);
}
}
/**
/**
* 启用快速搜索
* 启用快速搜索
...
...
businesscentral-core/src/main/java/cn/ibizlab/businesscentral/core/finance/service/impl/InvoiceDetailServiceImpl.java
浏览文件 @
4a96b2a1
...
@@ -84,6 +84,7 @@ public class InvoiceDetailServiceImpl extends ServiceImpl<InvoiceDetailMapper, I
...
@@ -84,6 +84,7 @@ public class InvoiceDetailServiceImpl extends ServiceImpl<InvoiceDetailMapper, I
@Override
@Override
@Transactional
@Transactional
public
boolean
update
(
InvoiceDetail
et
)
{
public
boolean
update
(
InvoiceDetail
et
)
{
fillParentData
(
et
);
if
(!
update
(
et
,(
Wrapper
)
et
.
getUpdateWrapper
(
true
).
eq
(
"invoicedetailid"
,
et
.
getInvoicedetailid
())))
if
(!
update
(
et
,(
Wrapper
)
et
.
getUpdateWrapper
(
true
).
eq
(
"invoicedetailid"
,
et
.
getInvoicedetailid
())))
return
false
;
return
false
;
CachedBeanCopier
.
copy
(
get
(
et
.
getInvoicedetailid
()),
et
);
CachedBeanCopier
.
copy
(
get
(
et
.
getInvoicedetailid
()),
et
);
...
@@ -92,12 +93,14 @@ public class InvoiceDetailServiceImpl extends ServiceImpl<InvoiceDetailMapper, I
...
@@ -92,12 +93,14 @@ public class InvoiceDetailServiceImpl extends ServiceImpl<InvoiceDetailMapper, I
@Override
@Override
public
void
updateBatch
(
List
<
InvoiceDetail
>
list
)
{
public
void
updateBatch
(
List
<
InvoiceDetail
>
list
)
{
list
.
forEach
(
item
->
fillParentData
(
item
));
updateBatchById
(
list
,
batchSize
);
updateBatchById
(
list
,
batchSize
);
}
}
@Override
@Override
@Transactional
@Transactional
public
boolean
create
(
InvoiceDetail
et
)
{
public
boolean
create
(
InvoiceDetail
et
)
{
fillParentData
(
et
);
if
(!
this
.
retBool
(
this
.
baseMapper
.
insert
(
et
)))
if
(!
this
.
retBool
(
this
.
baseMapper
.
insert
(
et
)))
return
false
;
return
false
;
CachedBeanCopier
.
copy
(
get
(
et
.
getInvoicedetailid
()),
et
);
CachedBeanCopier
.
copy
(
get
(
et
.
getInvoicedetailid
()),
et
);
...
@@ -106,11 +109,13 @@ public class InvoiceDetailServiceImpl extends ServiceImpl<InvoiceDetailMapper, I
...
@@ -106,11 +109,13 @@ public class InvoiceDetailServiceImpl extends ServiceImpl<InvoiceDetailMapper, I
@Override
@Override
public
void
createBatch
(
List
<
InvoiceDetail
>
list
)
{
public
void
createBatch
(
List
<
InvoiceDetail
>
list
)
{
list
.
forEach
(
item
->
fillParentData
(
item
));
this
.
saveBatch
(
list
,
batchSize
);
this
.
saveBatch
(
list
,
batchSize
);
}
}
@Override
@Override
public
InvoiceDetail
getDraft
(
InvoiceDetail
et
)
{
public
InvoiceDetail
getDraft
(
InvoiceDetail
et
)
{
fillParentData
(
et
);
return
et
;
return
et
;
}
}
...
@@ -136,12 +141,14 @@ public class InvoiceDetailServiceImpl extends ServiceImpl<InvoiceDetailMapper, I
...
@@ -136,12 +141,14 @@ public class InvoiceDetailServiceImpl extends ServiceImpl<InvoiceDetailMapper, I
@Override
@Override
public
boolean
saveBatch
(
Collection
<
InvoiceDetail
>
list
)
{
public
boolean
saveBatch
(
Collection
<
InvoiceDetail
>
list
)
{
list
.
forEach
(
item
->
fillParentData
(
item
));
saveOrUpdateBatch
(
list
,
batchSize
);
saveOrUpdateBatch
(
list
,
batchSize
);
return
true
;
return
true
;
}
}
@Override
@Override
public
void
saveBatch
(
List
<
InvoiceDetail
>
list
)
{
public
void
saveBatch
(
List
<
InvoiceDetail
>
list
)
{
list
.
forEach
(
item
->
fillParentData
(
item
));
saveOrUpdateBatch
(
list
,
batchSize
);
saveOrUpdateBatch
(
list
,
batchSize
);
}
}
...
@@ -230,6 +237,32 @@ public class InvoiceDetailServiceImpl extends ServiceImpl<InvoiceDetailMapper, I
...
@@ -230,6 +237,32 @@ public class InvoiceDetailServiceImpl extends ServiceImpl<InvoiceDetailMapper, I
/**
* 为当前实体填充父数据(外键值文本、外键值附加数据)
* @param et
*/
private
void
fillParentData
(
InvoiceDetail
et
){
//实体关系[DER1N_INVOICEDETAIL__PRODUCT__PRODUCTID]
if
(!
ObjectUtils
.
isEmpty
(
et
.
getProductid
())){
cn
.
ibizlab
.
businesscentral
.
core
.
product
.
domain
.
Product
product
=
et
.
getProduct
();
if
(
ObjectUtils
.
isEmpty
(
product
)){
cn
.
ibizlab
.
businesscentral
.
core
.
product
.
domain
.
Product
majorEntity
=
productService
.
get
(
et
.
getProductid
());
et
.
setProduct
(
majorEntity
);
product
=
majorEntity
;
}
et
.
setProductname
(
product
.
getProductname
());
}
//实体关系[DER1N_INVOICEDETAIL__UOM__UOMID]
if
(!
ObjectUtils
.
isEmpty
(
et
.
getUomid
())){
cn
.
ibizlab
.
businesscentral
.
core
.
base
.
domain
.
Uom
uom
=
et
.
getUom
();
if
(
ObjectUtils
.
isEmpty
(
uom
)){
cn
.
ibizlab
.
businesscentral
.
core
.
base
.
domain
.
Uom
majorEntity
=
uomService
.
get
(
et
.
getUomid
());
et
.
setUom
(
majorEntity
);
uom
=
majorEntity
;
}
et
.
setUomname
(
uom
.
getUomname
());
}
}
...
...
businesscentral-core/src/main/resources/liquibase/h2_table.xml
浏览文件 @
4a96b2a1
...
@@ -2418,7 +2418,7 @@
...
@@ -2418,7 +2418,7 @@
<!--输出实体[INVOICE]数据结构 -->
<!--输出实体[INVOICE]数据结构 -->
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"tab-invoice-
12
-33"
>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"tab-invoice-
30
-33"
>
<createTable
tableName=
"INVOICE"
>
<createTable
tableName=
"INVOICE"
>
<column
name=
"BILLTO_LINE1"
remarks=
""
type=
"VARCHAR(250)"
>
<column
name=
"BILLTO_LINE1"
remarks=
""
type=
"VARCHAR(250)"
>
</column>
</column>
...
@@ -2870,7 +2870,7 @@
...
@@ -2870,7 +2870,7 @@
<!--输出实体[INVOICEDETAIL]数据结构 -->
<!--输出实体[INVOICEDETAIL]数据结构 -->
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"tab-invoicedetail-
4
-40"
>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"tab-invoicedetail-
16
-40"
>
<createTable
tableName=
"INVOICEDETAIL"
>
<createTable
tableName=
"INVOICEDETAIL"
>
<column
name=
"UPDATEDATE"
remarks=
""
type=
"DATETIME"
>
<column
name=
"UPDATEDATE"
remarks=
""
type=
"DATETIME"
>
</column>
</column>
...
@@ -2896,8 +2896,6 @@
...
@@ -2896,8 +2896,6 @@
</column>
</column>
<column
name=
"PARENTBUNDLEID"
remarks=
""
type=
"VARCHAR(60)"
>
<column
name=
"PARENTBUNDLEID"
remarks=
""
type=
"VARCHAR(60)"
>
</column>
</column>
<column
name=
"PRODUCTNAME"
remarks=
""
type=
"VARCHAR(500)"
>
</column>
<column
name=
"IMPORTSEQUENCENUMBER"
remarks=
""
type=
"INT"
>
<column
name=
"IMPORTSEQUENCENUMBER"
remarks=
""
type=
"INT"
>
</column>
</column>
<column
name=
"PROPERTYCONFIGURATIONSTATUS"
remarks=
""
type=
"VARCHAR(30)"
>
<column
name=
"PROPERTYCONFIGURATIONSTATUS"
remarks=
""
type=
"VARCHAR(30)"
>
...
@@ -3009,6 +3007,10 @@
...
@@ -3009,6 +3007,10 @@
</column>
</column>
<column
name=
"UOMID"
remarks=
""
type=
"VARCHAR(60)"
>
<column
name=
"UOMID"
remarks=
""
type=
"VARCHAR(60)"
>
</column>
</column>
<column
name=
"PRODUCTNAME"
remarks=
""
type=
"VARCHAR(100)"
>
</column>
<column
name=
"UOMNAME"
remarks=
""
type=
"VARCHAR(100)"
>
</column>
</createTable>
</createTable>
</changeSet>
</changeSet>
...
@@ -8557,7 +8559,7 @@
...
@@ -8557,7 +8559,7 @@
<!--输出实体[SALESORDER]数据结构 -->
<!--输出实体[SALESORDER]数据结构 -->
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"tab-salesorder-
39
-95"
>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"tab-salesorder-
45
-95"
>
<createTable
tableName=
"SALESORDER"
>
<createTable
tableName=
"SALESORDER"
>
<column
name=
"ENTITYIMAGE"
remarks=
""
type=
"VARCHAR(100)"
>
<column
name=
"ENTITYIMAGE"
remarks=
""
type=
"VARCHAR(100)"
>
</column>
</column>
...
@@ -10426,7 +10428,7 @@
...
@@ -10426,7 +10428,7 @@
<!--输出实体[OPPORTUNITY]数据结构 -->
<!--输出实体[OPPORTUNITY]数据结构 -->
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"tab-opportunity-10
6
-122"
>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"tab-opportunity-10
7
-122"
>
<createTable
tableName=
"OPPORTUNITY"
>
<createTable
tableName=
"OPPORTUNITY"
>
<column
name=
"DECISIONMAKER"
remarks=
""
type=
"INT"
>
<column
name=
"DECISIONMAKER"
remarks=
""
type=
"INT"
>
</column>
</column>
...
@@ -10975,19 +10977,19 @@
...
@@ -10975,19 +10977,19 @@
<addForeignKeyConstraint
baseColumnNames=
"TRANSACTIONCURRENCYID"
baseTableName=
"SLAKPIINSTANCE"
constraintName=
"DER1N_SLAKPIINSTANCE__TRANSACT"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"TRANSACTIONCURRENCYID"
referencedTableName=
"TRANSACTIONCURRENCY"
validate=
"true"
/>
<addForeignKeyConstraint
baseColumnNames=
"TRANSACTIONCURRENCYID"
baseTableName=
"SLAKPIINSTANCE"
constraintName=
"DER1N_SLAKPIINSTANCE__TRANSACT"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"TRANSACTIONCURRENCYID"
referencedTableName=
"TRANSACTIONCURRENCY"
validate=
"true"
/>
</changeSet>
</changeSet>
<!--输出实体[INVOICE]外键关系 -->
<!--输出实体[INVOICE]外键关系 -->
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-invoice-
12
-190"
>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-invoice-
30
-190"
>
<addForeignKeyConstraint
baseColumnNames=
"OPPORTUNITYID"
baseTableName=
"INVOICE"
constraintName=
"DER1N_INVOICE__OPPORTUNITY__OP"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"OPPORTUNITYID"
referencedTableName=
"OPPORTUNITY"
validate=
"true"
/>
<addForeignKeyConstraint
baseColumnNames=
"OPPORTUNITYID"
baseTableName=
"INVOICE"
constraintName=
"DER1N_INVOICE__OPPORTUNITY__OP"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"OPPORTUNITYID"
referencedTableName=
"OPPORTUNITY"
validate=
"true"
/>
</changeSet>
</changeSet>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-invoice-
12
-191"
>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-invoice-
30
-191"
>
<addForeignKeyConstraint
baseColumnNames=
"PRICELEVELID"
baseTableName=
"INVOICE"
constraintName=
"DER1N_INVOICE__PRICELEVEL__PRI"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"PRICELEVELID"
referencedTableName=
"PRICELEVEL"
validate=
"true"
/>
<addForeignKeyConstraint
baseColumnNames=
"PRICELEVELID"
baseTableName=
"INVOICE"
constraintName=
"DER1N_INVOICE__PRICELEVEL__PRI"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"PRICELEVELID"
referencedTableName=
"PRICELEVEL"
validate=
"true"
/>
</changeSet>
</changeSet>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-invoice-
12
-192"
>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-invoice-
30
-192"
>
<addForeignKeyConstraint
baseColumnNames=
"SALESORDERID"
baseTableName=
"INVOICE"
constraintName=
"DER1N_INVOICE__SALESORDER__SAL"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"SALESORDERID"
referencedTableName=
"SALESORDER"
validate=
"true"
/>
<addForeignKeyConstraint
baseColumnNames=
"SALESORDERID"
baseTableName=
"INVOICE"
constraintName=
"DER1N_INVOICE__SALESORDER__SAL"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"SALESORDERID"
referencedTableName=
"SALESORDER"
validate=
"true"
/>
</changeSet>
</changeSet>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-invoice-
12
-193"
>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-invoice-
30
-193"
>
<addForeignKeyConstraint
baseColumnNames=
"SLAID"
baseTableName=
"INVOICE"
constraintName=
"DER1N_INVOICE__SLA__SLAID"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"SLAID"
referencedTableName=
"SLA"
validate=
"true"
/>
<addForeignKeyConstraint
baseColumnNames=
"SLAID"
baseTableName=
"INVOICE"
constraintName=
"DER1N_INVOICE__SLA__SLAID"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"SLAID"
referencedTableName=
"SLA"
validate=
"true"
/>
</changeSet>
</changeSet>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-invoice-
12
-194"
>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-invoice-
30
-194"
>
<addForeignKeyConstraint
baseColumnNames=
"TRANSACTIONCURRENCYID"
baseTableName=
"INVOICE"
constraintName=
"DER1N_INVOICE__TRANSACTIONCURR"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"TRANSACTIONCURRENCYID"
referencedTableName=
"TRANSACTIONCURRENCY"
validate=
"true"
/>
<addForeignKeyConstraint
baseColumnNames=
"TRANSACTIONCURRENCYID"
baseTableName=
"INVOICE"
constraintName=
"DER1N_INVOICE__TRANSACTIONCURR"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"TRANSACTIONCURRENCYID"
referencedTableName=
"TRANSACTIONCURRENCY"
validate=
"true"
/>
</changeSet>
</changeSet>
<!--输出实体[TASK]外键关系 -->
<!--输出实体[TASK]外键关系 -->
...
@@ -11021,22 +11023,22 @@
...
@@ -11021,22 +11023,22 @@
<addForeignKeyConstraint
baseColumnNames=
"PRODUCTID"
baseTableName=
"T_INVENTORY"
constraintName=
"DER1N_INVENTORY_PRODUCT_PRODUC"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"PRODUCTID"
referencedTableName=
"PRODUCT"
validate=
"true"
/>
<addForeignKeyConstraint
baseColumnNames=
"PRODUCTID"
baseTableName=
"T_INVENTORY"
constraintName=
"DER1N_INVENTORY_PRODUCT_PRODUC"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"PRODUCTID"
referencedTableName=
"PRODUCT"
validate=
"true"
/>
</changeSet>
</changeSet>
<!--输出实体[INVOICEDETAIL]外键关系 -->
<!--输出实体[INVOICEDETAIL]外键关系 -->
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-invoicedetail-
4
-203"
>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-invoicedetail-
16
-203"
>
<addForeignKeyConstraint
baseColumnNames=
"PARENTBUNDLEIDREF"
baseTableName=
"INVOICEDETAIL"
constraintName=
"DER1N_INVOICEDETAIL__INVOICEDE"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"INVOICEDETAILID"
referencedTableName=
"INVOICEDETAIL"
validate=
"true"
/>
<addForeignKeyConstraint
baseColumnNames=
"PARENTBUNDLEIDREF"
baseTableName=
"INVOICEDETAIL"
constraintName=
"DER1N_INVOICEDETAIL__INVOICEDE"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"INVOICEDETAILID"
referencedTableName=
"INVOICEDETAIL"
validate=
"true"
/>
</changeSet>
</changeSet>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-invoicedetail-
4
-204"
>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-invoicedetail-
16
-204"
>
<addForeignKeyConstraint
baseColumnNames=
"INVOICEID"
baseTableName=
"INVOICEDETAIL"
constraintName=
"DER1N_INVOICEDETAIL__INVOICE__"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"INVOICEID"
referencedTableName=
"INVOICE"
validate=
"true"
/>
<addForeignKeyConstraint
baseColumnNames=
"INVOICEID"
baseTableName=
"INVOICEDETAIL"
constraintName=
"DER1N_INVOICEDETAIL__INVOICE__"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"INVOICEID"
referencedTableName=
"INVOICE"
validate=
"true"
/>
</changeSet>
</changeSet>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-invoicedetail-
4
-205"
>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-invoicedetail-
16
-205"
>
<addForeignKeyConstraint
baseColumnNames=
"PRODUCTID"
baseTableName=
"INVOICEDETAIL"
constraintName=
"DER1N_INVOICEDETAIL__PRODUCT__"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"PRODUCTID"
referencedTableName=
"PRODUCT"
validate=
"true"
/>
<addForeignKeyConstraint
baseColumnNames=
"PRODUCTID"
baseTableName=
"INVOICEDETAIL"
constraintName=
"DER1N_INVOICEDETAIL__PRODUCT__"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"PRODUCTID"
referencedTableName=
"PRODUCT"
validate=
"true"
/>
</changeSet>
</changeSet>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-invoicedetail-
4
-206"
>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-invoicedetail-
16
-206"
>
<addForeignKeyConstraint
baseColumnNames=
"SALESORDERDETAILID"
baseTableName=
"INVOICEDETAIL"
constraintName=
"DER1N_INVOICEDETAIL__SALESORDE"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"SALESORDERDETAILID"
referencedTableName=
"SALESORDERDETAIL"
validate=
"true"
/>
<addForeignKeyConstraint
baseColumnNames=
"SALESORDERDETAILID"
baseTableName=
"INVOICEDETAIL"
constraintName=
"DER1N_INVOICEDETAIL__SALESORDE"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"SALESORDERDETAILID"
referencedTableName=
"SALESORDERDETAIL"
validate=
"true"
/>
</changeSet>
</changeSet>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-invoicedetail-
4
-207"
>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-invoicedetail-
16
-207"
>
<addForeignKeyConstraint
baseColumnNames=
"TRANSACTIONCURRENCYID"
baseTableName=
"INVOICEDETAIL"
constraintName=
"DER1N_INVOICEDETAIL__TRANSACTI"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"TRANSACTIONCURRENCYID"
referencedTableName=
"TRANSACTIONCURRENCY"
validate=
"true"
/>
<addForeignKeyConstraint
baseColumnNames=
"TRANSACTIONCURRENCYID"
baseTableName=
"INVOICEDETAIL"
constraintName=
"DER1N_INVOICEDETAIL__TRANSACTI"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"TRANSACTIONCURRENCYID"
referencedTableName=
"TRANSACTIONCURRENCY"
validate=
"true"
/>
</changeSet>
</changeSet>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-invoicedetail-
4
-208"
>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-invoicedetail-
16
-208"
>
<addForeignKeyConstraint
baseColumnNames=
"UOMID"
baseTableName=
"INVOICEDETAIL"
constraintName=
"DER1N_INVOICEDETAIL__UOM__UOMI"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"UOMID"
referencedTableName=
"UOM"
validate=
"true"
/>
<addForeignKeyConstraint
baseColumnNames=
"UOMID"
baseTableName=
"INVOICEDETAIL"
constraintName=
"DER1N_INVOICEDETAIL__UOM__UOMI"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"UOMID"
referencedTableName=
"UOM"
validate=
"true"
/>
</changeSet>
</changeSet>
<!--输出实体[BOOKABLERES]外键关系 -->
<!--输出实体[BOOKABLERES]外键关系 -->
...
@@ -11484,22 +11486,22 @@
...
@@ -11484,22 +11486,22 @@
<addForeignKeyConstraint
baseColumnNames=
"RESOURCECATEGORY"
baseTableName=
"BOOKABLERESCATEGORYASSN"
constraintName=
"DER1N_BOOKABLERESCATEGORYASSN_"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"BOOKABLERESCATEGORYID"
referencedTableName=
"BOOKABLERESCATEGORY"
validate=
"true"
/>
<addForeignKeyConstraint
baseColumnNames=
"RESOURCECATEGORY"
baseTableName=
"BOOKABLERESCATEGORYASSN"
constraintName=
"DER1N_BOOKABLERESCATEGORYASSN_"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"BOOKABLERESCATEGORYID"
referencedTableName=
"BOOKABLERESCATEGORY"
validate=
"true"
/>
</changeSet>
</changeSet>
<!--输出实体[SALESORDER]外键关系 -->
<!--输出实体[SALESORDER]外键关系 -->
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-salesorder-
39
-360"
>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-salesorder-
45
-360"
>
<addForeignKeyConstraint
baseColumnNames=
"CAMPAIGNID"
baseTableName=
"SALESORDER"
constraintName=
"DER1N_SALESORDER__CAMPAIGN__CA"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"CAMPAIGNID"
referencedTableName=
"CAMPAIGN"
validate=
"true"
/>
<addForeignKeyConstraint
baseColumnNames=
"CAMPAIGNID"
baseTableName=
"SALESORDER"
constraintName=
"DER1N_SALESORDER__CAMPAIGN__CA"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"CAMPAIGNID"
referencedTableName=
"CAMPAIGN"
validate=
"true"
/>
</changeSet>
</changeSet>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-salesorder-
39
-361"
>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-salesorder-
45
-361"
>
<addForeignKeyConstraint
baseColumnNames=
"OPPORTUNITYID"
baseTableName=
"SALESORDER"
constraintName=
"DER1N_SALESORDER__OPPORTUNITY_"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"OPPORTUNITYID"
referencedTableName=
"OPPORTUNITY"
validate=
"true"
/>
<addForeignKeyConstraint
baseColumnNames=
"OPPORTUNITYID"
baseTableName=
"SALESORDER"
constraintName=
"DER1N_SALESORDER__OPPORTUNITY_"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"OPPORTUNITYID"
referencedTableName=
"OPPORTUNITY"
validate=
"true"
/>
</changeSet>
</changeSet>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-salesorder-
39
-362"
>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-salesorder-
45
-362"
>
<addForeignKeyConstraint
baseColumnNames=
"PRICELEVELID"
baseTableName=
"SALESORDER"
constraintName=
"DER1N_SALESORDER__PRICELEVEL__"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"PRICELEVELID"
referencedTableName=
"PRICELEVEL"
validate=
"true"
/>
<addForeignKeyConstraint
baseColumnNames=
"PRICELEVELID"
baseTableName=
"SALESORDER"
constraintName=
"DER1N_SALESORDER__PRICELEVEL__"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"PRICELEVELID"
referencedTableName=
"PRICELEVEL"
validate=
"true"
/>
</changeSet>
</changeSet>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-salesorder-
39
-363"
>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-salesorder-
45
-363"
>
<addForeignKeyConstraint
baseColumnNames=
"QUOTEID"
baseTableName=
"SALESORDER"
constraintName=
"DER1N_SALESORDER__QUOTE__QUOTE"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"QUOTEID"
referencedTableName=
"QUOTE"
validate=
"true"
/>
<addForeignKeyConstraint
baseColumnNames=
"QUOTEID"
baseTableName=
"SALESORDER"
constraintName=
"DER1N_SALESORDER__QUOTE__QUOTE"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"QUOTEID"
referencedTableName=
"QUOTE"
validate=
"true"
/>
</changeSet>
</changeSet>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-salesorder-
39
-364"
>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-salesorder-
45
-364"
>
<addForeignKeyConstraint
baseColumnNames=
"SLAID"
baseTableName=
"SALESORDER"
constraintName=
"DER1N_SALESORDER__SLA__SLAID"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"SLAID"
referencedTableName=
"SLA"
validate=
"true"
/>
<addForeignKeyConstraint
baseColumnNames=
"SLAID"
baseTableName=
"SALESORDER"
constraintName=
"DER1N_SALESORDER__SLA__SLAID"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"SLAID"
referencedTableName=
"SLA"
validate=
"true"
/>
</changeSet>
</changeSet>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-salesorder-
39
-365"
>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-salesorder-
45
-365"
>
<addForeignKeyConstraint
baseColumnNames=
"TRANSACTIONCURRENCYID"
baseTableName=
"SALESORDER"
constraintName=
"DER1N_SALESORDER__TRANSACTIONC"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"TRANSACTIONCURRENCYID"
referencedTableName=
"TRANSACTIONCURRENCY"
validate=
"true"
/>
<addForeignKeyConstraint
baseColumnNames=
"TRANSACTIONCURRENCYID"
baseTableName=
"SALESORDER"
constraintName=
"DER1N_SALESORDER__TRANSACTIONC"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"TRANSACTIONCURRENCYID"
referencedTableName=
"TRANSACTIONCURRENCY"
validate=
"true"
/>
</changeSet>
</changeSet>
<!--输出实体[LEADADDRESS]外键关系 -->
<!--输出实体[LEADADDRESS]外键关系 -->
...
@@ -11649,25 +11651,25 @@
...
@@ -11649,25 +11651,25 @@
<!--输出实体[RELATIONSHIPS]外键关系 -->
<!--输出实体[RELATIONSHIPS]外键关系 -->
<!--输出实体[CONNECTIONROLE]外键关系 -->
<!--输出实体[CONNECTIONROLE]外键关系 -->
<!--输出实体[OPPORTUNITY]外键关系 -->
<!--输出实体[OPPORTUNITY]外键关系 -->
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-opportunity-10
6
-408"
>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-opportunity-10
7
-408"
>
<addForeignKeyConstraint
baseColumnNames=
"PARENTACCOUNTID"
baseTableName=
"OPPORTUNITY"
constraintName=
"DER1N_OPPORTUNITY__ACCOUNT__PA"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"ACCOUNTID"
referencedTableName=
"ACCOUNT"
validate=
"true"
/>
<addForeignKeyConstraint
baseColumnNames=
"PARENTACCOUNTID"
baseTableName=
"OPPORTUNITY"
constraintName=
"DER1N_OPPORTUNITY__ACCOUNT__PA"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"ACCOUNTID"
referencedTableName=
"ACCOUNT"
validate=
"true"
/>
</changeSet>
</changeSet>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-opportunity-10
6
-409"
>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-opportunity-10
7
-409"
>
<addForeignKeyConstraint
baseColumnNames=
"CAMPAIGNID"
baseTableName=
"OPPORTUNITY"
constraintName=
"DER1N_OPPORTUNITY__CAMPAIGN__C"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"CAMPAIGNID"
referencedTableName=
"CAMPAIGN"
validate=
"true"
/>
<addForeignKeyConstraint
baseColumnNames=
"CAMPAIGNID"
baseTableName=
"OPPORTUNITY"
constraintName=
"DER1N_OPPORTUNITY__CAMPAIGN__C"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"CAMPAIGNID"
referencedTableName=
"CAMPAIGN"
validate=
"true"
/>
</changeSet>
</changeSet>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-opportunity-10
6
-410"
>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-opportunity-10
7
-410"
>
<addForeignKeyConstraint
baseColumnNames=
"PARENTCONTACTID"
baseTableName=
"OPPORTUNITY"
constraintName=
"DER1N_OPPORTUNITY__CONTACT__PA"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"CONTACTID"
referencedTableName=
"CONTACT"
validate=
"true"
/>
<addForeignKeyConstraint
baseColumnNames=
"PARENTCONTACTID"
baseTableName=
"OPPORTUNITY"
constraintName=
"DER1N_OPPORTUNITY__CONTACT__PA"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"CONTACTID"
referencedTableName=
"CONTACT"
validate=
"true"
/>
</changeSet>
</changeSet>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-opportunity-10
6
-411"
>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-opportunity-10
7
-411"
>
<addForeignKeyConstraint
baseColumnNames=
"ORIGINATINGLEADID"
baseTableName=
"OPPORTUNITY"
constraintName=
"DER1N_OPPORTUNITY__LEAD__ORIGI"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"LEADID"
referencedTableName=
"LEAD"
validate=
"true"
/>
<addForeignKeyConstraint
baseColumnNames=
"ORIGINATINGLEADID"
baseTableName=
"OPPORTUNITY"
constraintName=
"DER1N_OPPORTUNITY__LEAD__ORIGI"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"LEADID"
referencedTableName=
"LEAD"
validate=
"true"
/>
</changeSet>
</changeSet>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-opportunity-10
6
-412"
>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-opportunity-10
7
-412"
>
<addForeignKeyConstraint
baseColumnNames=
"PRICELEVELID"
baseTableName=
"OPPORTUNITY"
constraintName=
"DER1N_OPPORTUNITY__PRICELEVEL_"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"PRICELEVELID"
referencedTableName=
"PRICELEVEL"
validate=
"true"
/>
<addForeignKeyConstraint
baseColumnNames=
"PRICELEVELID"
baseTableName=
"OPPORTUNITY"
constraintName=
"DER1N_OPPORTUNITY__PRICELEVEL_"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"PRICELEVELID"
referencedTableName=
"PRICELEVEL"
validate=
"true"
/>
</changeSet>
</changeSet>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-opportunity-10
6
-413"
>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-opportunity-10
7
-413"
>
<addForeignKeyConstraint
baseColumnNames=
"SLAID"
baseTableName=
"OPPORTUNITY"
constraintName=
"DER1N_OPPORTUNITY__SLA__SLAID"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"SLAID"
referencedTableName=
"SLA"
validate=
"true"
/>
<addForeignKeyConstraint
baseColumnNames=
"SLAID"
baseTableName=
"OPPORTUNITY"
constraintName=
"DER1N_OPPORTUNITY__SLA__SLAID"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"SLAID"
referencedTableName=
"SLA"
validate=
"true"
/>
</changeSet>
</changeSet>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-opportunity-10
6
-414"
>
<changeSet
author=
"a_LAB01_e85d8801c"
id=
"fk-opportunity-10
7
-414"
>
<addForeignKeyConstraint
baseColumnNames=
"TRANSACTIONCURRENCYID"
baseTableName=
"OPPORTUNITY"
constraintName=
"DER1N_OPPORTUNITY__TRANSACTION"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"TRANSACTIONCURRENCYID"
referencedTableName=
"TRANSACTIONCURRENCY"
validate=
"true"
/>
<addForeignKeyConstraint
baseColumnNames=
"TRANSACTIONCURRENCYID"
baseTableName=
"OPPORTUNITY"
constraintName=
"DER1N_OPPORTUNITY__TRANSACTION"
deferrable=
"false"
initiallyDeferred=
"false"
onDelete=
"RESTRICT"
onUpdate=
"RESTRICT"
referencedColumnNames=
"TRANSACTIONCURRENCYID"
referencedTableName=
"TRANSACTIONCURRENCY"
validate=
"true"
/>
</changeSet>
</changeSet>
<!--输出实体[OPPORTUNITYCOMPETITOR]外键关系 -->
<!--输出实体[OPPORTUNITYCOMPETITOR]外键关系 -->
...
...
businesscentral-core/src/main/resources/mapper/finance/invoicedetail/InvoiceDetailMapper.xml
浏览文件 @
4a96b2a1
...
@@ -5,7 +5,7 @@
...
@@ -5,7 +5,7 @@
<!--该方法用于重写mybatis中selectById方法,以实现查询逻辑属性-->
<!--该方法用于重写mybatis中selectById方法,以实现查询逻辑属性-->
<select
id=
"selectById"
resultMap=
"InvoiceDetailResultMap"
databaseId=
"mysql"
>
<select
id=
"selectById"
resultMap=
"InvoiceDetailResultMap"
databaseId=
"mysql"
>
<![CDATA[select t1.* from (SELECT t1.`ACTUALDELIVERYON`, t1.`BASEAMOUNT`, t1.`BASEAMOUNT_BASE`, t1.`COPIED`, t1.`CREATEDATE`, t1.`CREATEMAN`, t1.`DESCRIPTION`, t1.`EXCHANGERATE`, t1.`EXTENDEDAMOUNT`, t1.`EXTENDEDAMOUNT_BASE`, t1.`IMPORTSEQUENCENUMBER`, t1.`INVOICEDETAILID`, t1.`INVOICEDETAILNAME`, t1.`INVOICEID`, t1.`INVOICEISPRICELOCKED`, t1.`INVOICESTATECODE`, t1.`LINEITEMNUMBER`, t1.`MANUALDISCOUNTAMOUNT`, t1.`OVERRIDDENCREATEDON`, t1.`OWNERID`, t1.`OWNERIDTYPE`, t1.`OWNERIDYOMINAME`, t1.`PARENTBUNDLEID`, t1.`PARENTBUNDLEIDREF`, t1.`PRICEOVERRIDDEN`, t1.`PRICEPERUNIT`, t1.`PRICEPERUNIT_BASE`, t1.`PRICINGERRORCODE`, t1.`PRODUCTASSOCIATIONID`, t1.`PRODUCTDESCRIPTION`, t1.`PRODUCTID`, t1.`PRODUCTNAME`, t1.`PRODUCTOVERRIDDEN`, t1.`PRODUCTTYPECODE`, t1.`PROPERTYCONFIGURATIONSTATUS`, t1.`QUANTITY`, t1.`QUANTITYBACKORDERED`, t1.`QUANTITYCANCELLED`, t1.`QUANTITYSHIPPED`, t1.`SALESORDERDETAILID`, t1.`SALESREPID`, t1.`SALESREPIDYOMINAME`, t1.`SEQUENCENUMBER`, t1.`SHIPPINGTRACKINGNUMBER`, t1.`SHIPTO_CITY`, t1.`SHIPTO_COUNTRY`, t1.`SHIPTO_FAX`, t1.`SHIPTO_FREIGHTTERMSCODE`, t1.`SHIPTO_LINE1`, t1.`SHIPTO_LINE2`, t1.`SHIPTO_LINE3`, t1.`SHIPTO_NAME`, t1.`SHIPTO_POSTALCODE`, t1.`SHIPTO_STATEORPROVINCE`, t1.`SHIPTO_TELEPHONE`, t1.`SKIPPRICECALCULATION`, t1.`TAX`, t1.`TAX_BASE`, t1.`TIMEZONERULEVERSIONNUMBER`, t1.`TRANSACTIONCURRENCYID`, t1.`UOMID`, t1.`UPDATEDATE`, t1.`UPDATEMAN`, t1.`UTCCONVERSIONTIMEZONECODE`, t1.`VERSIONNUMBER`, t1.`VOLUMEDISCOUNTAMOUNT`, t1.`VOLUMEDISCOUNTAMOUNT_BASE`, t1.`WILLCALL` FROM `INVOICEDETAIL` t1 ) t1 where invoicedetailid=#{id}]]>
<![CDATA[select t1.* from (SELECT t1.`ACTUALDELIVERYON`, t1.`BASEAMOUNT`, t1.`BASEAMOUNT_BASE`, t1.`COPIED`, t1.`CREATEDATE`, t1.`CREATEMAN`, t1.`DESCRIPTION`, t1.`EXCHANGERATE`, t1.`EXTENDEDAMOUNT`, t1.`EXTENDEDAMOUNT_BASE`, t1.`IMPORTSEQUENCENUMBER`, t1.`INVOICEDETAILID`, t1.`INVOICEDETAILNAME`, t1.`INVOICEID`, t1.`INVOICEISPRICELOCKED`, t1.`INVOICESTATECODE`, t1.`LINEITEMNUMBER`, t1.`MANUALDISCOUNTAMOUNT`, t1.`OVERRIDDENCREATEDON`, t1.`OWNERID`, t1.`OWNERIDTYPE`, t1.`OWNERIDYOMINAME`, t1.`PARENTBUNDLEID`, t1.`PARENTBUNDLEIDREF`, t1.`PRICEOVERRIDDEN`, t1.`PRICEPERUNIT`, t1.`PRICEPERUNIT_BASE`, t1.`PRICINGERRORCODE`, t1.`PRODUCTASSOCIATIONID`, t1.`PRODUCTDESCRIPTION`, t1.`PRODUCTID`, t1.`PRODUCTNAME`, t1.`PRODUCTOVERRIDDEN`, t1.`PRODUCTTYPECODE`, t1.`PROPERTYCONFIGURATIONSTATUS`, t1.`QUANTITY`, t1.`QUANTITYBACKORDERED`, t1.`QUANTITYCANCELLED`, t1.`QUANTITYSHIPPED`, t1.`SALESORDERDETAILID`, t1.`SALESREPID`, t1.`SALESREPIDYOMINAME`, t1.`SEQUENCENUMBER`, t1.`SHIPPINGTRACKINGNUMBER`, t1.`SHIPTO_CITY`, t1.`SHIPTO_COUNTRY`, t1.`SHIPTO_FAX`, t1.`SHIPTO_FREIGHTTERMSCODE`, t1.`SHIPTO_LINE1`, t1.`SHIPTO_LINE2`, t1.`SHIPTO_LINE3`, t1.`SHIPTO_NAME`, t1.`SHIPTO_POSTALCODE`, t1.`SHIPTO_STATEORPROVINCE`, t1.`SHIPTO_TELEPHONE`, t1.`SKIPPRICECALCULATION`, t1.`TAX`, t1.`TAX_BASE`, t1.`TIMEZONERULEVERSIONNUMBER`, t1.`TRANSACTIONCURRENCYID`, t1.`UOMID`, t1.`U
OMNAME`, t1.`U
PDATEDATE`, t1.`UPDATEMAN`, t1.`UTCCONVERSIONTIMEZONECODE`, t1.`VERSIONNUMBER`, t1.`VOLUMEDISCOUNTAMOUNT`, t1.`VOLUMEDISCOUNTAMOUNT_BASE`, t1.`WILLCALL` FROM `INVOICEDETAIL` t1 ) t1 where invoicedetailid=#{id}]]>
</select>
</select>
<!--通过mybatis将查询结果注入到entity中,通过配置autoMapping="true"由mybatis自动处理映射关系 -->
<!--通过mybatis将查询结果注入到entity中,通过配置autoMapping="true"由mybatis自动处理映射关系 -->
...
@@ -103,12 +103,12 @@
...
@@ -103,12 +103,12 @@
<!--数据查询[Default]-->
<!--数据查询[Default]-->
<sql
id=
"Default"
databaseId=
"mysql"
>
<sql
id=
"Default"
databaseId=
"mysql"
>
<![CDATA[ SELECT t1.`ACTUALDELIVERYON`, t1.`BASEAMOUNT`, t1.`BASEAMOUNT_BASE`, t1.`COPIED`, t1.`CREATEDATE`, t1.`CREATEMAN`, t1.`DESCRIPTION`, t1.`EXCHANGERATE`, t1.`EXTENDEDAMOUNT`, t1.`EXTENDEDAMOUNT_BASE`, t1.`IMPORTSEQUENCENUMBER`, t1.`INVOICEDETAILID`, t1.`INVOICEDETAILNAME`, t1.`INVOICEID`, t1.`INVOICEISPRICELOCKED`, t1.`INVOICESTATECODE`, t1.`LINEITEMNUMBER`, t1.`MANUALDISCOUNTAMOUNT`, t1.`OVERRIDDENCREATEDON`, t1.`OWNERID`, t1.`OWNERIDTYPE`, t1.`OWNERIDYOMINAME`, t1.`PARENTBUNDLEID`, t1.`PARENTBUNDLEIDREF`, t1.`PRICEOVERRIDDEN`, t1.`PRICEPERUNIT`, t1.`PRICEPERUNIT_BASE`, t1.`PRICINGERRORCODE`, t1.`PRODUCTASSOCIATIONID`, t1.`PRODUCTDESCRIPTION`, t1.`PRODUCTID`, t1.`PRODUCTNAME`, t1.`PRODUCTOVERRIDDEN`, t1.`PRODUCTTYPECODE`, t1.`PROPERTYCONFIGURATIONSTATUS`, t1.`QUANTITY`, t1.`QUANTITYBACKORDERED`, t1.`QUANTITYCANCELLED`, t1.`QUANTITYSHIPPED`, t1.`SALESORDERDETAILID`, t1.`SALESREPID`, t1.`SALESREPIDYOMINAME`, t1.`SEQUENCENUMBER`, t1.`SHIPPINGTRACKINGNUMBER`, t1.`SHIPTO_CITY`, t1.`SHIPTO_COUNTRY`, t1.`SHIPTO_FAX`, t1.`SHIPTO_FREIGHTTERMSCODE`, t1.`SHIPTO_LINE1`, t1.`SHIPTO_LINE2`, t1.`SHIPTO_LINE3`, t1.`SHIPTO_NAME`, t1.`SHIPTO_POSTALCODE`, t1.`SHIPTO_STATEORPROVINCE`, t1.`SHIPTO_TELEPHONE`, t1.`SKIPPRICECALCULATION`, t1.`TAX`, t1.`TAX_BASE`, t1.`TIMEZONERULEVERSIONNUMBER`, t1.`TRANSACTIONCURRENCYID`, t1.`UOMID`, t1.`UPDATEDATE`, t1.`UPDATEMAN`, t1.`UTCCONVERSIONTIMEZONECODE`, t1.`VERSIONNUMBER`, t1.`VOLUMEDISCOUNTAMOUNT`, t1.`VOLUMEDISCOUNTAMOUNT_BASE`, t1.`WILLCALL` FROM `INVOICEDETAIL` t1
<![CDATA[ SELECT t1.`ACTUALDELIVERYON`, t1.`BASEAMOUNT`, t1.`BASEAMOUNT_BASE`, t1.`COPIED`, t1.`CREATEDATE`, t1.`CREATEMAN`, t1.`DESCRIPTION`, t1.`EXCHANGERATE`, t1.`EXTENDEDAMOUNT`, t1.`EXTENDEDAMOUNT_BASE`, t1.`IMPORTSEQUENCENUMBER`, t1.`INVOICEDETAILID`, t1.`INVOICEDETAILNAME`, t1.`INVOICEID`, t1.`INVOICEISPRICELOCKED`, t1.`INVOICESTATECODE`, t1.`LINEITEMNUMBER`, t1.`MANUALDISCOUNTAMOUNT`, t1.`OVERRIDDENCREATEDON`, t1.`OWNERID`, t1.`OWNERIDTYPE`, t1.`OWNERIDYOMINAME`, t1.`PARENTBUNDLEID`, t1.`PARENTBUNDLEIDREF`, t1.`PRICEOVERRIDDEN`, t1.`PRICEPERUNIT`, t1.`PRICEPERUNIT_BASE`, t1.`PRICINGERRORCODE`, t1.`PRODUCTASSOCIATIONID`, t1.`PRODUCTDESCRIPTION`, t1.`PRODUCTID`, t1.`PRODUCTNAME`, t1.`PRODUCTOVERRIDDEN`, t1.`PRODUCTTYPECODE`, t1.`PROPERTYCONFIGURATIONSTATUS`, t1.`QUANTITY`, t1.`QUANTITYBACKORDERED`, t1.`QUANTITYCANCELLED`, t1.`QUANTITYSHIPPED`, t1.`SALESORDERDETAILID`, t1.`SALESREPID`, t1.`SALESREPIDYOMINAME`, t1.`SEQUENCENUMBER`, t1.`SHIPPINGTRACKINGNUMBER`, t1.`SHIPTO_CITY`, t1.`SHIPTO_COUNTRY`, t1.`SHIPTO_FAX`, t1.`SHIPTO_FREIGHTTERMSCODE`, t1.`SHIPTO_LINE1`, t1.`SHIPTO_LINE2`, t1.`SHIPTO_LINE3`, t1.`SHIPTO_NAME`, t1.`SHIPTO_POSTALCODE`, t1.`SHIPTO_STATEORPROVINCE`, t1.`SHIPTO_TELEPHONE`, t1.`SKIPPRICECALCULATION`, t1.`TAX`, t1.`TAX_BASE`, t1.`TIMEZONERULEVERSIONNUMBER`, t1.`TRANSACTIONCURRENCYID`, t1.`UOMID`, t1.`U
OMNAME`, t1.`U
PDATEDATE`, t1.`UPDATEMAN`, t1.`UTCCONVERSIONTIMEZONECODE`, t1.`VERSIONNUMBER`, t1.`VOLUMEDISCOUNTAMOUNT`, t1.`VOLUMEDISCOUNTAMOUNT_BASE`, t1.`WILLCALL` FROM `INVOICEDETAIL` t1
]]>
]]>
</sql>
</sql>
<!--数据查询[View]-->
<!--数据查询[View]-->
<sql
id=
"View"
databaseId=
"mysql"
>
<sql
id=
"View"
databaseId=
"mysql"
>
<![CDATA[ SELECT t1.`ACTUALDELIVERYON`, t1.`BASEAMOUNT`, t1.`BASEAMOUNT_BASE`, t1.`COPIED`, t1.`CREATEDATE`, t1.`CREATEMAN`, t1.`DESCRIPTION`, t1.`EXCHANGERATE`, t1.`EXTENDEDAMOUNT`, t1.`EXTENDEDAMOUNT_BASE`, t1.`IMPORTSEQUENCENUMBER`, t1.`INVOICEDETAILID`, t1.`INVOICEDETAILNAME`, t1.`INVOICEID`, t1.`INVOICEISPRICELOCKED`, t1.`INVOICESTATECODE`, t1.`LINEITEMNUMBER`, t1.`MANUALDISCOUNTAMOUNT`, t1.`OVERRIDDENCREATEDON`, t1.`OWNERID`, t1.`OWNERIDTYPE`, t1.`OWNERIDYOMINAME`, t1.`PARENTBUNDLEID`, t1.`PARENTBUNDLEIDREF`, t1.`PRICEOVERRIDDEN`, t1.`PRICEPERUNIT`, t1.`PRICEPERUNIT_BASE`, t1.`PRICINGERRORCODE`, t1.`PRODUCTASSOCIATIONID`, t1.`PRODUCTDESCRIPTION`, t1.`PRODUCTID`, t1.`PRODUCTNAME`, t1.`PRODUCTOVERRIDDEN`, t1.`PRODUCTTYPECODE`, t1.`PROPERTYCONFIGURATIONSTATUS`, t1.`QUANTITY`, t1.`QUANTITYBACKORDERED`, t1.`QUANTITYCANCELLED`, t1.`QUANTITYSHIPPED`, t1.`SALESORDERDETAILID`, t1.`SALESREPID`, t1.`SALESREPIDYOMINAME`, t1.`SEQUENCENUMBER`, t1.`SHIPPINGTRACKINGNUMBER`, t1.`SHIPTO_CITY`, t1.`SHIPTO_COUNTRY`, t1.`SHIPTO_FAX`, t1.`SHIPTO_FREIGHTTERMSCODE`, t1.`SHIPTO_LINE1`, t1.`SHIPTO_LINE2`, t1.`SHIPTO_LINE3`, t1.`SHIPTO_NAME`, t1.`SHIPTO_POSTALCODE`, t1.`SHIPTO_STATEORPROVINCE`, t1.`SHIPTO_TELEPHONE`, t1.`SKIPPRICECALCULATION`, t1.`TAX`, t1.`TAX_BASE`, t1.`TIMEZONERULEVERSIONNUMBER`, t1.`TRANSACTIONCURRENCYID`, t1.`UOMID`, t1.`UPDATEDATE`, t1.`UPDATEMAN`, t1.`UTCCONVERSIONTIMEZONECODE`, t1.`VERSIONNUMBER`, t1.`VOLUMEDISCOUNTAMOUNT`, t1.`VOLUMEDISCOUNTAMOUNT_BASE`, t1.`WILLCALL` FROM `INVOICEDETAIL` t1
<![CDATA[ SELECT t1.`ACTUALDELIVERYON`, t1.`BASEAMOUNT`, t1.`BASEAMOUNT_BASE`, t1.`COPIED`, t1.`CREATEDATE`, t1.`CREATEMAN`, t1.`DESCRIPTION`, t1.`EXCHANGERATE`, t1.`EXTENDEDAMOUNT`, t1.`EXTENDEDAMOUNT_BASE`, t1.`IMPORTSEQUENCENUMBER`, t1.`INVOICEDETAILID`, t1.`INVOICEDETAILNAME`, t1.`INVOICEID`, t1.`INVOICEISPRICELOCKED`, t1.`INVOICESTATECODE`, t1.`LINEITEMNUMBER`, t1.`MANUALDISCOUNTAMOUNT`, t1.`OVERRIDDENCREATEDON`, t1.`OWNERID`, t1.`OWNERIDTYPE`, t1.`OWNERIDYOMINAME`, t1.`PARENTBUNDLEID`, t1.`PARENTBUNDLEIDREF`, t1.`PRICEOVERRIDDEN`, t1.`PRICEPERUNIT`, t1.`PRICEPERUNIT_BASE`, t1.`PRICINGERRORCODE`, t1.`PRODUCTASSOCIATIONID`, t1.`PRODUCTDESCRIPTION`, t1.`PRODUCTID`, t1.`PRODUCTNAME`, t1.`PRODUCTOVERRIDDEN`, t1.`PRODUCTTYPECODE`, t1.`PROPERTYCONFIGURATIONSTATUS`, t1.`QUANTITY`, t1.`QUANTITYBACKORDERED`, t1.`QUANTITYCANCELLED`, t1.`QUANTITYSHIPPED`, t1.`SALESORDERDETAILID`, t1.`SALESREPID`, t1.`SALESREPIDYOMINAME`, t1.`SEQUENCENUMBER`, t1.`SHIPPINGTRACKINGNUMBER`, t1.`SHIPTO_CITY`, t1.`SHIPTO_COUNTRY`, t1.`SHIPTO_FAX`, t1.`SHIPTO_FREIGHTTERMSCODE`, t1.`SHIPTO_LINE1`, t1.`SHIPTO_LINE2`, t1.`SHIPTO_LINE3`, t1.`SHIPTO_NAME`, t1.`SHIPTO_POSTALCODE`, t1.`SHIPTO_STATEORPROVINCE`, t1.`SHIPTO_TELEPHONE`, t1.`SKIPPRICECALCULATION`, t1.`TAX`, t1.`TAX_BASE`, t1.`TIMEZONERULEVERSIONNUMBER`, t1.`TRANSACTIONCURRENCYID`, t1.`UOMID`, t1.`U
OMNAME`, t1.`U
PDATEDATE`, t1.`UPDATEMAN`, t1.`UTCCONVERSIONTIMEZONECODE`, t1.`VERSIONNUMBER`, t1.`VOLUMEDISCOUNTAMOUNT`, t1.`VOLUMEDISCOUNTAMOUNT_BASE`, t1.`WILLCALL` FROM `INVOICEDETAIL` t1
]]>
]]>
</sql>
</sql>
</mapper>
</mapper>
...
...
businesscentral-core/src/main/resources/permission/systemResource.json
浏览文件 @
4a96b2a1
...
@@ -44,6 +44,14 @@
...
@@ -44,6 +44,14 @@
"datascope"
:[{
"id"
:
"all"
,
"name"
:
"全部数据"
},
{
"id"
:
"createman"
,
"name"
:
"创建人"
}]
"datascope"
:[{
"id"
:
"all"
,
"name"
:
"全部数据"
},
{
"id"
:
"createman"
,
"name"
:
"创建人"
}]
}
}
,
{
,
{
"dename"
:
"InvoiceDetail"
,
"delogicname"
:
"发票产品"
,
"sysmoudle"
:{
"id"
:
"FINANCE"
,
"name"
:
"Finance"
},
"dedataset"
:[{
"id"
:
"Default"
,
"name"
:
"DEFAULT"
}],
"deaction"
:[{
"id"
:
"CheckKey"
,
"name"
:
"CheckKey"
,
"type"
:
"BUILTIN"
},{
"id"
:
"Get"
,
"name"
:
"Get"
,
"type"
:
"BUILTIN"
},{
"id"
:
"Update"
,
"name"
:
"Update"
,
"type"
:
"BUILTIN"
},{
"id"
:
"Create"
,
"name"
:
"Create"
,
"type"
:
"BUILTIN"
},{
"id"
:
"GetDraft"
,
"name"
:
"GetDraft"
,
"type"
:
"BUILTIN"
},{
"id"
:
"Save"
,
"name"
:
"Save"
,
"type"
:
"BUILTIN"
},{
"id"
:
"Remove"
,
"name"
:
"Remove"
,
"type"
:
"BUILTIN"
}],
"datascope"
:[{
"id"
:
"all"
,
"name"
:
"全部数据"
},
{
"id"
:
"createman"
,
"name"
:
"创建人"
}]
}
,
{
"dename"
:
"Email"
,
"dename"
:
"Email"
,
"delogicname"
:
"电子邮件"
,
"delogicname"
:
"电子邮件"
,
"sysmoudle"
:{
"id"
:
"BASE"
,
"name"
:
"Base"
},
"sysmoudle"
:{
"id"
:
"BASE"
,
"name"
:
"Base"
},
...
...
businesscentral-provider/businesscentral-provider-centralapi/src/main/java/cn/ibizlab/businesscentral/centralapi/dto/InvoiceDetailDTO.java
0 → 100644
浏览文件 @
4a96b2a1
package
cn
.
ibizlab
.
businesscentral
.
centralapi
.
dto
;
import
java.sql.Timestamp
;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.math.BigInteger
;
import
java.util.Map
;
import
java.util.HashMap
;
import
java.io.Serializable
;
import
java.math.BigDecimal
;
import
com.fasterxml.jackson.annotation.JsonIgnore
;
import
com.fasterxml.jackson.annotation.JsonProperty
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
com.alibaba.fastjson.annotation.JSONField
;
import
cn.ibizlab.businesscentral.util.domain.DTOBase
;
import
lombok.Data
;
/**
* 服务DTO对象[InvoiceDetailDTO]
*/
@Data
public
class
InvoiceDetailDTO
extends
DTOBase
implements
Serializable
{
private
static
final
long
serialVersionUID
=
1L
;
/**
* 属性 [UPDATEDATE]
*
*/
@JsonFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
,
locale
=
"zh"
,
timezone
=
"GMT+8"
)
@JSONField
(
name
=
"updatedate"
,
format
=
"yyyy-MM-dd HH:mm:ss"
)
@JsonProperty
(
"updatedate"
)
private
Timestamp
updatedate
;
/**
* 属性 [INVOICEDETAILNAME]
*
*/
@JSONField
(
name
=
"invoicedetailname"
)
@JsonProperty
(
"invoicedetailname"
)
private
String
invoicedetailname
;
/**
* 属性 [OWNERIDTYPE]
*
*/
@JSONField
(
name
=
"owneridtype"
)
@JsonProperty
(
"owneridtype"
)
private
String
owneridtype
;
/**
* 属性 [QUANTITYBACKORDERED]
*
*/
@JSONField
(
name
=
"quantitybackordered"
)
@JsonProperty
(
"quantitybackordered"
)
private
BigDecimal
quantitybackordered
;
/**
* 属性 [PRODUCTTYPECODE]
*
*/
@JSONField
(
name
=
"producttypecode"
)
@JsonProperty
(
"producttypecode"
)
private
String
producttypecode
;
/**
* 属性 [INVOICESTATECODE]
*
*/
@JSONField
(
name
=
"invoicestatecode"
)
@JsonProperty
(
"invoicestatecode"
)
private
String
invoicestatecode
;
/**
* 属性 [TIMEZONERULEVERSIONNUMBER]
*
*/
@JSONField
(
name
=
"timezoneruleversionnumber"
)
@JsonProperty
(
"timezoneruleversionnumber"
)
private
Integer
timezoneruleversionnumber
;
/**
* 属性 [SHIPTO_STATEORPROVINCE]
*
*/
@JSONField
(
name
=
"shipto_stateorprovince"
)
@JsonProperty
(
"shipto_stateorprovince"
)
private
String
shiptoStateorprovince
;
/**
* 属性 [BASEAMOUNT_BASE]
*
*/
@JSONField
(
name
=
"baseamount_base"
)
@JsonProperty
(
"baseamount_base"
)
private
BigDecimal
baseamountBase
;
/**
* 属性 [WILLCALL]
*
*/
@JSONField
(
name
=
"willcall"
)
@JsonProperty
(
"willcall"
)
private
Integer
willcall
;
/**
* 属性 [OVERRIDDENCREATEDON]
*
*/
@JsonFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
,
locale
=
"zh"
,
timezone
=
"GMT+8"
)
@JSONField
(
name
=
"overriddencreatedon"
,
format
=
"yyyy-MM-dd HH:mm:ss"
)
@JsonProperty
(
"overriddencreatedon"
)
private
Timestamp
overriddencreatedon
;
/**
* 属性 [PARENTBUNDLEID]
*
*/
@JSONField
(
name
=
"parentbundleid"
)
@JsonProperty
(
"parentbundleid"
)
private
String
parentbundleid
;
/**
* 属性 [IMPORTSEQUENCENUMBER]
*
*/
@JSONField
(
name
=
"importsequencenumber"
)
@JsonProperty
(
"importsequencenumber"
)
private
Integer
importsequencenumber
;
/**
* 属性 [PROPERTYCONFIGURATIONSTATUS]
*
*/
@JSONField
(
name
=
"propertyconfigurationstatus"
)
@JsonProperty
(
"propertyconfigurationstatus"
)
private
String
propertyconfigurationstatus
;
/**
* 属性 [UPDATEMAN]
*
*/
@JSONField
(
name
=
"updateman"
)
@JsonProperty
(
"updateman"
)
private
String
updateman
;
/**
* 属性 [PRICEPERUNIT_BASE]
*
*/
@JSONField
(
name
=
"priceperunit_base"
)
@JsonProperty
(
"priceperunit_base"
)
private
BigDecimal
priceperunitBase
;
/**
* 属性 [SHIPTO_COUNTRY]
*
*/
@JSONField
(
name
=
"shipto_country"
)
@JsonProperty
(
"shipto_country"
)
private
String
shiptoCountry
;
/**
* 属性 [COPIED]
*
*/
@JSONField
(
name
=
"copied"
)
@JsonProperty
(
"copied"
)
private
Integer
copied
;
/**
* 属性 [LINEITEMNUMBER]
*
*/
@JSONField
(
name
=
"lineitemnumber"
)
@JsonProperty
(
"lineitemnumber"
)
private
Integer
lineitemnumber
;
/**
* 属性 [PRICEPERUNIT]
*
*/
@JSONField
(
name
=
"priceperunit"
)
@JsonProperty
(
"priceperunit"
)
private
BigDecimal
priceperunit
;
/**
* 属性 [VOLUMEDISCOUNTAMOUNT_BASE]
*
*/
@JSONField
(
name
=
"volumediscountamount_base"
)
@JsonProperty
(
"volumediscountamount_base"
)
private
BigDecimal
volumediscountamountBase
;
/**
* 属性 [SHIPTO_FAX]
*
*/
@JSONField
(
name
=
"shipto_fax"
)
@JsonProperty
(
"shipto_fax"
)
private
String
shiptoFax
;
/**
* 属性 [SHIPTO_LINE1]
*
*/
@JSONField
(
name
=
"shipto_line1"
)
@JsonProperty
(
"shipto_line1"
)
private
String
shiptoLine1
;
/**
* 属性 [DESCRIPTION]
*
*/
@JSONField
(
name
=
"description"
)
@JsonProperty
(
"description"
)
private
String
description
;
/**
* 属性 [SHIPTO_FREIGHTTERMSCODE]
*
*/
@JSONField
(
name
=
"shipto_freighttermscode"
)
@JsonProperty
(
"shipto_freighttermscode"
)
private
String
shiptoFreighttermscode
;
/**
* 属性 [OWNERID]
*
*/
@JSONField
(
name
=
"ownerid"
)
@JsonProperty
(
"ownerid"
)
private
String
ownerid
;
/**
* 属性 [TAX_BASE]
*
*/
@JSONField
(
name
=
"tax_base"
)
@JsonProperty
(
"tax_base"
)
private
BigDecimal
taxBase
;
/**
* 属性 [SHIPTO_TELEPHONE]
*
*/
@JSONField
(
name
=
"shipto_telephone"
)
@JsonProperty
(
"shipto_telephone"
)
private
String
shiptoTelephone
;
/**
* 属性 [PRICEOVERRIDDEN]
*
*/
@JSONField
(
name
=
"priceoverridden"
)
@JsonProperty
(
"priceoverridden"
)
private
Integer
priceoverridden
;
/**
* 属性 [ACTUALDELIVERYON]
*
*/
@JsonFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
,
locale
=
"zh"
,
timezone
=
"GMT+8"
)
@JSONField
(
name
=
"actualdeliveryon"
,
format
=
"yyyy-MM-dd HH:mm:ss"
)
@JsonProperty
(
"actualdeliveryon"
)
private
Timestamp
actualdeliveryon
;
/**
* 属性 [SHIPTO_NAME]
*
*/
@JSONField
(
name
=
"shipto_name"
)
@JsonProperty
(
"shipto_name"
)
private
String
shiptoName
;
/**
* 属性 [CREATEMAN]
*
*/
@JSONField
(
name
=
"createman"
)
@JsonProperty
(
"createman"
)
private
String
createman
;
/**
* 属性 [BASEAMOUNT]
*
*/
@JSONField
(
name
=
"baseamount"
)
@JsonProperty
(
"baseamount"
)
private
BigDecimal
baseamount
;
/**
* 属性 [SHIPPINGTRACKINGNUMBER]
*
*/
@JSONField
(
name
=
"shippingtrackingnumber"
)
@JsonProperty
(
"shippingtrackingnumber"
)
private
String
shippingtrackingnumber
;
/**
* 属性 [INVOICEDETAILID]
*
*/
@JSONField
(
name
=
"invoicedetailid"
)
@JsonProperty
(
"invoicedetailid"
)
private
String
invoicedetailid
;
/**
* 属性 [EXCHANGERATE]
*
*/
@JSONField
(
name
=
"exchangerate"
)
@JsonProperty
(
"exchangerate"
)
private
BigDecimal
exchangerate
;
/**
* 属性 [SHIPTO_LINE3]
*
*/
@JSONField
(
name
=
"shipto_line3"
)
@JsonProperty
(
"shipto_line3"
)
private
String
shiptoLine3
;
/**
* 属性 [OWNERIDYOMINAME]
*
*/
@JSONField
(
name
=
"owneridyominame"
)
@JsonProperty
(
"owneridyominame"
)
private
String
owneridyominame
;
/**
* 属性 [PRODUCTASSOCIATIONID]
*
*/
@JSONField
(
name
=
"productassociationid"
)
@JsonProperty
(
"productassociationid"
)
private
String
productassociationid
;
/**
* 属性 [SHIPTO_POSTALCODE]
*
*/
@JSONField
(
name
=
"shipto_postalcode"
)
@JsonProperty
(
"shipto_postalcode"
)
private
String
shiptoPostalcode
;
/**
* 属性 [CREATEDATE]
*
*/
@JsonFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
,
locale
=
"zh"
,
timezone
=
"GMT+8"
)
@JSONField
(
name
=
"createdate"
,
format
=
"yyyy-MM-dd HH:mm:ss"
)
@JsonProperty
(
"createdate"
)
private
Timestamp
createdate
;
/**
* 属性 [PRODUCTOVERRIDDEN]
*
*/
@JSONField
(
name
=
"productoverridden"
)
@JsonProperty
(
"productoverridden"
)
private
Integer
productoverridden
;
/**
* 属性 [SALESREPID]
*
*/
@JSONField
(
name
=
"salesrepid"
)
@JsonProperty
(
"salesrepid"
)
private
String
salesrepid
;
/**
* 属性 [SALESREPIDYOMINAME]
*
*/
@JSONField
(
name
=
"salesrepidyominame"
)
@JsonProperty
(
"salesrepidyominame"
)
private
String
salesrepidyominame
;
/**
* 属性 [UTCCONVERSIONTIMEZONECODE]
*
*/
@JSONField
(
name
=
"utcconversiontimezonecode"
)
@JsonProperty
(
"utcconversiontimezonecode"
)
private
Integer
utcconversiontimezonecode
;
/**
* 属性 [EXTENDEDAMOUNT]
*
*/
@JSONField
(
name
=
"extendedamount"
)
@JsonProperty
(
"extendedamount"
)
private
BigDecimal
extendedamount
;
/**
* 属性 [PRODUCTDESCRIPTION]
*
*/
@JSONField
(
name
=
"productdescription"
)
@JsonProperty
(
"productdescription"
)
private
String
productdescription
;
/**
* 属性 [SHIPTO_LINE2]
*
*/
@JSONField
(
name
=
"shipto_line2"
)
@JsonProperty
(
"shipto_line2"
)
private
String
shiptoLine2
;
/**
* 属性 [MANUALDISCOUNTAMOUNT]
*
*/
@JSONField
(
name
=
"manualdiscountamount"
)
@JsonProperty
(
"manualdiscountamount"
)
private
BigDecimal
manualdiscountamount
;
/**
* 属性 [SEQUENCENUMBER]
*
*/
@JSONField
(
name
=
"sequencenumber"
)
@JsonProperty
(
"sequencenumber"
)
private
Integer
sequencenumber
;
/**
* 属性 [QUANTITYSHIPPED]
*
*/
@JSONField
(
name
=
"quantityshipped"
)
@JsonProperty
(
"quantityshipped"
)
private
BigDecimal
quantityshipped
;
/**
* 属性 [QUANTITYCANCELLED]
*
*/
@JSONField
(
name
=
"quantitycancelled"
)
@JsonProperty
(
"quantitycancelled"
)
private
BigDecimal
quantitycancelled
;
/**
* 属性 [PRICINGERRORCODE]
*
*/
@JSONField
(
name
=
"pricingerrorcode"
)
@JsonProperty
(
"pricingerrorcode"
)
private
String
pricingerrorcode
;
/**
* 属性 [VERSIONNUMBER]
*
*/
@JSONField
(
name
=
"versionnumber"
)
@JsonProperty
(
"versionnumber"
)
private
BigInteger
versionnumber
;
/**
* 属性 [SKIPPRICECALCULATION]
*
*/
@JSONField
(
name
=
"skippricecalculation"
)
@JsonProperty
(
"skippricecalculation"
)
private
String
skippricecalculation
;
/**
* 属性 [QUANTITY]
*
*/
@JSONField
(
name
=
"quantity"
)
@JsonProperty
(
"quantity"
)
private
BigDecimal
quantity
;
/**
* 属性 [TAX]
*
*/
@JSONField
(
name
=
"tax"
)
@JsonProperty
(
"tax"
)
private
BigDecimal
tax
;
/**
* 属性 [EXTENDEDAMOUNT_BASE]
*
*/
@JSONField
(
name
=
"extendedamount_base"
)
@JsonProperty
(
"extendedamount_base"
)
private
BigDecimal
extendedamountBase
;
/**
* 属性 [VOLUMEDISCOUNTAMOUNT]
*
*/
@JSONField
(
name
=
"volumediscountamount"
)
@JsonProperty
(
"volumediscountamount"
)
private
BigDecimal
volumediscountamount
;
/**
* 属性 [SHIPTO_CITY]
*
*/
@JSONField
(
name
=
"shipto_city"
)
@JsonProperty
(
"shipto_city"
)
private
String
shiptoCity
;
/**
* 属性 [INVOICEISPRICELOCKED]
*
*/
@JSONField
(
name
=
"invoiceispricelocked"
)
@JsonProperty
(
"invoiceispricelocked"
)
private
Integer
invoiceispricelocked
;
/**
* 属性 [TRANSACTIONCURRENCYID]
*
*/
@JSONField
(
name
=
"transactioncurrencyid"
)
@JsonProperty
(
"transactioncurrencyid"
)
private
String
transactioncurrencyid
;
/**
* 属性 [SALESORDERDETAILID]
*
*/
@JSONField
(
name
=
"salesorderdetailid"
)
@JsonProperty
(
"salesorderdetailid"
)
private
String
salesorderdetailid
;
/**
* 属性 [PARENTBUNDLEIDREF]
*
*/
@JSONField
(
name
=
"parentbundleidref"
)
@JsonProperty
(
"parentbundleidref"
)
private
String
parentbundleidref
;
/**
* 属性 [PRODUCTID]
*
*/
@JSONField
(
name
=
"productid"
)
@JsonProperty
(
"productid"
)
private
String
productid
;
/**
* 属性 [INVOICEID]
*
*/
@JSONField
(
name
=
"invoiceid"
)
@JsonProperty
(
"invoiceid"
)
private
String
invoiceid
;
/**
* 属性 [UOMID]
*
*/
@JSONField
(
name
=
"uomid"
)
@JsonProperty
(
"uomid"
)
private
String
uomid
;
/**
* 属性 [PRODUCTNAME]
*
*/
@JSONField
(
name
=
"productname"
)
@JsonProperty
(
"productname"
)
private
String
productname
;
/**
* 属性 [UOMNAME]
*
*/
@JSONField
(
name
=
"uomname"
)
@JsonProperty
(
"uomname"
)
private
String
uomname
;
/**
* 设置 [INVOICEDETAILNAME]
*/
public
void
setInvoicedetailname
(
String
invoicedetailname
){
this
.
invoicedetailname
=
invoicedetailname
;
this
.
modify
(
"invoicedetailname"
,
invoicedetailname
);
}
/**
* 设置 [OWNERIDTYPE]
*/
public
void
setOwneridtype
(
String
owneridtype
){
this
.
owneridtype
=
owneridtype
;
this
.
modify
(
"owneridtype"
,
owneridtype
);
}
/**
* 设置 [QUANTITYBACKORDERED]
*/
public
void
setQuantitybackordered
(
BigDecimal
quantitybackordered
){
this
.
quantitybackordered
=
quantitybackordered
;
this
.
modify
(
"quantitybackordered"
,
quantitybackordered
);
}
/**
* 设置 [PRODUCTTYPECODE]
*/
public
void
setProducttypecode
(
String
producttypecode
){
this
.
producttypecode
=
producttypecode
;
this
.
modify
(
"producttypecode"
,
producttypecode
);
}
/**
* 设置 [INVOICESTATECODE]
*/
public
void
setInvoicestatecode
(
String
invoicestatecode
){
this
.
invoicestatecode
=
invoicestatecode
;
this
.
modify
(
"invoicestatecode"
,
invoicestatecode
);
}
/**
* 设置 [TIMEZONERULEVERSIONNUMBER]
*/
public
void
setTimezoneruleversionnumber
(
Integer
timezoneruleversionnumber
){
this
.
timezoneruleversionnumber
=
timezoneruleversionnumber
;
this
.
modify
(
"timezoneruleversionnumber"
,
timezoneruleversionnumber
);
}
/**
* 设置 [SHIPTO_STATEORPROVINCE]
*/
public
void
setShiptoStateorprovince
(
String
shiptoStateorprovince
){
this
.
shiptoStateorprovince
=
shiptoStateorprovince
;
this
.
modify
(
"shipto_stateorprovince"
,
shiptoStateorprovince
);
}
/**
* 设置 [BASEAMOUNT_BASE]
*/
public
void
setBaseamountBase
(
BigDecimal
baseamountBase
){
this
.
baseamountBase
=
baseamountBase
;
this
.
modify
(
"baseamount_base"
,
baseamountBase
);
}
/**
* 设置 [WILLCALL]
*/
public
void
setWillcall
(
Integer
willcall
){
this
.
willcall
=
willcall
;
this
.
modify
(
"willcall"
,
willcall
);
}
/**
* 设置 [OVERRIDDENCREATEDON]
*/
public
void
setOverriddencreatedon
(
Timestamp
overriddencreatedon
){
this
.
overriddencreatedon
=
overriddencreatedon
;
this
.
modify
(
"overriddencreatedon"
,
overriddencreatedon
);
}
/**
* 设置 [PARENTBUNDLEID]
*/
public
void
setParentbundleid
(
String
parentbundleid
){
this
.
parentbundleid
=
parentbundleid
;
this
.
modify
(
"parentbundleid"
,
parentbundleid
);
}
/**
* 设置 [IMPORTSEQUENCENUMBER]
*/
public
void
setImportsequencenumber
(
Integer
importsequencenumber
){
this
.
importsequencenumber
=
importsequencenumber
;
this
.
modify
(
"importsequencenumber"
,
importsequencenumber
);
}
/**
* 设置 [PROPERTYCONFIGURATIONSTATUS]
*/
public
void
setPropertyconfigurationstatus
(
String
propertyconfigurationstatus
){
this
.
propertyconfigurationstatus
=
propertyconfigurationstatus
;
this
.
modify
(
"propertyconfigurationstatus"
,
propertyconfigurationstatus
);
}
/**
* 设置 [PRICEPERUNIT_BASE]
*/
public
void
setPriceperunitBase
(
BigDecimal
priceperunitBase
){
this
.
priceperunitBase
=
priceperunitBase
;
this
.
modify
(
"priceperunit_base"
,
priceperunitBase
);
}
/**
* 设置 [SHIPTO_COUNTRY]
*/
public
void
setShiptoCountry
(
String
shiptoCountry
){
this
.
shiptoCountry
=
shiptoCountry
;
this
.
modify
(
"shipto_country"
,
shiptoCountry
);
}
/**
* 设置 [COPIED]
*/
public
void
setCopied
(
Integer
copied
){
this
.
copied
=
copied
;
this
.
modify
(
"copied"
,
copied
);
}
/**
* 设置 [LINEITEMNUMBER]
*/
public
void
setLineitemnumber
(
Integer
lineitemnumber
){
this
.
lineitemnumber
=
lineitemnumber
;
this
.
modify
(
"lineitemnumber"
,
lineitemnumber
);
}
/**
* 设置 [PRICEPERUNIT]
*/
public
void
setPriceperunit
(
BigDecimal
priceperunit
){
this
.
priceperunit
=
priceperunit
;
this
.
modify
(
"priceperunit"
,
priceperunit
);
}
/**
* 设置 [VOLUMEDISCOUNTAMOUNT_BASE]
*/
public
void
setVolumediscountamountBase
(
BigDecimal
volumediscountamountBase
){
this
.
volumediscountamountBase
=
volumediscountamountBase
;
this
.
modify
(
"volumediscountamount_base"
,
volumediscountamountBase
);
}
/**
* 设置 [SHIPTO_FAX]
*/
public
void
setShiptoFax
(
String
shiptoFax
){
this
.
shiptoFax
=
shiptoFax
;
this
.
modify
(
"shipto_fax"
,
shiptoFax
);
}
/**
* 设置 [SHIPTO_LINE1]
*/
public
void
setShiptoLine1
(
String
shiptoLine1
){
this
.
shiptoLine1
=
shiptoLine1
;
this
.
modify
(
"shipto_line1"
,
shiptoLine1
);
}
/**
* 设置 [DESCRIPTION]
*/
public
void
setDescription
(
String
description
){
this
.
description
=
description
;
this
.
modify
(
"description"
,
description
);
}
/**
* 设置 [SHIPTO_FREIGHTTERMSCODE]
*/
public
void
setShiptoFreighttermscode
(
String
shiptoFreighttermscode
){
this
.
shiptoFreighttermscode
=
shiptoFreighttermscode
;
this
.
modify
(
"shipto_freighttermscode"
,
shiptoFreighttermscode
);
}
/**
* 设置 [OWNERID]
*/
public
void
setOwnerid
(
String
ownerid
){
this
.
ownerid
=
ownerid
;
this
.
modify
(
"ownerid"
,
ownerid
);
}
/**
* 设置 [TAX_BASE]
*/
public
void
setTaxBase
(
BigDecimal
taxBase
){
this
.
taxBase
=
taxBase
;
this
.
modify
(
"tax_base"
,
taxBase
);
}
/**
* 设置 [SHIPTO_TELEPHONE]
*/
public
void
setShiptoTelephone
(
String
shiptoTelephone
){
this
.
shiptoTelephone
=
shiptoTelephone
;
this
.
modify
(
"shipto_telephone"
,
shiptoTelephone
);
}
/**
* 设置 [PRICEOVERRIDDEN]
*/
public
void
setPriceoverridden
(
Integer
priceoverridden
){
this
.
priceoverridden
=
priceoverridden
;
this
.
modify
(
"priceoverridden"
,
priceoverridden
);
}
/**
* 设置 [ACTUALDELIVERYON]
*/
public
void
setActualdeliveryon
(
Timestamp
actualdeliveryon
){
this
.
actualdeliveryon
=
actualdeliveryon
;
this
.
modify
(
"actualdeliveryon"
,
actualdeliveryon
);
}
/**
* 设置 [SHIPTO_NAME]
*/
public
void
setShiptoName
(
String
shiptoName
){
this
.
shiptoName
=
shiptoName
;
this
.
modify
(
"shipto_name"
,
shiptoName
);
}
/**
* 设置 [BASEAMOUNT]
*/
public
void
setBaseamount
(
BigDecimal
baseamount
){
this
.
baseamount
=
baseamount
;
this
.
modify
(
"baseamount"
,
baseamount
);
}
/**
* 设置 [SHIPPINGTRACKINGNUMBER]
*/
public
void
setShippingtrackingnumber
(
String
shippingtrackingnumber
){
this
.
shippingtrackingnumber
=
shippingtrackingnumber
;
this
.
modify
(
"shippingtrackingnumber"
,
shippingtrackingnumber
);
}
/**
* 设置 [EXCHANGERATE]
*/
public
void
setExchangerate
(
BigDecimal
exchangerate
){
this
.
exchangerate
=
exchangerate
;
this
.
modify
(
"exchangerate"
,
exchangerate
);
}
/**
* 设置 [SHIPTO_LINE3]
*/
public
void
setShiptoLine3
(
String
shiptoLine3
){
this
.
shiptoLine3
=
shiptoLine3
;
this
.
modify
(
"shipto_line3"
,
shiptoLine3
);
}
/**
* 设置 [OWNERIDYOMINAME]
*/
public
void
setOwneridyominame
(
String
owneridyominame
){
this
.
owneridyominame
=
owneridyominame
;
this
.
modify
(
"owneridyominame"
,
owneridyominame
);
}
/**
* 设置 [PRODUCTASSOCIATIONID]
*/
public
void
setProductassociationid
(
String
productassociationid
){
this
.
productassociationid
=
productassociationid
;
this
.
modify
(
"productassociationid"
,
productassociationid
);
}
/**
* 设置 [SHIPTO_POSTALCODE]
*/
public
void
setShiptoPostalcode
(
String
shiptoPostalcode
){
this
.
shiptoPostalcode
=
shiptoPostalcode
;
this
.
modify
(
"shipto_postalcode"
,
shiptoPostalcode
);
}
/**
* 设置 [PRODUCTOVERRIDDEN]
*/
public
void
setProductoverridden
(
Integer
productoverridden
){
this
.
productoverridden
=
productoverridden
;
this
.
modify
(
"productoverridden"
,
productoverridden
);
}
/**
* 设置 [SALESREPID]
*/
public
void
setSalesrepid
(
String
salesrepid
){
this
.
salesrepid
=
salesrepid
;
this
.
modify
(
"salesrepid"
,
salesrepid
);
}
/**
* 设置 [SALESREPIDYOMINAME]
*/
public
void
setSalesrepidyominame
(
String
salesrepidyominame
){
this
.
salesrepidyominame
=
salesrepidyominame
;
this
.
modify
(
"salesrepidyominame"
,
salesrepidyominame
);
}
/**
* 设置 [UTCCONVERSIONTIMEZONECODE]
*/
public
void
setUtcconversiontimezonecode
(
Integer
utcconversiontimezonecode
){
this
.
utcconversiontimezonecode
=
utcconversiontimezonecode
;
this
.
modify
(
"utcconversiontimezonecode"
,
utcconversiontimezonecode
);
}
/**
* 设置 [EXTENDEDAMOUNT]
*/
public
void
setExtendedamount
(
BigDecimal
extendedamount
){
this
.
extendedamount
=
extendedamount
;
this
.
modify
(
"extendedamount"
,
extendedamount
);
}
/**
* 设置 [PRODUCTDESCRIPTION]
*/
public
void
setProductdescription
(
String
productdescription
){
this
.
productdescription
=
productdescription
;
this
.
modify
(
"productdescription"
,
productdescription
);
}
/**
* 设置 [SHIPTO_LINE2]
*/
public
void
setShiptoLine2
(
String
shiptoLine2
){
this
.
shiptoLine2
=
shiptoLine2
;
this
.
modify
(
"shipto_line2"
,
shiptoLine2
);
}
/**
* 设置 [MANUALDISCOUNTAMOUNT]
*/
public
void
setManualdiscountamount
(
BigDecimal
manualdiscountamount
){
this
.
manualdiscountamount
=
manualdiscountamount
;
this
.
modify
(
"manualdiscountamount"
,
manualdiscountamount
);
}
/**
* 设置 [SEQUENCENUMBER]
*/
public
void
setSequencenumber
(
Integer
sequencenumber
){
this
.
sequencenumber
=
sequencenumber
;
this
.
modify
(
"sequencenumber"
,
sequencenumber
);
}
/**
* 设置 [QUANTITYSHIPPED]
*/
public
void
setQuantityshipped
(
BigDecimal
quantityshipped
){
this
.
quantityshipped
=
quantityshipped
;
this
.
modify
(
"quantityshipped"
,
quantityshipped
);
}
/**
* 设置 [QUANTITYCANCELLED]
*/
public
void
setQuantitycancelled
(
BigDecimal
quantitycancelled
){
this
.
quantitycancelled
=
quantitycancelled
;
this
.
modify
(
"quantitycancelled"
,
quantitycancelled
);
}
/**
* 设置 [PRICINGERRORCODE]
*/
public
void
setPricingerrorcode
(
String
pricingerrorcode
){
this
.
pricingerrorcode
=
pricingerrorcode
;
this
.
modify
(
"pricingerrorcode"
,
pricingerrorcode
);
}
/**
* 设置 [VERSIONNUMBER]
*/
public
void
setVersionnumber
(
BigInteger
versionnumber
){
this
.
versionnumber
=
versionnumber
;
this
.
modify
(
"versionnumber"
,
versionnumber
);
}
/**
* 设置 [SKIPPRICECALCULATION]
*/
public
void
setSkippricecalculation
(
String
skippricecalculation
){
this
.
skippricecalculation
=
skippricecalculation
;
this
.
modify
(
"skippricecalculation"
,
skippricecalculation
);
}
/**
* 设置 [QUANTITY]
*/
public
void
setQuantity
(
BigDecimal
quantity
){
this
.
quantity
=
quantity
;
this
.
modify
(
"quantity"
,
quantity
);
}
/**
* 设置 [TAX]
*/
public
void
setTax
(
BigDecimal
tax
){
this
.
tax
=
tax
;
this
.
modify
(
"tax"
,
tax
);
}
/**
* 设置 [EXTENDEDAMOUNT_BASE]
*/
public
void
setExtendedamountBase
(
BigDecimal
extendedamountBase
){
this
.
extendedamountBase
=
extendedamountBase
;
this
.
modify
(
"extendedamount_base"
,
extendedamountBase
);
}
/**
* 设置 [VOLUMEDISCOUNTAMOUNT]
*/
public
void
setVolumediscountamount
(
BigDecimal
volumediscountamount
){
this
.
volumediscountamount
=
volumediscountamount
;
this
.
modify
(
"volumediscountamount"
,
volumediscountamount
);
}
/**
* 设置 [SHIPTO_CITY]
*/
public
void
setShiptoCity
(
String
shiptoCity
){
this
.
shiptoCity
=
shiptoCity
;
this
.
modify
(
"shipto_city"
,
shiptoCity
);
}
/**
* 设置 [INVOICEISPRICELOCKED]
*/
public
void
setInvoiceispricelocked
(
Integer
invoiceispricelocked
){
this
.
invoiceispricelocked
=
invoiceispricelocked
;
this
.
modify
(
"invoiceispricelocked"
,
invoiceispricelocked
);
}
/**
* 设置 [TRANSACTIONCURRENCYID]
*/
public
void
setTransactioncurrencyid
(
String
transactioncurrencyid
){
this
.
transactioncurrencyid
=
transactioncurrencyid
;
this
.
modify
(
"transactioncurrencyid"
,
transactioncurrencyid
);
}
/**
* 设置 [SALESORDERDETAILID]
*/
public
void
setSalesorderdetailid
(
String
salesorderdetailid
){
this
.
salesorderdetailid
=
salesorderdetailid
;
this
.
modify
(
"salesorderdetailid"
,
salesorderdetailid
);
}
/**
* 设置 [PARENTBUNDLEIDREF]
*/
public
void
setParentbundleidref
(
String
parentbundleidref
){
this
.
parentbundleidref
=
parentbundleidref
;
this
.
modify
(
"parentbundleidref"
,
parentbundleidref
);
}
/**
* 设置 [PRODUCTID]
*/
public
void
setProductid
(
String
productid
){
this
.
productid
=
productid
;
this
.
modify
(
"productid"
,
productid
);
}
/**
* 设置 [INVOICEID]
*/
public
void
setInvoiceid
(
String
invoiceid
){
this
.
invoiceid
=
invoiceid
;
this
.
modify
(
"invoiceid"
,
invoiceid
);
}
/**
* 设置 [UOMID]
*/
public
void
setUomid
(
String
uomid
){
this
.
uomid
=
uomid
;
this
.
modify
(
"uomid"
,
uomid
);
}
/**
* 设置 [PRODUCTNAME]
*/
public
void
setProductname
(
String
productname
){
this
.
productname
=
productname
;
this
.
modify
(
"productname"
,
productname
);
}
/**
* 设置 [UOMNAME]
*/
public
void
setUomname
(
String
uomname
){
this
.
uomname
=
uomname
;
this
.
modify
(
"uomname"
,
uomname
);
}
}
businesscentral-provider/businesscentral-provider-centralapi/src/main/java/cn/ibizlab/businesscentral/centralapi/mapping/InvoiceDetailMapping.java
0 → 100644
浏览文件 @
4a96b2a1
package
cn
.
ibizlab
.
businesscentral
.
centralapi
.
mapping
;
import
org.mapstruct.*
;
import
cn.ibizlab.businesscentral.core.finance.domain.InvoiceDetail
;
import
cn.ibizlab.businesscentral.centralapi.dto.InvoiceDetailDTO
;
import
cn.ibizlab.businesscentral.util.domain.MappingBase
;
import
org.mapstruct.factory.Mappers
;
@Mapper
(
componentModel
=
"spring"
,
uses
=
{},
nullValuePropertyMappingStrategy
=
NullValuePropertyMappingStrategy
.
IGNORE
,
nullValueCheckStrategy
=
NullValueCheckStrategy
.
ALWAYS
)
public
interface
InvoiceDetailMapping
extends
MappingBase
<
InvoiceDetailDTO
,
InvoiceDetail
>
{
}
businesscentral-provider/businesscentral-provider-centralapi/src/main/java/cn/ibizlab/businesscentral/centralapi/rest/InvoiceDetailResource.java
0 → 100644
浏览文件 @
4a96b2a1
package
cn
.
ibizlab
.
businesscentral
.
centralapi
.
rest
;
import
java.sql.Timestamp
;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.Map
;
import
java.math.BigInteger
;
import
java.util.HashMap
;
import
lombok.extern.slf4j.Slf4j
;
import
com.alibaba.fastjson.JSONObject
;
import
javax.servlet.ServletRequest
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.cglib.beans.BeanCopier
;
import
org.springframework.transaction.annotation.Transactional
;
import
org.springframework.http.ResponseEntity
;
import
org.springframework.web.bind.annotation.*
;
import
org.springframework.http.HttpStatus
;
import
org.springframework.data.domain.PageRequest
;
import
org.springframework.data.domain.Page
;
import
org.springframework.data.domain.PageImpl
;
import
org.springframework.data.domain.Pageable
;
import
org.springframework.util.StringUtils
;
import
org.springframework.context.annotation.Lazy
;
import
org.springframework.security.access.prepost.PreAuthorize
;
import
org.springframework.security.access.prepost.PostAuthorize
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
io.swagger.annotations.ApiResponse
;
import
io.swagger.annotations.ApiResponses
;
import
cn.ibizlab.businesscentral.centralapi.dto.*
;
import
cn.ibizlab.businesscentral.centralapi.mapping.*
;
import
cn.ibizlab.businesscentral.core.finance.domain.InvoiceDetail
;
import
cn.ibizlab.businesscentral.core.finance.service.IInvoiceDetailService
;
import
cn.ibizlab.businesscentral.core.finance.filter.InvoiceDetailSearchContext
;
import
cn.ibizlab.businesscentral.util.annotation.VersionCheck
;
@Slf4j
@Api
(
tags
=
{
"发票产品"
})
@RestController
(
"CentralApi-invoicedetail"
)
@RequestMapping
(
""
)
public
class
InvoiceDetailResource
{
@Autowired
public
IInvoiceDetailService
invoicedetailService
;
@Autowired
@Lazy
public
InvoiceDetailMapping
invoicedetailMapping
;
@ApiOperation
(
value
=
"检查发票产品"
,
tags
=
{
"发票产品"
},
notes
=
"检查发票产品"
)
@RequestMapping
(
method
=
RequestMethod
.
POST
,
value
=
"/invoicedetails/checkkey"
)
public
ResponseEntity
<
Boolean
>
checkKey
(
@RequestBody
InvoiceDetailDTO
invoicedetaildto
)
{
return
ResponseEntity
.
status
(
HttpStatus
.
OK
).
body
(
invoicedetailService
.
checkKey
(
invoicedetailMapping
.
toDomain
(
invoicedetaildto
)));
}
@PostAuthorize
(
"hasPermission(this.invoicedetailMapping.toDomain(returnObject.body),'iBizBusinessCentral-InvoiceDetail-Get')"
)
@ApiOperation
(
value
=
"获取发票产品"
,
tags
=
{
"发票产品"
},
notes
=
"获取发票产品"
)
@RequestMapping
(
method
=
RequestMethod
.
GET
,
value
=
"/invoicedetails/{invoicedetail_id}"
)
public
ResponseEntity
<
InvoiceDetailDTO
>
get
(
@PathVariable
(
"invoicedetail_id"
)
String
invoicedetail_id
)
{
InvoiceDetail
domain
=
invoicedetailService
.
get
(
invoicedetail_id
);
InvoiceDetailDTO
dto
=
invoicedetailMapping
.
toDto
(
domain
);
return
ResponseEntity
.
status
(
HttpStatus
.
OK
).
body
(
dto
);
}
@VersionCheck
(
entity
=
"invoicedetail"
,
versionfield
=
"updatedate"
)
@PreAuthorize
(
"hasPermission(this.invoicedetailService.get(#invoicedetail_id),'iBizBusinessCentral-InvoiceDetail-Update')"
)
@ApiOperation
(
value
=
"更新发票产品"
,
tags
=
{
"发票产品"
},
notes
=
"更新发票产品"
)
@RequestMapping
(
method
=
RequestMethod
.
PUT
,
value
=
"/invoicedetails/{invoicedetail_id}"
)
@Transactional
public
ResponseEntity
<
InvoiceDetailDTO
>
update
(
@PathVariable
(
"invoicedetail_id"
)
String
invoicedetail_id
,
@RequestBody
InvoiceDetailDTO
invoicedetaildto
)
{
InvoiceDetail
domain
=
invoicedetailMapping
.
toDomain
(
invoicedetaildto
);
domain
.
setInvoicedetailid
(
invoicedetail_id
);
invoicedetailService
.
update
(
domain
);
InvoiceDetailDTO
dto
=
invoicedetailMapping
.
toDto
(
domain
);
return
ResponseEntity
.
status
(
HttpStatus
.
OK
).
body
(
dto
);
}
@PreAuthorize
(
"hasPermission(this.invoicedetailService.getInvoicedetailByEntities(this.invoicedetailMapping.toDomain(#invoicedetaildtos)),'iBizBusinessCentral-InvoiceDetail-Update')"
)
@ApiOperation
(
value
=
"批量更新发票产品"
,
tags
=
{
"发票产品"
},
notes
=
"批量更新发票产品"
)
@RequestMapping
(
method
=
RequestMethod
.
PUT
,
value
=
"/invoicedetails/batch"
)
public
ResponseEntity
<
Boolean
>
updateBatch
(
@RequestBody
List
<
InvoiceDetailDTO
>
invoicedetaildtos
)
{
invoicedetailService
.
updateBatch
(
invoicedetailMapping
.
toDomain
(
invoicedetaildtos
));
return
ResponseEntity
.
status
(
HttpStatus
.
OK
).
body
(
true
);
}
@PreAuthorize
(
"hasPermission(this.invoicedetailMapping.toDomain(#invoicedetaildto),'iBizBusinessCentral-InvoiceDetail-Create')"
)
@ApiOperation
(
value
=
"新建发票产品"
,
tags
=
{
"发票产品"
},
notes
=
"新建发票产品"
)
@RequestMapping
(
method
=
RequestMethod
.
POST
,
value
=
"/invoicedetails"
)
@Transactional
public
ResponseEntity
<
InvoiceDetailDTO
>
create
(
@RequestBody
InvoiceDetailDTO
invoicedetaildto
)
{
InvoiceDetail
domain
=
invoicedetailMapping
.
toDomain
(
invoicedetaildto
);
invoicedetailService
.
create
(
domain
);
InvoiceDetailDTO
dto
=
invoicedetailMapping
.
toDto
(
domain
);
return
ResponseEntity
.
status
(
HttpStatus
.
OK
).
body
(
dto
);
}
@PreAuthorize
(
"hasPermission(this.invoicedetailMapping.toDomain(#invoicedetaildtos),'iBizBusinessCentral-InvoiceDetail-Create')"
)
@ApiOperation
(
value
=
"批量新建发票产品"
,
tags
=
{
"发票产品"
},
notes
=
"批量新建发票产品"
)
@RequestMapping
(
method
=
RequestMethod
.
POST
,
value
=
"/invoicedetails/batch"
)
public
ResponseEntity
<
Boolean
>
createBatch
(
@RequestBody
List
<
InvoiceDetailDTO
>
invoicedetaildtos
)
{
invoicedetailService
.
createBatch
(
invoicedetailMapping
.
toDomain
(
invoicedetaildtos
));
return
ResponseEntity
.
status
(
HttpStatus
.
OK
).
body
(
true
);
}
@ApiOperation
(
value
=
"获取发票产品草稿"
,
tags
=
{
"发票产品"
},
notes
=
"获取发票产品草稿"
)
@RequestMapping
(
method
=
RequestMethod
.
GET
,
value
=
"/invoicedetails/getdraft"
)
public
ResponseEntity
<
InvoiceDetailDTO
>
getDraft
()
{
return
ResponseEntity
.
status
(
HttpStatus
.
OK
).
body
(
invoicedetailMapping
.
toDto
(
invoicedetailService
.
getDraft
(
new
InvoiceDetail
())));
}
@PreAuthorize
(
"hasPermission(this.invoicedetailMapping.toDomain(#invoicedetaildto),'iBizBusinessCentral-InvoiceDetail-Save')"
)
@ApiOperation
(
value
=
"保存发票产品"
,
tags
=
{
"发票产品"
},
notes
=
"保存发票产品"
)
@RequestMapping
(
method
=
RequestMethod
.
POST
,
value
=
"/invoicedetails/save"
)
public
ResponseEntity
<
Boolean
>
save
(
@RequestBody
InvoiceDetailDTO
invoicedetaildto
)
{
return
ResponseEntity
.
status
(
HttpStatus
.
OK
).
body
(
invoicedetailService
.
save
(
invoicedetailMapping
.
toDomain
(
invoicedetaildto
)));
}
@PreAuthorize
(
"hasPermission(this.invoicedetailMapping.toDomain(#invoicedetaildtos),'iBizBusinessCentral-InvoiceDetail-Save')"
)
@ApiOperation
(
value
=
"批量保存发票产品"
,
tags
=
{
"发票产品"
},
notes
=
"批量保存发票产品"
)
@RequestMapping
(
method
=
RequestMethod
.
POST
,
value
=
"/invoicedetails/savebatch"
)
public
ResponseEntity
<
Boolean
>
saveBatch
(
@RequestBody
List
<
InvoiceDetailDTO
>
invoicedetaildtos
)
{
invoicedetailService
.
saveBatch
(
invoicedetailMapping
.
toDomain
(
invoicedetaildtos
));
return
ResponseEntity
.
status
(
HttpStatus
.
OK
).
body
(
true
);
}
@PreAuthorize
(
"hasPermission(this.invoicedetailService.get(#invoicedetail_id),'iBizBusinessCentral-InvoiceDetail-Remove')"
)
@ApiOperation
(
value
=
"删除发票产品"
,
tags
=
{
"发票产品"
},
notes
=
"删除发票产品"
)
@RequestMapping
(
method
=
RequestMethod
.
DELETE
,
value
=
"/invoicedetails/{invoicedetail_id}"
)
@Transactional
public
ResponseEntity
<
Boolean
>
remove
(
@PathVariable
(
"invoicedetail_id"
)
String
invoicedetail_id
)
{
return
ResponseEntity
.
status
(
HttpStatus
.
OK
).
body
(
invoicedetailService
.
remove
(
invoicedetail_id
));
}
@PreAuthorize
(
"hasPermission(this.invoicedetailService.getInvoicedetailByIds(#ids),'iBizBusinessCentral-InvoiceDetail-Remove')"
)
@ApiOperation
(
value
=
"批量删除发票产品"
,
tags
=
{
"发票产品"
},
notes
=
"批量删除发票产品"
)
@RequestMapping
(
method
=
RequestMethod
.
DELETE
,
value
=
"/invoicedetails/batch"
)
public
ResponseEntity
<
Boolean
>
removeBatch
(
@RequestBody
List
<
String
>
ids
)
{
invoicedetailService
.
removeBatch
(
ids
);
return
ResponseEntity
.
status
(
HttpStatus
.
OK
).
body
(
true
);
}
@PreAuthorize
(
"hasAnyAuthority('ROLE_SUPERADMIN','iBizBusinessCentral-InvoiceDetail-searchDefault-all')"
)
@ApiOperation
(
value
=
"获取DEFAULT"
,
tags
=
{
"发票产品"
}
,
notes
=
"获取DEFAULT"
)
@RequestMapping
(
method
=
RequestMethod
.
GET
,
value
=
"/invoicedetails/fetchdefault"
)
public
ResponseEntity
<
List
<
InvoiceDetailDTO
>>
fetchDefault
(
InvoiceDetailSearchContext
context
)
{
Page
<
InvoiceDetail
>
domains
=
invoicedetailService
.
searchDefault
(
context
)
;
List
<
InvoiceDetailDTO
>
list
=
invoicedetailMapping
.
toDto
(
domains
.
getContent
());
return
ResponseEntity
.
status
(
HttpStatus
.
OK
)
.
header
(
"x-page"
,
String
.
valueOf
(
context
.
getPageable
().
getPageNumber
()))
.
header
(
"x-per-page"
,
String
.
valueOf
(
context
.
getPageable
().
getPageSize
()))
.
header
(
"x-total"
,
String
.
valueOf
(
domains
.
getTotalElements
()))
.
body
(
list
);
}
@PreAuthorize
(
"hasAnyAuthority('ROLE_SUPERADMIN','iBizBusinessCentral-InvoiceDetail-searchDefault-all')"
)
@ApiOperation
(
value
=
"查询DEFAULT"
,
tags
=
{
"发票产品"
}
,
notes
=
"查询DEFAULT"
)
@RequestMapping
(
method
=
RequestMethod
.
POST
,
value
=
"/invoicedetails/searchdefault"
)
public
ResponseEntity
<
Page
<
InvoiceDetailDTO
>>
searchDefault
(
@RequestBody
InvoiceDetailSearchContext
context
)
{
Page
<
InvoiceDetail
>
domains
=
invoicedetailService
.
searchDefault
(
context
)
;
return
ResponseEntity
.
status
(
HttpStatus
.
OK
)
.
body
(
new
PageImpl
(
invoicedetailMapping
.
toDto
(
domains
.
getContent
()),
context
.
getPageable
(),
domains
.
getTotalElements
()));
}
@ApiOperation
(
value
=
"根据发票检查发票产品"
,
tags
=
{
"发票产品"
},
notes
=
"根据发票检查发票产品"
)
@RequestMapping
(
method
=
RequestMethod
.
POST
,
value
=
"/invoices/{invoice_id}/invoicedetails/checkkey"
)
public
ResponseEntity
<
Boolean
>
checkKeyByInvoice
(
@PathVariable
(
"invoice_id"
)
String
invoice_id
,
@RequestBody
InvoiceDetailDTO
invoicedetaildto
)
{
return
ResponseEntity
.
status
(
HttpStatus
.
OK
).
body
(
invoicedetailService
.
checkKey
(
invoicedetailMapping
.
toDomain
(
invoicedetaildto
)));
}
@PostAuthorize
(
"hasPermission(this.invoicedetailMapping.toDomain(returnObject.body),'iBizBusinessCentral-InvoiceDetail-Get')"
)
@ApiOperation
(
value
=
"根据发票获取发票产品"
,
tags
=
{
"发票产品"
},
notes
=
"根据发票获取发票产品"
)
@RequestMapping
(
method
=
RequestMethod
.
GET
,
value
=
"/invoices/{invoice_id}/invoicedetails/{invoicedetail_id}"
)
public
ResponseEntity
<
InvoiceDetailDTO
>
getByInvoice
(
@PathVariable
(
"invoice_id"
)
String
invoice_id
,
@PathVariable
(
"invoicedetail_id"
)
String
invoicedetail_id
)
{
InvoiceDetail
domain
=
invoicedetailService
.
get
(
invoicedetail_id
);
InvoiceDetailDTO
dto
=
invoicedetailMapping
.
toDto
(
domain
);
return
ResponseEntity
.
status
(
HttpStatus
.
OK
).
body
(
dto
);
}
@VersionCheck
(
entity
=
"invoicedetail"
,
versionfield
=
"updatedate"
)
@PreAuthorize
(
"hasPermission(this.invoicedetailService.get(#invoicedetail_id),'iBizBusinessCentral-InvoiceDetail-Update')"
)
@ApiOperation
(
value
=
"根据发票更新发票产品"
,
tags
=
{
"发票产品"
},
notes
=
"根据发票更新发票产品"
)
@RequestMapping
(
method
=
RequestMethod
.
PUT
,
value
=
"/invoices/{invoice_id}/invoicedetails/{invoicedetail_id}"
)
@Transactional
public
ResponseEntity
<
InvoiceDetailDTO
>
updateByInvoice
(
@PathVariable
(
"invoice_id"
)
String
invoice_id
,
@PathVariable
(
"invoicedetail_id"
)
String
invoicedetail_id
,
@RequestBody
InvoiceDetailDTO
invoicedetaildto
)
{
InvoiceDetail
domain
=
invoicedetailMapping
.
toDomain
(
invoicedetaildto
);
domain
.
setInvoiceid
(
invoice_id
);
domain
.
setInvoicedetailid
(
invoicedetail_id
);
invoicedetailService
.
update
(
domain
);
InvoiceDetailDTO
dto
=
invoicedetailMapping
.
toDto
(
domain
);
return
ResponseEntity
.
status
(
HttpStatus
.
OK
).
body
(
dto
);
}
@PreAuthorize
(
"hasPermission(this.invoicedetailService.getInvoicedetailByEntities(this.invoicedetailMapping.toDomain(#invoicedetaildtos)),'iBizBusinessCentral-InvoiceDetail-Update')"
)
@ApiOperation
(
value
=
"根据发票批量更新发票产品"
,
tags
=
{
"发票产品"
},
notes
=
"根据发票批量更新发票产品"
)
@RequestMapping
(
method
=
RequestMethod
.
PUT
,
value
=
"/invoices/{invoice_id}/invoicedetails/batch"
)
public
ResponseEntity
<
Boolean
>
updateBatchByInvoice
(
@PathVariable
(
"invoice_id"
)
String
invoice_id
,
@RequestBody
List
<
InvoiceDetailDTO
>
invoicedetaildtos
)
{
List
<
InvoiceDetail
>
domainlist
=
invoicedetailMapping
.
toDomain
(
invoicedetaildtos
);
for
(
InvoiceDetail
domain:
domainlist
){
domain
.
setInvoiceid
(
invoice_id
);
}
invoicedetailService
.
updateBatch
(
domainlist
);
return
ResponseEntity
.
status
(
HttpStatus
.
OK
).
body
(
true
);
}
@PreAuthorize
(
"hasPermission(this.invoicedetailMapping.toDomain(#invoicedetaildto),'iBizBusinessCentral-InvoiceDetail-Create')"
)
@ApiOperation
(
value
=
"根据发票建立发票产品"
,
tags
=
{
"发票产品"
},
notes
=
"根据发票建立发票产品"
)
@RequestMapping
(
method
=
RequestMethod
.
POST
,
value
=
"/invoices/{invoice_id}/invoicedetails"
)
@Transactional
public
ResponseEntity
<
InvoiceDetailDTO
>
createByInvoice
(
@PathVariable
(
"invoice_id"
)
String
invoice_id
,
@RequestBody
InvoiceDetailDTO
invoicedetaildto
)
{
InvoiceDetail
domain
=
invoicedetailMapping
.
toDomain
(
invoicedetaildto
);
domain
.
setInvoiceid
(
invoice_id
);
invoicedetailService
.
create
(
domain
);
InvoiceDetailDTO
dto
=
invoicedetailMapping
.
toDto
(
domain
);
return
ResponseEntity
.
status
(
HttpStatus
.
OK
).
body
(
dto
);
}
@PreAuthorize
(
"hasPermission(this.invoicedetailMapping.toDomain(#invoicedetaildtos),'iBizBusinessCentral-InvoiceDetail-Create')"
)
@ApiOperation
(
value
=
"根据发票批量建立发票产品"
,
tags
=
{
"发票产品"
},
notes
=
"根据发票批量建立发票产品"
)
@RequestMapping
(
method
=
RequestMethod
.
POST
,
value
=
"/invoices/{invoice_id}/invoicedetails/batch"
)
public
ResponseEntity
<
Boolean
>
createBatchByInvoice
(
@PathVariable
(
"invoice_id"
)
String
invoice_id
,
@RequestBody
List
<
InvoiceDetailDTO
>
invoicedetaildtos
)
{
List
<
InvoiceDetail
>
domainlist
=
invoicedetailMapping
.
toDomain
(
invoicedetaildtos
);
for
(
InvoiceDetail
domain:
domainlist
){
domain
.
setInvoiceid
(
invoice_id
);
}
invoicedetailService
.
createBatch
(
domainlist
);
return
ResponseEntity
.
status
(
HttpStatus
.
OK
).
body
(
true
);
}
@ApiOperation
(
value
=
"根据发票获取发票产品草稿"
,
tags
=
{
"发票产品"
},
notes
=
"根据发票获取发票产品草稿"
)
@RequestMapping
(
method
=
RequestMethod
.
GET
,
value
=
"/invoices/{invoice_id}/invoicedetails/getdraft"
)
public
ResponseEntity
<
InvoiceDetailDTO
>
getDraftByInvoice
(
@PathVariable
(
"invoice_id"
)
String
invoice_id
)
{
InvoiceDetail
domain
=
new
InvoiceDetail
();
domain
.
setInvoiceid
(
invoice_id
);
return
ResponseEntity
.
status
(
HttpStatus
.
OK
).
body
(
invoicedetailMapping
.
toDto
(
invoicedetailService
.
getDraft
(
domain
)));
}
@PreAuthorize
(
"hasPermission(this.invoicedetailMapping.toDomain(#invoicedetaildto),'iBizBusinessCentral-InvoiceDetail-Save')"
)
@ApiOperation
(
value
=
"根据发票保存发票产品"
,
tags
=
{
"发票产品"
},
notes
=
"根据发票保存发票产品"
)
@RequestMapping
(
method
=
RequestMethod
.
POST
,
value
=
"/invoices/{invoice_id}/invoicedetails/save"
)
public
ResponseEntity
<
Boolean
>
saveByInvoice
(
@PathVariable
(
"invoice_id"
)
String
invoice_id
,
@RequestBody
InvoiceDetailDTO
invoicedetaildto
)
{
InvoiceDetail
domain
=
invoicedetailMapping
.
toDomain
(
invoicedetaildto
);
domain
.
setInvoiceid
(
invoice_id
);
return
ResponseEntity
.
status
(
HttpStatus
.
OK
).
body
(
invoicedetailService
.
save
(
domain
));
}
@PreAuthorize
(
"hasPermission(this.invoicedetailMapping.toDomain(#invoicedetaildtos),'iBizBusinessCentral-InvoiceDetail-Save')"
)
@ApiOperation
(
value
=
"根据发票批量保存发票产品"
,
tags
=
{
"发票产品"
},
notes
=
"根据发票批量保存发票产品"
)
@RequestMapping
(
method
=
RequestMethod
.
POST
,
value
=
"/invoices/{invoice_id}/invoicedetails/savebatch"
)
public
ResponseEntity
<
Boolean
>
saveBatchByInvoice
(
@PathVariable
(
"invoice_id"
)
String
invoice_id
,
@RequestBody
List
<
InvoiceDetailDTO
>
invoicedetaildtos
)
{
List
<
InvoiceDetail
>
domainlist
=
invoicedetailMapping
.
toDomain
(
invoicedetaildtos
);
for
(
InvoiceDetail
domain:
domainlist
){
domain
.
setInvoiceid
(
invoice_id
);
}
invoicedetailService
.
saveBatch
(
domainlist
);
return
ResponseEntity
.
status
(
HttpStatus
.
OK
).
body
(
true
);
}
@PreAuthorize
(
"hasPermission(this.invoicedetailService.get(#invoicedetail_id),'iBizBusinessCentral-InvoiceDetail-Remove')"
)
@ApiOperation
(
value
=
"根据发票删除发票产品"
,
tags
=
{
"发票产品"
},
notes
=
"根据发票删除发票产品"
)
@RequestMapping
(
method
=
RequestMethod
.
DELETE
,
value
=
"/invoices/{invoice_id}/invoicedetails/{invoicedetail_id}"
)
@Transactional
public
ResponseEntity
<
Boolean
>
removeByInvoice
(
@PathVariable
(
"invoice_id"
)
String
invoice_id
,
@PathVariable
(
"invoicedetail_id"
)
String
invoicedetail_id
)
{
return
ResponseEntity
.
status
(
HttpStatus
.
OK
).
body
(
invoicedetailService
.
remove
(
invoicedetail_id
));
}
@PreAuthorize
(
"hasPermission(this.invoicedetailService.getInvoicedetailByIds(#ids),'iBizBusinessCentral-InvoiceDetail-Remove')"
)
@ApiOperation
(
value
=
"根据发票批量删除发票产品"
,
tags
=
{
"发票产品"
},
notes
=
"根据发票批量删除发票产品"
)
@RequestMapping
(
method
=
RequestMethod
.
DELETE
,
value
=
"/invoices/{invoice_id}/invoicedetails/batch"
)
public
ResponseEntity
<
Boolean
>
removeBatchByInvoice
(
@RequestBody
List
<
String
>
ids
)
{
invoicedetailService
.
removeBatch
(
ids
);
return
ResponseEntity
.
status
(
HttpStatus
.
OK
).
body
(
true
);
}
@PreAuthorize
(
"hasAnyAuthority('ROLE_SUPERADMIN','iBizBusinessCentral-InvoiceDetail-searchDefault-all')"
)
@ApiOperation
(
value
=
"根据发票获取DEFAULT"
,
tags
=
{
"发票产品"
}
,
notes
=
"根据发票获取DEFAULT"
)
@RequestMapping
(
method
=
RequestMethod
.
GET
,
value
=
"/invoices/{invoice_id}/invoicedetails/fetchdefault"
)
public
ResponseEntity
<
List
<
InvoiceDetailDTO
>>
fetchInvoiceDetailDefaultByInvoice
(
@PathVariable
(
"invoice_id"
)
String
invoice_id
,
InvoiceDetailSearchContext
context
)
{
context
.
setN_invoiceid_eq
(
invoice_id
);
Page
<
InvoiceDetail
>
domains
=
invoicedetailService
.
searchDefault
(
context
)
;
List
<
InvoiceDetailDTO
>
list
=
invoicedetailMapping
.
toDto
(
domains
.
getContent
());
return
ResponseEntity
.
status
(
HttpStatus
.
OK
)
.
header
(
"x-page"
,
String
.
valueOf
(
context
.
getPageable
().
getPageNumber
()))
.
header
(
"x-per-page"
,
String
.
valueOf
(
context
.
getPageable
().
getPageSize
()))
.
header
(
"x-total"
,
String
.
valueOf
(
domains
.
getTotalElements
()))
.
body
(
list
);
}
@PreAuthorize
(
"hasAnyAuthority('ROLE_SUPERADMIN','iBizBusinessCentral-InvoiceDetail-searchDefault-all')"
)
@ApiOperation
(
value
=
"根据发票查询DEFAULT"
,
tags
=
{
"发票产品"
}
,
notes
=
"根据发票查询DEFAULT"
)
@RequestMapping
(
method
=
RequestMethod
.
POST
,
value
=
"/invoices/{invoice_id}/invoicedetails/searchdefault"
)
public
ResponseEntity
<
Page
<
InvoiceDetailDTO
>>
searchInvoiceDetailDefaultByInvoice
(
@PathVariable
(
"invoice_id"
)
String
invoice_id
,
@RequestBody
InvoiceDetailSearchContext
context
)
{
context
.
setN_invoiceid_eq
(
invoice_id
);
Page
<
InvoiceDetail
>
domains
=
invoicedetailService
.
searchDefault
(
context
)
;
return
ResponseEntity
.
status
(
HttpStatus
.
OK
)
.
body
(
new
PageImpl
(
invoicedetailMapping
.
toDto
(
domains
.
getContent
()),
context
.
getPageable
(),
domains
.
getTotalElements
()));
}
}
businesscentral-util/src/main/java/cn/ibizlab/businesscentral/util/rest/AppController.java
浏览文件 @
4a96b2a1
...
@@ -55,6 +55,10 @@ public class AppController {
...
@@ -55,6 +55,10 @@ public class AppController {
appData
.
put
(
"unires"
,
uniRes
);
appData
.
put
(
"unires"
,
uniRes
);
appData
.
put
(
"appmenu"
,
appMenu
);
appData
.
put
(
"appmenu"
,
appMenu
);
appData
.
put
(
"enablepermissionvalid"
,
enablePermissionValid
);
appData
.
put
(
"enablepermissionvalid"
,
enablePermissionValid
);
if
(
curUser
.
getSuperuser
()==
1
)
appData
.
put
(
"enablepermissionvalid"
,
false
);
else
appData
.
put
(
"enablepermissionvalid"
,
enablePermissionValid
);
return
ResponseEntity
.
status
(
HttpStatus
.
OK
).
body
(
appData
);
return
ResponseEntity
.
status
(
HttpStatus
.
OK
).
body
(
appData
);
}
}
...
...
编辑
预览
Markdown
格式
0%
请重试
or
添加新附件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
先完成此消息的编辑!
取消
想要评论请
注册
或
登录