VueWebCoreApi/DLL/DAL/BasicSettingDAL.cs
@@ -3011,10 +3011,10 @@
            try
            {
                //获取开启仓位管控的仓库信息
                sql = @"select S.code,S.name,'-1' as idparent   from TSecStck S where S.ishasPosition='1'
                       union all
                       select L.code,L.name,case when L.idparent is NULL or L.idparent='' then L.idwarehouse else L.idparent end as idparent
                       from TSecLoca L ";
                sql = @"select S.code,S.name,'-1' as idparent,S.code as warhouse   from TSecStck S where S.ishasPosition='1'
                        union all
                        select L.code,L.name,case when L.idparent is NULL or L.idparent='' then L.idwarehouse else L.idparent end as idparent,L.idwarehouse as warhouse
                        from TSecLoca L ";
                var data = DapperHelper.selecttable(sql);
                mes.code = "200";
                mes.Message = "查询成功!";
@@ -3032,18 +3032,32 @@
        #endregion
        #region[仓位信息列表]
        public static ToMessage TSecLocaData(string stckcode, string locacode, string locaname, int startNum, int endNum, string prop, string order)
        public static ToMessage TSecLocaData(string flag, string stckcode, string locacode, string locaname, int startNum, int endNum, string prop, string order)
        {
            var dynamicParams = new DynamicParameters();
            string search = "", sql = "";
            IEnumerable<object> data;
            try
            {
                if (stckcode != "" && stckcode != null)
                if (flag == "Y")
                {
                    string[] classcode = Array.ConvertAll<string, string>(stckcode.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries), s => s.ToString()); //string分割转string[]
                    search += "and C.idparent in @classcode ";
                    dynamicParams.Add("@classcode", classcode);
                    if (stckcode != "" && stckcode != null)
                    {
                        string[] classcode = Array.ConvertAll<string, string>(stckcode.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries), s => s.ToString()); //string分割转string[]
                        search += "and C.idparent in @classcode ";
                        dynamicParams.Add("@classcode", classcode);
                    }
                }
                if (flag == "N")
                {
                    if (stckcode != "" && stckcode != null)
                    {
                        string[] classcode = Array.ConvertAll<string, string>(stckcode.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries), s => s.ToString()); //string分割转string[]
                        search += "and C.idparent in @classcode and C.endpnt=@endpnt";
                        dynamicParams.Add("@classcode", classcode);
                        dynamicParams.Add("@endpnt", classcode);
                    }
                }
                if (locacode != "" && locacode != null)
                {
@@ -3055,10 +3069,10 @@
                    search += "and C.name like '%'+@locaname+'%' ";
                    dynamicParams.Add("@locaname", locaname);
                }
                sql = @"select C.code,C.name,C.status,C.description,C.idwarehouse as stckcode,T.name as stckname,C.idparent as parentcode,L.name as parentname,
                sql = @"select C.code,C.name,C.status,C.description,C.idwarehouse as stckcode,T.name as stckname,C.idparent as parentcode,L.name as parentname,C.endpnt,
                        C.lm_user as usercode,U.username,C.lm_date,C.data_sources   
                        from (
                        select L.code,L.name,L.idwarehouse,L.status,L.description,L.lm_user,L.lm_date,L.data_sources,case when L.idparent is NULL or L.idparent='' then L.idwarehouse else L.idparent end as idparent
                        select L.code,L.name,L.idwarehouse,L.status,L.description,L.lm_user,L.lm_date,L.data_sources,case when L.idparent is NULL or L.idparent='' then L.idwarehouse else L.idparent end as idparent,L.idparent as endpnt
                        from TSecLoca L
                        ) as C
                        left join TSecStck T  on C.idwarehouse=T.code
@@ -3157,6 +3171,15 @@
                }
                if (OperType == "Update")
                {
                    //判断上级货位编码是否等于货位编码
                    if (locacode == parentlocacode)
                    {
                        mes.code = "300";
                        mes.count = 0;
                        mes.Message = "上级货位不能是库位本身!";
                        mes.data = null;
                        return mes;
                    }
                    //判断往来单位名称是否重复
                    sql = @"select *  from TSecLoca where  code<>@code and name=@name";
                    dynamicParams.Add("@code", locacode);