From 6b2ec7bd05459ddb4ea99df00267dbfda49cbdc7 Mon Sep 17 00:00:00 2001
From: wxw <Administrator@DESKTOP-5BIMHQ3>
Date: 星期日, 03 八月 2025 14:11:12 +0800
Subject: [PATCH] 设备控制增加电量显示
---
Admin.NET/WCS.Application/Configuration/Database.json | 1
Admin.NET/WCS.Application/Service/WcsPlc/WcsPlcService.cs | 33 ++++++++++++++++
Web/src/api/wcs/wcsDevice.ts | 9 ++++
Web/src/views/device/deviceStartStop/index.vue | 28 ++++++++++++-
4 files changed, 68 insertions(+), 3 deletions(-)
diff --git a/Admin.NET/WCS.Application/Configuration/Database.json b/Admin.NET/WCS.Application/Configuration/Database.json
index ec225b1..b273893 100644
--- a/Admin.NET/WCS.Application/Configuration/Database.json
+++ b/Admin.NET/WCS.Application/Configuration/Database.json
@@ -12,6 +12,7 @@
//"ConnectionString": "Server=localhost;Database=xxx;Uid=xxx;Pwd=xxx;SslMode=None;", // MySql 搴撹繛鎺ュ瓧绗︿覆",
//"ConnectionString": "User Id=xxx; Password=xxx; Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=localhost)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=ORCL)))", // Oracle 搴撹繛鎺ュ瓧绗︿覆
"ConnectionString": "Server=10.26.200.29;Database=WCS_JC34;User Id=sa;Password=boxline@2016;", // SqlServer 搴撹繛鎺ュ瓧绗︿覆
+ //"ConnectionString": "Server=192.168.62.200;Database=WCS_JC34;User Id=sa;Password=sql2019;", // SqlServer 搴撹繛鎺ュ瓧绗︿覆
//"SlaveConnectionConfigs": [ // 璇诲啓鍒嗙/涓讳粠
diff --git a/Admin.NET/WCS.Application/Service/WcsPlc/WcsPlcService.cs b/Admin.NET/WCS.Application/Service/WcsPlc/WcsPlcService.cs
index f118c60..8555912 100644
--- a/Admin.NET/WCS.Application/Service/WcsPlc/WcsPlcService.cs
+++ b/Admin.NET/WCS.Application/Service/WcsPlc/WcsPlcService.cs
@@ -11,6 +11,7 @@
{
private readonly SqlSugarRepository<WcsPlc> _wcsPlcRep;
private readonly SysCacheService _sysCacheService;
+ private static readonly ISqlSugarClient _db = SqlSugarSetup.ITenant.GetConnectionScope(SqlSugarConst.MainConfigId);
public WcsPlcService(SqlSugarRepository<WcsPlc> wcsPlcRep, SysCacheService sysCacheService)
{
_wcsPlcRep = wcsPlcRep;
@@ -139,6 +140,38 @@
var modService = new { PLCTaskAction.boRunningState, PLCTaskAction.boOffline, PLCTaskAction.boRefresh, PLCTaskAction.boDemo, PLCTaskAction.boDrumReversal, PLCTaskAction.boOutLock, PLCTaskAction.boEnterLock };
return new { listPlc, modService };
}
+
+ [HttpGet]
+ [ApiDescriptionSettings(Name = "GetCarDL")]
+ [DisplayName("鑾峰彇绌挎杞︾數閲�")]
+ public async Task<dynamic> GetCarDL()
+ {
+ var listPlc = await _wcsPlcRep.AsQueryable()
+ .Where(s => s.Type == PLCTypeEnum.ShuttleCar)
+ .ToListAsync();
+
+ List<Dictionary<string, string>> _dicList = new List<Dictionary<string, string>>();
+ foreach (var modPlc in listPlc)
+ {
+ var modbus = new ModbusUtil(modPlc);
+ var listPlcDevice = _db.Queryable<WcsDevice>().First(s => s.PlcId == modPlc.Id);
+ var (result, value) = modbus.GetDBValue(listPlcDevice.PosType, listPlcDevice.PlcPos);
+ if (result.IsSucceed)
+ {
+ var listPlcStation = _db.Queryable<WcsPosition>().Where(s => s.DeviceId == modPlc.Id).ToList();
+ var modCarDl = listPlcStation.FirstOrDefault(s => s.Text == "鐢垫睜鐢甸噺");
+ var (resultDl, valueDl) = modbus.GetDBValue(modCarDl.PosType, modCarDl.PlcPos);
+ if (resultDl.IsSucceed)
+ {
+ Dictionary<string, string> _dic = new Dictionary<string, string>();
+ _dic.Add(modPlc.Text, valueDl);
+
+ _dicList.Add(_dic);
+ }
+ }
+ }
+ return new { _dicList };
+ }
/// <summary>
/// 鑾峰彇浣嶇疆淇℃伅
/// </summary>
diff --git a/Web/src/api/wcs/wcsDevice.ts b/Web/src/api/wcs/wcsDevice.ts
index d2b0fec..79a4583 100644
--- a/Web/src/api/wcs/wcsDevice.ts
+++ b/Web/src/api/wcs/wcsDevice.ts
@@ -21,6 +21,7 @@
WriteInfo = '/api/wcsDevice/WriteInfo',
WriteTaskInfo = '/api/wcsDevice/WriteTaskInfo',
WriteStartStop = '/api/wcsDevice/WriteStartStop',
+ GetCarDL = '/api/wcsPLC/GetCarDL',
}
// 澧炲姞璁惧淇℃伅
export const WriteLocationInfo = (params?: any) =>
@@ -58,6 +59,14 @@
data: params,
});
+export const GetCarDL = () =>
+ request({
+ url: Api.GetCarDL,
+ method: 'get',
+ data: {},
+ });
+
+
// 澧炲姞璁惧淇℃伅
export const addWcsDevice = (params?: any) =>
request({
diff --git a/Web/src/views/device/deviceStartStop/index.vue b/Web/src/views/device/deviceStartStop/index.vue
index c924ddd..427378a 100644
--- a/Web/src/views/device/deviceStartStop/index.vue
+++ b/Web/src/views/device/deviceStartStop/index.vue
@@ -5,15 +5,18 @@
<el-collapse-item title="浠撳簱涓�灞�" name="1">
<el-card class="box-card" shadow="hover">
<el-text style="margin-right: 15px;">1鍙风┛姊溅</el-text>
+ <el-text style="margin-right: 15px;">鐢甸噺锛歿{carDL1}}</el-text>
<el-button @click="write('ShuttleCar', '1', '41093', '1')">澶嶄綅</el-button>
<el-button @click="write('ShuttleCar', '1', '41096', '1')">姝e悜瀵荤爜</el-button>
<el-button @click="write('ShuttleCar', '1', '41096', '2')">鍙嶅悜瀵荤爜</el-button>
+
</el-card>
<el-card class="box-card" shadow="hover">
<el-text style="margin-right: 15px;">2鍙风┛姊溅</el-text>
+ <el-text style="margin-right: 15px;">鐢甸噺锛歿{carDL2}}</el-text>
<el-button @click="write('ShuttleCar', '2', '41093', '1')">澶嶄綅</el-button>
<el-button @click="write('ShuttleCar', '2', '41096', '1')">姝e悜瀵荤爜</el-button>
- <el-button @click="write('ShuttleCar', '2', '41096', '2')">鍙嶅悜瀵荤爜</el-button>
+ <el-button @click="write('ShuttleCar', '2', '41096', '2')">鍙嶅悜瀵荤爜</el-button>
</el-card>
</el-collapse-item>
</el-collapse>
@@ -45,12 +48,32 @@
import { ref, reactive, onMounted } from 'vue';
import { listStatus, listPosition } from '/@/api/wcs/wcsPlc';
-import { WriteStartStop } from '/@/api/wcs/wcsDevice';
+import { WriteStartStop,GetCarDL } from '/@/api/wcs/wcsDevice';
import { ElMessage } from "element-plus";
+const carDL1= ref<any>({});
+carDL1.value="鑾峰彇涓�..";
+const carDL2= ref<any>({});
+carDL2.value="鑾峰彇涓�..";
const activeNames = ref(['1'])
const activeNames2 = ref(['2'])
const state = ref<any>({});
+const handleQuery = async () => {
+ var resCar = await GetCarDL();
+ if (resCar.data.result._dicList && resCar.data.result._dicList.length > 0) {
+ resCar.data.result._dicList.forEach(car => {
+ const name = Object.keys(car)[0];
+ if(name=="绌挎杞�1"){
+ carDL1.value=car[name]+"%";
+ }
+ if(name=="绌挎杞�2"){
+ carDL2.value=car[name]+"%";
+ }
+ });
+ }
+};
+handleQuery();
+
const write = async (type: string, no: string, layer: string, FuncName: string) => {
@@ -60,7 +83,6 @@
Layer: layer,
FuncName: FuncName
};
-
var res = await WriteStartStop(data);
console.log(res.data.result);
// ElMessage.success(res.data.result);
--
Gitblit v1.8.0