예제 #1
0
        public ActionResult Attention(string obj)
        {
            BaseResult br = new BaseResult();

            try
            {
                Hashtable   param = JSON.Deserialize <Hashtable>(obj);
                ParamVessel p     = new ParamVessel();
                p.Add("id_gys", (long)0, HandleType.ReturnMsg);
                p.Add("remark", string.Empty, HandleType.Remove);
                p.Add("flag_from", string.Empty, HandleType.ReturnMsg);
                param = param.Trim(p);

                var id_gys = TypeConvert.ToInt64(param["id_gys"].ToString(), 0);
                if (id_gys.Equals(0))
                {
                    br.Success = false;
                    br.Level   = ErrorLevel.Warning;
                    br.Message.Add("请选择供应商.");
                    return(Json(br));
                }
                Tb_Gys_Cgs_Check model = new Tb_Gys_Cgs_Check()
                {
                    flag_form  = param["flag_from"].ToString(),
                    flag_state = Gys_Cgs_Status.Apply,
                    id_cgs     = GetLoginInfo <long>("id_buyer"),
                    id_gys     = id_gys,
                    remark     = param.ContainsKey("remark") ? param["remark"].ToString() : string.Empty,
                    rq_sq      = DateTime.Now,
                    id_user    = GetLoginInfo <long>("id_user")
                };

                br = BusinessFactory.BuyerAttention.Add(model);
                if (br.Success)
                {
                    WriteDBLog(LogFlag.Base, br.Message);
                }
            }
            catch (CySoftException ex)
            {
                throw ex;
            }
            catch (Exception ex)
            {
                throw ex;
            }
            return(Json(br));
        }
예제 #2
0
        public override BaseResult Update(dynamic entity)
        {
            BaseResult br    = new BaseResult();
            Hashtable  param = (Hashtable)entity;

            if (param == null || !param.ContainsKey("model") || !param.ContainsKey("id_user"))
            {
                br.Success = false;
                br.Message.Add("拒绝关注参数错误.");
                br.Level = ErrorLevel.Warning;
                br.Data  = "companyName";
                return(br);
            }
            long             id_user     = TypeConvert.ToInt64(param["id_user"], 0);
            Tb_Gys_Cgs_Check gyscgscheck = (Tb_Gys_Cgs_Check)param["model"];
            string           flag_from   = param.ContainsKey("flag_from")?param["flag_from"].ToString(): "pc";

            if (gyscgscheck == null || !gyscgscheck.id.HasValue || !(gyscgscheck.id > 0))
            {
                br.Success = false;
                br.Message.Add("拒绝关注参数错误.");
                br.Level = ErrorLevel.Warning;
                br.Data  = "companyName";
                return(br);
            }

            Hashtable ht = new Hashtable();

            ht.Add("id", gyscgscheck.id);
            var gcgx = DAL.GetItem <Tb_Gys_Cgs_Check>(typeof(Tb_Gys_Cgs_Check), ht);

            if (gcgx == null)
            {
                br.Success = false;
                br.Message.Add("客户的申请已处理过了,请刷新页面.");
                br.Level = ErrorLevel.Warning;
                return(br);
            }
            if (gcgx.flag_form.Equals(Gys_Cgs_Status.Refuse))
            {
                br.Success = false;
                br.Message.Add("客户的申请已被拒绝过了,请刷新页面.");
                br.Level = ErrorLevel.Warning;
                return(br);
            }

            param["id"]             = gyscgscheck.id;
            param["new_flag_state"] = Gys_Cgs_Status.Refuse;
            param["new_refuse"]     = gyscgscheck.refuse;
            DAL.UpdatePart(typeof(Tb_Gys_Cgs_Check), param);

            //记录供采关系日志
            var Loggcgx = new Tb_Gys_Cgs_Log();

            Loggcgx.id_cgs     = gcgx.id_cgs.Value;
            Loggcgx.id_gys     = gcgx.id_gys.Value;
            Loggcgx.id_user    = id_user;
            Loggcgx.flag_state = Gys_Cgs_Status.Refuse;
            Loggcgx.flag_form  = flag_from;
            Loggcgx.contents   = string.Format("[{0}]拒绝[{1}]的申请.", gcgx.mc_gys, gcgx.mc_cgs);
            DAL.Add(Loggcgx);

            br.Message.Add(string.Format("[{0}]拒绝[{1}]的申请.", gcgx.mc_gys, gcgx.mc_cgs));
            br.Success = true;
            return(br);
        }
예제 #3
0
        /// <summary>
        /// 采购商扫一扫成客户
        /// tim
        /// 2015-7-22
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        ///
        // [HttpPost]
        public ActionResult Scan(string obj)
        {
            BaseResult br = new BaseResult();

            try
            {
                var id_des    = Base64Encrypt.DecodeBase64(obj);
                var id_master = DESEncrypt.DecryptDES(id_des);
                if (!string.IsNullOrWhiteSpace(obj))
                {
                    //获取供应商信息
                    var ht = new Hashtable();
                    ht.Add("id_user_master", id_master);
                    br = BusinessFactory.Supplier.Get(ht);
                    if (!br.Success || br.Data == null)
                    {
                        br.Success = false;
                        br.Message.Add("您所扫描的供应商不存在.");
                        br.Level = ErrorLevel.Warning;
                        return(Json(br));
                    }

                    var gys = br.Data as Tb_Gys_Edit;

                    if (gys.id_user_master.Equals(GetLoginInfo <long>("id_user_master")))
                    {
                        br.Success = false;
                        br.Message.Add("自己不能扫描关注自己.");
                        br.Level = ErrorLevel.Warning;
                        return(Json(br));
                    }
                    //采购关系对象
                    Tb_Gys_Cgs_Check model = new Tb_Gys_Cgs_Check()
                    {
                        flag_form  = GetLoginInfo <string>("flag_from"),
                        flag_state = Gys_Cgs_Status.Apply,
                        id_cgs     = GetLoginInfo <long>("id_buyer"),
                        id_gys     = gys.id,
                        rq_sq      = DateTime.Now,
                        id_user    = GetLoginInfo <long>("id_user"),
                    };

                    //删除关注关系
                    ht.Clear();
                    ht.Add("id_gys", model.id_gys);
                    ht.Add("id_cgs", model.id_cgs);
                    ht.Add("id_user", model.id_user);
                    ht.Add("flag_from", model.flag_form);
                    BusinessFactory.SupplierAttention.Delete(ht);

                    //申请关注
                    br = BusinessFactory.BuyerAttention.Add(model);
                    if (br.Success)
                    {
                        WriteDBLog(LogFlag.Base, br.Message);

                        //获取采购商级别
                        ht.Clear();
                        ht.Add("id_gys", gys.id);
                        ht.Add("flag_sys", 1);
                        br = BusinessFactory.CustomerType.Get(ht);
                        if (br.Success && br.Data != null)
                        {
                            var cgs_level = br.Data as Tb_Cgs_Level;

                            //通过关注申请,直接成为客户
                            var gysmodel = new Tb_Cgs_Edit()
                            {
                                id           = model.id_cgs,
                                companyname  = GetLoginInfo <string>("companyname"),
                                id_cgs_level = cgs_level.id,
                                flag_pay     = 0,
                                id_create    = GetLoginInfo <long>("id_user"),
                                id_edit      = GetLoginInfo <long>("id_user")
                            };
                            ht.Clear();
                            ht.Add("model", gysmodel);
                            ht.Add("flag_from", model.flag_form);
                            ht.Add("id_supplier", gys.id);
                            br = BusinessFactory.SupplierAttention.Add(ht);
                            if (br.Success)
                            {
                                WriteDBLog(LogFlag.Base, br.Message);
                            }
                        }
                        else
                        {
                            br.Message.Clear();
                            br.Message.Add("供应商没有设置默认客户级别,无法扫描自动关注,请登录网站手动设置。");
                            br.Success = false;
                            br.Level   = ErrorLevel.Warning;
                        }
                    }
                }
                else
                {
                    br.Message.Clear();
                    br.Message.Add("扫描的二维码不正确。");
                    br.Success = false;
                    br.Level   = ErrorLevel.Warning;
                }
            }
            catch (CySoftException ex)
            {
                br.Message.Clear();
                br.Message.Add(ex.Message);
                br.Success = false;
                br.Level   = ErrorLevel.Warning;
            }
            catch (Exception ex)
            {
                br.Message.Clear();
                br.Message.Add(ex.Message);
                br.Success = false;
                br.Level   = ErrorLevel.Warning;
            }
            return(Json(br));
        }
예제 #4
0
        public override BaseResult Add(dynamic entity)
        {
            BaseResult       br    = new BaseResult();
            Tb_Gys_Cgs_Check model = (Tb_Gys_Cgs_Check)entity;

            if (model == null || !model.id_cgs.HasValue || !(model.id_cgs > 0) || !model.id_gys.HasValue || !(model.id_gys > 0))
            {
                br.Success = false;
                br.Message.Add("关注参数错误.");
                br.Level = ErrorLevel.Warning;
                return(br);
            }
            Hashtable ht = new Hashtable();

            ht.Add("id_gys", model.id_gys);
            ht.Add("id_cgs", model.id_cgs);
            var gcgxcheck = DAL.GetItem <Tb_Gys_Cgs_Check>(typeof(Tb_Gys_Cgs_Check), ht);

            if (gcgxcheck != null && gcgxcheck.flag_state.Equals(Gys_Cgs_Status.Apply))
            {
                br.Success = false;
                br.Message.Add("已经提交了关注申请,请等待供应商的审核通过.");
                br.Level = ErrorLevel.Warning;
                br.Data  = Gys_Cgs_Status.Apply;
                return(br);
            }

            var gcgx = DAL.GetItem <Tb_Gys_Cgs>(typeof(Tb_Gys_Cgs), ht);

            if (gcgx != null && gcgx.flag_stop.Equals(YesNoFlag.No))
            {
                br.Success = false;
                br.Message.Add("您已经关注过该供应商.");
                br.Level = ErrorLevel.Warning;
                br.Data  = Gys_Cgs_Status.Accept;
                return(br);
            }
            //删除申请记录
            DAL.Delete(typeof(Tb_Gys_Cgs_Check), ht);
            //采购商
            ht.Clear();
            ht["id"] = model.id_cgs;
            var cgs = (Tb_Cgs)DAL.GetItem <Tb_Cgs>(typeof(Tb_Cgs), ht);

            if (cgs == null || !cgs.id.HasValue || !(cgs.id > 0))
            {
                br.Success = false;
                br.Message.Add("采购商不存在.");
                br.Level = ErrorLevel.Warning;
                br.Data  = "cgs";
                return(br);
            }
            ht.Clear();
            ht["id"] = model.id_gys;
            var gys = (Tb_Gys)DAL.GetItem <Tb_Gys>(typeof(Tb_Gys), ht);

            if (gys == null || !gys.id.HasValue || !(gys.id > 0))
            {
                br.Success = false;
                br.Message.Add("供应商不存在.");
                br.Level = ErrorLevel.Warning;
                br.Data  = "gys";
                return(br);
            }
            DAL.Add(model);//添加关注申请


            //记录供采关系日志
            var Loggcgx = new Tb_Gys_Cgs_Log();

            Loggcgx.id_cgs     = cgs.id.Value;
            Loggcgx.id_gys     = gys.id.Value;
            Loggcgx.id_user    = model.id_user;
            Loggcgx.flag_state = Gys_Cgs_Status.Apply;
            Loggcgx.flag_form  = model.flag_form;
            Loggcgx.contents   = string.Format("[{0}]向[{1}]提交关注申请.", cgs.companyname, gys.companyname);
            DAL.Add(Loggcgx);

            br.Success = true;
            br.Message.Add(String.Format("[{0}]向[{1}]提交关注申请.", cgs.companyname, gys.companyname));
            return(br);
        }