Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
M
mall.oytour.com
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
黄奎
mall.oytour.com
Commits
a8d4dc83
Commit
a8d4dc83
authored
Nov 10, 2020
by
黄奎
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
新增商城菜单相关
parent
8eb0e9f5
Hide whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
245 additions
and
22 deletions
+245
-22
RB_Menu.cs
Mall.Model/Entity/User/RB_Menu.cs
+4
-6
RB_Tenant_Menu.cs
Mall.Model/Entity/User/RB_Tenant_Menu.cs
+28
-0
RB_Menu_Extend.cs
Mall.Model/Extend/User/RB_Menu_Extend.cs
+5
-0
RB_Tenant_Menu_Extend.cs
Mall.Model/Extend/User/RB_Tenant_Menu_Extend.cs
+16
-0
Mall.Module.User.csproj
Mall.Module.User/Mall.Module.User.csproj
+1
-0
MenuModule.cs
Mall.Module.User/MenuModule.cs
+0
-2
TenantMenuModule.cs
Mall.Module.User/TenantMenuModule.cs
+52
-0
RB_Share_FriendRepository.cs
Mall.Repository/MarketingCenter/RB_Share_FriendRepository.cs
+4
-3
RB_Tenant_MenuRepository.cs
Mall.Repository/User/RB_Tenant_MenuRepository.cs
+38
-0
MContentController.cs
Mall.WebApi/Controllers/User/MContentController.cs
+86
-0
TenantController.cs
Mall.WebApi/Controllers/User/TenantController.cs
+11
-11
No files found.
Mall.Model/Entity/User/RB_Menu.cs
View file @
a8d4dc83
using
VT.FW.DB
;
using
System
;
using
System.Collections.Generic
;
using
System.Text
;
namespace
Mall.Model.Entity.User
{
/// <summary>
/// 菜单实体表
/// </summary>
{
/// <summary>
/// 菜单实体表
/// </summary>
[
Serializable
]
[
DB
(
ConnectionName
=
"DefaultConnection"
)]
public
class
RB_Menu
...
...
Mall.Model/Entity/User/RB_Tenant_Menu.cs
0 → 100644
View file @
a8d4dc83
using
System
;
using
VT.FW.DB
;
namespace
Mall.Model.Entity.User
{
/// <summary>
/// 商户菜单实体表
/// </summary>
[
Serializable
]
[
DB
(
ConnectionName
=
"DefaultConnection"
)]
public
class
RB_Tenant_Menu
{
/// <summary>
/// 商户菜单编号【主键】
/// </summary>
public
int
TMenuId
{
get
;
set
;
}
/// <summary>
/// 商户编号
/// </summary>
public
int
TenantId
{
get
;
set
;
}
/// <summary>
/// 菜单编号
/// </summary>
public
int
MenuId
{
get
;
set
;
}
}
}
Mall.Model/Extend/User/RB_Menu_Extend.cs
View file @
a8d4dc83
...
...
@@ -32,5 +32,10 @@ namespace Mall.Model.Extend.User
/// 查询菜单编号
/// </summary>
public
string
QMenuIds
{
get
;
set
;
}
/// <summary>
/// 商户号
/// </summary>
public
int
TenantId
{
get
;
set
;
}
}
}
Mall.Model/Extend/User/RB_Tenant_Menu_Extend.cs
0 → 100644
View file @
a8d4dc83
using
Mall.Model.Entity.User
;
using
System
;
using
VT.FW.DB
;
namespace
Mall.Model.Extend.User
{
/// <summary>
/// 商户菜单扩展实体表
/// </summary>
[
Serializable
]
[
DB
(
ConnectionName
=
"DefaultConnection"
)]
public
class
RB_Tenant_Menu_Extend
:
RB_Tenant_Menu
{
}
}
\ No newline at end of file
Mall.Module.User/Mall.Module.User.csproj
View file @
a8d4dc83
...
...
@@ -5,6 +5,7 @@
</PropertyGroup>
<ItemGroup>
<ProjectReference Include="..\Mall.AOP\Mall.AOP.csproj" />
<ProjectReference Include="..\Mall.CacheManager\Mall.CacheManager.csproj" />
<ProjectReference Include="..\Mall.Model\Mall.Model.csproj" />
<ProjectReference Include="..\Mall.Repository\Mall.Repository.csproj" />
...
...
Mall.Module.User/MenuModule.cs
View file @
a8d4dc83
using
System
;
using
System.Collections.Generic
;
using
System.Text
;
using
Mall.Model.Extend.User
;
using
Mall.Repository
;
using
Mall.Repository.User
;
using
VT.FW.DB
;
...
...
Mall.Module.User/TenantMenuModule.cs
0 → 100644
View file @
a8d4dc83
using
Mall.AOP.CustomerAttribute
;
using
Mall.Model.Extend.User
;
using
Mall.Repository.User
;
using
NPOI.POIFS.Storage
;
using
System
;
using
System.Collections.Generic
;
using
System.Text
;
using
VT.FW.DB
;
namespace
Mall.Module.User
{
/// <summary>
/// 商户菜单处理类
/// </summary>
public
class
TenantMenuModule
{
/// <summary>
/// 商户菜单仓储层对象
/// </summary>
private
readonly
RB_Tenant_MenuRepository
tenant_MenuRepository
=
new
RB_Tenant_MenuRepository
();
/// <summary>
/// 获取商户菜单列表
/// </summary>
/// <param name="query"></param>
/// <returns></returns>
public
List
<
RB_Tenant_Menu_Extend
>
GetTenantMenuListModule
(
RB_Tenant_Menu_Extend
query
)
{
return
tenant_MenuRepository
.
GetTenantMenuListRepository
(
query
);
}
/// <summary>
/// 新增修改商户菜单
/// </summary>
/// <param name="list"></param>
/// <returns></returns>
[
TransactionCallHandler
]
public
bool
SetTenantMenuModule
(
List
<
RB_Tenant_Menu_Extend
>
list
)
{
bool
flag
=
false
;
if
(
list
!=
null
&&
list
.
Count
>
0
)
{
tenant_MenuRepository
.
DeleteOne
(
new
WhereHelper
(
nameof
(
RB_Tenant_Menu_Extend
.
TenantId
),
list
[
0
].
TenantId
));
foreach
(
var
item
in
list
)
{
flag
=
tenant_MenuRepository
.
Insert
(
item
)
>
0
;
}
}
return
flag
;
}
}
}
Mall.Repository/MarketingCenter/RB_Share_FriendRepository.cs
View file @
a8d4dc83
...
...
@@ -25,7 +25,7 @@ namespace Mall.Repository.MarketingCenter
public
List
<
RB_Share_Friend_Extend
>
GetShareFriendPageListRepository
(
int
pageIndex
,
int
pageSize
,
out
long
rowsCount
,
RB_Share_Friend_Extend
query
,
bool
IsUse
=
false
)
{
string
orderBy
=
""
;
DynamicParameters
parameters
=
new
DynamicParameters
();
StringBuilder
builder
=
new
StringBuilder
();
builder
.
AppendFormat
(
@"
SELECT A.*,B.Name AS GoodsName
...
...
@@ -61,7 +61,8 @@ WHERE 1=1 AND A.Status=0
}
if
(!
string
.
IsNullOrWhiteSpace
(
query
.
KeyWords
))
{
builder
.
AppendFormat
(
" AND A.{0} LIKE '%{1}%' "
,
nameof
(
RB_Share_Friend_Extend
.
MaterialInfo
),
query
.
KeyWords
);
builder
.
AppendFormat
(
" AND A.{0} LIKE @Name "
,
nameof
(
RB_Share_Friend_Extend
.
MaterialInfo
));
parameters
.
Add
(
"Name"
,
"%"
+
query
.
KeyWords
+
"%"
);
}
if
(!
string
.
IsNullOrWhiteSpace
(
query
.
QStartDate
))
{
...
...
@@ -77,7 +78,7 @@ WHERE 1=1 AND A.Status=0
}
}
builder
.
AppendFormat
(
orderBy
);
return
GetPage
<
RB_Share_Friend_Extend
>(
pageIndex
,
pageSize
,
out
rowsCount
,
builder
.
ToString
()).
ToList
();
return
GetPage
<
RB_Share_Friend_Extend
>(
pageIndex
,
pageSize
,
out
rowsCount
,
builder
.
ToString
()
,
parameters
).
ToList
();
}
...
...
Mall.Repository/User/RB_Tenant_MenuRepository.cs
0 → 100644
View file @
a8d4dc83
using
Mall.Model.Entity.User
;
using
Mall.Model.Extend.User
;
using
System
;
using
System.Collections.Generic
;
using
System.Linq
;
using
System.Text
;
namespace
Mall.Repository.User
{
/// <summary>
/// 商户菜单表仓储层
/// </summary>
public
class
RB_Tenant_MenuRepository
:
BaseRepository
<
RB_Tenant_Menu
>
{
/// <summary>
/// 获取商户菜单列表
/// </summary>
/// <param name="query"></param>
/// <returns></returns>
public
List
<
RB_Tenant_Menu_Extend
>
GetTenantMenuListRepository
(
RB_Tenant_Menu_Extend
query
)
{
StringBuilder
builder
=
new
StringBuilder
();
builder
.
Append
(
@" SELECT * FROM rb_tenant_menu WHERE 1=1 "
);
if
(
query
!=
null
)
{
if
(
query
.
TenantId
>
0
)
{
builder
.
AppendFormat
(
" AND {0}={1} "
,
nameof
(
RB_Tenant_Menu_Extend
.
TenantId
),
query
.
TenantId
);
}
return
Get
<
RB_Tenant_Menu_Extend
>(
builder
.
ToString
()).
ToList
();
}
else
{
return
new
List
<
RB_Tenant_Menu_Extend
>();
}
}
}
}
Mall.WebApi/Controllers/User/MContentController.cs
View file @
a8d4dc83
...
...
@@ -16,6 +16,7 @@ using Newtonsoft.Json.Linq;
using
Mall.Common
;
using
Microsoft.AspNetCore.Authorization
;
using
Mall.Model.Entity.User
;
using
Mall.AOP
;
namespace
Mall.WebApi.Controllers.User
{
...
...
@@ -30,6 +31,16 @@ namespace Mall.WebApi.Controllers.User
/// </summary>
private
Module
.
User
.
ContentModule
contentModule
=
new
ContentModule
();
/// <summary>
/// 菜单处理类
/// </summary>
private
Module
.
User
.
MenuModule
menuModule
=
new
Module
.
User
.
MenuModule
();
/// <summary>
/// 商户菜单处理类
/// </summary>
private
Module
.
User
.
TenantMenuModule
tenantMenuModule
=
AOPHelper
.
CreateAOPObject
<
TenantMenuModule
>();
#
region
专题分类
/// <summary>
...
...
@@ -418,5 +429,80 @@ namespace Mall.WebApi.Controllers.User
}
#
endregion
#
region
商城菜单
/// <summary>
/// 获取小程序分页列表
/// </summary>
/// <returns></returns>
[
HttpPost
]
public
ApiResult
SetTenantMenu
()
{
var
list
=
JsonConvert
.
DeserializeObject
<
List
<
RB_Tenant_Menu_Extend
>>(
RequestParm
.
msg
.
ToString
());
if
(
list
!=
null
&&
list
.
Count
>
0
)
{
foreach
(
var
item
in
list
)
{
item
.
TenantId
=
RequestParm
.
TenantId
;
}
}
var
flag
=
tenantMenuModule
.
SetTenantMenuModule
(
list
);
return
flag
?
ApiResult
.
Success
()
:
ApiResult
.
Failed
();
}
/// <summary>
/// 获取商户菜单列表
/// </summary>
/// <returns></returns>
[
HttpPost
]
public
ApiResult
GetTenantMenuList
()
{
List
<
object
>
result
=
new
List
<
object
>();
var
menuList
=
menuModule
.
GetMenuListModule
(
new
RB_Menu_Extend
());
if
(
menuList
!=
null
&&
menuList
.
Count
>
0
)
{
var
tenantMenuList
=
tenantMenuModule
.
GetTenantMenuListModule
(
new
RB_Tenant_Menu_Extend
()
{
TenantId
=
RequestParm
.
TenantId
});
foreach
(
var
item
in
menuList
.
Where
(
qitem
=>
qitem
.
MenuLevel
==
1
))
{
List
<
object
>
secondList
=
new
List
<
object
>();
foreach
(
var
subItem
in
menuList
.
Where
(
qitem
=>
qitem
.
MenuLevel
==
2
&&
qitem
.
ParentId
==
item
.
MenuId
))
{
List
<
object
>
childList
=
new
List
<
object
>();
foreach
(
var
thirdItem
in
menuList
.
Where
(
qitem
=>
qitem
.
MenuLevel
==
3
&&
qitem
.
ParentId
==
subItem
.
MenuId
))
{
childList
.
Add
(
new
{
thirdItem
.
MenuId
,
thirdItem
.
MenuName
,
thirdItem
.
ParentId
,
IsChecked
=
tenantMenuList
?.
Where
(
qitem
=>
qitem
.
MenuId
==
thirdItem
.
MenuId
)?.
Count
()
>
0
,
SubMenuList
=
new
List
<
string
>()
});
}
secondList
.
Add
(
new
{
subItem
.
MenuId
,
subItem
.
MenuName
,
subItem
.
ParentId
,
IsChecked
=
tenantMenuList
?.
Where
(
qitem
=>
qitem
.
MenuId
==
subItem
.
MenuId
)?.
Count
()
>
0
,
SubMenuList
=
childList
});
}
var
obj
=
new
{
item
.
MenuId
,
item
.
MenuName
,
item
.
ParentId
,
IsChecked
=
tenantMenuList
?.
Where
(
qitem
=>
qitem
.
MenuId
==
item
.
MenuId
)?.
Count
()
>
0
,
SubMenuList
=
secondList
};
result
.
Add
(
obj
);
}
}
return
ApiResult
.
Success
(
data
:
result
);
}
#
endregion
}
}
\ No newline at end of file
Mall.WebApi/Controllers/User/TenantController.cs
View file @
a8d4dc83
...
...
@@ -23,6 +23,8 @@ using Mall.Module.Product;
using
Microsoft.AspNetCore.Authorization
;
using
Mall.Model.Query
;
using
Mall.Model.Extend.AppletWeChat
;
using
Mall.AOP
;
using
Mall.Module.User
;
namespace
Mall.WebApi.Controllers.User
{
...
...
@@ -47,6 +49,8 @@ namespace Mall.WebApi.Controllers.User
/// </summary>
private
Module
.
User
.
MenuModule
menuModule
=
new
Module
.
User
.
MenuModule
();
/// <summary>
/// 小程序图标处理类对象
/// </summary>
...
...
@@ -438,10 +442,10 @@ namespace Mall.WebApi.Controllers.User
return
flag
?
ApiResult
.
Success
()
:
ApiResult
.
Failed
();
}
/// <summary>
/// 向微信服务端 使用登录凭证 code 获取 session_key 和 openid
/// </summary>
/// <returns></returns>
public
ApiResult
GetMiniAllTemplent
()
{
//向微信服务端 使用登录凭证 code 获取 session_key 和 openid
...
...
@@ -517,8 +521,8 @@ namespace Mall.WebApi.Controllers.User
wenXinResulttemplate
=
GetUsersHelper
.
GetUrltoHtml
(
urltemplate
,
type
);
//获取微信服务器返回字符串
jotemplate
=
(
JObject
)
JsonConvert
.
DeserializeObject
(
wenXinResulttemplate
);
//将字符串转换为json格式
//微信服务器验证成功
res
.
data
=
JsonConvert
.
DeserializeObject
<
List
<
templateresultModel
>>(
jotemplate
[
"data"
].
ToString
());
if
(
res
.
data
!=
null
&&
res
.
data
.
Any
())
res
.
data
=
JsonConvert
.
DeserializeObject
<
List
<
templateresultModel
>>(
jotemplate
[
"data"
].
ToString
());
if
(
res
.
data
!=
null
&&
res
.
data
.
Any
())
{
foreach
(
var
item
in
res
.
data
)
{
...
...
@@ -784,7 +788,7 @@ namespace Mall.WebApi.Controllers.User
{
try
{
var
kidList
=
new
List
<
int
>
{
2
,
1
};
var
kidList
=
new
List
<
int
>
{
2
,
1
};
var
resultInfo
=
new
{
tid
=
"3173"
,
...
...
@@ -842,10 +846,6 @@ namespace Mall.WebApi.Controllers.User
}
/// <summary>
/// 删除底部导航
/// </summary>
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment