VueWebCoreApi/DLL/DAL/ProductModelDAL.cs
@@ -1352,6 +1352,7 @@
                    parents[i].children = children.ToList();
                }
                mes.code = "200";
                mes.count = total;
                mes.message = "查询成功!";
                mes.data = parents;
            }
@@ -1847,7 +1848,100 @@
        #region[物料清单删除提交-T+畅捷通模式]
        public static ToMessage TBomDelete(BomDate bom, User us)
        {
            throw new NotImplementedException();
            string sql = "";
            List<object> list = new List<object>();
            var dynamicParams = new DynamicParameters();
            try
            {
                //查询当前删除物料清单父件编码非本次是否存在多个版本,存在多个版本时,如果当前是默认BOM则不允许删除
                sql = @"select *   from TBom_Main S where  S.materiel_code=@materiel_code and version<>@version";
                dynamicParams.Add("@materiel_code", bom.materiel_code);
                dynamicParams.Add("@version", bom.version);
                var data1 = DapperHelper.selectdata(sql, dynamicParams);
                if (data1.Rows.Count > 0)
                {
                    if (bom.isdefaultbom == "1")
                    {
                        mes.code = "300";
                        mes.count = 0;
                        mes.message = "[" + bom.materiel_name + "-" + bom.version + "]默认BOM不允许删除!";
                        mes.data = null;
                        return mes;
                    }
                }
                //查询当前删除物料清单父件编码(ID)在物料清单子表中是否存在
                sql = @"select *   from TBom_Deta S
                        left join TMateriel_Info M on S.materiel_code=M.partcode
                        where  S.materiel_code=@materiel_code";
                dynamicParams.Add("@materiel_code", bom.materiel_code);
                var data0 = DapperHelper.selectdata(sql, dynamicParams);
                if (data0.Rows.Count > 0)
                {
                    mes.code = "300";
                    mes.count = 0;
                    mes.message = "[" + data0.Rows[0]["partname"].ToString() + "-"+bom.version+ "]已使用的记录不允许删除![物料清单子件]";
                    mes.data = null;
                    return mes;
                }
                //查询当前删除的物料清单父件编码(ID)是否被工单引用
                sql = @"select *  from TK_Wrk_Man where  bom_id=@bom_id";
                dynamicParams.Add("@bom_id", bom.id);
                var data_1 = DapperHelper.selectdata(sql, dynamicParams);
                if (data_1.Rows.Count > 0)
                {
                    mes.code = "300";
                    mes.count = 0;
                    mes.message = "当前前BOM已经被工单引用,不可删除!";
                    mes.data = null;
                    return mes;
                }
                //删除物料清单子表
                sql = @"delete TBom_Deta  where m_id=@m_id";
                list.Add(new
                {
                    str = sql,
                    parm = new
                    {
                        m_id = bom.id
                    }
                });
                //删除物料清单主表
                sql = @"delete TBom_Main  where id=@id";
                list.Add(new
                {
                    str = sql,
                    parm = new
                    {
                        id = bom.id
                    }
                });
                bool aa = DapperHelper.DoTransaction(list);
                if (aa)
                {
                    //写入操作记录表
                    LogHelper.DbOperateLog(us.usercode, "删除", "删除了物料清单:" + bom.materiel_code + ",版本号为:" + bom.version, us.usertype);
                    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)
            {
                mes.code = "300";
                mes.count = 0;
                mes.message = e.Message;
                mes.data = null;
            }
            return mes;
        }
        #endregion