/// <summary> /// 保存代理商 /// </summary> /// <param name="data"></param> /// <returns></returns> public JsonResult SaveAgent(string data) { Agent agentBll = new Agent(); TB_DATA_AGENT agentobj = (TB_DATA_AGENT)Newtonsoft.Json.JsonConvert.DeserializeObject(data, typeof(TB_DATA_AGENT)); if (!String.IsNullOrEmpty(agentobj.AGENT_ID)) { Dictionary <string, object> dic = ConvertJson.JsonToDictionary(data); agentobj.Attach(); agentobj.SetModifiedProperties(dic); agentobj.LAST_UPDATED_BY = HttpContext.Session["UserId"].ToString(); agentobj.LAST_UPDATED_TIME = DateTime.Now; } else { agentobj.AGENT_ID = Guid.NewGuid().ToString(); agentobj.STATUS = 1; agentobj.CREATED_BY = HttpContext.Session["UserId"].ToString(); agentobj.CREATED_TIME = DateTime.Now; agentobj.LAST_UPDATED_BY = HttpContext.Session["UserId"].ToString(); agentobj.LAST_UPDATED_TIME = DateTime.Now; } int flag = agentBll.SaveAgent(agentobj); if (flag == 1) { return(Json(new { error = 1, msg = "保存成功" }, JsonRequestBehavior.AllowGet)); } if (flag == -1) { return(Json(new { error = -1, msg = "输入的账号已经存在,请重新输入!" }, JsonRequestBehavior.AllowGet)); } else { return(Json(new { error = 0, msg = "保存失败" }, JsonRequestBehavior.AllowGet)); } }
/// <summary> /// 新增单条卡记录 /// </summary> /// <param name="tB_DATA_CARD"></param> /// <returns></returns> public int SaveCard(TB_DATA_CARD tB_DATA_CARD) { Gateway gateway = Gateway.Default; DbTransaction tran = gateway.BeginTransaction(); try { //取所有非删除的代理商 String agentSql = "SELECT [AGENT_ID],[AGENT_NAME] FROM [dbo].[TB_DATA_AGENT] WHERE STATUS>-1"; DataTable agentData = gateway.FromCustomSql(agentSql).SetTransaction(tran).ToDataSet().Tables[0]; //取所有非删除的终端用户 String endCustomSql = "select END_CUSTOMER_ID,END_CUSTOMER_NAME FROM [dbo].[TB_DATA_END_CUSTOMER] WHERE STATUS>-1"; DataTable endCustomData = gateway.FromCustomSql(endCustomSql).SetTransaction(tran).ToDataSet().Tables[0]; //取所有非删除的品牌信息 String brandSql = "select BRAND_ID,BRAND_NAME FROM [dbo].[TB_DATA_BRAND]"; DataTable brandData = gateway.FromCustomSql(brandSql).SetTransaction(tran).ToDataSet().Tables[0]; String agent_id = String.Empty, end_customer_id = String.Empty, brand_id = String.Empty; //获取导入的代理商 终端客户 品牌信息字段对应的ID,不存在就创建对应的信息 if (!String.IsNullOrEmpty(tB_DATA_CARD.AGENT_ID.Trim())) { agent_id = agentData.Select().Where(s => s["AGENT_NAME"].ToString() == tB_DATA_CARD.AGENT_ID.Trim()).Select(s => s["AGENT_ID"].ToString()).FirstOrDefault(); if (String.IsNullOrEmpty(agent_id)) { TB_DATA_AGENT tB_DATA_AGENT = new TB_DATA_AGENT(); agent_id = Guid.NewGuid().ToString(); tB_DATA_AGENT.AGENT_ID = agent_id; tB_DATA_AGENT.AGENT_NAME = tB_DATA_CARD.AGENT_ID.Trim(); tB_DATA_AGENT.STATUS = 1; tB_DATA_AGENT.CREATED_BY = tB_DATA_CARD.CREATED_BY; tB_DATA_AGENT.CREATED_TIME = DateTime.Now; tB_DATA_AGENT.LAST_UPDATED_BY = tB_DATA_CARD.CREATED_BY; tB_DATA_AGENT.LAST_UPDATED_TIME = DateTime.Now; gateway.Save <TB_DATA_AGENT>(tB_DATA_AGENT, tran); } tB_DATA_CARD.AGENT_ID = agent_id; } if (!String.IsNullOrEmpty(tB_DATA_CARD.END_CUSTOMER_ID.Trim())) { end_customer_id = endCustomData.Select().Where(s => s["END_CUSTOMER_NAME"].ToString() == tB_DATA_CARD.END_CUSTOMER_ID.Trim()).Select(s => s["END_CUSTOMER_ID"].ToString()).FirstOrDefault(); if (String.IsNullOrEmpty(end_customer_id)) { TB_DATA_END_CUSTOMER tB_DATA_END_CUSTOMER = new TB_DATA_END_CUSTOMER(); end_customer_id = Guid.NewGuid().ToString(); tB_DATA_END_CUSTOMER.END_CUSTOMER_ID = end_customer_id; tB_DATA_END_CUSTOMER.END_CUSTOMER_NAME = tB_DATA_CARD.END_CUSTOMER_ID.Trim(); tB_DATA_END_CUSTOMER.STATUS = 1; tB_DATA_END_CUSTOMER.CREATED_BY = tB_DATA_CARD.CREATED_BY; tB_DATA_END_CUSTOMER.CREATED_TIME = DateTime.Now; tB_DATA_END_CUSTOMER.LAST_UPDATED_BY = tB_DATA_CARD.CREATED_BY; tB_DATA_END_CUSTOMER.LAST_UPDATED_TIME = DateTime.Now; gateway.Save <TB_DATA_END_CUSTOMER>(tB_DATA_END_CUSTOMER, tran); } tB_DATA_CARD.END_CUSTOMER_ID = end_customer_id; } if (!String.IsNullOrEmpty(tB_DATA_CARD.BRAND_ID.Trim())) { brand_id = brandData.Select().Where(s => s["BRAND_NAME"].ToString() == tB_DATA_CARD.BRAND_ID.Trim()).Select(s => s["BRAND_ID"].ToString()).FirstOrDefault(); if (String.IsNullOrEmpty(brand_id)) { TB_DATA_BRAND tB_DATA_BRAND = new TB_DATA_BRAND(); brand_id = Guid.NewGuid().ToString(); tB_DATA_BRAND.BRAND_ID = brand_id; tB_DATA_BRAND.BRAND_NAME = tB_DATA_CARD.BRAND_ID.Trim(); tB_DATA_BRAND.CREATED_BY = tB_DATA_CARD.CREATED_BY; tB_DATA_BRAND.CREATED_TIME = DateTime.Now; tB_DATA_BRAND.LAST_UPDATED_BY = tB_DATA_CARD.CREATED_BY; tB_DATA_BRAND.LAST_UPDATED_TIME = DateTime.Now; gateway.Save <TB_DATA_BRAND>(tB_DATA_BRAND, tran); } tB_DATA_CARD.BRAND_ID = brand_id; } String cardID = gateway.Find <TB_DATA_CARD>(TB_DATA_CARD._.CARD_ICCID == tB_DATA_CARD.CARD_ICCID || TB_DATA_CARD._.CARD_NO == tB_DATA_CARD.CARD_NO).CARD_ID; if (!String.IsNullOrEmpty(cardID)) { tB_DATA_CARD.Attach(); tB_DATA_CARD.SetAllPropertiesAsModified(); } gateway.Save <TB_DATA_CARD>(tB_DATA_CARD, tran); String updateSql = @"update TB_DATA_AGENT set AGENT_CARD_NUMBER=T.card_count from ( select count(1) card_count,AGENT_ID from TB_DATA_CARD GROUP BY AGENT_ID ) T where TB_DATA_AGENT.AGENT_ID=T.AGENT_ID"; gateway.FromCustomSql(updateSql).SetTransaction(tran).ExecuteNonQuery(); tran.Commit(); return(1); } catch (Exception ex) { Log.WriteLog(ex.Message); return(0); } }
/// <summary> /// 保存代理商 /// </summary> /// <param name="tB_DATA_AGENT">代理商对象</param> /// <returns></returns> public int SaveAgent(TB_DATA_AGENT tB_DATA_AGENT) { try { //判断输入的账户名是否存在用户信息 int userID = 0; if (!String.IsNullOrEmpty(tB_DATA_AGENT.AGENT_ACCOUNT)) { var obj = Gateway.Default.Find <Xt_zhb>(Xt_zhb._.Zh == tB_DATA_AGENT.AGENT_ACCOUNT); if (obj != null) { userID = obj.Id; } } //如果不是修改代理商,需先创建指定用户 if (!tB_DATA_AGENT.IsAttached()) { if (userID > 0) { return(-1); } Xt_zhb xt_Zhb = new Xt_zhb(); xt_Zhb.Zh = tB_DATA_AGENT.AGENT_ACCOUNT; xt_Zhb.Mm = "E10ADC3949BA59ABBE56E057F20F883E"; xt_Zhb.Dh = tB_DATA_AGENT.AGENT_TEL; xt_Zhb.Lxr = tB_DATA_AGENT.AGENT_NAME; xt_Zhb.Jsid = 2; xt_Zhb.Createtime = DateTime.Now; Gateway.Default.Save <Xt_zhb>(xt_Zhb); userID = Gateway.Default.Find <Xt_zhb>(Xt_zhb._.Zh == tB_DATA_AGENT.AGENT_ACCOUNT).Id; tB_DATA_AGENT.USER_ID = userID.ToString(); } else { tB_DATA_AGENT.USER_ID = Gateway.Default.Find <TB_DATA_AGENT>(TB_DATA_AGENT._.AGENT_ID == tB_DATA_AGENT.AGENT_ID).USER_ID; if (String.IsNullOrEmpty(tB_DATA_AGENT.USER_ID)) { Xt_zhb xt_Zhb = new Xt_zhb(); xt_Zhb.Zh = tB_DATA_AGENT.AGENT_ACCOUNT; xt_Zhb.Mm = "E10ADC3949BA59ABBE56E057F20F883E"; xt_Zhb.Dh = tB_DATA_AGENT.AGENT_TEL; xt_Zhb.Lxr = tB_DATA_AGENT.AGENT_NAME; xt_Zhb.Jsid = 2; xt_Zhb.Createtime = DateTime.Now; Gateway.Default.Save <Xt_zhb>(xt_Zhb); userID = Gateway.Default.Find <Xt_zhb>(Xt_zhb._.Zh == tB_DATA_AGENT.AGENT_ACCOUNT).Id; tB_DATA_AGENT.USER_ID = userID.ToString(); } else if (userID.ToString() != tB_DATA_AGENT.USER_ID) { return(-1); } else { Gateway.Default.FromCustomSql("update Xt_zhb set Zh=@USER_NAME where id=@id") .AddInputParameter("USER_NAME", System.Data.DbType.String, tB_DATA_AGENT.AGENT_ACCOUNT) .AddInputParameter("id", System.Data.DbType.String, userID.ToString()).ExecuteNonQuery(); } } Gateway.Default.Save <TB_DATA_AGENT>(tB_DATA_AGENT); return(1); } catch (Exception ex) { Log.WriteLog(ex.Message); return(0); } }