schangxiang@126.com
2025-11-04 f5ed29dc26c7cd952d56ec5721a2efc43cd25992
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
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
using DataEntity;
using DataRWDAL;
using DataRWDAL.Base;
using HxEnum;
using MySql.Data.MySqlClient;
using DataEntity;
using DataRWDAL;
using DataRWDAL.Base;
using HxEnum;
using MySql.Data.MySqlClient;
using SqlSugar;
using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Data;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using XCommon.Log;
using XCommon.MySql;
 
namespace XImagingXhandler.XDAL
{
    /// <summary>
    /// 台面模板与夹爪关联操作类
    /// </summary>
    public class TabletopRelGripperDB:BaseDB
    {
        #region 删除某台面模板内的所有夹爪板位数据
        /// <summary>
        /// 删除某台面模板内的所有夹爪板位数据
        /// </summary>
        /// <param name="tabletopid">台面模板Id</param>
        /// <returns>1成功;0:失败;</returns>
        public static int DeleteTabletopRelGripperIntodb(string tabletopid)
        {
            using (var db = GetInstance())
            {
                var query = db.Queryable<TabletopRelGripper>().Where(it => it.tabletopid.Equals(tabletopid)).ToList();
                if (query != null && query.Count() > 0)
                {
                    foreach (var item in query)
                    {
                        DeleteGripperLatticeFromdb(item.gripper_lattice_id);
                    }
                }
 
                return db.Deleteable<TabletopRelGripper>(new TabletopRelGripper() { tabletopid = tabletopid }).ExecuteCommand();
            }
        }
        #endregion
 
        #region 删除指定的台面模板内的夹爪数据
        /// <summary>
        /// 删除指定的台面模板内的夹爪数据
        /// </summary>
        /// <param name="gripper_lattice_id">夹爪板位 Id</param>
        /// <returns>1:成功;0:失败;</returns>
        public static int DeleteGripperLatticeFromdb(int gripper_lattice_id)
        {
            using (var db = GetInstance())
            {
                return db.Deleteable<GripperCoordinate>(new GripperCoordinate() { gripper_lattice_id = gripper_lattice_id }).ExecuteCommand();
            }
        }
        #endregion
 
        #region 获取当前最大的台面夹爪板位Id
        /// <summary>
        /// 获取当前最大的台面夹爪板位Id
        /// </summary>
        /// <returns>最大板位Id</returns>
        public static int GetMaxGripperLattceId()
        {
            using (var db = GetInstance())
            {
                return db.Queryable<GripperCoordinate>().ToList().Count;
            }
        }
        #endregion
 
        #region 批量添加夹爪板位数据
        /// <summary>
        /// 批量添加夹爪板位数据
        /// </summary>
        /// <param name="gripperCoordinates">夹爪板位对象集</param>
        /// <param name="startGripperLatticeid">开始夹爪板位Id</param>
        /// <param name="tabletopId">台面模板Id</param>
        /// <returns></returns>
        public static int AddGripperLatticeIntodb(List<GripperCoordinate> gripperCoordinates, int startGripperLatticeid, string tabletopId)
        {
            using (var db = GetInstance())
            {
                int sum = 0;//执行的总数
                for (int i = 0; i < gripperCoordinates.Count; i++)
                {
 
                    gripperCoordinates[i].gripper_lattice_id = startGripperLatticeid + i;
                    db.Insertable<Lattice>(gripperCoordinates[i]).ExecuteCommand();
                    db.Insertable<TabletopRelGripper>(new TabletopRelGripper() { gripper_lattice_id = (startGripperLatticeid + i), tabletopid = tabletopId }).ExecuteCommand();
                    sum++;
                }
 
                if (sum == gripperCoordinates.Count)
                {
                    return 1;
                }
 
                return 0;
            }
        }
        #endregion
    }
}