2023年6月14日 作业记录
2023年6月14日记录
作业内容
- 手术列表增加团队指导,麻醉医生可编辑
- 手术审核功能增加
- 限制申请截至时间,只限制第二天
1.实现手术列表,表单点击可编辑,失焦保存到数据库
!
代码实现
1.1.前端实现可编辑
function initOperListGrid() {
var columns = [[
// 添加 editor 类型为 textarea
{ field: "TeamLeader", title: "团队指导", width: 80, editor: { type: 'textarea' } },
]];
}
1.2.前端配置编辑后的操作
// Description:编辑后操作
// 2023年6月14日
function editorAfterEdit(rowIndex, rowData, changes) {
var result = null;
// 保存 团队指导 -> TeamLeader
if (changes.TeamLeader || changes.TeamLeader === "") {
if (changes.TeamLeader === "" || changes.TeamLeader === undefined) { rowData.TeamLeader = ""; }
else {
if (operList.TeamLeader) {
rowData.TeamLeader = operList.TeamLeader;
}
}
// 调用后端 OperArrange.UpdateTeamLeader() 并返回执行结果 result
result = dhccl.runServerMethod(ANCLS.BLL.OperArrange, "UpdateTeamLeader", rowData.RowId, rowData.TeamLeader, session.UserID);
}
if (result) {
if (result.success) { $("#operlistBox").datagrid("refreshRow", rowIndex); }
else { $.messager.alert("提示", "手术列表信息保存失败:", + result.result, "error"); }
}
}
1.3.前端配置编辑后调用
// datagrid 中配置 编辑前 编辑后 调用的函数
$("#operlistBox").datagrid({
onBeginEdit: function (rowIndex, rowData) {
operList.editIndex = rowIndex;
operList.editData = rowData;
},
onAfterEdit: editorAfterEdit,
});
1.4.增加后端函数
/// 更新团队指导
/// 2023年6月14日
/// 注:没有写日志
ClassMethod UpdateTeamLeader(opsId As %String, TeamLeader As %String, userId As %String) As %String
{
quit:(##class(CIS.AN.OperSchedule).%ExistsId(opsId)=0) "E^手术记录不存在!"
set operSchedule=##class(CIS.AN.OperSchedule).%OpenId(opsId)
set operSchedule.TeamLeader=TeamLeader
set status=operSchedule.%Save()
if ($System.Status.IsError(status))
{
quit "E^"_$System.Status.GetErrorText(status)
}
quit "S^"
}
1.5.遗留问题
CIS_AN.OperSchedule 表中没有麻醉医师属性列
麻醉医师保存在对应的麻醉表中,手术表只存麻醉医师的ID

浙公网安备 33010602011771号