Beispiel #1
0
        /// <summary>
        ///删除预览图片
        /// </summary>
        public string deleteLookPic()
        {
            //目标文件夹配置路径
            string load = System.Configuration.ConfigurationManager.AppSettings["loadSrc"];

            //目标文件夹的文件名
            string desdir = Server.MapPath(load) + CookieResult.CookieName();

            DirectoryInfo dir = new DirectoryInfo(desdir);

            FileSystemInfo[] fileinfo = dir.GetFileSystemInfos();  //返回目录中所有文件和子目录
            foreach (FileSystemInfo i in fileinfo)
            {
                if (i is DirectoryInfo)            //判断是否文件夹
                {
                    DirectoryInfo subdir = new DirectoryInfo(i.FullName);
                    subdir.Delete(true);          //删除子目录和文件
                }
                else
                {
                    System.IO.File.Delete(i.FullName);      //删除指定文件
                }
            }
            return(AjaxResult.Success(null, "删除成功").ToString());
        }
Beispiel #2
0
        //查询判断
        public string queryByName(string name)
        {
            var cookie = CookieResult.CookieName();
            var user   = db.Users.Where(x => x.登录名 == name).FirstOrDefault();

            if (name != cookie && user != null)
            {
                return(AjaxResult.Error("已存在该用户").ToString());
            }
            return(AjaxResult.Success(null, "可以使用").ToString());
        }
Beispiel #3
0
        /// <summary>
        ///重命名查看图片
        /// </summary>
        /// <param name="id">guid</param>
        /// <returns>图片</returns>
        public JsonResult QueryFile(string id)
        {
            //根据项目编码查询符合条件的资料
            var list = db.Bp_分享资料.Where(x => x.ID == id).FirstOrDefault();
            //存放查询出来的文件
            List <string> files = new List <string>();
            //文件根目录
            var homePath = System.Configuration.ConfigurationManager.AppSettings["shareFile"];
            //目标文件夹配置路径
            string load = System.Configuration.ConfigurationManager.AppSettings["loadSrc"];
            //目标文件夹的文件名
            string desdir = Server.MapPath(load) + CookieResult.CookieName();

            //判断文件夹是否存在
            if (!Directory.Exists(desdir))
            {
                // 目录不存在,建立目录
                Directory.CreateDirectory(desdir);
            }
            //动态拼接文件路径
            string path = homePath + list.ID;
            //文件路径集合
            var ls = Directory.GetFiles(path).ToList().FirstOrDefault();

            try
            {
                //判断文件是否是图片格式
                System.Drawing.Image img = System.Drawing.Image.FromFile(ls);
                //目标图片保存的路径和名称
                String imgPath = desdir + '\\' + list.资料名称;

                //true 覆盖已存在的同名文件,false则反之
                bool isrewrite = true;

                //从源文件复制到目标文件中
                System.IO.File.Copy(ls, imgPath, isrewrite);

                //绝对路径转换为相对路径
                int    j   = imgPath.IndexOf("Data");
                string str = imgPath.Substring(j);
                string url = str.Replace(@"\", @"/");
                //添加到查询文件集合中
                files.Add("../" + url);
            }
            catch (Exception)
            {
                return(Json(files));
            }
            return(Json(files));
        }
Beispiel #4
0
        //查询通知
        public JsonResult QueryMessages(string id)
        {
            var    name       = CookieResult.CookieName();
            int    pageSize   = int.Parse(Request["pageSize"] ?? "10");
            int    pageNumber = int.Parse(Request["pageNumber"] ?? "1");
            string sortOrder  = Request["sortOrder"];
            string searchText = Request["searchText"];
            string sortName   = Request["sortName"];
            var    list       = from msg in db.Bp_通知
                                select new
            {
                状态   = msg.查看人.IndexOf(name),
                ID   = msg.ID,
                标题   = msg.标题,
                内容   = msg.内容,
                发布时间 = msg.发布时间,
                发布人  = msg.发布人,
                查看人  = msg.查看人,
            };

            //查询本月通知
            //DateTime now = DateTime.Now;
            //DateTime d1 = new DateTime(now.Year, now.Month, 1);
            //string startTime = d1.ToString();
            //list = list.Where(x => String.Compare(startTime, x.发布时间) <= 0);
            if (!string.IsNullOrEmpty(id))
            {
                list = list.Where(x => x.ID == id);
                if (list.Count() > 0)
                {
                    ChangeStatus(id, name);
                }
            }
            switch (sortOrder)
            {
            case "desc":
                list = list.OrderByDescending(w => w.发布时间);
                break;

            case "asc":
                list = list.OrderBy(w => w.发布时间);
                break;

            default:
                list = list.OrderByDescending(w => w.发布时间);
                break;
            }
            ;
            return(Json(list));
        }
Beispiel #5
0
        /// <summary>
        ///添加爆破评分
        /// </summary>
        /// <param name="id">项目编码</param>
        /// <param name="kd">块度分数</param>
        /// <param name="pz">抛掷分数</param>
        /// <param name="gd">根底分数</param>
        /// <param name="sy">伞岩分数</param>
        /// <param name="test">评价</param>
        /// <returns>添加是否成功</returns>
        public string AddComment(string id, double?kd, double?pz, double?gd, double?sy, string text)
        {
            var name = CookieResult.CookieName();

            if (kd == null)
            {
                kd = 0;
            }
            if (pz == null)
            {
                pz = 0;
            }
            if (gd == null)
            {
                gd = 0;
            }
            if (sy == null)
            {
                sy = 0;
            }
            var xm          = db.Bp_项目.Where(x => x.项目编码 == id).FirstOrDefault();
            var userComment = db.Bp_Data_comment.FirstOrDefault(x => x.项目编码 == id && x.项目ID == xm.ID && x.评论人 == name);

            if (userComment != null)
            {
                return(AjaxResult.Error("你已给该次爆破评过分了!").ToString());
            }
            try
            {
                Bp_Data_comment comment = new Bp_Data_comment
                {
                    ID   = Guid.NewGuid().ToString(),
                    项目ID = xm.ID,
                    项目编码 = id,
                    评论人  = name,
                    块度评分 = kd,
                    抛掷评分 = pz,
                    根底评分 = gd,
                    伞岩评分 = sy,
                    评论   = text,
                };
                db.Bp_Data_comment.Add(comment);
                db.SaveChanges();
                return(AjaxResult.Success(null, "添加成功").ToString());
            }
            catch (Exception e)
            {
                return(AjaxResult.Error("添加失败", e).ToString());
            }
        }
Beispiel #6
0
 /// <summary>
 ///删除该年成本
 ///<param name="id">年份</param>
 /// </summary>
 public string deleteYear(string id)
 {
     try
     {
         var flag = false;
         var name = CookieResult.CookieName();
         var i    = int.Parse(id);
         var user = db.Users.Where(x => x.登录名 == name).FirstOrDefault();
         var ye   = db.Bp_成本年份.Where(x => x.年份 == i).FirstOrDefault();
         var list = db.Bp_成本统计.Where(x => x.yearID == ye.id);
         foreach (var l in list)
         {
             if (l.合计 != null)
             {
                 flag = true;
             }
         }
         if (flag)
         {
             if (user.级别 == 1)
             {
                 db.Bp_成本统计.RemoveRange(list);
                 db.Bp_成本年份.Remove(ye);
                 db.SaveChanges();
                 return(AjaxResult.Success(null, "删除成功").ToString());
             }
             else
             {
                 return(AjaxResult.Error("权限不足").ToString());
             }
         }
         else
         {
             db.Bp_成本统计.RemoveRange(list);
             db.Bp_成本年份.Remove(ye);
             db.SaveChanges();
             return(AjaxResult.Success(null, "删除成功").ToString());
         }
     }
     catch (Exception)
     {
         return(AjaxResult.Error("删除失败").ToString());
     }
 }
Beispiel #7
0
        /// <summary>
        ///删除共享文件
        /// </summary>
        /// <param name="id">文档的guid</param>
        public string DeleteShareFile(string id)
        {
            var name = CookieResult.CookieName();
            var user = db.Users.Where(x => x.登录名 == name).FirstOrDefault();

            var list = db.Bp_分享资料.Where(x => x.ID == id);

            //文件根目录
            var homePath = System.Configuration.ConfigurationManager.AppSettings["shareFile"];

            try
            {
                foreach (var l in list)
                {
                    //文件路径
                    string        path = homePath + l.ID;
                    DirectoryInfo dir  = new DirectoryInfo(path);
                    if (dir.Exists)
                    {
                        DirectoryInfo[] childs = dir.GetDirectories();
                        foreach (DirectoryInfo child in childs)
                        {
                            child.Delete(true);
                        }
                        dir.Delete(true);
                    }
                }

                if (user.级别 == 1)
                {
                    db.Bp_分享资料.RemoveRange(list);
                    db.SaveChanges();
                    return(AjaxResult.Success(null, "删除成功").ToString());
                }
                else
                {
                    return(AjaxResult.Error("权限不足!").ToString());
                }
            }
            catch (Exception)
            {
                return(AjaxResult.Error("删除失败").ToString());
            }
        }
Beispiel #8
0
        private void TimeRun(BackgroundWorker worker)
        {
            for (int r = 0; r < Global.robotList.Count; r++)
            {
                var robot = Global.robotList[r];
                if (robot.State == 0)
                {
                    string loginUrl = protocol.CheckLogin(robot.UUID);

                    if (loginUrl == "408")
                    {
                        //   timerQrCode.Enabled = false;
                    }
                    else if (loginUrl == "200")
                    {
                        // Thread.Sleep(2000);
                    }
                    else
                    {
                        CookieResult cookieResult = protocol.GetCookie(loginUrl);
                        robot.CookieStr  = cookieResult.CookieStr;
                        robot.Cookie     = cookieResult.wechatCookie;
                        robot.SyncCookie = cookieResult.SyncCookie;

                        InitSyncResult initSyncResult = protocol.Init(robot.Cookie, robot.CookieStr);
                        robot.SyncKey    = initSyncResult.SyncKey;
                        robot.SynckeyStr = initSyncResult.SynckeyStr;
                        robot.UserName   = initSyncResult.UserName;

                        protocol.StatusNotify(robot.Cookie, robot.CookieStr, robot.UserName);
                        robot.State         = 1;
                        Global.robotList[r] = robot;

                        if (worker.CancellationPending)
                        {
                            return;
                        }
                        worker.ReportProgress(1, robot.UUID);
                    }
                }
            }
        }
Beispiel #9
0
 //删除通知
 public string DeleteMessage(string id, string title)
 {
     try
     {
         var name = CookieResult.CookieName();
         var user = db.Users.Where(x => x.登录名 == name).FirstOrDefault();
         var list = db.Bp_通知.Where(x => x.ID == id && x.标题 == title);
         if (user.级别 == 1)
         {
             db.Bp_通知.RemoveRange(list);
             db.SaveChanges();
             return(AjaxResult.Success(null, "删除成功").ToString());
         }
         else
         {
             return(AjaxResult.Error("权限不足!").ToString());
         }
     }
     catch (Exception)
     {
         return(AjaxResult.Error("删除失败!").ToString());
     }
 }
Beispiel #10
0
        /// <summary>
        ///删除文件中的图片
        /// </summary>
        /// <param name="id">资料ID</param>
        /// <param name="name">资料名称</param>
        /// <returns>图片</returns>
        public string deletePic(string id)
        {
            var user = CookieResult.CookieName();
            var list = db.Bp_项目资料.Where(x => x.资料ID == id).FirstOrDefault();

            if (list == null)
            {
                return(AjaxResult.Error("图片不存在或已被删除").ToString());
            }
            else
            {
                if (list.人 != user)
                {
                    return(AjaxResult.Error("无权删除该图片").ToString());
                }
                else
                {
                    try
                    {
                        var homePath = System.Configuration.ConfigurationManager.AppSettings["imageSrc"];

                        var path = homePath + list.资料ID;

                        DirectoryInfo di = new DirectoryInfo(path);
                        di.Delete(true);

                        db.Bp_项目资料.Remove(list);
                        db.SaveChanges();
                        return(AjaxResult.Success(null, "删除成功").ToString());
                    }
                    catch (Exception e)
                    {
                        return(AjaxResult.Error("删除失败" + e).ToString());
                    }
                }
            }
        }
Beispiel #11
0
        //查询共享文件
        public JsonResult QueryAllShare()
        {
            var    name       = CookieResult.CookieName();
            int    pageSize   = int.Parse(Request["pageSize"] ?? "10");
            int    pageNumber = int.Parse(Request["pageNumber"] ?? "1");
            string sortOrder  = Request["sortOrder"];
            string searchText = Request["searchText"];
            string sortName   = Request["sortName"];

            var list = from s in db.Bp_分享资料
                       select new
            {
                ID   = s.ID,
                资料名称 = s.资料名称,
                时间   = s.时间,
                人    = s.人,
                别名   = s.别名,
            };

            switch (sortOrder)
            {
            case "desc":
                list = list.OrderByDescending(w => w.时间);
                break;

            case "asc":
                list = list.OrderBy(w => w.时间);
                break;

            default:
                list = list.OrderByDescending(w => w.时间);
                break;
            }
            ;
            return(Json(list));
        }
Beispiel #12
0
 //添加通知
 public string AddMessages(string title, string context)
 {
     try
     {
         var   name = CookieResult.CookieName();
         var   time = DateTime.Now;
         Bp_通知 msg  = new Bp_通知
         {
             ID   = Guid.NewGuid().ToString(),
             标题   = title,
             内容   = context,
             发布人  = name,
             查看人  = name,
             发布时间 = time.ToString(),
         };
         db.Bp_通知.Add(msg);
         db.SaveChanges();
         return(AjaxResult.Success(null, "发布成功").ToString());
     }
     catch (Exception)
     {
         return(AjaxResult.Error("发布失败!").ToString());
     }
 }
Beispiel #13
0
        //报表查询
        public JsonResult QueryStatistics()
        {
            try
            {
                var    name       = CookieResult.CookieName();
                int    pageSize   = int.Parse(Request["pageSize"] ?? "10");
                int    pageNumber = int.Parse(Request["pageNumber"] ?? "1");
                string sortOrder  = Request["sortOrder"];
                string searchText = Request["searchText"];
                string sortName   = Request["sortName"];

                var info = db.Bp_项目数据.ToList();

                if (info.Count != 0)
                {
                    db.Bp_项目数据.RemoveRange(info);
                    db.SaveChanges();
                }

                var lists = from xm in db.Bp_项目
                            join lp in db.BP_Data_lbastpreset on xm.ID equals lp.项目ID
                            join bb in db.BP_Data_Cal_BlastsDynamiteSet_Base on lp.项目ID equals bb.项目ID
                            //join bv in db.BP_Data_Cal_BlastsDynamiteSet_VolBase on bb.项目ID equals bv.项目ID
                            join bd in db.BP_Data_Cal_BlastsDynamiteSet_Detail on bb.项目ID equals bd.项目ID
                            select new
                {
                    项目ID = xm.ID,
                    项目编码 = xm.项目编码,
                    台阶水平 = lp.Z1,
                    日期   = lp.lbastpresetname,
                    岩性   = bb.mainRock,
                    //孔距 = bv.VolNo == "B" ? bv.ColLength : 0,
                    //排距 = bv.VolNo == "B" ? bv.VolLength : 0,
                    孔距   = db.BP_Data_Cal_BlastsDynamiteSet_VolBase.Where(x => x.项目ID == bb.项目ID).Select(x => x.ColLength).Average(),
                    排距   = db.BP_Data_Cal_BlastsDynamiteSet_VolBase.Where(x => x.VolNo != "A" && x.项目ID == bb.项目ID).Select(x => x.VolLength).Average(),
                    孔数   = bb.countBlast,
                    平均孔深 = bb.LbastDepth,
                    炸药量  = bb.countlg,
                    //抵抗线 = bv.VolNo == "A" ? bv.VolDikang : 0,
                    //超深 = bv.VolNo == "A" ? bv.BlastAddDepth : 0,
                    抵抗线 = db.BP_Data_Cal_BlastsDynamiteSet_VolBase.Where(x => x.VolNo == "A" && x.项目ID == bb.项目ID).Select(x => x.VolDikang).FirstOrDefault(),
                    超深  = db.BP_Data_Cal_BlastsDynamiteSet_VolBase.Where(x => x.项目ID == bb.项目ID).Select(x => x.BlastAddDepth).Average(),
                    填充  = bd.l1,
                };
                List <Bp_项目数据> list = new List <Bp_项目数据>();
                List <string>  id   = new List <string>();
                List <string>  bm   = new List <string>();
                foreach (var item in lists)
                {
                    if (bm.IndexOf(item.项目编码) == -1 && id.IndexOf(item.项目ID) == -1)
                    {
                        bm.Add(item.项目编码);
                        id.Add(item.项目ID);
                        Bp_项目数据 bp = new Bp_项目数据();
                        bp.项目ID = item.项目ID;
                        bp.项目编码 = item.项目编码;
                        bp.台阶水平 = item.台阶水平;
                        bp.日期   = item.日期;
                        bp.岩性   = item.岩性;
                        bp.孔距   = item.孔距;
                        bp.排距   = item.排距;
                        bp.孔数   = item.孔数;
                        bp.平均孔深 = item.平均孔深;
                        bp.炸药量  = item.炸药量;
                        bp.抵抗线  = item.抵抗线;
                        bp.超深   = item.超深;
                        bp.填充   = item.填充;
                        bp.数量   = 1;
                        list.Add(bp);
                    }
                    else
                    {
                        foreach (var i in list)
                        {
                            if (i.项目编码 == item.项目编码)
                            {
                                i.孔距  = i.孔距 + item.孔距;
                                i.排距  = i.排距 + item.排距;
                                i.抵抗线 = i.抵抗线 + item.抵抗线;
                                i.超深  = i.超深 + item.超深;
                                i.数量  = i.数量 + 1;
                            }
                        }
                    }
                }
                foreach (var item in list)
                {
                    string value = item.日期;
                    if (value.IndexOf(".") > -1)
                    {
                        value = value.Substring(0, value.IndexOf("."));
                    }
                    string[] valList = value.Split('-');
                    string   time    = "";
                    for (int t = 0; t < valList.Length; t++)
                    {
                        if (t < 3)
                        {
                            if (valList[t].IndexOf(".") > -1)
                            {
                                time += valList[t].Substring(0, valList[t].IndexOf("."));
                            }
                            else
                            {
                                time += valList[t];
                            }
                        }
                    }
                    //替换
                    //string time = value.Replace("-", "");
                    DateTime dt = new DateTime();
                    if (time.Length > 8)
                    {
                        continue;
                    }
                    if (time.Length == 8)
                    {
                        continue;
                    }
                    else
                    {
                        if (time.Length == 6)
                        {
                            dt = DateTime.ParseExact(value, "yyyy-M-d", System.Globalization.CultureInfo.CurrentCulture);
                        }
                        else if (time.Length == 7)
                        {
                            try
                            {
                                dt = DateTime.ParseExact(time, "yyyyMdd", System.Globalization.CultureInfo.CurrentCulture);
                            }
                            catch (Exception)
                            {
                                dt = DateTime.ParseExact(time, "yyyyMMd", System.Globalization.CultureInfo.CurrentCulture);
                            }
                        }
                    }
                    item.日期 = dt.ToString("yyyy-MM-dd");
                }

                foreach (var i in list)
                {
                    var n = 1;
                    foreach (var j in list)
                    {
                        if (i.日期 == j.日期 && i.项目编码 != j.项目编码)
                        {
                            if (n == 1)
                            {
                                i.日期 = i.日期 + "(" + n + ")";
                                n   += 1;
                                j.日期 = j.日期 + "(" + n + ")";
                            }
                            else
                            {
                                n   += 1;
                                j.日期 = j.日期 + "(" + n + ")";
                            }
                        }
                    }
                }

                db.Bp_项目数据.AddRange(list);
                db.SaveChanges();

                var xmsj = from sj in db.Bp_项目数据
                           select new
                {
                    项目编码 = sj.项目编码,
                    台阶水平 = sj.台阶水平,
                    日期   = sj.日期,
                    岩性   = sj.岩性,
                    孔距   = sj.孔距 / sj.数量,
                    排距   = sj.排距 / sj.数量,
                    孔数   = sj.孔数,
                    平均孔深 = sj.平均孔深,
                    炸药量  = sj.炸药量,
                    抵抗线  = sj.抵抗线 / sj.数量,
                    超深   = sj.超深 / sj.数量,
                    填充   = sj.填充,
                    孔总深  = sj.平均孔深 * sj.孔数,
                    爆破量  = (sj.孔距 / sj.数量) * (sj.排距 / sj.数量) * (sj.平均孔深 - (sj.超深 / sj.数量)) * sj.孔数 * 2.65,
                    炸药单耗 = ((sj.孔距 / sj.数量) * (sj.排距 / sj.数量) * (sj.平均孔深 - (sj.超深 / sj.数量)) * sj.孔数 * 2.65) == 0 ? 0 : sj.炸药量 / (((sj.孔距 / sj.数量) * (sj.排距 / sj.数量) * (sj.平均孔深 - (sj.超深 / sj.数量)) * sj.孔数 * 2.65) / 2.65)
                };
                switch (sortOrder)
                {
                case "a":
                    xmsj = xmsj.OrderByDescending(w => w.日期);
                    break;

                case "last_desc":
                    xmsj = xmsj.OrderByDescending(w => w.日期);
                    break;

                case "last":
                    xmsj = xmsj.OrderBy(w => w.日期);
                    break;

                default:
                    xmsj = xmsj.OrderByDescending(w => w.日期);
                    break;
                }
                ;
                return(Json(xmsj));
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Beispiel #14
0
        private void TimeRun(BackgroundWorker worker)
        {
            if (worker.CancellationPending)
            {
                return;
            }
            var robot = Global.robot;

            if (robot == null)
            {
                worker.ReportProgress(1, "noRobot");
            }
            if (robot.State == 0)
            {
                worker.ReportProgress(2, "processing");
                string loginUrl = protocol.CheckLogin(robot.UUID);
                worker.ReportProgress(3, "processed");
                if (loginUrl == "408")
                {
                    //超时需要重新生成二维码
                }
                else if (loginUrl == "200")
                {
                    //已扫描待确认
                }
                else
                {
                    CookieResult cookieResult = protocol.GetCookie(loginUrl);
                    robot.CookieStr  = cookieResult.CookieStr;
                    robot.Cookie     = cookieResult.wechatCookie;
                    robot.SyncCookie = cookieResult.SyncCookie;

                    InitSyncResult initSyncResult = protocol.Init(robot.Cookie, robot.CookieStr);
                    robot.Uin = initSyncResult.Uin;

                    RobotService service = new RobotService();
                    int          robotId = service.IsRobot(robot.Uin);
                    if (robotId > 0)
                    {
                        robot.Id         = robotId;
                        robot.SyncKey    = initSyncResult.SyncKey;
                        robot.SynckeyStr = initSyncResult.SynckeyStr;
                        robot.UserName   = initSyncResult.UserName;
                        robot.NickName   = initSyncResult.Nickname;
                        protocol.StatusNotify(robot.Cookie, robot.CookieStr, robot.UserName);
                        robot.State   = 1;
                        robot.Contact = protocol.GetContact(robot.Cookie, robot.CookieStr).MemberList.ToList();
                        Global.robot  = robot;
                    }
                    else
                    {
                        loginUrl = "noRobot";
                    }
                }
                worker.ReportProgress(1, loginUrl);
            }
            else
            {
                worker.ReportProgress(1, "1");
            }
        }
Beispiel #15
0
        public void Upload(FormCollection form)
        {
            //if (Request.Files.Count == 0)
            //{
            //Request.Files.Count 文件数为0上传不成功
            //Response.Write("<script>alert('上传失败');window.location.href='/Table/Operation';</script>");
            //}
            var files = Request.Files["file"];

            if (files.ContentLength == 0)
            {
                //文件大小大(以字节为单位)为0时,做一些操作
                Response.Write("<script>alert('上传失败');window.location.href='/Table/Operation';</script>");
            }
            else
            {
                //上传人
                var user = CookieResult.CookieUser();
                //流水号
                List <SqlParameter> paramArray = new List <SqlParameter>();
                paramArray.Add(new SqlParameter("@别名", "项目流水号"));
                paramArray.Add(new SqlParameter("@写流水号", 1));
                SqlParameter param = new SqlParameter("@输出流水号", SqlDbType.VarChar);
                param.Direction = ParameterDirection.Output;
                param.Size      = 100;
                paramArray.Add(param);
                db.Database.ExecuteSqlCommand("EXEC [sp_GetNewID] @别名,@写流水号,@输出流水号 out", paramArray.ToArray());
                string result = paramArray[2].Value.ToString();

                var number = Convert.ToInt32(result);

                //项目编码

                var bm = Request["ubm"].ToString();

                //项目名称

                var nm = Request["unm"].ToString();

                //上传时间
                var time = DateTime.Now;

                //上传电脑
                var clientPCName = "";

                //根据目标IP地址获取IP对象
                //    System.Net.IPAddress clientIP = System.Net.IPAddress.Parse(Request.UserHostAddress);
                //根据IP对象创建主机对象
                //    System.Net.IPHostEntry ihe = System.Net.Dns.GetHostEntry(clientIP);
                //获取客户端主机名称
                //    clientPCName = ihe.HostName;

                //文件存放路径
                var homePath = System.Configuration.ConfigurationManager.AppSettings["imageSrc"];
                var guid     = Guid.NewGuid().ToString();

                //文件大小不为0
                files = Request.Files["file"];

                //取得目标文件夹的路径
                string target = homePath + guid;

                //取得文件名字
                var filename = files.FileName;

                try
                {
                    //判断文件夹是否存在
                    if (!Directory.Exists(target))
                    {
                        // 目录不存在,建立目录
                        Directory.CreateDirectory(target);
                    }
                    //获取存储的目标地址
                    string path = target + "\\" + filename;
                    files.SaveAs(path);

                    string info  = target + "\\" + "Upload_File_State.inf";
                    string vTime = time.Year + "-" + time.Month + "-" + time.Day + " " + time.Hour + ":" + time.Minute + ":" + time.Second;

                    string str = "[基本信息]" + "\r\n" + "上传文件名=" + filename + "\r\n" + "上传类型=项目"
                                 + "\r\n" + "上传文件大小=" + files.ContentLength + "\r\n" + "上传日期=" + vTime + "\r\n"
                                 + "上传登录名=" + user.登录名 + "\r\n" + "上传用户=" + user.用户姓名 + "\r\n"
                                 + "上传计算机=" + clientPCName + "\r\n" + "是否逻辑删除=0";
                    Encoding     code = Encoding.GetEncoding("gb2312");
                    StreamWriter sw   = null;
                    {
                        try
                        {
                            sw = new StreamWriter(info, false, code);
                            sw.Write(str);
                            sw.Flush();
                        }
                        catch { }
                    }
                    sw.Close();
                    sw.Dispose();

                    Bp_项目资料 xmzl = new Bp_项目资料
                    {
                        项目编码 = bm,
                        项目名称 = nm,
                        资料ID = guid,
                        资料名称 = filename,
                        时间   = time,
                        人    = user.登录名,
                        电脑   = clientPCName,
                        流水号  = number,
                    };
                    db.Bp_项目资料.Add(xmzl);
                    db.SaveChanges();
                    Response.Write("<script>alert('上传成功');window.location.href='/Table/Operation';</script>");
                }
                catch (Exception)
                {
                    Response.Write("<script>alert('上传失败');window.location.href='/Table/Operation';</script>");
                }
            }
        }
Beispiel #16
0
        public void Upload(FormCollection form)
        {
            //if (Request.Files.Count == 0)
            //{
            //Request.Files.Count 文件数为0上传不成功
            //Response.Write("<script>alert('上传失败');window.location.href='/Home/Index';</script>");
            //}
            var file  = Request.Files["file"];
            var alias = form["alias"];
            var list  = db.Bp_分享资料.Where(x => x.别名 == alias);

            if (list.Count() > 0 || alias == null || alias == "")
            {
                //别名已存在或没写别名
                Response.Write("<script>alert('上传失败');window.location.href='/Home/Index';</script>");
            }
            else
            {
                if (file.ContentLength == 0)
                {
                    //文件大小大(以字节为单位)为0时,做一些操作
                    Response.Write("<script>alert('上传失败');window.location.href='/Home/Index';</script>");
                }
                else
                {
                    //上传人
                    var name = CookieResult.CookieName();

                    //上传时间
                    var time = DateTime.Now;
                    //文件存放路径
                    var homePath = System.Configuration.ConfigurationManager.AppSettings["shareFile"];
                    var guid     = Guid.NewGuid().ToString();

                    //文件大小不为0
                    file = Request.Files["file"];
                    string target = homePath + guid; //取得目标文件夹的路径
                                                     //取得文件名字
                    var filename = file.FileName;
                    try
                    {
                        Bp_分享资料 fxzl = new Bp_分享资料
                        {
                            ID   = guid,
                            资料名称 = filename,
                            时间   = time,
                            人    = name,
                            别名   = alias,
                        };
                        db.Bp_分享资料.Add(fxzl);
                        db.SaveChanges();
                        //判断文件夹是否存在
                        if (!Directory.Exists(target))
                        {
                            // 目录不存在,建立目录
                            Directory.CreateDirectory(target);
                        }
                        //获取存储的目标地址
                        string path = target + "\\" + filename;
                        file.SaveAs(path);
                        Response.Write("<script>alert('上传成功');window.location.href='/Home/Index';</script>");
                    }
                    catch (Exception)
                    {
                        Response.Write("<script>alert('上传失败');window.location.href='/Home/Index';</script>");
                    }
                }
            }
        }
Beispiel #17
0
        /// <summary>
        ///爆破设计统计数据表的显示和筛选
        /// </summary>
        /// <param name="startTime">开始时间</param>
        /// <param name="endTime">结束时间</param>
        /// <param name="steps">台阶水平</param>
        /// <param name="lithology">岩性</param>
        /// <param name="avg">平均分</param>
        /// <returns>查询报表数据</returns>
        public JsonResult QueryStatistics(string startTime, string endTime, double?steps, string lithology, string avg)
        {
            try
            {
                var    name       = CookieResult.CookieName();
                int    pageSize   = int.Parse(Request["pageSize"] ?? "10");
                int    pageNumber = int.Parse(Request["pageNumber"] ?? "1");
                string sortOrder  = Request["sortOrder"];
                string searchText = Request["searchText"];
                string sortName   = Request["sortName"];
                var    list       = from sj in db.Bp_项目数据
                                    select new
                {
                    项目编码  = sj.项目编码,
                    台阶水平  = sj.台阶水平,
                    日期    = sj.日期,
                    岩性    = sj.岩性,
                    孔距    = sj.孔距 / sj.数量,
                    排距    = sj.排距 / sj.数量,
                    孔数    = sj.孔数,
                    平均孔深  = sj.平均孔深,
                    炸药量   = sj.炸药量,
                    抵抗线   = sj.抵抗线 / sj.数量,
                    超深    = sj.超深 / sj.数量,
                    填充    = sj.填充,
                    孔总深   = sj.平均孔深 * sj.孔数,
                    爆破量   = (sj.孔距 / sj.数量) * (sj.排距 / sj.数量) * (sj.平均孔深 - (sj.超深 / sj.数量)) * sj.孔数 * 2.65,
                    炸药单耗  = ((sj.孔距 / sj.数量) * (sj.排距 / sj.数量) * (sj.平均孔深 - (sj.超深 / sj.数量)) * sj.孔数 * 2.65) == 0 ? 0 : sj.炸药量 / (((sj.孔距 / sj.数量) * (sj.排距 / sj.数量) * (sj.平均孔深 - (sj.超深 / sj.数量)) * sj.孔数 * 2.65) / 2.65),
                    块度平均分 = db.Bp_Data_comment.Where(b => b.项目编码 == sj.项目编码 && b.项目ID == sj.项目ID).Select(b => b.块度评分).Average(),
                    抛掷平均分 = db.Bp_Data_comment.Where(b => b.项目编码 == sj.项目编码 && b.项目ID == sj.项目ID).Select(b => b.抛掷评分).Average(),
                    根底平均分 = db.Bp_Data_comment.Where(b => b.项目编码 == sj.项目编码 && b.项目ID == sj.项目ID).Select(b => b.根底评分).Average(),
                    伞岩平均分 = db.Bp_Data_comment.Where(b => b.项目编码 == sj.项目编码 && b.项目ID == sj.项目ID).Select(b => b.伞岩评分).Average(),
                    总平均分  = (db.Bp_Data_comment.Where(b => b.项目编码 == sj.项目编码 && b.项目ID == sj.项目ID).Select(b => b.块度评分).Average() + db.Bp_Data_comment.Where(b => b.项目编码 == sj.项目编码 && b.项目ID == sj.项目ID).Select(b => b.抛掷评分).Average() + db.Bp_Data_comment.Where(b => b.项目编码 == sj.项目编码 && b.项目ID == sj.项目ID).Select(b => b.根底评分).Average() + db.Bp_Data_comment.Where(b => b.项目编码 == sj.项目编码 && b.项目ID == sj.项目ID).Select(b => b.伞岩评分).Average()) / 4,
                    打分    = !db.Bp_Data_comment.Any(x => x.项目编码 == sj.项目编码 && x.项目ID == sj.项目ID && x.评论人 == name),
                    查看    = db.Bp_Data_comment.Any(x => x.项目编码 == sj.项目编码 && x.项目ID == sj.项目ID),
                    载     = db.Bp_项目资料.Any(x => x.项目编码 == sj.项目编码),
                    预览    = db.Bp_项目资料.Where(x => x.项目编码 == sj.项目编码).Select(x => x.资料名称),
                };
                if (!string.IsNullOrEmpty(startTime))
                {
                    list = list.Where(x => String.Compare(startTime, x.日期) <= 0);
                }
                if (!string.IsNullOrEmpty(endTime))
                {
                    list = list.Where(x => String.Compare(x.日期, endTime) <= 0);
                }
                if (steps != null)
                {
                    list = list.Where(lp => lp.台阶水平 == steps);
                }
                if (!string.IsNullOrEmpty(lithology))
                {
                    list = list.Where(bb => bb.岩性.Equals(lithology));
                }
                if (!string.IsNullOrEmpty(avg))
                {
                    if (avg.Equals("优"))
                    {
                        list = list.Where(b => b.总平均分 >= 4.5 && b.总平均分 <= 5);
                    }
                    if (avg.Equals("良"))
                    {
                        list = list.Where(b => b.总平均分 >= 4 && b.总平均分 < 4.5);
                    }
                    if (avg.Equals("中"))
                    {
                        list = list.Where(b => b.总平均分 >= 3 && b.总平均分 < 4);
                    }
                    if (avg.Equals("差"))
                    {
                        list = list.Where(b => b.总平均分 < 3);
                    }
                }
                switch (sortOrder)
                {
                case "a":
                    list = list.OrderByDescending(w => w.日期);
                    break;

                case "last_desc":
                    list = list.OrderByDescending(w => w.日期);
                    break;

                case "last":
                    list = list.OrderBy(w => w.日期);
                    break;

                default:
                    list = list.OrderByDescending(w => w.日期);
                    break;
                }
                ;
                return(Json(list));
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Beispiel #18
0
        /// <summary>
        /// 第四步:登录获取cookie
        /// </summary>
        /// <param name="url"></param>
        /// <returns></returns>
        public CookieResult GetCookie(string url)
        {
            if (url.StartsWith("?ticket"))
            {
                url = "https://wx.qq.com/cgi-bin/mmwebwx-bin/webwxnewloginpage" + url;
            }

            HttpHelper http = new HttpHelper();
            HttpItem   item = new HttpItem()
            {
                URL         = url,                                                                        //URL     必需项
                Method      = "GET",                                                                      //URL     可选项 默认为Get
                UserAgent   = "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:18.0) Gecko/20100101 Firefox/18.0", //用户的浏览器类型,版本,操作系统     可选项有默认值
                Accept      = "text/html, application/xhtml+xml, */*",                                    //    可选项有默认值
                ContentType = "text/html",                                                                //返回类型    可选项有默认值
            };
            HttpResult   result       = http.GetHtml(item);
            CookieResult cookieResult = new CookieResult();
            WechatCookie cookie       = new WechatCookie();

            string html = result.Html;

            AppLog.WriteInfo(string.Format("协议:{0},结果:{1}", "GetCookie", html));

            if (!string.IsNullOrEmpty(html) && html != "操作超时")
            {
                XmlDocument doc = new XmlDocument();
                doc.LoadXml(html);
                string json = JsonConvert.SerializeXmlNode(doc);
                ///改下代码,定义类
                dynamic d = JsonConvert.DeserializeObject <dynamic>(json);
                cookie.Skey        = d.error.skey.Value;
                cookie.Pass_Ticket = d.error.pass_ticket.Value;
                cookie.Wxsid       = d.error.wxsid.Value;
                cookie.Wxuin       = Convert.ToInt32(d.error.wxuin.Value);
            }
            cookieResult.wechatCookie = cookie;

            #region 核心cookie处理
            string cookieStr = result.Cookie;
            cookieStr = cookieStr.Replace("Domain=wx.qq.com; Path=/;", "").Replace("Domain=.qq.com; Path=/;", "").Replace(" ", "");

            StringBuilder sb = new StringBuilder();
            string[]      c  = cookieStr.Split(';');
            sb.Append(c[0] + ";");
            for (int i = 1; i < 7; i++)
            {
                int    firstIndex = c[i].LastIndexOf(',');
                string t          = c[i].Substring(firstIndex + 1) + ";";
                sb.Append(t);
            }

            if (cookieStr.IndexOf("webwx_data_ticket=") >= 0)
            {
                string tmp      = cookieStr.Substring(cookieStr.IndexOf("webwx_data_ticket="));
                int    endIndex = tmp.IndexOf(";");
                cookieResult.SyncCookie = tmp.Substring(0, endIndex);
            }
            cookieResult.CookieStr = sb.ToString();
            #endregion

            return(cookieResult);
        }