示例#1
0
        /// <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));
        }
示例#2
0
        /// <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);
        }