示例#1
0
        /// <summary>
        /// 创建或者更新客户资料
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        public long CreateOrUpdate(CardSubItem model)
        {
            if (string.IsNullOrEmpty(_ConnectionString))
            {
                LogHelper.Log("CardData-CreateOrUpdate:" + "File ERROR");
                return(0);
            }
            try
            {
                bool isExist = model.id > 0;
                LockUtils.LockEnter(_ConnectionString);
                DapperHelper db = new DapperHelper(this._ConnectionString);
                if (isExist)
                {
                    //仅仅更新
                    try
                    {
                        var param = ConvertHelper <CardSubItem> .ModelToDic(model);

                        db.Update <CardSubItem>(param, "id", model.id);
                        return(model.id);
                    }
                    catch (Exception ex)
                    {
                        LogHelper.Log("CardData-CreateOrUpdate:" + ex.ToString());
                    }
                    finally
                    {
                        db.Close();
                    }
                }
                else
                {
                    //新增
                    try
                    {
                        return(CheckData.Check_Long(db.ExecuteScalar(DapperHelper.CompileInsert <CardSubItem>(model, "id", "sl"), model)));
                    }
                    catch (Exception ex)
                    {
                        LogHelper.Log("CardData-CreateOrUpdate:" + ex.ToString());
                    }
                    finally
                    {
                        db.Close();
                    }
                }
            }
            catch (Exception ex)
            {
                LogHelper.Log("CardData-CreateOrUpdate:" + ex.ToString());
            }
            finally
            {
                LockUtils.LockExit(_ConnectionString);
            }
            return(0);
        }
示例#2
0
 public string CreateCard(string data)
 {
     try
     {
         JObject job  = JObject.Parse(data);
         var     item = new CardItem();
         item.desc   = CheckData.Check_String(job["desc"]);
         item.name   = CheckData.Check_String(job["name"]);
         item.openid = OpenId;
         item.phone  = CheckData.Check_String(job["phone"]);
         item.wx     = CheckData.Check_String(job["wx"]);
         var    imgurl   = CheckData.Check_String(job["headimg"]);
         var    path     = Path.Combine(Config.AccountDataDir, this.OpenId + "\\files\\avatars\\");
         string filename = GetFile(imgurl, path);
         item.headimg = filename;
         var  db = new CardData(OpenId);
         long id = db.CreateOrUpdate(item);
         if (id > 0)
         {
             foreach (var img in job["resimg"])
             {
                 var sub = new CardSubItem();
                 sub.cardid = id;
                 var    imgPath   = Path.Combine(Config.AccountDataDir, this.OpenId + "\\files\\img\\");
                 string filename2 = GetFile(CheckData.Check_String(img), imgPath);
                 sub.path = filename2;
                 db.CreateOrUpdate(sub);
             }
             string url         = "http://" + Config.RootURL + $"/cardshare/get?openid={item.openid}&id={id}";
             string avatarsPath = Path.Combine(Config.AccountDataDir, this.OpenId + "\\files\\avatars\\" + filename);
             string base64      = QrCodeCreater.GetQrCodeImgBase64(url, avatarsPath);
             if (base64.IsNotEmpty())
             {
                 return(OK(base64));
             }
         }
     }
     catch (Exception e)
     {
         LogHelper.Log(e.Message);
     }
     return(Error("抱歉,生成失败。"));
 }