mirror of
https://gitee.com/dotnetchina/OpenAuth.Net.git
synced 2025-07-15 14:04:41 +08:00
* fix #I4Q1IR 修复自定义表单流程审批时,不能修改数据库记录
This commit is contained in:
parent
f4a8e93de9
commit
502ab43f26
@ -303,6 +303,13 @@ namespace OpenAuth.App
|
||||
if (!string.IsNullOrEmpty(request.FrmData))
|
||||
{
|
||||
flowInstance.FrmData = request.FrmData;
|
||||
|
||||
if (flowInstance.FrmType == 1) //如果是开发者自定义的表单,更新对应数据库表数据
|
||||
{
|
||||
var t = Type.GetType("OpenAuth.App." + flowInstance.DbName + "App");
|
||||
ICustomerForm icf = (ICustomerForm) _serviceProvider.GetService(t);
|
||||
icf.Update(flowInstance.Id,flowInstance.FrmData);
|
||||
}
|
||||
}
|
||||
|
||||
UnitWork.Update(flowInstance);
|
||||
|
@ -32,15 +32,6 @@ namespace OpenAuth.App
|
||||
Repository.Add(obj);
|
||||
}
|
||||
|
||||
public void Update(FrmLeaveReq obj)
|
||||
{
|
||||
UnitWork.Update<FrmLeaveReq>(u => u.Id == obj.Id, u => new FrmLeaveReq
|
||||
{
|
||||
//todo:要修改的字段赋值
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
public FrmLeaveReqApp(IUnitWork<OpenAuthDBContext> unitWork, IRepository<FrmLeaveReq,OpenAuthDBContext> repository,
|
||||
RevelanceManagerApp app,IAuth auth) : base(unitWork, repository, auth)
|
||||
{
|
||||
@ -53,5 +44,17 @@ namespace OpenAuth.App
|
||||
req.FlowInstanceId = flowInstanceId;
|
||||
Add(req);
|
||||
}
|
||||
|
||||
public void Update(string flowInstanceId, string frmData)
|
||||
{
|
||||
var req = JsonHelper.Instance.Deserialize<FrmLeaveReq>(frmData);
|
||||
UnitWork.Update<FrmLeaveReq>(u => u.FlowInstanceId == flowInstanceId, u => new FrmLeaveReq
|
||||
{
|
||||
UserName = req.UserName,
|
||||
RequestComment = req.RequestComment,
|
||||
RequestType = req.RequestType
|
||||
//补充其他需要更新的字段
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
@ -12,5 +12,12 @@
|
||||
/// <param name="flowInstanceId">表单对应的流程实例ID</param>
|
||||
/// <param name="frmData">表单数据</param>
|
||||
void Add(string flowInstanceId, string frmData);
|
||||
|
||||
/// <summary>
|
||||
/// 该接口定义流程自定义表单模式时需实现向数据库更新表单数据
|
||||
/// </summary>
|
||||
/// <param name="flowInstanceId">更新的时候前端没有存储Id,需要用流程实例ID来关联,如果前端设计了Id字段,则可以不用</param>
|
||||
/// <param name="frmData">表单数据</param>
|
||||
void Update(string flowInstanceId, string frmData);
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user