diff --git a/Waste.Application/AccountInfo/AccountService.cs b/Waste.Application/AccountInfo/AccountService.cs index b963093..247e310 100644 --- a/Waste.Application/AccountInfo/AccountService.cs +++ b/Waste.Application/AccountInfo/AccountService.cs @@ -1,4 +1,5 @@ using Furion.DependencyInjection; +using Microsoft.AspNetCore.Mvc; using Nirvana.Common; using SqlSugar; using System; @@ -45,6 +46,7 @@ namespace Waste.Application return new ResultInfo { code = ResultState.FAIL, message = "账户已禁用" }; } var password = Md5.md5(DESEncrypt.Encrypt(Md5.md5(model.pwd, 32).ToLower(), userdata.Secret).ToLower(), 32).ToLower(); + if (password != userdata.Password) { return new ResultInfo { code = ResultState.FAIL, message = "密码不正确" }; diff --git a/Waste.Application/Business/BusinessService.cs b/Waste.Application/Business/BusinessService.cs index 01b38ad..f7924f1 100644 --- a/Waste.Application/Business/BusinessService.cs +++ b/Waste.Application/Business/BusinessService.cs @@ -128,7 +128,7 @@ namespace Waste.Application //针对非平台类型,则可以查看下面所有的子账户设备 if (currentUser.AccountType != (int)AccountType.platform) { - var sql = $" code !={currentUser.BusinessCode} and code like '{currentUser.BusinessCode}'+'%' and id = x.id"; + var sql = $" code !='{currentUser.BusinessCode}' and code like '{currentUser.BusinessCode}%' and id = x.id"; temquery = temquery.Where(x => SqlFunc.Subqueryable().Where(sql).Any()); } string sorts = string.Format("{0} {1}", param.sort, param.order); @@ -541,12 +541,19 @@ namespace Waste.Application DateTime yestodaytime = DateTime.Now.AddDays(-1); if (currentUser.AccountType != (int)AccountType.platform) { - string basesql = $"code like '{currentUser.BusinessCode}'+'%' and id = x.id"; - string sql = $" code !={currentUser.BusinessCode} and {basesql}"; - string devicesql = $"code like '{currentUser.BusinessCode}'+'%' and id = x.businessid"; - int businesscnt = await dbClient.Queryable().Where(x => SqlFunc.Subqueryable().Where(sql).Any()).CountAsync(); - int devcnt = await repository.Change().Context.Queryable().Where(x => SqlFunc.Subqueryable().Where(devicesql).Any()).CountAsync(); - var tempquery = repository.Change().Context.Queryable().Where(x => SqlFunc.DateIsSame(x.CreateTime, yestodaytime) && SqlFunc.Subqueryable().Where(devicesql).Any()); + //string basesql = $"code like '{currentUser.BusinessCode} %' and id = x.id"; + //string sql = $" code !={currentUser.BusinessCode} and {basesql}"; + //string devicesql = $"code like '{currentUser.BusinessCode} %' and id = x.businessid"; + int businesscnt = await dbClient.Queryable().Where(x => SqlFunc.Subqueryable() + .Where(e=>SqlFunc.StartsWith(e.Code,currentUser.BusinessCode)) + .Where(e=>x.Code != currentUser.BusinessCode) + .Where(e=>e.Id == x.Id) + .Any()) + .CountAsync(); + int devcnt = await repository.Change().Context.Queryable() + .Where(x=>SqlFunc.Subqueryable().Where(e=>SqlFunc.StartsWith(e.Code,currentUser.BusinessCode) && e.Id == x.Businessid).Any()) + .CountAsync(); + var tempquery = repository.Change().Context.Queryable().Where(x => SqlFunc.DateIsSame(x.CreateTime, yestodaytime) && SqlFunc.Subqueryable().Where(e => SqlFunc.StartsWith(e.Code, currentUser.BusinessCode) && e.Id == x.Businessid).Any()); int count = await tempquery.Clone().SumAsync(x => x.DayCount); decimal weight = await tempquery.Clone().SumAsync(x => x.DayWeight); decimal pureweight = await tempquery.Clone().SumAsync(x => x.DayPureWeight); diff --git a/Waste.Application/ThirdApiInfo/Dtos/ProductInfoDto.cs b/Waste.Application/ThirdApiInfo/Dtos/ProductInfoDto.cs index 8f298a7..e83c7f0 100644 --- a/Waste.Application/ThirdApiInfo/Dtos/ProductInfoDto.cs +++ b/Waste.Application/ThirdApiInfo/Dtos/ProductInfoDto.cs @@ -110,6 +110,11 @@ namespace Waste.Application.ThirdApiInfo /// public string image { get; set; } + /// + /// 新增:操作权限控制(必须传 true/false,其他值或未传会报错) + /// + public bool uploadPermission { get; set; } // 直接 bool,不可空 + public string Video { get; set; } } } diff --git a/Waste.Application/ThirdApiInfo/IOpenService.cs b/Waste.Application/ThirdApiInfo/IOpenService.cs index 2f3c278..cb0d6ee 100644 --- a/Waste.Application/ThirdApiInfo/IOpenService.cs +++ b/Waste.Application/ThirdApiInfo/IOpenService.cs @@ -59,5 +59,7 @@ namespace Waste.Application.ThirdApiInfo /// Task AddProductAsync(ProductInfoDto data); Task> GetProductAsync(QueryParams param); + + Task DeleteProductAsync(string id); } } diff --git a/Waste.Application/ThirdApiInfo/OpenAppService.cs b/Waste.Application/ThirdApiInfo/OpenAppService.cs index 13634cb..fe110cd 100644 --- a/Waste.Application/ThirdApiInfo/OpenAppService.cs +++ b/Waste.Application/ThirdApiInfo/OpenAppService.cs @@ -327,6 +327,12 @@ namespace Waste.Application.ThirdApiInfo [HttpPost] public async Task AddProductAsync(ProductInfoDto data) { + // 1. 检查权限(false 直接返回无权限) + if (!data.uploadPermission) // 等效于 data.uploadPermission == false + { + return new ResultInfo(ResultState.FAIL, "没有操作权限"); + } + return await _openService.AddProductAsync(data); } @@ -335,5 +341,22 @@ namespace Waste.Application.ThirdApiInfo { return await _openService.GetProductAsync(param); } + + /// + /// 删除产品数据(管理后台专用,无需权限校验) + /// + [HttpPost] + [Route("api/open/deleteproduct")] + public async Task DeleteProduct(string id) + { + // 1. 检查ID是否为空 + if (string.IsNullOrEmpty(id)) + { + return new ResultInfo(ResultState.FAIL, "ID不能为空"); + } + + // 2. 调用删除服务 + return await _openService.DeleteProductAsync(id); + } } } \ No newline at end of file diff --git a/Waste.Application/ThirdApiInfo/OpenService.cs b/Waste.Application/ThirdApiInfo/OpenService.cs index d70665b..30c8d78 100644 --- a/Waste.Application/ThirdApiInfo/OpenService.cs +++ b/Waste.Application/ThirdApiInfo/OpenService.cs @@ -597,7 +597,16 @@ namespace Waste.Application.ThirdApiInfo private async Task UpdateDevInfo(GetDevInfoRequestDto data, GetDevInfoResponseDto returndata, W_Device device, string type, string weight, string typename = "", string name = "") { //returndata.type = TrashType(type); - returndata.type = int.Parse(type); + int result = 0; + bool isSuccess = int.TryParse(type, out result); + if (isSuccess) + { + returndata.type = int.Parse(type); + } + else + { + returndata.type = TrashType(type); + } returndata.Weight = weight.ToDouble(); //计算净重,毛重-皮重=净重,如果净重小于等于0则不上报保存 @@ -637,7 +646,7 @@ namespace Waste.Application.ThirdApiInfo ResultId = returndata.ResultId, Tare = device.Tare, trash = returndata.trash, - wastetype = typename.IsNullOrEmpty() == false ? typename : TrashTypeTitle(type), + wastetype = typename.IsNullOrEmpty() == false ? typename : type, weight = weight }); @@ -663,7 +672,7 @@ namespace Waste.Application.ThirdApiInfo WasteSType = "", Time = DateTime.Now, TrashCode = returndata.trash, - WasteType = typename.IsNullOrEmpty() == false ? typename : TrashTypeTitle(type), + WasteType = typename.IsNullOrEmpty() == false ? typename : type, Weight = weight.ToDecimal(), faccode = device.FacEcode, ecode = device.Ecode, @@ -682,6 +691,7 @@ namespace Waste.Application.ThirdApiInfo /// public async Task AddProductAsync(ProductInfoDto data) { + //return new ResultInfo(ResultState.SUCCESS, "测试信息:直接返回"); try { if (await dbClient.Queryable().AnyAsync(x => x.Uuid == data.uuid)) @@ -724,6 +734,7 @@ namespace Waste.Application.ThirdApiInfo } } } + //return new ResultInfo(ResultState.SUCCESS, imageUrl); W_Product insertdata = new W_Product { Id = Guid.NewGuid().ToString(), @@ -801,5 +812,35 @@ namespace Waste.Application.ThirdApiInfo return new PageParms(); } } + + public async Task DeleteProductAsync(string id) + { + try + { + // 1. 检查数据是否存在 + var exists = await dbClient.Queryable() + .Where(x => x.Id == id) + .AnyAsync(); + + if (!exists) + { + return new ResultInfo(ResultState.FAIL, "数据不存在"); + } + + // 2. 执行删除 + var result = await dbClient.Deleteable() + .Where(x => x.Id == id) + .ExecuteCommandAsync(); + + return result > 0 + ? new ResultInfo(ResultState.SUCCESS, "删除成功") + : new ResultInfo(ResultState.FAIL, "删除失败"); + } + catch (Exception ex) + { + // 3. 错误处理 + return new ResultInfo(ResultState.FAIL, $"系统错误: {ex.Message}"); + } + } } } \ No newline at end of file diff --git a/Waste.Application/Waste.Application.xml b/Waste.Application/Waste.Application.xml index b30e2a0..5c87c85 100644 --- a/Waste.Application/Waste.Application.xml +++ b/Waste.Application/Waste.Application.xml @@ -3101,6 +3101,11 @@ + + + 新增:操作权限控制(必须传 true/false,其他值或未传会报错) + + 心跳包上报数据 @@ -3590,6 +3595,11 @@ + + + 删除产品数据(管理后台专用,无需权限校验) + + 设备对接接口 diff --git a/Waste.Web.Entry/Pages/Device/Product.cshtml b/Waste.Web.Entry/Pages/Device/Product.cshtml index e757534..c7d1935 100644 --- a/Waste.Web.Entry/Pages/Device/Product.cshtml +++ b/Waste.Web.Entry/Pages/Device/Product.cshtml @@ -52,6 +52,9 @@ { field: 'unit', title: '重量单位' }, + { + field: 'idvalues', title: '单价@总价' + }, { field: 'upperlimit', title: '上限' }, @@ -61,6 +64,14 @@ { field: 'createtime', title: '创建时间' }, + { + field: 'id', // 改为绑定id字段 + title: '操作', + templet: function(d) { + return `删除`; + } + } ]], parseData: function(n) { console.log("接口返回的原始数据:", n); @@ -84,4 +95,34 @@ }); }); + } \ No newline at end of file diff --git a/Waste.Web.Entry/Properties/PublishProfiles/waste.ybhdmob.com.pubxml.user b/Waste.Web.Entry/Properties/PublishProfiles/waste.ybhdmob.com.pubxml.user index 68e92e6..dd581f8 100644 --- a/Waste.Web.Entry/Properties/PublishProfiles/waste.ybhdmob.com.pubxml.user +++ b/Waste.Web.Entry/Properties/PublishProfiles/waste.ybhdmob.com.pubxml.user @@ -5,7 +5,7 @@ https://go.microsoft.com/fwlink/?LinkID=208121. <_PublishTargetUrl>D:\webpublish\waste.ybhdmob.com - True|2025-03-27T03:41:02.3228124Z||;True|2025-03-21T16:54:06.1039552+08:00||;True|2025-03-21T13:31:54.3916167+08:00||;True|2025-03-21T11:58:37.1884032+08:00||;True|2025-03-21T11:35:39.8283713+08:00||;True|2025-03-20T15:55:31.1151589+08:00||;True|2025-02-11T14:49:30.5446930+08:00||;True|2025-02-11T14:35:29.4332908+08:00||;True|2025-02-11T13:59:02.5624245+08:00||;True|2024-12-26T15:55:05.3910632+08:00||;True|2024-12-26T09:11:18.0562918+08:00||;True|2024-12-20T17:09:33.5985280+08:00||;True|2024-12-20T16:58:49.8519733+08:00||;True|2024-12-20T16:47:57.5264148+08:00||;True|2024-12-20T15:15:52.6034211+08:00||;True|2024-12-20T15:04:37.1611174+08:00||;True|2024-12-20T15:03:11.1199173+08:00||;True|2024-12-20T14:56:32.0361934+08:00||;True|2024-12-20T14:52:27.0845075+08:00||;True|2024-12-18T09:25:19.6828490+08:00||;True|2024-12-16T15:45:38.9731146+08:00||;True|2024-02-22T09:28:06.5641782+08:00||;True|2024-02-22T09:23:28.6539914+08:00||;True|2024-02-21T13:50:30.0887271+08:00||;True|2023-01-09T14:37:17.3219940+08:00||;False|2023-01-09T14:36:37.2025779+08:00||;True|2022-09-14T10:54:14.3430113+08:00||;True|2022-08-24T10:11:56.9315738+08:00||;True|2022-07-28T16:27:26.4646475+08:00||;True|2022-07-26T18:02:16.8734313+08:00||;True|2022-07-26T17:47:48.4802128+08:00||;True|2022-07-26T10:16:29.8933802+08:00||;True|2022-07-26T09:36:14.5292489+08:00||;True|2022-07-12T17:26:37.8289741+08:00||;True|2022-07-07T15:15:35.7942932+08:00||;True|2022-07-07T14:38:14.6580938+08:00||;True|2022-07-07T14:32:33.3480279+08:00||;True|2022-07-06T08:59:01.5108509+08:00||;True|2022-06-21T14:41:45.3390865+08:00||;False|2022-06-21T14:31:42.6318272+08:00||;True|2022-06-21T14:07:42.4016410+08:00||;True|2022-06-20T15:37:14.0002383+08:00||;True|2022-06-20T08:32:15.3735483+08:00||;True|2022-06-18T10:39:25.0997617+08:00||;True|2022-06-15T11:23:32.6444305+08:00||;True|2022-06-07T10:26:48.8057155+08:00||;True|2022-05-19T14:38:58.4564787+08:00||;True|2022-05-19T10:00:43.2712891+08:00||;True|2022-05-17T18:00:53.2618269+08:00||;True|2022-05-17T17:55:33.2053115+08:00||;True|2022-05-17T17:38:48.8279756+08:00||;True|2022-05-16T16:44:49.1758100+08:00||;True|2022-03-30T10:54:32.5565057+08:00||;True|2022-03-30T10:53:48.9972377+08:00||;True|2022-03-30T10:50:31.5745775+08:00||;True|2022-03-30T10:47:50.1605527+08:00||;True|2022-03-30T10:15:59.9812921+08:00||;True|2022-03-29T09:29:45.1039655+08:00||;True|2022-03-29T09:21:47.0149226+08:00||;True|2022-03-28T10:33:44.7419612+08:00||;True|2022-03-28T10:22:40.9448563+08:00||;True|2022-03-28T10:19:15.1438519+08:00||;True|2022-01-20T10:39:53.2000547+08:00||;True|2021-11-23T17:45:59.0399234+08:00||;True|2021-11-23T14:52:52.6108389+08:00||;True|2021-11-23T13:47:55.8909321+08:00||;True|2021-11-23T13:46:38.7796888+08:00||;True|2021-11-23T13:42:14.9551976+08:00||;True|2021-11-23T13:40:54.9093258+08:00||;True|2021-11-23T13:31:49.0003794+08:00||;True|2021-11-23T13:29:43.7414639+08:00||;True|2021-10-12T15:18:06.6012215+08:00||;True|2021-10-12T15:11:17.7752651+08:00||;True|2021-10-12T14:54:39.0578509+08:00||;True|2021-10-12T11:25:18.7098128+08:00||;True|2021-09-18T15:34:20.7386778+08:00||;True|2021-09-15T11:09:28.0068993+08:00||;True|2021-09-07T12:19:33.4635211+08:00||;True|2021-09-07T11:36:13.4563799+08:00||;True|2021-09-03T15:41:46.2819586+08:00||;True|2021-08-31T17:16:16.0336390+08:00||;True|2021-08-31T16:05:30.7224440+08:00||;True|2021-08-23T09:44:46.2114418+08:00||;True|2021-08-19T20:32:56.2854974+08:00||;True|2021-08-18T14:01:33.0411246+08:00||;True|2021-08-17T10:05:15.4299188+08:00||;True|2021-08-13T19:32:53.6307075+08:00||;True|2021-08-13T19:29:50.5876782+08:00||;True|2021-08-13T19:14:14.2545106+08:00||;True|2021-08-13T15:24:09.4521125+08:00||;True|2021-08-13T14:59:40.4579407+08:00||;True|2021-08-13T10:02:29.7650246+08:00||;True|2021-08-13T09:45:10.6245894+08:00||;True|2021-08-12T20:11:21.5851106+08:00||;True|2021-08-12T20:00:42.4820498+08:00||;True|2021-08-12T18:44:08.3079650+08:00||;True|2021-08-12T18:35:47.4730766+08:00||;True|2021-08-12T18:32:10.9361388+08:00||;True|2021-08-12T18:30:21.4006961+08:00||;True|2021-08-12T18:13:00.9624470+08:00||; + True|2026-03-12T07:20:40.7737418Z||;True|2025-08-25T15:19:00.0896034+08:00||;True|2025-08-25T15:03:38.3327291+08:00||;True|2025-08-21T19:39:49.6555608+08:00||;True|2025-08-21T19:30:00.9282558+08:00||;True|2025-07-10T19:45:46.7153594+08:00||;True|2025-03-28T14:03:08.8350996+08:00||;True|2025-03-27T11:41:02.3228124+08:00||;True|2025-03-21T16:54:06.1039552+08:00||;True|2025-03-21T13:31:54.3916167+08:00||;True|2025-03-21T11:58:37.1884032+08:00||;True|2025-03-21T11:35:39.8283713+08:00||;True|2025-03-20T15:55:31.1151589+08:00||;True|2025-02-11T14:49:30.5446930+08:00||;True|2025-02-11T14:35:29.4332908+08:00||;True|2025-02-11T13:59:02.5624245+08:00||;True|2024-12-26T15:55:05.3910632+08:00||;True|2024-12-26T09:11:18.0562918+08:00||;True|2024-12-20T17:09:33.5985280+08:00||;True|2024-12-20T16:58:49.8519733+08:00||;True|2024-12-20T16:47:57.5264148+08:00||;True|2024-12-20T15:15:52.6034211+08:00||;True|2024-12-20T15:04:37.1611174+08:00||;True|2024-12-20T15:03:11.1199173+08:00||;True|2024-12-20T14:56:32.0361934+08:00||;True|2024-12-20T14:52:27.0845075+08:00||;True|2024-12-18T09:25:19.6828490+08:00||;True|2024-12-16T15:45:38.9731146+08:00||;True|2024-02-22T09:28:06.5641782+08:00||;True|2024-02-22T09:23:28.6539914+08:00||;True|2024-02-21T13:50:30.0887271+08:00||;True|2023-01-09T14:37:17.3219940+08:00||;False|2023-01-09T14:36:37.2025779+08:00||;True|2022-09-14T10:54:14.3430113+08:00||;True|2022-08-24T10:11:56.9315738+08:00||;True|2022-07-28T16:27:26.4646475+08:00||;True|2022-07-26T18:02:16.8734313+08:00||;True|2022-07-26T17:47:48.4802128+08:00||;True|2022-07-26T10:16:29.8933802+08:00||;True|2022-07-26T09:36:14.5292489+08:00||;True|2022-07-12T17:26:37.8289741+08:00||;True|2022-07-07T15:15:35.7942932+08:00||;True|2022-07-07T14:38:14.6580938+08:00||;True|2022-07-07T14:32:33.3480279+08:00||;True|2022-07-06T08:59:01.5108509+08:00||;True|2022-06-21T14:41:45.3390865+08:00||;False|2022-06-21T14:31:42.6318272+08:00||;True|2022-06-21T14:07:42.4016410+08:00||;True|2022-06-20T15:37:14.0002383+08:00||;True|2022-06-20T08:32:15.3735483+08:00||;True|2022-06-18T10:39:25.0997617+08:00||;True|2022-06-15T11:23:32.6444305+08:00||;True|2022-06-07T10:26:48.8057155+08:00||;True|2022-05-19T14:38:58.4564787+08:00||;True|2022-05-19T10:00:43.2712891+08:00||;True|2022-05-17T18:00:53.2618269+08:00||;True|2022-05-17T17:55:33.2053115+08:00||;True|2022-05-17T17:38:48.8279756+08:00||;True|2022-05-16T16:44:49.1758100+08:00||;True|2022-03-30T10:54:32.5565057+08:00||;True|2022-03-30T10:53:48.9972377+08:00||;True|2022-03-30T10:50:31.5745775+08:00||;True|2022-03-30T10:47:50.1605527+08:00||;True|2022-03-30T10:15:59.9812921+08:00||;True|2022-03-29T09:29:45.1039655+08:00||;True|2022-03-29T09:21:47.0149226+08:00||;True|2022-03-28T10:33:44.7419612+08:00||;True|2022-03-28T10:22:40.9448563+08:00||;True|2022-03-28T10:19:15.1438519+08:00||;True|2022-01-20T10:39:53.2000547+08:00||;True|2021-11-23T17:45:59.0399234+08:00||;True|2021-11-23T14:52:52.6108389+08:00||;True|2021-11-23T13:47:55.8909321+08:00||;True|2021-11-23T13:46:38.7796888+08:00||;True|2021-11-23T13:42:14.9551976+08:00||;True|2021-11-23T13:40:54.9093258+08:00||;True|2021-11-23T13:31:49.0003794+08:00||;True|2021-11-23T13:29:43.7414639+08:00||;True|2021-10-12T15:18:06.6012215+08:00||;True|2021-10-12T15:11:17.7752651+08:00||;True|2021-10-12T14:54:39.0578509+08:00||;True|2021-10-12T11:25:18.7098128+08:00||;True|2021-09-18T15:34:20.7386778+08:00||;True|2021-09-15T11:09:28.0068993+08:00||;True|2021-09-07T12:19:33.4635211+08:00||;True|2021-09-07T11:36:13.4563799+08:00||;True|2021-09-03T15:41:46.2819586+08:00||;True|2021-08-31T17:16:16.0336390+08:00||;True|2021-08-31T16:05:30.7224440+08:00||;True|2021-08-23T09:44:46.2114418+08:00||;True|2021-08-19T20:32:56.2854974+08:00||;True|2021-08-18T14:01:33.0411246+08:00||;True|2021-08-17T10:05:15.4299188+08:00||;True|2021-08-13T19:32:53.6307075+08:00||;True|2021-08-13T19:29:50.5876782+08:00||;True|2021-08-13T19:14:14.2545106+08:00||;True|2021-08-13T15:24:09.4521125+08:00||;True|2021-08-13T14:59:40.4579407+08:00||;True|2021-08-13T10:02:29.7650246+08:00||;True|2021-08-13T09:45:10.6245894+08:00||; \ No newline at end of file diff --git a/Waste.Web.Entry/Waste.Web.Entry.csproj.user b/Waste.Web.Entry/Waste.Web.Entry.csproj.user index 5096483..e9131c0 100644 --- a/Waste.Web.Entry/Waste.Web.Entry.csproj.user +++ b/Waste.Web.Entry/Waste.Web.Entry.csproj.user @@ -4,7 +4,7 @@ RazorPageScaffolder root/Common/RazorPage E:\liuzl_ybhdmob\巨天垃圾分类\Waste\Waste.Web.Entry\Properties\PublishProfiles\waste.ybhdmob.com.pubxml - Waste.Web.Entry + IIS Express ProjectDebugger diff --git a/Waste.Web.Entry/bundleconfig.json b/Waste.Web.Entry/bundleconfig.json index 59cc3a8..21e164b 100644 --- a/Waste.Web.Entry/bundleconfig.json +++ b/Waste.Web.Entry/bundleconfig.json @@ -1,8 +1,8 @@ [ { - // Ҫļơ ԰е·bundleconfig.jsonļ + // Ҫ����������ļ����ơ� ���԰����е����·��bundleconfig.json�ļ��� ���� "outputFileName": "wwwroot/css/login.min.css", - // Ҫһļ顣 Щļ· ѡ* ֵڿյļ ֧ģʽ + // Ҫ��������һ����ļ������顣 ��Щ�������ļ������·���� ��ѡ��* ��ֵ���ڿյ�����ļ��� ���֧��ģʽ�� "inputFiles": [ "wwwroot/js/css/layui.css", "wwwroot/css/admin.css", @@ -17,23 +17,23 @@ "wwwroot/js/layui.js", "wwwroot/js/lay/modules/common.js" ], - // "ѡ - // "ѡĬֵ-minify": { "enabled": true }, + // "�����������ѡ� + // "��ѡ��Ĭ��ֵ-minify": { "enabled": true }, "minify": { "enabled": false, "renameLocals": true }, - // ָʾǷļԴӳı־ ѡĬ-false + // ָʾ�Ƿ�����������ļ���Դӳ��ı�־�� ��ѡ��Ĭ��-false "sourceMap": false, - // "ָʾǷɵļӵĿļı־" "ѡĬ-false", + // "ָʾ�Ƿ����ɵ��ļ���ӵ���Ŀ�ļ��ı�־��" "��ѡ��Ĭ��-false", "includeInProject": true - // ڴ洢ɵԴӳļĸ· + // ���ڴ洢���ɵ�Դ����ӳ���ļ��ĸ�·���� //"sourceMapRootPath": "" }, { - // Ҫļơ ԰е·bundleconfig.jsonļ + // Ҫ����������ļ����ơ� ���԰����е����·��bundleconfig.json�ļ��� ���� "outputFileName": "wwwroot/css/index.min.css", - // Ҫһļ顣 Щļ· ѡ* ֵڿյļ ֧ģʽ + // Ҫ��������һ����ļ������顣 ��Щ�������ļ������·���� ��ѡ��* ��ֵ���ڿյ�����ļ��� ���֧��ģʽ�� "inputFiles": [ "wwwroot/js/css/layui.css", "wwwroot/css/admin.css", @@ -46,23 +46,23 @@ "wwwroot/js/layui.js", "wwwroot/js/lay/modules/common.js" ], - // "ѡ - // "ѡĬֵ-minify": { "enabled": true }, + // "�����������ѡ� + // "��ѡ��Ĭ��ֵ-minify": { "enabled": true }, "minify": { "enabled": true, "renameLocals": true }, - // ָʾǷļԴӳı־ ѡĬ-false + // ָʾ�Ƿ�����������ļ���Դӳ��ı�־�� ��ѡ��Ĭ��-false "sourceMap": false, - // "ָʾǷɵļӵĿļı־" "ѡĬ-false", + // "ָʾ�Ƿ����ɵ��ļ���ӵ���Ŀ�ļ��ı�־��" "��ѡ��Ĭ��-false", "includeInProject": true - // ڴ洢ɵԴӳļĸ· + // ���ڴ洢���ɵ�Դ����ӳ���ļ��ĸ�·���� //"sourceMapRootPath": "" }, { - // Ҫļơ ԰е·bundleconfig.jsonļ + // Ҫ����������ļ����ơ� ���԰����е����·��bundleconfig.json�ļ��� ���� "outputFileName": "wwwroot/css/page.min.css", - // Ҫһļ顣 Щļ· ѡ* ֵڿյļ ֧ģʽ + // Ҫ��������һ����ļ������顣 ��Щ�������ļ������·���� ��ѡ��* ��ֵ���ڿյ�����ļ��� ���֧��ģʽ�� "inputFiles": [ "wwwroot/js/css/layui.css", "wwwroot/css/admin.css", @@ -85,17 +85,17 @@ "wwwroot/js/main.js", "wwwroot/js/global.js" ], - // "ѡ - // "ѡĬֵ-minify": { "enabled": true }, + // "�����������ѡ� + // "��ѡ��Ĭ��ֵ-minify": { "enabled": true }, "minify": { "enabled": true, "renameLocals": true }, - // ָʾǷļԴӳı־ ѡĬ-false + // ָʾ�Ƿ�����������ļ���Դӳ��ı�־�� ��ѡ��Ĭ��-false "sourceMap": false, - // "ָʾǷɵļӵĿļı־" "ѡĬ-false", + // "ָʾ�Ƿ����ɵ��ļ���ӵ���Ŀ�ļ��ı�־��" "��ѡ��Ĭ��-false", "includeInProject": true - // ڴ洢ɵԴӳļĸ· + // ���ڴ洢���ɵ�Դ����ӳ���ļ��ĸ�·���� //"sourceMapRootPath": "" } ] \ No newline at end of file diff --git a/Waste.Web.Entry/wwwroot/js/index.min.js b/Waste.Web.Entry/wwwroot/js/index.min.js index ff5f0fb..ed8a2e5 100644 --- a/Waste.Web.Entry/wwwroot/js/index.min.js +++ b/Waste.Web.Entry/wwwroot/js/index.min.js @@ -1,2 +1,2 @@ /*! MIT Licensed */ -!function(n){"use strict";var r=n.document,t={modules:{},status:{},timeout:10,event:{}},i=function(){this.v="2.6.8"},o=n.LAYUI_GLOBAL||{},s=function(){var n=r.currentScript?r.currentScript.src:function(){for(var i,n=r.scripts,u=n.length-1,t=u;t>0;t--)if("interactive"===n[t].readyState){i=n[t].src;break}return i||n[u].src}();return t.dir=o.dir||n.substring(0,n.lastIndexOf("/")+1)}(),u=function(t,i){i=i||"log";n.console&&console[i]&&console[i]("layui error hint: "+t)},h="undefined"!=typeof opera&&"[object Opera]"===opera.toString(),f=t.builtin={lay:"lay",layer:"layer",laydate:"laydate",laypage:"laypage",laytpl:"laytpl",layedit:"layedit",form:"form",upload:"upload",dropdown:"dropdown",transfer:"transfer",tree:"tree",table:"table",element:"element",rate:"rate",colorpicker:"colorpicker",slider:"slider",carousel:"carousel",flow:"flow",util:"util",code:"code",jquery:"jquery",all:"all","layui.all":"layui.all",common:"modules/common",tableSelect:"modules/tableSelect"},e;i.prototype.cache=t;i.prototype.define=function(n,i){var r=this,u="function"==typeof n,f=function(){var n=function(n,i){layui[n]=i;t.status[n]=!0};return"function"==typeof i&&i(function(r,u){n(r,u);t.callback[r]=function(){i(n)}}),this};return u&&(i=n,n=[]),r.use(n,f,null,"define"),r};i.prototype.use=function(i,e,o,c){function b(n,i){var r="PLaySTATION 3"===navigator.platform?/^complete$/:/^(complete|loaded)$/;("load"===n.type||r.test((n.currentTarget||n.srcElement).readyState))&&(t.modules[l]=i,d.removeChild(a),function f(){return++w>250*t.timeout?u(l+" is not a valid module","error"):void(t.status[l]?p():setTimeout(f,4))}())}function p(){o.push(layui[l]);i.length>1?y.use(i.slice(1),e,o,c):"function"==typeof e&&function(){return layui.jquery&&"function"==typeof layui.jquery&&"define"!==c?layui.jquery(function(){e.apply(layui,o)}):void e.apply(layui,o)}()}var y=this,k=t.dir=t.dir?t.dir:s,d=r.getElementsByTagName("head")[0],l,w,v,a;return(i=function(){return"string"==typeof i?[i]:"function"==typeof i?(e=i,["all"]):i}(),n.jQuery&&jQuery.fn.on&&(y.each(i,function(n,t){"jquery"===t&&i.splice(n,1)}),layui.jquery=layui.$=jQuery),l=i[0],w=0,o=o||[],t.host=t.host||(k.match(/\/\/([\s\S]+?)\//)||["//"+location.host+"/"])[0],0===i.length||layui["layui.all"]&&f[l])?(p(),y):(v=(f[l]?k+"modules/":/^\{\/\}/.test(y.modules[l])?"":t.base||"")+(y.modules[l]||l)+".js",(v=v.replace(/^\{\/\}/,""),!t.modules[l]&&layui[l]&&(t.modules[l]=v),t.modules[l])?!function g(){return++w>250*t.timeout?u(l+" is not a valid module","error"):void("string"==typeof t.modules[l]&&t.status[l]?p():setTimeout(g,4))}():(a=r.createElement("script"),a.async=!0,a.charset="utf-8",a.src=v+function(){var n=t.version===!0?t.v||(new Date).getTime():t.version||"";return n?"?v="+n:""}(),d.appendChild(a),!a.attachEvent||a.attachEvent.toString&&a.attachEvent.toString().indexOf("[native code")<0||h?a.addEventListener("load",function(n){b(n,v)},!1):a.attachEvent("onreadystatechange",function(n){b(n,v)}),t.modules[l]=v),y)};i.prototype.getStyle=function(t,i){var r=t.currentStyle?t.currentStyle:n.getComputedStyle(t,null);return r[r.getPropertyValue?"getPropertyValue":"getAttribute"](i)};i.prototype.link=function(n,i,f){var s=this,l=r.getElementsByTagName("head")[0],e=r.createElement("link");"string"==typeof i&&(f=i);var a=(f||n).replace(/\.|\//g,""),h=e.id="layuicss-"+a,o="creating",v=0;return e.rel="stylesheet",e.href=n+(t.debug?"?v="+(new Date).getTime():""),e.media="all",r.getElementById(h)||l.appendChild(e),"function"!=typeof i?s:(function c(f){var l=100,e=r.getElementById(h);return++v>1e3*t.timeout/l?u(n+" timeout"):void(1989===parseInt(s.getStyle(e,"width"))?(f===o&&e.removeAttribute("lay-status"),e.getAttribute("lay-status")===o?setTimeout(c,l):i()):(e.setAttribute("lay-status",o),setTimeout(function(){c(o)},l)))}(),s)};i.prototype.addcss=function(n,i,r){return layui.link(t.dir+"css/"+n,i,r)};t.callback={};i.prototype.factory=function(n){if(layui[n])return"function"==typeof t.callback[n]?t.callback[n]:null};i.prototype.img=function(n,t,i){var r=new Image;return r.src=n,r.complete?t(r):(r.onload=function(){r.onload=null;"function"==typeof t&&t(r)},void(r.onerror=function(n){r.onerror=null;"function"==typeof i&&i(n)}))};i.prototype.config=function(n){n=n||{};for(var i in n)t[i]=n[i];return this};i.prototype.modules=function(){var n={};for(var t in f)n[t]=f[t];return n}();i.prototype.extend=function(n){var i=this,t;n=n||{};for(t in n)i[t]||i.modules[t]?u(t+" Module already exists","error"):i.modules[t]=n[t];return i};i.prototype.router=function(n){var i=this,n=n||location.hash,t={path:[],search:{},hash:(n.match(/[^#](#.*$)/)||[])[1]||""};return/^#\//.test(n)?(n=n.replace(/^#\//,""),t.href="/"+n,n=n.replace(/([^#])(#.*$)/,"$1").split("/")||[],i.each(n,function(n,i){/^\w+=/.test(i)?function(){i=i.split("=");t.search[i[0]]=i[1]}():t.path.push(i)}),t):t};i.prototype.url=function(n){var t=this;return{pathname:function(){var t=n?function(){var t=(n.match(/\.[^.]+?\/.+/)||[])[0]||"";return t.replace(/^[^\/]+/,"").replace(/\?.+/,"")}():location.pathname;return t.replace(/^\//,"").split("/")}(),search:function(){var i={},r=(n?function(){var t=(n.match(/\?.+/)||[])[0]||"";return t.replace(/\#.+/,"")}():location.search).replace(/^\?+/,"").split("&");return t.each(r,function(n,t){var r=t.indexOf("="),u=function(){return r<0?t.substr(0,t.length):0!==r&&t.substr(0,r)}();u&&(i[u]=r>0?t.substr(r+1):null)}),i}(),hash:t.router(function(){return n?(n.match(/#.+/)||[])[0]||"/":location.hash}())}};i.prototype.data=function(t,i,r){var u;if(t=t||"layui",r=r||localStorage,n.JSON&&n.JSON.parse){if(null===i)return delete r[t];i="object"==typeof i?i:{key:i};try{u=JSON.parse(r[t])}catch(f){u={}}return"value"in i&&(u[i.key]=i.value),i.remove&&delete u[i.key],r[t]=JSON.stringify(u),i.key?u[i.key]:u}};i.prototype.sessionData=function(n,t){return this.data(n,t,sessionStorage)};i.prototype.device=function(t){var r=navigator.userAgent.toLowerCase(),u=function(n){var t=new RegExp(n+"/([^\\s\\_\\-]+)");return n=(r.match(t)||[])[1],n||!1},i={os:function(){return/windows/.test(r)?"windows":/linux/.test(r)?"linux":/iphone|ipod|ipad|ios/.test(r)?"ios":/mac/.test(r)?"mac":void 0}(),ie:function(){return!!(n.ActiveXObject||"ActiveXObject"in n)&&((r.match(/msie\s(\d+)/)||[])[1]||"11")}(),weixin:u("micromessenger")};return t&&!i[t]&&(i[t]=u(t)),i.android=/android/.test(r),i.ios="ios"===i.os,i.mobile=!(!i.android&&!i.ios),i};i.prototype.hint=function(){return{error:u}};i.prototype._typeof=function(n){return null===n?String(n):"object"==typeof n||"function"==typeof n?function(){var t=Object.prototype.toString.call(n).match(/\s(.+)\]$/)||[];return t=t[1]||"Object",new RegExp("\\b(Function|Array|Date|RegExp|Object|Error|Symbol)\\b").test(t)?t.toLowerCase():"object"}():typeof n};i.prototype._isArray=function(t){var i,r=this,u=r._typeof(t);return!(!t||"object"!=typeof t||t===n)&&(i="length"in t&&t.length,"array"===u||0===i||"number"==typeof i&&i>0&&i-1 in t)};i.prototype.each=function(n,t){var i,r=this,u=function(n,i){return t.call(i[n],n,i[n])};if("function"!=typeof t)return r;if(n=n||[],r._isArray(n))for(i=0;if?1:u(n.innerHeight||r.documentElement.clientHeight)};t.position=function(i,u,f){var c,p;if(u){f=f||{};i!==r&&i!==t("body")[0]||(f.clickType="right");var l="right"===f.clickType?function(){var t=f.e||n.event||{};return{left:t.clientX,top:t.clientY,right:t.clientX,bottom:t.clientY}}():i.getBoundingClientRect(),a=u.offsetWidth,v=u.offsetHeight,y=function(n){return n=n?"scrollLeft":"scrollTop",r.body[n]|r.documentElement[n]},h=function(n){return r.documentElement[n?"clientWidth":"clientHeight"]},e=5,o=l.left,s=l.bottom;"center"===f.align?o-=(a-i.offsetWidth)/2:"right"===f.align&&(o=o-a+i.offsetWidth);o+a+e>h("width")&&(o=h("width")-a-e);oh()&&(l.top>v+e?s=l.top-v-2*e:"right"===f.clickType&&(s=h()-v-2*e,s<0&&(s=0)));c=f.position;(c&&(u.style.position=c),u.style.left=o+("fixed"===c?0:y(1))+"px",u.style.top=s+("fixed"===c?0:y())+"px",t.hasScrollbar())||(p=u.getBoundingClientRect(),!f.SYSTEM_RELOAD&&p.bottom+e>h()&&(f.SYSTEM_RELOAD=!0,setTimeout(function(){t.position(i,u,f)},50)))}};t.options=function(n,i){var r=t(n),u=i||"lay-options";try{return new Function("return "+(r.attr(u)||"{}"))()}catch(f){return hint.error("parseerror:"+f,"error"),{}}};t.isTopElem=function(n){var u=[r,t("body")[0]],i=!1;return t.each(u,function(t,r){if(r===n)return i=!0}),i};i.addStr=function(n,i){return n=n.replace(/\s+/," "),i=i.replace(/\s+/," ").split(" "),t.each(i,function(t,i){new RegExp("\\b"+i+"\\b").test(n)||(n=n+" "+i)}),n.replace(/^\s|\s$/,"")};i.removeStr=function(n,i){return n=n.replace(/\s+/," "),i=i.replace(/\s+/," ").split(" "),t.each(i,function(t,i){var r=new RegExp("\\b"+i+"\\b");r.test(n)&&(n=n.replace(r,""))}),n.replace(/\s+/," ").replace(/^\s|\s$/,"")};i.prototype.find=function(n){var i=this,r=0,u=[],f="object"==typeof n;return this.each(function(t,e){for(var o=f?e.contains(n):e.querySelectorAll(n||null);r0)return r[0].style[n]}():r.each(function(r,f){"object"==typeof n?t.each(n,function(n,t){f.style[n]=u(t)}):f.style[n]=u(i)})};i.prototype.width=function(n){var t=this;return void 0===n?function(){if(t.length>0)return t[0].offsetWidth}():t.each(function(){t.css("width",n)})};i.prototype.height=function(n){var t=this;return void 0===n?function(){if(t.length>0)return t[0].offsetHeight}():t.each(function(){t.css("height",n)})};i.prototype.attr=function(n,t){var i=this;return void 0===t?function(){if(i.length>0)return i[0].getAttribute(n)}():i.each(function(i,r){r.setAttribute(n,t)})};i.prototype.removeAttr=function(n){return this.each(function(t,i){i.removeAttribute(n)})};i.prototype.html=function(n){var t=this;return void 0===n?function(){if(t.length>0)return t[0].innerHTML}():this.each(function(t,i){i.innerHTML=n})};i.prototype.val=function(n){var t=this;return void 0===n?function(){if(t.length>0)return t[0].value}():this.each(function(t,i){i.value=n})};i.prototype.append=function(n){return this.each(function(t,i){"object"==typeof n?i.appendChild(n):i.innerHTML=i.innerHTML+n})};i.prototype.remove=function(n){return this.each(function(t,i){n?i.removeChild(n):i.parentNode.removeChild(i)})};i.prototype.on=function(n,t){return this.each(function(i,r){r.attachEvent?r.attachEvent("on"+n,function(n){n.target=n.srcElement;t.call(r,n)}):r.addEventListener(n,t,!1)})};i.prototype.off=function(n,t){return this.each(function(i,r){r.detachEvent?r.detachEvent("on"+n,t):r.removeEventListener(n,t,!1)})};n.lay=t;n.layui&&layui.define&&layui.define(function(n){n(u,t)})}(window,window.document);layui.define(function(n){"use strict";var t={open:"{{",close:"}}"},r={exp:function(n){return new RegExp(n,"g")},query:function(n,r,u){var f=["#([\\s\\S])+?","([^{#}])*?"][n||0];return i((r||"")+t.open+f+t.close+(u||""))},escape:function(n){return String(n||"").replace(/&(?!#?[a-zA-Z0-9]+;)/g,"&").replace(//g,">").replace(/'/g,"'").replace(/"/g,""")},error:function(n,t){var i="Laytpl Error: ";return"object"==typeof console&&console.error(i+n+"\n"+(t||"")),i+n}},i=r.exp,u=function(n){this.tpl=n},f;u.pt=u.prototype;window.errors=0;u.pt.parse=function(n,u){var f=this,e=n,o=i("^"+t.open+"#",""),s=i(t.close+"$","");n=n.replace(/\s+|\r|\t|\n/g," ").replace(i(t.open+"#"),t.open+"# ").replace(i(t.close+"}"),"} "+t.close).replace(/\\/g,"\\\\").replace(i(t.open+"!(.+?)!"+t.close),function(n){return n.replace(i("^"+t.open+"!"),"").replace(i("!"+t.close),"").replace(i(t.open+"|"+t.close),function(n){return n.replace(/(.)/g,"\\$1")})}).replace(/(?="|')/g,"\\").replace(r.query(),function(n){return n=n.replace(o,"").replace(s,""),'";'+n.replace(/\\(.)/g,"$1")+';view+="'}).replace(r.query(1),function(n){var r='"+(';return n.replace(/\s/g,"")===t.open+t.close?"":(n=n.replace(i(t.open+"|"+t.close),""),/^=/.test(n)&&(n=n.replace(/^=/,""),r='"+_escape_('),r+n.replace(/\\(.)/g,"$1")+')+"')});n='"use strict";var view = "'+n+'";return view;';try{return f.cache=n=new Function("d, _escape_",n),n(u,r.escape)}catch(h){return delete f.cache,r.error(h,e)}};u.pt.render=function(n,t){var u,i=this;return n?(u=i.cache?i.cache(n,r.escape):i.parse(i.tpl,n),t?void t(u):u):r.error("no data")};f=function(n){return"string"!=typeof n?r.error("Template not found"):new u(n)};f.config=function(n){n=n||{};for(var i in n)t[i]=n[i]};f.v="1.2.0";n("laytpl",f)});layui.define(function(n){"use strict";var u=document,f="getElementById",r="getElementsByTagName",e="layui-disabled",i=function(n){var i=this;i.config=n||{};i.config.index=++t.index;i.render(!0)},t;i.prototype.type=function(){var n=this.config;if("object"==typeof n.elem)return void 0===n.elem.length?2:3};i.prototype.view=function(){var u=this,n=u.config,t=n.groups="groups"in n?0|n.groups:5,i,r;return n.layout="object"==typeof n.layout?n.layout:["prev","page","next"],n.count=0|n.count,n.curr=0|n.curr||1,n.limits="object"==typeof n.limits?n.limits:[10,20,30,40,50],n.limit=0|n.limit||10,n.pages=Math.ceil(n.count/n.limit)||1,n.curr>n.pages&&(n.curr=n.pages),t<0?t=1:t>n.pages&&(t=n.pages),n.prev="prev"in n?n.prev:"上一页",n.next="next"in n?n.next:"下一页",i=n.pages>t?Math.ceil((n.curr+(t>1?1:0))/(t>0?t:1)):1,r={prev:function(){return n.prev?''+n.prev+"<\/a>":""}(),page:function(){var u=[];if(n.count<1)return"";i>1&&n.first!==!1&&0!==t&&u.push(''+(n.first||1)+"<\/a>");var e=Math.floor((t-1)/2),r=i>1?n.curr-e:1,f=i>1?function(){var i=n.curr+(t-e-1);return i>n.pages?n.pages:i}():t;for(f-r2&&u.push('…<\/span>');r<=f;r++)r===n.curr?u.push('<\/em>"+r+"<\/em><\/span>"):u.push(''+r+"<\/a>");return n.pages>t&&n.pages>f&&n.last!==!1&&(f+1…<\/span>'),0!==t&&u.push(''+(n.last||n.pages)+"<\/a>")),u.join("")}(),next:function(){return n.next?''+n.next+"<\/a>":""}(),count:'共 '+n.count+" 条<\/span>",limit:function(){var t=['','页