/// <summary> /// 批量插入CVT客户基础信息 /// </summary> /// <param name="cvtCustomerInfomation">CVT客户信息列表</param> /// <param name="error">出错时返回错误信息,无错时返回null</param> /// <returns>插入成功返回True,插入失败返回False</returns> public bool BatchInsertCVTCustomerInformation(DataTable cvtCustomerInfomation, out string error) { error = null; string strTemp = ""; int intFlag = 0; ProductListServer serverProductList = new ProductListServer(); try { DepotManagementDataContext dataContext = CommentParameter.DepotDataContext; for (int i = 0; i < cvtCustomerInfomation.Rows.Count; i++) { strTemp = cvtCustomerInfomation.Rows[i]["车架号"].ToString().Trim(); if (strTemp == "") { continue; } YX_CVTCustomerInformation lnqCVTCustomerInfo = new YX_CVTCustomerInformation(); int intGoodsID = serverProductList.GetProductGoodsID( cvtCustomerInfomation.Rows[i]["CVT型号"].ToString().Trim(), 0, false); if (intGoodsID == 0) { error = "[CVT型号]不符合标准,车架号为[" + strTemp + "]"; return(false); } if (cvtCustomerInfomation.Rows[i]["销售日期"].ToString().Trim() == "") { error = error + "[" + cvtCustomerInfomation.Rows[i]["车架号"].ToString().Trim() + "]"; } var varData = from a in dataContext.YX_CVTCustomerInformation where a.VehicleShelfNumber == strTemp select a; if (varData.Count() == 0) { lnqCVTCustomerInfo.ClientName = cvtCustomerInfomation.Rows[i]["客户名称"].ToString().Trim(); lnqCVTCustomerInfo.CVTNumber = cvtCustomerInfomation.Rows[i]["CVT编号"].ToString().Trim(); lnqCVTCustomerInfo.DealerName = cvtCustomerInfomation.Rows[i]["经销商名称"].ToString().Trim(); lnqCVTCustomerInfo.FullAddress = cvtCustomerInfomation.Rows[i]["详细地址"].ToString().Trim(); lnqCVTCustomerInfo.PhoneNumber = cvtCustomerInfomation.Rows[i]["联系电话"].ToString().Trim(); lnqCVTCustomerInfo.ProductID = intGoodsID; lnqCVTCustomerInfo.Remark = cvtCustomerInfomation.Rows[i]["备注"].ToString().Trim(); lnqCVTCustomerInfo.SellDate = ServerTime.ConvertToDateTime( cvtCustomerInfomation.Rows[i]["销售日期"].ToString().Trim()); lnqCVTCustomerInfo.SiteCity = cvtCustomerInfomation.Rows[i]["车辆所在地"].ToString().Trim(); lnqCVTCustomerInfo.SiteProvince = cvtCustomerInfomation.Rows[i]["省份"].ToString().Trim(); lnqCVTCustomerInfo.VehicleShelfNumber = strTemp; lnqCVTCustomerInfo.PY = UniversalFunction.GetPYWBCode(lnqCVTCustomerInfo.ClientName, "PY"); lnqCVTCustomerInfo.WB = UniversalFunction.GetPYWBCode(lnqCVTCustomerInfo.ClientName, "WB"); lnqCVTCustomerInfo.CarModelID = serverProductList.GetMotorcycleType( cvtCustomerInfomation.Rows[i]["车型"].ToString().Trim()); lnqCVTCustomerInfo.ProofNo = cvtCustomerInfomation.Rows[i]["三包凭证号"].ToString().Trim(); dataContext.YX_CVTCustomerInformation.InsertOnSubmit(lnqCVTCustomerInfo); } else { lnqCVTCustomerInfo = varData.Single(); lnqCVTCustomerInfo.SiteCity = cvtCustomerInfomation.Rows[i]["车辆所在地"].ToString().Trim(); lnqCVTCustomerInfo.DealerName = cvtCustomerInfomation.Rows[i]["经销商名称"].ToString().Trim(); lnqCVTCustomerInfo.SiteProvince = cvtCustomerInfomation.Rows[i]["省份"].ToString().Trim(); lnqCVTCustomerInfo.ClientName = cvtCustomerInfomation.Rows[i]["客户名称"].ToString().Trim(); lnqCVTCustomerInfo.SellDate = ServerTime.ConvertToDateTime(cvtCustomerInfomation.Rows[i]["销售日期"].ToString().Trim()); lnqCVTCustomerInfo.FullAddress = cvtCustomerInfomation.Rows[i]["详细地址"].ToString().Trim(); lnqCVTCustomerInfo.PhoneNumber = cvtCustomerInfomation.Rows[i]["联系电话"].ToString().Trim(); } dataContext.SubmitChanges(); strTemp = ""; } return(true); } catch (Exception ex) { error = ex.Message + ",车架号为[" + strTemp + "]" + intFlag; return(false); } }
/// <summary> /// 最终判定 /// </summary> /// <param name="delivery">CVT检验报告信息</param> /// <param name="error">出错时返回错误信息,无错时返回null</param> /// <returns>操作成功返回True ,操作失败返回False</returns> public bool FinalJudgeBill(P_DeliveryInspection delivery, out string error) { error = null; DepotManagementDataContext dataContext = CommentParameter.DepotDataContext; dataContext.Connection.Open(); dataContext.Transaction = dataContext.Connection.BeginTransaction(); try { ProductListServer serverProductList = new ProductListServer(); var varData = from a in dataContext.P_DeliveryInspection where a.DJH == delivery.DJH select a; if (varData.Count() != 1) { error = "数据为空或者不唯一"; return(false); } else { P_DeliveryInspection lnqUpdate = varData.Single(); lnqUpdate.FinalVerdict = delivery.FinalVerdict; lnqUpdate.FinalDate = ServerTime.Time; lnqUpdate.FinalPersonnel = BasicInfo.LoginName; lnqUpdate.DJZT = "已完成"; lnqUpdate.Remark = delivery.Remark; //不合格处理情况 if (lnqUpdate.FinalVerdict == "不合格") { //删除产品业务表中的记录 var varMarketingDate = from a in dataContext.ProductsCodes where a.DJH == lnqUpdate.AssociatedBillNo && a.ProductCode == lnqUpdate.ProductCode select a; dataContext.ProductsCodes.DeleteAllOnSubmit(varMarketingDate); //获得单据ID和产品ID int intProductID = serverProductList.GetProductGoodsID(lnqUpdate.ProductType, 0, false); int intDJID = 0; var varBillDate = from a in dataContext.S_MarketingBill where a.DJH == lnqUpdate.AssociatedBillNo select a; if (varBillDate.Count() != 1) { error = "数据不唯一或者为空"; return(false); } else { intDJID = varBillDate.Single().ID; } //修改营销业务明细表中的记录的数量数据 var varListDate = from a in dataContext.S_MarketingList where a.DJ_ID == intDJID && a.CPID == intProductID.ToString() select a; if (varListDate.Count() != 1) { error = "数据不唯一或者为空"; return(false); } else { S_MarketingList lnqList = varListDate.Single(); lnqList.Count = lnqList.Count - 1; } } dataContext.SubmitChanges(); //修改营销业务单据状态 if (!UpdateMarketingBill(dataContext, delivery.AssociatedBillNo, out error)) { return(false); } } dataContext.Transaction.Commit(); return(true); } catch (Exception ex) { dataContext.Transaction.Rollback(); error = ex.Message; return(false); } }
/// <summary> /// 批量插入装车信息 /// </summary> /// <param name="loadingInfo">装车信息列表</param> /// <param name="error">出错时返回错误信息,无错时返回null</param> /// <returns>批量插入成功返回True,批量插入失败返回False</returns> public bool BatchInsertLoadingInfo(DataTable loadingInfo, out string error) { error = null; string strTemp = ""; try { DepotManagementDataContext dataContext = CommentParameter.DepotDataContext; ProductListServer serverProductList = new ProductListServer(); for (int i = 0; i < loadingInfo.Rows.Count; i++) { strTemp = loadingInfo.Rows[i]["车架号"].ToString().Trim(); if (strTemp == "") { continue; } YX_LoadingInfo lnqLoadingInfo = new YX_LoadingInfo(); int intGoodsID = serverProductList.GetProductGoodsID( loadingInfo.Rows[i]["CVT型号"].ToString().Trim(), 0, false); if (intGoodsID == 0) { error = "[CVT型号]不符合标准,车架号为[" + strTemp + "]"; return(false); } int intCarModle = serverProductList.GetMotorcycleType(loadingInfo.Rows[i]["车型号"].ToString().Trim()); if (intCarModle == 0) { error = "[车型号]不符合标准,车架号为[" + strTemp + "]"; return(false); } if (loadingInfo.Rows[i]["装车日期"].ToString().Trim() == "") { error = error + "[" + loadingInfo.Rows[i]["车架号"].ToString().Trim() + "]"; } lnqLoadingInfo.CarModelID = intCarModle; lnqLoadingInfo.CVTNumber = loadingInfo.Rows[i]["CVT编号"] == DBNull.Value ? "" : loadingInfo.Rows[i]["CVT编号"].ToString().Trim(); lnqLoadingInfo.Date = ServerTime.ConvertToDateTime( loadingInfo.Rows[i]["装车日期"].ToString()); lnqLoadingInfo.ProductID = intGoodsID; lnqLoadingInfo.Remark = loadingInfo.Rows[i]["备注"].ToString().Trim(); lnqLoadingInfo.VehicleShelfNumber = loadingInfo.Rows[i]["车架号"].ToString().Trim(); dataContext.YX_LoadingInfo.InsertOnSubmit(lnqLoadingInfo); strTemp = ""; } dataContext.SubmitChanges(); return(true); } catch (Exception ex) { error = ex.Message + ",车架号为[" + strTemp + "]"; return(false); } }