diff --git a/Admin.NET/Admin.NET.Application/Service/Materials/MaterialsService.cs b/Admin.NET/Admin.NET.Application/Service/Materials/MaterialsService.cs index d603c4a..646e1c2 100644 --- a/Admin.NET/Admin.NET.Application/Service/Materials/MaterialsService.cs +++ b/Admin.NET/Admin.NET.Application/Service/Materials/MaterialsService.cs @@ -166,5 +166,15 @@ public class MaterialsService : IDynamicApiController, ITransient return model!=null?true:false; } + [HttpPost] + [ApiDescriptionSettings(Name = "GetMaterialsList")] + public async Task> GetMaterialsList(MaterialsUnitGetInput input) + { + var list = await _rep.AsQueryable().Where(a => !a.IsDelete) + .WhereIF(input.UnitGroupId>0, u => u.UnitGroupId == input.UnitGroupId) + .WhereIF(!string.IsNullOrWhiteSpace(input.Unit), u => u.Unit.Equals(input.Unit)) + .ToListAsync(); + return list; + } } diff --git a/Admin.NET/Admin.NET.Application/Service/SysUnit/Dto/SysUnitInput.cs b/Admin.NET/Admin.NET.Application/Service/SysUnit/Dto/SysUnitInput.cs index 7d8213f..276bd0f 100644 --- a/Admin.NET/Admin.NET.Application/Service/SysUnit/Dto/SysUnitInput.cs +++ b/Admin.NET/Admin.NET.Application/Service/SysUnit/Dto/SysUnitInput.cs @@ -224,3 +224,21 @@ public class QueryByIdSysUnitInput : DeleteSysUnitInput { } + +/// +/// 更新单位状态 +/// +public class UpdateSysUnitEnableInput +{ + /// + /// 主键Id + /// + [Required(ErrorMessage = "主键Id不能为空")] + public string Ids { get; set; } + + /// + /// 是否启用 + /// + public bool IsEnable { get; set; } +} + diff --git a/Admin.NET/Admin.NET.Application/Service/SysUnit/SysUnitService.cs b/Admin.NET/Admin.NET.Application/Service/SysUnit/SysUnitService.cs index 86bce61..7dcfae9 100644 --- a/Admin.NET/Admin.NET.Application/Service/SysUnit/SysUnitService.cs +++ b/Admin.NET/Admin.NET.Application/Service/SysUnit/SysUnitService.cs @@ -4,6 +4,7 @@ using Admin.NET.Application.Entity; using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Mvc.ViewFeatures; using System.Text.RegularExpressions; +using Nest; namespace Admin.NET.Application; /// /// 单位服务 @@ -12,6 +13,8 @@ namespace Admin.NET.Application; public class SysUnitService : IDynamicApiController, ITransient { private readonly SqlSugarRepository _rep; + + public SysUnitService(SqlSugarRepository rep) { _rep = rep; @@ -191,41 +194,19 @@ public class SysUnitService : IDynamicApiController, ITransient } /// - /// 生成编码 + /// 修改单位启用禁用状态 /// /// /// - [HttpGet] - [ApiDescriptionSettings(Name = "createCodeNum")] - public async Task CreateCodeNum() + [HttpPost] + [ApiDescriptionSettings(Name = "updateBaseUnitEnable")] + public async Task UpdateBaseUnitEnable(UpdateSysUnitEnableInput input) { - string dt = DateTime.Now.ToString("yyyyMMdd"); - var unit = await _rep.AsQueryable() - .Where(a => !a.IsDelete) - .Where(a => a.CodeNum.Contains(dt)) - .OrderByDescending(t => t.CodeNum) - .FirstAsync(); - if (unit != null) + foreach (var id in input.Ids.Split(",")) { - Match match = Regex.Match(unit.CodeNum, @"\d+"); - if (match.Success) - { - string numberStr = match.Value; // 获取匹配到的数字字符串 - int number = int.Parse(numberStr); // 将数字字符串转换为整数 - number++; // 对数字进行加1操作 - - // 将结果转换回字符串,并保持与原数字相同的长度 - string paddedNumber = number.ToString().PadLeft(match.Value.Length, '0'); - return paddedNumber; - } - else - { - return dt + "001"; - } - } - else - { - return dt + "001"; + var entity = _rep.GetById(id); + entity.IsEnable = input.IsEnable; + await _rep.AsUpdateable(entity).IgnoreColumns(ignoreAllNullColumns: true).ExecuteCommandAsync(); } } } diff --git a/Web/src/api-services/apis/sys-unit-api.ts b/Web/src/api-services/apis/sys-unit-api.ts index bbb7e7b..1457858 100644 --- a/Web/src/api-services/apis/sys-unit-api.ts +++ b/Web/src/api-services/apis/sys-unit-api.ts @@ -25,6 +25,7 @@ import { AdminResultSysUnit } from '../models'; import { DeleteSysUnitInput } from '../models'; import { SysUnitInput } from '../models'; import { UpdateSysUnitInput } from '../models'; +import {UpdateSysUnitEnableInput} from "/@/api-services/models/update-sys-unit-enable-input"; /** * SysUnitApi - axios parameter creator * @export @@ -410,6 +411,54 @@ export const SysUnitApiAxiosParamCreator = function (configuration?: Configurati const needsSerialization = (typeof body !== "string") || localVarRequestOptions.headers['Content-Type'] === 'application/json'; localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || ""); + return { + url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, + options: localVarRequestOptions, + }; + }, + /** + * + * @summary 修改单位启动禁用状态 + * @param {UpdateSysUnitInput} [body] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + apiSysUnitUpdateEnablePost: async (body?: UpdateSysUnitEnableInput, options: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/api/sysUnit/updateBaseUnitEnable`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, 'https://example.com'); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + const localVarRequestOptions :AxiosRequestConfig = { method: 'POST', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication Bearer required + // http bearer authentication required + if (configuration && configuration.accessToken) { + const accessToken = typeof configuration.accessToken === 'function' + ? await configuration.accessToken() + : await configuration.accessToken; + localVarHeaderParameter["Authorization"] = "Bearer " + accessToken; + } + + localVarHeaderParameter['Content-Type'] = 'application/json-patch+json'; + + const query = new URLSearchParams(localVarUrlObj.search); + for (const key in localVarQueryParameter) { + query.set(key, localVarQueryParameter[key]); + } + for (const key in options.params) { + query.set(key, options.params[key]); + } + localVarUrlObj.search = (new URLSearchParams(query)).toString(); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + const needsSerialization = (typeof body !== "string") || localVarRequestOptions.headers['Content-Type'] === 'application/json'; + localVarRequestOptions.data = needsSerialization ? JSON.stringify(body !== undefined ? body : {}) : (body || ""); + return { url: localVarUrlObj.pathname + localVarUrlObj.search + localVarUrlObj.hash, options: localVarRequestOptions, @@ -534,6 +583,19 @@ export const SysUnitApiFp = function(configuration?: Configuration) { return axios.request(axiosRequestArgs); }; }, + /** + * + * @summary 单位禁用 + * @param body + * @param options + */ + async apiSysUnitUpdateEnablePost(body?: UpdateSysUnitEnableInput, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => Promise>> { + const localVarAxiosArgs = await SysUnitApiAxiosParamCreator(configuration).apiSysUnitUpdateEnablePost(body, options); + return (axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => { + const axiosRequestArgs :AxiosRequestConfig = {...localVarAxiosArgs.options, url: basePath + localVarAxiosArgs.url}; + return axios.request(axiosRequestArgs); + }; + }, } }; @@ -717,4 +779,14 @@ export class SysUnitApi extends BaseAPI { async apiSysUnitCheckPost(body?: UpdateSysUnitInput, options?: AxiosRequestConfig): Promise> { return SysUnitApiFp(this.configuration).apiSysUnitCheckPost(body, options).then((request) => request(this.axios, this.basePath)); } + + /** + * + * @param body + * @param options + */ + async apiSysUnitUpdateEnablePost(body?: UpdateSysUnitEnableInput, options?: AxiosRequestConfig): Promise> { + return SysUnitApiFp(this.configuration).apiSysUnitUpdateEnablePost(body, options).then((request) => request(this.axios, this.basePath)); + + } } diff --git a/Web/src/api-services/models/update-sys-unit-enable-input.ts b/Web/src/api-services/models/update-sys-unit-enable-input.ts new file mode 100644 index 0000000..236871e --- /dev/null +++ b/Web/src/api-services/models/update-sys-unit-enable-input.ts @@ -0,0 +1,38 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * 所有接口 + * 让 .NET 开发更简单、更通用、更流行。前后端分离架构(.NET6/Vue3),开箱即用紧随前沿技术。 + * + * OpenAPI spec version: 1.0.0 + * + * + * NOTE: This class is auto generated by the swagger code generator program. + * https://github.com/swagger-api/swagger-codegen.git + * Do not edit the class manually. + */ + + /** + * 单位禁用更新输入参数 + * + * @export + * @interface UpdateSysUnitInput + */ +export interface UpdateSysUnitEnableInput { + + /** + * 单位组ID + * + * @type {number} + * @memberof UpdateSysUnitInput + */ + isEnable: boolean; + + /** + * 主键Id + * + * @type {number} + * @memberof UpdateSysUnitInput + */ + ids: string; +} diff --git a/Web/src/api/main/materials.ts b/Web/src/api/main/materials.ts index d207b44..28bcbdb 100644 --- a/Web/src/api/main/materials.ts +++ b/Web/src/api/main/materials.ts @@ -8,6 +8,7 @@ enum Api { ListMaterials = '/api/materials/list', MtListBySourceId = '/api/materialList/listBySourceId', CheckMaterials = '/api/materials/CheckById', + GetMaterialsList = '/api/materials/GetMaterialsList', } // 增加物料 @@ -72,4 +73,12 @@ export const materialListBySourceId = (sourceId: any) => url: Api.MtListBySourceId, method: 'get', data: { sourceId }, - }); +}); + +// 获取物料集合 +export const listMaterialByUnit = (unitGroupId: any,unit:any) => + request({ + url: Api.GetMaterialsList, + method: 'post', + data: { UnitGroupId:unitGroupId,Unit:unit }, + }); \ No newline at end of file diff --git a/Web/src/views/basics-date/matter/component/editClassifyOpenAccess.vue b/Web/src/views/basics-date/matter/component/editClassifyOpenAccess.vue index 54da3f1..a40819a 100644 --- a/Web/src/views/basics-date/matter/component/editClassifyOpenAccess.vue +++ b/Web/src/views/basics-date/matter/component/editClassifyOpenAccess.vue @@ -1,164 +1,171 @@ \ No newline at end of file diff --git a/Web/src/views/basics-date/matter/component/editOpenAccess.vue b/Web/src/views/basics-date/matter/component/editOpenAccess.vue index 6c40970..a6ca955 100644 --- a/Web/src/views/basics-date/matter/component/editOpenAccess.vue +++ b/Web/src/views/basics-date/matter/component/editOpenAccess.vue @@ -2,11 +2,11 @@ + +