using WcsMain.ExtendMethod; using WcsMain.DataBase.Dao; using WcsMain.DataBase.TableEntity; using WcsMain.Constant.WcsAttribute.AutoFacAttribute; using WcsMain.ApiServe.Factory; using DataCheck; using WcsMain.ApiServe.Dto; using WcsMain.ApiServe.Dto.WcsDto.Socket; namespace WcsMain.ApiServe.Service.WcsService; [Service] public class SocketService(AppTcpDao socketDao) { /// /// 查询 socket 连接信息 /// /// public WcsApiResponse> GetDB() { List? sockets = socketDao.Query(); if (sockets == default) { return WcsApiResponseFactory.DataBaseErr>(); } return WcsApiResponseFactory.Success(sockets, "查询成功"); } /// /// 编辑 或者 新增一条记录 /// /// /// public WcsApiResponse EditSocket(EditSocketRequest request) { bool checkRequest = CheckData.CheckDataRules(request); if (!checkRequest || request.IsEdite == default) { return WcsApiResponseFactory.RequestErr(); } if (!request.SocketNo.IsNumber() || request.IsEdite == default) { return WcsApiResponseFactory.RequestErr(); } int socketNo = Convert.ToInt32(request.SocketNo); if ((bool)request.IsEdite!) { // 更新现有记录 int socketStatus = request.SocketStatus.IsNumber() ? Convert.ToInt32(request.SocketStatus) : 0; /* 插入新记录 */ AppTcp socket = new() { TcpId = socketNo, TcpIp = request.SocketIpPort, TcpStatus = socketStatus, Remark = request.Remark, }; int updateRows = socketDao.Update(socket); return updateRows > 0 ? WcsApiResponseFactory.Success() : WcsApiResponseFactory.DataBaseErr(); } else { // 新增一条记录 /* 校验这个编号是否已经存在 */ List? checks = socketDao.Query(new AppTcp() { TcpId = socketNo }); if (checks == default) { return WcsApiResponseFactory.DataBaseErr(); } if (checks.Count > 0) { return WcsApiResponseFactory.DataRepetition("SocketNo重复,已经存在一个相同的编号"); } int socketStatus = request.SocketStatus.IsNumber() ? Convert.ToInt32(request.SocketStatus) : 0; /* 插入新记录 */ AppTcp socket = new() { TcpId = socketNo, TcpIp = request.SocketIpPort, TcpStatus = socketStatus, Remark = request.Remark, }; int insertRows = socketDao.Insert(socket); return insertRows > 0 ? WcsApiResponseFactory.Success() : WcsApiResponseFactory.DataBaseErr(); } } /// /// 删除一条记录 /// /// /// public WcsApiResponse DeleteSocket(string? socketNoStr) { if (!socketNoStr.IsNumber()) { return WcsApiResponseFactory.RequestErr(); } int socketNo = Convert.ToInt32(socketNoStr); int deleteRows = socketDao.Delete(new AppTcp() { TcpId = socketNo }); return deleteRows > 0 ? WcsApiResponseFactory.Success() : WcsApiResponseFactory.DataBaseErr(); } }