80 lines
2.4 KiB
C#
80 lines
2.4 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using Lskj.Util;
|
|
using Lskj.Business;
|
|
using System.Windows.Forms;
|
|
using Lskj.Model;
|
|
using Newtonsoft.Json;
|
|
using Newtonsoft.Json.Linq;
|
|
using System.Data;
|
|
|
|
namespace Lskj.PubApiSetModule
|
|
{
|
|
/// <summary>
|
|
/// c#库被调用统一接口类
|
|
/// </summary>
|
|
public sealed class DllBaseClass : IForm
|
|
{
|
|
public DllBaseClass()
|
|
{
|
|
|
|
}
|
|
public DllBaseClass(string[] obj)
|
|
{
|
|
try
|
|
{
|
|
DynamicApiSetModel dynamicModel = new DynamicApiSetModel(obj);
|
|
FrmMain main = new FrmMain();
|
|
this.SubForm = main;
|
|
main.Model = dynamicModel;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
LogUtil.WriteError("Lskj.PubApiSetModule.dll--参数错误-->" + obj.ToString(), ex);
|
|
}
|
|
}
|
|
/// <summary>
|
|
/// 窗口
|
|
/// </summary>
|
|
public Form SubForm { get; set; }
|
|
}
|
|
/// <summary>
|
|
/// 入口模型
|
|
/// </summary>
|
|
public class DynamicApiSetModel : DynamicModel
|
|
{
|
|
/// <summary>
|
|
/// 初始化默认参数(1.标题、2、用户ID、3.用户名、4.权限、5.模块编号、6.菜单ID)
|
|
/// </summary>
|
|
/// <param name="args">The arguments.</param>
|
|
public DynamicApiSetModel(string[] args) : base(args)
|
|
{
|
|
// 右键菜单打开的模块没有moduleId,部分特殊模块没有moduleId比如添加界面.
|
|
if (!string.IsNullOrEmpty(args[5]))
|
|
{
|
|
base.ModuleId = Convert.ToInt32(args[5]);
|
|
}
|
|
if (args.Length > 6 && !string.IsNullOrWhiteSpace(args[6]))
|
|
{
|
|
base.ModuleCode = args[6];
|
|
}
|
|
if (!string.IsNullOrEmpty(args[args.Length - 1]))
|
|
{
|
|
try
|
|
{
|
|
JObject rowObject = JsonConvert.DeserializeObject<JObject>(args[args.Length - 1]);
|
|
JArray jArray = new JArray();
|
|
jArray.Add(rowObject);
|
|
DataTable dataTable = JsonConvert.DeserializeObject<DataTable>(JsonConvert.SerializeObject(jArray));
|
|
this.MaintabFocusedRow = dataTable.Rows[0];
|
|
}
|
|
catch (Exception)
|
|
{
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|