Exemple #1
0
 /// <summary>
 /// 样衣借出
 /// </summary>
 /// <param name="styleId"></param>
 /// <param name="_user"></param>
 /// <returns></returns>
 public static bool DoLend(string styleId, User _user)
 {
     using (SunginDataContext sc = new SunginDataContext())
     {
         var        style = sc.SampleBaseInfos.SingleOrDefault(p => p.StyleId == styleId);
         LendRecord lr    = sc.LendRecords.SingleOrDefault(p => p.StyleId == styleId && p.DdId == _user.DdId && (p.State != LendRecordStats.已还回));
         if (style != null && lr == null)
         {
             lr = new LendRecord
             {
                 StyleId  = style.StyleId,
                 DdId     = _user.DdId,
                 UserName = _user.UserName,
                 UserDept = _user.DepartName,
             };
             lr.SetCreateUser(_user.UserName);
             sc.LendRecords.Add(lr);
         }
         else
         {
             return(false);
         }
         sc.SaveChanges();
     }
     return(true);
 }
Exemple #2
0
 public bool LoadSampleById(string styleId)
 {
     try
     {
         using (SunginDataContext sc = new SunginDataContext())
         {
             BaseInfo     = sc.SampleBaseInfos.SingleOrDefault(p => p.StyleId == styleId);
             ProofingInfo = sc.Proofings.SingleOrDefault(p => p.StyleId == styleId);
             if (ProofingInfo == null)
             {
                 ProofingInfo = new Proofing();
             }
             ProductInfo = sc.ProductionRecords.SingleOrDefault(p => p.StyleId == styleId);
             if (ProductInfo == null)
             {
                 ProductInfo = new ProductionRecord();
             }
             StockList   = sc.GarmentStocks.Where(p => p.StyleId == styleId).ToList();
             Files       = sc.StyleFiles.Where(p => p.StyleId == BaseInfo.StyleId).ToList();
             IsNewSample = false;
             return(true);
         }
     }
     catch
     {
         return(false);
     }
 }
Exemple #3
0
 public void SyncUsers(List <User> users)
 {
     using (SunginDataContext sc = new SunginDataContext())
     {
         var ulist = sc.Users.ToList();
         ulist.ForEach(p => p.IsDelete = true);
         users.ForEach(p =>
         {
             var u = ulist.SingleOrDefault(t => t.DdId == p.DdId);
             if (u == null)
             {
                 p.Pinyin = PinyinHelper.PinyinString(p.UserName);
                 sc.Users.Add(p);
             }
             else
             {
                 u.Pinyin     = PinyinHelper.PinyinString(u.UserName);
                 u.UserName   = p.UserName;
                 u.IsLeader   = p.IsLeader;
                 u.DeptId     = p.DeptId;
                 u.DepartName = p.DepartName;
                 u.Avatar     = p.Avatar;
                 u.IsDelete   = false;
             };
         });
         sc.SaveChanges();
     }
 }
        public static dynamic GetDdLenOutObj(ILendRecord p)
        {
            object obj = null;

            using (SunginDataContext sc = new SunginDataContext())
            {
                ISampleBaseInfo sb = sc.SampleBaseInfos.SingleOrDefault(item => item.StyleId == p.StyleId);
                if (sb != null)
                {
                    var pic = sc.StyleFiles.FirstOrDefault(f => f.StyleId == p.StyleId && f.FileType == FileType.Pic);
                    obj = new
                    {
                        p.Id,
                        sb.StyleId,
                        sb.StyleNo,
                        Pic = pic.FileName,
                        sb.Gauge,
                        sb.Weight,
                        sb.Material,
                        sb.Counts,
                        p.LendOutNo,
                        sb.State,
                        sb.CanLendOut,
                        LendState = p.State,
                        AsLend    = sb.State == SampleState.在库,
                        StatsText = sb.State.ToString(),
                    };
                }
                return(obj);
            }
        }
        public static dynamic GetReturnObj(ISampleBaseInfo baseinfo)
        {
            using (SunginDataContext sc = new SunginDataContext())
            {
                IProofing pr = sc.Proofings.SingleOrDefault(p => p.StyleId == baseinfo.StyleId);
                if (pr == null)
                {
                    pr = new Proofing();
                }
                IProductionRecord pd = sc.ProductionRecords.SingleOrDefault(p => p.StyleId == baseinfo.StyleId);
                if (pd == null)
                {
                    pd = new ProductionRecord();
                }
                var    Files     = sc.StyleFiles.Where(p => !p.IsDelete && p.StyleId == baseinfo.StyleId).Select(p => new { p.DisplayName, p.FileName, p.FileType }).ToList();
                var    FirstPic  = Files.FirstOrDefault(p => p.FileType == FileType.Pic);
                var    StockData = sc.GarmentStocks.Where(p => !p.IsDelete && p.StyleId == baseinfo.StyleId).Select(p => new { size = p.Size, color = p.Color, num = p.Num }).ToList();
                string Pic       = FirstPic != null ? FirstPic.FileName : "";

                return(new
                {
                    baseinfo.Id,
                    baseinfo.StyleId,
                    baseinfo.StyleNo,
                    baseinfo.Color,
                    baseinfo.Weight,
                    baseinfo.Gauge,
                    baseinfo.Size,
                    baseinfo.Kinds,
                    baseinfo.CanLendOut,
                    baseinfo.HaveStock,
                    User = baseinfo.CreateUser,
                    baseinfo.State,
                    baseinfo.CostPrice,
                    baseinfo.FactoryPrice,
                    baseinfo.SalePrice,
                    baseinfo.DiscountPrice,
                    baseinfo.Counts,
                    StateText = baseinfo.State.ToString(),
                    StyleTag = JsonHelper.ToObj(baseinfo.StyleTag),
                    Material = JsonHelper.ToObj(baseinfo.Material),
                    CreateDate = baseinfo.CreateDate != null?baseinfo.CreateDate.Value.Date.ToShortDateString() : "",
                                     pr.ProofingCompany,
                                     pr.ProgamPeople,
                                     pr.TechnologyPeople,
                                     baseinfo.DeptName,
                                     pr.WeaveTime,
                                     pr.LinkTime,
                                     ProofingDate = pr.ProofingDate != null?pr.ProofingDate.Value.Date.ToShortDateString() : "",
                                                        pd.ClientName,
                                                        pd.ProductFactory,
                                                        pd.ProductNum,
                                                        pd.Price,
                                                        ProductDate = pd.ProductDate != null?pd.ProductDate.Value.ToShortDateString() : "",
                                                                          StockData,
                                                                          Pic,
                                                                          Files
                });
            }
        }
Exemple #6
0
        public object GetLendUserList()
        {
            using (SunginDataContext sc = new SunginDataContext())
            {
            }

            return(null);
        }
Exemple #7
0
 public static object GetInputUserList()
 {
     using (SunginDataContext sc = new SunginDataContext())
     {
         var re = sc.SampleBaseInfos.Where(p => !p.IsDelete && p.State == SampleState.待入库).Select(p => new { p.DdId, p.CreateUser }).Distinct();
         return(re);
     }
 }
        public static List <ProofTask> GetNextTask(int Id)
        {
            SunginDataContext sungindc = new SunginDataContext();
            var no    = sungindc.ProofTasks.SingleOrDefault(p => p.Id == Id).TaskNo;
            var tlist = sungindc.ProofTasks.Include(t => t.Process).Where(p => p.UpTaskNo == no).ToList();

            return(tlist);
        }
Exemple #9
0
 /// <summary>
 /// 返回有借用申请的用户清单
 /// </summary>
 /// <returns></returns>
 public static object GetLendUserList()
 {
     using (SunginDataContext sc = new SunginDataContext())
     {
         var re = sc.LendRecords.Where(p => p.State == LendRecordStats.借出审批).Select(p => new { p.DdId, Name = p.UserName }).Distinct().ToList();
         return(re);
     }
 }
Exemple #10
0
 public static object GetTagList()
 {
     using (SunginDataContext sc = new SunginDataContext())
     {
         var list = sc.Codes.Where(p => p.Type == CodeType.Tag).OrderByDescending(t => t.UseCount).Select(p => new { name = p.CodeName, color = p.Value1 }).ToList();
         return(list);
     }
 }
Exemple #11
0
        public List <IPermission> GetList()
        {
            List <IPermission> list = new List <IPermission>();
            var re = new SunginDataContext().Permissions.OrderBy(p => p.Key).ToList();

            list.AddRange(re);
            return(list);
        }
Exemple #12
0
 public static object GetKindsList()
 {
     using (SunginDataContext sc = new SunginDataContext())
     {
         var list = sc.Codes.Where(p => p.Type == CodeType.Kinds).OrderByDescending(t => t.UseCount).Select(p => p.CodeName).Distinct().ToList();
         return(list);
     }
 }
Exemple #13
0
 public static object GetMaterialList()
 {
     using (SunginDataContext sc = new SunginDataContext())
     {
         //var list = sc.Codes.Where(p => p.Type == CodeType.Material).OrderByDescending(t => t.UseCount).Select(p => p.CodeName).ToList();
         var list = sc.Materials.OrderByDescending(p => p.UseCount).Select(p => new { p.CnName, p.EnName, p.UseCount }).ToList();
         return(list);
     }
 }
Exemple #14
0
        public List <string> GetPermissionsKeys(string DdId)
        {
            var urList = DataQuery.GetRecords <UserRole>(p => p.DdId == DdId).Select(t => t.RoleId).ToArray();
            //var urplist = new SampleContext().UserRolePermissions.Where(p=>p.IsDelete==false).Where(p => urList.Contains(p.RoleId)).Select(r=>r.Key).Distinct().ToList();
            SunginDataContext sc = new SunginDataContext();
            var re = sc.UserRolePermissions.Join(sc.Permissions, e => e.Key, o => o.Key, (e, o) => new { e.RoleId, e.IsDelete, e.Key, o.Name, o.CnName }).Where(p => !p.IsDelete).Where(p => urList.Contains(p.RoleId)).Select(p => p.Name).Distinct().ToList();

            return(re);
        }
Exemple #15
0
 public static void AddUser(User u)
 {
     using (SunginDataContext sc = new SunginDataContext())
     {
         u.SetCreateUser("system");
         sc.Users.Add(u);
         sc.SaveChanges();
     }
 }
Exemple #16
0
 /// <summary>
 /// 更新登录信息
 /// </summary>
 public User UpDateLoginInfo(User _user)
 {
     using (SunginDataContext sc = new SunginDataContext())
     {
         var user = sc.Users.SingleOrDefault(p => p.DdId == _user.DdId);
         SetLoginInfo(ref user);
         sc.SaveChanges();
         return(user);
     }
 }
Exemple #17
0
 public void AddUser(User user)
 {
     using (SunginDataContext sc = new SunginDataContext())
     {
         SetLoginInfo(ref user);
         user.SetCreateUser("system");
         user.Pinyin = PinyinHelper.PinyinString(user.UserName);
         sc.Users.Add(user);
         sc.SaveChanges();
     }
 }
Exemple #18
0
 public static void ClearRoleBeforDate()
 {
     using (SunginDataContext sc = new SunginDataContext())
     {
         var list = sc.Users.Where(p => p.Role != UserRoleU.一般用户).ToList();
         list.ForEach(p =>
         {
             p.Role            = UserRoleU.一般用户;
             sc.Entry(p).State = System.Data.Entity.EntityState.Modified;
         });
         sc.SaveChanges();
     }
 }
Exemple #19
0
        public static void RebuildFileStyleId()
        {
            SunginDataContext sdc = new SunginDataContext();

            sdc.StyleFiles.ToList().ForEach(f =>
            {
                string name = f.FileName;
                string id   = name.Substring(0, 10);

                f.StyleId = id;
            });
            sdc.SaveChanges();
        }
Exemple #20
0
        public bool DeleteProofFile(int id)
        {
            using (SunginDataContext sdc = new SunginDataContext())
            {
                var re = sdc.ProofFiles.Where(p => p.Id == id && p.CreateUser == user.UserName).SingleOrDefault();

                if (re != null)
                {
                    re.Delete(user.UserName);
                    sdc.SaveChanges();
                    return(true);
                }
            }

            return(false);
        }
Exemple #21
0
        /// <summary>
        /// 返回所有借用清单
        /// </summary>
        /// <param name="PageId"></param>
        /// <param name="pageSize"></param>
        /// <returns></returns>
        public static object GetAllLendOutList(int PageId = 1, int PageSize = 20)
        {
            using (SunginDataContext sc = new SunginDataContext())
            {
                int count = sc.LendRecords.Count(p => !p.IsDelete && p.State == LendRecordStats.已借出);

                List <LendRecord> lr  = sc.LendRecords.Where(p => !p.IsDelete && p.State == LendRecordStats.已借出).OrderByDescending(p => p.DdId).Skip(PageSize * (PageId - 1)).Take(PageSize).ToList();
                List <object>     obj = new List <object>();;
                lr.ForEach(p =>
                {
                    var sb = sc.SampleBaseInfos.SingleOrDefault(t => t.StyleId == p.StyleId);
                    obj.Add(new { p.Id, p.StyleId, p.UserName, p.UserDept, sb.StyleNo, p.CreateDate, baseinfo = SampleHelper.GetReturnObj(sb) });
                });
                return(new { items = obj, total = count, current = PageId, pageSize = PageSize });
            }
        }
Exemple #22
0
        public static string GetKey(string keyName)
        {
            string k = "";

            using (SunginDataContext sc = new SunginDataContext())
            {
                var key = sc.KMs.Where(p => p.KeyName == keyName).SingleOrDefault();
                if (key != null)
                {
                    key.KeyValue++;
                    k = key.BeginKey + key.KeyValue.ToString();
                    sc.SaveChanges();
                }
            }
            return(k);
        }
Exemple #23
0
 /// <summary>
 /// 删除指定待借样衣
 /// </summary>
 /// <param name="styleId"></param>
 /// <param name="user"></param>
 /// <returns></returns>
 public static bool DoDelete(int LendId, User _user)
 {
     using (SunginDataContext sc = new SunginDataContext())
     {
         LendRecord lr = sc.LendRecords.SingleOrDefault(p => p.Id == LendId);
         if (lr != null)
         {
             sc.Entry(lr).State = System.Data.Entity.EntityState.Deleted;
         }
         else
         {
             return(false);
         }
         sc.SaveChanges();
     }
     return(true);
 }
Exemple #24
0
 /// <summary>
 /// 根据登录Str返回用户
 /// </summary>
 /// <param name="loginStr"></param>
 /// <returns></returns>
 public User GetUserByLoginStr(string loginStr)
 {
     using (SunginDataContext dc = new SunginDataContext())
     {
         var _user = dc.Users.Where(p => p.LoginStr == loginStr).FirstOrDefault();
         if (_user != null)
         {
             if (_user.LoginOverTime < DateTime.Now)
             {
                 _user.LoginOverTime = null;
                 dc.SaveChanges();
                 _user = null;
             }
         }
         return(_user);
     };
 }
Exemple #25
0
 /// <summary>
 /// 取消借用审批中的样衣借用
 /// </summary>
 /// <param name="StyleId"></param>
 /// <param name="user">借用者</param>
 /// <returns></returns>
 public static bool CancelLend(string StyleId, User _user)
 {
     using (SunginDataContext sc = new SunginDataContext())
     {
         var lr = sc.LendRecords.SingleOrDefault(p => p.StyleId == StyleId && p.DdId == _user.DdId && p.State == LendRecordStats.借出审批);
         if (lr != null)
         {
             sc.Entry(lr).State = System.Data.Entity.EntityState.Deleted;
             sc.SampleBaseInfos.SingleOrDefault(p => p.StyleId == StyleId).State = SampleState.在库;
             sc.SaveChanges();
             return(true);
         }
         else
         {
             return(false);
         }
     }
 }
Exemple #26
0
 public static void AddCode(Code _code)
 {
     using (SunginDataContext sc = new SunginDataContext())
     {
         {
             var code = sc.Codes.Where(p => p.CodeName == _code.CodeName).SingleOrDefault();
             if (code == null)
             {
                 sc.Codes.Add(_code);
             }
             else
             {
                 code.UseCount++;
             }
         }
         sc.SaveChanges();
     }
 }
Exemple #27
0
 public static bool SetUserRole(string Ddid, UserRoleU ur)
 {
     using (SunginDataContext sc = new SunginDataContext())
     {
         var u = GetUser(Ddid);
         if (u != null)
         {
             u.Role = ur;
             u.SetEditUser("system");
             sc.Entry(u).State = System.Data.Entity.EntityState.Modified;
             sc.SaveChanges();
             return(true);
         }
         else
         {
             return(false);
         }
     }
 }
Exemple #28
0
 public static void AddCode(List <Code> codes)
 {
     using (SunginDataContext sc = new SunginDataContext())
     {
         foreach (var m in codes)
         {
             var code = sc.Codes.Where(p => p.CodeName == m.CodeName).SingleOrDefault();
             if (code == null)
             {
                 sc.Codes.Add(m);
             }
             else
             {
                 code.UseCount++;
             }
         }
         sc.SaveChanges();
     }
 }
Exemple #29
0
        /// <summary>
        /// 从钉钉同步角色和用户
        /// </summary>
        /// <param name="DdOper"></param>
        public static void SyncUserRole(IDdOper DdOper)
        {
            SunginDataContext sc        = new SunginDataContext();
            UserProvider      uProvider = new UserProvider(DdOper);
            RoleProvider      rProvider = new RoleProvider(DdOper);

            RoleOper rOper = new RoleOper();
            UserOper uOper = new UserOper();

            var userList = DataQuery.GetAllRecords <User>();
            var roleList = rProvider.GetRoles("管理系统");

            rOper.UpdateRoles(roleList); //根据返回的roleList更新数据库

            List <IUserRole> urList = new List <IUserRole>();

            roleList.ForEach(role =>
            {
                var ruleUserList = rProvider.GetRoleUserList(role.RoleId);
                if (ruleUserList != null)
                {
                    ruleUserList.ForEach(u =>
                    {
                        var user = uProvider.GetUserInfo(u.Userid);
                        if (userList.Count(c => c.DdId == u.Userid) == 0)
                        {
                            //没有该用户,添加该用户
                            uOper.AddUser(user);
                        }
                        urList.Add(new UserRole
                        {
                            RoleId   = role.RoleId,
                            DdId     = u.Userid,
                            RoleName = role.RoleName,
                            UserName = user.UserName,
                        });
                    });
                }
            });

            new UrOper().UpdateRoles(urList); //同步UserRole表
        }
Exemple #30
0
        /// <summary>
        /// 返回当前用户的待借出清单
        /// </summary>
        /// <param name="_user"></param>
        /// <returns></returns>
        public static object GetLendList(User _user)
        {
            using (SunginDataContext sc = new SunginDataContext())
            {
                //SampleLendout slo = sc.SampleLendouts.SingleOrDefault(p => p.DdId == _user.DdId && p.State == LendStats.草拟);

                var           lendlist = sc.LendRecords.Where(p => p.DdId == _user.DdId && p.State == LendRecordStats.草拟).ToList();
                List <object> lo       = new List <object>();
                lendlist.ForEach(p =>
                {
                    var obj = SampleHelper.GetDdLenOutObj(p);
                    if (obj != null)
                    {
                        lo.Add(obj);
                    }
                });

                return(lo);
            }
        }