diff --git a/zero-doc/script/rs/doc-clause.json b/zero-doc/script/rs/doc-clause.json new file mode 100644 index 0000000000000000000000000000000000000000..82830367b94a0adeaff1301511c3a33dda3e7421 --- /dev/null +++ b/zero-doc/script/rs/doc-clause.json @@ -0,0 +1,7 @@ +{ + "name": "条款", + "module": "doc.clause", + "identifier": "d.doc.clause", + "api": "doc-clause", + "type": "resource.document" +} \ No newline at end of file diff --git a/zero-doc/src/main/jib/io/horizon/spi/dict/DocClauseDict.java b/zero-doc/src/main/jib/io/horizon/spi/dict/DocClauseDict.java new file mode 100644 index 0000000000000000000000000000000000000000..15a3588600d1de8b428d17d1725171a62f5e2c50 --- /dev/null +++ b/zero-doc/src/main/jib/io/horizon/spi/dict/DocClauseDict.java @@ -0,0 +1,30 @@ +package io.horizon.spi.dict; + +import cn.vertxup.doc.domain.tables.daos.DDocClauseDao; +import io.horizon.atom.datamation.KDictSource; +import io.horizon.spi.component.DictionaryPlugin; +import io.vertx.core.Future; +import io.vertx.core.MultiMap; +import io.vertx.core.json.JsonArray; +import io.vertx.up.eon.KName; +import io.vertx.up.unity.Ux; +import io.vertx.up.util.Ut; + +/* + * Dict for `resource.docs` here + */ +public class DocClauseDict implements DictionaryPlugin { + + @Override + public Future fetchAsync(final KDictSource source, + final MultiMap paramMap) { + final String sigma = paramMap.get(KName.SIGMA); + if (Ut.isNotNil(sigma)) { + return Ux.Jooq.on(DDocClauseDao.class) + .fetchAsync(KName.SIGMA, sigma) + .compose(Ux::futureA); + } else { + return Ux.future(new JsonArray()); + } + } +} diff --git a/zero-doc/src/main/jib/io/horizon/spi/dict/DocDict.java b/zero-doc/src/main/jib/io/horizon/spi/dict/DocDict.java new file mode 100644 index 0000000000000000000000000000000000000000..a1cf0a614c47c74c911969a94a4fe892dfec8d2d --- /dev/null +++ b/zero-doc/src/main/jib/io/horizon/spi/dict/DocDict.java @@ -0,0 +1,30 @@ +package io.horizon.spi.dict; + +import cn.vertxup.doc.domain.tables.daos.DDocDao; +import io.horizon.atom.datamation.KDictSource; +import io.horizon.spi.component.DictionaryPlugin; +import io.vertx.core.Future; +import io.vertx.core.MultiMap; +import io.vertx.core.json.JsonArray; +import io.vertx.up.eon.KName; +import io.vertx.up.unity.Ux; +import io.vertx.up.util.Ut; + +/* + * Dict for `resource.docs` here + */ +public class DocDict implements DictionaryPlugin { + + @Override + public Future fetchAsync(final KDictSource source, + final MultiMap paramMap) { + final String sigma = paramMap.get(KName.SIGMA); + if (Ut.isNotNil(sigma)) { + return Ux.Jooq.on(DDocDao.class) + .fetchAsync(KName.SIGMA, sigma) + .compose(Ux::futureA); + } else { + return Ux.future(new JsonArray()); + } + } +} diff --git a/zero-doc/src/main/resources/plugin/doc/oob/cab/d.doc.clause.xlsx b/zero-doc/src/main/resources/plugin/doc/oob/cab/d.doc.clause.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..f11b8d62d0f9449baa5ae3a363899d2075e05e80 Binary files /dev/null and b/zero-doc/src/main/resources/plugin/doc/oob/cab/d.doc.clause.xlsx differ diff --git a/zero-doc/src/main/resources/plugin/doc/oob/initialize.json b/zero-doc/src/main/resources/plugin/doc/oob/initialize.json index 23f6af8209eb052d5dfd11de33a6c65712d0c4a6..975693e8e050898e96331c5eef473f55dfe4bef8 100644 --- a/zero-doc/src/main/resources/plugin/doc/oob/initialize.json +++ b/zero-doc/src/main/resources/plugin/doc/oob/initialize.json @@ -1,12 +1,14 @@ [ "plugin/doc/oob/cab/d.admin.xlsx", "plugin/doc/oob/cab/d.comment.xlsx", + "plugin/doc/oob/cab/d.doc.clause.xlsx", "plugin/doc/oob/cab/d.doc.xlsx", "plugin/doc/oob/cab/d.paper.xlsx", "plugin/doc/oob/data/doc.directory.tree.xlsx", "plugin/doc/oob/data/doc.directory.xlsx", "plugin/doc/oob/role/ADMIN.SUPER/falcon.d.admin.xlsx", "plugin/doc/oob/role/ADMIN.SUPER/falcon.d.comment.xlsx", + "plugin/doc/oob/role/ADMIN.SUPER/falcon.d.doc.clause.xlsx", "plugin/doc/oob/role/ADMIN.SUPER/falcon.d.doc.xlsx", "plugin/doc/oob/role/ADMIN.SUPER/falcon.d.paper.xlsx" ] \ No newline at end of file diff --git a/zero-doc/src/main/resources/plugin/doc/oob/module.json b/zero-doc/src/main/resources/plugin/doc/oob/module.json index a2d57743f1d980677d096d1156acc3f727f376d8..c41bf6e96288ba250a61cd1e4ce5a0ac637fb511 100644 --- a/zero-doc/src/main/resources/plugin/doc/oob/module.json +++ b/zero-doc/src/main/resources/plugin/doc/oob/module.json @@ -1,5 +1,6 @@ [ "d.doc", "d.paper", - "d.comment" + "d.comment", + "d.doc.clause" ] \ No newline at end of file diff --git a/zero-doc/src/main/resources/plugin/doc/oob/module/crud/d.doc.clause.json b/zero-doc/src/main/resources/plugin/doc/oob/module/crud/d.doc.clause.json new file mode 100644 index 0000000000000000000000000000000000000000..3b661e120f19bd44568e18a86aee006191a629c2 --- /dev/null +++ b/zero-doc/src/main/resources/plugin/doc/oob/module/crud/d.doc.clause.json @@ -0,0 +1,12 @@ +{ + "name": "doc-clause", + "daoCls": "cn.vertxup.doc.domain.tables.daos.DDocClauseDao", + "field": { + "unique": [ + [ + "code", + "sigma" + ] + ] + } +} \ No newline at end of file diff --git a/zero-doc/src/main/resources/plugin/doc/oob/module/ui/d.doc.clause.json b/zero-doc/src/main/resources/plugin/doc/oob/module/ui/d.doc.clause.json new file mode 100644 index 0000000000000000000000000000000000000000..0637a088a01e8ddab3bf3fa98dbe804cbde1a0dc --- /dev/null +++ b/zero-doc/src/main/resources/plugin/doc/oob/module/ui/d.doc.clause.json @@ -0,0 +1 @@ +[] \ No newline at end of file diff --git a/zero-doc/src/main/resources/plugin/doc/oob/role/ADMIN.SUPER/falcon.d.doc.clause.xlsx b/zero-doc/src/main/resources/plugin/doc/oob/role/ADMIN.SUPER/falcon.d.doc.clause.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..411d92e2991767bc371423dc37409be34f826faa Binary files /dev/null and b/zero-doc/src/main/resources/plugin/doc/oob/role/ADMIN.SUPER/falcon.d.doc.clause.xlsx differ diff --git a/zero-doc/src/main/resources/plugin/ke/rule.form/d.doc.clause.json b/zero-doc/src/main/resources/plugin/ke/rule.form/d.doc.clause.json new file mode 100644 index 0000000000000000000000000000000000000000..5ddd8454c3340d050a1d7be0780e657b06570316 --- /dev/null +++ b/zero-doc/src/main/resources/plugin/ke/rule.form/d.doc.clause.json @@ -0,0 +1,8 @@ +{ + "phase": "AFTER", + "data": { + "type": "RECORD", + "viewId": "`${viewId}`", + "identifier": "d.doc.clause" + } +} \ No newline at end of file diff --git a/zero-wf/script/rs/w-ticket.json b/zero-wf/script/rs/w-ticket.json new file mode 100644 index 0000000000000000000000000000000000000000..9c11f8c298974674cd4f236d4d9eb3779f0647b5 --- /dev/null +++ b/zero-wf/script/rs/w-ticket.json @@ -0,0 +1,7 @@ +{ + "name": "流程任务", + "module": "ticket", + "identifier": "w.ticket", + "api": "ticket", + "type": "resource.document" +} \ No newline at end of file diff --git a/zero-wf/src/main/jib/io/horizon/spi/dict/TicketDict.java b/zero-wf/src/main/jib/io/horizon/spi/dict/TicketDict.java new file mode 100644 index 0000000000000000000000000000000000000000..e542024e6a47cd1f301b0550a496050126ca2092 --- /dev/null +++ b/zero-wf/src/main/jib/io/horizon/spi/dict/TicketDict.java @@ -0,0 +1,30 @@ +package io.horizon.spi.dict; + +import cn.vertxup.workflow.domain.tables.daos.WTicketDao; +import io.horizon.atom.datamation.KDictSource; +import io.horizon.spi.component.DictionaryPlugin; +import io.vertx.core.Future; +import io.vertx.core.MultiMap; +import io.vertx.core.json.JsonArray; +import io.vertx.up.eon.KName; +import io.vertx.up.unity.Ux; +import io.vertx.up.util.Ut; + +/* + * Dict for `resource.docs` here + */ +public class TicketDict implements DictionaryPlugin { + + @Override + public Future fetchAsync(final KDictSource source, + final MultiMap paramMap) { + final String sigma = paramMap.get(KName.SIGMA); + if (Ut.isNotNil(sigma)) { + return Ux.Jooq.on(WTicketDao.class) + .fetchAsync(KName.SIGMA, sigma) + .compose(Ux::futureA); + } else { + return Ux.future(new JsonArray()); + } + } +} diff --git a/zero-wf/src/main/resources/plugin/ke/rule.form/w.ticket.json b/zero-wf/src/main/resources/plugin/ke/rule.form/w.ticket.json new file mode 100644 index 0000000000000000000000000000000000000000..7a5891dde4e31ea145a44dfa1a5fcef4a11abb30 --- /dev/null +++ b/zero-wf/src/main/resources/plugin/ke/rule.form/w.ticket.json @@ -0,0 +1,8 @@ +{ + "phase": "AFTER", + "data": { + "type": "RECORD", + "viewId": "`${viewId}`", + "identifier": "w.ticket" + } +} \ No newline at end of file diff --git a/zero-wf/src/main/resources/plugin/wf/oob/cab/system.ticket.xlsx b/zero-wf/src/main/resources/plugin/wf/oob/cab/system.ticket.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..c6e6eaa83a844f97cd534d3aba6ce355d9c8ed68 Binary files /dev/null and b/zero-wf/src/main/resources/plugin/wf/oob/cab/system.ticket.xlsx differ diff --git a/zero-wf/src/main/resources/plugin/wf/oob/initialize.json b/zero-wf/src/main/resources/plugin/wf/oob/initialize.json index 274f9c071a7d880e939d95ee09608f47c59e25a5..0a945bad1d3e4376234f261a5dd2ad04b68695dd 100644 --- a/zero-wf/src/main/resources/plugin/wf/oob/initialize.json +++ b/zero-wf/src/main/resources/plugin/wf/oob/initialize.json @@ -1,5 +1,6 @@ [ "plugin/wf/oob/cab/system.report.xlsx", + "plugin/wf/oob/cab/system.ticket.xlsx", "plugin/wf/oob/cab/system.todo.xlsx", "plugin/wf/oob/cab/system.workflow.xlsx", "plugin/wf/oob/data/admit.flow.xlsx", @@ -9,6 +10,7 @@ "plugin/wf/oob/modulat/10000_1100_1025_ZERO-D.WF.xlsx", "plugin/wf/oob/modulat/12500_WM_1ebd9764-8bb2-442a-827d-4953be5dabc0.xlsx", "plugin/wf/oob/role/ADMIN.SUPER/falcon.system.report.xlsx", + "plugin/wf/oob/role/ADMIN.SUPER/falcon.system.ticket.xlsx", "plugin/wf/oob/role/ADMIN.SUPER/falcon.system.todo.xlsx", "plugin/wf/oob/role/ADMIN.SUPER/falcon.system.workflow.xlsx" ] \ No newline at end of file diff --git a/zero-wf/src/main/resources/plugin/wf/oob/initialize.yml b/zero-wf/src/main/resources/plugin/wf/oob/initialize.yml index 0840f000c3ce29311718b920e5fc8a7a35a26ba0..6c29122438f58f29eb7aa792687aefef049d3a9f 100644 --- a/zero-wf/src/main/resources/plugin/wf/oob/initialize.yml +++ b/zero-wf/src/main/resources/plugin/wf/oob/initialize.yml @@ -3,6 +3,10 @@ - code - sigma - dao: cn.vertxup.workflow.domain.tables.daos.WFlowDao # W_FLOW + unique: + - code + - sigma +- dao: cn.vertxup.workflow.domain.tables.daos.WTicketDao # W_TICKET unique: - code - sigma \ No newline at end of file diff --git a/zero-wf/src/main/resources/plugin/wf/oob/module.json b/zero-wf/src/main/resources/plugin/wf/oob/module.json index 038adb55374c28f5bfd8cc0209986ace21094495..c3076f89ebfa28c3dc1fa3139f19ce11af4ad9af 100644 --- a/zero-wf/src/main/resources/plugin/wf/oob/module.json +++ b/zero-wf/src/main/resources/plugin/wf/oob/module.json @@ -1,3 +1,4 @@ [ - "w.todo" + "w.todo", + "w.ticket" ] \ No newline at end of file diff --git a/zero-wf/src/main/resources/plugin/wf/oob/module/crud/w.ticket.json b/zero-wf/src/main/resources/plugin/wf/oob/module/crud/w.ticket.json new file mode 100644 index 0000000000000000000000000000000000000000..b52994abe792896d421e4edab4b8b0db938fa083 --- /dev/null +++ b/zero-wf/src/main/resources/plugin/wf/oob/module/crud/w.ticket.json @@ -0,0 +1,12 @@ +{ + "name": "ticket", + "daoCls": "cn.vertxup.workflow.domain.tables.daos.WTicketDao", + "field": { + "unique": [ + [ + "code", + "sigma" + ] + ] + } +} \ No newline at end of file diff --git a/zero-wf/src/main/resources/plugin/wf/oob/module/ui/w.ticket.json b/zero-wf/src/main/resources/plugin/wf/oob/module/ui/w.ticket.json new file mode 100644 index 0000000000000000000000000000000000000000..0637a088a01e8ddab3bf3fa98dbe804cbde1a0dc --- /dev/null +++ b/zero-wf/src/main/resources/plugin/wf/oob/module/ui/w.ticket.json @@ -0,0 +1 @@ +[] \ No newline at end of file diff --git a/zero-wf/src/main/resources/plugin/wf/oob/role/ADMIN.SUPER/falcon.system.ticket.xlsx b/zero-wf/src/main/resources/plugin/wf/oob/role/ADMIN.SUPER/falcon.system.ticket.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..090009ccb7dd19fbdd70d2e2c5868b04384bf4eb Binary files /dev/null and b/zero-wf/src/main/resources/plugin/wf/oob/role/ADMIN.SUPER/falcon.system.ticket.xlsx differ