Commit 91bbe981 by 陶然

init

parents
################################################################################
# 此 .gitignore 文件已由 Microsoft(R) Visual Studio 自动创建。
################################################################################
/Src/obj/Debug
/Src/bin/Debug
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Kivii.Seeyon.Entities
{
#region Request
public class RequestRestToken
{
public string userName { get; set; }
public string password { get; set; }
public string loginName { get; set; }
}
public class RequestForm<T>
{
/// <summary>
/// 默认值(OA提供)
/// </summary>
public string appName { get; set; }
/// <summary>
/// 请求参数
/// </summary>
public RequestData<T> data { get; set; }
}
public class RequestData<T>
{
/// <summary>
/// /默认值,流程模版编码(OA提供)
/// </summary>
public string templateCode { get; set; }
/// <summary>
/// 0待发 1发送
/// </summary>
public string draft { get; set; }
/// <summary>
/// 发送人登录名
/// </summary>
public string senderLoginName { get; set; }
/// <summary>
/// 流程标题
/// </summary>
public string subject { get; set; }
/// <summary>
/// 具体表单内容
/// </summary>
public T data { get; set; }
}
#endregion
#region Response
public class ResponseForm<T>
{
/// <summary>
/// 返回码
/// </summary>
public string code { get; set; }
public T data { get; set; }
public string message { get; set; }
}
public class ResponseData
{
public List<WorkItem> workitems { get; set; }
public string app_bussiness_data { get; set; }
/// <summary>
/// 流程ID(ctp_affair.process_id)
/// </summary>
public string processId { get; set; }
/// <summary>
/// 标题
/// </summary>
public string subject { get; set; }
public string errorMsg { get; set; }
public class WorkItem
{
public string nodeName { get; set; }
public string userLoginName { get; set; }
public string id { get; set; }
public string userName { get; set; }
public string nodeId { get; set; }
public string userId { get; set; }
}
}
public class ResponseToken
{
/// <summary>
///
/// </summary>
public BindingUser bindingUser { get; set; }
/// <summary>
///
/// </summary>
public string userName { get; set; }
/// <summary>
///
/// </summary>
public string id { get; set; }
public class BindingUser
{
/// <summary>
///
/// </summary>
public string loginState { get; set; }
/// <summary>
///
/// </summary>
public string sessionId { get; set; }
/// <summary>
///
/// </summary>
public int id { get; set; }
/// <summary>
///
/// </summary>
public int securityKey { get; set; }
/// <summary>
///
/// </summary>
public string loginName { get; set; }
/// <summary>
///
/// </summary>
public string name { get; set; }
/// <summary>
///
/// </summary>
public int loginAccount { get; set; }
/// <summary>
/// 江苏省纺织产品质量监督检验研究院
/// </summary>
public string loginAccountName { get; set; }
/// <summary>
/// 单位
/// </summary>
public string loginAccountShortName { get; set; }
/// <summary>
///
/// </summary>
public string province { get; set; }
/// <summary>
///
/// </summary>
public string city { get; set; }
/// <summary>
///
/// </summary>
public string rectangle { get; set; }
/// <summary>
///
/// </summary>
public string nodeIndex { get; set; }
/// <summary>
///
/// </summary>
public int departmentId { get; set; }
/// <summary>
///
/// </summary>
public int levelId { get; set; }
/// <summary>
///
/// </summary>
public int postId { get; set; }
/// <summary>
///
/// </summary>
public int accountId { get; set; }
/// <summary>
///
/// </summary>
public string remoteAddr { get; set; }
/// <summary>
///
/// </summary>
public string userAgentFrom { get; set; }
/// <summary>
///
/// </summary>
public int externalType { get; set; }
/// <summary>
///
/// </summary>
public string locale { get; set; }
/// <summary>
///
/// </summary>
public int loginTimestamp { get; set; }
/// <summary>
///
/// </summary>
public string loginLogId { get; set; }
/// <summary>
///
/// </summary>
public string skin { get; set; }
/// <summary>
///
/// </summary>
public string userSSOFrom { get; set; }
/// <summary>
///
/// </summary>
public string browser { get; set; }
/// <summary>
///
/// </summary>
public string timeZone { get; set; }
/// <summary>
///
/// </summary>
public string canSendSMS { get; set; }
/// <summary>
///
/// </summary>
public string etagRandom { get; set; }
/// <summary>
///
/// </summary>
public int changeRoleTimestamp { get; set; }
/// <summary>
///
/// </summary>
public string v5Member { get; set; }
/// <summary>
///
/// </summary>
public string guest { get; set; }
/// <summary>
///
/// </summary>
public string @internal { get; set; }
/// <summary>
///
/// </summary>
public string groupSystemAdmin { get; set; }
/// <summary>
///
/// </summary>
public string unitSystemAdmin { get; set; }
/// <summary>
///
/// </summary>
public int loginSign { get; set; }
/// <summary>
///
/// </summary>
public string vjoinMember { get; set; }
/// <summary>
///
/// </summary>
public string admin { get; set; }
/// <summary>
///
/// </summary>
public string v5External { get; set; }
/// <summary>
///
/// </summary>
public string groupAdmin { get; set; }
/// <summary>
///
/// </summary>
public string administrator { get; set; }
/// <summary>
///
/// </summary>
public string visitor { get; set; }
/// <summary>
///
/// </summary>
public string systemAdmin { get; set; }
/// <summary>
///
/// </summary>
public string auditAdmin { get; set; }
/// <summary>
///
/// </summary>
public string fromM1 { get; set; }
/// <summary>
///
/// </summary>
public string platformAdmin { get; set; }
/// <summary>
///
/// </summary>
public string superAdmin { get; set; }
/// <summary>
///
/// </summary>
public string screenGuest { get; set; }
/// <summary>
///
/// </summary>
public string defaultGuest { get; set; }
}
}
#endregion
}
using Kivii.Seeyon.Transforms;
using Kivii.Web;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Kivii.Seeyon.Entities
{
public class Apply
{
}
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Kivii.Seeyon
{
public interface IEntityIsSeeyonApply
{
/// <summary>
/// OA申请提交
/// </summary>
/// <param name="Kvid"></param>
/// <returns></returns>
object OnSubmitApplyForm<T>(Guid Kvid);
/// <summary>
/// OA申请结果调用
/// </summary>
/// <param name="Kvid">对应业务Kvid</param>
/// <param name="Result">OA申请结果</param>
/// <param name="Message">消息</param>
/// <returns></returns>
object OnGetApplyResult(Guid Kvid, object Result, string Message);
}
}
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProjectGuid>{4304BEA2-2F6C-41E6-976B-3B2BC63D3FE3}</ProjectGuid>
<OutputType>Library</OutputType>
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>Kivii.Seeyon</RootNamespace>
<AssemblyName>Kivii.Seeyon.Addons.V4.5</AssemblyName>
<TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
<Deterministic>true</Deterministic>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>bin\Debug\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
<Optimize>true</Optimize>
<OutputPath>bin\Release\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<ItemGroup>
<Reference Include="Kivii.Common.V4.5, Version=5.6.2023.6000, Culture=neutral, processorArchitecture=MSIL">
<HintPath>..\..\JST\local.Jst\packages\Kivii.Common.5.6.2023.6000\lib\net45\Kivii.Common.V4.5.dll</HintPath>
</Reference>
<Reference Include="Kivii.Core.V4.5, Version=5.6.2023.6000, Culture=neutral, processorArchitecture=MSIL">
<HintPath>..\..\JST\local.Jst\packages\Kivii.Core.5.6.2023.6000\lib\net45\Kivii.Core.V4.5.dll</HintPath>
</Reference>
<Reference Include="Kivii.Linq.V4.5, Version=5.6.2023.4200, Culture=neutral, processorArchitecture=MSIL">
<HintPath>..\..\JST\local.Jst\packages\Kivii.Linq.5.6.2023.4200\lib\net45\Kivii.Linq.V4.5.dll</HintPath>
</Reference>
<Reference Include="System" />
<Reference Include="System.Core" />
<Reference Include="System.Xml.Linq" />
<Reference Include="System.Data.DataSetExtensions" />
<Reference Include="Microsoft.CSharp" />
<Reference Include="System.Data" />
<Reference Include="System.Net.Http" />
<Reference Include="System.Xml" />
</ItemGroup>
<ItemGroup>
<Compile Include="Entities\SeeyonInterface.cs" />
<Compile Include="Entities\Request.Response.cs" />
<Compile Include="Entities\SeeyonApply.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="Transforms\RestfulApply.cs" />
</ItemGroup>
<ItemGroup>
<None Include="packages.config" />
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
</Project>
\ No newline at end of file
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
// 有关程序集的一般信息由以下
// 控制。更改这些特性值可修改
// 与程序集关联的信息。
[assembly: AssemblyTitle("Kivii.Seeyon.Addons.V4.5")]
[assembly: AssemblyDescription("致远OA对接模块")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("Kivii.Seeyon.Addons.V4.5")]
[assembly: AssemblyCopyright("Copyright © 2023")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
// 将 ComVisible 设置为 false 会使此程序集中的类型
//对 COM 组件不可见。如果需要从 COM 访问此程序集中的类型
//请将此类型的 ComVisible 特性设置为 true。
[assembly: ComVisible(false)]
// 如果此项目向 COM 公开,则下列 GUID 用于类型库的 ID
[assembly: Guid("4304bea2-2f6c-41e6-976b-3b2bc63d3fe3")]
// 程序集的版本信息由下列四个值组成:
//
// 主版本
// 次版本
// 生成号
// 修订号
//
//可以指定所有这些值,也可以使用“生成号”和“修订号”的默认值
//通过使用 "*",如下所示:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("5.4.2023.9200")]
[assembly: AssemblyFileVersion("5.4.2023.9200")]
using Kivii.Seeyon.Entities;
using Kivii.Web;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Kivii.Seeyon.Transforms
{
//[RequiresAnyRole(SystemRoles.Everyone)]
//[Api(Description = "提交OA申请表单")]
//public class ApplyRequest2 : RestfulExecution<Apply>
//{
// public string EntityType { get; set; }
// public object Form { get; set; }
// public override object OnExecution(IRequest req, IResponse res)
// {
// EntityType.ThrowIfNull("请传入业务实体EntityType");
// var type = Kivii.Text.AssemblyUtils.FindType(EntityType);
// var instance = Activator.CreateInstance(type) as IEntityIsSeeyonApply;
// if (instance == null) return null;
// var results = instance.OnSubmitApplyForm(Form);
// return results;
// }
//}
[RequiresAnyRole(SystemRoles.Everyone)]
[Api(Description = "提交OA申请表单")]
public class ApplyRequest : RestfulExecutionGeneric<Apply>
{
public string FormType { get; set; }
public Guid Kvid { get; set; }
public override object OnExecutionGeneric<G>(IRequest req, IResponse res)
{
FormType.ThrowIfNull("请传入业务实体FormType");
var type = Kivii.Text.AssemblyUtils.FindType(FormType);
var instance = Activator.CreateInstance(type) as IEntityIsSeeyonApply;
if (instance == null) return null;
var results = instance.OnSubmitApplyForm<G>(Kvid);
return results;
}
}
[Api(Description = "OA结果调用")]
public class ApplyResult : RestfulExecution<Apply>
{
public string FormType { get; set; }
public Guid Kvid { get; set; }
public object Result { get; set; }
public string Message { get; set; }
public override object OnExecution(IRequest req, IResponse res)
{
FormType.ThrowIfNull("请传入业务实体FormType");
var type = Kivii.Text.AssemblyUtils.FindType(FormType);
var instance = Activator.CreateInstance(type) as IEntityIsSeeyonApply;
if (instance == null) return null;
var results = instance.OnGetApplyResult(Kvid, Result, Message);
return results;
}
}
}
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="Kivii.Common" version="5.6.2023.6000" targetFramework="net45" />
<package id="Kivii.Core" version="5.6.2023.6000" targetFramework="net45" />
<package id="Kivii.Linq" version="5.6.2023.4200" targetFramework="net45" />
</packages>
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment