コード例 #1
0
 public ActionResult AddOrUpdate(string json)
 {
     var rdto = new ResultMessages();
     rdto.Message = "";
     List<DocNo> jsArray = (List<DocNo>)JavaScriptConvert.DeserializeObject(json, typeof(List<DocNo>));
     foreach(var dn in jsArray)
     {
         if(dn.Id==0)
         {
             dn.CreatDate = DateTime.Now;
             ctx.DocNos.InsertOnSubmit(dn);
         }
         else
         {
             var oriObj = ctx.DocNos.Single(r => r.Id == dn.Id);
             oriObj.DocNo1 = dn.DocNo1;
             oriObj.DocName = dn.DocName;
             oriObj.OrderNo = dn.OrderNo;
             oriObj.CreatDate = DateTime.Now;
         }
     }
     try
     {
         ctx.SubmitChanges();
         rdto.Message = "新增成功";
         rdto.Result = true;
     }
     catch (Exception ex)
     {
         rdto.Message = "新增失败";
         rdto.Result = false;
     }
     return Json(rdto);
 }
コード例 #2
0
 public ResultMessages Save(InfoMarket obj, int empId)
 {
     var rdto = new ResultMessages();
     InfoMarket objOri;
     if(obj.Id!=0)
     {
         objOri = ctx.InfoMarkets.Single(r=>r.Id==obj.Id);
         objOri.CorpName = obj.CorpName;
         objOri.ClassName = obj.ClassName;
         objOri.Title = obj.Title;
         objOri.InfoFrom = obj.InfoFrom;
         objOri.Info = obj.Info;
         objOri.FileGuid = obj.FileGuid;
         objOri.FileName = obj.FileName;
         objOri.UpdateEmpId = empId;
         objOri.UpdateDate = DateTime.Now;
     }
     else
     {
         objOri = obj;
         ctx.InfoMarkets.InsertOnSubmit(objOri);
     }
     try
     {
         ctx.SubmitChanges();
         rdto.Message = "更新成功";
         rdto.Result = true;
     }
     catch
     {
         rdto.Message = "更新失败";
         rdto.Result = false;
     }
     return rdto;
 }
コード例 #3
0
        public ActionResult Del_roles(string jsJson)
        {
            var rdto = new ResultMessages();

            List<Role> jsArray = (List<Role>)JavaScriptConvert.DeserializeObject(jsJson, typeof(List<Role>));
            for (int i = 0; i < jsArray.Count; i++)
            {
                Role role = jsArray[i];
                try
                {
                    Role ori = ctx.Roles.Single(r => r.Id == role.Id);

                    ctx.Roles.DeleteOnSubmit(ori);
                    ctx.SubmitChanges();
                    rdto.Message = "删除成功";
                    rdto.Result = true;
                }
                catch
                {
                    rdto.Message = "删除失败";
                    rdto.Result = false;
                }
            }
            return Json(rdto);
        }
コード例 #4
0
 public ActionResult FormHandle(string operateCode,int formId)
 {
     var rdto = new ResultMessages();
     if (operateCode == "Del")
     {
         var obj = ctx.InfoMarkets.Single(r => r.Id == formId);
         ctx.InfoMarkets.DeleteOnSubmit(obj);
     }
     else if (operateCode == "Pass")
     {
         var obj = ctx.InfoMarkets.Single(r => r.Id == formId);
         obj.IsPass = 1;
     }
     else if (operateCode == "Reject")
     {
         var obj = ctx.InfoMarkets.Single(r => r.Id == formId);
         obj.IsPass = 2;
     }
     try
     {
         ctx.SubmitChanges();
         rdto.Message = "更新成功";
         rdto.Result = true;
     }
     catch
     {
         rdto.Message = "更新失败";
         rdto.Result = false;
     }
     return Json(rdto);
 }
コード例 #5
0
 //文档访问日志,写数据库
 public ActionResult AccessLog(int fileId)
 {
     EmpBasicInfo ebi = Session["ebi"] as EmpBasicInfo;
     ResultMessages rdto=new ResultMessages();
     rdto.Result = true;
     var v = new FileReadLog();
     v.FileId = fileId;
     v.ReaderId = ebi.Id;
     v.ActionId = 0;
     v.ReadDate = DateTime.Now;
     ctx.FileReadLogs.InsertOnSubmit(v);
     ctx.SubmitChanges();
     return Json(rdto);
 }
コード例 #6
0
 //新增申请
 public ActionResult Add(string json)
 {
     var rdto = new ResultMessages();
     rdto.Message = "";
     JavaScriptSerializer jss = new JavaScriptSerializer();
     ReqInvite obj = jss.Deserialize<ReqInvite>(json);
     string maxFormNo = ctx.ReqInvites.Max(r => r.FormNo);
     string formNo = "Form_Invi_000001";
     if (!string.IsNullOrEmpty(maxFormNo))
     {
         formNo = "Form_Invi_" + (int.Parse(maxFormNo.Substring(10)) + 1000001).ToString().Substring(1);
     }
     obj.FormNo = formNo;
     EmpBasicInfo ebi = Session["ebi"] as EmpBasicInfo;
     EmpDepPosition edp = ebi.EmpDepPos.Where(r => r.PosId <= 7).OrderByDescending(r => r.PosId).First();
     obj.DeptId = edp.DeptId;
     obj.EmpId = ebi.Id;
     obj.ReqDate = DateTime.Now;
     try
     {
         ctx.ReqInvites.InsertOnSubmit(obj);
         ctx.SubmitChanges();
         rdto.Message = "新增成功";
         rdto.Result = true;
     }
     catch (Exception ex)
     {
         rdto.Message = "新增失败";
         rdto.Result = false;
     }
     if (obj.StatusId == 1)//写签核流程
     {
         try
         {
             FlowSet fs = new FlowSet();
             fs.SetSignFlow(formNo,ebi);
             rdto.Message = "保存且提交成功";
         }
         catch (Exception ex)
         {
             rdto.Message = "表单已保存,但提交签核失败";
             rdto.Result = false;
         }
     }
     return Json(rdto);
 }
コード例 #7
0
 //删除申请,含明细
 public ActionResult Delete(string formNo)
 {
     var rdto = new ResultMessages();
     ReqVehicleMains oriObj = ctx.ReqVehicleMains.Single(r => r.FormNo ==formNo);
     ctx.ReqVehicleSubs.DeleteAllOnSubmit(oriObj.ReqVehicleSubs);
     ctx.ReqVehicleMains.DeleteOnSubmit(oriObj);
     try
     {
         ctx.SubmitChanges();
         rdto.Message = "删除成功";
         rdto.Result = true;
     }
     catch
     {
         rdto.Message = "删除失败";
     }
     return Json(rdto);
 }
コード例 #8
0
 //新增申请,含明细
 public ActionResult Add(string json)
 {
     var rdto = new ResultMessages();
     rdto.Message = "";
     JavaScriptSerializer jss = new JavaScriptSerializer();
     ReqEvectionMain o= jss.Deserialize<ReqEvectionMain>(json);
     string maxFormNo = ctx.ReqEvectionMains.Max(r => r.FormNo);
     string formNo = "Form_Evec_000001";
     if (!string.IsNullOrEmpty(maxFormNo))
     {
         formNo = "Form_Evec_" + (int.Parse(maxFormNo.Substring(10)) + 1000001).ToString().Substring(1);
     }
     o.FormNo = formNo;
     EmpBasicInfo ebi = Session["ebi"] as EmpBasicInfo;
     o.EmpId =ebi.Id;
     o.ReqDate = DateTime.Now;
     try
     {
         ctx.ReqEvectionMains.InsertOnSubmit(o);
         ctx.SubmitChanges();
         rdto.Message = "新增成功";
         rdto.Result = true;
     }
     catch (Exception ex)
     {
         rdto.Message = "新增失败";
         rdto.Result = false;
     }
     if (o.StatusId == 1)//写签核流程
     {
         try
         {
             FlowSet fs = new FlowSet();
             fs.SetSignFlow(formNo,ebi);
             rdto.Message = "保存且提交成功";
         }
         catch (Exception ex)
         {
             rdto.Message = "表单已保存,但提交签核失败";
             rdto.Result = false;
         }
     }
     return Json(rdto);
 }
コード例 #9
0
 //删除
 public ActionResult Delete(int id)
 {
     var rdto = new ResultMessages();
     rdto.Message = "";
     ExamQuestion oriObj = ctx.ExamQuestions.Single(r => r.Id == id);
     ctx.ExamQuestions.DeleteOnSubmit(oriObj);
     try
     {
         ctx.SubmitChanges();
         rdto.Message = "删除成功";
         rdto.Result = true;
     }
     catch
     {
         rdto.Message = "删除失败";
         rdto.Result = false;
     }
     return Json(rdto);
 }
コード例 #10
0
 //保存值班计划
 public ActionResult Add(string json)
 {
     var rdto = new ResultMessages();
     rdto.Message = "";
     List<Duty> jsArray = (List<Duty>)JavaScriptConvert.DeserializeObject(json, typeof(List<Duty>));
     try
     {
         ctx.Duties.InsertAllOnSubmit(jsArray);
         ctx.SubmitChanges();
         rdto.Message = "新增成功";
         rdto.Result = true;
     }
     catch (Exception ex)
     {
         rdto.Message = "新增失败";
         rdto.Result = false;
     }
     return Json(rdto);
 }
コード例 #11
0
 //删除申请
 public ActionResult Delete(string formNo)
 {
     var rdto = new ResultMessages();
     rdto.Message = "";
     ReqMeetingRoom oriObj = ctx.ReqMeetingRooms.Single(r => r.FormNo == formNo);
     ctx.ReqMeetingRooms.DeleteOnSubmit(oriObj);
     try
     {
         ctx.SubmitChanges();
         rdto.Message = "删除成功";
         rdto.Result = true;
     }
     catch
     {
         rdto.Message = "删除失败";
         rdto.Result = false;
     }
     return Json(rdto);
 }
コード例 #12
0
        public ActionResult Add_roles(string jsJson)
        {
            JavaScriptSerializer jss = new JavaScriptSerializer();
            Role role = jss.Deserialize<Role>(jsJson);
            var rdto = new ResultMessages();
            try
            {
                ctx.Roles.InsertOnSubmit(role);
                ctx.SubmitChanges();
                rdto.Message = "添加成功";
                rdto.Result = true;
            }
            catch
            {
                rdto.Message = "添加失败";
                rdto.Result = false;
            }

            return Json(rdto);
        }
コード例 #13
0
 public ActionResult Add(string json)
 {
     var rdto = new ResultMessages();
     rdto.Message = "";
     JavaScriptSerializer jss = new JavaScriptSerializer();
     var obj = jss.Deserialize<Depts>(json);
     try
     {
         ctx.Depts.InsertOnSubmit(obj);
         ctx.SubmitChanges();
         rdto.Message = "新增成功";
         rdto.Result = true;
     }
     catch(Exception ex)
     {
         rdto.Message = "新增失败";
         rdto.Result = false;
     }
     return Json(rdto);
 }
コード例 #14
0
 public ActionResult Delete(string json)
 {
     var rdto = new ResultMessages();
     rdto.Message = "";
     List<int> jsArray = (List<int>)JavaScriptConvert.DeserializeObject(json, typeof(List<int>));
     IQueryable<DocNo> list = from r in ctx.DocNos where jsArray.ToArray().Contains(r.Id) select r;
     try
     {
         ctx.DocNos.DeleteAllOnSubmit(list);
         ctx.SubmitChanges();
         rdto.Message = "删除成功";
         rdto.Result = true;
     }
     catch (Exception ex)
     {
         rdto.Message = "删除失败";
         rdto.Result = false;
     }
     return Json(rdto);
 }
コード例 #15
0
 //添加员工基本资料
 public ActionResult Add(string json)
 {
     var rdto = new ResultMessages();
     rdto.Message = "";
     JavaScriptSerializer jss = new JavaScriptSerializer();
     Employee emp = jss.Deserialize<Employee>(json);
     emp.Password = "******";//默认密码:123456
     try
     {
         ctx.Employees.InsertOnSubmit(emp);
         ctx.SubmitChanges();
         rdto.Message = "新增成功";
         rdto.Result = true;
     }
     catch (Exception ex)
     {
         rdto.Message = "新增失败";
         rdto.Result = false;
     }
     return Json(rdto);
 }
コード例 #16
0
        public ActionResult Delete(string json)
        {
            var rdto = new ResultMessages();
            rdto.Message = "";
            JavaScriptSerializer jss = new JavaScriptSerializer();
            var obj = jss.Deserialize<Depts>(json);
            try
            {
                var oriObj = ctx.Depts.Single(r => r.Id == obj.Id);

                ctx.Depts.DeleteOnSubmit(oriObj);
                ctx.SubmitChanges();
                rdto.Message = "删除成功";
                rdto.Result = true;
            }
            catch (Exception ex)
            {
                rdto.Message = "删除失败";
                rdto.Result = false;
            }
            return Json(rdto);
        }
コード例 #17
0
 //删除申请,含明细
 public ActionResult Delete(string formNo)
 {
     var rdto = new ResultMessages();
     rdto.Message = "";
     ReqEvectionMain oriObj = ctx.ReqEvectionMains.Single(r => r.FormNo == formNo);
     ctx.ReqEvectionSchedules.DeleteAllOnSubmit(oriObj.ReqEvectionSchedules);
     ctx.ReqEvectionVoyages.DeleteAllOnSubmit(oriObj.ReqEvectionVoyages);
     ctx.ReqEvectionFlighters.DeleteAllOnSubmit(oriObj.ReqEvectionFlighters);
     ctx.ReqEvectionMains.DeleteOnSubmit(oriObj);
     try
     {
         ctx.SubmitChanges();
         rdto.Message = "删除成功";
         rdto.Result = true;
     }
     catch
     {
         rdto.Message = "删除失败";
         rdto.Result = false;
     }
     return Json(rdto);
 }
コード例 #18
0
        public ActionResult Update_roles(string jsJson)
        {
            JavaScriptSerializer jss = new JavaScriptSerializer();
            Role role = jss.Deserialize<Role>(jsJson);
            var rdto = new ResultMessages();
            try
            {
                Role oriRole = ctx.Roles.Single(r => r.Id == role.Id);
                oriRole.Name = role.Name;
                oriRole.Description = role.Description;

                ctx.SubmitChanges();
                rdto.Message = "保存成功";
                rdto.Result = true;
            }
            catch
            {
                rdto.Message = "保存失败";
                rdto.Result = false;
            }
            return Json(rdto);
        }
コード例 #19
0
 public override void OnActionExecuting(ActionExecutingContext filterContext)
 {
     var rdto = new ResultMessages();
     rdto.Result = true;
     //var controllerName = filterContext.RouteData.Values["controller"].ToString();
     //var actionName = filterContext.RouteData.Values["action"].ToString();
     if (filterContext.HttpContext.Session["ebi"] == null && filterContext.HttpContext.Request.Cookies["empBasicInfo"] == null)
     {
         rdto.Result = false;
         rdto.ErrType = ErrorType.UnAuthentication;//未登录
     }
     else if (!authorizeCore(filterContext))//根据验证判断进行处理
     {
         rdto.Result = false;
         rdto.ErrType = ErrorType.UnAuthorization;//未授权
     }
     if (!rdto.Result)
     {
         JavaScriptSerializer jss = new JavaScriptSerializer();
         string s = jss.Serialize(rdto);
         filterContext.Result = new ContentResult { Content = s };
     }
 }
コード例 #20
0
 //新增,含明细
 public ActionResult Add(string json)
 {
     var rdto = new ResultMessages();
     rdto.Message = "";
     JavaScriptSerializer jss = new JavaScriptSerializer();
     AuditionMain obj = jss.Deserialize<AuditionMain>(json);
     obj.ReqDate = DateTime.Now;
     EmpBasicInfo ebi = Session["ebi"] as EmpBasicInfo;
     obj.EmpId = ebi.Id;
     try
     {
         ctx.AuditionMains.InsertOnSubmit(obj);
         ctx.SubmitChanges();
         rdto.Message = "新增成功";
         rdto.Result = true;
     }
     catch (Exception ex)
     {
         rdto.Message = "新增失败";
         rdto.Result = false;
     }
     return Json(rdto);
 }
コード例 #21
0
 public ActionResult Add(string json)
 {
     EmpBasicInfo ebi = Session["ebi"] as EmpBasicInfo;
     var rdto = new ResultMessages();
     rdto.Message = "";
     JavaScriptSerializer jss = new JavaScriptSerializer();
     var obj = jss.Deserialize<BirdayBless>(json);
     obj.FromId =ebi.Id;
     obj.BlessDate = DateTime.Now;
     try
     {
         ctx.BirdayBlesses.InsertOnSubmit(obj);
         ctx.SubmitChanges();
         rdto.Message = "新增成功";
         rdto.Result = true;
     }
     catch (Exception ex)
     {
         rdto.Message = "新增失败";
         rdto.Result = false;
     }
     return Json(rdto);
 }
コード例 #22
0
        public ActionResult Delete(string formNo)
        {
            var rdto = new ResultMessages();
            rdto.Message = "";
            try
            {
                //删除之前的签核数据
                var list = from r in ctx.SignFlows where r.FormNo == formNo select r;
                ctx.SignFlows.DeleteAllOnSubmit(list);
                var oriObj = ctx.Weeklies.Single(r => r.FormNo ==formNo);

                ctx.Weeklies.DeleteOnSubmit(oriObj);
                ctx.SubmitChanges();
                rdto.Message = "删除成功";
                rdto.Result = true;
            }
            catch (Exception ex)
            {
                rdto.Message = "删除失败";
                rdto.Result = false;
            }
            return Json(rdto);
        }
コード例 #23
0
        //在线打卡
        public ActionResult CardOnline()
        {
            EmpBasicInfo ebi = Session["ebi"] as EmpBasicInfo;
            var rdto = new ResultMessages();
            EmpDepPosition empDepPosition = ebi.EmpDepPos.First();
            Depts depts = empDepPosition.Depts;
            if (",18,19,22,25,".IndexOf("," + empDepPosition.DeptId + ",") >= 0 || depts.Pid == 24 || depts.Pid == 39 || depts.Pid ==27)
            {
                string jobNo = ctx.Employees.Single(r => r.Id == ebi.Id).JobNo;
                var obj = new CardLog();
                obj.JobNo = jobNo;
                obj.CardTime = DateTime.Now;
                obj.SysDate = DateTime.Now;
                obj.OperateId = ebi.Id;
                obj.Ip = Request.ServerVariables["REMOTE_ADDR"];
                ctx.CardLogs.InsertOnSubmit(obj);

                try
                {
                    ctx.SubmitChanges();
                    rdto.Result = true;
                    rdto.Message =DateTime.Now.ToString("HH:mm:ss");
                }
                catch (Exception ex)
                {
                    rdto.Result = false;
                    rdto.Message =ex.Message;
                }
            }
            else
            {
                rdto.Result = false;
                rdto.Message = "您没有权限在线打卡,请联系'行政部'或'技术部'确认!";
            }
            return Json(rdto);
        }
コード例 #24
0
 //获得当前目录的父目录Id
 public ActionResult GetParentId(int? currId)
 {
     var rdto = new ResultMessages();
     rdto.Result = true;
     int? pId = null;
     if(currId!=null)
     {
         pId =ctx.Files.Single(r => r.Id == currId).Pid;
     }
     rdto.Data = pId;
     return Json(rdto);
 }
コード例 #25
0
        //获取可编辑文档的写权限
        public ActionResult ObtainWritable(int fileId)
        {
            var rdto = new ResultMessages();
            var v = ctx.Files.Single(r => r.Id == fileId);
            if(v.StatusId==0)//未签出,改签出状态,写访问日志
            {
                EmpBasicInfo ebi = Session["ebi"] as EmpBasicInfo;
                v.LastUpdaterId = ebi.Id;
                v.LastUpdateTime = DateTime.Now;
                v.StatusId = 1;

                var fLog = new FileReadLog();
                fLog.FileId = fileId;
                fLog.ReaderId = ebi.Id;
                fLog.ActionId =1;
                fLog.ReadDate = DateTime.Now;
                ctx.FileReadLogs.InsertOnSubmit(fLog);

                ctx.SubmitChanges();
                rdto.Result = true;
            }
            else//已签出,返回被谁签出
            {
                rdto.Result = false;
                var e = ctx.Employees.Single(r => r.Id == v.LastUpdaterId);
                rdto.Data = e.Id;
                rdto.Message =e.Name;
            }
            return Json(rdto);
        }
コード例 #26
0
        //打包下载全部文件
        public ActionResult GetFileAll()
        {
            var rdto = new ResultMessages();
            rdto.Result = true;
            EmpBasicInfo ebi = Session["ebi"] as EmpBasicInfo;
            string destination = Server.MapPath("/PersonalFolder/" + ebi.Name);
            string destinationRar = Server.MapPath("/PersonalFolder/Rar/" + ebi.Name+".rar");
            deleteFolder(destination); //递归删除文件夹
            if (System.IO.File.Exists(destinationRar))
            {
                System.IO.File.Delete(destinationRar);
            }
            System.IO.Directory.CreateDirectory(destination);

            IQueryable<File> list = from r in ctx.Files where r.FileClass == 0 && r.OwnerId == ebi.Id && r.Pid==null select r;
            foreach(var f in list)
            {
                if(f.Type=="dir")
                {
                    string vDir = "/PersonalFolder/" + ebi.Name + "/" + f.Name;
                    string dir = Server.MapPath(vDir);
                    System.IO.Directory.CreateDirectory(dir);
                    copyFolder(f.Id, vDir);
                }
                else
                {
                    string orignFile = Server.MapPath("/PersonalFolder/" + f.RealName);
                    string newFile = Server.MapPath("/PersonalFolder/" + ebi.Name + "/" + f.Name + "." + f.Type);
                    if (System.IO.File.Exists(orignFile))
                    {
                        System.IO.File.Copy(orignFile, newFile, true);
                    }
                }
            }
            //压缩文件
            string dRar = Server.MapPath("/PersonalFolder/Rar/" + ebi.Name);
            string rar = " a -ep1 -r " + dRar + " " + destination;
            ProcessStartInfo startInfo = new ProcessStartInfo(@"C:\Program Files\WinRAR\Rar.exe", rar);
            startInfo.WindowStyle = ProcessWindowStyle.Hidden;
            System.Diagnostics.Process a = new Process();
            try
            {
                a.StartInfo = startInfo;
                a.Start();
                a.WaitForExit();
            }
            catch (Exception ex)
            {
                rdto.Result = false;
                rdto.Message = ex.Message;
            }
            //deleteFolder(destination); //递归删除文件夹
            return Json(rdto);
        }
コード例 #27
0
 //获得当前目录的授权上级目录Id
 public ActionResult GetAuthParentId(int? currId)
 {
     var rdto = new ResultMessages();
     rdto.Result = true;
     int? pId = null;
     if (currId != null)
     {
         string strSql = @"declare @pId int,@cnt int,@parentId int;
                         select @pId=pid from Files where Id={0};
                         if(@pId is not null)
                         begin
                             with t as(
                                 SELECT Id,Pid,Name,Type,RealName,Size,CreatTime,OwnerId,
                                     OrderNo,LastUpdateTime,LastUpdaterId,StatusId
                                 FROM Files f1 where Id=@pId
                                 union all
                                 select f2.* from Files f2,t where f2.Id=t.Pid)
                             select @cnt=COUNT(0)
                             from t inner join FileAuth fa on t.Id=fa.FileId where fa.ToId={1};
                             if(@cnt>0)
                                 select @parentId=@pId;
                         end
                         select @parentId pId;";
         EmpBasicInfo ebi = Session["ebi"] as EmpBasicInfo;
         var v = ctx.ExecuteQuery<int?>(strSql, currId, ebi.Id);
         pId = v.First();
     }
     rdto.Data = pId;
     return Json(rdto);
 }
コード例 #28
0
        //更新,含明细
        public ActionResult Update(string json)
        {
            var rdto = new ResultMessages();
            rdto.Message = "";
            JavaScriptSerializer jss = new JavaScriptSerializer();
            try
            {
                AuditionMain obj = jss.Deserialize<AuditionMain>(json);
                AuditionMain oriObj = ctx.AuditionMains.Single(r => r.Id == obj.Id);
                oriObj.Name = obj.Name;
                oriObj.Address = obj.Address;
                oriObj.InfoOrigin = obj.InfoOrigin;
                oriObj.Position = obj.Position;
                oriObj.Phone = obj.Phone;
                oriObj.EMail = obj.EMail;
                oriObj.AuditionType = obj.AuditionType;
                oriObj.DeptId = obj.DeptId;
                oriObj.Remarks = obj.Remarks;
                foreach (var v in obj.AuditionSubs)
                {
                    AuditionSub reqSub;
                    if (v.Id > 0)
                    {
                        reqSub = oriObj.AuditionSubs.Single(r => r.Id == v.Id);
                    }
                    else
                    {
                        reqSub = new AuditionSub();
                        reqSub.Pid = oriObj.Id;
                        oriObj.AuditionSubs.Add(reqSub);
                    }
                    reqSub.Interviewer = v.Interviewer;
                    reqSub.Reminder = v.Reminder;
                    reqSub.InterviewTime = v.InterviewTime;
                    reqSub.Result = v.Result;
                    reqSub.Remarks = v.Remarks;
                }

                ctx.SubmitChanges();
                rdto.Message = "更新成功";
                rdto.Result = true;
            }
            catch (Exception ex)
            {
                rdto.Message = "更新失败";
                rdto.Result = false;
            }
            return Json(rdto);
        }
コード例 #29
0
        //上传文件,写数据库.注意:因上传文件使用的是form,故不能回传数据,否则会刷新页面
        public ActionResult FileUpload(FormCollection collection)
        {
            var rdto = new ResultMessages();
            rdto.Result = true;
            var f = Request.Files[0];
            if (f != null && f.ContentLength > 0)
            {
                string destination;
                switch (Request.Form["fileClass"])
                {
                    case "0": destination = Server.MapPath("/PersonalFolder/");
                        break;
                    case "1": destination = Server.MapPath("/ShareFolder/");
                        break;
                    case "2": destination = Server.MapPath("/NoticeFolder/");
                        break;
                    default: destination = Server.MapPath("/PersonalFolder/");
                        break;
                }

                string filename;
                if (!string.IsNullOrEmpty(Request.Form["docTitle"]))
                {
                    filename = Server.UrlDecode(Request.Form["docTitle"]) + "." + Request.Form["docType"];//编码转换,解决乱码问题
                }
                else
                {
                    filename = f.FileName;
                    filename = filename.Substring(filename.LastIndexOf(@"\")+1);
                }
                string newFileName =DateTime.Now.ToString("yyyyMMddhhmmss") + filename.Substring(filename.LastIndexOf("."));
                try
                {
                    File file = new File();
                    file.FileClass = int.Parse(Request.Form["fileClass"]);
                    if (!string.IsNullOrEmpty(Request.Form["docID"]))
                    {
                        file = ctx.Files.Single(r => r.Id == int.Parse(Request.Form["docID"]));
                        file.LastUpdateTime = DateTime.Now;
                        EmpBasicInfo ebi = Session["ebi"] as EmpBasicInfo;
                        file.LastUpdaterId = ebi.Id;
                    }
                    else
                    {
                        EmpBasicInfo ebi = Session["ebi"] as EmpBasicInfo;
                        file.OwnerId = ebi.Id;
                        if (!string.IsNullOrEmpty(Request.Form["pid"]))
                        {
                            file.Pid = int.Parse(Request.Form["pid"]);
                        }
                        file.RealName = newFileName;
                        file.Type = filename.Substring(filename.LastIndexOf(".") + 1);
                        file.CreatTime = DateTime.Now;
                        ctx.Files.InsertOnSubmit(file);
                    }
                    file.Name = filename.Substring(0, filename.LastIndexOf("."));
                    file.Size = f.ContentLength;
                    file.StatusId = 0;
                    if (!string.IsNullOrEmpty(Request.Form["statusId"]))
                    {
                        file.StatusId = int.Parse(Request.Form["statusId"]);
                    }

                    f.SaveAs(destination + file.RealName);
                    //写数据库
                    ctx.SubmitChanges();
                }
                catch (Exception ex)
                {
                    rdto.Result = false;
                    rdto.Message = ex.Message;
                }
            }
            //JavaScriptSerializer jss = new JavaScriptSerializer();
            //Response.Write(jss.Serialize(rdto));
            Response.Write("{success:'true',fn:'noMatter'}");
            return null;
        }
コード例 #30
0
        //也可以在客户端构造签核节点,而传递一个json数据
        //表单签核
        public ActionResult FormSign(int id, string comment, int isPass)
        {
            var rdto = new ResultMessages();
            rdto.Message = "";
            try
            {
                SignFlow oriSignFlow = ctx.SignFlows.Single(r => r.Id == id);
                if(oriSignFlow.IsCurrent!=1)
                {
                    rdto.Message = "在您之前已有其他人签核该节点,您的签核将忽略!";
                    rdto.Result = false;
                }
                else
                {
                    var parallelSignFlows = ctx.SignFlows.Where(r => r.FormNo == oriSignFlow.FormNo && r.OrderNo == oriSignFlow.OrderNo&&r.IsCurrent==1);
                    foreach(SignFlow sf in parallelSignFlows)
                    {
                        sf.Comment = oriSignFlow.Checker + "已签核,系统自动忽略该节点";
                        sf.IsPass = isPass;
                        sf.IsCurrent = 0;
                    }

                    oriSignFlow.Comment = comment;
                    EmpBasicInfo ebi = Session["ebi"] as EmpBasicInfo;
                    oriSignFlow.Checker = ebi.Name;
                    oriSignFlow.CheckDate = DateTime.Now;
                    oriSignFlow.IsPass = isPass;
                    oriSignFlow.IsCurrent = 0;

                    var nextSignFlows = ctx.SignFlows.Where(r => r.FormNo == oriSignFlow.FormNo && r.OrderNo == oriSignFlow.OrderNo + 1);
                    bool hasNext = nextSignFlows.Count()>0;
                    if (isPass == 1 && hasNext)//该节点通过,还存在下一个节点:将下一个节点置为 待签状态
                    {
                        foreach(SignFlow sf in nextSignFlows)
                        {
                            sf.IsCurrent = 1;
                        }
                    }
                    else if (isPass == 1)//该节点通过,不存在下一个节点:将表单置为 全通过状态
                    {
                        switch (oriSignFlow.FormNo.Substring(0, 9))
                        {
                            case "Form_Week"://周报
                                Weekly reqWeek = ctx.Weeklies.Single(r => r.FormNo == oriSignFlow.FormNo);
                                reqWeek.StatusId = 2;
                                break;
                            case "Form_Vehi"://用车申请
                                ReqVehicleMains reqVehi = ctx.ReqVehicleMains.Single(r => r.FormNo == oriSignFlow.FormNo);
                                reqVehi.StatusId = 2;//全通过
                                break;
                            case "Form_Evec"://出差申请
                                var reqEvec = ctx.ReqEvectionMains.Single(r => r.FormNo == oriSignFlow.FormNo);
                                reqEvec.StatusId = 2;//全通过
                                break;
                            case "Form_Over"://加班申请
                                var reqOver = ctx.ReqOvertimes.Single(r => r.FormNo == oriSignFlow.FormNo);
                                reqOver.StatusId = 2;//全通过
                                break;
                            case "Form_Vaca"://请假申请
                                var reqVaca = ctx.ReqVacationMains.Single(r => r.FormNo == oriSignFlow.FormNo);
                                reqVaca.StatusId = 2;//全通过
                                break;
                            case "Form_Meet"://会议室申请
                                var reqMeet = ctx.ReqMeetingRooms.Single(r => r.FormNo == oriSignFlow.FormNo);
                                reqMeet.StatusId = 2;//全通过
                                break;
                            case "Form_Perc"://采购申请
                                var reqPerh = ctx.ReqPerchaseMains.Single(r => r.FormNo == oriSignFlow.FormNo);
                                reqPerh.StatusId = 2;//全通过
                                break;
                            case "Form_Rece"://商务接待申请
                                var reqRece = ctx.ReqReceptions.Single(r => r.FormNo == oriSignFlow.FormNo);
                                reqRece.StatusId = 2;//全通过
                                break;
                            case "Form_Invi"://招聘申请
                                var reqInvi = ctx.ReqInvites.Single(r => r.FormNo == oriSignFlow.FormNo);
                                reqInvi.StatusId = 2;//全通过
                                break;
                            default:
                                break;
                        }
                    }
                    else//该节点退件:将表单置为 退件状态
                    {
                        switch (oriSignFlow.FormNo.Substring(0, 9))
                        {
                            case "Form_Week"://周报
                                Weekly reqWeek = ctx.Weeklies.Single(r => r.FormNo == oriSignFlow.FormNo);
                                reqWeek.StatusId = 3;
                                break;
                            case "Form_Vehi"://用车申请
                                var reqVehi = ctx.ReqVehicleMains.Single(r => r.FormNo == oriSignFlow.FormNo);
                                reqVehi.StatusId = 3;//退件
                                break;
                            case "Form_Evec"://出差申请
                                var reqEvec = ctx.ReqEvectionMains.Single(r => r.FormNo == oriSignFlow.FormNo);
                                reqEvec.StatusId = 3;//退件
                                break;
                            case "Form_Over"://加班申请
                                var reqOver = ctx.ReqOvertimes.Single(r => r.FormNo == oriSignFlow.FormNo);
                                reqOver.StatusId = 3;//退件
                                break;
                            case "Form_Vaca"://请假申请
                                var reqVaca = ctx.ReqVacationMains.Single(r => r.FormNo == oriSignFlow.FormNo);
                                reqVaca.StatusId = 3;//退件
                                break;
                            case "Form_Meet"://会议室申请
                                var reqMeet = ctx.ReqMeetingRooms.Single(r => r.FormNo == oriSignFlow.FormNo);
                                reqMeet.StatusId = 3;//退件
                                break;
                            case "Form_Perh"://采购申请
                                var reqPerh = ctx.ReqPerchaseMains.Single(r => r.FormNo == oriSignFlow.FormNo);
                                reqPerh.StatusId = 3;//退件
                                break;
                            case "Form_Rece"://商务接待申请
                                var reqRece = ctx.ReqReceptions.Single(r => r.FormNo == oriSignFlow.FormNo);
                                reqRece.StatusId = 3;//退件
                                break;
                            case "Form_Invi"://招聘申请
                                var reqInvi = ctx.ReqInvites.Single(r => r.FormNo == oriSignFlow.FormNo);
                                reqInvi.StatusId = 3;//退件
                                break;
                            default:
                                break;
                        }
                    }

                    ctx.SubmitChanges();
                    rdto.Message = "签核成功";
                    rdto.Result = true;
                }
            }
            catch (Exception ex)
            {
                rdto.Message = "签核失败";
                rdto.Result = false;
            }
            return Json(rdto);
        }