yl
2023-02-20 c952adfb606b5cfe4894746c7eac53b653e8d26b
VueWebApi/DLL/DAL/ProductModelDAL.cs
@@ -882,10 +882,10 @@
            var dynamicParams = new DynamicParameters();
            try
            {
                sql = @"select substring(version,charindex('V',version)+1,len(version)-charindex('V',version))+1 as version
                sql = @"select isnull(max(substring(version,charindex('V',version)+1,len(version)-charindex('V',version))),0)+1 as version
                        from TBom_Main where materiel_code=@parentpartcode";
                dynamicParams.Add("@parentpartcode", parentpartcode);
                var data = DapperHelper.selecttable(sql);
                var data = DapperHelper.selectdata(sql, dynamicParams);
                if (data.Rows.Count > 0)
                {
                    mes.code = "200";
@@ -925,8 +925,8 @@
                    string sql0 = @"select ISNULL(IDENT_CURRENT('TBom_Main')+1,1) as id";
                    var dt = DapperHelper.selecttable(sql0);
                    //写入BOM主表
                    sql = @"insert into TBom_Main(materiel_code,quantity,status,version,lm_user,lm_date)
                            values(@materiel_code,@quantity,@status,@version,@username,@CreateDate)";
                    sql = @"insert into TBom_Main(materiel_code,quantity,status,version,lm_user,lm_date,startdate)
                            values(@materiel_code,@quantity,@status,@version,@username,@CreateDate,@startdate)";
                    list.Add(new
                    {
                        str = sql,
@@ -937,7 +937,8 @@
                            status = status,
                            version = version,
                            username = username,
                            CreateDate = DateTime.Now.ToString()
                            CreateDate = DateTime.Now.ToString(),
                            startdate = startdate
                        }
                    });
                    //写入BOM子表
@@ -985,12 +986,12 @@
                        str = sql,
                        parm = new
                        {
                            id = bomid,
                            bomid = bomid,
                            materiel_code = parentpartcode,
                            quantity = quantity,
                            status = status,
                            username = username,
                            CreateDate = DateTime.Now.ToString()
                            lm_user = username,
                            lm_date = DateTime.Now.ToString()
                        }
                    });
                    //删除BOM子表
@@ -1000,7 +1001,7 @@
                        str = sql,
                        parm = new
                        {
                            id = bomid
                            bomid = bomid
                        }
                    });
                    //写入BOM子表
@@ -1058,6 +1059,18 @@
            var dynamicParams = new DynamicParameters();
            try
            {
                //判断物料类型是否有关联物料
                sql = @"select materiel_code from TK_Wrk_Man   where materiel_code in (select materiel_code from TBom_Main  where id=@bomid ) and bom_id=@bomid";
                dynamicParams.Add("@bomid", bomid);
                var data0 = DapperHelper.selectdata(sql, dynamicParams);
                if (data0.Rows.Count > 0)
                {
                    mes.code = "300";
                    mes.count = 0;
                    mes.Message = "当前物料清单已被工单关联使用,不允许修改!";
                    mes.data = null;
                    return mes;
                }
                //获取Bom子表数据
                sql = @"select A.seq,B.partcode,B.partname,B.partspec,B.uom_code,T.name as uom_name,
                         A.base_quantity,A.loss_quantity,A.total_quantity,A.pn_type   
@@ -1070,6 +1083,62 @@
                mes.code = "200";
                mes.Message = "查询成功!";
                mes.data = data;
            }
            catch (Exception e)
            {
                mes.code = "300";
                mes.count = 0;
                mes.Message = e.Message;
                mes.data = null;
            }
            return mes;
        }
        #endregion
        #region[物料清单删除]
        public static ToMessage DeleteBoIventory(string bomid)
        {
            var sql = "";
            List<object> list = new List<object>();
            var dynamicParams = new DynamicParameters();
            try
            {
                list.Clear();
                //判断物料类型是否有关联物料
                sql = @"select materiel_code from TK_Wrk_Man   where materiel_code in (select materiel_code from TBom_Main  where id=@bomid ) and bom_id=@bomid";
                dynamicParams.Add("@bomid", bomid);
                var data = DapperHelper.selectdata(sql, dynamicParams);
                if (data.Rows.Count > 0)
                {
                    mes.code = "300";
                    mes.count = 0;
                    mes.Message = "当前物料清单已被工单关联使用,不允许删除!";
                    mes.data = null;
                }
                else
                {
                    //删除物料清单子表
                    sql = @"delete TBom_Deta where m_id=@bomid";
                    list.Add(new { str = sql, parm = new { bomid = bomid } });
                    //删除物料清单主表
                    sql = @"delete TBom_Main where id=@bomid";
                    list.Add(new { str = sql, parm = new { bomid = bomid } });
                    bool aa = DapperHelper.DoTransaction(list);
                    if (aa)
                    {
                        mes.code = "200";
                        mes.count = 0;
                        mes.Message = "删除成功!";
                        mes.data = null;
                    }
                    else
                    {
                        mes.code = "300";
                        mes.count = 0;
                        mes.Message = "删除失败!";
                        mes.data = null;
                    }
                }
            }
            catch (Exception e)
            {
@@ -1259,6 +1328,18 @@
            var dynamicParams = new DynamicParameters();
            try
            {
                //判断工艺路路线是否被存货绑定
                sql = @"select *   from TMateriel_Route where route_code=@routecode";
                dynamicParams.Add("@routecode", routecode);
                var data_0 = DapperHelper.selectdata(sql, dynamicParams);
                if (data_0.Rows.Count > 0)
                {
                    mes.code = "300";
                    mes.count = 0;
                    mes.Message = "存货档案已关联工艺路线,不允许删除!";
                    mes.data = null;
                    return mes;
                }
                //判断工艺路线是否被工单引用(被引用则不能删除)
                sql = @"select *   from TK_Wrk_Man where route_code=@routecode";
                dynamicParams.Add("@routecode", routecode);
@@ -1269,6 +1350,7 @@
                    mes.count = 0;
                    mes.Message = "工艺路线已被工单引用,不允许删除!";
                    mes.data = null;
                    return mes;
                }
                else
                {
@@ -1282,6 +1364,7 @@
                        mes.count = 0;
                        mes.Message = "工艺路线已设置节拍工价,请先删除设置!";
                        mes.data = null;
                        return mes;
                    }
                    else
                    {
@@ -1295,21 +1378,23 @@
                        sql = @"delete TMateriel_Route  where route_code=@routecode";
                        list.Add(new { str = sql, parm = new { routecode = routecode } });
                    }
                }
                bool aa = DapperHelper.DoTransaction(list);
                if (aa)
                {
                    mes.code = "200";
                    mes.count = 0;
                    mes.Message = "删除成功!";
                    mes.data = null;
                }
                else
                {
                    mes.code = "300";
                    mes.count = 0;
                    mes.Message = "删除失败!";
                    mes.data = null;
                    bool aa = DapperHelper.DoTransaction(list);
                    if (aa)
                    {
                        mes.code = "200";
                        mes.count = 0;
                        mes.Message = "删除成功!";
                        mes.data = null;
                        return mes;
                    }
                    else
                    {
                        mes.code = "300";
                        mes.count = 0;
                        mes.Message = "删除失败!";
                        mes.data = null;
                        return mes;
                    }
                }
            }
            catch (Exception e)
@@ -1318,6 +1403,7 @@
                mes.count = 0;
                mes.Message = e.Message;
                mes.data = null;
                return mes;
            }
            return mes;
        }