Пример #1
0
        /// <summary>
        /// 审核采购订单
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        public static int CKInDepot(string id, int userid)
        {
            PSSEntities db = new PSSEntities();
            int         fg = 1;

            ///以下开始事务操作
            using (var tx = db.Database.BeginTransaction())
            {
                try
                {
                    List <OtherInDepotDetail> prolist = db.OtherInDepotDetail.Where(s => s.OIDID.Equals(id)).ToList();
                    OtherInDepot    st   = db.OtherInDepot.FirstOrDefault(s => s.OIDID.Equals(id));
                    ObjectParameter para = new ObjectParameter("DD", "");
                    db.pro_order("InOutDepot", "IODNum", "RK", para);
                    string IODNum = para.Value.ToString();
                    //添加入库记录
                    db.InOutDepot.Add(new InOutDepot()
                    {
                        DepotID = st.DepotID, IODType = 1, IODNum = IODNum, IODDate = DateTime.Now, IODUser = userid, IODDesc = st.OIDDesc
                    });
                    db.SaveChanges();
                    int inod = db.InOutDepot.Max(i => i.IODID);
                    // db.InOutDepot.
                    foreach (OtherInDepotDetail item in prolist)
                    {
                        if (db.DepotStock.FirstOrDefault(p => p.DepotID.Equals(st.DepotID) && p.ProID == item.ProID) == null)
                        {//如果指定的仓库中不存在该商品
                            //【为这个仓库添加一个新商品】
                            db.DepotStock.Add(new DepotStock()
                            {
                                DepotID = st.DepotID, ProID = item.ProID, DSAmount = item.OIDDAmount, DSPrice = item.OIDDPrice
                            });
                        }
                        else
                        {//如果指定仓库存在这个商品,修改这个商品的库存
                            DepotStock ds = db.DepotStock.FirstOrDefault(d => d.ProID == item.ProID);
                            ds.DSAmount = item.OIDDAmount + ds.DSAmount;
                        }
                        //添加入库记录详情
                        db.InOutDepotDetail.Add(new InOutDepotDetail()
                        {
                            IODID = inod, ProID = item.ProID, IODDAmount = item.OIDDAmount, IODDPrice = item.OIDDPrice
                        });
                    }
                    st.OIDState = 1;
                    db.SaveChanges();
                    tx.Commit();
                }
                catch (Exception e)
                {
                    tx.Rollback();
                    throw new Exception(e.Message);
                }
            }
            return(fg);
        }
Пример #2
0
        /// <summary>
        /// 审核报损单
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        public static int CKInDepot(string id, int userid)
        {
            PSSEntities db = new PSSEntities();
            int         fg = 1;

            ///以下开始事务操作
            using (var tx = db.Database.BeginTransaction())
            {
                try
                {
                    Losts st = db.Losts.FirstOrDefault(s => s.LostID.Equals(id));
                    st.LostState = 1;
                    ObjectParameter para = new ObjectParameter("DD", "");
                    db.pro_order("InOutDepot", "IODNum", "RK", para);
                    string IODNum = para.Value.ToString();
                    //添加出库记录
                    db.InOutDepot.Add(new InOutDepot()
                    {
                        DepotID = st.DepotID, IODType = 2, IODNum = IODNum, IODDate = DateTime.Now, IODUser = userid, IODDesc = st.LostDesc
                    });
                    db.SaveChanges();
                    int inod = db.InOutDepot.Max(i => i.IODID);
                    List <LostDetail> list = db.LostDetail.Where(p => p.LostID.Equals(id)).ToList();//销售出库详单
                    foreach (LostDetail item in list)
                    {
                        if (db.DepotStock.FirstOrDefault(p => p.DepotID.Equals(st.DepotID) && p.ProID == item.ProID) == null)
                        {//如果指定的仓库中不存在该商品
                            throw new Exception("报损仓库不存在该商品,操作失败!");
                        }
                        else
                        {//如果指定仓库存在这个商品,修改这个商品的库存
                            DepotStock ds = db.DepotStock.FirstOrDefault(d => d.ProID == item.ProID);
                            if (ds.DSAmount < item.LDAmount)
                            {
                                throw new Exception("商品库存小于报损数量,操作失败!");
                            }
                            ds.DSAmount = ds.DSAmount - item.LDAmount;
                        }
                        //添加入库记录详情
                        db.InOutDepotDetail.Add(new InOutDepotDetail()
                        {
                            IODID = inod, ProID = item.ProID, IODDAmount = item.LDAmount, IODDPrice = item.LDPrice
                        });
                    }
                    db.SaveChanges();
                    tx.Commit();
                }
                catch (Exception e)
                {
                    tx.Rollback();
                    throw new Exception(e.Message);
                }
            }
            return(fg);
        }
Пример #3
0
        /// <summary>
        /// 删除供应商
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        public static int Delete(string id)
        {
            PSSEntities db = new PSSEntities();

            db.ProductLend.Remove(db.ProductLend.FirstOrDefault(p => p.PPID == id));
            return(db.SaveChanges());
        }
Пример #4
0
        /// <summary>
        /// 修改密码
        /// </summary>
        /// <param name="user"></param>
        /// <returns></returns>
        public static int EditPwd(Users user)
        {
            PSSEntities db = new PSSEntities();

            db.Entry <Users>(user).State = System.Data.Entity.EntityState.Modified;
            return(db.SaveChanges());
        }
Пример #5
0
        /// <summary>
        /// 修改【---事务---】
        /// </summary>
        /// <param name="dp"></param>
        /// <returns></returns>
        public static int EdiStocks(PayOffs dep, List <PayOffDetail> list)
        {
            PSSEntities db = new PSSEntities();
            int         fg = 1;

            ///以下开始事务操作
            using (var tx = db.Database.BeginTransaction())
            {
                try
                {
                    //将要修改的创建人找回来,避免修改时没有创建人
                    PayOffs st = db.PayOffs.FirstOrDefault(p => p.POID == dep.POID);
                    st.DepotID = dep.DepotID;
                    st.POState = dep.POState;
                    st.PODesc  = dep.PODesc;
                    db.PayOffDetail.RemoveRange(db.PayOffDetail.Where(p => p.POID == dep.POID));
                    if (list != null)
                    {
                        db.PayOffDetail.AddRange(list);
                    }
                    db.SaveChanges();
                    tx.Commit();
                }
                catch (Exception e)
                {
                    fg = 0;
                    tx.Rollback();
                    throw new Exception(e.Message);
                }
            }
            return(fg);
        }
Пример #6
0
        /// <summary>
        /// 删除客户信息
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        public static int Delete(string id)
        {
            PSSEntities db = new PSSEntities();

            db.Customers.Remove(db.Customers.FirstOrDefault(c => c.CusID == id));
            return(db.SaveChanges());
        }
Пример #7
0
        /// <summary>
        /// 添加
        /// </summary>
        /// <param name="cus"></param>
        /// <returns></returns>
        public static int Add(Customers cus)
        {
            PSSEntities db = new PSSEntities();

            db.Customers.Add(cus);
            return(db.SaveChanges());
        }
Пример #8
0
        /// <summary>
        /// 修改销售退货单
        /// </summary>
        /// <param name="qp"></param>
        /// <param name="list"></param>
        /// <returns></returns>
        internal static int EditStocks(SaleReturn qp, List <SaleReturnDetail> list)
        {
            PSSEntities db = new PSSEntities();
            int         fg = 1;

            using (var tx = db.Database.BeginTransaction())
            {
                try
                {
                    SaleReturn c = db.SaleReturn.FirstOrDefault(p => p.SRID.Equals(qp.SRID));
                    c.CusID   = qp.CusID;
                    c.DepotID = qp.DepotID;
                    c.SDID    = qp.SDID;
                    c.SRDate  = qp.SRDate;
                    c.SRDesc  = qp.SRDesc;
                    db.SaleReturnDetail.RemoveRange(db.SaleReturnDetail.Where(s => s.SRID.Equals(qp.SRID)));
                    if (list != null)
                    {
                        db.SaleReturnDetail.AddRange(list);
                    }

                    db.SaveChanges();
                    tx.Commit();
                }
                catch (Exception ex)
                {
                    fg = 0;
                    tx.Rollback();
                    throw new Exception(ex.Message);
                }
            }
            return(fg);
        }
Пример #9
0
        /// <summary>
        /// 修改【---事务---】
        /// </summary>
        /// <param name="dp"></param>
        /// <returns></returns>
        public static int EdiStocks(Devolves dep, List <DevolveDetail> list)
        {
            PSSEntities db = new PSSEntities();
            int         fg = 1;

            ///以下开始事务操作
            using (var tx = db.Database.BeginTransaction())
            {
                try
                {
                    //将要修改的创建人找回来,避免修改时没有创建人
                    Devolves st = db.Devolves.FirstOrDefault(p => p.DevID == dep.DevID);
                    st.DevInID  = dep.DevInID;                                                       //调入仓库
                    st.DevOutID = dep.DevOutID;                                                      //调出仓库
                    st.DevDesc  = dep.DevDesc;                                                       //描述
                    st.DevDate  = dep.DevDate;                                                       //操作时间
                    db.DevolveDetail.RemoveRange(db.DevolveDetail.Where(p => p.DevID == dep.DevID)); //删除详单
                    if (list != null)
                    {
                        db.DevolveDetail.AddRange(list);              //如果添加的详单不为空的话,那么就添加详单
                    }
                    db.SaveChanges();
                    tx.Commit();
                }
                catch (Exception e)
                {
                    fg = 0;
                    tx.Rollback();
                    throw new Exception(e.Message);
                }
            }
            return(fg);
        }
Пример #10
0
        /// <summary>
        /// 删除
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        public static int DelDepots(string id)
        {
            PSSEntities db = new PSSEntities();

            db.Depots.Remove(db.Depots.FirstOrDefault(d => d.DepotID.Equals(id)));
            return(db.SaveChanges());
        }
Пример #11
0
        /// <summary>
        /// 添加仓库
        /// </summary>
        /// <param name="dep"></param>
        /// <returns></returns>
        public static int AddDepots(Depots dep)
        {
            PSSEntities db = new PSSEntities();

            db.Depots.Add(dep);
            return(db.SaveChanges());
        }
Пример #12
0
        /// <summary>
        /// 修改角色的权限
        /// </summary>
        /// <param name="roleid">角色ID</param>
        /// <param name="pds">权限ID集合</param>
        /// <returns></returns>
        public static int EditRolePopedoms(int roleid, List <int?> pds)
        {
            PSSEntities db = new PSSEntities();
            int         fg = 1;

            using (var tx = db.Database.BeginTransaction())
            {
                try
                {
                    db.PopedomRole.RemoveRange(db.PopedomRole.Where(s => s.RoleID == roleid));
                    for (int i = 0; i < pds.Count; i++)
                    {
                        db.PopedomRole.Add(new PopedomRole()
                        {
                            RoleID = roleid, PopID = pds[i]
                        });
                    }
                    db.SaveChanges();
                    tx.Commit();
                }
                catch (Exception ex)
                {
                    fg = 0;
                    tx.Rollback();
                    throw new Exception(ex.Message);
                }
            }
            return(fg);
        }
Пример #13
0
        /// <summary>
        /// 删除客户等级
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        public static int Delete(int id)
        {
            PSSEntities db = new PSSEntities();

            db.CustomerLevel.Remove(db.CustomerLevel.FirstOrDefault(c => c.CLID == id));
            return(db.SaveChanges());
        }
Пример #14
0
        /// <summary>
        /// 添加客户等级
        /// </summary>
        /// <param name="cusl"></param>
        /// <returns></returns>
        public static int Add(CustomerLevel cusl)
        {
            PSSEntities db = new PSSEntities();

            db.CustomerLevel.Add(cusl);
            return(db.SaveChanges());
        }
Пример #15
0
        /// <summary>
        /// 修改【---事务---】
        /// </summary>
        /// <param name="dp"></param>
        /// <returns></returns>
        public static int EdiStocks(CheckDepot dep, List <CheckDepotDetail> list)
        {
            PSSEntities db = new PSSEntities();
            int         fg = 1;

            ///以下开始事务操作
            using (var tx = db.Database.BeginTransaction())
            {
                try
                {
                    //将要修改的创建人找回来,避免修改时没有创建人
                    CheckDepot st = db.CheckDepot.FirstOrDefault(p => p.CDID == dep.CDID);
                    st.DepotID = dep.DepotID;                                                            //盘点仓库
                    st.CDDate  = dep.CDDate;                                                             //盘点时间
                    st.CDDesc  = dep.CDDesc;                                                             //备注
                    db.CheckDepotDetail.RemoveRange(db.CheckDepotDetail.Where(p => p.CDID == dep.CDID)); //删除详单
                    if (list != null)
                    {
                        db.CheckDepotDetail.AddRange(list);              //如果添加的详单不为空的话,那么就添加详单
                    }
                    db.SaveChanges();
                    tx.Commit();
                }
                catch (Exception e)
                {
                    fg = 0;
                    tx.Rollback();
                    throw new Exception(e.Message);
                }
            }
            return(fg);
        }
Пример #16
0
        /// <summary>
        /// 修改
        /// </summary>
        /// <param name="pro"></param>
        /// <returns></returns>
        public static int Edit(ProductUnit pro)
        {
            PSSEntities db = new PSSEntities();

            db.Entry <ProductUnit>(pro).State = System.Data.Entity.EntityState.Modified;
            return(db.SaveChanges());
        }
Пример #17
0
        /// <summary>
        /// 删除
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        public static int Delete(int id)
        {
            PSSEntities db = new PSSEntities();

            db.ProductUnit.Remove(db.ProductUnit.FirstOrDefault(p => p.PUID == id));
            return(db.SaveChanges());
        }
Пример #18
0
        /// <summary>
        /// 修改仓库
        /// </summary>
        /// <param name="dp"></param>
        /// <returns></returns>
        public static int EditDepot(Depots dp)
        {
            PSSEntities db = new PSSEntities();

            db.Entry <Depots>(dp).State = System.Data.Entity.EntityState.Modified;
            return(db.SaveChanges());
        }
Пример #19
0
        public void OnActionExecuted(ActionExecutedContext filterContext)
        {
            PSSEntities db = new PSSEntities();
            //写入日志
            RouteValueDictionary rvd = filterContext.RouteData.Values;
            string area       = rvd["area"] as string;       //域名
            string action     = rvd["action"] as string;     //action名字
            string controller = rvd["controller"] as string; //控制器名字
            string username   = filterContext.HttpContext.Session["name"] as string;

            if (area == null)
            {
                area = "NoArea";
            }
            if (username == null)
            {
                username = "******";
            }
            try
            {
                SystemLog sl = new SystemLog();
                sl.time = DateTime.Now;
                string value = "用户:" + username + "进行" + OpcrateName + "操作!";
                sl.value = value;
                sl.islog = 1;
                db.SystemLog.Add(sl);
                db.SaveChanges();
            }
            catch (Exception ex)
            {
                filterContext.HttpContext.Response.Write(ex.Message);
            }
        }
Пример #20
0
        public static int Add(Roles r)
        {
            PSSEntities db = new PSSEntities();

            db.Roles.Add(r);
            return(db.SaveChanges());
        }
Пример #21
0
        /// <summary>
        /// 添加销售退货单
        /// </summary>
        /// <param name="qp"></param>
        /// <param name="list"></param>
        /// <returns></returns>
        internal static int AddStocks(SaleReturn qp, List <SaleReturnDetail> list)
        {
            PSSEntities db = new PSSEntities();
            int         fg = 1;

            using (var tx = db.Database.BeginTransaction())
            {
                try
                {
                    db.SaleReturn.Add(qp);
                    if (list != null)
                    {
                        db.SaleReturnDetail.AddRange(list);
                    }
                    db.SaveChanges();
                    tx.Commit();
                }
                catch (Exception ex)
                {
                    fg = 0;
                    tx.Rollback();
                    throw new Exception(ex.Message);
                }
            }
            return(fg);
        }
Пример #22
0
        /// <summary>
        /// 添加
        /// </summary>
        /// <param name="dep"></param>
        /// <returns></returns>
        public static int AddStockDetail(StockDetail dep)
        {
            PSSEntities db = new PSSEntities();

            db.StockDetail.Add(dep);
            return(db.SaveChanges());
        }
Пример #23
0
        /// <summary>
        /// 修改客户信息
        /// </summary>
        /// <param name="cus"></param>
        /// <returns></returns>
        public static int Edit(Customers cus)
        {
            PSSEntities db = new PSSEntities();

            db.Entry <Customers>(cus).State = System.Data.Entity.EntityState.Modified;
            return(db.SaveChanges());
        }
Пример #24
0
        /// <summary>
        /// 删除
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        public static int DelStockDetail(int id)
        {
            PSSEntities db = new PSSEntities();

            db.StockDetail.Remove(db.StockDetail.FirstOrDefault(d => d.SDetailID == id));
            return(db.SaveChanges());
        }
Пример #25
0
        /// <summary>
        /// 添加【---事务---】
        /// </summary>
        /// <param name="dep"></param>
        /// <returns></returns>
        public static int AddStocks(PayOffs dep, List <PayOffDetail> list)
        {
            PSSEntities db = new PSSEntities();
            int         fg = 1;

            using (var tx = db.Database.BeginTransaction())
            {
                try
                {
                    db.PayOffs.Add(dep);
                    if (list != null)
                    {
                        db.PayOffDetail.AddRange(list);
                    }
                    db.SaveChanges();
                    tx.Commit();
                }
                catch (Exception e)
                {
                    fg = 0;
                    tx.Rollback();
                    throw new Exception(e.Message);
                }
            }
            return(fg);
        }
Пример #26
0
        /// <summary>
        /// 修改
        /// </summary>
        /// <param name="dp"></param>
        /// <returns></returns>
        public static int EdiStockDetail(StockDetail dp)
        {
            PSSEntities db = new PSSEntities();

            db.Entry <StockDetail>(dp).State = System.Data.Entity.EntityState.Modified;
            return(db.SaveChanges());
        }
Пример #27
0
        /// <summary>
        /// 修改用户角色
        /// </summary>
        /// <returns></returns>
        public static int EditUserRole(int userid, List <int?> list)
        {
            PSSEntities db = new PSSEntities();
            int         fs = 1;

            using (var tx = db.Database.BeginTransaction())
            {
                try
                {
                    db.UsersRole.RemoveRange(db.UsersRole.Where(s => s.UsersID == userid));
                    for (int i = 0; i < list.Count; i++)
                    {
                        db.UsersRole.Add(new UsersRole()
                        {
                            UsersID = userid, RoleID = list[i]
                        });
                    }
                    db.SaveChanges();
                    tx.Commit();
                }
                catch (Exception ex)
                {
                    fs = 0;
                    tx.Rollback();
                    throw new Exception(ex.Message);
                }
            }
            return(fs);
        }
Пример #28
0
        /// <summary>
        /// 添加
        /// </summary>
        /// <param name="pro"></param>
        /// <returns></returns>
        public static int Add(ProductUnit pro)
        {
            PSSEntities db = new PSSEntities();

            db.ProductUnit.Add(pro);
            return(db.SaveChanges());
        }
Пример #29
0
        /// <summary>
        /// 添加用户
        /// </summary>
        /// <param name="u">用户对象</param>
        /// <returns></returns>
        public static int Add(Users u)
        {
            PSSEntities db = new PSSEntities();

            db.Users.Add(u);
            return(db.SaveChanges());
        }
Пример #30
0
        /// <summary>
        /// 添加供货商
        /// </summary>
        /// <param name="pd"></param>
        /// <returns></returns>
        public static int Add(ProductLend pd)
        {
            PSSEntities db = new PSSEntities();

            db.ProductLend.Add(pd);
            return(db.SaveChanges());
        }