/// <summary> /// /// </summary> /// <param name="info"></param> /// <returns></returns> public long InsertInfo(RouteMidInfo info) { int cnt = dal.GetCounts("[ROUTE_FID] = N'" + info.RouteFid.GetValueOrDefault() + "' and [WM_NO] = N'" + info.WmNo + "' and [ZONE_NO] = N'" + info.ZoneNo + "'"); if (cnt > 0) { throw new Exception("MC:0x00000325");///同一路径下地点不能重复 } return(dal.Add(info)); }
/// <summary> /// /// </summary> /// <param name="info"></param> /// <returns></returns> public long InsertInfo(RouteInfo info) { ///路径代码、路径名称单字段全表范围不允许重复 int routeCnt = dal.GetCounts("[ROUTE] = N'" + info.Route + "'"); if (routeCnt > 0) { throw new Exception("MC:0x00000666");///路径代码重复 } int routeNameCnt = dal.GetCounts("[ROUTE_NAME] = N'" + info.RouteName + "'"); if (routeNameCnt > 0) { throw new Exception("MC:0x00000312");///路径名称重复 } ///是否启用路径中途点配置 string routeMidEnableFlag = new ConfigDAL().GetValueByCode("ROUTE_MID_ENABLE_FLAG"); RouteMidInfo routeMidInfo = null; RouteMidInfo routeMid = null; if (routeMidEnableFlag.ToLower() == "true") { //if (info.SZoneNo == info.TZoneNo) // throw new Exception("MC:0x00000323");///出发与目的不能是同一地点 ///出发地 routeMidInfo = new RouteMidInfo(); //routeMidInfo.WmNo = info.SWmNo; //routeMidInfo.ZoneNo = info.SZoneNo; routeMidInfo.MidSeq = 0; routeMidInfo.ArriveTime = 0; routeMidInfo.RouteFid = info.Fid.GetValueOrDefault(); routeMidInfo.ValidFlag = true; routeMidInfo.CreateUser = info.CreateUser; routeMidInfo.Fid = Guid.NewGuid(); routeMidInfo.CreateDate = DateTime.Now; ///目的地 routeMid = new RouteMidInfo(); //routeMid.WmNo = info.wm; //routeMid.ZoneNo = info.TZoneNo; routeMid.MidSeq = 1000; routeMid.ArriveTime = 0; routeMid.RouteFid = info.Fid.GetValueOrDefault(); routeMid.ValidFlag = true; routeMid.CreateUser = info.CreateUser; routeMid.Fid = Guid.NewGuid(); routeMid.CreateDate = DateTime.Now; } using (var trans = new TransactionScope()) { info.Id = dal.Add(info); if (info.Id == 0) { return(0); } if (routeMidInfo != null) { routeMidInfo.Id = new RouteMidDAL().Add(routeMidInfo); if (routeMidInfo.Id == 0) { return(0); } } if (routeMid != null) { routeMid.Id = new RouteMidDAL().Add(routeMid); if (routeMid.Id == 0) { return(0); } } trans.Complete(); } return(info.Id); }