public ReturnValueInfo UpdateRecord(ProjectQCProblem_pqcp_Info model) { throw new NotImplementedException(); }
public List<ProjectQCProblem_pqcp_Info> SearchRecord(ProjectQCProblem_pqcp_Info searchInfo) { throw new NotImplementedException(); }
/// <summary> /// 更新QC問題 /// </summary> /// <param name="pqc"></param> /// <returns></returns> public ReturnValueInfo UpdateQCProblem(ProjectQCProblem_pqcp_Info problem, PrintProject_ppj_Info project, ShiftProjList_spl_Info shiftProject) { ReturnValueInfo result = new ReturnValueInfo(); try { if (problem.pqcp_PQCID == Guid.Empty) { result.boolValue = false; result.messageText = "QC問題記錄沒有設置QC記錄ID,不能保存QC問題。"; return result; } if (problem.pqcp_iWasteQty == 0 && problem.pqcp_iDefectiveQty == 0) { result.boolValue = false; result.messageText = "QC廢品數量和次品數量不能同時為0。"; return result; } using (DBContext uow = DBContext.Begin()) { ProjectQCProblem_pqcp_Info pqcp_old = uow.CurrentSession.Get<ProjectQCProblem_pqcp_Info>(problem.pqcp_RecordID); pqcp_old.pqcp_iProblemID = problem.pqcp_iProblemID; pqcp_old.pqcp_iWasteQty = problem.pqcp_iWasteQty; pqcp_old.pqcp_iDefectiveQty = problem.pqcp_iDefectiveQty; pqcp_old.pqcp_dLastDate = DateTime.Now; pqcp_old.pqcp_lSync = false; uow.CurrentSession.Update(pqcp_old); //CountSPLQCInfo(uow, project, shiftProject); } result.boolValue = true; } catch (Exception ex) { result.boolValue = false; result.messageText = ex.Message; } return result; }
public ReturnValueInfo RemoveQCProblem(ProjectQCProblem_pqcp_Info problem) { ReturnValueInfo result = new ReturnValueInfo(); try { using (DBContext db = DBContext.Begin()) { ProjectQCRecord_pqc_Info qcRecord = db.CurrentSession.Get<ProjectQCRecord_pqc_Info>(problem.pqcp_PQCID); db.CurrentSession.Clear(); if (qcRecord != null) { if (qcRecord.pqc_cMode == CustEnum.RecordMode.AUTO.ToString()) { if (problem.pqcp_RecordID == Guid.Empty) { result.boolValue = false; result.messageText = "刪除失敗,不能刪除系統創建的[無問題]抽查記錄。"; return result; } db.CurrentSession.Delete(problem); } else if (qcRecord.pqc_cMode == CustEnum.RecordMode.MANUAL.ToString()) { if (problem.pqcp_RecordID == Guid.Empty) { IList<ProjectQCRecord_pqc_Info> qcRecords = db.CurrentSession.QueryOver<ProjectQCRecord_pqc_Info>().Where(d => d.pqc_SPLID == problem.ShiftProjectID).OrderBy(d => d.pqc_dAddDate).Desc.Take(1).List(); if (qcRecords.Count > 0) { if (qcRecords[0].pqc_RecordID == problem.pqcp_PQCID) { db.CurrentSession.Delete(qcRecords[0]); } else { result.boolValue = false; result.messageText = "刪除失敗,只能刪除最後一次品檢記錄。"; return result; } } else { result.boolValue = false; result.messageText = "沒有數據"; return result; } } else { db.CurrentSession.Delete(problem); } } } } result.boolValue = true; } catch (Exception ex) { result.boolValue = false; result.messageText = ex.Message; } return result; }
/// <summary> /// 保存QC問題 /// </summary> /// <param name="pqc"></param> /// <returns></returns> public ReturnValueInfo AddQCProblem(ProjectQCProblem_pqcp_Info problem, PrintProject_ppj_Info project, ShiftProjList_spl_Info shiftProject) { ReturnValueInfo result = new ReturnValueInfo(); try { if (problem.pqcp_PQCID == Guid.Empty) { result.boolValue = false; result.messageText = "QC問題記錄沒有設置QC記錄ID,不能保存QC問題。"; return result; } if (problem.pqcp_iWasteQty == 0 && problem.pqcp_iDefectiveQty == 0) { result.boolValue = false; result.messageText = "QC廢品數量和次品數量不能同時為0。"; return result; } using (DBContext uow = DBContext.Begin()) { problem.pqcp_RecordID = Guid.NewGuid(); problem.pqcp_dAddDate = DateTime.Now; problem.pqcp_dLastDate = DateTime.Now; ProjectQCProblem_pqcp_Info pqcp_max = uow.CurrentSession.QueryOver<ProjectQCProblem_pqcp_Info>().And(d => d.pqcp_PQCID == problem.pqcp_PQCID).OrderBy(d => d.pqcp_iSeq).Desc.Take(1).SingleOrDefault(); if (pqcp_max != null) { problem.pqcp_iSeq = pqcp_max.pqcp_iSeq + 1; } else { problem.pqcp_iSeq = 1; } uow.CurrentSession.SaveOrUpdate(uow.CurrentSession.Merge(problem)); //CountSPLQCInfo(uow, project, shiftProject); } result.boolValue = true; } catch (Exception ex) { result.boolValue = false; result.messageText = ex.Message; } return result; }
public Model.General.ReturnValueInfo UpdateRecord(ProjectQCProblem_pqcp_Info infoObject) { throw new NotImplementedException(); }