@{
ModelData modelData = Model;
NamespaceObject namespaceObject = modelData.NamespaceObject;
SysTableSchemaViewEntity[] sysTableSchemas = modelData.sysTableSchemas;
ClassInfo classInfo= modelData.ClassInfos.FirstOrDefault();
//ClassInfo classInfo= modelData.ClassInfos.Where(x=>x.ClassName=="SecurityUserService").FirstOrDefault();
}
@if(classInfo.IsDownload)
{
import { request,download } from "@@/utils/request";
}
else
{
import { request } from "@@/utils/request";
}
@{
List l=new List();
if(classInfo.ClassMethodInfos!=null && classInfo.ClassMethodInfos.Length>0 && classInfo.ClassMethodInfos[0].Parameters!=null)
{
for (var j= 0; j< classInfo.ClassMethodInfos.Length; j++)
{
for (var i = 0; i < classInfo.ClassMethodInfos[j].Parameters.Length; i++)
{
if(!classInfo.ClassMethodInfos[j].Parameters[i].IsValueType)
{
if (!l.Contains(classInfo.ClassMethodInfos[j].Parameters[i].ParameterTypeName.Replace("[]", "")))
{
l.Add(classInfo.ClassMethodInfos[j].Parameters[i].ParameterTypeName.Replace("[]", ""));
}
}
}
if("dynamic" !=classInfo.ClassMethodInfos[j].MethodReturnName)
{
if(classInfo.ClassMethodInfos[j].IsValueType) continue;
if (l.Contains(classInfo.ClassMethodInfos[j].MethodReturnName.Replace("[]", ""))) continue;
l.Add(classInfo.ClassMethodInfos[j].MethodReturnName.Replace("[]", ""));
}
}
}
foreach (string s in l)
{
if(s.StringToProtectedProerty()=="string") continue;
if(s.StringToProtectedProerty()=="byte") continue;
import type { @s } from "@@/data/auto/@s.StringToProtectedProerty()";
}
}
class @{@classInfo.ClassName}{
@{
if(classInfo.ClassMethodInfos!=null && classInfo.ClassMethodInfos.Length>0 && classInfo.ClassMethodInfos[0].Parameters!=null)
{
for (var j= 0; j< classInfo.ClassMethodInfos.Length; j++)
{
string methodReturnName=classInfo.ClassMethodInfos[j].MethodReturnName;
if(classInfo.ClassMethodInfos[j].IsValueType)
{
if(classInfo.ClassMethodInfos[j].MethodReturnName=="String")
methodReturnName="string";
else if(classInfo.ClassMethodInfos[j].MethodReturnName=="Int32" || classInfo.ClassMethodInfos[j].MethodReturnName=="Int64" || classInfo.ClassMethodInfos[j].MethodReturnName=="Int16" || classInfo.ClassMethodInfos[j].MethodReturnName=="Long" || classInfo.ClassMethodInfos[j].MethodReturnName=="decimal" )
methodReturnName="number";
else if(classInfo.ClassMethodInfos[j].MethodReturnName=="String[]")
methodReturnName="string[]";
else if(classInfo.ClassMethodInfos[j].MethodReturnName=="Int32[]" || classInfo.ClassMethodInfos[j].MethodReturnName=="Int64[]" || classInfo.ClassMethodInfos[j].MethodReturnName=="Int16[]" || classInfo.ClassMethodInfos[j].MethodReturnName=="Long[]" || classInfo.ClassMethodInfos[j].MethodReturnName=="decimal[]" )
methodReturnName="number[]";
else methodReturnName="any";
}
if(classInfo.ClassMethodInfos[j].Parameters.Length==0)
{
async @{@classInfo.ClassMethodInfos[j].MethodName}() {
return request<@methodReturnName.Replace("dynamic", "any")>(
{
url: "/@{@classInfo.ClassName.Replace("Service", "")}/@{@classInfo.ClassMethodInfos[j].MethodName}",
method: "@{if(classInfo.ClassMethodInfos[j].HttpName!="[HttpGet]"){post}else{get} }",
}
)
};
}
for (var i = 0; i < classInfo.ClassMethodInfos[j].Parameters.Length; i++)
{
string parameterTypeName=classInfo.ClassMethodInfos[j].Parameters[i].ParameterTypeName;
string url="\"";
if(classInfo.ClassMethodInfos[j].Parameters[i].IsValueType)
{
url="?"+classInfo.ClassMethodInfos[j].Parameters[i].ParameterName+"=\"+data";
if(classInfo.ClassMethodInfos[j].Parameters[i].ParameterTypeName=="String")
parameterTypeName="string";
else if(classInfo.ClassMethodInfos[j].Parameters[i].ParameterTypeName=="Int32" || classInfo.ClassMethodInfos[j].Parameters[i].ParameterTypeName=="Int64" || classInfo.ClassMethodInfos[j].Parameters[i].ParameterTypeName=="Int16" || classInfo.ClassMethodInfos[j].Parameters[i].ParameterTypeName=="Long" || classInfo.ClassMethodInfos[j].Parameters[i].ParameterTypeName=="decimal" )
parameterTypeName="number";
else if(classInfo.ClassMethodInfos[j].Parameters[i].ParameterTypeName=="String[]")
parameterTypeName="string[]";
else if(classInfo.ClassMethodInfos[j].Parameters[i].ParameterTypeName=="Int32[]" || classInfo.ClassMethodInfos[j].Parameters[i].ParameterTypeName=="Int64[]" || classInfo.ClassMethodInfos[j].Parameters[i].ParameterTypeName=="Int16[]" || classInfo.ClassMethodInfos[j].Parameters[i].ParameterTypeName=="Long[]" || classInfo.ClassMethodInfos[j].Parameters[i].ParameterTypeName=="decimal[]" )
parameterTypeName="number[]";
else parameterTypeName="any";
}
if(classInfo.ClassMethodInfos[j].Parameters.Length>1) {url="\"";parameterTypeName="any";}
if(i>0) {continue;}
async @{@classInfo.ClassMethodInfos[j].MethodName}(data: @parameterTypeName) {
@{
bool isPrintBy=false;
bool isDownloadFile=false;
if(classInfo.ClassMethodInfos[j].MethodName.StartsWith("PrintBy"))
{
isPrintBy=true;
}
if(classInfo.ClassMethodInfos[j].MethodName.StartsWith("DownloadFile"))
{
isDownloadFile=true;
}
}
return @{if(isPrintBy){download}else{ request<@{@methodReturnName.Replace("dynamic", "any")}>}}(
{
url: "/@{@classInfo.ClassName.Replace("Service", "")}/@{@classInfo.ClassMethodInfos[j].MethodName}@url,
method: "@{if(classInfo.ClassMethodInfos[j].HttpName!="[HttpGet]"){post}else{get} }",
data,
@{if(isDownloadFile){ responseType: "arraybuffer",
}else{ }
}
@{if(isPrintBy){ filename:'@classInfo.ClassName.Replace("Service","")'
}else{ }
}
}
)
};
}
}
}
}
}
const @{@classInfo.ClassName.StringToProtectedProerty()}= new @{@classInfo.ClassName}();
export default @{@classInfo.ClassName.StringToProtectedProerty()};