Browse Source

增加手工打包代码生成

master
hejl 2 months ago
parent
commit
3d93d9f400
  1. 18
      win_text_editor/assets/config/uft_macro_list.yaml
  2. 7
      win_text_editor/lib/modules/memory_table/models/memory_table.dart
  3. 2
      win_text_editor/lib/modules/memory_table/widgets/memory_table_right_side.dart
  4. 8
      win_text_editor/lib/modules/uft_component/models/uft_component.dart
  5. 2
      win_text_editor/lib/modules/uft_component/widgets/uft_component_right_side.dart

18
win_text_editor/assets/config/uft_macro_list.yaml

@ -14,7 +14,7 @@ templates: @@ -14,7 +14,7 @@ templates:
[继续执行]
[记录为空][{{tableName}}]
{
[报错返回][ERR_???][{{#keyFields}}{{name}} = @{{name}}{{^isLast}}, {{/isLast}}{{/keyFields}}]
[报错返回][ERR_???][{{#keyFields}}@{{name}}{{^isLast}}, {{/isLast}}{{/keyFields}}]
}else{
}
@ -172,7 +172,7 @@ templates: @@ -172,7 +172,7 @@ templates:
获取组件:
body: |
{{#hasIndex}}[组件排序][{{name}}(index.name)]{{/hasIndex}}
[获取组件][{{name}}{{#hasIndex}}({{index.name}}){{/hasIndex}}][{{^hasIndex}}[@num][{{/hasIndex}}
[获取组件][{{name}}{{#hasIndex}}({{index.name}}){{/hasIndex}}][{{^hasIndex}}@num][{{/hasIndex}}
{{#hasIndex}}
{{#index.fields}}
{{name}} = @{{#partnerName}}{{partnerName}}.{{/partnerName}}{{name}}{{^isLast}}, {{/isLast}}
@ -187,7 +187,7 @@ templates: @@ -187,7 +187,7 @@ templates:
获取组件_ALL:
body: |
{{#hasIndex}}[组件排序][{{name}}(index.name)]{{/hasIndex}}
[获取组件][{{name}}{{#hasIndex}}({{index.name}}){{/hasIndex}}][{{^hasIndex}}[@num][{{/hasIndex}}
[获取组件][{{name}}{{#hasIndex}}({{index.name}}){{/hasIndex}}][{{^hasIndex}}@num][{{/hasIndex}}
{{#hasIndex}}
{{#index.fields}}
{{name}} = @{{#partnerName}}{{partnerName}}.{{/partnerName}}{{name}}{{^isLast}}, {{/isLast}}
@ -256,7 +256,7 @@ templates: @@ -256,7 +256,7 @@ templates:
普通调用:
body: |
<Z>[{{chineseName}}][
<M>[{{chineseName}}][
{{#selectedInput}}
{{name}} = @{{#partnerName}}{{partnerName}}.{{/partnerName}}{{name}}{{^isLast}},{{/isLast}}
{{/selectedInput}}
@ -280,7 +280,7 @@ templates: @@ -280,7 +280,7 @@ templates:
事务调用:
body: |
[事务处理开始]
<Z>[{{chineseName}}][
<M>[{{chineseName}}][
{{#selectedInput}}
{{name}} = @{{#partnerName}}{{partnerName}}.{{/partnerName}}{{name}}{{^isLast}},{{/isLast}}
{{/selectedInput}}
@ -304,7 +304,7 @@ templates: @@ -304,7 +304,7 @@ templates:
事务调用_ALL:
body: |
[事务处理开始]
<Z>[{{chineseName}}][
<M>[{{chineseName}}][
{{#input}}
{{name}} = @{{#partnerName}}{{partnerName}}.{{/partnerName}}{{name}}{{^isLast}},{{/isLast}}
{{/input}}
@ -333,4 +333,10 @@ templates: @@ -333,4 +333,10 @@ templates:
[记录日志][CNST_DLOG_ERROR][]["获取因子RS_{{functionNo}}失败"][]
}
lpIUFTContext->AsyncExecMsg((void*) lpOpenRisk, lpIUFTContext, (void*)&p_C{{factorParam}});
手工打包:
body: |
[手工打包头][{{#selectedFields}}{{name}}{{^isLast}}, {{/isLast}}{{/selectedFields}}]
[手工打包体][{{#selectedFields}}@{{parentName}}.{{name}}{{^isLast}}, {{/isLast}}{{/selectedFields}}]
[手工打包结束]

7
win_text_editor/lib/modules/memory_table/models/memory_table.dart

@ -70,6 +70,7 @@ class MemoryTable { @@ -70,6 +70,7 @@ class MemoryTable {
Map<String, dynamic> toMap() {
var index = selectIndexOrKey;
return {
'name': tableName,
'tableName': tableName,
'fields':
columns
@ -78,6 +79,7 @@ class MemoryTable { @@ -78,6 +79,7 @@ class MemoryTable {
'id': field.id,
'name': field.name,
'chineseName': field.chineseName,
'parentName': tableName,
'type': field.type,
'isLast': columns.indexOf(field) == columns.length - 1,
'partnerName':
@ -97,6 +99,7 @@ class MemoryTable { @@ -97,6 +99,7 @@ class MemoryTable {
'id': field.id,
'name': field.name,
'chineseName': field.chineseName,
'parentName': tableName,
'type': field.type,
'isLast': selectFields.indexOf(field) == selectFields.length - 1,
'partnerName':
@ -116,6 +119,7 @@ class MemoryTable { @@ -116,6 +119,7 @@ class MemoryTable {
index.fields.asMap().entries.map((entry) {
return {
'name': entry.value,
'parentName': tableName,
'partnerName':
codePartners
.firstWhere(
@ -123,7 +127,7 @@ class MemoryTable { @@ -123,7 +127,7 @@ class MemoryTable {
orElse: () => CodePartner(name: null, fields: []),
)
.name,
'isLast': entry.key == keyFields.length - 1,
'isLast': entry.key == index.fields.length - 1,
};
}).toList(),
'rule': index.rule,
@ -133,6 +137,7 @@ class MemoryTable { @@ -133,6 +137,7 @@ class MemoryTable {
keyFields.asMap().entries.map((entry) {
return {
'name': entry.value,
'parentName': tableName,
'partnerName':
codePartners
.firstWhere(

2
win_text_editor/lib/modules/memory_table/widgets/memory_table_right_side.dart

@ -46,7 +46,7 @@ class _MemoryTableRightSideState extends State<MemoryTableRightSide> { @@ -46,7 +46,7 @@ class _MemoryTableRightSideState extends State<MemoryTableRightSide> {
@override
Widget build(BuildContext context) {
final operations = ['获取记录', '获取记录数', '插入记录', '修改记录', '删除记录', '遍历记录'];
final operations = ['获取记录', '获取记录数', '插入记录', '修改记录', '删除记录', '遍历记录','手工打包'];
return CodeGenerationSection(
title: '生成代码',

8
win_text_editor/lib/modules/uft_component/models/uft_component.dart

@ -38,6 +38,7 @@ class UftComponent implements SelectableItem { @@ -38,6 +38,7 @@ class UftComponent implements SelectableItem {
'id': field.id,
'name': field.name,
'chineseName': field.chineseName,
'parentName': name,
'type': field.type,
'isLast': fields.indexOf(field) == fields.length - 1,
'partnerName':
@ -57,6 +58,7 @@ class UftComponent implements SelectableItem { @@ -57,6 +58,7 @@ class UftComponent implements SelectableItem {
'id': field.id,
'name': field.name,
'chineseName': field.chineseName,
'parentName': name,
'type': field.type,
'isLast': selectFields.indexOf(field) == selectFields.length - 1,
'partnerName':
@ -77,7 +79,11 @@ class UftComponent implements SelectableItem { @@ -77,7 +79,11 @@ class UftComponent implements SelectableItem {
'name': index.indexName,
'fields':
index.fields.asMap().entries.map((entry) {
return {'name': entry.value, 'isLast': entry.key == index.fields.length - 1};
return {
'name': entry.value,
'parentName': name,
'isLast': entry.key == index.fields.length - 1,
};
}).toList(),
'rule': index.rule,
},

2
win_text_editor/lib/modules/uft_component/widgets/uft_component_right_side.dart

@ -46,7 +46,7 @@ class _UftComponentRightSideState extends State<UftComponentRightSide> { @@ -46,7 +46,7 @@ class _UftComponentRightSideState extends State<UftComponentRightSide> {
@override
Widget build(BuildContext context) {
final operations = ['插入组件', '修改组件', '获取组件', '遍历组件', '组件大小', '尾部插入组件'];
final operations = ['插入组件', '修改组件', '获取组件', '遍历组件', '组件大小', '尾部插入组件', '手工打包'];
return CodeGenerationSection(
title: '生成代码',

Loading…
Cancel
Save