yanjinhui
2 天以前 74907784c7005b7307b690d010ce6f8292e0dc9b
修改单机版bug

修改了强制下线逻辑,管理员了组长都可以强制下线
已修改6个文件
75 ■■■■ 文件已修改
项目代码/后端/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemServices/Sys_RoleService.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
项目代码/后端/WCS/WIDESEAWCS_Server/WIDESEAWCS_TelescopicService/MaintenanceService.cs 27 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
项目代码/后端/WCS/WIDESEAWCS_Server/WIDESEAWCS_TelescopicService/ParametersService.cs 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
项目代码/后端/后台管理/WIDESEAWCS_Server/WIDESEAWCS_ITelescopicService/IParametersService.cs 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
项目代码/后端/后台管理/WIDESEAWCS_Server/WIDESEAWCS_Server/Controllers/Telescopic/ParametersController.cs 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
项目代码/后端/后台管理/WIDESEAWCS_Server/WIDESEAWCS_TelescopicService/ParametersService.cs 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ÏîÄ¿´úÂë/ºó¶Ë/WCS/WIDESEAWCS_Server/WIDESEAWCS_SystemServices/Sys_RoleService.cs
@@ -118,7 +118,7 @@
        /// <summary>
        /// èŽ·å–è§’è‰²æ˜¯å¦å¯è¿›å…¥æ“ä½œé¡µé¢
        /// èŽ·å–è§’è‰²æ˜¯å¦å¯è¿›å…¥æ“ä½œé¡µé¢ï¼ˆæƒé™ï¼‰
        /// </summary>
        /// <param name="roleId"></param>
        /// <returns></returns>
ÏîÄ¿´úÂë/ºó¶Ë/WCS/WIDESEAWCS_Server/WIDESEAWCS_TelescopicService/MaintenanceService.cs
@@ -16,6 +16,8 @@
using SqlSugar.DistributedSystem.Snowflake;
using System.IO;
using System.Net;
using OfficeOpenXml.FormulaParsing.Excel.Functions.Math;
using WIDESEAWCS_Common;
namespace WIDESEAWCS_TelescopicService
{
@@ -259,12 +261,17 @@
                {
                    return new WebResponseContent { Status = false, Message = "当前登录用户无效" };
                }
                // 3. æƒé™æ£€æŸ¥ï¼šå½“前用户是 admin æˆ– å½“前用户是组长(IsLeader == 1)
                bool isAdmin = account == "admin";
                // 3. æƒé™æ£€æŸ¥ï¼šå½“前用户是 admin(管理员) æˆ– å½“前用户是组长(IsLeader == 1)
                //bool isAdmin = account == "admin";
                var   isState = currentUser.Role_Id=1; //检查是不是管理员角色(管理员角色ID为1)
                bool isLeader = currentUser.IsLeader == 1;  // å‡è®¾ Sys_User è¡¨æœ‰ IsLeader å­—段
                if (!isAdmin && !isLeader)
                //if (!isAdmin && !isLeader)
                //{
                //    return new WebResponseContent { Status = false, Message = "你没有权限强制下线" };
                //}
                if (isState != 1 && !isLeader)
                {
                    return new WebResponseContent { Status = false, Message = "你没有权限强制下线" };
                }
@@ -615,13 +622,6 @@
                var ip = LocalIP?.Replace("::ffff:", "") ?? ""; // å¦‚æžœ LocalIP æ˜¯ null,ip ä¼šæ˜¯ ""
                var address = _ipaddress.QueryData(x => x.IPaddress == ip).FirstOrDefault();
                var addressIp = "";
                //如果用户不在原本轨道站上结束任务,那么就提示他要他回去
                if (maint.IPAddress != ip)
                {
                    return new WebResponseContent { Status = false, Message = "请回到原来的轨道站结束任务" };
                }
                if (maint == null || sysuer == null)
                {
                    return new WebResponseContent { Status = false, Message = "没有找到该用户" };
@@ -636,6 +636,11 @@
                {
                    return new WebResponseContent { Status = false, Message = "你还没有开始检修,请先点击开始检修" };
                }
                //如果用户不在原本轨道站上结束任务,那么就提示他要他回
                if (maint.IPAddress != ip)
                {
                    return new WebResponseContent { Status = false, Message = "请回到原来的轨道站结束任务" };
                }
                // æ£€æŸ¥æ˜¯å¦è‡³å°‘有一个组长在场
                var activeLeaders = user.Where(x => x.IsLeader == 1 && x.MaintenanceStatus == 1).ToList();
ÏîÄ¿´úÂë/ºó¶Ë/WCS/WIDESEAWCS_Server/WIDESEAWCS_TelescopicService/ParametersService.cs
@@ -5,6 +5,7 @@
using System.Text;
using System.Threading.Tasks;
using AutoMapper;
using Microsoft.AspNetCore.Http;
using OfficeOpenXml.FormulaParsing.Excel.Functions.DateTime;
using OfficeOpenXml.FormulaParsing.Excel.Functions.Text;
using SqlSugar;
@@ -46,7 +47,7 @@
            
            try
            {
                ////根据int.TryParse(AppSettings.Get("DepartmentID")读取到当前是轨道几,所有人都只能操作当前
                //if (!int.TryParse(AppSettings.Get("DepartmentID"), out int deid))
                //{
ÏîÄ¿´úÂë/ºó¶Ë/ºǫ́¹ÜÀí/WIDESEAWCS_Server/WIDESEAWCS_ITelescopicService/IParametersService.cs
@@ -43,5 +43,13 @@
        /// <returns></returns>
        WebResponseContent CurrentLocation(int deptid);
        /// <summary>
        /// èŽ·å–å½“å‰ç¨‹åºæœ€æ–°çš„ä¼¸ç¼©æ†é€Ÿåº¦å›žå¡«ç»™å‰ç«¯
        /// </summary>
        /// <param name="plank"></param>
        /// <returns></returns>
        WebResponseContent BackfillSpeed(int plank);
    }
}
ÏîÄ¿´úÂë/ºó¶Ë/ºǫ́¹ÜÀí/WIDESEAWCS_Server/WIDESEAWCS_Server/Controllers/Telescopic/ParametersController.cs
@@ -55,6 +55,18 @@
            return Service.PauseButton(deptid);
        }
        /// <summary>
        ///  èŽ·å–å½“å‰ç¨‹åºæœ€æ–°çš„ä¼¸ç¼©æ†é€Ÿåº¦å›žå¡«ç»™å‰ç«¯
        /// </summary>
        /// <param name="plank">栈道号</param>
        /// <returns></returns>
        [HttpPost, Route("BackfillSpeed")]
        public WebResponseContent BackfillSpeed(int plank)
        {
            return Service.BackfillSpeed(plank);
        }
        /// <summary>
        /// ä¼¸ç¼©æ†å½“前位置
ÏîÄ¿´úÂë/ºó¶Ë/ºǫ́¹ÜÀí/WIDESEAWCS_Server/WIDESEAWCS_TelescopicService/ParametersService.cs
@@ -460,7 +460,28 @@
            return (left, right);
        }
        /// <summary>
        /// èŽ·å–å½“å‰ç¨‹åºæœ€æ–°çš„ä¼¸ç¼©æ†é€Ÿåº¦å›žå¡«ç»™å‰ç«¯
        /// </summary>
        /// <param name="plank"></param>
        /// <returns></returns>
        public WebResponseContent BackfillSpeed(int plank)
        {
            try
            {
                var para = BaseDal.QueryData().Where(x => x.Deptid == plank).OrderByDescending(x => x.CreateDate).FirstOrDefault();
                if (para == null)
                {
                    return new WebResponseContent { Message = "你还没有配置速度" };
                }
                return new WebResponseContent { Status = true, Data = para };
            }
            catch (Exception ex)
            {
                return new WebResponseContent { Status = false, Message = ex.Message };
            }
        }
    }
}