350 lines
		
	
	
		
			15 KiB
		
	
	
	
		
			C#
		
	
	
	
		
		
			
		
	
	
			350 lines
		
	
	
		
			15 KiB
		
	
	
	
		
			C#
		
	
	
	
| 
								 | 
							
								using Newtonsoft.Json;
							 | 
						|||
| 
								 | 
							
								using Newtonsoft.Json.Linq;
							 | 
						|||
| 
								 | 
							
								using System;
							 | 
						|||
| 
								 | 
							
								using System.Configuration;
							 | 
						|||
| 
								 | 
							
								using System.Drawing;
							 | 
						|||
| 
								 | 
							
								using System.Drawing.Imaging;
							 | 
						|||
| 
								 | 
							
								using System.IO;
							 | 
						|||
| 
								 | 
							
								using System.Linq;
							 | 
						|||
| 
								 | 
							
								using System.Text;
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								namespace BLL
							 | 
						|||
| 
								 | 
							
								{
							 | 
						|||
| 
								 | 
							
								    /// <summary>
							 | 
						|||
| 
								 | 
							
								    /// 获取身份证信息
							 | 
						|||
| 
								 | 
							
								    /// </summary>
							 | 
						|||
| 
								 | 
							
								    public static class APICommonService
							 | 
						|||
| 
								 | 
							
								    {        
							 | 
						|||
| 
								 | 
							
								        #region 获取access_token信息
							 | 
						|||
| 
								 | 
							
								        /// <summary>
							 | 
						|||
| 
								 | 
							
								        ///  获取access_token信息
							 | 
						|||
| 
								 | 
							
								        /// </summary>
							 | 
						|||
| 
								 | 
							
								        /// <param name="url"></param>
							 | 
						|||
| 
								 | 
							
								        /// <returns></returns>
							 | 
						|||
| 
								 | 
							
								        public static string getaccess_token()
							 | 
						|||
| 
								 | 
							
								        {
							 | 
						|||
| 
								 | 
							
								            string access_token = string.Empty;
							 | 
						|||
| 
								 | 
							
								            string appid = Const.AppID_CWCEC;
							 | 
						|||
| 
								 | 
							
								            string secret = Const.AppSecret_CWCEC;
							 | 
						|||
| 
								 | 
							
								            //string appid = "wxb5f0e8051b7b9eee";
							 | 
						|||
| 
								 | 
							
								            //string secret = "626175f8860bf84beb4cf507b9445115";
							 | 
						|||
| 
								 | 
							
								            using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString))
							 | 
						|||
| 
								 | 
							
								            {
							 | 
						|||
| 
								 | 
							
								                var getToken = db.Sys_AccessToken.FirstOrDefault();
							 | 
						|||
| 
								 | 
							
								                if (getToken != null && getToken.Endtime > DateTime.Now)
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								                    access_token = getToken.Access_token;
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								                else
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								                    if (getToken != null)
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        db.Sys_AccessToken.DeleteOnSubmit(getToken);
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								                    var strJosn = APIGetHttpService.Http("https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=" + appid + "&secret=" + secret);
							 | 
						|||
| 
								 | 
							
								                    if (!string.IsNullOrEmpty(strJosn))
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        JObject obj = JObject.Parse(strJosn);
							 | 
						|||
| 
								 | 
							
								                        access_token = obj["access_token"].ToString();
							 | 
						|||
| 
								 | 
							
								                        int expires_in = Funs.GetNewIntOrZero(obj["expires_in"].ToString());
							 | 
						|||
| 
								 | 
							
								                        Model.Sys_AccessToken newToken = new Model.Sys_AccessToken
							 | 
						|||
| 
								 | 
							
								                        {
							 | 
						|||
| 
								 | 
							
								                            Access_token = access_token,
							 | 
						|||
| 
								 | 
							
								                            Expires_in = expires_in,
							 | 
						|||
| 
								 | 
							
								                            Endtime = DateTime.Now.AddSeconds(expires_in),
							 | 
						|||
| 
								 | 
							
								                        };
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                        db.Sys_AccessToken.InsertOnSubmit(newToken);
							 | 
						|||
| 
								 | 
							
								                        db.SubmitChanges();
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								            }
							 | 
						|||
| 
								 | 
							
								            return access_token;
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								        #endregion
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								        #region 发送订阅消息
							 | 
						|||
| 
								 | 
							
								        /// <summary>
							 | 
						|||
| 
								 | 
							
								        /// 发送订阅消息
							 | 
						|||
| 
								 | 
							
								        /// </summary>
							 | 
						|||
| 
								 | 
							
								        /// <param name="userId"></param>
							 | 
						|||
| 
								 | 
							
								        /// <param name="thing2"></param>
							 | 
						|||
| 
								 | 
							
								        /// <param name="name1"></param>
							 | 
						|||
| 
								 | 
							
								        /// <param name="date3"></param>
							 | 
						|||
| 
								 | 
							
								        public static string SendSubscribeMessage(string userId, string thing2, string name1, string date3)
							 | 
						|||
| 
								 | 
							
								        {
							 | 
						|||
| 
								 | 
							
								            string access_token = APICommonService.getaccess_token();
							 | 
						|||
| 
								 | 
							
								            var getUser = Funs.DB.Sys_User.FirstOrDefault(x => x.UserId == userId);
							 | 
						|||
| 
								 | 
							
								            if (getUser != null && !string.IsNullOrEmpty(getUser.OpenId))
							 | 
						|||
| 
								 | 
							
								            {
							 | 
						|||
| 
								 | 
							
								                string miniprogram_state = ConfigurationManager.AppSettings["miniprogram_state"];
							 | 
						|||
| 
								 | 
							
								                if (string.IsNullOrEmpty(miniprogram_state))
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								                    miniprogram_state = "formal";
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								                string contenttype = "application/json;charset=utf-8";
							 | 
						|||
| 
								 | 
							
								                string url = $"https://api.weixin.qq.com/cgi-bin/message/subscribe/send?access_token={access_token}";
							 | 
						|||
| 
								 | 
							
								                var tempData = new
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								                    access_token,
							 | 
						|||
| 
								 | 
							
								                    touser = getUser.OpenId,
							 | 
						|||
| 
								 | 
							
								                    template_id = Const.WX_TemplateID,
							 | 
						|||
| 
								 | 
							
								                    page = "pages/index/main",
							 | 
						|||
| 
								 | 
							
								                    data = new
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        thing2 = new { value = thing2 },
							 | 
						|||
| 
								 | 
							
								                        name1 = new { value = name1 },
							 | 
						|||
| 
								 | 
							
								                        date3 = new { value = date3 }
							 | 
						|||
| 
								 | 
							
								                    },
							 | 
						|||
| 
								 | 
							
								                    miniprogram_state,
							 | 
						|||
| 
								 | 
							
								                    lang = "zh_CN",
							 | 
						|||
| 
								 | 
							
								                };
							 | 
						|||
| 
								 | 
							
								                string messages= APIGetHttpService.Http(url, "POST", contenttype, null, JsonConvert.SerializeObject(tempData));
							 | 
						|||
| 
								 | 
							
								                //// 记录
							 | 
						|||
| 
								 | 
							
								                SaveSysHttpLog(getUser.UserName, url, messages);
							 | 
						|||
| 
								 | 
							
								                return messages;
							 | 
						|||
| 
								 | 
							
								            }
							 | 
						|||
| 
								 | 
							
								            else
							 | 
						|||
| 
								 | 
							
								            {
							 | 
						|||
| 
								 | 
							
								                return "openId is null";
							 | 
						|||
| 
								 | 
							
								            }
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								        #endregion
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								        #region 获取OpenId消息
							 | 
						|||
| 
								 | 
							
								        /// <summary>
							 | 
						|||
| 
								 | 
							
								        /// 获取OpenId消息
							 | 
						|||
| 
								 | 
							
								        /// </summary>
							 | 
						|||
| 
								 | 
							
								        /// <param name="userId"></param>
							 | 
						|||
| 
								 | 
							
								        /// <param name="jsCode"></param>
							 | 
						|||
| 
								 | 
							
								        /// <returns></returns>
							 | 
						|||
| 
								 | 
							
								        public static string getUserOpenId(string userId, string jsCode,bool isRefresh = false)
							 | 
						|||
| 
								 | 
							
								        {
							 | 
						|||
| 
								 | 
							
								            string openId = string.Empty;
							 | 
						|||
| 
								 | 
							
								            string appid = Const.AppID_CWCEC;
							 | 
						|||
| 
								 | 
							
								            string secret = Const.AppSecret_CWCEC;
							 | 
						|||
| 
								 | 
							
								            //string appid = "wxb5f0e8051b7b9eee";
							 | 
						|||
| 
								 | 
							
								            //string secret = "626175f8860bf84beb4cf507b9445115";      
							 | 
						|||
| 
								 | 
							
								            using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString))
							 | 
						|||
| 
								 | 
							
								            {
							 | 
						|||
| 
								 | 
							
								                var getUser = db.Sys_User.FirstOrDefault(x => x.UserId == userId);
							 | 
						|||
| 
								 | 
							
								                if (getUser != null)
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								                    if (!string.IsNullOrEmpty(getUser.OpenId) && !isRefresh)
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        openId = getUser.OpenId;
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								                    else
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        string getUrl = "https://api.weixin.qq.com/sns/jscode2session?appid=" + appid + "&secret=" + secret + "&js_code=" + jsCode + "&grant_type=authorization_code";
							 | 
						|||
| 
								 | 
							
								                        var strJosn = APIGetHttpService.Http(getUrl);
							 | 
						|||
| 
								 | 
							
								                        if (!string.IsNullOrEmpty(strJosn))
							 | 
						|||
| 
								 | 
							
								                        {
							 | 
						|||
| 
								 | 
							
								                            JObject obj = JObject.Parse(strJosn);
							 | 
						|||
| 
								 | 
							
								                            if (obj["openid"] != null)
							 | 
						|||
| 
								 | 
							
								                            {
							 | 
						|||
| 
								 | 
							
								                                openId = obj["openid"].ToString();
							 | 
						|||
| 
								 | 
							
								                                getUser.OpenId = openId;
							 | 
						|||
| 
								 | 
							
								                                db.SubmitChanges();
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                                var getUsers = from x in db.Sys_User
							 | 
						|||
| 
								 | 
							
								                                               where x.UserId != getUser.UserId && x.OpenId == openId
							 | 
						|||
| 
								 | 
							
								                                               select x;
							 | 
						|||
| 
								 | 
							
								                                if (getUsers.Count() > 0)
							 | 
						|||
| 
								 | 
							
								                                {
							 | 
						|||
| 
								 | 
							
								                                    foreach (var item in getUsers)
							 | 
						|||
| 
								 | 
							
								                                    {
							 | 
						|||
| 
								 | 
							
								                                        item.OpenId = null;
							 | 
						|||
| 
								 | 
							
								                                        db.SubmitChanges();
							 | 
						|||
| 
								 | 
							
								                                    }
							 | 
						|||
| 
								 | 
							
								                                }
							 | 
						|||
| 
								 | 
							
								                            }
							 | 
						|||
| 
								 | 
							
								                        }
							 | 
						|||
| 
								 | 
							
								                        //// 记录
							 | 
						|||
| 
								 | 
							
								                        SaveSysHttpLog(getUser.UserName, getUrl, strJosn);
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								            }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								            return openId;
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								        #endregion
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								        #region 待办信息接收(不审核)保存方法
							 | 
						|||
| 
								 | 
							
								        /// <summary>
							 | 
						|||
| 
								 | 
							
								        /// 待办信息接收(不审核)保存方法
							 | 
						|||
| 
								 | 
							
								        /// </summary>
							 | 
						|||
| 
								 | 
							
								        /// <param name="flowReceiveItem"></param>
							 | 
						|||
| 
								 | 
							
								        /// <returns></returns>
							 | 
						|||
| 
								 | 
							
								        public static void SaveFlowReceiveItem(Model.FlowReceiveItem flowReceiveItem)
							 | 
						|||
| 
								 | 
							
								        {
							 | 
						|||
| 
								 | 
							
								            using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString))
							 | 
						|||
| 
								 | 
							
								            {
							 | 
						|||
| 
								 | 
							
								                #region 隐患整改单
							 | 
						|||
| 
								 | 
							
								                if (flowReceiveItem.MenuId == Const.ProjectRectifyNoticeMenuId)
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								                    var getRectifyNotices = db.Check_RectifyNotices.FirstOrDefault(x => x.RectifyNoticesId == flowReceiveItem.DataId);
							 | 
						|||
| 
								 | 
							
								                    if (getRectifyNotices != null)
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        if (!string.IsNullOrEmpty(getRectifyNotices.ProfessionalEngineerId) && getRectifyNotices.ProfessionalEngineerId.Contains(flowReceiveItem.OperaterId)) ////专业工程师
							 | 
						|||
| 
								 | 
							
								                        {
							 | 
						|||
| 
								 | 
							
								                            if (!getRectifyNotices.ProfessionalEngineerTime1.HasValue)
							 | 
						|||
| 
								 | 
							
								                            {
							 | 
						|||
| 
								 | 
							
								                                getRectifyNotices.ProfessionalEngineerTime1 = DateTime.Now;
							 | 
						|||
| 
								 | 
							
								                                getRectifyNotices.ProfessionalEngineerTime2 = null;
							 | 
						|||
| 
								 | 
							
								                            }
							 | 
						|||
| 
								 | 
							
								                            else
							 | 
						|||
| 
								 | 
							
								                            {
							 | 
						|||
| 
								 | 
							
								                                getRectifyNotices.ProfessionalEngineerTime2 = DateTime.Now;
							 | 
						|||
| 
								 | 
							
								                            }
							 | 
						|||
| 
								 | 
							
								                        }
							 | 
						|||
| 
								 | 
							
								                        else if (getRectifyNotices.ConstructionManagerId == flowReceiveItem.OperaterId) ////施工经理
							 | 
						|||
| 
								 | 
							
								                        {
							 | 
						|||
| 
								 | 
							
								                            if (!getRectifyNotices.ConstructionManagerTime1.HasValue)
							 | 
						|||
| 
								 | 
							
								                            {
							 | 
						|||
| 
								 | 
							
								                                getRectifyNotices.ConstructionManagerTime1 = DateTime.Now;
							 | 
						|||
| 
								 | 
							
								                                getRectifyNotices.ConstructionManagerTime2 = null;
							 | 
						|||
| 
								 | 
							
								                            }
							 | 
						|||
| 
								 | 
							
								                            else
							 | 
						|||
| 
								 | 
							
								                            {
							 | 
						|||
| 
								 | 
							
								                                getRectifyNotices.ConstructionManagerTime2 = DateTime.Now;
							 | 
						|||
| 
								 | 
							
								                            }
							 | 
						|||
| 
								 | 
							
								                        }
							 | 
						|||
| 
								 | 
							
								                        else if (getRectifyNotices.ProjectManagerId == flowReceiveItem.OperaterId) ////项目经理
							 | 
						|||
| 
								 | 
							
								                        {
							 | 
						|||
| 
								 | 
							
								                            if (!getRectifyNotices.ProjectManagerTime1.HasValue)
							 | 
						|||
| 
								 | 
							
								                            {
							 | 
						|||
| 
								 | 
							
								                                getRectifyNotices.ProjectManagerTime1 = DateTime.Now;
							 | 
						|||
| 
								 | 
							
								                                getRectifyNotices.ProjectManagerTime2 = null;
							 | 
						|||
| 
								 | 
							
								                            }
							 | 
						|||
| 
								 | 
							
								                            else
							 | 
						|||
| 
								 | 
							
								                            {
							 | 
						|||
| 
								 | 
							
								                                getRectifyNotices.ProjectManagerTime2 = DateTime.Now;
							 | 
						|||
| 
								 | 
							
								                            }
							 | 
						|||
| 
								 | 
							
								                        }
							 | 
						|||
| 
								 | 
							
								                        else if (getRectifyNotices.DutyPersonId == flowReceiveItem.OperaterId) //// 接收人
							 | 
						|||
| 
								 | 
							
								                        {
							 | 
						|||
| 
								 | 
							
								                            if (!getRectifyNotices.DutyPersonTime.HasValue)
							 | 
						|||
| 
								 | 
							
								                            {
							 | 
						|||
| 
								 | 
							
								                                getRectifyNotices.DutyPersonTime = DateTime.Now;                               
							 | 
						|||
| 
								 | 
							
								                            }
							 | 
						|||
| 
								 | 
							
								                        }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                        db.SubmitChanges();
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								                #endregion
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                #region 处罚通知单
							 | 
						|||
| 
								 | 
							
								                if (flowReceiveItem.MenuId == Const.ProjectPunishNoticeMenuId)
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								                    var getPunishNotice = db.Check_PunishNotice.FirstOrDefault(x => x.PunishNoticeId == flowReceiveItem.DataId);
							 | 
						|||
| 
								 | 
							
								                    if (getPunishNotice != null)
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        if (!string.IsNullOrEmpty(getPunishNotice.ProfessionalEngineerId) && getPunishNotice.ProfessionalEngineerId.Contains(flowReceiveItem.OperaterId)) ////总包专业工程师
							 | 
						|||
| 
								 | 
							
								                        {
							 | 
						|||
| 
								 | 
							
								                            getPunishNotice.ProfessionalEngineerTime = DateTime.Now;
							 | 
						|||
| 
								 | 
							
								                        }
							 | 
						|||
| 
								 | 
							
								                        else if (getPunishNotice.ConstructionManagerId == flowReceiveItem.OperaterId) ////总包施工经理
							 | 
						|||
| 
								 | 
							
								                        {
							 | 
						|||
| 
								 | 
							
								                            getPunishNotice.ConstructionManagerTime = DateTime.Now;
							 | 
						|||
| 
								 | 
							
								                        }
							 | 
						|||
| 
								 | 
							
								                        else if (getPunishNotice.UnitHeadManId == flowReceiveItem.OperaterId) ////相关施工分包单位
							 | 
						|||
| 
								 | 
							
								                        {
							 | 
						|||
| 
								 | 
							
								                            getPunishNotice.UnitHeadManTime = DateTime.Now;
							 | 
						|||
| 
								 | 
							
								                        }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                        db.SubmitChanges();
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								                #endregion
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                #region 暂停令
							 | 
						|||
| 
								 | 
							
								                if (flowReceiveItem.MenuId == Const.ProjectPauseNoticeMenuId)
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								                    var getPunishNotice = db.Check_PauseNotice.FirstOrDefault(x => x.PauseNoticeId == flowReceiveItem.DataId);
							 | 
						|||
| 
								 | 
							
								                    if (getPunishNotice != null)
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        if (!string.IsNullOrEmpty(getPunishNotice.ProfessionalEngineerId) && getPunishNotice.ProfessionalEngineerId.Contains(flowReceiveItem.OperaterId)) ////总包专业工程师
							 | 
						|||
| 
								 | 
							
								                        {
							 | 
						|||
| 
								 | 
							
								                            getPunishNotice.ProfessionalEngineerTime = DateTime.Now;
							 | 
						|||
| 
								 | 
							
								                        }
							 | 
						|||
| 
								 | 
							
								                        else if (getPunishNotice.ConstructionManagerId == flowReceiveItem.OperaterId) ////总包施工经理
							 | 
						|||
| 
								 | 
							
								                        {
							 | 
						|||
| 
								 | 
							
								                            getPunishNotice.ConstructionManagerTime = DateTime.Now;
							 | 
						|||
| 
								 | 
							
								                        }
							 | 
						|||
| 
								 | 
							
								                        else if (getPunishNotice.UnitHeadManId == flowReceiveItem.OperaterId) ////相关施工分包单位
							 | 
						|||
| 
								 | 
							
								                        {
							 | 
						|||
| 
								 | 
							
								                            getPunishNotice.UnitHeadManTime = DateTime.Now;
							 | 
						|||
| 
								 | 
							
								                        }
							 | 
						|||
| 
								 | 
							
								                        else if (getPunishNotice.SupervisorManId== flowReceiveItem.OperaterId) ////监理
							 | 
						|||
| 
								 | 
							
								                        {
							 | 
						|||
| 
								 | 
							
								                            getPunishNotice.UnitHeadManTime = DateTime.Now;
							 | 
						|||
| 
								 | 
							
								                        }
							 | 
						|||
| 
								 | 
							
								                        else if (getPunishNotice.OwnerId == flowReceiveItem.OperaterId) ////业主
							 | 
						|||
| 
								 | 
							
								                        {
							 | 
						|||
| 
								 | 
							
								                            getPunishNotice.UnitHeadManTime = DateTime.Now;
							 | 
						|||
| 
								 | 
							
								                        }
							 | 
						|||
| 
								 | 
							
								                        db.SubmitChanges();
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								                #endregion
							 | 
						|||
| 
								 | 
							
								            }
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								        #endregion
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								        /// <summary>
							 | 
						|||
| 
								 | 
							
								        /// 
							 | 
						|||
| 
								 | 
							
								        /// </summary>
							 | 
						|||
| 
								 | 
							
								        /// <param name="userName"></param>
							 | 
						|||
| 
								 | 
							
								        /// <param name="HttpUrl"></param>
							 | 
						|||
| 
								 | 
							
								        /// <param name="LogTxt"></param>
							 | 
						|||
| 
								 | 
							
								        public static void SaveSysHttpLog(string userName, string httpUrl, string logTxt)
							 | 
						|||
| 
								 | 
							
								        {
							 | 
						|||
| 
								 | 
							
								            using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString))
							 | 
						|||
| 
								 | 
							
								            {
							 | 
						|||
| 
								 | 
							
								                Model.Sys_HttpLog newLog = new Model.Sys_HttpLog()
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								                    HttpLogId = SQLHelper.GetNewID(),
							 | 
						|||
| 
								 | 
							
								                    LogTime = DateTime.Now,
							 | 
						|||
| 
								 | 
							
								                    UserName = userName,
							 | 
						|||
| 
								 | 
							
								                    HttpUrl = httpUrl,
							 | 
						|||
| 
								 | 
							
								                    LogTxt = logTxt,
							 | 
						|||
| 
								 | 
							
								                };
							 | 
						|||
| 
								 | 
							
								                db.Sys_HttpLog.InsertOnSubmit(newLog);
							 | 
						|||
| 
								 | 
							
								                db.SubmitChanges();
							 | 
						|||
| 
								 | 
							
								            }
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								        /// 获中的照片拍摄日期
							 | 
						|||
| 
								 | 
							
								        /// </summary>
							 | 
						|||
| 
								 | 
							
								        /// <param name="fileName">文件名</param>
							 | 
						|||
| 
								 | 
							
								        /// <returns>拍摄日期</returns>
							 | 
						|||
| 
								 | 
							
								        public static string GetTakePicDate(string fileName)
							 | 
						|||
| 
								 | 
							
								        {
							 | 
						|||
| 
								 | 
							
								            Encoding ascii = Encoding.ASCII;
							 | 
						|||
| 
								 | 
							
								            string picDate;
							 | 
						|||
| 
								 | 
							
								            FileStream stream = new FileStream(fileName, FileMode.Open, FileAccess.Read);
							 | 
						|||
| 
								 | 
							
								            Image image = Image.FromStream(stream, true, false);
							 | 
						|||
| 
								 | 
							
								            foreach (PropertyItem p in image.PropertyItems)
							 | 
						|||
| 
								 | 
							
								            {
							 | 
						|||
| 
								 | 
							
								                //获取拍摄日期时间
							 | 
						|||
| 
								 | 
							
								                if (p.Id == 0x9003) // 0x0132 最后更新时间
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								                    stream.Close();
							 | 
						|||
| 
								 | 
							
								                    picDate = ascii.GetString(p.Value);
							 | 
						|||
| 
								 | 
							
								                    if ((!"".Equals(picDate)) && picDate.Length >= 10)
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        // 拍摄日期
							 | 
						|||
| 
								 | 
							
								                        picDate = picDate.Substring(0, 10);
							 | 
						|||
| 
								 | 
							
								                        picDate = picDate.Replace(":", "-");
							 | 
						|||
| 
								 | 
							
								                        return picDate;
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								            }
							 | 
						|||
| 
								 | 
							
								            stream.Close();
							 | 
						|||
| 
								 | 
							
								            return "";
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								    }
							 | 
						|||
| 
								 | 
							
								}
							 |