mirror of
https://github.com/kongyuebin1/dongfeng-pay.git
synced 2025-12-13 12:39:58 +08:00
重构了boss系统,添加了逻辑
This commit is contained in:
@@ -10,195 +10,73 @@
|
||||
package controllers
|
||||
|
||||
import (
|
||||
"boss/models"
|
||||
"boss/utils"
|
||||
"github.com/beego/beego/v2/core/logs"
|
||||
"sort"
|
||||
"boss/service"
|
||||
"strings"
|
||||
)
|
||||
|
||||
type Deletecontroller struct {
|
||||
type DeleteController struct {
|
||||
BaseController
|
||||
}
|
||||
|
||||
func (c *Deletecontroller) Finish() {
|
||||
remainderFirstMenuUid := make([]string, 0)
|
||||
remainderFirstMenu := make([]string, 0)
|
||||
remainderSecondMenuUid := make([]string, 0)
|
||||
remainderSecondMenu := make([]string, 0)
|
||||
remainderPowerId := make([]string, 0)
|
||||
remainderPower := make([]string, 0)
|
||||
allRoleInfo := models.GetRole()
|
||||
//如果有删除任何的东西,需要重新赋值权限
|
||||
for _, r := range allRoleInfo {
|
||||
for _, showFirstUid := range strings.Split(r.ShowFirstUid, "||") {
|
||||
if models.FirstMenuUidIsExists(showFirstUid) {
|
||||
remainderFirstMenuUid = append(remainderFirstMenuUid, showFirstUid)
|
||||
menuInfo := models.GetMenuInfoByMenuUid(showFirstUid)
|
||||
remainderFirstMenu = append(remainderFirstMenu, menuInfo.FirstMenu)
|
||||
}
|
||||
}
|
||||
for _, showSecondUid := range strings.Split(r.ShowSecondUid, "||") {
|
||||
if models.SecondMenuUidIsExists(showSecondUid) {
|
||||
remainderSecondMenuUid = append(remainderSecondMenuUid, showSecondUid)
|
||||
secondMenuInfo := models.GetSecondMenuInfoBySecondMenuUid(showSecondUid)
|
||||
remainderSecondMenu = append(remainderSecondMenu, secondMenuInfo.SecondMenu)
|
||||
}
|
||||
}
|
||||
for _, showPowerId := range strings.Split(r.ShowPowerUid, "||") {
|
||||
if models.PowerUidExists(showPowerId) {
|
||||
remainderPowerId = append(remainderPowerId, showPowerId)
|
||||
powerInfo := models.GetPowerById(showPowerId)
|
||||
remainderPower = append(remainderPower, powerInfo.PowerItem)
|
||||
}
|
||||
}
|
||||
r.ShowFirstUid = strings.Join(remainderFirstMenuUid, "||")
|
||||
r.ShowFirstMenu = strings.Join(remainderFirstMenu, "||")
|
||||
r.ShowSecondUid = strings.Join(remainderSecondMenuUid, "||")
|
||||
r.ShowSecondMenu = strings.Join(remainderSecondMenu, "||")
|
||||
r.ShowPowerUid = strings.Join(remainderPowerId, "||")
|
||||
r.ShowPower = strings.Join(remainderPower, "||")
|
||||
r.UpdateTime = utils.GetBasicDateTime()
|
||||
models.UpdateRoleInfo(r)
|
||||
}
|
||||
func (c *DeleteController) Finish() {
|
||||
se := new(service.DeleteService)
|
||||
se.Finish()
|
||||
}
|
||||
|
||||
func (c *Deletecontroller) DeleteMenu() {
|
||||
func (c *DeleteController) DeleteMenu() {
|
||||
menuUid := c.GetString("menuUid")
|
||||
menuInfo := models.GetMenuInfoByMenuUid(menuUid)
|
||||
dataJSON := new(BaseDataJSON)
|
||||
if menuInfo.MenuUid == "" {
|
||||
dataJSON.Msg = "不存在该菜单"
|
||||
dataJSON.Code = -1
|
||||
} else {
|
||||
logs.Info(c.GetSession("userID").(string) + ",执行了删除一级菜单操作")
|
||||
models.DeleteMenuInfo(menuUid)
|
||||
//删除该一级目下下的所有二级目录
|
||||
models.DeleteSecondMenuByFirstMenuUid(menuUid)
|
||||
SortFirstMenuOrder()
|
||||
dataJSON.Code = 200
|
||||
}
|
||||
se := new(service.DeleteService)
|
||||
dataJSON := se.DeleteMenu(menuUid, c.GetSession("userID").(string))
|
||||
|
||||
c.Data["json"] = dataJSON
|
||||
c.ServeJSONP()
|
||||
_ = c.ServeJSONP()
|
||||
}
|
||||
|
||||
/*
|
||||
* 对一级菜单重新进行排序
|
||||
*/
|
||||
func SortFirstMenuOrder() {
|
||||
menuInfoList := models.GetMenuAll()
|
||||
sort.Sort(models.MenuInfoSlice(menuInfoList))
|
||||
|
||||
for i := 0; i < len(menuInfoList); i++ {
|
||||
m := menuInfoList[i]
|
||||
m.UpdateTime = utils.GetBasicDateTime()
|
||||
m.MenuOrder = i + 1
|
||||
models.UpdateMenuInfo(m)
|
||||
//对应的二级菜单也应该重新分配顺序号
|
||||
SortSecondMenuOrder(m)
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* 对二级菜单分配顺序号
|
||||
*/
|
||||
func SortSecondMenuOrder(firstMenuInfo models.MenuInfo) {
|
||||
secondMenuInfoList := models.GetSecondMenuListByFirstMenuUid(firstMenuInfo.MenuUid)
|
||||
for _, sm := range secondMenuInfoList {
|
||||
sm.FirstMenuOrder = firstMenuInfo.MenuOrder
|
||||
sm.UpdateTime = utils.GetBasicDateTime()
|
||||
models.UpdateSecondMenu(sm)
|
||||
//删除下下一级的所有权限项
|
||||
models.DeletePowerBySecondUid(sm.SecondMenuUid)
|
||||
}
|
||||
}
|
||||
|
||||
func (c *Deletecontroller) DeleteSecondMenu() {
|
||||
func (c *DeleteController) DeleteSecondMenu() {
|
||||
secondMenuUid := strings.TrimSpace(c.GetString("secondMenuUid"))
|
||||
secondMenuInfo := models.GetSecondMenuInfoBySecondMenuUid(secondMenuUid)
|
||||
dataJSON := new(BaseDataJSON)
|
||||
if secondMenuUid == "" || secondMenuInfo.SecondMenuUid == "" {
|
||||
dataJSON.Code = -1
|
||||
dataJSON.Msg = "该二级菜单不存在"
|
||||
} else {
|
||||
if models.DeleteSecondMenuBySecondMenuUid(secondMenuUid) {
|
||||
dataJSON.Code = 200
|
||||
ml := models.GetSecondMenuLenByFirstMenuUid(secondMenuInfo.FirstMenuUid)
|
||||
//删除该二级页面下的所有权限项
|
||||
models.DeletePowerBySecondUid(secondMenuUid)
|
||||
if ml == 0 {
|
||||
//如果该二级类目已经被全部删除,那么对应的一级类目也应当删除
|
||||
models.DeleteMenuInfo(secondMenuInfo.FirstMenuUid)
|
||||
SortFirstMenuOrder()
|
||||
} else {
|
||||
secondMenuInfoList := models.GetSecondMenuListByFirstMenuUid(secondMenuInfo.FirstMenuUid)
|
||||
sort.Sort(models.SecondMenuSlice(secondMenuInfoList))
|
||||
for i := 0; i < len(secondMenuInfoList); i++ {
|
||||
m := secondMenuInfoList[i]
|
||||
models.UpdateSecondMenuOrderBySecondUid(m.SecondMenuUid, i+1)
|
||||
}
|
||||
}
|
||||
} else {
|
||||
dataJSON.Code = -1
|
||||
dataJSON.Msg = "删除失败"
|
||||
}
|
||||
}
|
||||
se := new(service.DeleteService)
|
||||
dataJSON := se.DeleteSecondMenu(secondMenuUid)
|
||||
|
||||
c.Data["json"] = dataJSON
|
||||
c.ServeJSON()
|
||||
_ = c.ServeJSON()
|
||||
}
|
||||
|
||||
/*
|
||||
* 删除权限项
|
||||
*/
|
||||
func (c *Deletecontroller) DeletePowerItem() {
|
||||
func (c *DeleteController) DeletePowerItem() {
|
||||
powerID := strings.TrimSpace(c.GetString("powerID"))
|
||||
models.DeletePowerItemByPowerID(powerID)
|
||||
dataJSON := new(BaseDataJSON)
|
||||
dataJSON.Code = 200
|
||||
se := new(service.DeleteService)
|
||||
dataJSON := se.DeletePowerItem(powerID)
|
||||
c.GenerateJSON(dataJSON)
|
||||
}
|
||||
|
||||
/*
|
||||
* 删除角色
|
||||
*/
|
||||
func (c *Deletecontroller) DeleteRole() {
|
||||
func (c *DeleteController) DeleteRole() {
|
||||
roleUid := strings.TrimSpace(c.GetString("roleUid"))
|
||||
dataJSON := new(BaseDataJSON)
|
||||
|
||||
if models.DeleteRoleByRoleUid(roleUid) {
|
||||
dataJSON.Code = 200
|
||||
} else {
|
||||
dataJSON.Code = -1
|
||||
}
|
||||
se := new(service.DeleteService)
|
||||
dataJSON := se.DeleteRole(roleUid)
|
||||
c.GenerateJSON(dataJSON)
|
||||
}
|
||||
|
||||
/*
|
||||
* 删除操作员
|
||||
*/
|
||||
func (c *Deletecontroller) DeleteOperator() {
|
||||
func (c *DeleteController) DeleteOperator() {
|
||||
userId := strings.TrimSpace(c.GetString("userId"))
|
||||
|
||||
dataJSON := new(BaseDataJSON)
|
||||
|
||||
if models.DeleteUserByUserId(userId) {
|
||||
dataJSON.Code = 200
|
||||
} else {
|
||||
dataJSON.Code = -1
|
||||
}
|
||||
se := new(service.DeleteService)
|
||||
dataJSON := se.DeleteOperator(userId)
|
||||
|
||||
c.GenerateJSON(dataJSON)
|
||||
}
|
||||
|
||||
func (c *Deletecontroller) DeleteBankCardRecord() {
|
||||
func (c *DeleteController) DeleteBankCardRecord() {
|
||||
uid := strings.TrimSpace(c.GetString("uid"))
|
||||
se := new(service.DeleteService)
|
||||
|
||||
dataJSON := new(BankCardDataJSON)
|
||||
dataJSON.Code = -1
|
||||
|
||||
if models.DeleteBankCardByUid(uid) {
|
||||
dataJSON.Code = 200
|
||||
}
|
||||
dataJSON := se.DeleteBankCardRecord(uid)
|
||||
|
||||
c.GenerateJSON(dataJSON)
|
||||
}
|
||||
@@ -206,135 +84,65 @@ func (c *Deletecontroller) DeleteBankCardRecord() {
|
||||
/*
|
||||
* 删除通道操作
|
||||
*/
|
||||
func (c *Deletecontroller) DeleteRoad() {
|
||||
func (c *DeleteController) DeleteRoad() {
|
||||
roadUid := strings.TrimSpace(c.GetString("roadUid"))
|
||||
|
||||
dataJSON := new(BaseDataJSON)
|
||||
dataJSON.Code = -1
|
||||
se := new(service.DeleteService)
|
||||
dataJSON := se.DeleteRoad(roadUid)
|
||||
|
||||
if models.DeleteRoadByRoadUid(roadUid) {
|
||||
dataJSON.Code = 200
|
||||
}
|
||||
params := make(map[string]string)
|
||||
roadPoolInfoList := models.GetAllRollPool(params)
|
||||
//将轮询池中的对应的通道删除
|
||||
for _, roadPoolInfo := range roadPoolInfoList {
|
||||
var uids []string
|
||||
roadInfoList := strings.Split(roadPoolInfo.RoadUidPool, "||")
|
||||
for _, uid := range roadInfoList {
|
||||
if uid != roadUid {
|
||||
uids = append(uids, uid)
|
||||
}
|
||||
}
|
||||
roadPoolInfo.RoadUidPool = strings.Join(uids, "||")
|
||||
roadPoolInfo.UpdateTime = utils.GetBasicDateTime()
|
||||
models.UpdateRoadPool(roadPoolInfo)
|
||||
}
|
||||
c.GenerateJSON(dataJSON)
|
||||
}
|
||||
|
||||
/*
|
||||
* 删除通道池
|
||||
*/
|
||||
func (c *Deletecontroller) DeleteRoadPool() {
|
||||
func (c *DeleteController) DeleteRoadPool() {
|
||||
roadPoolCode := strings.TrimSpace(c.GetString("roadPoolCode"))
|
||||
|
||||
dataJSON := new(BaseDataJSON)
|
||||
dataJSON.Code = -1
|
||||
se := new(service.DeleteService)
|
||||
dataJSON := se.DeleteRoadPool(roadPoolCode)
|
||||
|
||||
if models.DeleteRoadPoolByCode(roadPoolCode) {
|
||||
dataJSON.Code = 200
|
||||
} else {
|
||||
dataJSON.Msg = "删除通道池失败"
|
||||
}
|
||||
c.GenerateJSON(dataJSON)
|
||||
}
|
||||
|
||||
/*
|
||||
* 删除商户
|
||||
*/
|
||||
func (c *Deletecontroller) DeleteMerchant() {
|
||||
func (c *DeleteController) DeleteMerchant() {
|
||||
merchantUid := strings.TrimSpace(c.GetString("merchantUid"))
|
||||
keyDataJSON := new(KeyDataJSON)
|
||||
if merchantUid == "" {
|
||||
keyDataJSON.Code = -1
|
||||
c.GenerateJSON(keyDataJSON)
|
||||
return
|
||||
}
|
||||
se := new(service.DeleteService)
|
||||
keyDataJSON := se.DeleteMerchant(merchantUid)
|
||||
|
||||
if models.DeleteMerchantByUid(merchantUid) {
|
||||
keyDataJSON.Code = 200
|
||||
} else {
|
||||
keyDataJSON.Code = -1
|
||||
}
|
||||
c.GenerateJSON(keyDataJSON)
|
||||
}
|
||||
|
||||
/*
|
||||
* 删除账户
|
||||
*/
|
||||
func (c *Deletecontroller) DeleteAccount() {
|
||||
func (c *DeleteController) DeleteAccount() {
|
||||
accountUid := strings.TrimSpace(c.GetString("accountUid"))
|
||||
|
||||
dataJSON := new(BaseDataJSON)
|
||||
models.IsExistByMerchantUid(accountUid)
|
||||
if models.IsExistByMerchantUid(accountUid) || models.IsExistByAgentUid(accountUid) {
|
||||
dataJSON.Code = -1
|
||||
dataJSON.Msg = "用户还存在,不能删除"
|
||||
} else {
|
||||
if models.DeleteAccountByUid(accountUid) {
|
||||
dataJSON.Code = 200
|
||||
dataJSON.Msg = "删除账户成功"
|
||||
} else {
|
||||
dataJSON.Code = -1
|
||||
dataJSON.Msg = "删除账户失败"
|
||||
}
|
||||
}
|
||||
se := new(service.DeleteService)
|
||||
dataJSON := se.DeleteAccount(accountUid)
|
||||
|
||||
c.GenerateJSON(dataJSON)
|
||||
}
|
||||
|
||||
func (c *Deletecontroller) DeleteAgent() {
|
||||
func (c *DeleteController) DeleteAgent() {
|
||||
agentUid := strings.TrimSpace(c.GetString("agentUid"))
|
||||
|
||||
keyDataJSON := new(KeyDataJSON)
|
||||
//判断是否有商户还绑定了该代理
|
||||
if models.IsExistMerchantByAgentUid(agentUid) {
|
||||
keyDataJSON.Code = -1
|
||||
keyDataJSON.Msg = "已有商户绑定改代理,不能删除"
|
||||
} else {
|
||||
if models.DeleteAgentByAgentUid(agentUid) {
|
||||
keyDataJSON.Code = 200
|
||||
} else {
|
||||
keyDataJSON.Code = -1
|
||||
keyDataJSON.Msg = "删除失败"
|
||||
}
|
||||
}
|
||||
se := new(service.DeleteService)
|
||||
keyDataJSON := se.DeleteAgent(agentUid)
|
||||
|
||||
c.GenerateJSON(keyDataJSON)
|
||||
}
|
||||
|
||||
func (c *Deletecontroller) DeleteAgentRelation() {
|
||||
func (c *DeleteController) DeleteAgentRelation() {
|
||||
|
||||
merchantUid := strings.TrimSpace(c.GetString("merchantUid"))
|
||||
|
||||
merchantInfo := models.GetMerchantByUid(merchantUid)
|
||||
se := new(service.DeleteService)
|
||||
|
||||
keyDataJSON := new(KeyDataJSON)
|
||||
keyDataJSON.Code = 200
|
||||
keyDataJSON := se.DeleteAgentRelation(merchantUid)
|
||||
|
||||
if merchantInfo.MerchantUid == "" {
|
||||
keyDataJSON.Code = -1
|
||||
keyDataJSON.Msg = "不存在这样的商户"
|
||||
} else {
|
||||
merchantInfo.UpdateTime = utils.GetBasicDateTime()
|
||||
merchantInfo.BelongAgentUid = ""
|
||||
merchantInfo.BelongAgentName = ""
|
||||
|
||||
if !models.UpdateMerchant(merchantInfo) {
|
||||
keyDataJSON.Code = -1
|
||||
keyDataJSON.Msg = "更新商户失败"
|
||||
}
|
||||
}
|
||||
|
||||
c.GenerateJSON(merchantInfo)
|
||||
c.GenerateJSON(keyDataJSON)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user