Files
lserp_cs_6.0/插件库/Lskj.PubBomAlter/DllBaseClass.cs
T
2026-07-02 10:11:39 +00:00

118 lines
3.5 KiB
C#

using Lskj.Business;
using Lskj.Business.Impl;
using Lskj.Core;
using Lskj.Model;
using Lskj.Util;
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Windows.Forms;
namespace Lskj.PubBomAlter
{
/// <summary>
/// c#库被调用统一接口类
/// </summary>
public sealed class DllBaseClass : IForm
{
public DllBaseClass()
{
}
public DllBaseClass(string[] obj)
{
try
{
DynamicBomAlterModel bomAlterModel = new DynamicBomAlterModel(obj);
FrmMain main = new FrmMain();
main.ModelObj = obj;
main.BomAlterModel = bomAlterModel;
this.SubForm = main;
}
catch (Exception ex)
{
LogUtil.WriteError("Lskj.PubBomAlter.dll--参数错误-->" + obj.ToString(), ex);
}
}
/// <summary>
/// 窗口
/// </summary>
public Form SubForm { get; set; }
}
/// <summary>
/// 入口模型
/// </summary>
public class DynamicBomAlterModel : DynamicModel
{
/// <summary>
/// 保存的语句
/// </summary>
public string SaveSql;
/// <summary>
/// 验证的语句
/// </summary>
public string VerifySql;
/// <summary>
/// 反写确认按钮
/// </summary>
public string AllowFxBtn;
public override string[] OtherParams()
{
return this.Params;
}
/// <summary>
/// 初始化默认参数(1.标题、2、用户ID、3.用户名、4.权限、5.模块编号、6.菜单ID)
/// </summary>
/// <param name="args">The arguments.</param>
public DynamicBomAlterModel(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 (args.Length > 7 && !string.IsNullOrWhiteSpace(args[7]))
{
SaveSql = args[7];
}
if (args.Length > 8 && !string.IsNullOrWhiteSpace(args[8]))
{
AllowFxBtn = args[8] + "";
}
if (args.Length > 9 && !string.IsNullOrWhiteSpace(args[9]))
{
VerifySql = args[9];
}
if (args.Length > 10)
{
this.Params = new string[args.Length];
for (int i = 10; i < args.Length; i++)
{
Params[i - 10] = args[i];
}
}
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)
{
}
}
}
}
}