@{ Dictionary definedObjects = new Dictionary(); string RemoteField=""; string PKName=""; foreach (var column in Model.TableField){ if(column.RemoteVerify){ RemoteField=@column.PropertyName; } if(column.ColumnKey == "True"){ PKName=column.PropertyName; } } } 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', Detail@(@Model.ClassName) = '/api/@(@Model.LowerClassName)/detail', @if(Model.RemoteVerify){ @:Exists@(RemoteField) = '/api/@(@Model.LowerClassName)/exists@(RemoteField)', } @foreach (var column in Model.TableField){ if(@column.EffectType == "fk" && (@column.WhetherAddUpdate == "Y" || column.QueryWhether == "Y")){ @:Get@(@column.FkEntityName)@(@column.PropertyName)Dropdown = '/api/@(@Model.LowerClassName)/@(LowerFirstLetter(@column.FkEntityName))@(@column.PropertyName)Dropdown', }else if(@column.EffectType == "ApiTreeSelect" && !definedObjects.ContainsKey("Get@(@column.FkEntityName)Tree")){ @{definedObjects.Add("Get@(@column.FkEntityName)Tree", 1);} @:Get@(@column.FkEntityName)Tree = '/api/@(@Model.LowerClassName)/@(LowerFirstLetter(@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 page@(@Model.ClassName) = (params?: any) => request({ url: Api.Page@(@Model.ClassName), method: 'post', data: params, }); // 详情@(@Model.BusName) export const detail@(@Model.ClassName) = (id: any) => request({ url: Api.Detail@(@Model.ClassName), method: 'get', data: { id }, }); @foreach (var column in Model.TableField){ 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("get@(@column.FkEntityName)Tree")){ @{definedObjects.Add("get@(@column.FkEntityName)Tree", 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; } } @if(Model.RemoteVerify){ @:// 检查@(RemoteField)是否存在 @:export const exists@(RemoteField) = (params?: any) => @:request({ @:url: Api.Exists@(RemoteField), @:method: 'post', @:data: params, @:}); } @{ string LowerFirstLetter(string text) { return text.ToString()[..1].ToLower() + text[1..]; // 首字母小写 } }