/// <summary> /// 图片详情接口 /// </summary> /// <returns></returns> public void GetItem(HttpContext context) { int pid = GetInt("pid"); SourceMaterial sm = SourceMaterialHelper.GetItem(pid); if (sm == null) { ReturnErrorMsg("图片墙不存在id:" + pid); return; } var url = Utility.GetSizePicUrl(sm.Url, 500, 0, context); var data = new { pid = sm.Id, title = sm.Title, img = url, description = sm.Description, views = sm.Views, commentnum = sm.Commentnum, height = Utility.GetImgHeight(url, context) }; sm.Views += 1; SourceMaterialHelper.Update(sm); JsonTransfer jt = new JsonTransfer(); jt.AddSuccessParam(); jt.Add("data", data); Response.Write(DesEncrypt(jt).ToLower()); Response.End(); }
public static void Update(SourceMaterial sm) { string commandText = @"UPDATE material SET Title = ?Title, Url = ?Url, Description = ?Description, Views = ?Views, Commentnum = ?Commentnum, SellerId = ?SellerId, CreateTime = ?CreateTime, ImageType = ?ImageType WHERE Id = ?Id"; List <MySqlParameter> parameters = new List <MySqlParameter>(); parameters.Add(new MySqlParameter("?Id", sm.Id)); parameters.Add(new MySqlParameter("?Title", sm.Title)); parameters.Add(new MySqlParameter("?Url", sm.Url)); parameters.Add(new MySqlParameter("?Description", sm.Description)); parameters.Add(new MySqlParameter("?Views", sm.Views)); parameters.Add(new MySqlParameter("?Commentnum", sm.Commentnum)); parameters.Add(new MySqlParameter("?SellerId", sm.SellerId)); parameters.Add(new MySqlParameter("?CreateTime", sm.CreateTime)); parameters.Add(new MySqlParameter("?ImageType", sm.ImageType)); MySqlHelper.ExecuteNonQuery(GlobalConfig.DbConn, CommandType.Text, commandText, parameters.ToArray()); }
public static SourceMaterial GetItem(int id) { SourceMaterial sm = null; string commandText = @"select * from material where id = ?id"; List <MySqlParameter> parameters = new List <MySqlParameter>(); parameters.Add(new MySqlParameter("?id", id)); try { using (var conn = Utility.ObtainConn(Utility._gameDbConn)) { //MySqlDataReader reader = MySqlHelper.ExecuteReader(GlobalConfig.DbConn, CommandType.Text, commandText, parameters.ToArray()); MySqlDataReader reader = MySqlHelper.ExecuteReader(conn, CommandType.Text, commandText, parameters.ToArray()); while (reader.Read()) { sm = new SourceMaterial(); sm.Id = reader.GetInt32(0); sm.Url = reader["Url"].ToString(); sm.Title = reader["Title"].ToString(); sm.Description = reader["Description"].ToString(); sm.Views = (int)reader["Views"]; sm.Commentnum = (int)reader["Commentnum"]; sm.SellerId = (int)reader["SellerId"]; sm.CreateTime = (DateTime)reader["CreateTime"]; sm.ImageType = (UploadType)reader["ImageType"]; } } } catch (System.Exception ex) { throw; } return(sm); }
public static PagResults <SourceMaterial> GetPaging(int pageIndex, int pageSize, int sellerId) { var results = new PagResults <SourceMaterial>(); results.Results = new List <SourceMaterial>(); int totalnum = 0; string commandText = @"select * from material where sellerId = ?sellerId order by CreateTime desc LIMIT ?index,?size"; List <MySqlParameter> parameters = new List <MySqlParameter>(); parameters.Add(new MySqlParameter("?sellerId", sellerId)); parameters.Add(new MySqlParameter("?index", pageIndex)); parameters.Add(new MySqlParameter("?size", pageSize)); try { using (var conn = Utility.ObtainConn(Utility._gameDbConn)) { MySqlDataReader reader = MySqlHelper.ExecuteReader(conn, CommandType.Text, commandText, parameters.ToArray()); while (reader.Read()) { SourceMaterial sm = new SourceMaterial(); sm.Id = reader.GetInt32(0); sm.Url = reader["Url"].ToString(); sm.Title = reader["Title"].ToString(); sm.Description = reader["Description"].ToString(); sm.Views = (int)reader["Views"]; sm.Commentnum = (int)reader["Commentnum"]; sm.SellerId = (int)reader["SellerId"]; sm.CreateTime = (DateTime)reader["CreateTime"]; sm.ImageType = (UploadType)reader["ImageType"]; results.Results.Add(sm); } //一个函数有两次连接数据库 先把连接断开 然后重连 conn.Close(); conn.Dispose(); conn.Open(); commandText = @"select count(*) from material where sellerId=?sellerId"; parameters.Clear(); parameters.Add(new MySqlParameter("?sellerId", sellerId)); reader = MySqlHelper.ExecuteReader(conn, CommandType.Text, commandText, parameters.ToArray()); if (reader.HasRows) { if (reader.Read()) { results.TotalCount = reader.GetInt32(0); } } } } catch (System.Exception ex) { throw; } return(results); }
public void Delete(SourceMaterial sm) { //string commandText = @"Delete material WHERE Id = ?Id"; //List<MySqlParameter> parameters = new List<MySqlParameter>(); //parameters.Add(new MySqlParameter("?Id", sm.Id)); //MySqlHelper.ExecuteNonQuery(GlobalConfig.DbConn, CommandType.Text, commandText, parameters.ToArray()); throw new NotImplementedException(); }
/// <summary> /// 图片评论 /// </summary> /// <returns></returns> public void ImgComment() { int userId = GetInt("uid"); int imgId = GetInt("pid"); string msg = GetString("message"); var user = AccountHelper.GetUser(userId); SourceMaterial sm = SourceMaterialHelper.GetItem(imgId); Comment c = new Comment(); c.SellerId = sm.SellerId; c.TypeId = sm.Id; c.UserId = userId; c.Content = msg; c.Type = CommentType.Img; //冗余两个字段 c.Img = sm.Url; c.Title = sm.Title; try { CommentHelper.Create(c); sm.Commentnum += 1; SourceMaterialHelper.Update(sm); } catch { ReturnErrorMsg("fail"); throw; } ExtcreditLog log = new ExtcreditLog(); if (!ExtcreditLogHelper.JudgeExtcreditGet(ExtcreditSourceType.CommentImg, imgId, userId)) { //积分获得 log.UserId = userId; log.SellerId = user.SellerId; log.SourceId = imgId; var setting = SystemHelper.GetMerchantExtend(user.SellerId); log.Extcredit = setting != null ? setting.CommentIntegral : 0; log.Type = ExtcreditSourceType.CommentImg; log.CreateTime = DateTime.Now; ExtcreditLogHelper.AddExtcreditLog(log); user.Integral += log.Extcredit; AccountHelper.SaveAccount(user); } //ReturnCorrectMsg("评论成功"); JsonTransfer jt = new JsonTransfer(); jt.Add("data", new IntegralData(log.Extcredit)); jt.AddSuccessParam(); Response.Write(DesEncrypt(jt).ToLower()); Response.End(); }
public static int Create(SourceMaterial sm) { string connectionString = GlobalConfig.DbConn; string commandText = @"INSERT INTO material ( Title, Url, Description, Views, Commentnum, SellerId, CreateTime, ImageType ) VALUES ( ?Title, ?Url, ?Description, ?Views, ?Commentnum, ?SellerId, ?CreateTime, ?ImageType )" ; List <MySqlParameter> parameters = new List <MySqlParameter>(); parameters.Add(new MySqlParameter("?Title", sm.Title)); parameters.Add(new MySqlParameter("?Url", sm.Url)); parameters.Add(new MySqlParameter("?Description", sm.Description)); parameters.Add(new MySqlParameter("?Views", sm.Views)); parameters.Add(new MySqlParameter("?Commentnum", sm.Commentnum)); parameters.Add(new MySqlParameter("?SellerId", sm.SellerId)); parameters.Add(new MySqlParameter("?CreateTime", sm.CreateTime)); parameters.Add(new MySqlParameter("?ImageType", sm.ImageType)); using (var conn = Utility.ObtainConn(Utility._gameDbConn)) { MySqlHelper.ExecuteNonQuery(conn, CommandType.Text, commandText, parameters.ToArray()); var id = 0; commandText = @"select LAST_INSERT_ID();"; var reader = MySqlHelper.ExecuteReader(conn, CommandType.Text, commandText); if (reader.HasRows) { if (reader.Read()) { id = reader.GetInt32(0); } } return(id); } }
private void beforeSaveSourceMaterial(EntityInfo entityInfo) { if (entityInfo.EntityState == EntityState.Added) { SourceMaterial sourceMaterial = (SourceMaterial)entityInfo.Entity; if (string.IsNullOrEmpty(sourceMaterial.UploadedBy)) { sourceMaterial.UploadedBy = Thread.CurrentPrincipal.Identity.Name; } } }
/// <summary> /// 图片评论列表 /// </summary> /// <returns></returns> public void ImgCommentList(HttpContext context) { int pid = GetInt("pid"); int index = GetInt("start"); int size = GetInt("limit"); if (pid == 0) { ReturnErrorMsg("请传入正确的pid"); return; } SourceMaterial sm = SourceMaterialHelper.GetItem(pid); var cms = CommentHelper.GetPagings(sm.SellerId, CommentType.Img, pid, index * size, size, "order by CreateTime desc"); var data = new CommentsForApis(); data.Commentnum = cms.TotalCount; JsonTransfer jt = new JsonTransfer(); if (cms.Results.Count < 1) { jt.AddSuccessParam(); jt.Add("data", data); Response.Write(DesEncrypt(jt).ToLower()); Response.End(); return; } var users = AccountHelper.GetUserList(cms.Results.Select(c => c.UserId).ToList()); foreach (var cm in cms.Results) { var user = users.FirstOrDefault(u => u.Id == cm.UserId); if (user == null) { throw new ArgumentNullException(string.Format("userId:{0}", cm.UserId)); } var result = new ComentsForApi { Avatar = Utility.GetSizePicUrl(user.Avatar, 100, 100, context), UserName = user.UserName, Sex = (int)user.Sex, Dateline = cm.CreateTime.GetUnixTime(), Message = cm.Content }; data.Comments.Add(result); } jt.AddSuccessParam(); jt.Add("data", data); Response.Write(DesEncrypt(jt).ToLower()); Response.End(); }
public Main() { InitializeComponent(); dgProductGrid.AutoGenerateColumns = false; dgSubAssemblies.AutoGenerateColumns = false; ctx = new ProductionContext(); _unitsService = new ProductService(ctx); _jobService = new JobService(ctx); dgProductGrid.DataSource = bsProducts; dgSubAssemblies.DataSource = bsSubassemlies; // ----------------Wire Events------------------ this.Activated += Main_Activated; bsProducts.AddingNew += BsProducts_AddingNew; bsProducts.ListChanged += BsProducts_ListChanged; bsSubassemlies.AddingNew += BsSubassemlies_AddingNew; if (Knoodle.Properties.Settings.Default.LastSelectedJob != default) { _selectedJob = _jobService.GetDeepJob(Knoodle.Properties.Settings.Default.LastSelectedJob); LoadProducts(_selectedJob.JobID); } partsService = new PartsService(); partsService.LoadParts(); foreach (var p in partsService.Parts) { SourceMaterial mat = new SourceMaterial() { ItemID = p.Key }; mat.ItemID = p.Key; mat.MarkUp = p.Value.MarkUp.GetValueOrDefault(); mat.MaterialDescription = p.Value.ItemDescription; mat.MaterialName = p.Value.ItemName; mat.SupplierID = p.Value.SupplierID.GetValueOrDefault(); mat.UOM = p.Value.UID.GetValueOrDefault(); mat.Waste = p.Value.Waste.GetValueOrDefault(); mat.Weight = p.Value.Weight.GetValueOrDefault(); PartDictionary.PartSource.Add(mat.ItemID, mat); } int k = PartDictionary.PartSource.Count(); this.toolStripStatusLabel1.Text = String.Format("Parts Loaded : {0}", k.ToString()); }
private void Add() { var sm = new SourceMaterial(); sm.SellerId = GetInt("sellerid"); sm.Title = GetString("title"); sm.Url = GetString("thumbnail"); var text = GetString("text"); //sm.Summary = text.Length > 20 ? text.Substring(0, 20) : text; sm.Description = GetString("content"); sm.CreateTime = DateTime.Now; sm.ImageType = UploadType.Img; SourceMaterialHelper.Create(sm); }
/// <summary> /// 图片详情接口 /// </summary> /// <returns></returns> public void GetItem() { int pid = GetInt("pid"); SourceMaterial data = SourceMaterialHelper.GetItem(pid); if (data == null) { ReturnErrorMsg("图片墙不存在pid:" + pid); return; } JsonTransfer jt = new JsonTransfer(); jt.AddSuccessParam(); jt.Add("data", data); Response.Write(DesEncrypt(jt).ToLower()); Response.End(); }
public void Update(SourceMaterial sm) { // string commandText = @"UPDATE material SET // Name = ?Name, // Address = ?Address, // Remark = ?Remark // WHERE // Id = ?Id"; // List<MySqlParameter> parameters = new List<MySqlParameter>(); // parameters.Add(new MySqlParameter("?Id", sm.Id)); // parameters.Add(new MySqlParameter("?Name", sm.Name)); // parameters.Add(new MySqlParameter("?Address", sm.Address)); // parameters.Add(new MySqlParameter("?Remark", sm.Remark)); // MySqlHelper.ExecuteNonQuery(GlobalConfig.DbConn, CommandType.Text, commandText, parameters.ToArray()); throw new NotImplementedException(); }
public static IList <SourceMaterial> GetList(int sellerId, int pageIndex, int pageSize) { var results = new List <SourceMaterial>(); int skipnum = pageSize * pageIndex; int totalnum = 0; string commandText = @"select * from material where sellerId = ?sellerId LIMIT ?index,?size"; List <MySqlParameter> parameters = new List <MySqlParameter>(); parameters.Add(new MySqlParameter("?sellerId", sellerId)); parameters.Add(new MySqlParameter("?index", pageIndex)); parameters.Add(new MySqlParameter("?size", pageSize)); try { using (var conn = Utility.ObtainConn(Utility._gameDbConn)) { MySqlDataReader reader = MySqlHelper.ExecuteReader(conn, CommandType.Text, commandText, parameters.ToArray()); while (reader.Read()) { SourceMaterial sm = new SourceMaterial(); sm.Id = reader.GetInt32(0); sm.Url = reader["Url"].ToString(); sm.Title = reader["Title"].ToString(); sm.Description = reader["Description"].ToString(); sm.Views = (int)reader["Views"]; sm.Commentnum = (int)reader["Commentnum"]; sm.SellerId = (int)reader["SellerId"]; sm.CreateTime = (DateTime)reader["CreateTime"]; sm.ImageType = (UploadType)reader["ImageType"]; results.Add(sm); } } } catch (System.Exception ex) { throw; } return(results); }
/// <summary> /// /// </summary> /// <param name="start"></param> /// <param name="limit"></param> /// <param name="wheresql"></param> /// <param name="ordersql"></param> /// <returns></returns> public static IList <SourceMaterial> GetList(int start, int limit, string wheresql = "", string ordersql = "") { var results = new List <SourceMaterial>(); string limitsql = limit == 0 ? string.Empty : " LIMIT ?start,?limit "; string commandText = @"select * from material " + wheresql + ordersql + limitsql; List <MySqlParameter> parameters = new List <MySqlParameter>(); parameters.Add(new MySqlParameter("?start", start)); parameters.Add(new MySqlParameter("?limit", limit)); try { using (var conn = Utility.ObtainConn(Utility._gameDbConn)) { MySqlDataReader reader = MySqlHelper.ExecuteReader(conn, CommandType.Text, commandText, parameters.ToArray()); while (reader.Read()) { SourceMaterial sm = new SourceMaterial(); sm.Id = reader.GetInt32(0); sm.Url = reader["Url"].ToString(); sm.Title = reader["Title"].ToString(); sm.Description = reader["Description"].ToString(); sm.Views = (int)reader["Views"]; sm.Commentnum = (int)reader["Commentnum"]; sm.SellerId = (int)reader["SellerId"]; sm.CreateTime = (DateTime)reader["CreateTime"]; sm.ImageType = (UploadType)reader["ImageType"]; results.Add(sm); } } } catch (System.Exception ex) { throw; } return(results); }
public async Task <HttpResponseMessage> DownloadJobTranslation(Guid id, bool corver) { this.Logger.Debug("Downloading:{JobId}", id); //id=jobid SourceMaterial mat = this._session.Query <Job>().Where(x => x.Id == id).Select(x => x.SourceMaterial).FirstOrDefault(); if (mat != null && mat.IsPrivate && mat.UploadedBy != this.User.Identity.Name) { return(this.Request.CreateErrorResponse(HttpStatusCode.OK, string.Format("File has been uploaded by a different user and marked as private", id))); } string endpoint = string.Format("{0}/getjobdelivery.ashx?jobId={1}&corver={2}", ConfigurationManager.AppSettings["FileManagementService"], id, corver); using (var handler = new HttpClientHandler() { AutomaticDecompression = DecompressionMethods.GZip | DecompressionMethods.Deflate, Credentials = new System.Net.NetworkCredential(_ecdtTechnicalUserLogin, _ecdtTechnicalUserPassword) }) using (var client = new HttpClient(handler)) { var file = await client.GetAsync(endpoint); if (file.IsSuccessStatusCode) { Stream s = await file.Content.ReadAsStreamAsync(); HttpResponseMessage result = new HttpResponseMessage(HttpStatusCode.OK); result.Content = new StreamContent(s); result.Content.Headers.ContentType = file.Content.Headers.ContentType; result.Content.Headers.ContentDisposition = file.Content.Headers.ContentDisposition; result.Content.Headers.ContentLength = file.Content.Headers.ContentLength; return(result); } } return(this.Request.CreateErrorResponse(HttpStatusCode.NotFound, string.Format("File with id {0} not found", id))); }
public override void ProcessRequest(HttpContext context) { RoleType = RoleType.ThirdUser; //需商家管理权限 UploadType imgType = (UploadType)Convert.ToInt32(context.Request.QueryString["type"]); var qsellerId = context.Request.QueryString["sellerid"]; var sellerId = 0; if (!string.IsNullOrEmpty(qsellerId)) { sellerId = Convert.ToInt32(qsellerId); } base.ProcessRequest(HttpContext.Current); //String aspxUrl = context.Request.Path.Substring(0, context.Request.Path.LastIndexOf("/") + 1); var userFileName = CurrentUser.Id.ToString(); var isManager = 0; if (CurrentUser.RoleType < RoleType.Merchant) { userFileName = sellerId.ToString(); if (sellerId == 0 || sellerId == CurrentUser.Id) { userFileName = "admin"; isManager = 1; } } // isManager = 1; //if (isManager == 1) //{ // //管理员上传的图片 统一到一个目录 // userFileName = "admin"; //} //文件保存目录路径 String savePath = "../../File/" + userFileName + "/";// "../attached/"; UploadType type = (UploadType)Convert.ToInt32(context.Request.QueryString["type"]); //文件保存目录URL String saveUrl = Utility._domainurl + "/File/" + userFileName + "/";; // "../attached/"; //定义允许上传的文件扩展名 Hashtable extTable = new Hashtable(); if (type == UploadType.MerchantLoginAd) { extTable.Add("image", "png"); } else { extTable.Add("image", "gif,jpg,jpeg,png,bmp"); extTable.Add("flash", "swf,flv"); extTable.Add("media", "swf,flv,mp3,wav,wma,wmv,mid,avi,mpg,asf,rm,rmvb"); extTable.Add("file", "doc,docx,xls,xlsx,ppt,htm,html,txt,zip,rar,gz,bz2,apk,ipa"); } //最大文件大小 int maxSize = 1073741824; HttpPostedFile imgFile = context.Request.Files["imgFile"]; if (imgFile == null) { showError("请选择文件。"); } String dirPath = context.Server.MapPath(savePath); if (!Directory.Exists(dirPath)) { //showError("上传目录不存在。"); Directory.CreateDirectory(dirPath); } String dirName = context.Request.QueryString["dir"]; //if (String.IsNullOrEmpty(dirName)) //{ // dirName = "image"; //} if (!extTable.ContainsKey(dirName)) { showError("目录名不正确。"); } String fileName = imgFile.FileName; String fileExt = Path.GetExtension(fileName).ToLower(); if (imgFile.InputStream == null || imgFile.InputStream.Length > maxSize) { showError("上传文件大小超过限制。"); } if (String.IsNullOrEmpty(fileExt) || Array.IndexOf(((String)extTable[dirName]).Split(','), fileExt.Substring(1).ToLower()) == -1) { showError("上传文件扩展名是不允许的扩展名。\n只允许" + ((String)extTable[dirName]) + "格式。"); } var typeName = GetTypeName(context); //创建文件夹 dirPath += dirName + typeName + "/"; saveUrl += dirName + typeName + "/"; if (!Directory.Exists(dirPath)) { Directory.CreateDirectory(dirPath); } //管理员素材库统一到一个文件夹即可 登录页大图IOS那边需要固定地址图片http://XXX/{sellerid}/XXX/1280x800.jpg if (isManager == 0 && type != UploadType.MerchantLoginAd) { String ymd = DateTime.Now.ToString("yyyyMMdd", DateTimeFormatInfo.InvariantInfo); dirPath += ymd + "/"; saveUrl += ymd + "/"; } if (!Directory.Exists(dirPath)) { Directory.CreateDirectory(dirPath); } //String newFileName = DateTime.Now.ToString("yyyyMMddHHmmss_ffff", DateTimeFormatInfo.InvariantInfo) + fileExt; //String filePath = dirPath + newFileName; var originalFileName = DateTime.Now.ToUnixTime().ToString() + Utility.GetRandom(1, 1000); fileName = originalFileName + fileExt; //fileName = fileName.Replace(',', '.');//防止图片名称中存在,分隔符 String filePath = dirPath + fileName; var index = 2; while (File.Exists(filePath)) { fileName = originalFileName + string.Format("({0})", index) + fileExt; filePath = dirPath + fileName; index++; } imgFile.SaveAs(filePath); if ((int)((int)imgType / 100) == 1) { //图片处理 生成不同尺寸图片 var list = ImgSizeCfgHelper.GetImgSizeCfgList(imgType); foreach (var imgSizeCfg in list) { Utility.MakeThumNail(filePath, imgSizeCfg.Width, imgSizeCfg.Height); } } //String fileUrl = saveUrl + newFileName; String fileUrl = saveUrl + fileName; var addId = 0; //添加商户图片 if (imgType == UploadType.Img) { //TODO:暂时这么添加 图片名称及图片描述 这个后面再根据需求定怎么赋初值 后面应该加上图片类型!(上传) var sm = new SourceMaterial(); sm.SellerId = sellerId == 0 ? CurrentUser.Id : sellerId;//管理员在商户管理页面上传的图片归商户管理 sm.Title = Path.GetFileNameWithoutExtension(fileName); sm.Url = fileUrl; sm.Description = Path.GetFileNameWithoutExtension(fileName); sm.CreateTime = DateTime.Now; sm.ImageType = UploadType.Img; addId = SourceMaterialHelper.Create(sm); } Hashtable hash = new Hashtable(); hash["error"] = 0; hash["url"] = fileUrl; hash["id"] = addId; context.Response.AddHeader("Content-Type", "text/html; charset=UTF-8"); context.Response.Write(JsonMapper.ToJson(hash)); context.Response.End(); }