1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283 |
- package controller
- import (
- "github.com/gin-gonic/gin"
- "lims-extend/common"
- "lims-extend/model"
- "lims-extend/response"
- )
- func GetStatisticsInfoForAdmin(c *gin.Context) {
- userId := c.Params.ByName("userId")
- db := common.GetDB()
- //总发包数
- var totalSendCount int64
- db.Model(&model.Task{}).Joins("left join plan on task.plan_id = plan.id").
- Where("plan.creator_id = ?", userId).Count(&totalSendCount)
- //发包中总接包数
- var totalRecvCount int64
- db.Model(&model.Task{}).Joins("left join plan on task.plan_id = plan.id").
- Where("plan.creator_id = ? and task.state <> 3", userId).Count(&totalRecvCount)
- //发包中总完成数
- var totalFinishedCount int64
- db.Model(&model.Task{}).Joins("left join plan on task.plan_id = plan.id").
- Where("plan.creator_id = ? and task.state = 2", userId).Count(&totalFinishedCount)
- response.Success(c, gin.H{
- "totalSendCount": totalSendCount,
- "totalRecvCount": totalRecvCount,
- "totalFinishedCount": totalFinishedCount,
- }, "success")
- }
- func GetStatisticsInfoForUser(c *gin.Context) {
- userId := c.Params.ByName("userId")
- db := common.GetDB()
- //待领取任务数
- var totalWaitingCount int64
- db.Model(&model.Task{}).
- Where("executor_id = ? and state = 3", userId).Count(&totalWaitingCount)
- //发包中总接包数
- var totalRecvCount int64
- db.Model(&model.Task{}).
- Where("executor_id = ? and task.state <> 3", userId).Count(&totalRecvCount)
- //发包中总完成数
- var totalFinishedCount int64
- db.Model(&model.Task{}).
- Where("executor_id= ? and task.state = 2", userId).Count(&totalFinishedCount)
- response.Success(c, gin.H{
- "totalWaitingCount": totalWaitingCount,
- "totalRecvCount": totalRecvCount,
- "totalFinishedCount": totalFinishedCount,
- }, "success")
- }
- func IsJoinedCompany(c *gin.Context) {
- db := common.GetDB()
- userId := c.Params.ByName("userId")
- var company2user model.Company2Users
- if err := db.Model(&model.Company2Users{}).Where("user_id = ?", userId).First(&company2user).Error; err != nil {
- // 状态3 是指没有提交过申请
- company2user.State = 3
- response.Success(c, gin.H{"res": company2user}, "未加入任何公司")
- return
- }
- var company model.Company
- db.Model(&model.Company{}).Where("id = ?", company2user.CompanyId).First(&company)
- type result struct {
- model.Company2Users
- CompanyName string `json:"company_name"`
- }
- res := result{
- Company2Users: company2user,
- CompanyName: company.Name,
- }
- response.Success(c, gin.H{"res": res}, "查询成功")
- }
|