100 lines
3.0 KiB
C#
100 lines
3.0 KiB
C#
using DataCheck;
|
||
using WcsMain.ApiServe.Controllers.Dto;
|
||
using WcsMain.ApiServe.Controllers.Dto.WcsDto.DB;
|
||
using WcsMain.ApiServe.Factory;
|
||
using WcsMain.DataBase.Dao;
|
||
using WcsMain.DataBase.TableEntity;
|
||
using WcsMain.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, "查询成功");
|
||
}
|
||
} |