Files
zmkgC/internal/app/system/controller/sys_project.go
2025-07-07 20:11:59 +08:00

139 lines
5.0 KiB
Go
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

// ==========================================================================
// GFast自动生成controller操作代码。
// 生成日期2023-07-27 15:20:49
// 生成路径: internal/app/system/controller/sys_project.go
// 生成人gfast
// desc:项目
// company:云南奇讯科技有限公司
// ==========================================================================
package controller
import (
"context"
"errors"
"github.com/gogf/gf/v2/frame/g"
"github.com/tiger1103/gfast/v3/api/v1/system"
"github.com/tiger1103/gfast/v3/internal/app/system/dao"
"github.com/tiger1103/gfast/v3/internal/app/system/service"
)
type sysProjectController struct {
BaseController
}
var SysProject = new(sysProjectController)
// List 列表
func (c *sysProjectController) List(ctx context.Context, req *system.SysProjectSearchReq) (res *system.SysProjectSearchRes, err error) {
res, err = service.SysProject().List(ctx, req)
return
}
// AllList 查询所有项目
func (c *sysProjectController) AllList(ctx context.Context, req *system.SysProjectSearchAllReq) (res *system.SysProjectSearchAllRes, err error) {
res, err = service.SysProject().AllList(ctx, req)
return
}
// Get 获取项目
func (c *sysProjectController) Get(ctx context.Context, req *system.SysProjectGetReq) (res *system.SysProjectGetRes, err error) {
res = new(system.SysProjectGetRes)
res.SysProjectInfoRes, err = service.SysProject().GetById(ctx, req.Id)
//获取原本的方正的范围
var fzList []*system.FangzhengListRes
err = dao.QianqiFangzhen.Ctx(ctx).Where("project_id", res.Id).Fields("name,source_id,detail").Scan(&fzList)
if err != nil {
err = errors.New("获取数据失败!")
return
} else {
res.FangzhengList = fzList
}
//获取打卡范围,如果没有就不显示
var pprr []*system.ProjectPunchRangeRes
err = g.DB().Model("sys_project_punch_range").Where("project_id", res.Id).Scan(&pprr)
if err != nil {
err = errors.New("获取数据失败!")
return
} else {
res.PunchRangeList = pprr
return
}
}
// Add 添加项目
func (c *sysProjectController) Add(ctx context.Context, req *system.SysProjectAddReq) (res *system.SysProjectAddRes, err error) {
err = service.SysProject().Add(ctx, req)
return
}
// Edit 修改项目
func (c *sysProjectController) Edit(ctx context.Context, req *system.SysProjectEditReq) (res *system.SysProjectEditRes, err error) {
err = service.SysProject().Edit(ctx, req)
return
}
// Delete 删除项目
func (c *sysProjectController) Delete(ctx context.Context, req *system.SysProjectDeleteReq) (res *system.SysProjectDeleteRes, err error) {
err = service.SysProject().Delete(ctx, req.Ids)
return
}
// CountProjectFunc 项目数据的统计
func (c *sysProjectController) CountProjectFunc(ctx context.Context, req *system.ParticipantNumberReq) (res *system.ParticipantNumberRes, err error) {
res, err = service.SysProject().CountProjectFunc(ctx, req)
return
}
// ProgressOfWorksFunc 合同容量
func (c *sysProjectController) ProgressOfWorksFunc(ctx context.Context, req *system.ProgressOfWorksReq) (res *system.ProgressOfWorksRes, err error) {
res, err = service.SysProject().ProgressOfWorksFunc(ctx, req)
return
}
// ProjectCapacityFunc 项目容量
func (c *sysProjectController) ProjectCapacityFunc(ctx context.Context, req *system.ProjectCapacityReq) (res *system.ProjectCapacityRes, err error) {
res, err = service.SysProject().ProjectCapacityFunc(ctx, req)
return
}
// ProjectCapacityTwoFunc 项目容量
func (c *sysProjectController) ProjectCapacityTwoFunc(ctx context.Context, req *system.ProjectCapacityTwoReq) (res *system.ProjectCapacityTwoRes, err error) {
res, err = service.SysProject().ProjectCapacityTwoFunc(ctx, req)
return
}
// OneProjectFunc 单项目情况
func (c *sysProjectController) OneProjectFunc(ctx context.Context, req *system.OneProjectReq) (res *system.OneProjectRes, err error) {
res, err = service.SysProject().OneProjectFunc(ctx, req)
return
}
// SafetyReqFunc 安全生产天数
func (c *sysProjectController) SafetyReqFunc(ctx context.Context, req *system.SafetyReq) (res *system.SafetyRes, err error) {
res, err = service.SysProject().SafetyReqFunc(ctx, req)
return
}
// BriefIntroductionFunc 获取项目简介
func (c *busConstructionUserController) BriefIntroductionFunc(ctx context.Context, req *system.BriefIntroductionReq) (res *system.BriefIntroductionRes, err error) {
res = new(system.BriefIntroductionRes)
err = g.DB().Model("sys_project_introduce").As("a").
LeftJoin(`(SELECT id,project_name,short_name FROM sys_project) as b on a.project_id = b.id`).
Fields(`b.id as project_id,
b.project_name,
b.short_name,
a.rich_text`).
Where("a.project_id", req.ProjectId).Scan(res)
if err != nil {
err = errors.New("获取失败!")
}
return
}
// SecurityAgreementFunc 上传安全协议书(每个项目都有一个安全协议书)
func (c *busConstructionUserController) SecurityAgreementFunc(ctx context.Context, req *system.SecurityAgreementReq) (res *system.SecurityAgreementRes, err error) {
err = service.SysProject().SecurityAgreementFunc(ctx, req)
return
}