using System; using System.Linq; using System.Web.Mvc; using DSWeb.MvcShipping.DAL.MsCompanysDAL; using DSWeb.MvcShipping.Models.MsCompanys; using DSWeb.MvcShipping.Helper; using DSWeb.MvcShipping.Comm.Cookie; using HcUtility.Comm; using HcUtility.Core; using System.Collections.Generic; using DSWeb.MvcShipping.DAL.MsBaseInfoDAL; using DSWeb.EntityDA; using DSWeb.Models; using DSWeb.Attributes; using DSWeb.SoftMng.DBUtility; using DSWeb.SoftMng.BLL; using DSWeb.SoftMng.Common; using DSWeb.SoftMng.Model; using DSWeb.Areas.MvcShipping.Comm; using System.Web.Configuration; using System.IO; using System.Text; namespace DSWeb.MvcShipping.Controllers { [JsonRequestBehavior] public class MsCompanysController : Controller { public ActionResult Index() { return View(); } public ActionResult Edit() { return View(); } public ActionResult MsCompanysAccountIndex() { return View(); } public ActionResult MsCompanysDeptIndex() { return View(); } public ContentResult GetDataList(int start, int limit, string sort, string condition) { string strPath = "../../images/logo/noImage.gif"; string strPhotoPath = Server.MapPath(strPath); // var dataList = MsCompanysDAL.GetDataList(strPath, strPhotoPath, condition, Convert.ToString(Session["USERID"]), Convert.ToString(Session["SHOWNAME"]), Convert.ToString(Session["COMPANYID"]), sort); var list = dataList.Skip(start).Take(limit); var json = JsonConvert.Serialize(new { Success = true, Message = "查询成功", totalCount = dataList.Count, data = list.ToList() }); return new ContentResult() { Content = json }; } public ContentResult GetNoPicDataList(int start, int limit, string sort, string condition) { // var dataList = MsCompanysDAL.GetNoPicDataList(condition); var list = dataList.ToList(); var json = JsonConvert.Serialize(new { Success = true, Message = "查询成功", totalCount = dataList.Count, data = list.ToList() }); return new ContentResult() { Content = json }; } public ContentResult GetDataListStr(string sort, string condition) { var dataListStr = MsCompanysDAL.GetDataListStr(condition, Convert.ToString(Session["USERID"]), Convert.ToString(Session["SHOWNAME"]), Convert.ToString(Session["COMPANYID"]), sort); var json = JsonConvert.Serialize(new { Success = true, Message = "查询成功", data = dataListStr }); return new ContentResult() { Content = json }; } public ContentResult GetData(string handle, string condition) { string strPath = "../../images/logo/noImage.gif"; string strPhotoPath = Server.MapPath(strPath); // MsCompanysEntity head = null; head = MsCompanysDAL.GetData(strPath, strPhotoPath, condition); var json = JsonConvert.Serialize( new { Success = true, Message = "查询成功", data = head }); return new ContentResult() { Content = json }; } public ContentResult GetNoPicData(string condition) { // MsCompanysEntity head = null; head = MsCompanysDAL.GetNoPicData(condition); var json = JsonConvert.Serialize( new { Success = true, Message = "查询成功", data = head }); return new ContentResult() { Content = json }; } public ContentResult SaveEtdCloseDay(string companyid,string CLOSEETDDAY) { T_ALL_DA T_ALL_DA = new EntityDA.T_ALL_DA(); if (CLOSEETDDAY != "") { var blUpSQL = " update company set CLOSEETDDAY='"+CLOSEETDDAY+"' WHERE GID='"+companyid+"' "; bool bl = T_ALL_DA.GetExecuteSqlCommand(blUpSQL); } else { var blUpSQL = " update company set CLOSEETDDAY=NULL WHERE GID='" + companyid + "' "; bool bl = T_ALL_DA.GetExecuteSqlCommand(blUpSQL); } var json = JsonConvert.Serialize( new { Success = true, Message = "设置成功"}); return new ContentResult() { Content = json }; } [HttpPost] public ContentResult Save(string opstatus, string data) { if (Convert.ToString(Session["COMPANYID"]).ToString().Trim() == "" || Convert.ToString(Session["USERID"]).ToString().Trim() == "" || Convert.ToString(Session["CODENAME"]).ToString().Trim() == "" || Convert.ToString(Session["SHOWNAME"]).ToString().Trim() == "" || Convert.ToString(Session["DEPTNAME"]).ToString().Trim() == "") { var jsonRespose2 = new JsonResponse { Success = false, Message = "登录超时,请退出系统重新登录!" }; return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose2) }; } // var headData = JsonConvert.Deserialize(data); var isPost = true; var errorstr = ""; // #region 默认赋值 //headData.LOGO 徽标 Image 16 headData.ISDELETED = false; //headData.ISDISABLE = false;//是否被禁用 headData.PARENTID = ""; headData.GPSUser = ""; headData.GPSPassWord = ""; // headData.CREATEUSER = Convert.ToString(Session["USERID"]);//创建人 headData.CREATETIME = DateTime.Now;//创建时间 headData.MODIFIEDUSER = Convert.ToString(Session["USERID"]);//最后一次操作人 headData.MODIFIEDTIME = DateTime.Now;//最后一次操作时间 #endregion if (opstatus == "add") { headData.GID = "Com" + Guid.NewGuid().ToString().Replace("-", "");//惟一编号 varchar(36) headData.DbOperationType = DbOperationType.DbotIns; } else if (opstatus == "edit") { headData.DbOperationType = DbOperationType.DbotUpd; headData.ModelUIStatus = "E"; } else { headData.DbOperationType = DbOperationType.DbotDel; } #region LOGO_微标 var jsonRespose1 = new JsonResponse { Success = false, Message = "" }; headData.LOGO = null; if (Request.Files.Count > 0) { var UpFile = Request.Files["upload"]; if (UpFile != null) { var FileLength = UpFile.ContentLength;//获取上传文件的字节大小 if (FileLength > 0) { Byte[] FileByte = new Byte[FileLength]; //图象文件储存到数组 Stream ObjectStream = UpFile.InputStream;//建立数据流对像,获取一个 Stream 对象,该对象指向一个上载文件,以准备读取该文件的内容。 ObjectStream.Read(FileByte, 0, FileLength); //读取图象文件数据 headData.LOGO = FileByte; } } } #endregion if (isPost) { string strPath = "../../images/logo/noImage.gif"; string strPhotoPath = Server.MapPath(strPath); var modb = new ModelObjectDB(); //DBResult result = modb.Save(headData); DBResult result = MsCompanysDAL.Save(headData); var jsonRespose = new JsonResponse { Success = result.Success, Message = result.Message, Data = MsCompanysDAL.GetData(strPath, strPhotoPath, "GID='" + headData.GID + "'") }; return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) }; } else { var jsonRespose = new JsonResponse { Success = false, Message =errorstr }; return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) }; } } #region 删除 public ContentResult Delete(string data) { if (Convert.ToString(Session["COMPANYID"]).ToString().Trim() == "" || Convert.ToString(Session["USERID"]).ToString().Trim() == "" || Convert.ToString(Session["CODENAME"]).ToString().Trim() == "" || Convert.ToString(Session["SHOWNAME"]).ToString().Trim() == "" || Convert.ToString(Session["DEPTNAME"]).ToString().Trim() == "") { var jsonRespose2 = new JsonResponse { Success = false, Message = "登录超时,请退出系统重新登录!" }; return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose2) }; } // var head = JsonConvert.Deserialize(data); var modb = new ModelObjectDB(); //DBResult result = modb.Delete(head); DBResult result = MsCompanysDAL.Delete(head); if (result.Success == true) { DBResult result2 = MsCompanysDAL.setLog(head, Convert.ToString(Session["USERID"])); } var jsonRespose = new JsonResponse { Success = result.Success, Message = result.Message }; return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) }; } #endregion #region 注册 public ContentResult RefReg() { if (Convert.ToString(Session["COMPANYID"]).ToString().Trim() == "" || Convert.ToString(Session["USERID"]).ToString().Trim() == "" || Convert.ToString(Session["CODENAME"]).ToString().Trim() == "" || Convert.ToString(Session["SHOWNAME"]).ToString().Trim() == "" || Convert.ToString(Session["DEPTNAME"]).ToString().Trim() == "") { var jsonRespose2 = new JsonResponse { Success = false, Message = "登录超时,请退出系统重新登录!" }; return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose2) }; } sys_secCompanyBLL cbll = new sys_secCompanyBLL(); sys_secCompany cmodel = cbll.GetModelList("").FirstOrDefault(); //获取客户端实例 DBResult result = new DBResult(); try { //同步公司配置表 var smodel = getServerCompanyREG(cmodel.GID); //服务端实例 if (smodel.OperTime > cmodel.OperTime) //服务端最后更新时间大于客户端更新时间则更新 cbll.Update(smodel); //同步模块配置表(本公司) sys_secModuleBLL mbll = new sys_secModuleBLL(); var list1 = getServerModelREG(cmodel.GID); //获取服务端数据 foreach (var item in list1) { var cmodel1 = mbll.GetModel(item.GID); if (cmodel1 != null) { if (item.OperTime > cmodel1.OperTime) //服务端最后更新时间大于客户端更新时间则更新 mbll.Update(item); } else mbll.Add(item); } result.Success = true; result.Message = "刷新成功!"; } catch (Exception ex) { result.Success = false; result.Message = "刷新过程出错:"+ex.Message; // Page.ClientScript.RegisterStartupScript(this.GetType(), "key0", //""); // return; //使用内网无法连接服务器地址会出现异常 //do something... } var jsonRespose = new JsonResponse { Success = result.Success, Message = result.Message }; return new ContentResult() { Content = JsonConvert.Serialize(jsonRespose) }; } protected sys_secCompany getServerCompanyREG(string GID) { try { var IP = getConfigIP(); var dic = new Dictionary(); dic.Add("GID", SoftMng.Common.Common.string_Encrypt(GID, "")); var rtn = WebRequestHelper.DoPost(IP + "GetSecCompany", dic, 5000); DBResult r = Newtonsoft.Json.JsonConvert.DeserializeObject(rtn); if (r.Success) { sys_secCompany companyREG = Newtonsoft.Json.JsonConvert.DeserializeObject(r.Data.ToString()); return companyREG; } else { return new sys_secCompany(); } //sys_secCompany companyREG = Newtonsoft.Json.JsonConvert.DeserializeObject(rtn); } catch (Exception e) { //var r = new sys_secCompany(); //r.CompanySecretKey = e.Message; //return new sys_secCompany(); try { sys_secCompanyBLL cbll = new sys_secCompanyBLL(); StringBuilder where = new StringBuilder(); where.Append("select * from sys_secCompany where GID ='" + GID + "'"); var ds = DbHelperServerSQL.Query(where.ToString()); var smodel = cbll.DataRowToModel(ds.Tables[0].Rows[0]); //服务端实例 return smodel; } catch { return new sys_secCompany(); } } } protected List getServerModelREG(string GID) { try { var IP = getConfigIP(); var dic = new Dictionary(); dic.Add("GID", SoftMng.Common.Common.string_Encrypt(GID, "")); var rtn = WebRequestHelper.DoPost(IP + "GetSecModel", dic, 5000); DBResult r = Newtonsoft.Json.JsonConvert.DeserializeObject(rtn); if (r.Success) { List ModelREGList = Newtonsoft.Json.JsonConvert.DeserializeObject>(r.Data.ToString()); return ModelREGList; } else { return new List(); } //sys_secCompany companyREG = Newtonsoft.Json.JsonConvert.DeserializeObject(rtn); } catch (Exception e) { try { sys_secModuleBLL mbll = new sys_secModuleBLL(); StringBuilder where = new StringBuilder(); where.Append("select * from sys_secModule where PID ='" + GID + "'"); var ds = DbHelperServerSQL.Query(where.ToString()); if (ds.Tables.Count > 0) { var modelList = mbll.DataTableToList(ds.Tables[0]); //服务端实例 return modelList; } else { return new List(); } } catch { return new List(); } //var r = new sys_secCompany(); //r.CompanySecretKey = e.Message; //return new List(); } } private string getConfigIP() { string strConn = ""; try { strConn = WebConfigurationManager.AppSettings["RegServer"].ToString(); } catch (Exception e) { strConn = ""; } var IP = ""; if (string.IsNullOrWhiteSpace(strConn)) { try { strConn = System.Configuration.ConfigurationManager.ConnectionStrings["DongShengDBServer"].ConnectionString; var strlist = strConn.Split(';'); var serverStr = strlist[0]; int startIndex = serverStr.IndexOf("=");//开始位置 IP = serverStr.Substring(startIndex + 1, serverStr.Length - startIndex - 1);// if (IP.IndexOf(":") > 0) IP = IP.Substring(0, IP.IndexOf(":")); } catch (Exception e) { } if (string.IsNullOrEmpty(IP)) IP = "47.104.102.13"; strConn = "http://" + IP + ":8081"; } var result = strConn + "/Dispatch/RegPort/"; return result; } #endregion // } }