4/9
yanjinhui
2025-04-09 b1aa3a97ed3fcc221a863b8a26ae447975e65907
ÏîÄ¿´úÂë/WCS/WIDESEAWCS_Server/WIDESEAWCS_TelescopicService/MaintenanceService.cs
@@ -142,7 +142,12 @@
        /// <summary>
        /// æ›´æ–°çŠ¶æ€æ˜¯å¦å…è®¸è¿›å…¥æ£€ä¿®
        /// </summary>
        /// <param name="id"></param>
        /// <param name="ispossible"></param>
        /// <returns></returns>
        public WebResponseContent RunOperation(int id, string  ispossible)
        {
            try
@@ -292,7 +297,122 @@
            }
        }
        /// <summary>
        /// çœ‹ä»Šå¤©çš„æ£€ä¿®ä»»åŠ¡
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        public WebResponseContent MaintenanceTasksOfTheDay(string account)
        {
            try
            {
                var today = DateTime.Today;               // ä»Šå¤©çš„零点
                var tomorrow = today.AddDays(1);         // æ˜Žå¤©çš„零点
                var query = _user.Db.Queryable<Sys_User>()
                    .InnerJoin<Dt_Maintenance>((a, b) => a.UserName == b.UserAccount)
                    .Where((a, b) => b.IsPossible == "true" && b.UserAccount == account &&
                    b.MaintenanceDate >= today && b.MaintenanceDate < tomorrow).Select((a, b) => new
                    {
                        b.ID,
                        a.UserTrueName,
                        a.UserName,
                        a.CardNumber,
                        a.Userteam,
                        a.HeadImageUrl,
                        b.IsPossible,
                        b.MaintenanceDate,
                        b.MaintenancStartTime,
                        b.MaintenancEendTime,
                    }).ToList();
                if (query==null)
                {
                    return new WebResponseContent { Status = false, Message = "你今天没有检修任务" };
                }
                return new WebResponseContent { Status=true, Data = query };
            }
            catch (Exception ex)
            {
                return new WebResponseContent { Status = false, Message = "错误信息:" + ex.Message };
            }
        }
        /// <summary>
        /// å¼€å§‹æ£€ä¿®
        /// </summary>
        /// <param name="account"></param>
        /// <returns></returns>
        public WebResponseContent StartMaintenceTask(string account)
        {
            try
            {
                var today = DateTime.Today;               // ä»Šå¤©çš„零点
                var tomorrow = today.AddDays(1);         // æ˜Žå¤©çš„零点
                var maint = BaseDal.QueryData(x =>
                    x.UserAccount == account &&
                    x.IsPossible == "true" &&
                    x.MaintenanceDate >= today &&
                    x.MaintenanceDate < tomorrow
                ).FirstOrDefault();
                if (maint == null)
                {
                    return new WebResponseContent { Status = false, Message = "未找到今日的维护任务记录" };
                }
                maint.MaintenancStartTime = DateTime.Now;
                BaseDal.UpdateData(maint);
                return new WebResponseContent { Status = true, Data = maint };
            }
            catch (Exception ex)
            {
                return new WebResponseContent { Status = false, Message = "错误信息:" + ex.Message };
            }
        }
        /// <summary>
        /// ç»“束检修
        /// </summary>
        /// <param name="account"></param>
        /// <returns></returns>
        public WebResponseContent StopMaintenanceTask(string account)
        {
            try
            {
                var today = DateTime.Today;               // ä»Šå¤©çš„零点
                var tomorrow = today.AddDays(1);         // æ˜Žå¤©çš„零点
                var maint = BaseDal.QueryData(x => x.UserAccount == account && x.IsPossible == "true"
                && x.MaintenanceDate >= today &&x.MaintenanceDate < tomorrow).FirstOrDefault();
                if (maint == null)
                {
                    return new WebResponseContent { Status = false, Message = "未找到可用的维护任务记录" };
                }
                // ä¿®æ”¹å…¶ç»“束时间
                maint.MaintenancEendTime = DateTime.Now;
                maint.IsPossible = "ok";//ok就代表完成了
                BaseDal.UpdateData(maint);
                return new WebResponseContent { Status = true, Data = maint };
            }
            catch (Exception ex)
            {
                return new WebResponseContent { Status = false, Message = "错误信息:" + ex.Message };
            }
        }
        /// <summary>
        /// çŠ¶æ€æžšä¸¾