/// <summary> /// 车信息和联动列表 /// </summary> /// <param name="id"></param> /// <param name="CI_CS_Code"></param> private void Get_Car_InventoryAndLendon(int id) { dynamic d = new ExpandoObject(); var db = DBCRMTree.GetInstance(); d.CT_Car_Inventory = CT_Car_Inventory.SingleOrDefault(id); d.CT_Car_Style = CT_Car_Style.SingleOrDefault(d.CT_Car_Inventory.CI_CS_Code); //Get_CT_Car_Style(d.CT_Car_Inventory.CM_Code, d.CT_Car_Inventory.CI_YR_Code); d.CT_Car_Inventory.CI_YR_Code = db.ExecuteScalar <Byte>(@"select YR_Code from [CT_Years] where YR_Year = @0", d.CT_Car_Style.CS_Year); d.CT_Car_Inventory.CM_Code = d.CT_Car_Style.CS_CM_Code; // db.ExecuteScalar<int>(@"select cs_cm_code from [CT_Car_Style] where cs_code = @0", d.CT_Car_Inventory.CI_CS_Code); d.CT_Car_Inventory.MK_Code = db.ExecuteScalar <int>(@"select cm_mk_code from [CT_Car_Model] where cm_code = @0", d.CT_Car_Inventory.CM_Code); d.CT_Car_Inventory.CP_Picture_FN = db.ExecuteScalar <string>(@" SELECT [CP_Picture_FN] + ',' FROM [CT_Car_Pictures] WHERE CP_CI_Code =@0 FOR XML PATH('')" , d.CT_Car_Inventory.CI_Code); d.CT_Car_Model = Get_CT_Car_Model(d.CT_Car_Inventory.MK_Code, d.CT_Car_Inventory.CI_YR_Code); d.CT_Car_Style = Get_CT_Car_Style(d.CT_Car_Inventory.CM_Code, d.CT_Car_Inventory.CI_YR_Code); d.CT_Auto_Insurance = CT_Auto_Insurance.FirstOrDefault("where AI_CI_Code = @0 order by AI_Update_dt desc", d.CT_Car_Inventory.CI_Code); // d.CT_Auto_Insurance = CT_Auto_Insurance.SingleOrDefault(@"Select TOP 1 // AI_Code,AI_CI_Code,AI_IC_Code,AI_IA_Code,AI_Policy,AI_Start_dt,AI_End_dt,AI_Update_dt // from CT_Auto_Insurance where AI_CI_Code = @0 order by AI_Update_dt desc", d.CT_Car_Inventory.CI_Code); string sql_carInfo = string.Format(@"SELECT dbo.Get_Connect_Car(CI.CI_Code,1)AS CAR_CN, dbo.Get_Connect_Car(CI.CI_Code,2)AS CAR_EN,MK_Code,CM_Code,CS_Code,CI.* FROM CT_Make MK INNER JOIN CT_Car_Model CM ON CM.CM_MK_Code=MK.MK_Code INNER JOIN CT_Car_Style CS ON CS.CS_CM_Code=CM.CM_Code INNER JOIN CT_Car_Inventory CI ON CI.CI_CS_Code=CS.CS_Code WHERE CI.CI_Code=@0"); d.carInfo = db.Query <dynamic>(sql_carInfo, id); Response.Write(JsonConvert.SerializeObject(d)); }
/// <summary> /// 保存车信息 /// </summary> /// <param name="data"></param> /// <param name="au_code"></param> private void Save_Car(dynamic data) { var db = DBCRMTree.GetInstance(); try { using (var tran = db.GetTransaction()) { var au_code = (long)data.au_code; var s = JsonConvert.SerializeObject(data.o); CT_Car_Inventory c = JsonConvert.DeserializeObject <CT_Car_Inventory>(s); var ci_code = c.CI_Code; c.CI_AU_Code = au_code; c.CI_Create_dt = DateTime.Now; if (c.CI_Code > 0) { c.Update(new string[] { "CI_AU_Code" , "CI_Create_dt" , "CI_CS_Code" , "CI_VIN" , "CI_Mileage" , "CI_Licence" , "CI_YR_Code" , "CI_Color_I" , "CI_Color_E" }); } else { ci_code = (int)c.Insert(); } CT_Auto_Insurance ai = JsonConvert.DeserializeObject <CT_Auto_Insurance>(s); ai.AI_CI_Code = c.CI_Code; if (db.Exists <CT_Auto_Insurance>("AI_CI_Code=@0", c.CI_Code)) { ai.AI_Update_dt = DateTime.Now; string sql = @"UPDATE CT_Auto_Insurance SET AI_IC_Code = @AI_IC_Code ,AI_IA_Code = @AI_IA_Code ,AI_Policy = @AI_Policy ,AI_End_dt = @AI_End_dt ,AI_Update_dt = @AI_Update_dt WHERE AI_CI_Code=@AI_CI_Code"; db.Execute(sql, ai); } else { ai.Insert(); } var path = System.Configuration.ConfigurationManager.AppSettings["PLUploadPath"]; if (string.IsNullOrWhiteSpace(path)) { path = "~/plupload/"; } path = Server.MapPath(path); var path_save = path + "customer/"; var path_temp = path + "customer_temp/"; //添加图片 if (!string.IsNullOrWhiteSpace(c.CP_Picture_FN)) { string[] imgs = c.CP_Picture_FN.Split(','); foreach (var img in imgs) { if (!string.IsNullOrWhiteSpace(img)) { var _CT_Car_Picture = new CT_Car_Picture(); _CT_Car_Picture.CP_CI_Code = ci_code; _CT_Car_Picture.CP_Picture_FN = img; _CT_Car_Picture.CP_Update_dt = DateTime.Now; _CT_Car_Picture.Insert(); if (!Directory.Exists(path_save)) { Directory.CreateDirectory(path_save); } if (File.Exists(path_temp + img)) { File.Move(path_temp + img, path_save + img); } } } } if (!string.IsNullOrWhiteSpace(c.Picture_Removed)) { string[] imgs_removed = c.Picture_Removed.Split(','); foreach (var img in imgs_removed) { CT_Car_Picture.Delete("where [CP_Picture_FN]=@0", img); var imgPath = path_save + img; if (File.Exists(imgPath)) { File.Delete(imgPath); } } } tran.Complete(); Response.Write(JsonConvert.SerializeObject(new { CI_Code = ci_code, isOK = true })); } } catch (Exception ex) { db.AbortTransaction(); Response.Write(JsonConvert.SerializeObject(new { isOK = false, msg = ex.Message })); } }