提交 646759bd 编写于 作者: ibizdev's avatar ibizdev

lab_gzf 发布系统代码

上级 749b3736
......@@ -3309,6 +3309,53 @@
}
]
},
{
"srfkey": "Product__StateCode",
"emptytext": "未定义",
"codelisttype":"static",
"items": [
{
"id": "1",
"label": "已停用",
"text": "已停用",
"data":"",
"codename":"Item_1",
"value": "1",
"disabled": false
}
, {
"id": "0",
"label": "有效",
"text": "有效",
"data":"",
"codename":"Item_0",
"value": "0",
"disabled": false
}
, {
"id": "3",
"label": "正在修订",
"text": "正在修订",
"data":"",
"codename":"Item_3",
"value": "3",
"disabled": false
}
, {
"id": "2",
"label": "草稿",
"text": "草稿",
"data":"",
"codename":"Item_2",
"value": "2",
"disabled": false
}
]
},
{
"srfkey": "Opportunity__StateCode",
"emptytext": "未定义",
......
......@@ -469,6 +469,16 @@
"viewtag": "24a93674ec4c976c08902a3e95421ca6",
"memo": ""
},
"productedit_datapanelview": {
"title": "头部信息编辑",
"caption": "产品",
"viewtype": "DEEDITVIEW",
"viewmodule": "Product",
"viewname": "ProductEdit_DataPanelView",
"viewfilename": "product-edit-data-panel-view",
"viewtag": "24c98ed0c280a28a4863eeb399b6bc10",
"memo": ""
},
"activitypointereditview": {
"title": "活动编辑视图",
"caption": "活动",
......@@ -829,6 +839,16 @@
"viewtag": "3de13dd6914e2465d23dab68ccea5cae",
"memo": "系统自动添加"
},
"producteffectivegridview": {
"title": "产品信息",
"caption": "产品",
"viewtype": "DEGRIDVIEW",
"viewmodule": "Product",
"viewname": "ProductEffectiveGridView",
"viewfilename": "product-effective-grid-view",
"viewtag": "3f03aae44f116d47c9285289e3935e89",
"memo": "系统自动添加"
},
"faxeditview": {
"title": "传真编辑视图",
"caption": "传真",
......@@ -1699,6 +1719,16 @@
"viewtag": "8dca8823a924f513bf8c52bc3d321cff",
"memo": "系统自动添加"
},
"productrevisegridview": {
"title": "产品信息",
"caption": "产品",
"viewtype": "DEGRIDVIEW",
"viewmodule": "Product",
"viewname": "ProductReviseGridView",
"viewfilename": "product-revise-grid-view",
"viewtag": "8f5c03f927ec6bf286aa1cc4f2024f72",
"memo": "系统自动添加"
},
"productsubstitutegridview": {
"title": "产品关系表格视图",
"caption": "产品替换",
......@@ -1929,6 +1959,16 @@
"viewtag": "9bf80730e83a74615919a0f0907505d4",
"memo": ""
},
"productstopgridview": {
"title": "产品信息",
"caption": "产品",
"viewtype": "DEGRIDVIEW",
"viewmodule": "Product",
"viewname": "ProductStopGridView",
"viewfilename": "product-stop-grid-view",
"viewtag": "9ee07f1bb550f9c8c723cced7999d62f",
"memo": "系统自动添加"
},
"opportunitylistexpview": {
"title": "商机信息",
"caption": "商机信息",
......@@ -2389,6 +2429,16 @@
"viewtag": "c607e5bc2c07ab2aca084e275ce677b7",
"memo": "系统自动添加"
},
"productstatetabview": {
"title": "产品状态分页视图",
"caption": "产品",
"viewtype": "DETABEXPVIEW",
"viewmodule": "Product",
"viewname": "ProductStateTabView",
"viewfilename": "product-state-tab-view",
"viewtag": "c67b638daa17df2f9ecf99fc1c396e2f",
"memo": ""
},
"websitecontenteditview": {
"title": "站点内容",
"caption": "站点内容",
......
......@@ -424,6 +424,13 @@ export default {
"2": "免收费用",
"empty": ""
},
Product__StateCode: {
"1": "已停用",
"0": "有效",
"3": "正在修订",
"2": "草稿",
"empty": ""
},
Opportunity__StateCode: {
"2": "丢单",
"0": "已开始",
......
......@@ -424,6 +424,13 @@ export default {
"2": "免收费用",
"empty": "",
},
Product__StateCode: {
"1": "已停用",
"0": "有效",
"3": "正在修订",
"2": "草稿",
"empty": "",
},
Opportunity__StateCode: {
"2": "丢单",
"0": "已开始",
......
......@@ -63,10 +63,18 @@ export default {
subjectname: "主题",
},
views: {
edit_datapanelview: {
caption: "产品",
title: "头部信息编辑",
},
infoview: {
caption: "产品",
title: "产品信息",
},
effectivegridview: {
caption: "产品",
title: "产品信息",
},
info_proinfo: {
caption: "产品",
title: "产品编辑视图",
......@@ -79,6 +87,14 @@ export default {
caption: "产品",
title: "产品数据看板视图",
},
revisegridview: {
caption: "产品",
title: "产品信息",
},
stopgridview: {
caption: "产品",
title: "产品信息",
},
pickupgridview: {
caption: "产品",
title: "产品选择表格视图",
......@@ -95,6 +111,28 @@ export default {
caption: "产品",
title: "产品数据选择视图",
},
statetabview: {
caption: "产品",
title: "产品状态分页视图",
},
},
edit_datapanel_form: {
details: {
group1: "产品基本信息",
formpage1: "基本信息",
srfupdatedate: "更新时间",
srforikey: "",
srfkey: "产品",
srfmajortext: "产品名称",
srftempmode: "",
srfuf: "",
srfdeid: "",
srfsourcekey: "",
statecode: "状态",
productid: "产品",
},
uiactions: {
},
},
proinfo_form: {
details: {
......@@ -124,12 +162,10 @@ export default {
uiactions: {
},
},
main_form: {
quickcreate_form: {
details: {
group1: "product基本信息",
group1: "产品基本信息",
formpage1: "基本信息",
group2: "操作信息",
formpage2: "其它",
srfupdatedate: "更新时间",
srforikey: "",
srfkey: "产品",
......@@ -138,20 +174,21 @@ export default {
srfuf: "",
srfdeid: "",
srfsourcekey: "",
productnumber: "产品 ID",
productname: "产品名称",
createman: "建立人",
createdate: "建立时间",
updateman: "更新人",
updatedate: "更新时间",
validfromdate: "有效期的开始日期",
validtodate: "有效期的结束日期",
productid: "产品",
},
uiactions: {
},
},
quickcreate_form: {
main_form: {
details: {
group1: "产品基本信息",
group1: "product基本信息",
formpage1: "基本信息",
group2: "操作信息",
formpage2: "其它",
srfupdatedate: "更新时间",
srforikey: "",
srfkey: "产品",
......@@ -160,10 +197,11 @@ export default {
srfuf: "",
srfdeid: "",
srfsourcekey: "",
productnumber: "产品 ID",
productname: "产品名称",
validfromdate: "有效期的开始日期",
validtodate: "有效期的结束日期",
createman: "建立人",
createdate: "建立时间",
updateman: "更新人",
updatedate: "更新时间",
productid: "产品",
},
uiactions: {
......@@ -192,6 +230,60 @@ export default {
tip: "关闭",
},
},
effectivegridviewtoolbar_toolbar: {
tbitem1_quickcreate: {
caption: "新建",
tip: "新建",
},
tbitem2: {
caption: "-",
tip: "",
},
tbitem4: {
caption: "Edit",
tip: "Edit {0}",
},
tbitem6: {
caption: "Copy",
tip: "Copy {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: "",
},
tbitem14_revise: {
caption: "修订",
tip: "修订",
},
tbitem14_stop: {
caption: "停用",
tip: "停用",
},
tbitem15: {
caption: "-",
tip: "",
},
tbitem19: {
caption: "Filter",
tip: "Filter",
},
},
editviewtoolbar_toolbar: {
tbitem3: {
caption: "Save",
......@@ -272,4 +364,108 @@ export default {
tip: "Filter",
},
},
revisegridviewtoolbar_toolbar: {
tbitem1_quickcreate: {
caption: "新建",
tip: "新建",
},
tbitem2: {
caption: "-",
tip: "",
},
tbitem4: {
caption: "Edit",
tip: "Edit {0}",
},
tbitem6: {
caption: "Copy",
tip: "Copy {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: "",
},
tbitem14_publish: {
caption: "发布",
tip: "发布",
},
tbitem14_stop: {
caption: "停用",
tip: "停用",
},
tbitem15: {
caption: "-",
tip: "",
},
tbitem19: {
caption: "Filter",
tip: "Filter",
},
},
stopgridviewtoolbar_toolbar: {
tbitem1_quickcreate: {
caption: "新建",
tip: "新建",
},
tbitem2: {
caption: "-",
tip: "",
},
tbitem4: {
caption: "Edit",
tip: "Edit {0}",
},
tbitem6: {
caption: "Copy",
tip: "Copy {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: "",
},
tbitem14_publish: {
caption: "发布",
tip: "发布",
},
tbitem15: {
caption: "-",
tip: "",
},
tbitem19: {
caption: "Filter",
tip: "Filter",
},
},
};
\ No newline at end of file
......@@ -62,10 +62,18 @@ export default {
subjectname: "主题",
},
views: {
edit_datapanelview: {
caption: "产品",
title: "头部信息编辑",
},
infoview: {
caption: "产品",
title: "产品信息",
},
effectivegridview: {
caption: "产品",
title: "产品信息",
},
info_proinfo: {
caption: "产品",
title: "产品编辑视图",
......@@ -78,6 +86,14 @@ export default {
caption: "产品",
title: "产品数据看板视图",
},
revisegridview: {
caption: "产品",
title: "产品信息",
},
stopgridview: {
caption: "产品",
title: "产品信息",
},
pickupgridview: {
caption: "产品",
title: "产品选择表格视图",
......@@ -94,6 +110,28 @@ export default {
caption: "产品",
title: "产品数据选择视图",
},
statetabview: {
caption: "产品",
title: "产品状态分页视图",
},
},
edit_datapanel_form: {
details: {
group1: "产品基本信息",
formpage1: "基本信息",
srfupdatedate: "更新时间",
srforikey: "",
srfkey: "产品",
srfmajortext: "产品名称",
srftempmode: "",
srfuf: "",
srfdeid: "",
srfsourcekey: "",
statecode: "状态",
productid: "产品",
},
uiactions: {
},
},
proinfo_form: {
details: {
......@@ -123,12 +161,10 @@ export default {
uiactions: {
},
},
main_form: {
quickcreate_form: {
details: {
group1: "product基本信息",
group1: "产品基本信息",
formpage1: "基本信息",
group2: "操作信息",
formpage2: "其它",
srfupdatedate: "更新时间",
srforikey: "",
srfkey: "产品",
......@@ -137,20 +173,21 @@ export default {
srfuf: "",
srfdeid: "",
srfsourcekey: "",
productnumber: "产品 ID",
productname: "产品名称",
createman: "建立人",
createdate: "建立时间",
updateman: "更新人",
updatedate: "更新时间",
validfromdate: "有效期的开始日期",
validtodate: "有效期的结束日期",
productid: "产品",
},
uiactions: {
},
},
quickcreate_form: {
main_form: {
details: {
group1: "产品基本信息",
group1: "product基本信息",
formpage1: "基本信息",
group2: "操作信息",
formpage2: "其它",
srfupdatedate: "更新时间",
srforikey: "",
srfkey: "产品",
......@@ -159,10 +196,11 @@ export default {
srfuf: "",
srfdeid: "",
srfsourcekey: "",
productnumber: "产品 ID",
productname: "产品名称",
validfromdate: "有效期的开始日期",
validtodate: "有效期的结束日期",
createman: "建立人",
createdate: "建立时间",
updateman: "更新人",
updatedate: "更新时间",
productid: "产品",
},
uiactions: {
......@@ -191,6 +229,60 @@ export default {
tip: "关闭",
},
},
effectivegridviewtoolbar_toolbar: {
tbitem1_quickcreate: {
caption: "新建",
tip: "新建",
},
tbitem2: {
caption: "-",
tip: "",
},
tbitem4: {
caption: "编辑",
tip: "编辑",
},
tbitem6: {
caption: "拷贝",
tip: "拷贝",
},
tbitem7: {
caption: "-",
tip: "",
},
tbitem8: {
caption: "删除",
tip: "删除",
},
tbitem9: {
caption: "-",
tip: "",
},
tbitem13: {
caption: "导出",
tip: "导出",
},
tbitem10: {
caption: "-",
tip: "",
},
tbitem14_revise: {
caption: "修订",
tip: "修订",
},
tbitem14_stop: {
caption: "停用",
tip: "停用",
},
tbitem15: {
caption: "-",
tip: "",
},
tbitem19: {
caption: "过滤",
tip: "过滤",
},
},
editviewtoolbar_toolbar: {
tbitem3: {
caption: "保存",
......@@ -271,4 +363,108 @@ export default {
tip: "过滤",
},
},
revisegridviewtoolbar_toolbar: {
tbitem1_quickcreate: {
caption: "新建",
tip: "新建",
},
tbitem2: {
caption: "-",
tip: "",
},
tbitem4: {
caption: "编辑",
tip: "编辑",
},
tbitem6: {
caption: "拷贝",
tip: "拷贝",
},
tbitem7: {
caption: "-",
tip: "",
},
tbitem8: {
caption: "删除",
tip: "删除",
},
tbitem9: {
caption: "-",
tip: "",
},
tbitem13: {
caption: "导出",
tip: "导出",
},
tbitem10: {
caption: "-",
tip: "",
},
tbitem14_publish: {
caption: "发布",
tip: "发布",
},
tbitem14_stop: {
caption: "停用",
tip: "停用",
},
tbitem15: {
caption: "-",
tip: "",
},
tbitem19: {
caption: "过滤",
tip: "过滤",
},
},
stopgridviewtoolbar_toolbar: {
tbitem1_quickcreate: {
caption: "新建",
tip: "新建",
},
tbitem2: {
caption: "-",
tip: "",
},
tbitem4: {
caption: "编辑",
tip: "编辑",
},
tbitem6: {
caption: "拷贝",
tip: "拷贝",
},
tbitem7: {
caption: "-",
tip: "",
},
tbitem8: {
caption: "删除",
tip: "删除",
},
tbitem9: {
caption: "-",
tip: "",
},
tbitem13: {
caption: "导出",
tip: "导出",
},
tbitem10: {
caption: "-",
tip: "",
},
tbitem14_publish: {
caption: "发布",
tip: "发布",
},
tbitem15: {
caption: "-",
tip: "",
},
tbitem19: {
caption: "过滤",
tip: "过滤",
},
},
};
\ No newline at end of file
......@@ -3317,6 +3317,53 @@ mock.onGet('./assets/json/data-dictionary.json').reply((config: any) => {
},
]
},
{
srfkey: "Product__StateCode",
emptytext: "未定义",
"codelisttype":"static",
items: [
{
id: "1",
label: "已停用",
text: "已停用",
"data":"",
"codename":"Item_1",
value: "1",
disabled: false,
},
{
id: "0",
label: "有效",
text: "有效",
"data":"",
"codename":"Item_0",
value: "0",
disabled: false,
},
{
id: "3",
label: "正在修订",
text: "正在修订",
"data":"",
"codename":"Item_3",
value: "3",
disabled: false,
},
{
id: "2",
label: "草稿",
text: "草稿",
"data":"",
"codename":"Item_2",
value: "2",
disabled: false,
},
]
},
{
srfkey: "Opportunity__StateCode",
emptytext: "未定义",
......
......@@ -233,6 +233,82 @@ mock.onPost(new RegExp(/^\/products\/?([a-zA-Z0-9\-\;]{0,35})\/checkkey$/)).repl
return [status, data];
});
// Publish
mock.onPost(new RegExp(/^\/products\/?([a-zA-Z0-9\-\;]{0,35})\/publish$/)).reply((config: any) => {
console.groupCollapsed("实体:product 方法: Publish");
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> = ['productid'];
const matchArray:any = new RegExp(/^\/products\/([a-zA-Z0-9\-\;]{1,35})\/publish$/).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.productid, tempValue.productid));
let data = JSON.parse(config.data);
mockDatas.forEach((item)=>{
if(item['productid'] == tempValue['productid'] ){
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];
});
// Revise
mock.onPost(new RegExp(/^\/products\/?([a-zA-Z0-9\-\;]{0,35})\/revise$/)).reply((config: any) => {
console.groupCollapsed("实体:product 方法: Revise");
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> = ['productid'];
const matchArray:any = new RegExp(/^\/products\/([a-zA-Z0-9\-\;]{1,35})\/revise$/).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.productid, tempValue.productid));
let data = JSON.parse(config.data);
mockDatas.forEach((item)=>{
if(item['productid'] == tempValue['productid'] ){
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];
});
// Save
mock.onPost(new RegExp(/^\/products\/?([a-zA-Z0-9\-\;]{0,35})\/save$/)).reply((config: any) => {
console.groupCollapsed("实体:product 方法: Save");
......@@ -270,6 +346,44 @@ mock.onPost(new RegExp(/^\/products\/?([a-zA-Z0-9\-\;]{0,35})\/save$/)).reply((c
console.groupEnd();
return [status, data];
});
// Stop
mock.onPost(new RegExp(/^\/products\/?([a-zA-Z0-9\-\;]{0,35})\/stop$/)).reply((config: any) => {
console.groupCollapsed("实体:product 方法: Stop");
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> = ['productid'];
const matchArray:any = new RegExp(/^\/products\/([a-zA-Z0-9\-\;]{1,35})\/stop$/).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.productid, tempValue.productid));
let data = JSON.parse(config.data);
mockDatas.forEach((item)=>{
if(item['productid'] == tempValue['productid'] ){
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(/^\/products\/fetchdefault$/)).reply((config: any) => {
......
......@@ -383,6 +383,14 @@ mock.onGet('./assets/json/view-config.json').reply((config: any) => {
"viewname": "IBizListGridView",
"viewtag": "24a93674ec4c976c08902a3e95421ca6"
},
"productedit_datapanelview": {
"title": "头部信息编辑",
"caption": "产品",
"viewtype": "DEEDITVIEW",
"viewmodule": "Product",
"viewname": "ProductEdit_DataPanelView",
"viewtag": "24c98ed0c280a28a4863eeb399b6bc10"
},
"activitypointereditview": {
"title": "活动编辑视图",
"caption": "活动",
......@@ -671,6 +679,14 @@ mock.onGet('./assets/json/view-config.json').reply((config: any) => {
"viewname": "CompetitorPickupGridView",
"viewtag": "3de13dd6914e2465d23dab68ccea5cae"
},
"producteffectivegridview": {
"title": "产品信息",
"caption": "产品",
"viewtype": "DEGRIDVIEW",
"viewmodule": "Product",
"viewname": "ProductEffectiveGridView",
"viewtag": "3f03aae44f116d47c9285289e3935e89"
},
"faxeditview": {
"title": "传真编辑视图",
"caption": "传真",
......@@ -1367,6 +1383,14 @@ mock.onGet('./assets/json/view-config.json').reply((config: any) => {
"viewname": "IncidentCustomerPickupGridView",
"viewtag": "8dca8823a924f513bf8c52bc3d321cff"
},
"productrevisegridview": {
"title": "产品信息",
"caption": "产品",
"viewtype": "DEGRIDVIEW",
"viewmodule": "Product",
"viewname": "ProductReviseGridView",
"viewtag": "8f5c03f927ec6bf286aa1cc4f2024f72"
},
"productsubstitutegridview": {
"title": "产品关系表格视图",
"caption": "产品替换",
......@@ -1551,6 +1575,14 @@ mock.onGet('./assets/json/view-config.json').reply((config: any) => {
"viewname": "CompetitorSummary",
"viewtag": "9bf80730e83a74615919a0f0907505d4"
},
"productstopgridview": {
"title": "产品信息",
"caption": "产品",
"viewtype": "DEGRIDVIEW",
"viewmodule": "Product",
"viewname": "ProductStopGridView",
"viewtag": "9ee07f1bb550f9c8c723cced7999d62f"
},
"opportunitylistexpview": {
"title": "商机信息",
"caption": "商机信息",
......@@ -1919,6 +1951,14 @@ mock.onGet('./assets/json/view-config.json').reply((config: any) => {
"viewname": "AccountInfo_Distribution",
"viewtag": "c607e5bc2c07ab2aca084e275ce677b7"
},
"productstatetabview": {
"title": "产品状态分页视图",
"caption": "产品",
"viewtype": "DETABEXPVIEW",
"viewmodule": "Product",
"viewname": "ProductStateTabView",
"viewtag": "c67b638daa17df2f9ecf99fc1c396e2f"
},
"websitecontenteditview": {
"title": "站点内容",
"caption": "站点内容",
......
......@@ -26,8 +26,8 @@ export const PageComponents = {
Vue.component('connection-role-pickup-view', () => import('@pages/runtime/connection-role-pickup-view/connection-role-pickup-view.vue'));
Vue.component('invoice-grid-view', () => import('@pages/finance/invoice-grid-view/invoice-grid-view.vue'));
Vue.component('sales-literature-quick-create-view', () => import('@pages/sales/sales-literature-quick-create-view/sales-literature-quick-create-view.vue'));
Vue.component('quote-info', () => import('@pages/sales/quote-info/quote-info.vue'));
Vue.component('contact-usable-grid-view', () => import('@pages/base/contact-usable-grid-view/contact-usable-grid-view.vue'));
Vue.component('quote-info', () => import('@pages/sales/quote-info/quote-info.vue'));
Vue.component('opportunity-win-grid-view', () => import('@pages/sales/opportunity-win-grid-view/opportunity-win-grid-view.vue'));
Vue.component('ibiz-list-grid-view', () => import('@pages/marketing/ibiz-list-grid-view/ibiz-list-grid-view.vue'));
Vue.component('discount-type-pickup-view', () => import('@pages/sales/discount-type-pickup-view/discount-type-pickup-view.vue'));
......@@ -102,6 +102,7 @@ export const PageComponents = {
Vue.component('lead-info', () => import('@pages/sales/lead-info/lead-info.vue'));
Vue.component('sales-order-finish-grid-view', () => import('@pages/sales/sales-order-finish-grid-view/sales-order-finish-grid-view.vue'));
Vue.component('lead-on-grid-view', () => import('@pages/sales/lead-on-grid-view/lead-on-grid-view.vue'));
Vue.component('product-revise-grid-view', () => import('@pages/product/product-revise-grid-view/product-revise-grid-view.vue'));
Vue.component('transaction-currency-edit-view', () => import('@pages/base/transaction-currency-edit-view/transaction-currency-edit-view.vue'));
Vue.component('sales-order-detail-soproduct-grid-view', () => import('@pages/sales/sales-order-detail-soproduct-grid-view/sales-order-detail-soproduct-grid-view.vue'));
Vue.component('incident-info-incident-view', () => import('@pages/service/incident-info-incident-view/incident-info-incident-view.vue'));
......@@ -110,18 +111,20 @@ export const PageComponents = {
Vue.component('quote-state-tab-view', () => import('@pages/sales/quote-state-tab-view/quote-state-tab-view.vue'));
Vue.component('sales-order-summary-view', () => import('@pages/sales/sales-order-summary-view/sales-order-summary-view.vue'));
Vue.component('quote-detail-edit-view', () => import('@pages/sales/quote-detail-edit-view/quote-detail-edit-view.vue'));
Vue.component('product-stop-grid-view', () => import('@pages/product/product-stop-grid-view/product-stop-grid-view.vue'));
Vue.component('quote-edit-view', () => import('@pages/sales/quote-edit-view/quote-edit-view.vue'));
Vue.component('incident-grid-view', () => import('@pages/service/incident-grid-view/incident-grid-view.vue'));
Vue.component('account-quick-create', () => import('@pages/base/account-quick-create/account-quick-create.vue'));
Vue.component('incident-edit-chlid-incident', () => import('@pages/service/incident-edit-chlid-incident/incident-edit-chlid-incident.vue'));
Vue.component('product-price-level-pro-prilv-grid-view', () => import('@pages/product/product-price-level-pro-prilv-grid-view/product-price-level-pro-prilv-grid-view.vue'));
Vue.component('list-account-by-list', () => import('@pages/marketing/list-account-by-list/list-account-by-list.vue'));
Vue.component('campaign-response-by-parent-key', () => import('@pages/marketing/campaign-response-by-parent-key/campaign-response-by-parent-key.vue'));
Vue.component('product-info-pro-info', () => import('@pages/product/product-info-pro-info/product-info-pro-info.vue'));
Vue.component('campaign-response-by-parent-key', () => import('@pages/marketing/campaign-response-by-parent-key/campaign-response-by-parent-key.vue'));
Vue.component('sales-literature-summary-view', () => import('@pages/sales/sales-literature-summary-view/sales-literature-summary-view.vue'));
Vue.component('lead-pickup-view', () => import('@pages/sales/lead-pickup-view/lead-pickup-view.vue'));
Vue.component('invoice-state-tab-view', () => import('@pages/finance/invoice-state-tab-view/invoice-state-tab-view.vue'));
Vue.component('lead-edit-data-panel-view', () => import('@pages/sales/lead-edit-data-panel-view/lead-edit-data-panel-view.vue'));
Vue.component('product-state-tab-view', () => import('@pages/product/product-state-tab-view/product-state-tab-view.vue'));
Vue.component('setting', () => import('@pages/ungroup/setting/setting.vue'));
Vue.component('invoice-quick-create-view', () => import('@pages/finance/invoice-quick-create-view/invoice-quick-create-view.vue'));
Vue.component('competitor-product-comp-pro-grid-view', () => import('@pages/sales/competitor-product-comp-pro-grid-view/competitor-product-comp-pro-grid-view.vue'));
......@@ -156,8 +159,8 @@ export const PageComponents = {
Vue.component('lead-competitor-lead-grid-view', () => import('@pages/sales/lead-competitor-lead-grid-view/lead-competitor-lead-grid-view.vue'));
Vue.component('metric-pickup-view', () => import('@pages/base/metric-pickup-view/metric-pickup-view.vue'));
Vue.component('lead-status-tab-view', () => import('@pages/sales/lead-status-tab-view/lead-status-tab-view.vue'));
Vue.component('sales-order-quick-create-view', () => import('@pages/sales/sales-order-quick-create-view/sales-order-quick-create-view.vue'));
Vue.component('lead-quick-create', () => import('@pages/sales/lead-quick-create/lead-quick-create.vue'));
Vue.component('sales-order-quick-create-view', () => import('@pages/sales/sales-order-quick-create-view/sales-order-quick-create-view.vue'));
Vue.component('competitor-pickup-grid-view', () => import('@pages/sales/competitor-pickup-grid-view/competitor-pickup-grid-view.vue'));
Vue.component('price-level-pickup-view', () => import('@pages/product/price-level-pickup-view/price-level-pickup-view.vue'));
Vue.component('incident-customer-pickup-view', () => import('@pages/service/incident-customer-pickup-view/incident-customer-pickup-view.vue'));
......@@ -225,6 +228,7 @@ export const PageComponents = {
Vue.component('competitor-pickup-view', () => import('@pages/sales/competitor-pickup-view/competitor-pickup-view.vue'));
Vue.component('invoice-cancel-grid-view', () => import('@pages/finance/invoice-cancel-grid-view/invoice-cancel-grid-view.vue'));
Vue.component('product-sales-literature-sal-lit-pro-edit-view', () => import('@pages/sales/product-sales-literature-sal-lit-pro-edit-view/product-sales-literature-sal-lit-pro-edit-view.vue'));
Vue.component('product-effective-grid-view', () => import('@pages/product/product-effective-grid-view/product-effective-grid-view.vue'));
Vue.component('account-stop-grid-view', () => import('@pages/base/account-stop-grid-view/account-stop-grid-view.vue'));
Vue.component('connection-role-pickup-grid-view', () => import('@pages/runtime/connection-role-pickup-grid-view/connection-role-pickup-grid-view.vue'));
Vue.component('account-inner-pickup-view', () => import('@pages/base/account-inner-pickup-view/account-inner-pickup-view.vue'));
......
<studio-view-style2 viewName="producteffectivegridview" viewTitle="产品信息" class='degridview product-effective-grid-view'>
<template slot='title'>
<span class='caption-info'>{{$t(model.srfTitle)}}</span>
</template>
<i-input slot="quickSearch" v-show="!isExpandSearchForm" v-model="query" search @on-search="onSearch($event)"/>
<template slot="toolbar">
<view-toolbar mode="STYLE2" :model="toolBarModels" @item-click="toolbar_click($event)"/> </template>
<template slot="searchForm">
<view_searchform
:viewState="viewState"
:viewparams="viewparams"
:context="context"
:showBusyIndicator="true"
v-show="isExpandSearchForm"
loaddraftAction="FilterGetDraft"
loadAction="FilterGet"
name="searchform"
ref='searchform'
@save="searchform_save($event)"
@search="searchform_search($event)"
@load="searchform_load($event)"
@closeview="closeView($event)">
</view_searchform>
</template>
<view_grid
:viewState="viewState"
:viewparams="viewparams"
:context="context"
:isSingleSelect="isGridSingleSelect"
:showBusyIndicator="true"
:isOpenEdit="false"
:gridRowActiveMode="gridRowActiveMode"
@save="onSave.apply(_self, arguments)"
updateAction=""
removeAction="Remove"
loaddraftAction=""
loadAction=""
createAction=""
fetchAction="FetchEffective"
:newdata="newdata.bind(_self)"
:opendata="opendata.bind(_self)"
name="grid"
ref='grid'
@selectionchange="grid_selectionchange($event)"
@beforeload="grid_beforeload($event)"
@rowdblclick="grid_rowdblclick($event)"
@remove="grid_remove($event)"
@load="grid_load($event)"
@closeview="closeView($event)">
</view_grid>
</studio-view-style2>
\ No newline at end of file
<template src="./product-effective-grid-view.html"/>
<script lang='tsx'>
import { Component } from 'vue-property-decorator';
import { VueLifeCycleProcessing } from '@/studio-core';
import { ProductEffectiveGridViewBase } from './product-effective-grid-view-base';
import view_grid from '@widgets/product/main-grid/main-grid.vue';
import view_searchform from '@widgets/product/default-searchform/default-searchform.vue';
/**
* 产品信息视图
*
* @export
* @class ProductEffectiveGridView
* @extends {ProductEffectiveGridViewBase}
*/
@Component({
components: {
view_grid,
view_searchform,
}
})
@VueLifeCycleProcessing()
export default class ProductEffectiveGridView extends ProductEffectiveGridViewBase { }
</script>
<studio-view-style2 viewName="productrevisegridview" viewTitle="产品信息" class='degridview product-revise-grid-view'>
<template slot='title'>
<span class='caption-info'>{{$t(model.srfTitle)}}</span>
</template>
<i-input slot="quickSearch" v-show="!isExpandSearchForm" v-model="query" search @on-search="onSearch($event)"/>
<template slot="toolbar">
<view-toolbar mode="STYLE2" :model="toolBarModels" @item-click="toolbar_click($event)"/> </template>
<template slot="searchForm">
<view_searchform
:viewState="viewState"
:viewparams="viewparams"
:context="context"
:showBusyIndicator="true"
v-show="isExpandSearchForm"
loaddraftAction="FilterGetDraft"
loadAction="FilterGet"
name="searchform"
ref='searchform'
@save="searchform_save($event)"
@search="searchform_search($event)"
@load="searchform_load($event)"
@closeview="closeView($event)">
</view_searchform>
</template>
<view_grid
:viewState="viewState"
:viewparams="viewparams"
:context="context"
:isSingleSelect="isGridSingleSelect"
:showBusyIndicator="true"
:isOpenEdit="false"
:gridRowActiveMode="gridRowActiveMode"
@save="onSave.apply(_self, arguments)"
updateAction=""
removeAction="Remove"
loaddraftAction=""
loadAction=""
createAction=""
fetchAction="FetchRevise"
:newdata="newdata.bind(_self)"
:opendata="opendata.bind(_self)"
name="grid"
ref='grid'
@selectionchange="grid_selectionchange($event)"
@beforeload="grid_beforeload($event)"
@rowdblclick="grid_rowdblclick($event)"
@remove="grid_remove($event)"
@load="grid_load($event)"
@closeview="closeView($event)">
</view_grid>
</studio-view-style2>
\ No newline at end of file
<template src="./product-revise-grid-view.html"/>
<script lang='tsx'>
import { Component } from 'vue-property-decorator';
import { VueLifeCycleProcessing } from '@/studio-core';
import { ProductReviseGridViewBase } from './product-revise-grid-view-base';
import view_grid from '@widgets/product/main-grid/main-grid.vue';
import view_searchform from '@widgets/product/default-searchform/default-searchform.vue';
/**
* 产品信息视图
*
* @export
* @class ProductReviseGridView
* @extends {ProductReviseGridViewBase}
*/
@Component({
components: {
view_grid,
view_searchform,
}
})
@VueLifeCycleProcessing()
export default class ProductReviseGridView extends ProductReviseGridViewBase { }
</script>
import { Subject } from 'rxjs';
import { TabExpViewBase } from '@/studio-core';
import ProductService from '@/service/product/product-service';
import TabExpViewEngine from '@engine/view/tab-exp-view-engine';
/**
* 产品状态分页视图视图基类
*
* @export
* @class ProductStateTabViewBase
* @extends {TabExpViewBase}
*/
export class ProductStateTabViewBase extends TabExpViewBase {
/**
* 视图对应应用实体名称
*
* @protected
* @type {string}
* @memberof ProductStateTabViewBase
*/
protected appDeName: string = 'product';
/**
* 应用实体主键
*
* @protected
* @type {string}
* @memberof ProductStateTabViewBase
*/
protected appDeKey: string = 'productid';
/**
* 应用实体主信息
*
* @protected
* @type {string}
* @memberof ProductStateTabViewBase
*/
protected appDeMajor: string = 'productname';
/**
* 实体服务对象
*
* @type {ProductService}
* @memberof ProductStateTabViewBase
*/
protected appEntityService: ProductService = new ProductService;
/**
* 计数器服务对象集合
*
* @protected
* @type {Array<*>}
* @memberof ProductStateTabViewBase
*/
protected counterServiceArray: Array<any> = [];
/**
* 视图模型数据
*
* @protected
* @type {*}
* @memberof ProductStateTabViewBase
*/
protected model: any = {
srfCaption: 'entities.product.views.statetabview.caption',
srfTitle: 'entities.product.views.statetabview.title',
srfSubTitle: 'entities.product.views.statetabview.subtitle',
dataInfo: ''
}
/**
* 容器模型
*
* @protected
* @type {*}
* @memberof ProductStateTabViewBase
*/
protected containerModel: any = {
view_tabexppanel: { name: 'tabexppanel', type: 'TABEXPPANEL' },
};
/**
* 视图唯一标识
*
* @protected
* @type {string}
* @memberof ViewBase
*/
protected viewtag: string = 'c67b638daa17df2f9ecf99fc1c396e2f';
/**
* 视图引擎
*
* @public
* @type {Engine}
* @memberof ProductStateTabViewBase
*/
public engine: TabExpViewEngine = new TabExpViewEngine();
/**
* 引擎初始化
*
* @public
* @memberof ProductStateTabViewBase
*/
public engineInit(): void {
this.engine.init({
view: this,
keyPSDEField: 'product',
majorPSDEField: 'productname',
isLoadDefault: true,
});
}
}
\ No newline at end of file
<studio-view-style2 viewName="productstatetabview" viewTitle="产品状态分页视图" class='detabexpview product-state-tab-view'>
<view_tabexppanel
:viewState="viewState"
:viewparams="viewparams"
:context="context"
name="tabexppanel"
ref='tabexppanel'
@closeview="closeView($event)">
</view_tabexppanel>
</studio-view-style2>
\ No newline at end of file
<template src="./product-state-tab-view.html"/>
<script lang='tsx'>
import { Component } from 'vue-property-decorator';
import { VueLifeCycleProcessing } from '@/studio-core';
import { ProductStateTabViewBase } from './product-state-tab-view-base';
import view_tabexppanel from '@widgets/product/state-tab-viewtabexppanel-tabexppanel/state-tab-viewtabexppanel-tabexppanel.vue';
/**
* 产品状态分页视图视图
*
* @export
* @class ProductStateTabView
* @extends {ProductStateTabViewBase}
*/
@Component({
components: {
view_tabexppanel,
}
})
@VueLifeCycleProcessing()
export default class ProductStateTabView extends ProductStateTabViewBase { }
</script>
<studio-view-style2 viewName="productstopgridview" viewTitle="产品信息" class='degridview product-stop-grid-view'>
<template slot='title'>
<span class='caption-info'>{{$t(model.srfTitle)}}</span>
</template>
<i-input slot="quickSearch" v-show="!isExpandSearchForm" v-model="query" search @on-search="onSearch($event)"/>
<template slot="toolbar">
<view-toolbar mode="STYLE2" :model="toolBarModels" @item-click="toolbar_click($event)"/> </template>
<template slot="searchForm">
<view_searchform
:viewState="viewState"
:viewparams="viewparams"
:context="context"
:showBusyIndicator="true"
v-show="isExpandSearchForm"
loaddraftAction="FilterGetDraft"
loadAction="FilterGet"
name="searchform"
ref='searchform'
@save="searchform_save($event)"
@search="searchform_search($event)"
@load="searchform_load($event)"
@closeview="closeView($event)">
</view_searchform>
</template>
<view_grid
:viewState="viewState"
:viewparams="viewparams"
:context="context"
:isSingleSelect="isGridSingleSelect"
:showBusyIndicator="true"
:isOpenEdit="false"
:gridRowActiveMode="gridRowActiveMode"
@save="onSave.apply(_self, arguments)"
updateAction=""
removeAction="Remove"
loaddraftAction=""
loadAction=""
createAction=""
fetchAction="FetchStop"
:newdata="newdata.bind(_self)"
:opendata="opendata.bind(_self)"
name="grid"
ref='grid'
@selectionchange="grid_selectionchange($event)"
@beforeload="grid_beforeload($event)"
@rowdblclick="grid_rowdblclick($event)"
@remove="grid_remove($event)"
@load="grid_load($event)"
@closeview="closeView($event)">
</view_grid>
</studio-view-style2>
\ No newline at end of file
<template src="./product-stop-grid-view.html"/>
<script lang='tsx'>
import { Component } from 'vue-property-decorator';
import { VueLifeCycleProcessing } from '@/studio-core';
import { ProductStopGridViewBase } from './product-stop-grid-view-base';
import view_grid from '@widgets/product/main-grid/main-grid.vue';
import view_searchform from '@widgets/product/default-searchform/default-searchform.vue';
/**
* 产品信息视图
*
* @export
* @class ProductStopGridView
* @extends {ProductStopGridViewBase}
*/
@Component({
components: {
view_grid,
view_searchform,
}
})
@VueLifeCycleProcessing()
export default class ProductStopGridView extends ProductStopGridViewBase { }
</script>
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
......@@ -221,7 +221,7 @@ export class Info_AllEditFormBase extends EditFormControlBase {
'defaultpricelevelname',
], uiActionGroup: { caption: '编辑_账户信息', langbase: 'entities.account.info_all_form', extractMode: 'ITEM', details: [{ name: 'group1_uc040f39', caption: '编辑', uiactiontag: 'account_edit_accountinfo', icon: 'fa fa-pencil',isShowCaption:false,isShowIcon:true }] } }),
grouppanel1: new FormGroupPanelModel({ caption: '地址信息', detailType: 'GROUPPANEL', name: 'grouppanel1', visible: true, isShowCaption: true, form: this, showMoreMode: 2, controlledItems: [
grouppanel1: new FormGroupPanelModel({ caption: '地址信息', detailType: 'GROUPPANEL', name: 'grouppanel1', visible: true, isShowCaption: true, form: this, showMoreMode: 2, anchorPoints: ['address1_country', ], controlledItems: [
'address1_addressid',
'address1_name',
'address1_addresstypecode',
......
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册