lixiaojun
2024-06-02 1485ae366d837f9df65405636123ba56a638b731
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
namespace Yw.DAL.PostgreSql
{
    /// <summary>
    /// 
    /// </summary>
    public partial class SysUnitValue : BaseDAL_Code_Sorter<Entity.SysUnitValue>, ISysUnitValue
    {
        /// <summary>
        /// 
        /// </summary>
        public override ConnectionConfig ConnectionConfig
        {
            get { return ConfigHelper.PostgreSqlConnectionConfig; }
 
        }
 
 
        /// <summary>
        /// 通过 TypeID 获取
        /// </summary>
        public List<Entity.SysUnitValue> GetByTypeID(long TypeID)
        {
            using (SqlSugarClient db = new(ConnectionConfig))
            {
                return db.Queryable<Entity.SysUnitValue>()
                    .Where(x => x.TypeID == TypeID)
                    .OrderBy(x => x.SortCode).ToList();
            }
        }
 
        /// <summary>
        /// 通过 ID 删除(重写是为了清除关联的单位名称和单位转换)
        /// </summary>
        public override bool DeleteByID(long ID)
        {
            using (var db = new SqlSugarClient(ConnectionConfig))
            {
                try
                {
                    db.BeginTran();
                    var bol = db.Deleteable<Entity.SysUnitValue>().Where(x => x.ID == ID)
                        .ExecuteCommandHasChange();
                    if (!bol)
                    {
                        db.RollbackTran();
                        return false;
                    }
                    db.Deleteable<Entity.SysUnitName>().Where(x => x.ValueID == ID).ExecuteCommandHasChange();
                    db.Deleteable<Entity.SysUnitTransfer>().Where(x => x.FromValueID == ID || x.ToValueID == ID).ExecuteCommandHasChange();
                    db.CommitTran();
                    return true;
                }
                catch
                {
                    db.RollbackTran();
                    throw;
                }
            }
        }
 
 
 
 
    }
}