/// <summary> /// 插入一条记录到表ConfirmOrder,如果表中存在自增字段,则返回值为新记录的自增字段值,否则返回0。 /// 该方法提供给界面等UI层调用 /// </summary> /// <param name="confirmOrder">要添加的ConfirmOrder数据实体对象</param> public int AddConfirmOrder(ConfirmOrderEntity confirmOrder) { if (confirmOrder.Id > 0) { return(UpdateConfirmOrder(confirmOrder)); } else if (string.IsNullOrEmpty(confirmOrder.CarBrandName)) { return((int)CommonStatus.ADD_Fail_Empty); } else if (string.IsNullOrEmpty(confirmOrder.CarSeriesName)) { return((int)CommonStatus.ADD_Fail_Empty); } else if (string.IsNullOrEmpty(confirmOrder.CarTypeModelName)) { return((int)CommonStatus.ADD_Fail_Empty); } else if (ConfirmOrderBLL.Instance.IsExist(confirmOrder)) { return((int)CommonStatus.ADD_Fail_Exist); } else { return(ConfirmOrderDA.Instance.AddConfirmOrder(confirmOrder)); } }
/// <summary> /// 选择供应的产品,新版选择供应商 /// </summary> /// <returns></returns> public string SelCGMemForConfirm() { ResultObj result = new ResultObj(); string ordercode = FormString.SafeQ("ordercode"); string memprices = FormString.SafeQ("memprices", 8000); ConfirmOrderEntity order = ConfirmOrderBLL.Instance.GetConfirmOrderByCode(ordercode); if (order.Status == (int)OrderConfirmStatusEnum.WaitSelectCGMem) { int resultrowi = CGMemQuotedBLL.Instance.SelConfirmOrderCGMem(order.InquiryOrderCode, ordercode, memprices); if (resultrowi > 0) { //选择后直接到支付(暂时省),通知送货员或调用物流接口 WeiXinInQuiryOrderBLL.Instance.NoteToDeliveryman(ordercode); ////通知供应商备货 WeiXinInQuiryOrderBLL.Instance.CGMemStockNote(ordercode); result.Status = (int)CommonStatus.Success; result.Obj = resultrowi; } else { result.Status = (int)CommonStatus.Fail; } } else { result.Status = (int)CommonStatus.OrderCanNotDo; } return(JsonJC.ObjectToJson(result)); }
/// <summary> /// 根据主键值更新记录的全部字段(注意:该方法不会对自增字段、timestamp类型字段以及主键字段更新!如果要更新主键字段,请使用Update方法)。 /// 如果数据库有数据被更新了则返回True,否则返回False /// </summary> /// <param name="db">数据库操作对象</param> /// <param name="confirmOrder">待更新的实体对象</param> public int UpdateConfirmOrder(ConfirmOrderEntity entity) { string sql= @" UPDATE dbo.[ConfirmOrder] SET [Code]=@Code,[VinNo]=@VinNo,[VinPic]=@VinPic,[EngineModelNo]=@EngineModelNo,[EngineModelPic]=@EngineModelPic,[CarBrandId]=@CarBrandId,[CarBrandName]=@CarBrandName,[CarSeriesId]=@CarSeriesId,[CarSeriesName]=@CarSeriesName,[CarTypeModelId]=@CarTypeModelId,[CarTypeModelName]=@CarTypeModelName,[Remark]=@Remark,[NeedDay]=@NeedDay,[WLRemark]=@WLRemark,[CGTotalPrice]=@CGTotalPrice,[TotalPrice]=@TotalPrice,[MemId]=@MemId, [CreateManId]=@CreateManId,[CreateTime]=@CreateTime,[Status]=@Status,[CancelReasonId]=@CancelReasonId,[CancelRemark]=@CancelRemark WHERE [Id]=@id"; DbCommand cmd = db.GetSqlStringCommand(sql); db.AddInParameter(cmd,"@Id", DbType.Int32,entity.Id); db.AddInParameter(cmd,"@Code", DbType.String,entity.Code); db.AddInParameter(cmd,"@VinNo", DbType.String,entity.VinNo); db.AddInParameter(cmd,"@VinPic", DbType.String,entity.VinPic); db.AddInParameter(cmd, "@EngineModelNo", DbType.String, entity.EngineModelNo); db.AddInParameter(cmd, "@EngineModelPic", DbType.String, entity.EngineModelPic); db.AddInParameter(cmd,"@CarBrandId", DbType.Int32,entity.CarBrandId); db.AddInParameter(cmd,"@CarBrandName", DbType.String,entity.CarBrandName); db.AddInParameter(cmd,"@CarSeriesId", DbType.Int32,entity.CarSeriesId); db.AddInParameter(cmd,"@CarSeriesName", DbType.String,entity.CarSeriesName); db.AddInParameter(cmd,"@CarTypeModelId", DbType.Int32,entity.CarTypeModelId); db.AddInParameter(cmd,"@CarTypeModelName", DbType.String,entity.CarTypeModelName); db.AddInParameter(cmd,"@Remark", DbType.String,entity.Remark); db.AddInParameter(cmd,"@NeedDay", DbType.Int32,entity.NeedDay); db.AddInParameter(cmd,"@WLRemark", DbType.String,entity.WLRemark); db.AddInParameter(cmd,"@CGTotalPrice", DbType.Decimal,entity.CGTotalPrice); db.AddInParameter(cmd,"@TotalPrice", DbType.Decimal,entity.TotalPrice); db.AddInParameter(cmd,"@MemId", DbType.Int32,entity.MemId); db.AddInParameter(cmd,"@CreateManId", DbType.Int32,entity.CreateManId); db.AddInParameter(cmd,"@CreateTime", DbType.DateTime,entity.CreateTime); db.AddInParameter(cmd,"@Status", DbType.Int32,entity.Status); db.AddInParameter(cmd,"@CancelReasonId", DbType.Int32,entity.CancelReasonId); db.AddInParameter(cmd,"@CancelRemark", DbType.String,entity.CancelRemark); return db.ExecuteNonQuery(cmd); }
/// <summary> /// 判断当前节点是否已存在相同的 /// </summary> /// <param name="entity"></param> /// <returns></returns> public int ExistNum(ConfirmOrderEntity entity) { ///id=0,判断总数,ID>0判断除自己之外的总数 string sql = @"Select count(1) from dbo.[ConfirmOrder] WITH(NOLOCK) "; string where = "where "; if (entity.Id == 0) { where = where+ " (CarBrandName=@CarBrandName) "; where = where+ " (CarSeriesName=@CarSeriesName) "; where = where+ " (CarTypeModelName=@CarTypeModelName) "; } else { where = where+ " id<>@Id and (CarBrandName=@CarBrandName) "; where = where+ " id<>@Id and (CarSeriesName=@CarSeriesName) "; where = where+ " id<>@Id and (CarTypeModelName=@CarTypeModelName) "; } sql = sql + where; DbCommand cmd = db.GetSqlStringCommand(sql); if (entity.Id > 0) { db.AddInParameter(cmd, "@Id", DbType.Int32, entity.Id); } db.AddInParameter(cmd, "@CarBrandName", DbType.String, entity.CarBrandName); db.AddInParameter(cmd, "@CarSeriesName", DbType.String, entity.CarSeriesName); db.AddInParameter(cmd, "@CarTypeModelName", DbType.String, entity.CarTypeModelName); object identity = db.ExecuteScalar(cmd); if (identity == null || identity == DBNull.Value) return 0; return Convert.ToInt32(identity); }
/// <summary> /// 插入一条记录到表ConfirmOrder,如果表中存在自增字段,则返回值为新记录的自增字段值,否则返回0 /// </summary> /// <param name="db">数据库操作对象</param> /// <param name="confirmOrder">待插入的实体对象</param> public int AddConfirmOrder(ConfirmOrderEntity entity) { string sql= @"insert into ConfirmOrder( [Code],[VinNo],[VinPic],[EngineModelNo],[EngineModelPic],[CarBrandId],[CarBrandName],[CarSeriesId],[CarSeriesName],[CarTypeModelId],[CarTypeModelName],[Remark],[NeedDay],[WLRemark],[CGTotalPrice],[TotalPrice],[MemId], [CreateManId],[CreateTime],[Status],[CancelReasonId],[CancelRemark])VALUES ( @Code,@VinNo,@VinPic,@EngineModelNo,@EngineModelPic,@CarBrandId,@CarBrandName,@CarSeriesId,@CarSeriesName,@CarTypeModelId,@CarTypeModelName,@Remark,@NeedDay,@WLRemark,@CGTotalPrice,@TotalPrice,@MemId, @CreateManId,@CreateTime,@Status,@CancelReasonId,@CancelRemark); SELECT SCOPE_IDENTITY();"; DbCommand cmd = db.GetSqlStringCommand(sql); db.AddInParameter(cmd,"@Code", DbType.String,entity.Code); db.AddInParameter(cmd,"@VinNo", DbType.String,entity.VinNo); db.AddInParameter(cmd,"@VinPic", DbType.String,entity.VinPic); db.AddInParameter(cmd,"@EngineModelNo", DbType.String, entity.EngineModelNo); db.AddInParameter(cmd,"@EngineModelPic", DbType.String, entity.EngineModelPic); db.AddInParameter(cmd,"@CarBrandId", DbType.Int32,entity.CarBrandId); db.AddInParameter(cmd,"@CarBrandName", DbType.String,entity.CarBrandName); db.AddInParameter(cmd,"@CarSeriesId", DbType.Int32,entity.CarSeriesId); db.AddInParameter(cmd,"@CarSeriesName", DbType.String,entity.CarSeriesName); db.AddInParameter(cmd,"@CarTypeModelId", DbType.Int32,entity.CarTypeModelId); db.AddInParameter(cmd,"@CarTypeModelName", DbType.String,entity.CarTypeModelName); db.AddInParameter(cmd,"@Remark", DbType.String,entity.Remark); db.AddInParameter(cmd,"@NeedDay", DbType.Int32,entity.NeedDay); db.AddInParameter(cmd,"@WLRemark", DbType.String,entity.WLRemark); db.AddInParameter(cmd,"@CGTotalPrice", DbType.Decimal,entity.CGTotalPrice); db.AddInParameter(cmd,"@TotalPrice", DbType.Decimal,entity.TotalPrice); db.AddInParameter(cmd,"@MemId", DbType.Int32,entity.MemId); db.AddInParameter(cmd,"@CreateManId", DbType.Int32,entity.CreateManId); db.AddInParameter(cmd,"@CreateTime", DbType.DateTime,entity.CreateTime); db.AddInParameter(cmd,"@Status", DbType.Int32,entity.Status); db.AddInParameter(cmd,"@CancelReasonId", DbType.Int32,entity.CancelReasonId); db.AddInParameter(cmd,"@CancelRemark", DbType.String,entity.CancelRemark); object identity = db.ExecuteScalar(cmd); if (identity == null || identity == DBNull.Value) return 0; return Convert.ToInt32(identity); }
/// <summary> /// 通知送货员微信 /// </summary> /// <param name="code"></param> /// <returns></returns> public bool NoteToDeliveryman(string code) { bool result = false; IList <VWMemberEntity> memlist = MemberBLL.Instance.GetMemByAuthCode(MemberAuthEnum.InquiryOrderDelivery); if (memlist != null && memlist.Count > 0) { ConfirmOrderEntity order = ConfirmOrderBLL.Instance.GetConfirmOrderByCode(code); //CGMemQuotedEntity orderquote = CGMemQuotedBLL.Instance.GetCGMemHasCheckedByCode(order.InquiryOrderCode); VWMemberEntity _mementity = MemberBLL.Instance.GetVWMember(order.MemId); foreach (VWMemberEntity mem in memlist) { if (!string.IsNullOrEmpty(mem.WeChat)) { string redirecturl = ConfigCore.Instance.ConfigCommonEntity.InquiryMobileWebUrl + string.Format(WebUrlEnum.InquiryDeliveryNote, code); Hashtable hashentity = new Hashtable(); hashentity.Add("first", new WeiXinUnitEntity() { value = "又来订单啦,赶紧发货走起,订单编号:" + code }); hashentity.Add("keyword1", new WeiXinUnitEntity() { value = "易店心" }); hashentity.Add("keyword2", new WeiXinUnitEntity() { value = "易店心" }); hashentity.Add("keyword3", new WeiXinUnitEntity() { value = _mementity.CompanyAddress }); hashentity.Add("keyword4", new WeiXinUnitEntity() { value = _mementity.CompanyName }); hashentity.Add("keyword5", new WeiXinUnitEntity() { value = order.CreateTime.ToString() }); hashentity.Add("remark", new WeiXinUnitEntity() { value = "" }); if (!result) { result = WeiXinJsSdk.Instance.SendWeiXinMsgNote(mem.WeChat, redirecturl, WeiXinTemplet.OrderDeliveryNote, hashentity); } else { WeiXinJsSdk.Instance.SendWeiXinMsgNote(mem.WeChat, redirecturl, WeiXinTemplet.OrderDeliveryNote, hashentity); } } } } return(result); }
public ConfirmOrderEntity GetConfirmOrderByCode(string code) { string sql = @"SELECT [Id],[Code],InquiryOrderCode,[VinNo],[VinPic],EngineModelNo,EngineModelPic,[CarBrandId],[CarBrandName],[CarSeriesId],[CarSeriesName],[CarTypeModelId],[CarTypeModelName],[Remark],[NeedDay],WLMemId,[WLRemark],[CGTotalPrice],[TotalPrice],[MemId], [CreateManId],[CreateTime],[Status],[CancelReasonId],[CancelRemark],ScopeType FROM dbo.[ConfirmOrder] WITH(NOLOCK) WHERE [Code]=@Code"; DbCommand cmd = db.GetSqlStringCommand(sql); db.AddInParameter(cmd, "@Code", DbType.String, code); ConfirmOrderEntity entity = new ConfirmOrderEntity(); using (IDataReader reader = db.ExecuteReader(cmd)) { if (reader.Read()) { entity.Id = StringUtils.GetDbInt(reader["Id"]); entity.Code = StringUtils.GetDbString(reader["Code"]); entity.InquiryOrderCode = StringUtils.GetDbString(reader["InquiryOrderCode"]); entity.VinNo = StringUtils.GetDbString(reader["VinNo"]); entity.VinPic = StringUtils.GetDbString(reader["VinPic"]); entity.EngineModelNo = StringUtils.GetDbString(reader["EngineModelNo"]); entity.EngineModelPic = StringUtils.GetDbString(reader["EngineModelPic"]); entity.CarBrandId = StringUtils.GetDbInt(reader["CarBrandId"]); entity.CarBrandName = StringUtils.GetDbString(reader["CarBrandName"]); entity.CarSeriesId = StringUtils.GetDbInt(reader["CarSeriesId"]); entity.CarSeriesName = StringUtils.GetDbString(reader["CarSeriesName"]); entity.CarTypeModelId = StringUtils.GetDbInt(reader["CarTypeModelId"]); entity.CarTypeModelName = StringUtils.GetDbString(reader["CarTypeModelName"]); entity.Remark = StringUtils.GetDbString(reader["Remark"]); entity.NeedDay = StringUtils.GetDbInt(reader["NeedDay"]); entity.WLMemId = StringUtils.GetDbInt(reader["WLMemId"]); entity.WLRemark = StringUtils.GetDbString(reader["WLRemark"]); entity.CGTotalPrice = StringUtils.GetDbDecimal(reader["CGTotalPrice"]); entity.TotalPrice = StringUtils.GetDbDecimal(reader["TotalPrice"]); entity.MemId = StringUtils.GetDbInt(reader["MemId"]); entity.CreateManId = StringUtils.GetDbInt(reader["CreateManId"]); entity.CreateTime = StringUtils.GetDbDateTime(reader["CreateTime"]); entity.Status = StringUtils.GetDbInt(reader["Status"]); entity.ScopeType = StringUtils.GetDbInt(reader["ScopeType"]); entity.CancelReasonId = StringUtils.GetDbInt(reader["CancelReasonId"]); entity.CancelRemark = StringUtils.GetDbString(reader["CancelRemark"]); } } return entity; }
/// <summary> /// 读取记录列表。 /// </summary> /// <param name="db">数据库操作对象</param> /// <param name="columns">需要返回的列,不提供任何列名时默认将返回所有列</param> public IList<ConfirmOrderEntity> GetConfirmOrderAll() { string sql = @"SELECT [Id],[Code],[VinNo],[VinPic],[EngineModelNo],[EngineModelPic],[CarBrandId],[CarBrandName],[CarSeriesId],[CarSeriesName],[CarTypeModelId],[CarTypeModelName],[Remark],[NeedDay],[WLRemark],[CGTotalPrice],[TotalPrice],[MemId], [CreateManId],[CreateTime],[Status],[CancelReasonId],[CancelRemark],ScopeType from dbo.[ConfirmOrder] WITH(NOLOCK) "; IList<ConfirmOrderEntity> entityList = new List<ConfirmOrderEntity>(); DbCommand cmd = db.GetSqlStringCommand(sql); using (IDataReader reader = db.ExecuteReader(cmd)) { while (reader.Read()) { ConfirmOrderEntity entity=new ConfirmOrderEntity(); entity.Id=StringUtils.GetDbInt(reader["Id"]); entity.Code=StringUtils.GetDbString(reader["Code"]); entity.VinNo=StringUtils.GetDbString(reader["VinNo"]); entity.VinPic=StringUtils.GetDbString(reader["VinPic"]); entity.EngineModelNo = StringUtils.GetDbString(reader["EngineModelNo"]); entity.EngineModelPic = StringUtils.GetDbString(reader["EngineModelPic"]); entity.CarBrandId=StringUtils.GetDbInt(reader["CarBrandId"]); entity.CarBrandName=StringUtils.GetDbString(reader["CarBrandName"]); entity.CarSeriesId=StringUtils.GetDbInt(reader["CarSeriesId"]); entity.CarSeriesName=StringUtils.GetDbString(reader["CarSeriesName"]); entity.CarTypeModelId=StringUtils.GetDbInt(reader["CarTypeModelId"]); entity.CarTypeModelName=StringUtils.GetDbString(reader["CarTypeModelName"]); entity.Remark=StringUtils.GetDbString(reader["Remark"]); entity.NeedDay=StringUtils.GetDbInt(reader["NeedDay"]); entity.WLRemark=StringUtils.GetDbString(reader["WLRemark"]); entity.CGTotalPrice=StringUtils.GetDbDecimal(reader["CGTotalPrice"]); entity.TotalPrice=StringUtils.GetDbDecimal(reader["TotalPrice"]); entity.MemId=StringUtils.GetDbInt(reader["MemId"]); entity.CreateManId=StringUtils.GetDbInt(reader["CreateManId"]); entity.CreateTime=StringUtils.GetDbDateTime(reader["CreateTime"]); entity.Status=StringUtils.GetDbInt(reader["Status"]); entity.ScopeType = StringUtils.GetDbInt(reader["ScopeType"]); entity.CancelReasonId=StringUtils.GetDbInt(reader["CancelReasonId"]); entity.CancelRemark=StringUtils.GetDbString(reader["CancelRemark"]); entityList.Add(entity); } } return entityList; }
/// <summary> /// 更新一条ConfirmOrder记录。 /// 该方法提供给界面等UI层调用 /// </summary> /// <param name="confirmOrder">待更新的实体对象</param> /// <param name="columns">要更新的列名,不提供任何列名时默认将更新主键之外的所有列</param> public int UpdateConfirmOrder(ConfirmOrderEntity confirmOrder) { return(ConfirmOrderDA.Instance.UpdateConfirmOrder(confirmOrder)); }
/// <summary> /// 判断对象是否存在 /// </summary> /// <param name="dicEnum"></param> /// <returns></returns> public bool IsExist(ConfirmOrderEntity confirmOrder) { return(ConfirmOrderDA.Instance.ExistNum(confirmOrder) > 0); }
/// <summary> /// 供应商备货通知 /// </summary> /// <param name="code"></param> /// <returns></returns> public bool CGMemStockNote(string code) { bool result = false; ConfirmOrderEntity order = ConfirmOrderBLL.Instance.GetConfirmOrderByCode(code); IList <VWConfirmOrderCGMemEntity> memberlist = ConfirmOrderProductBLL.Instance.GetConfirmCGMemsByCode(code); if (order != null && order.Id > 0 && memberlist != null && memberlist.Count > 0) { foreach (VWConfirmOrderCGMemEntity member in memberlist) { //if (order.ScopeType==(int)SuperMarket.Model.ScopeTypeEnum.Normal) //{ // ClassCGScopeEntity cgscope = new ClassCGScopeEntity(); // cgscope.ScopeClassName = order.CarBrandName; // cgscope.ClassId = 0; // cgscope.IsActive = 1; // cgscope.Sort = 0; // cgscope.IsRoot = 0; // cgscope.ParentId = 0; // ClassCGScopeBLL.Instance.AddClassCGScope(cgscope); //} MemCGScopeEntity scope = new MemCGScopeEntity(); scope.BrandId = order.CarBrandId; scope.BrandName = order.CarBrandName; scope.ClassId = 0; scope.ClassName = ""; scope.CGMemId = member.CGMemId; scope.CreateTime = DateTime.Now; scope.IsActive = 1; scope.ScopeType = (int)ScopeTypeEnum.Car; MemCGScopeBLL.Instance.AddMemCGScope(scope); VWMemberEntity _cgmementity = MemberBLL.Instance.GetVWMember(member.CGMemId); if (!string.IsNullOrEmpty(_cgmementity.WeChat)) { string redirecturl = ConfigCore.Instance.ConfigCommonEntity.InquiryMobileWebUrl + string.Format(WebUrlEnum.ConfirmCGStockNote, code); Hashtable hashentity = new Hashtable(); hashentity.Add("first", new WeiXinUnitEntity() { value = "订单已确认,准备发货啦" }); hashentity.Add("keyword1", new WeiXinUnitEntity() { value = code }); hashentity.Add("keyword2", new WeiXinUnitEntity() { value = member.CGTotalPrice.ToString("0.00") }); hashentity.Add("keyword3", new WeiXinUnitEntity() { value = "易店心" }); hashentity.Add("keyword4", new WeiXinUnitEntity() { value = "待发货" }); hashentity.Add("remark", new WeiXinUnitEntity() { value = "客户已确认,尽快备货吧" }); WeiXinJsSdk.Instance.SendWeiXinMsgNote(_cgmementity.WeChat, redirecturl, WeiXinTemplet.OrderStockNote, hashentity); } } } return(result); }