/// <summary> /// 审方通过 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> void view_OnComplete(object sender, Views.CheckAdviceArgs e) { DataTable batchData = Model.GetBatchData(e.BeginListDate, e.EndListDate, e.OfficeID, e.IsValidCheck, e.IsAllCheck, e.IsNoCheck, e.IsYesCheck, e.IsTypePTY, e.IsTypeJSY, e.IsTypeDMY, e.IsTypeGCY, e.IsTypeKSS, e.CheckPivasStatus, e.CheckLong, e.CheckTemporary); if (batchData == null) { CJia.Message.Show("没有待审医嘱!"); } else { int checkSeq = Model.GetCheckSeq(); using (CJia.Transaction trans = new CJia.Transaction(CJia.DefaultOleDb.DefaultAdapter)) { //插入审核表 this.Model.AddCheck(trans.ID, checkSeq, User.UserId, User.UserNo, User.UserName, User.DeptId, User.DeptName, User.UserId); //明细表中的未审医嘱 DataTable noData = Model.GetCheckDetail(e.BeginListDate, e.EndListDate, e.OfficeID, e.IsValidCheck, e.IsAllCheck, e.IsNoCheck, e.IsYesCheck, e.IsTypePTY, e.IsTypeJSY, e.IsTypeDMY, e.IsTypeGCY, e.IsTypeKSS, e.CheckPivasStatus, e.CheckLong, e.CheckTemporary); //明细表中的已审医嘱 DataTable yesData = Model.GetYesCheckDetail(e.BeginListDate, e.EndListDate, e.OfficeID, e.IsValidCheck, e.IsAllCheck, e.IsNoCheck, e.IsYesCheck, e.IsTypePTY, e.IsTypeJSY, e.IsTypeDMY, e.IsTypeGCY, e.IsTypeKSS, e.CheckPivasStatus, e.CheckLong, e.CheckTemporary); if (yesData == null && noData == null)//新医嘱,未审核过 { //插入审核明细表 Models.CheckResult checkResult = Model.BatchAddCheckDetail(trans.ID, checkSeq, 1000102, User.UserId, e.BeginListDate, e.EndListDate, e.OfficeID, e.IsValidCheck, e.IsAllCheck, e.IsNoCheck, e.IsYesCheck, e.IsTypePTY, e.IsTypeJSY, e.IsTypeDMY, e.IsTypeGCY, e.IsTypeKSS, e.CheckPivasStatus, e.CheckLong, e.CheckTemporary); //更新瓶贴基表 //List<string> groupIndex = new List<string>(); ////DataTable batchData = Model.GetBatchData(e.BeginListDate, e.EndListDate, e.OfficeID); //for(int i = 0; i < batchData.Rows.Count; i++) //{ // groupIndex.Add(batchData.Rows[i]["GROUP_INDEX"].ToString()); //} RefreshCommonLabel(trans.ID, checkResult.CheckGroup); this.showMes(checkResult.NoCheckGroup); } else { //DataTable batchData = Model.GetBatchData(e.BeginListDate, e.EndListDate, e.OfficeID); if (batchData != null) { Models.CheckResult checkResult = new Models.CheckResult(); for (int i = 0; i < batchData.Rows.Count; i++) { List <string> result = this.Model.QueryPharm(batchData.Rows[i]["GROUP_INDEX"].ToString()); if (result != null && result.Count > 0) { checkResult.NoCheckGroup.Add(new Models.NoCheckGroupPharm() { GroupIndex = batchData.Rows[i]["GROUP_INDEX"].ToString(), pharmList = result }); } else { //将之前审核明细置为无效 //int detailId = Model.GetDetailIdByGroupIndex(batchData.Rows[i]["GROUP_INDEX"].ToString()); //Model.ModifyCheckDetailValid(trans.ID, User.UserId, detailId); this.Model.ModifyCheckDetailGroupIndex(trans.ID, batchData.Rows[i]["GROUP_INDEX"].ToString(), User.UserId); //插入新的审核明细 Model.AddCheckDetail(trans.ID, checkSeq, batchData.Rows[i]["GROUP_INDEX"].ToString(), 1000101, 1000102, e.OriginalPivasBatchNo, batchData.Rows[i]["CHECK_PIVAS_BATCH_NO"].ToString(), User.UserId, e.CancelReason, e.LongTimeStatus); //更新瓶贴基表 List <string> groupIndex = new List <string>(); groupIndex.Add(batchData.Rows[i]["GROUP_INDEX"].ToString()); RefreshCommonLabel(trans.ID, groupIndex); checkResult.CheckGroup.Add(batchData.Rows[i]["GROUP_INDEX"].ToString()); } } this.showMes(checkResult.NoCheckGroup); } ////将之前审核明细批量置为无效 //Model.ModifyCheckDetail(trans.ID, User.UserId, e.BeginListDate, e.EndListDate, e.OfficeID, groupIndex); ////插入新的审核明细 //Model.BatchAddCheckDetail(trans.ID, checkSeq, e.CheckPivasStatus, User.UserId, e.BeginListDate, e.EndListDate, e.OfficeID, batchStr); ////更新瓶贴基表 //RefreshCommonLabel(trans.ID, groupIndex); } trans.Complete(); } } }
/// <summary> /// 单个审方 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> void view_OnInsertCheck(object sender, Views.CheckAdviceArgs e) { int checkSeq = Model.GetCheckSeq(); using (CJia.Transaction trans = new CJia.Transaction(CJia.DefaultOleDb.DefaultAdapter)) { Models.CheckResult checkResult = new Models.CheckResult(); //插入审核表 this.Model.AddCheck(trans.ID, checkSeq, User.UserId, User.UserNo, User.UserName, User.DeptId, User.DeptName, User.UserId); //判断是否在明细表 DataTable data = Model.GetCheckDetailDataByGroupIndex(e.GroupIndex); if (data == null)//新医嘱,未审核过 { List <string> pharmList = this.Model.QueryPharm(e.GroupIndex); if (pharmList != null && pharmList.Count > 0) { checkResult.NoCheckGroup.Add(new Models.NoCheckGroupPharm() { GroupIndex = e.GroupIndex, pharmList = pharmList }); } else { //插入审核明细表 Model.AddCheckDetail(trans.ID, checkSeq, e.GroupIndex, e.OriginalPivasStatus, e.CheckPivasStatus, e.OriginalPivasBatchNo, e.CheckPivasBatchNo, User.UserId, e.CancelReason, e.LongTimeStatus); //更新瓶贴基表 List <string> groupIndex = new List <string>(); groupIndex.Add(e.GroupIndex); RefreshCommonLabel(trans.ID, groupIndex); checkResult.CheckGroup.Add(e.GroupIndex); } } else { List <string> pharmList = this.Model.QueryPharm(e.GroupIndex); if (pharmList != null && pharmList.Count > 0) { checkResult.NoCheckGroup.Add(new Models.NoCheckGroupPharm() { GroupIndex = e.GroupIndex, pharmList = pharmList }); } else { //将之前审核明细置为无效 //int detailId = Model.GetDetailIdByGroupIndex(e.GroupIndex); //Model.ModifyCheckDetailValid(trans.ID, User.UserId, detailId); this.Model.ModifyCheckDetailGroupIndex(trans.ID, e.GroupIndex, User.UserId); //插入新的审核明细 Model.AddCheckDetail(trans.ID, checkSeq, e.GroupIndex, e.OriginalPivasStatus, e.CheckPivasStatus, e.OriginalPivasBatchNo, e.CheckPivasBatchNo, User.UserId, e.CancelReason, e.LongTimeStatus); //更新瓶贴基表 List <string> groupIndex = new List <string>(); groupIndex.Add(e.GroupIndex); RefreshCommonLabel(trans.ID, groupIndex); checkResult.CheckGroup.Add(e.GroupIndex); } } this.showMes(checkResult.NoCheckGroup); trans.Complete(); } }