泛微OA-主表获取文档id

一.前端发送请求
步骤1拿到docid:var docId = WfForm.getFieldValue("field6432"); 
步骤2:利用bindFieldChangeEvent这个方法触发请求事件。(如果是明细表就用明细表字段变化方法去触发事件)

WfForm.bindFieldChangeEvent("field6432", function(obj,id,value){
window.setTimeout(function(){
WfForm.changeFieldValue("field111",{value:"修改本字段值需要延时"});
}, 10);
});

案例

jQuery(document).ready(function () {
// 监听附件字段变化(假设 field6432 是附件字段)
WfForm.bindFieldChangeEvent("field6432", function (obj, id, value) {
var docId = value; // value 就是 fileId(即 docid)
var docId =1;
// 校验:只有当 docId 有效(非空、是数字)时才发送请求
if (docId && /^\d+$/.test(docId)) {
// 可选:显示加载状态(比如清空目标字段或提示)
WfForm.changeFieldValue("field6432", { value: "识别中..." });

$.ajax({
type: "GET",
url: "http://192.168.87.163:8082/getName/" + docId,
dataType: "json",
timeout: 10000, // 10秒超时
success: function (response) {
if (response && response.code === "200") {
// 假设返回数据如:{ code: "200", data: "张三" }
var name = response.data || "";
WfForm.changeFieldValue("field16432", { value: name });
} else {
Dialog.alert("识别失败:" + (response.msg || "id不存在"));
WfForm.changeFieldValue("field16432", { value: "" });
}
},
error: function (xhr, status, err) {
console.error("请求失败:", status, err);
Dialog.alert("网络错误或服务不可用,请联系管理员");
WfForm.changeFieldValue("field16432", { value: "" });
}
});
} else {
// 如果清空了附件,则清空目标字段
WfForm.changeFieldValue("field16432", { value: "" });
}
});
});


二。后端暴露一个接口,接收到请求:
1.拿到docid去查imagefileid

select imagefileid  from DocImageFile where docid = 88528
2.拿到imagefileid去查存储路径

  select filerealpath from ImageFile where imagefileid = 196323

3.拿到文件。解析文件的字段,返回文件字段到前端。

业务案例1.获取excle表格的值。2获取PDF的值,3.解析二维码图片

 

三.前端接受请求,把响应结果塞进去对应的字段。

posted @ 2026-02-05 16:01  川古里  阅读(58)  评论(0)    收藏  举报