设计器接口
<p>[TOC]</p>
<p>前提:</p>
<ul>
<li>rdc登录以后会把token存入localStorage,通过Authorization可以获得
<img src="https://www.showdoc.com.cn/server/api/attachment/visitFile?sign=49381c94374dd396780e81e4cb033003" alt="" /></li>
<li>进入设计器的时候,url上面会携带appGid,branch,projectGid,在接口参数传递或者请求头传递时候,可以从这里获取
例如:<a href="http://192.168.138.70:19998/metadata-host/designerPage/93141e71f0684d0cbde3ffd64ba16466?appGid=17F1C5C8902001&branch=1.0&productGid=PJ17F1A6C3167001&projectGid=PJ17F1A6C3167001&functionGid=644cd2fb5f7541499655c02e1e3cc607&searchId=PJ17F1A6C3167001_dd988ee7469746b19bb636bba17aae1e&mode=dev">http://192.168.138.70:19998/metadata-host/designerPage/93141e71f0684d0cbde3ffd64ba16466?appGid=17F1C5C8902001&branch=1.0&productGid=PJ17F1A6C3167001&projectGid=PJ17F1A6C3167001&functionGid=644cd2fb5f7541499655c02e1e3cc607&searchId=PJ17F1A6C3167001_dd988ee7469746b19bb636bba17aae1e&mode=dev</a></li>
<li>
<p>页面id是取得页面元数据的frontId这个字段,不是gid
备注:有疑问可以直接咨询,或者参考70的页面设计器请求方式</p>
<h2>页面锁</h2>
</li>
<li>功能说明:在用户打开页面时候,会判断当前页面是否被锁定,如果没有被锁定,则被当前用户锁定;如果被锁定,则判断是否当前用户锁定,如果被当前用户锁定,则可以直接进入,如果没有被其他用户锁定,则提示被谁锁定,无法保存</li>
<li>接口地址:<a href="http://192.168.138.70:9998/rdc-developer/ui/pageLock/lock">http://192.168.138.70:9998/rdc-developer/ui/pageLock/lock</a></li>
<li>请求方式: POST</li>
<li>请求参数(body,json格式):
<pre><code>{
"frontId":"93141e71f0684d0cbde3ffd64ba16466",//页面id
"appGid":"17F1C5C8902001", //应用id
"branch":"1.0", //分支
"projectGid":"PJ17F1A6C3167001" //项目gid
}</code></pre></li>
<li><strong>请求头</strong>:Authorization: 8e2fb782-0d15-48b8-bfd6-229733a56d6e(为rdc登录以后产生的token)</li>
<li>
<p>返回值:有3种情况,可以直接判断success的值,只需要处理success=false时候给出提示即可。</p>
<pre><code>锁定成功,表示此页面没有人锁定,当前用户锁定了此页面:
{
"data":"锁定成功",
"error":null,
"success":true
}```</code></pre>
<p>进入成功,表示是当前用户锁定的此页面
{
"data":"进入成功",
"error":null,
"success":true
}</p>
<pre><code></code></pre>
<p>此页面已被其他用户锁定,需要界面给出提示,并且用户无法保存页面
{
"data":null,
"error":{
"code":null,
"message":"已经被用户[sysadmin]锁定,只能查看",
"traces":null
},
"success":false
}</p>
<pre><code>
## 移除页面锁</code></pre>
</li>
<li>功能说明:在用户编辑完界面以后,关闭页面时候,调用移除锁接口,取消页面的锁定</li>
<li>接口地址:<a href="http://192.168.138.70:9998/rdc-developer/ui/pageLock/removeLock">http://192.168.138.70:9998/rdc-developer/ui/pageLock/removeLock</a></li>
<li>请求方式: POST</li>
<li>请求参数(body,json格式):
<pre><code>{
"frontId":"93141e71f0684d0cbde3ffd64ba16466",//页面id
"appGid":"17F1C5C8902001", //应用id
"branch":"1.0", //分支
"projectGid":"PJ17F1A6C3167001" //项目gid
}</code></pre></li>
<li><strong>请求头</strong>:Authorization: 8e2fb782-0d15-48b8-bfd6-229733a56d6e(为rdc登录以后产生的token)</li>
<li>
<p>返回值:</p>
<pre><code>{
"data": "移除成功",
"error": null,
"success": true
}</code></pre>
<h2>查询页面锁</h2>
</li>
<li>功能说明:进入页面查询页面锁,判断是否被当前用户锁定</li>
<li>接口地址:<a href="http://192.168.138.70:9998/rdc-developer/ui/pageLock/checkLock">http://192.168.138.70:9998/rdc-developer/ui/pageLock/checkLock</a></li>
<li>请求方式: POST</li>
<li>请求参数(body,json格式):
<pre><code>{
"frontId":"93141e71f0684d0cbde3ffd64ba16466",//页面id
"appGid":"17F1C5C8902001", //应用id
"branch":"1.0", //分支
"projectGid":"PJ17F1A6C3167001" //项目gid
}</code></pre></li>
<li><strong>请求头</strong>:Authorization: 8e2fb782-0d15-48b8-bfd6-229733a56d6e(为rdc登录以后产生的token)</li>
<li>返回值:
<pre><code>
{
"data":0, //0-未加锁 1-当前是本人加的锁 2-其他人加的锁
"error":null,
"success":true
}```</code></pre></li>
</ul>
<h2>查询页面</h2>
<ul>
<li>功能说明:在进入设计器以后,需要先查询页面,渲染设计器</li>
<li>接口地址:<a href="http://192.168.138.70:9998/rdc-developer/gateway/modeling/modelingFrontLayoutService/queryNoPage">http://192.168.138.70:9998/rdc-developer/gateway/modeling/modelingFrontLayoutService/queryNoPage</a></li>
<li>请求方式: POST</li>
<li>请求参数(body,json格式):
<pre><code>{
"param":{
"pmap":{//查询全部可以去掉
"frontId":"93141e71f0684d0cbde3ffd64ba16466",// 页面id
},
"branch":"1.0", //分支
"appGid":"17F1C5C8902001", //应用gid
"projectGid":"PJ17F1A6C3167001" //项目gid
}
}</code></pre></li>
<li><strong>请求头</strong>:
<ol>
<li>Authorization: 8e2fb782-0d15-48b8-bfd6-229733a56d6e(为rdc登录以后产生的 token)</li>
<li>AppGid: 17F1C5C8902001 //即参数里面的appGid(为了做权限验证)</li>
<li>ProjectGid: PJ17F1A6C3167001 //即参数里面的projectGid(为了做权限验证)</li>
</ol></li>
<li>返回值:
<pre><code>app只需要获取value即可,里面就是页面的元数据,其余信息存放用于保存时候传入后台。用什么数据,取什么数据
{
"data": [
{
"appGid": "17F1C5C8902001", //应用gid
"branch": "1.0",//分支
"createBy": "hsj",//创建人
"createTime": "2022-02-25 17:24:52",//创建时间
"desc": null, //描述
"frontId": "93141e71f0684d0cbde3ffd64ba16466", //页面id
"functionGid": "644cd2fb5f7541499655c02e1e3cc607", //功能模块gid
"gid": "1ab82bc7c9a44da983a0711c30ae745b", //主键
"isSystem": 1,
"lastModifiedBy": "hsj",
"lastModifyTime": "2022-04-21 17:42:04",
"layoutRef": 0,//主键是否参照,app不用
"frontSource":"1"//页面来源0-web,1-app,3-问卷调查
"logicDelete": 0,
"name": "页面名称-YszPU",//名称
"pid": "99feab43f56541afb9f03143f41a111d", //母版gid,app不用
"productGid": "PJ17F1A6C3167001",//项目gid,为兼容旧版,废弃使用
"projectGid": "PJ17F1A6C3167001",//项目gid
"projectType": "1",//项目类型,
"remark": null,//备注
"state": -1,
"value": "" //页面内容,
"appCode":"wms",
"functionCode":"plan"
}
],
"error": null,
"success": true
}</code></pre></li>
</ul>
<h2>页面修改</h2>
<ul>
<li>功能说明:在用户设计完界面时候,保存界面数据</li>
<li>接口地址:<a href="http://192.168.138.70:9998/rdc-developer/gateway/modeling/modelingFrontLayoutService/modify">http://192.168.138.70:9998/rdc-developer/gateway/modeling/modelingFrontLayoutService/modify</a></li>
<li>请求方式: POST</li>
<li>请求参数(body,json格式):
<pre><code>{
"value": "{\"phone\":{\"flows\":[],\"defaultDataSource\":[],\"graphic\":{},\"layoutList\":{},\"subscribes\":[],\"reference\":\"desktop\",\"validateList\":{},\"components\":{},\"canvas\":{},\"layoutInfo\":{},\"validates\":\"\"}}", //页面元数据
"gid": "1ab82bc7c9a44da983a0711c30ae745b", //主键,查询时候获取的主键,必须传递
"name": "页面名称-YszPU",//名称
}</code></pre></li>
<li><strong>请求头</strong>:
<ol>
<li>Authorization: 8e2fb782-0d15-48b8-bfd6-229733a56d6e(为rdc登录以后产生的 token)</li>
<li>AppGid: 17F1C5C8902001 //即参数里面的appGid(为了做权限验证)</li>
<li>ProjectGid: PJ17F1A6C3167001 //即参数里面的projectGid(为了做权限验证)</li>
</ol></li>
<li>返回值:
<pre><code>可以直接判断success为true
{
"data": {
"appGid": "17F1C5C8902001",
"branch": "1.0",
"createBy": "hsj",
"createTime": "2022-02-25 17:24:52",
"desc": null,
"frontId": "93141e71f0684d0cbde3ffd64ba16466",
"functionGid": "644cd2fb5f7541499655c02e1e3cc607",
"gid": "1ab82bc7c9a44da983a0711c30ae745b",
"isSystem": 0,
"lastModifiedBy": "sysadmin",
"lastModifyTime": "2022-06-14 14:43:06",
"layoutRef": 0,
"logicDelete": 0,
"name": "页面名称-YszPU",
"pid": "99feab43f56541afb9f03143f41a111d",
"productGid": "PJ17F1A6C3167001",
"projectGid": "PJ17F1A6C3167001",
"projectType": "1",
"remark": null,
"state": 1,
"value": "{\"phone\":{\"flows\":[],\"defaultDataSource\":[],\"graphic\":{},\"layoutList\":{},\"subscribes\":[],\"reference\":\"desktop\",\"validateList\":{},\"components\":{},\"canvas\":{},\"layoutInfo\":{},\"validates\":\"\"}}"
},
"error": null,
"success": true
}</code></pre></li>
</ul>
<h2>页面预览</h2>
<p>跳转预览界面请求如下: <a href="http://192.168.138.70:19998/neusoft_web/runtime/cae69ca2ee794606a463842e44ed65e1?productGid=PJ17F1A6C3167001&appGid=17F1C5C8902001&projectGid=PJ17F1A6C3167001&branch=1.0">http://192.168.138.70:19998/neusoft_web/runtime/cae69ca2ee794606a463842e44ed65e1?productGid=PJ17F1A6C3167001&appGid=17F1C5C8902001&projectGid=PJ17F1A6C3167001&branch=1.0</a></p>
<ul>
<li>功能说明:在用户设计完界面以后,需要预览界面,需要先保存页面,然后再调用预览接口</li>
<li>接口地址:<a href="http://192.168.138.70:9998/rdc-developer/gateway/ui/uiQuery/queryFrontLayoutPath">http://192.168.138.70:9998/rdc-developer/gateway/ui/uiQuery/queryFrontLayoutPath</a></li>
<li>请求方式: POST</li>
<li>请求参数(body,json格式):
<pre><code>参数样例一:rdc设计器标准
{
"ids": [
"cae69ca2ee794606a463842e44ed65e1" //页面id
],
"path": "$.value", //json返回格式的层级,$.表示整个数据,$.value,表示整个数据里面的value属性,会把对应的value属性全部转成json返回
"properties": [ //需要加,不需要可以不加
"frontId",//返回携带的属性
"name"//返回携带的属性
]
}
参数样例二:移动端可以参考
{
"ids": [
"cae69ca2ee794606a463842e44ed65e1"
],
"path": "$.value"
}</code></pre></li>
<li><strong>请求头</strong>:
<ol>
<li>Authorization: 8e2fb782-0d15-48b8-bfd6-229733a56d6e(为rdc登录以后产生的 token)
2.viewAppGid: 17F1C5C8902001 //url上的appGid
3.viewBranch: 1.0 //url上的branch
4.viewProjectGid: PJ17F1A6C3167001 //url上的projectGid</li>
</ol></li>
<li>返回值:
<img src="https://www.showdoc.com.cn/server/api/attachment/visitFile?sign=f6847d8549e08dc2a59daa4482105657" alt="" /></li>
</ul>
<h2>查询应用全部功能模块</h2>
<ul>
<li>功能说明:查询应用分支下的全部功能模块</li>
<li>接口地址:<a href="http://192.168.138.70:19998/rdc-developer/gateway/modeling/modelingFunctionService/query">http://192.168.138.70:19998/rdc-developer/gateway/modeling/modelingFunctionService/query</a></li>
<li>请求方式: POST</li>
<li>请求参数(body,json格式):
<pre><code>{
"pager":{
"limit":2000,
"page":1
},
"param":{
"pmap":{
"branch":"master",
"projectGid":"PJ1806A1181E3002",
"appGid":"1806A2E440E003"
}
}
}</code></pre></li>
<li><strong>请求头</strong>:
<ol>
<li>Authorization: 8e2fb782-0d15-48b8-bfd6-229733a56d6e(为rdc登录以后产生的 token)</li>
<li>AppGid: 17F1C5C8902001 //即参数里面的appGid(为了做权限验证)</li>
<li>ProjectGid: PJ17F1A6C3167001 //即参数里面的projectGid(为了做权限验证)</li>
</ol></li>
<li>返回值:
<img src="https://www.showdoc.com.cn/server/api/attachment/visitFile?sign=2ba4f9eddb2e742b296ffea1554759e8" alt="" />
<img src="https://www.showdoc.com.cn/server/api/attachment/visitFile?sign=500690cb28617c09ec5a8f931ea8f11d" alt="" /></li>
</ul>
<h2>前端获取登录token和url</h2>
<ul>
<li>功能说明:用于前端根据应用获取登录token</li>
<li>接口地址:<a href="http://192.168.138.70:19998/rdc-developer/app/info/getToken?projectGid=PJ1816121B851002&appGid=181612BFBCF003">http://192.168.138.70:19998/rdc-developer/app/info/getToken?projectGid=PJ1816121B851002&appGid=181612BFBCF003</a></li>
<li>请求方式: GET</li>
<li>请求参数:
<pre><code>projectGid:项目gid
appGid:应用gid(都从url上面获取)</code></pre></li>
<li><strong>请求头</strong>:
<ol>
<li>Authorization: 8e2fb782-0d15-48b8-bfd6-229733a56d6e(为rdc登录以后产生的 token)</li>
</ol></li>
<li>返回值:
<pre><code>{
"data": {
"url": "http://192.168.1.232/gateway",
"token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJjYWNoZUtleSI6IkNPTlNPTEU6VVNFUl9UT0tFTjphZG1pbjoxNzA0ODk0Nzg0ODQzNjgxNzkyIiwiY2xpZW50Q29kZSI6IjgwMCIsImlzcyI6Ik1JTkciLCJpc0FwcCI6ImZhbHNlIiwidXNlckNvZGUiOiJhZG1pbiJ9.zwWLlH_fyVaShvsEbhwGZdU7Ya145d_Ra1sQ5_JnrfE"
},
"error": null,
"success": true
}</code></pre>
<h2>页面设计器提交</h2></li>
<li>功能说明:在页面设计器点提交时候,需要先调用保存方法,再调用提交方法</li>
<li>接口地址:<a href="http://192.168.138.70:9998/rdc-developer/ui/pageCommit/add">http://192.168.138.70:9998/rdc-developer/ui/pageCommit/add</a></li>
<li>请求方式: POST</li>
<li>请求参数:
<pre><code>{
"frontId":"65ca20336ed3477da996e80d6f40b8df",//页面id
"projectGid":"PJ1806A1181E3002",//项目gid
"appGid":"1806A2E440E003",//应用gid
"branch":"master",//分支
"commitInfo":"123",//提交记录
"metaData":"{\"phone\":{\"flows\":[]}}"//页面元数据
}</code></pre></li>
<li>
<p><strong>请求头</strong>:</p>
<ol>
<li>Authorization: 8e2fb782-0d15-48b8-bfd6-229733a56d6e(为rdc登录以后产生的 token)</li>
<li>AppGid: 17F1C5C8902001 //即参数里面的appGid(为了做权限验证)</li>
<li>ProjectGid: PJ17F1A6C3167001 //即参数里面的projectGid(为了做权限验证)</li>
</ol>
</li>
<li>返回值:判断success=true为成功
<img src="https://www.showdoc.com.cn/server/api/attachment/visitFile?sign=91a50b036f384b82be4570698e3d7ce8" alt="" /></li>
</ul>