Пример #1
0
        public ActionResult CreateCode(string cardid, int count = 100)
        {
            bool   issuccess = true;
            string resultstr = "生成券码成功";
            int    trycount  = count / 100;

            for (int i = 1; i <= trycount; i++)
            {
                if (!CreateCodeBatch(cardid, 100, ref resultstr))
                {
                    issuccess = false;
                    break;
                }
            }
            if (issuccess)
            {
                int remainingcount = count - trycount * 100;
                if (remainingcount > 0)
                {
                    issuccess = CreateCodeBatch(cardid, remainingcount, ref resultstr);
                }
            }

            if (issuccess)
            {
                int result = WeiXinCardManager.UpdateWeiXinCardPushCount(cardid, count);
                if (result > 0)
                {
                    resultstr = "生成券码成功";
                }
            }
            return(Json(resultstr, JsonRequestBehavior.AllowGet));
        }
Пример #2
0
        public ActionResult CardList()
        {
            List <WeixinCardModel> list = WeiXinCardManager.GetWeixinCardModelList();

            list = list.OrderBy(q => q.PKID).ToList();
            return(View(list));
        }
Пример #3
0
        public ActionResult Supplier()
        {
            SupplierInfo model = new SupplierInfo();

            List <SupplierInfo> supplierlist = WeiXinCardManager.GetSupplierInfo(-1);

            supplierlist = supplierlist.OrderBy(q => q.pkid).ToList();
            return(View(Tuple.Create(supplierlist, model)));
        }
Пример #4
0
        //[HttpPost]
        //public ActionResult UpdateSupplier(SupplierInfo model)
        //{
        //    string resultstr = string.Empty;
        //    int result = WeiXinCardManager.SaveWeiXinCardSupplier(model);
        //    if (result > 0)
        //    {
        //        resultstr = "保存成功";
        //    }
        //    return Json(resultstr);
        //}

        public ActionResult UpdateSupplier(int pkid)
        {
            var       model = WeiXinCardManager.GetSupplierInfo(pkid);
            WebClient wc    = new WebClient();

            byte[] imagebytes             = wc.DownloadData(model.First().logo_url);
            model.First().Imgbase64string = Convert.ToBase64String(imagebytes);

            return(View(model.First()));
        }
Пример #5
0
        public ActionResult Supplier([Bind(Prefix = "Item2")] SupplierInfo model)
        {
            string resultstr = string.Empty;
            int    result    = WeiXinCardManager.SaveWeiXinCardSupplier(model);

            if (result > 0)
            {
                resultstr = "保存成功";
            }
            return(Json(resultstr));
        }
Пример #6
0
        public ActionResult UpdateSupplier(SupplierInfo model)
        {
            int i = WeiXinCardManager.UpdateWeiXinCardSupplier(model);

            return(Json(i));
            //if (i > 0)
            //{
            //    return Json("更新成功");
            //}
            //else
            //{
            //    return Json("更新失败");
            //}
        }
Пример #7
0
        public ActionResult DeleteSupplier(int pkid)
        {
            bool flag = false;

            try
            {
                WeiXinCardManager.DeleteWeiXinCardSupplier(pkid);
                flag = true;
            }
            catch (Exception ex)
            {
                WebLog.LogException(ex);
            }
            return(Json(flag, JsonRequestBehavior.AllowGet));
        }
Пример #8
0
        public bool CreateCodeBatch(string cardid, int count, ref string errormsg)
        {
            bool issuccessfully = false;

            // errormsg = string.Empty;
            try
            {
                int result = WeiXinCardManager.InsertPromotionCodeToWeixinCard(cardid, count);
                int pkid   = WeiXinCardManager.GetPKIDByWeiXinCard(cardid);


                if (result > 0)
                {
                    List <string>  cardcodes = WeiXinCardManager.GetWeixinCardCode(cardid, pkid, count);
                    WeixinCardCode obj       = new WeixinCardCode()
                    {
                        card_id = cardid,
                        code    = cardcodes
                    };
                    var jsonrequststr         = JsonConvert.SerializeObject(obj);
                    AccessTokenModel tokenobj = GetAccess_tokenAsCache();
                    string           token    = string.Empty;
                    if (tokenobj != null && !string.IsNullOrWhiteSpace(tokenobj.Access_token))
                    {
                        token = tokenobj.Access_token;
                    }


                    var     resultc   = GetWeixinCardResponse("http://api.weixin.qq.com/card/code/deposit", token, jsonrequststr);
                    JObject resultobj = JsonConvert.DeserializeObject(resultc) as JObject;
                    if (resultobj != null && resultobj["errcode"] != null)
                    {
                        if (Convert.ToInt32(resultobj["errcode"]) == 0)
                        {
                            //  resultstr = "生成券码成功";
                            WeixinCardCodeQuantity quantityobj = new WeixinCardCodeQuantity()
                            {
                                card_id = cardid,
                                increase_stock_value = count
                            };
                            var     jsonquantityrequststr = JsonConvert.SerializeObject(quantityobj);
                            var     quantityresult        = GetWeixinCardResponse("https://api.weixin.qq.com/card/modifystock", token, jsonquantityrequststr);
                            JObject quantityresultobj     = JsonConvert.DeserializeObject(quantityresult) as JObject;
                            if (quantityresultobj != null && quantityresultobj["errcode"] != null)
                            {
                                if (Convert.ToInt32(quantityresultobj["errcode"]) == 0)
                                {
                                    issuccessfully = true;
                                }
                                else
                                {
                                    errormsg = quantityresultobj["errcode"].ToString();
                                }
                            }
                        }
                        else
                        {
                            errormsg = resultobj["errcode"].ToString();
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                errormsg = ex.Message;
            }
            return(issuccessfully);
        }
Пример #9
0
        public ActionResult CreateCard(WeixinCardModel model, string command)
        {
            string resultstr = string.Empty;

            try
            {
                if (Request.QueryString["supplierId"] != null)
                {
                    List <SupplierInfo> supplierInfoList = WeiXinCardManager.GetSupplierInfo(Convert.ToInt32(Request.QueryString["supplierId"]));
                    if (supplierInfoList != null && supplierInfoList.FirstOrDefault() != null)
                    {
                        var supplier = supplierInfoList.First();
                        model.total_info.base_info.brand_name = supplier.brand_name;
                        model.total_info.base_info.logo_url   = supplier.logo_url;
                        model.total_info.base_info.supplierId = supplier.pkid;
                    }
                }



                TimeSpan startts = model.total_info.base_info.date_info.begin_time - new DateTime(1970, 1, 1);
                TimeSpan endts   = model.total_info.base_info.date_info.end_time - new DateTime(1970, 1, 1);
                model.total_info.base_info.date_info.begin_timestamp = Convert.ToUInt64(startts.TotalSeconds);


                model.total_info.base_info.date_info.end_timestamp = Convert.ToUInt64(endts.TotalSeconds);



                if (command.Equals("Save/Update"))
                {
                    int    result          = 0;
                    string requestmodelstr = JsonConvert.SerializeObject(model, Newtonsoft.Json.Formatting.None,
                                                                         new JsonSerializerSettings
                    {
                        //DefaultValueHandling = DefaultValueHandling.Ignore,
                        NullValueHandling = NullValueHandling.Ignore
                    });
                    var log = requestmodelstr.Replace("{", "").Replace("}", "");
                    WebLog.LogInfo(log);
                    if (string.IsNullOrWhiteSpace(model.card_id))
                    {
                        result = WeiXinCardManager.SaveWeiXinCard(model);
                    }
                    else
                    {
                        result = WeiXinCardManager.UpdateWeiXinCard(model);
                    }
                    if (result > 0)
                    {
                        resultstr = "操作成功";
                    }
                }
                else if (command.Equals("Submit"))
                {
                    string jsonrequststr = GetJsonStr(model);
                    var    loginfo       = jsonrequststr.Replace("{", "").Replace("}", "");
                    WebLog.LogInfo(loginfo);
                    AccessTokenModel tokenobj = GetAccess_tokenAsCache();
                    string           token    = string.Empty;
                    if (tokenobj != null && !string.IsNullOrWhiteSpace(tokenobj.Access_token))
                    {
                        token = tokenobj.Access_token;
                    }


                    var     result        = GetWeixinCardResponse("https://api.weixin.qq.com/card/create", token, jsonrequststr);
                    JObject weixincardobj = JsonConvert.DeserializeObject(result) as JObject;
                    if (weixincardobj != null && weixincardobj["errcode"] != null)
                    //&&Convert.ToInt32(weixincardobj["errcode"])==0 && weixincardobj["card_id"] != null)
                    {
                        if (Convert.ToInt32(weixincardobj["errcode"]) == 0 && weixincardobj["card_id"] != null)
                        {
                            model.card_id = weixincardobj["card_id"].ToString();
                            WeiXinCardManager.SaveWeiXinCard(model);
                            resultstr = "提交成功";
                        }
                        else if (weixincardobj["errmsg"] != null)
                        {
                            resultstr = "提交失败,失败原因:" + weixincardobj["errmsg"].ToString();
                        }
                    }
                }
                else if (command.Equals("Switch to CardList"))
                {
                    return(RedirectToAction("CardList"));
                }
            }
            catch (Exception ex)
            {
                resultstr = ex.Message;
            }
            return(Json(resultstr, JsonRequestBehavior.AllowGet));
        }
Пример #10
0
        public ActionResult CreateCard(int pkId = 0, int supplierId = 1)
        {
            WeixinCardModel cardmodelInfo = new WeixinCardModel();


            WeixinCardTotalModel totalModel = new WeixinCardTotalModel();

            if (pkId == 0)
            {
                SupplierInfo        supplier         = new SupplierInfo();
                TimeSpan            ts               = DateTime.Now - new DateTime(1970, 1, 1);
                TimeSpan            ts1              = DateTime.Now.AddDays(30) - new DateTime(1970, 1, 1);
                List <SupplierInfo> supplierInfoList = WeiXinCardManager.GetSupplierInfo(supplierId);
                if (supplierInfoList != null && supplierInfoList.FirstOrDefault() != null)
                {
                    supplier = supplierInfoList.First();
                }
                totalModel = new WeixinCardTotalModel()
                {
                    base_info = new WeixinCardBaseInfo()
                    {
                        logo_url   = supplier.logo_url,
                        brand_name = supplier.brand_name,



                        colorid = 2,

                        date_info = new DateInfo()
                        {
                            begin_time      = DateTime.Now,
                            end_time        = DateTime.Now.AddDays(10),
                            begin_timestamp = (UInt64)ts.Seconds,
                            end_timestamp   = (UInt64)ts.Seconds,
                            // (DateTime.Now.AddDays(30) - new DateTime(1970, 1, 1)
                            type = "DATE_TYPE_FIX_TERM"
                                   // end_timestamp =Convert.ToUInt32(ts.TotalSeconds),
                        },
                        sku = new SKUQuantity()
                        {
                            quantity = 0
                        },
                        //   center_title = "途虎养车网",
                        //  center_url = "https://www.tuhu.cn",
                        service_phone = "4001118868"
                    },
                    advanced_info = new WeixinCardAdvancedInfo()
                    {
                        abstractinfo  = new AbstractInfo(),
                        use_condition = new ConditionalUse()
                    }
                };
                cardmodelInfo.total_info = totalModel;
            }
            else
            {
                WeixinCardModel model = null;
                var             list  = WeiXinCardManager.GetWeixinCardModelList(pkId);
                if (list != null && list.FirstOrDefault() != null)
                {
                    model = list.First();
                }

                cardmodelInfo = model;
            }

            return(View(cardmodelInfo));
        }