删除数据 电脑版发表于:2022/11/16 17:36 #region 删除 /// <summary> /// 删除 /// </summary> [Route("Delete")] [HttpPost] [AdviceWebApi] public HttpResponseMessage Delete() { var response = Request.GetData(out var data); if (response != null) return response; var query = DataUtility.JsonToObject<Query>(data); var service = new TaxRegisterMasterService(); service.DeleteByMasterId(query.Id); return Request.CreateSuccessResponse(); } #endregion #region 删除一条数据 /// <summary> /// 删除一条数据 /// </summary> public void DeleteByMasterId(int id) { if (id <= 0) return; dal.DeleteByMasterId(id); } #endregion #region 删除一条数据 /// <summary> /// 删除一条数据 /// </summary> public void DeleteByMasterId(int id, JCPX.DB.Database db = null) { if (id <= 0) return; var sql = new SQLCreator(XmlPath, "DeleteByMasterId").GetSql(); if (string.IsNullOrWhiteSpace(sql)) return; var newSql = sql.Replace("--{Id}", id.ToString()); if (db == null) { db = DbUtility.CreateDatabase(); db.ExecuteSqlsWithTrans(() => { //读取原始数据 var sourceData = SelectSingleByPK(id, db); if (sourceData == null) { throw new Exception("当前所要删除的数据不存在或已被删除。"); } BeforeDelete(db, id); JCPX.DAL.DbUtility.CreateDatabase(db) .CreateSqlCommand(newSql) .ExecuteNonQuery(db); AfterDelete(db, id); //写入日志 JCPX.DAL.Admin.LogRepository logRepository = new JCPX.DAL.Admin.LogRepository(); logRepository.Add(db, id, "TaxRegisterMaster", JCPX.Common.OperationType.删除, sourceData, UserId, UserName); }); } else { BeforeDelete(db, id); JCPX.DAL.DbUtility.CreateDatabase(db) .CreateSqlCommand(newSql) .ExecuteNonQuery(db); AfterDelete(db, id); } } #endregion