package menus import ( "context" "fmt" "log" "time" db "management/internal/db/sqlc" "github.com/google/uuid" ) func ERPInit(ctx context.Context) error { erp, err := db.Engine.CreateSysMenu(ctx, &db.CreateSysMenuParams{ Name: "ERP管理", DisplayName: "ERP管理", Url: uuid.Must(uuid.NewRandom()).String(), Type: "node", ParentID: 0, ParentPath: ",0,", Avatar: "layui-icon layui-icon-set", Style: "", Visible: true, IsList: false, Status: 0, Sort: 6666, CreatedAt: time.Now(), UpdatedAt: time.Now(), }) if err != nil { return err } pro, err := db.Engine.CreateSysMenu(ctx, &db.CreateSysMenuParams{ Name: "项目管理", DisplayName: "项目管理", Url: uuid.Must(uuid.NewRandom()).String(), Type: "node", ParentID: erp.ID, ParentPath: fmt.Sprintf("%s%d,", erp.ParentPath, erp.ID), Avatar: "layui-icon layui-icon-vercode", Style: "", Visible: true, IsList: false, Status: 0, Sort: 6666, CreatedAt: time.Now(), UpdatedAt: time.Now(), }) if err != nil { return err } project, err := db.Engine.CreateSysMenu(ctx, &db.CreateSysMenuParams{ Name: "项目管理", DisplayName: "项目管理", Url: "/project/list", Type: "menu", ParentID: pro.ID, ParentPath: fmt.Sprintf("%s%d,", pro.ParentPath, pro.ID), Avatar: "", Style: "", Visible: true, IsList: true, Status: 0, Sort: 6666, CreatedAt: time.Now(), UpdatedAt: time.Now(), }) if err != nil { return err } _, err = db.Engine.CreateSysMenu(ctx, &db.CreateSysMenuParams{ Name: "新增", DisplayName: "新增", Url: "/project/add", Type: "btn", ParentID: project.ID, ParentPath: fmt.Sprintf("%s%d,", project.ParentPath, project.ID), Avatar: "layui-icon layui-icon-add-1", Style: "pear-btn-primary pear-btn-sm", Visible: true, IsList: false, Status: 0, Sort: 6666, CreatedAt: time.Now(), UpdatedAt: time.Now(), }) if err != nil { return err } _, err = db.Engine.CreateSysMenu(ctx, &db.CreateSysMenuParams{ Name: "编辑", DisplayName: "编辑", Url: "/project/edit", Type: "btn", ParentID: project.ID, ParentPath: fmt.Sprintf("%s%d,", project.ParentPath, project.ID), Avatar: "layui-icon layui-icon-edit", Style: "pear-btn-primary pear-btn-xs", Visible: true, IsList: false, Status: 0, Sort: 6666, CreatedAt: time.Now(), UpdatedAt: time.Now(), }) if err != nil { return err } _, err = db.Engine.CreateSysMenu(ctx, &db.CreateSysMenuParams{ Name: "保存", DisplayName: "保存", Url: "/project/save", Type: "btn", ParentID: project.ID, ParentPath: fmt.Sprintf("%s%d,", project.ParentPath, project.ID), Avatar: "layui-icon layui-icon-ok", Style: "pear-btn-primary pear-btn-sm", Visible: true, IsList: false, Status: 0, Sort: 6666, CreatedAt: time.Now(), UpdatedAt: time.Now(), }) if err != nil { return err } _, err = db.Engine.CreateSysMenu(ctx, &db.CreateSysMenuParams{ Name: "xmselect", DisplayName: "xmselect", Url: "/project/xmselect", Type: "btn", ParentID: project.ID, ParentPath: fmt.Sprintf("%s%d,", project.ParentPath, project.ID), Avatar: "layui-icon layui-icon-ok", Style: "pear-btn-primary pear-btn-sm", Visible: true, IsList: false, Status: 0, Sort: 6666, CreatedAt: time.Now(), UpdatedAt: time.Now(), }) if err != nil { return err } budget, err := db.Engine.CreateSysMenu(ctx, &db.CreateSysMenuParams{ Name: "项目预算", DisplayName: "项目预算", Url: "/budget/list", Type: "menu", ParentID: pro.ID, ParentPath: fmt.Sprintf("%s%d,", pro.ParentPath, pro.ID), Avatar: "", Style: "", Visible: true, IsList: true, Status: 0, Sort: 6666, CreatedAt: time.Now(), UpdatedAt: time.Now(), }) if err != nil { return err } _, err = db.Engine.CreateSysMenu(ctx, &db.CreateSysMenuParams{ Name: "新增", DisplayName: "新增", Url: "/budget/add", Type: "btn", ParentID: budget.ID, ParentPath: fmt.Sprintf("%s%d,", budget.ParentPath, budget.ID), Avatar: "layui-icon layui-icon-add-1", Style: "pear-btn-primary pear-btn-sm", Visible: true, IsList: false, Status: 0, Sort: 6666, CreatedAt: time.Now(), UpdatedAt: time.Now(), }) if err != nil { return err } _, err = db.Engine.CreateSysMenu(ctx, &db.CreateSysMenuParams{ Name: "编辑", DisplayName: "编辑", Url: "/budget/edit", Type: "btn", ParentID: budget.ID, ParentPath: fmt.Sprintf("%s%d,", budget.ParentPath, budget.ID), Avatar: "layui-icon layui-icon-edit", Style: "pear-btn-primary pear-btn-xs", Visible: true, IsList: false, Status: 0, Sort: 6666, CreatedAt: time.Now(), UpdatedAt: time.Now(), }) if err != nil { return err } _, err = db.Engine.CreateSysMenu(ctx, &db.CreateSysMenuParams{ Name: "保存", DisplayName: "保存", Url: "/budget/save", Type: "btn", ParentID: budget.ID, ParentPath: fmt.Sprintf("%s%d,", budget.ParentPath, budget.ID), Avatar: "layui-icon layui-icon-ok", Style: "pear-btn-primary pear-btn-sm", Visible: true, IsList: false, Status: 0, Sort: 6666, CreatedAt: time.Now(), UpdatedAt: time.Now(), }) if err != nil { return err } projectDashboard, err := db.Engine.CreateSysMenu(ctx, &db.CreateSysMenuParams{ Name: "项目统计看板", DisplayName: "项目统计看板", Url: "/project/dashboard", Type: "menu", ParentID: pro.ID, ParentPath: fmt.Sprintf("%s%d,", pro.ParentPath, pro.ID), Avatar: "", Style: "", Visible: true, IsList: true, Status: 0, Sort: 6666, CreatedAt: time.Now(), UpdatedAt: time.Now(), }) if err != nil { return err } log.Println(projectDashboard) in, err := db.Engine.CreateSysMenu(ctx, &db.CreateSysMenuParams{ Name: "应收管理", DisplayName: "应收管理", Url: uuid.Must(uuid.NewRandom()).String(), Type: "node", ParentID: erp.ID, ParentPath: fmt.Sprintf("%s%d,", erp.ParentPath, erp.ID), Avatar: "layui-icon layui-icon-vercode", Style: "", Visible: true, IsList: false, Status: 0, Sort: 6666, CreatedAt: time.Now(), UpdatedAt: time.Now(), }) if err != nil { return err } customer, err := db.Engine.CreateSysMenu(ctx, &db.CreateSysMenuParams{ Name: "客户管理", DisplayName: "客户管理", Url: "/customer/list", Type: "menu", ParentID: in.ID, ParentPath: fmt.Sprintf("%s%d,", in.ParentPath, in.ID), Avatar: "", Style: "", Visible: true, IsList: true, Status: 0, Sort: 6666, CreatedAt: time.Now(), UpdatedAt: time.Now(), }) if err != nil { return err } _, err = db.Engine.CreateSysMenu(ctx, &db.CreateSysMenuParams{ Name: "新增", DisplayName: "新增", Url: "/customer/add", Type: "btn", ParentID: customer.ID, ParentPath: fmt.Sprintf("%s%d,", customer.ParentPath, customer.ID), Avatar: "layui-icon layui-icon-add-1", Style: "pear-btn-primary pear-btn-sm", Visible: true, IsList: false, Status: 0, Sort: 6666, CreatedAt: time.Now(), UpdatedAt: time.Now(), }) if err != nil { return err } _, err = db.Engine.CreateSysMenu(ctx, &db.CreateSysMenuParams{ Name: "编辑", DisplayName: "编辑", Url: "/customer/edit", Type: "btn", ParentID: customer.ID, ParentPath: fmt.Sprintf("%s%d,", customer.ParentPath, customer.ID), Avatar: "layui-icon layui-icon-edit", Style: "pear-btn-primary pear-btn-xs", Visible: true, IsList: false, Status: 0, Sort: 6666, CreatedAt: time.Now(), UpdatedAt: time.Now(), }) if err != nil { return err } _, err = db.Engine.CreateSysMenu(ctx, &db.CreateSysMenuParams{ Name: "保存", DisplayName: "保存", Url: "/customer/save", Type: "btn", ParentID: customer.ID, ParentPath: fmt.Sprintf("%s%d,", customer.ParentPath, customer.ID), Avatar: "layui-icon layui-icon-ok", Style: "pear-btn-primary pear-btn-sm", Visible: true, IsList: false, Status: 0, Sort: 6666, CreatedAt: time.Now(), UpdatedAt: time.Now(), }) if err != nil { return err } _, err = db.Engine.CreateSysMenu(ctx, &db.CreateSysMenuParams{ Name: "xmselect", DisplayName: "xmselect", Url: "/customer/xmselect", Type: "btn", ParentID: customer.ID, ParentPath: fmt.Sprintf("%s%d,", customer.ParentPath, customer.ID), Avatar: "layui-icon layui-icon-ok", Style: "pear-btn-primary pear-btn-sm", Visible: true, IsList: false, Status: 0, Sort: 6666, CreatedAt: time.Now(), UpdatedAt: time.Now(), }) if err != nil { return err } income, err := db.Engine.CreateSysMenu(ctx, &db.CreateSysMenuParams{ Name: "回款单", DisplayName: "回款单", Url: "/income/list", Type: "menu", ParentID: in.ID, ParentPath: fmt.Sprintf("%s%d,", in.ParentPath, in.ID), Avatar: "", Style: "", Visible: true, IsList: true, Status: 0, Sort: 6666, CreatedAt: time.Now(), UpdatedAt: time.Now(), }) if err != nil { return err } _, err = db.Engine.CreateSysMenu(ctx, &db.CreateSysMenuParams{ Name: "新增", DisplayName: "新增", Url: "/income/add", Type: "btn", ParentID: income.ID, ParentPath: fmt.Sprintf("%s%d,", income.ParentPath, income.ID), Avatar: "layui-icon layui-icon-add-1", Style: "pear-btn-primary pear-btn-sm", Visible: true, IsList: false, Status: 0, Sort: 6666, CreatedAt: time.Now(), UpdatedAt: time.Now(), }) if err != nil { return err } _, err = db.Engine.CreateSysMenu(ctx, &db.CreateSysMenuParams{ Name: "编辑", DisplayName: "编辑", Url: "/income/edit", Type: "btn", ParentID: income.ID, ParentPath: fmt.Sprintf("%s%d,", income.ParentPath, income.ID), Avatar: "layui-icon layui-icon-edit", Style: "pear-btn-primary pear-btn-xs", Visible: true, IsList: false, Status: 0, Sort: 6666, CreatedAt: time.Now(), UpdatedAt: time.Now(), }) if err != nil { return err } _, err = db.Engine.CreateSysMenu(ctx, &db.CreateSysMenuParams{ Name: "保存", DisplayName: "保存", Url: "/income/save", Type: "btn", ParentID: income.ID, ParentPath: fmt.Sprintf("%s%d,", income.ParentPath, income.ID), Avatar: "layui-icon layui-icon-ok", Style: "pear-btn-primary pear-btn-sm", Visible: true, IsList: false, Status: 0, Sort: 6666, CreatedAt: time.Now(), UpdatedAt: time.Now(), }) if err != nil { return err } cost, err := db.Engine.CreateSysMenu(ctx, &db.CreateSysMenuParams{ Name: "费用管理", DisplayName: "费用管理", Url: uuid.Must(uuid.NewRandom()).String(), Type: "node", ParentID: erp.ID, ParentPath: fmt.Sprintf("%s%d,", erp.ParentPath, erp.ID), Avatar: "layui-icon layui-icon-vercode", Style: "", Visible: true, IsList: false, Status: 0, Sort: 6666, CreatedAt: time.Now(), UpdatedAt: time.Now(), }) if err != nil { return err } expense, err := db.Engine.CreateSysMenu(ctx, &db.CreateSysMenuParams{ Name: "费用报销单", DisplayName: "费用报销单", Url: "/expense/list", Type: "menu", ParentID: cost.ID, ParentPath: fmt.Sprintf("%s%d,", cost.ParentPath, cost.ID), Avatar: "", Style: "", Visible: true, IsList: true, Status: 0, Sort: 6666, CreatedAt: time.Now(), UpdatedAt: time.Now(), }) if err != nil { return err } _, err = db.Engine.CreateSysMenu(ctx, &db.CreateSysMenuParams{ Name: "新增", DisplayName: "新增", Url: "/expense/add", Type: "btn", ParentID: expense.ID, ParentPath: fmt.Sprintf("%s%d,", expense.ParentPath, expense.ID), Avatar: "layui-icon layui-icon-add-1", Style: "pear-btn-primary pear-btn-sm", Visible: true, IsList: false, Status: 0, Sort: 6666, CreatedAt: time.Now(), UpdatedAt: time.Now(), }) if err != nil { return err } _, err = db.Engine.CreateSysMenu(ctx, &db.CreateSysMenuParams{ Name: "编辑", DisplayName: "编辑", Url: "/expense/edit", Type: "btn", ParentID: expense.ID, ParentPath: fmt.Sprintf("%s%d,", expense.ParentPath, expense.ID), Avatar: "layui-icon layui-icon-edit", Style: "pear-btn-primary pear-btn-xs", Visible: true, IsList: false, Status: 0, Sort: 6666, CreatedAt: time.Now(), UpdatedAt: time.Now(), }) if err != nil { return err } _, err = db.Engine.CreateSysMenu(ctx, &db.CreateSysMenuParams{ Name: "保存", DisplayName: "保存", Url: "/expense/save", Type: "btn", ParentID: expense.ID, ParentPath: fmt.Sprintf("%s%d,", expense.ParentPath, expense.ID), Avatar: "layui-icon layui-icon-ok", Style: "pear-btn-primary pear-btn-sm", Visible: true, IsList: false, Status: 0, Sort: 6666, CreatedAt: time.Now(), UpdatedAt: time.Now(), }) if err != nil { return err } return nil }