Exemple #1
0
 public ActionResult DoDistributionOrganization(VOS_TaskBatchVM vm)
 {
     using (var transaction = DC.BeginTransaction())
     {
         try
         {
             string        OrganizationID = GetAppointValue(vm.FC, "LinkedVM.OrganizationID").ToString();
             Guid          guid           = new Guid(OrganizationID);
             var           ids            = vm.Ids.ToList();
             List <string> _PlanId        = DC.Set <VOS_Task>().Where(x => ids.Contains(x.ID.ToString())).Select(x => x.PlanId.ToString()).ToList();
             foreach (var item in _PlanId)
             {
                 var _Plan = DC.Set <VOS_Plan>().Where(x => x.ID.ToString() == item).SingleOrDefault();
                 _Plan.OrganizationID = guid;
             }
             DC.SaveChanges();
             transaction.Commit();
             return(FFResult().CloseDialog().RefreshGrid().Alert("组织已分配"));
         }
         catch (Exception)
         {
             transaction.Rollback();
             return(FFResult().CloseDialog().RefreshGrid().Alert("组织分配失败"));
         }
     }
 }
Exemple #2
0
 public override bool BatchSaveData()
 {
     using (var transaction = DC.BeginTransaction())
     {
         try
         {
             this.SetEntityList();
             List <VOS_Task> newList = new List <VOS_Task>();
             foreach (var item in EntityList)
             {
                 //单量是否大于1
                 if (item.VOS_Number > 1)
                 {
                     for (int i = 1; i < item.VOS_Number; i++)
                     {
                         newList.Add(Insert_Task(item, true, i));
                     }
                 }
                 newList.Add(Insert_Task(item));
             }
             this.EntityList = newList;
             transaction.Commit();
             return(base.BatchSaveData());
         }
         catch (Exception)
         {
             transaction.Rollback();
         }
     }
     return(false);
 }
Exemple #3
0
        public bool DistributionExecutor(string ids, Guid id)
        {
            using (var transaction = DC.BeginTransaction())
            {
                try
                {
                    const string str = "已完成,已返款";
                    string[]     IDs = ids.Split(',');//任务编号
                    foreach (var item in IDs)
                    {
                        var vOS_Task = DC.Set <VOS_Task>().Where(x => x.ID.ToString() == item).SingleOrDefault();
                        if (str.IndexOf(vOS_Task.OrderState.ToString()) >= 0)
                        {
                            continue;
                        }
                        if (vOS_Task.OrderState == OrderState.未分配)
                        {
                            vOS_Task.OrderState = OrderState.已分配;
                        }
                        vOS_Task.ExecutorId       = id;
                        vOS_Task.DistributionTime = DateTime.Now;
                    }

                    DC.SaveChanges();
                    transaction.Commit();
                    return(true);
                }
                catch (Exception)
                {
                    transaction.Rollback();
                }
            }
            return(false);
        }
Exemple #4
0
        public override void DoAdd()
        {
            using (var transaction = DC.BeginTransaction())
            {
                try
                {
                    base.DoAdd();
                    //添加到账记录后解锁任务
                    var Tasks = DC.Set <VOS_Task>().Where(x => x.PlanId == Entity.Plan_noId);
                    foreach (var task in Tasks)
                    {
                        task.IsLock     = true;
                        task.UnlockerId = LoginUserInfo.Id;
                        task.UnlockTime = DateTime.Now;
                        DC.Set <VOS_Task>().Update(task);
                    }
                    DC.SaveChanges();
                    transaction.Commit();
                }

                catch (Exception)
                {
                    transaction.Rollback();
                    MSD.AddModelError("123", "添加失败");
                }
            }
        }
        public override bool DoBatchDelete()
        {
            using (var trans = DC.BeginTransaction())
            {
                var userorleids = DC.Set <FrameworkUserRole>().AsNoTracking().Where(y => DC.Set <FrameworkRole>().CheckIDs(Ids.ToList(), null).Select(x => x.RoleCode).Contains(y.RoleCode)).Select(x => x.ID);
                foreach (var item in userorleids)
                {
                    FrameworkUserRole f = new FrameworkUserRole {
                        ID = item
                    };
                    DC.DeleteEntity(f);
                }
                DC.SaveChanges();
                base.DoBatchDelete();
                if (MSD.IsValid == true)
                {
                    trans.Commit();
                }
                else
                {
                    trans.Rollback();
                }
            }

            return(base.DoBatchDelete());
        }
Exemple #6
0
        public async Task <ActionResult> DoBatchDelete(FrameworkUserBatchVM vm, IFormCollection nouse)
        {
            List <string> itcode = new List <string>();

            itcode = DC.Set <FrameworkUser>().CheckIDs(new List <string>(vm.Ids)).Select(x => x.ITCode).ToList();
            if (!ModelState.IsValid || !vm.DoBatchDelete())
            {
                return(PartialView("BatchDelete", vm));
            }
            else
            {
                using (var tran = DC.BeginTransaction())
                {
                    try
                    {
                        var ur = DC.Set <FrameworkUserRole>().Where(x => itcode.Contains(x.UserCode));
                        DC.Set <FrameworkUserRole>().RemoveRange(ur);
                        var ug = DC.Set <FrameworkUserGroup>().Where(x => itcode.Contains(x.UserCode));
                        DC.Set <FrameworkUserGroup>().RemoveRange(ug);
                        DC.SaveChanges();
                        tran.Commit();
                    }
                    catch
                    {
                        tran.Rollback();
                    }
                }

                await Wtm.RemoveUserCache(itcode.ToArray());

                return(FFResult().CloseDialog().RefreshGrid().Alert(Localizer["Sys.OprationSuccess"]));
            }
        }
Exemple #7
0
        public async Task <ActionResult> DoBatchCreation(string plan, string tasklist)
        {
            using (var transaction = DC.BeginTransaction())
            {
                try
                {
                    var _plan = JsonConvert.DeserializeObject <VOS_Plan>(plan);
                    if (_plan.OrganizationID == null && GetOrganizationID == null)
                    {
                        return(Json(new { Msg = GetMsg, icon = 5 }));
                    }
                    _plan.OrganizationID = IsSuperAdministrator ? _plan.OrganizationID : (Guid)GetOrganizationID;
                    _plan.CreateTime     = DateTime.Now;
                    _plan.CreateBy       = LoginUserInfo.ITCode;
                    _plan.IsValid        = true;
                    await DC.Set <VOS_Plan>().AddAsync(_plan);

                    await DC.SaveChangesAsync();

                    VOS_Collection _CollectionObj = new VOS_Collection()
                    {
                        CreateTime      = DateTime.Now,
                        CreateBy        = LoginUserInfo.ITCode,
                        IsValid         = true,
                        Plan_noId       = _plan.ID,
                        CollectionState = CollectionState.未到账,
                        Collection      = _plan.PlanFee,
                    };
                    await DC.Set <VOS_Collection>().AddAsync(_CollectionObj);

                    await DC.SaveChangesAsync();

                    var _Task   = JsonConvert.DeserializeObject <List <VOS_Task> >(tasklist);
                    var _PlanId = _plan.ID;
                    foreach (var item in _Task)
                    {
                        if (item.VOS_Number > 1)
                        {
                            for (int i = 0; i < item.VOS_Number; i++)
                            {
                                await Insert_Task(item, _PlanId, true, i);
                            }
                        }
                        else
                        {
                            await Insert_Task(item, _PlanId);
                        }
                    }
                    transaction.Commit();
                    return(Json(new { Msg = "已完成批量创建", icon = 1 }));
                }
                catch (Exception ex)
                {
                    transaction.Rollback();
                    return(Json(new { Msg = "批量创建有误", icon = 5 }));
                }
            }
        }
        public async Task <IActionResult> BatchDelete(string[] ids)
        {
            var           vm     = Wtm.CreateVM <FrameworkUserBatchVM>();
            List <string> itcode = new List <string>();

            if (ids != null && ids.Count() > 0)
            {
                vm.Ids = ids;
                itcode = DC.Set <FrameworkUser>().CheckIDs(new List <string>(ids)).Select(x => x.ITCode).ToList();
            }
            else
            {
                return(Ok());
            }
            if (!ModelState.IsValid || !vm.DoBatchDelete())
            {
                return(BadRequest(ModelState.GetErrorJson()));
            }
            else
            {
                using (var tran = DC.BeginTransaction())
                {
                    try
                    {
                        var ur = DC.Set <FrameworkUserRole>().Where(x => itcode.Contains(x.UserCode));
                        DC.Set <FrameworkUserRole>().RemoveRange(ur);
                        var ug = DC.Set <FrameworkUserGroup>().Where(x => itcode.Contains(x.UserCode));
                        DC.Set <FrameworkUserGroup>().RemoveRange(ug);
                        DC.SaveChanges();
                        tran.Commit();
                    }
                    catch
                    {
                        tran.Rollback();
                    }
                }

                await Wtm.RemoveUserCache(itcode.ToArray());

                return(Ok(ids.Count()));
            }
        }
        public override async Task DoAddAsync()
        {
            using (var trans = DC.BeginTransaction())
            {
                if (SelectedRolesCodes != null)
                {
                    foreach (var rolecode in SelectedRolesCodes)
                    {
                        FrameworkUserRole r = new FrameworkUserRole
                        {
                            RoleCode = rolecode,
                            UserCode = Entity.ITCode
                        };
                        DC.AddEntity(r);
                    }
                }
                if (SelectedGroupCodes != null)
                {
                    foreach (var groupcode in SelectedGroupCodes)
                    {
                        FrameworkUserGroup g = new FrameworkUserGroup
                        {
                            GroupCode = groupcode,
                            UserCode  = Entity.ITCode
                        };
                        DC.AddEntity(g);
                    }
                }
                Entity.IsValid  = true;
                Entity.Password = Utils.GetMD5String(Entity.Password);
                await base.DoAddAsync();

                if (MSD.IsValid)
                {
                    trans.Commit();
                }
                else
                {
                    trans.Rollback();
                }
            }
        }
Exemple #10
0
        public override async Task DoDeleteAsync()
        {
            using (var tran = DC.BeginTransaction())
            {
                try
                {
                    await base.DoDeleteAsync();

                    var ur = DC.Set <FrameworkUserGroup>().Where(x => x.GroupCode == Entity.GroupCode);
                    DC.Set <FrameworkUserGroup>().RemoveRange(ur);
                    DC.SaveChanges();
                    tran.Commit();
                    await Wtm.RemoveUserCache(ur.Select(x => x.UserCode).ToArray());
                }
                catch
                {
                    tran.Rollback();
                }
            }
        }
Exemple #11
0
 public override bool DoBatchDelete()
 {
     using (var transaction = DC.BeginTransaction())
     {
         try
         {
             foreach (var item in Ids)
             {
                 var _Rule = DC.Set <VOS_Rule>().Where(x => x.ID.ToString().Equals(item)).SingleOrDefault();
                 DC.Set <VOS_Rule>().Update(_Rule).State = Microsoft.EntityFrameworkCore.EntityState.Deleted;
             }
             DC.SaveChanges();
             transaction.Commit();
             return(true);//base.DoBatchDelete();
         }
         catch (Exception)
         {
             transaction.Rollback();
         }
     }
     return(false);
 }
Exemple #12
0
 public JsonResult ImgSave()
 {
     using (var transaction = DC.BeginTransaction())
     {
         try
         {
             string    imgPath   = Directory.GetCurrentDirectory() + "\\VOSImg\\" + DateTime.Now.ToString("yyyy-MM-dd") + "\\";
             IFormFile fileImage = Request.Form.Files["file"];
             if (!Directory.Exists(imgPath))
             {
                 Directory.CreateDirectory(imgPath);
             }
             imgPath = imgPath + fileImage.FileName;
             using (FileStream filestream = System.IO.File.Create(imgPath))
             {
                 fileImage.CopyTo(filestream);
                 filestream.Flush();
             }
             FileAttachment file = new FileAttachment();
             file.CreateTime   = DateTime.Now;
             file.CreateBy     = LoginUserInfo.ITCode;
             file.FileName     = fileImage.FileName;
             file.FileExt      = fileImage.ContentType;
             file.Length       = fileImage.Length;
             file.IsTemprory   = true;
             file.SaveFileMode = SaveFileModeEnum.Local;
             file.Path         = imgPath;
             DC.Set <FileAttachment>().Add(file);
             DC.SaveChanges();
             transaction.Commit();
             return(Json(new { Msg = "success", picid = file.ID }));
         }
         catch (Exception)
         {
             transaction.Rollback();
             return(Json(new { Msg = "error", picid = "" }));
         }
     }
 }
Exemple #13
0
 public ActionResult DoBatchEdit(VOS_UserBatchVM vm, IFormCollection nouse)
 {
     using (var transaction = DC.BeginTransaction())
     {
         try
         {
             var UserList = DC.Set <VOS_User>().Where(x => vm.Ids.Contains(x.ID.ToString())).ToList();
             foreach (var item in UserList)
             {
                 item.Password = Utils.GetMD5String(GetAppointValue(vm.FC, "LinkedVM.Password").ToString());
                 DC.Set <VOS_User>().Update(item);
             }
             DC.SaveChanges();
             transaction.Commit();
             return(FFResult().CloseDialog().Alert("已修改"));
         }
         catch (Exception)
         {
             transaction.Rollback();
             return(FFResult().CloseDialog().RefreshGridRow(vm.Ids[0]).Alert("修改密码失败"));
         }
     }
 }
Exemple #14
0
        public override bool DoBatchDelete()
        {
            using (var transaction = DC.BeginTransaction())
            {
                try
                {
                    foreach (var item in Ids)
                    {
                        var _User = DC.Set <VOS_User>().Where(x => x.ID.ToString().Equals(item)).FirstOrDefault();
                        _User.IsValid = false;
                    }
                    DC.SaveChanges();
                    transaction.Commit();
                    return(true);
                }
                catch (Exception)
                {
                    transaction.Rollback();
                    return(false);
                }
            }

            //return base.DoBatchDelete();
        }
Exemple #15
0
 public ActionResult DoBatchEdit(VOS_TaskBatchVM vm, IFormCollection nouse)
 {
     using (var transaction = DC.BeginTransaction())
     {
         try
         {
             var _CommodityPicId = GetAppointValue(vm.FC, "LinkedVM.CommodityPicId").ToString();
             var Ids             = GetAppointValue(vm.FC, "Ids").ToString().Split(',');
             foreach (var item in Ids)
             {
                 var _task = DC.Set <VOS_Task>().Where(x => x.ID.ToString() == item).FirstOrDefault();
                 _task.CommodityPicId = new Guid(_CommodityPicId);
                 DC.SaveChanges();
             }
             transaction.Commit();
             return(FFResult().CloseDialog().RefreshGrid().Alert("已批量修改图片"));
         }
         catch (Exception)
         {
             transaction.Rollback();
             return(FFResult().CloseDialog().RefreshGrid().Alert("批量修改图片失败"));
         }
     }
 }
        public override async Task DoEditAsync(bool updateAllFields = false)
        {
            if (FC.ContainsKey("Entity.ITCode"))
            {
                FC.Remove("Entity.ITCode");
            }
            using (var trans = DC.BeginTransaction())
            {
                if (SelectedRolesCodes != null)
                {
                    List <Guid> todelete = new List <Guid>();
                    todelete.AddRange(DC.Set <FrameworkUserRole>().AsNoTracking().Where(x => x.UserCode == Entity.ITCode).Select(x => x.ID));
                    foreach (var item in todelete)
                    {
                        DC.DeleteEntity(new FrameworkUserRole {
                            ID = item
                        });
                    }
                }
                if (SelectedGroupCodes != null)
                {
                    List <Guid> todelete = new List <Guid>();
                    todelete.AddRange(DC.Set <FrameworkUserGroup>().AsNoTracking().Where(x => x.UserCode == Entity.ITCode).Select(x => x.ID));
                    foreach (var item in todelete)
                    {
                        DC.DeleteEntity(new FrameworkUserGroup {
                            ID = item
                        });
                    }
                }
                if (SelectedRolesCodes != null)
                {
                    foreach (var rolecode in SelectedRolesCodes)
                    {
                        FrameworkUserRole r = new FrameworkUserRole
                        {
                            RoleCode = rolecode,
                            UserCode = Entity.ITCode
                        };
                        DC.AddEntity(r);
                    }
                }
                if (SelectedGroupCodes != null)
                {
                    foreach (var groupcode in SelectedGroupCodes)
                    {
                        FrameworkUserGroup g = new FrameworkUserGroup
                        {
                            GroupCode = groupcode,
                            UserCode  = Entity.ITCode
                        };
                        DC.AddEntity(g);
                    }
                }
                await base.DoEditAsync(updateAllFields);

                if (MSD.IsValid)
                {
                    trans.Commit();
                    await Wtm.RemoveUserCache(Entity.ID.ToString());
                }
                else
                {
                    trans.Rollback();
                }
            }
        }
Exemple #17
0
 public override bool BatchSaveData()
 {
     using (var transaction = DC.BeginTransaction())
     {
         try
         {
             this.SetEntityList();
             List <VOS_Task> newList = new List <VOS_Task>();
             foreach (var item in EntityList)
             {
                 //单量是否大于1
                 if (item.VOS_Number > 1)
                 {
                     for (int i = 1; i < item.VOS_Number; i++)
                     {
                         newList.Add(new VOS_Task()
                         {
                             IsValid            = true,
                             Task_no            = item.Task_no + "-" + i,
                             TaskType           = item.TaskType,
                             PlanId             = item.PlanId,
                             ComDis             = item.ComDis,
                             ShopCharge         = item.ShopCharge,
                             ImplementStartTime = item.ImplementStartTime,
                             TaskCateId         = item.TaskCateId,
                             CommodityName      = item.CommodityName,
                             CommodityLink      = item.CommodityLink,
                             CommodityPrice     = item.CommodityPrice,
                             Commission         = item.Commission,
                             OtherExpenses      = item.OtherExpenses,
                             TRequirement       = item.TRequirement,
                             AreaRequirement    = item.AreaRequirement,
                             SearchKeyword      = item.SearchKeyword,
                             SKU = item.SKU,
                             EmployeeCommission = item.EmployeeCommission,
                             IsLock             = false,
                             IsTP = false,
                         });
                     }
                 }
                 VOS_Task vOS_Task = new VOS_Task()
                 {
                     IsValid            = true,
                     Task_no            = item.Task_no,
                     TaskType           = item.TaskType,
                     PlanId             = item.PlanId,
                     ComDis             = item.ComDis,
                     ShopCharge         = item.ShopCharge,
                     ImplementStartTime = item.ImplementStartTime,
                     TaskCateId         = item.TaskCateId,
                     CommodityName      = item.CommodityName,
                     CommodityLink      = item.CommodityLink,
                     CommodityPrice     = item.CommodityPrice,
                     Commission         = item.Commission,
                     OtherExpenses      = item.OtherExpenses,
                     TRequirement       = item.TRequirement,
                     AreaRequirement    = item.AreaRequirement,
                     SearchKeyword      = item.SearchKeyword,
                     SKU = item.SKU,
                     EmployeeCommission = item.EmployeeCommission,
                     IsLock             = false,
                     IsTP = false,
                 };
                 newList.Add(vOS_Task);
             }
             this.EntityList = newList;
             transaction.Commit();
             return(base.BatchSaveData());
         }
         catch (Exception exception)
         {
             transaction.Rollback();
         }
     }
     return(false);
 }