@{Dictionary definedObjects = new Dictionary();} @{string my_message = string.Empty;} import request from '/@@/utils/request'; enum Api { Add@(@Model.ClassName) = '/api/@(@Model.LowerClassName)/add', Delete@(@Model.ClassName) = '/api/@(@Model.LowerClassName)/delete', Update@(@Model.ClassName) = '/api/@(@Model.LowerClassName)/update', Page@(@Model.ClassName) = '/api/@(@Model.LowerClassName)/page', List@(@Model.ClassName) = '/api/@(@Model.LowerClassName)/list', Detail@(@Model.ClassName) = '/api/@(@Model.LowerClassName)/detail', ImportExcel@(@Model.ClassName) = '/api/@(@Model.LowerClassName)/importExcel', DownloadExcelTemplate@(@Model.ClassName) = '/api/@(@Model.LowerClassName)/downloadExcelTemplate', @foreach (var column in Model.TableField){ my_message="Get"+@column.FkEntityName+"Tree"; if(@column.EffectType == "fk" && (@column.WhetherAddUpdate == "Y" || column.QueryWhether == "Y")){ @:Get@(@column.FkEntityName)@(@column.PropertyName)Dropdown = '/api/@(@Model.LowerClassName)/@(@column.FkEntityName)@(@column.PropertyName)Dropdown', }else if(@column.EffectType == "ApiTreeSelect" && !definedObjects.ContainsKey(@my_message)){ definedObjects.Add(@my_message, 1); @:Get@(@column.FkEntityName)Tree = '/api/@(@Model.LowerClassName)/@(@column.FkEntityName)Tree', }else if(@column.EffectType == "Upload"){ @:Upload@(@column.PropertyName) = '/api/@(@Model.LowerClassName)/Upload@(@column.PropertyName)', } } } // 增加@(@Model.BusName) export const add@(@Model.ClassName) = (params?: any) => request({ url: Api.Add@(@Model.ClassName), method: 'post', data: params }); // 删除@(@Model.BusName) export const delete@(@Model.ClassName) = (params?: any) => request({ url: Api.Delete@(@Model.ClassName), method: 'post', data: params }); // 编辑@(@Model.BusName) export const update@(@Model.ClassName) = (params?: any) => request({ url: Api.Update@(@Model.ClassName), method: 'post', data: params }); // 导入@(@Model.BusName) export const importExcel@(@Model.ClassName) = (params?: any) => request({ url: Api.ImportExcel@(@Model.ClassName), method: 'post', data: params }); // 下载导入@(@Model.BusName)模板 export const downloadExcelTemplate@(@Model.ClassName) = (params?: any) => request({ url: Api.DownloadExcelTemplate@(@Model.ClassName), method: 'get', data: params, responseType: 'blob' }); // 分页查询@(@Model.BusName) export const page@(@Model.ClassName) = (params?: any) => request({ url: Api.Page@(@Model.ClassName), method: 'post', data: params }); // 不分页查询@(@Model.BusName) export const list@(@Model.ClassName) = (params?: any) => request({ url: Api.List@(@Model.ClassName), method: 'get', data: params }); // 详情@(@Model.BusName) export const detail@(@Model.ClassName) = (id: any) => request({ url: Api.Detail@(@Model.ClassName), method: 'get', data: { id } }); @{definedObjects = new Dictionary();} @foreach (var column in Model.TableField){ my_message="Get"+@column.FkEntityName+"Tree"; if(@column.EffectType == "fk" && (@column.WhetherAddUpdate == "Y" || column.QueryWhether == "Y")){ @:export const get@(@column.FkEntityName)@(@column.PropertyName)Dropdown = () => @:request({ @:url: Api.Get@(@column.FkEntityName)@(@column.PropertyName)Dropdown, @:method: 'get' @:}); }else if(@column.EffectType == "ApiTreeSelect" && !definedObjects.ContainsKey(@my_message)){ @{definedObjects.Add(@my_message, 1);} @:export const get@(@column.FkEntityName)Tree = () => @:request({ @:url: Api.Get@(@column.FkEntityName)Tree, @:method: 'get' @:}); }else if(@column.EffectType == "Upload"){ @:/** @:* 上传@(@column.ColumnComment) @:*/ @:export const upload@(@column.PropertyName) = (params: any) => @:uploadFileHandle(params, Api.Upload@(@column.PropertyName)) } } @foreach (var column in Model.TableField){ if(@column.EffectType == "Upload"){ @:export const uploadFileHandle = (params: any, url: string) => { @:const formData = new window.FormData(); @:formData.append('file', params.file); @://自定义参数 @:if (params.data) { @:Object.keys(params.data).forEach((key) => { @:const value = params.data![key]; @:if (Array.isArray(value)) { @:value.forEach((item) => { @:formData.append(`${key}[]`, item); @:}); @:return; @:} @:formData.append(key, params.data![key]); @:}); @:} @:return request({ @:url: url, @:method: 'POST', @:data: formData, @:headers: { @:'Content-type': 'multipart/form-data;charset=UTF-8', @:// ts-ignore @:ignoreCancelToken: true, @:}, @:}); @:}; break; } }