/// <summary> /// 保存实体数据(新增、修改) /// </summary> /// <param name="keyValue">主键</param> /// <returns></returns> public void SaveEntity(string keyValue, Mes_SaleHeadEntity entity, List <Mes_SaleDetailEntity> detail) { var db = this.BaseRepository().BeginTrans(); try { if (!string.IsNullOrEmpty(keyValue)) { var mes_SaleHeadEntityTmp = GetMes_SaleHeadEntity(keyValue); entity.Modify(keyValue); db.Update(entity); db.Delete <Mes_SaleDetailEntity>(t => t.S_SaleNo == mes_SaleHeadEntityTmp.S_SaleNo); foreach (var item in detail) { item.Create(); item.S_SaleNo = mes_SaleHeadEntityTmp.S_SaleNo; } db.Insert(detail); } else { var dp = new DynamicParameters(new { }); dp.Add("@BillType", "原物料销售单"); dp.Add("@Doucno", "", DbType.String, ParameterDirection.Output); db.ExecuteByProc("sp_GetDoucno", dp); var billNo = dp.Get <string>("@Doucno");//存储过程返回单号 entity.S_SaleNo = billNo; entity.Create(); db.Insert(entity); foreach (var item in detail) { item.Create(); item.S_SaleNo = entity.S_SaleNo; } db.Insert(detail); } db.Commit(); } catch (Exception ex) { db.Rollback(); if (ex is ExceptionEx) { throw; } else { throw ExceptionEx.ThrowServiceException(ex); } } }
/// <summary> /// 保存实体数据(新增、修改) /// </summary> /// <param name="keyValue">主键</param> /// <returns></returns> public void SaveEntity(string keyValue, Mes_SaleHeadEntity entity, List <Mes_SaleDetailEntity> detail) { try { mes_SaleManagerService.SaveEntity(keyValue, entity, detail); } catch (Exception ex) { if (ex is ExceptionEx) { throw; } else { throw ExceptionEx.ThrowBusinessException(ex); } } }