public int UpdateIntegralGoods(dynamic requestData) { string query = JsonConvert.SerializeObject(requestData); IntegralGoods goods = JsonConvert.DeserializeObject <IntegralGoods>(query); EntityState statebefore = db.Entry(goods).State; db.Entry(goods).State = EntityState.Modified; return(db.SaveChanges()); }
public string AddIntegralGoods(dynamic requestData) { string query = JsonConvert.SerializeObject(requestData); IntegralGoods goods = JsonConvert.DeserializeObject <IntegralGoods>(query); string sql = string.Format("Select COUNT(*) from IntegralGoods where GoodsNo = {0}", goods.GoodsNo); var count = dataContext.ExecuteScalar(CommandType.Text, sql); if ((int)count > 0) { return("false"); } db.IntegralGoods.Add(goods); db.SaveChanges(); return(goods.GoodsId.ToString()); }
/// <summary> /// 执行生成二维码包 /// </summary> /// <param name="obj"></param> /// <returns></returns> public bool ExcGenerate(IntegralGoodsQrcPackage obj) { try { //压缩包存储路径 var basePath = System.AppDomain.CurrentDomain.SetupInformation.ApplicationBase; var qrCodePath = Convert.ToString(ConfigurationManager.AppSettings["QrCodeStorePath"]); var fileName = string.Format("{0}.xls", Guid.NewGuid().ToString()); var serverPath = qrCodePath + fileName; var filePath = basePath + serverPath; //查询商品 IntegralGoods goods = (from g in db.IntegralGoods where g.GoodsId == obj.GoodsId select g).FirstOrDefault <IntegralGoods>(); //var goods = _integralGoodsRepository.Find(obj.GoodsId); obj.Name = goods.GoodsName; obj.GoodsCode = goods.GoodsNo; obj.State = 2; obj.CreateDate = DateTime.Now; obj.Url = Convert.ToString(ConfigurationManager.AppSettings["QrCodeUrl"]) + "/"; obj.DownLoadUrl = serverPath; //添加一条压缩包记录 db.IntegralGoodsQrcPackage.Add(obj); db.SaveChanges(); //安全码的模板 //{规格}{商品类别}{工厂}{月份}{流水号} var snTmpl = ((int)obj.Range).ToString() + obj.GoodsCode + ((int)obj.Source).ToString() + ((int)obj.March).ToString().PadLeft(2, '0'); List <string> qrCodeList = new List <string>(); //生成二维码 for (int i = 1; i <= obj.Num; i++) { IntegralGoodsQrc qrc = new IntegralGoodsQrc(); qrc.State = 1; qrc.PackageId = obj.PackageId; qrc.CreateDate = DateTime.Now; qrc.QrcUrl = ""; qrc.Code = ""; //添加一条二维码记录 db.IntegralGoodsQrc.Add(qrc); db.SaveChanges(); //安全码 qrc.Code = snTmpl + qrc.QrcId.ToString().PadLeft(10, '0'); //安全码需混淆 //{域名}?p={本批次ID}&sn={安全码} qrc.QrcUrl = string.Format("{0}?sn={1}", obj.Url, EncryptHelper.Confusion(qrc.Code)); //更改二维码的值 SetQrcCode(qrc.QrcId, qrc.QrcUrl, qrc.Code); //生成一个二维码 var code = QrCodeHelper.ToBytes(qrc.QrcUrl); qrCodeList.Add(qrc.QrcUrl); } //生成Excel ExcelExtend.SaveExcel <string>(qrCodeList, qrCodePath, fileName); obj.State = 1; //_repository.Update(obj); EntityState statebefore = db.Entry(obj).State; db.Entry(obj).State = EntityState.Modified; db.SaveChanges(); //将生成的所有二维码打包 //CompressHelper.ToZip(qrCodeList, filePath, "PNG"); return(true); } catch (Exception ex) { string a = ex.Message; return(false); } }