feat: support BS menu opening mode

This commit is contained in:
2026-08-12 17:53:50 +08:00
parent a803070819
commit 222ae3c08a
2 changed files with 63 additions and 2 deletions
+31 -1
View File
@@ -315,7 +315,12 @@ namespace Lskj.Main.Model
}
//验证是否设置不能打开多个相同模块
bool SingleOpenMode = MainImpl.GetOpenRestrictions(menuId);
bool openInBsMode = MainImpl.GetBsOpenMode(menuId) == 1;
string configuredDllName = dllName;
if (openInBsMode)
{
dllName = "Lskj.PubBrower2.dll";
}
LogUtil.WriteDebug(modelFlag.ToString(), "操作模块", menuName, menuName, menuId.ToString());
DllModule module = new DllModule
@@ -333,6 +338,21 @@ namespace Lskj.Main.Model
urlParams,
menuId
};
if (openInBsMode)
{
string bsUrl = BuildBsMenuUrl(configuredDllName, modelFlag);
args = new string[]
{
menuName,
ERPInfo.Instance.UserId,
ERPInfo.Instance.UserName,
purview + "",
"",
menuId,
"",
bsUrl
};
}
dllName = MainImpl.GetDefaultValue(dllName);
if (SystemInfo.Instance.SoftOpenMode || SingleOpenMode)
{
@@ -439,6 +459,16 @@ namespace Lskj.Main.Model
}
private static string BuildBsMenuUrl(string dllName, string dllCoid)
{
return string.Format(
"pages/app/app.html?xtype={0}&dllcoid={1}&username={2}&password={3}",
dllName,
dllCoid,
ERPInfo.Instance.UserName,
ERPInfo.Instance.Password);
}
private static string BuildOpeningModuleKey(
string menuId,
string dllName,