Product_Wms/WcsMain/ApiServe/Service/WcsService/PlcDbService.cs
icewint 03c600bc70 1、修改文件结构
2、删除不使用的 using
2024-11-15 11:38:01 +08:00

100 lines
3.0 KiB
C#
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

using DataCheck;
using WcsMain.ApiServe.Dto;
using WcsMain.ApiServe.Dto.WcsDto.DB;
using WcsMain.ApiServe.Factory;
using WcsMain.DataBase.Dao;
using WcsMain.DataBase.TableEntity;
using WcsMain.Constant.WcsAttribute.AutoFacAttribute;
namespace WcsMain.ApiServe.Service.WcsService;
[Service]
public class PlcDbService(AppDBDao dBDao)
{
/// <summary>
/// 查询所有的Db地址信息
/// </summary>
/// <returns></returns>
public WcsApiResponse<List<AppDB>> GetDB()
{
List<AppDB>? dbs = dBDao.Select();
if(dbs == default)
{
return WcsApiResponseFactory.DataBaseErr<List<AppDB>>();
}
return WcsApiResponseFactory.Success(dbs, "查询成功");
}
/// <summary>
/// 添加修改db
/// </summary>
/// <param name="request"></param>
/// <returns></returns>
public WcsApiResponse EditePlc(EditeDBRequest request)
{
bool checkData = CheckData.CheckDataRules(request);
if (!checkData)
{
return WcsApiResponseFactory.RequestErr();
}
AppDB db = new()
{
PlcId = Convert.ToInt32(request.PlcId),
DBName = request.DbName,
DBAddress = request.DbAddress,
IsSystem = request.IsSystem,
Remark = request.Remark
};
List<AppDB>? dBs = dBDao.Select(new AppDB { DBName = request.DbName});
if(dBs == default)
{
return WcsApiResponseFactory.DataBaseErr();
}
if (dBs.Count > 0)
{
// 修改信息
var result = dBDao.Update(db);
return result > 0 ? WcsApiResponseFactory.Success() : WcsApiResponseFactory.DataBaseErr();
}
else
{
// 添加信息
var result = dBDao.Insert(db);
return result > 0 ? WcsApiResponseFactory.Success() : WcsApiResponseFactory.DataBaseErr();
}
}
/// <summary>
/// 删除DB信息
/// </summary>
/// <param name="dbName"></param>
/// <returns></returns>
public WcsApiResponse DeleteDB(string? dbName)
{
if (string.IsNullOrEmpty(dbName))
{
return WcsApiResponseFactory.RequestErr();
}
var result = dBDao.Delete(new AppDB() { DBName = dbName });
return result > 0 ? WcsApiResponseFactory.Success() : WcsApiResponseFactory.DataBaseErr();
}
/// <summary>
/// 查询 PLCDB地址同时返回PLC名称
/// </summary>
/// <param name="request"></param>
/// <returns></returns>
public WcsApiResponse<List<GetDBWithPlcNameResponse>> GetDBWithPlcName(GetDBWithPlcNameRequest request)
{
List<GetDBWithPlcNameResponse>? dbs = dBDao.QueryWithPlcName(new AppDB { PlcId = request.PlcId, DBName = request.DBName });
if (dbs == default)
{
return WcsApiResponseFactory.DataBaseErr<List<GetDBWithPlcNameResponse>>();
}
return WcsApiResponseFactory.Success(dbs, "查询成功");
}
}