/// <summary> /// 添加父表信息 /// </summary> /// <param name="inProductPlan">生产计划信息</param> /// <param name="planList">明细信息</param> /// <param name="error">出错时返回错误信息,无错时返回null</param> /// <returns>添加成功返回True,添加失败返回False</returns> public bool AddBill(S_ProductPlan inProductPlan, DataTable planList, out string error) { error = null; try { DepotManagementDataContext ctx = CommentParameter.DepotDataContext; if (!CheckDJH(inProductPlan.DJH)) { if (!UpdateBill(ctx, inProductPlan, planList, out error)) { return(false); } } else { if (!DeletePlanList(ctx, inProductPlan.DJH, out error)) { return(false); } if (!AddPlanList(ctx, planList, inProductPlan.DJH, out error)) { return(false); } S_ProductPlan lnqPlan = new S_ProductPlan(); lnqPlan.DJH = inProductPlan.DJH; lnqPlan.PlanTime = Convert.ToDateTime(inProductPlan.PlanTime.Value.ToShortDateString()); lnqPlan.DJZT = inProductPlan.PlanType == "月计划" ? "等待采购计划批准" : ""; lnqPlan.BZRY = BasicInfo.LoginID; lnqPlan.BZRQ = ServerTime.Time; lnqPlan.PlanType = inProductPlan.PlanType; lnqPlan.Remark = inProductPlan.Remark; ctx.S_ProductPlan.InsertOnSubmit(lnqPlan); } ctx.SubmitChanges(); } catch (Exception ex) { error = ex.Message; return(false); } return(true); }
/// <summary> /// 删除单据 /// </summary> /// <param name="djh">计划单号</param> /// <param name="error">出错时返回错误信息,无错时返回null</param> /// <returns>删除成功返回True,删除失败返回False</returns> public bool DeleteBill(string djh, out string error) { error = null; try { DepotManagementDataContext ctx = CommentParameter.DepotDataContext; var varData = from a in ctx.S_ProductPlan where a.DJH == djh select a; if (varData.Count() == 1) { S_ProductPlan lnqPdPlan = varData.Single(); if (DeletePlanList(ctx, djh, out error)) { ctx.S_ProductPlan.DeleteOnSubmit(lnqPdPlan); ctx.SubmitChanges(); } else { return(false); } } else { error = "数据不唯一"; return(false); } } catch (Exception ex) { error = ex.Message; return(false); throw; } return(true); }
/// <summary> /// 修改父表信息 /// </summary> /// <param name="ctx">数据上下文</param> /// <param name="inPdPlan">生产计划信息</param> /// <param name="planList">明细信息</param> /// <param name="error">出错时返回错误信息,无错时返回null</param> /// <returns>修改成功返回True,修改失败返回False</returns> bool UpdateBill(DepotManagementDataContext ctx, S_ProductPlan inPdPlan, DataTable planList, out string error) { error = null; try { var varData = from a in ctx.S_ProductPlan where a.DJH == inPdPlan.DJH select a; if (varData.Count() == 1) { if (!DeletePlanList(ctx, inPdPlan.DJH, out error)) { return(false); } if (!AddPlanList(ctx, planList, inPdPlan.DJH, out error)) { return(false); } S_ProductPlan lnqPlan = varData.Single(); lnqPlan.DJZT = inPdPlan.PlanType == "月计划" ? "等待采购计划批准" : ""; lnqPlan.BZRY = BasicInfo.LoginID; lnqPlan.BZRQ = ServerTime.Time; lnqPlan.PlanType = inPdPlan.PlanType; lnqPlan.Remark = inPdPlan.Remark; ctx.SubmitChanges(); } } catch (Exception ex) { error = ex.Message; return(false); } return(true); }