kazelee
15 小时以前 0ed390381862dea0c7fd0210d16017eb09f12da4
wms/DbExpr.cs
@@ -24,12 +24,14 @@
        ///   && areas.Contains(l.S_AREA_CODE)
        ///   && l.N_CURRENT_NUM == curNum
        /// ]]></code></remarks>
        /// <param name="lock"></param>
        /// <param name="name"></param>
        /// <param name="areas"></param>
        /// <param name="curNum"></param>
        /// <param name="lock">锁状态 ( 小于 0 时忽略 )</param>
        /// <param name="name">货位名称 ( 为 null 或 "" 时忽略 )</param>
        /// <param name="areas">所在库区列表 ( 为 null 或 [] 时忽略 )</param>
        /// <param name="curNum">当前数量 ( 小于 0 时忽略 )</param>
        /// <returns></returns>
        public static Expression<Func<TN_Location, bool>> LocFilter(int @lock, string name, List<string> areas, int curNum) {
        public static Expression<Func<TN_Location, bool>> LocFilter(int @lock = 0, string name = "",
            List<string> areas = null, int curNum = -1) {
            Expression<Func<TN_Location, bool>> expr = l => l.C_ENABLE == "Y"; // 已启用
            if (@lock >= 0) {
@@ -63,8 +65,8 @@
        ///   && areas.Contains(l.S_AREA_CODE)
        ///   && l.N_CURRENT_NUM == 0
        /// ]]></code></remarks>
        /// <param name="name"></param>
        /// <param name="areas"></param>
        /// <param name="name">货位名称 ( 为 null 或 "" 时忽略 )</param>
        /// <param name="areas">所在库区列表 ( 为 null 或 [] 时忽略 )</param>
        /// <returns></returns>
        public static Expression<Func<TN_Location, bool>> StartLocUnbind(string name = "", List<string> areas = null) {
            return LocFilter(0, name, areas, 0);
@@ -80,11 +82,12 @@
        ///   && areas.Contains(l.S_AREA_CODE)
        ///   && l.N_CURRENT_NUM == 1
        /// ]]></code></remarks>
        /// <param name="name"></param>
        /// <param name="areas"></param>
        /// <param name="name">货位名称 ( 为 null 或 "" 时忽略 )</param>
        /// <param name="areas">所在库区列表 ( 为 null 或 [] 时忽略 )</param>
        /// <param name="curNum">当前数量 ( 小于 0 时忽略 )</param>
        /// <returns></returns>
        public static Expression<Func<TN_Location, bool>> StartLoc(string name = "", List<string> areas = null) {
            return LocFilter(0, name, areas, 1);
        public static Expression<Func<TN_Location, bool>> StartLoc(string name = "", List<string> areas = null, int curNum = 1) {
            return LocFilter(0, name, areas, curNum);
        }
        /// <summary>
@@ -97,11 +100,12 @@
        ///   && areas.Contains(l.S_AREA_CODE)
        ///   && l.N_CURRENT_NUM == 0
        /// ]]></code></remarks>
        /// <param name="name"></param>
        /// <param name="areas"></param>
        /// <param name="name">货位名称 ( 为 null 或 "" 时忽略 )</param>
        /// <param name="areas">所在库区列表 ( 为 null 或 [] 时忽略 )</param>
        /// <param name="curNum">当前数量 ( 小于 0 时忽略 )</param>
        /// <returns></returns>
        public static Expression<Func<TN_Location, bool>> EndLoc(string name = "", List<string> areas = null) {
            return LocFilter(0, name, areas, 0);
        public static Expression<Func<TN_Location, bool>> EndLoc(string name = "", List<string> areas = null, int curNum = 0) {
            return LocFilter(0, name, areas, curNum);
        }
    }
}