| ¶Ô±ÈÐÂÎļþ |
| | |
| | | using MES.Service.DB; |
| | | using MES.Service.Dto.@base; |
| | | using MES.Service.Dto.service; |
| | | using MES.Service.Dto.webApi; |
| | | using MES.Service.Modes; |
| | | using MES.Service.util; |
| | | using Microsoft.Data.SqlClient; |
| | | using SqlSugar; |
| | | using System.Data; |
| | | using System.Dynamic; |
| | | |
| | | namespace MES.Service.service |
| | | { |
| | | public class SysUpdateManager : Repository<SysUser> |
| | | { |
| | | |
| | | // è·åææ°çæ¬ä¿¡æ¯ |
| | | public VersionInfo GetLatestVersion(string platform) |
| | | { |
| | | // è¿éå¯ä»¥ä»æ°æ®åºæé
ç½®æä»¶ä¸è¯»å |
| | | // 示ä¾ä¸ç´æ¥è¿å硬ç¼ç ççæ¬ä¿¡æ¯ |
| | | return new VersionInfo |
| | | { |
| | | Version = "1.0.1", |
| | | UpdateInfo = "1. ä¿®å¤äºä¸äºå·²ç¥é®é¢\n2. ä¼åäºç¨æ·ä½éª\n3. æ°å¢äºä¸äºåè½", |
| | | WgtUrl = "http://192.168.1.223:8085/updates/app_update_1.0.1.wgt", |
| | | IsForceUpdate = false |
| | | }; |
| | | } |
| | | |
| | | // æ¯è¾çæ¬å· |
| | | public int CompareVersion(string version1, string version2) |
| | | { |
| | | var v1 = new Version(version1); |
| | | var v2 = new Version(version2); |
| | | return v1.CompareTo(v2); |
| | | } |
| | | } |
| | | } |
| ¶Ô±ÈÐÂÎļþ |
| | |
| | | using System.Dynamic; |
| | | using MES.Service.Dto.@base; |
| | | using MES.Service.service; |
| | | using MES.Service.util; |
| | | using Microsoft.AspNetCore.Mvc; |
| | | using Newtonsoft.Json.Linq; |
| | | |
| | | namespace MESApplication.Controllers.Base; |
| | | |
| | | [ApiController] |
| | | [Route("api/[controller]")] |
| | | public class UpdateController : ControllerBase |
| | | { |
| | | |
| | | |
| | | private readonly SysUpdateManager _sysUpdateManager = new SysUpdateManager(); |
| | | |
| | | |
| | | [HttpPost] |
| | | [Route("checkUpdate")] |
| | | public ResponseResult CheckUpdate([FromBody] UpdateCheckRequest request) |
| | | { |
| | | try |
| | | { |
| | | // ä»é
ç½®æä»¶ææ°æ®åºè·åææ°çæ¬ä¿¡æ¯ |
| | | var latestVersion = _sysUpdateManager.GetLatestVersion(request.platform); |
| | | |
| | | // æ¯è¾çæ¬å· |
| | | if (_sysUpdateManager.CompareVersion(request.version, latestVersion.Version) < 0) |
| | | { |
| | | // éè¦æ´æ° |
| | | return new ResponseResult |
| | | { |
| | | status = 0, |
| | | message = "åç°æ°çæ¬", |
| | | data = new |
| | | { |
| | | hasUpdate = true, |
| | | version = latestVersion.Version, |
| | | updateInfo = latestVersion.UpdateInfo, |
| | | wgtUrl = latestVersion.WgtUrl, |
| | | isForceUpdate = latestVersion.IsForceUpdate |
| | | } |
| | | }; |
| | | } |
| | | else |
| | | { |
| | | // ä¸éè¦æ´æ° |
| | | return new ResponseResult |
| | | { |
| | | status = 0, |
| | | message = "å½åå·²æ¯ææ°çæ¬", |
| | | data = new { hasUpdate = false } |
| | | }; |
| | | } |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | return ResponseResult.ResponseError(ex); |
| | | } |
| | | } |
| | | |
| | | |
| | | } |
| | | |