123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102 |
- package models
- import (
- "errors"
- "zhiyuan/pkg/db"
- "github.com/gin-gonic/gin"
- )
- type WorkSiteProblemReport struct {
- ID int64 `json:"id" prop:"add:false"`
- SiteProblemId int64 `json:"site_problem_id" type:"int" prop:"add" search:"="`
- Type int64 `json:"type" label:"类型" type:"int" prop:"add" default:"0"`
- Time int64 `json:"time" label:"时间" type:"int" default:"0"`
- Pictures string `json:"pictures" label:"图片列表" type:"string"`
- Mark string `json:"mark" label:"备注" type:"string"`
- State int64 `json:"state" label:"状态" type:"int" prop:"add:false" default:"0"`
- AdminId int64 `json:"admin_id" label:"整改人" type:"int" prop:"add:false"`
- Explain string `json:"explain" label:"确认说明" type:"int" prop:"add:false"`
- CheckId int64 `json:"check_id" label:"确认人" type:"int" prop:"add:false"`
- DeletedAt int64 `json:"deleted_at" prop:"add:false select:false"`
- CreatedAt int64 `json:"created_at" prop:"add:false"`
- UpdatedAt int64 `json:"updated_at" prop:"add:false"`
- AdminName string `json:"admin_name" prop:"select:admin.username"`
- AdminPhone string `json:"admin_phone" prop:"select:admin.phone"`
- AdminHeadImgUrl string `json:"admin_headimgurl" prop:"select:admin.headimgurl"`
- CheckName string `json:"check_name" prop:"select:check.username"`
- CheckPhone string `json:"check_phone" prop:"select:check.phone"`
- CheckHeadImgUrl string `json:"check_headimgurl" prop:"select:check.headimgurl"`
- db.BaseModel
- }
- func (WorkSiteProblemReport) TableName() string {
- return "zy_work_site_problem_report"
- }
- func (WorkSiteProblemReport) ListPrivilege(c *gin.Context, data map[string]interface{}, s *db.Select) bool {
- return true
- }
- func (WorkSiteProblemReport) AddPrivilege(c *gin.Context, data map[string]interface{}, post map[string]interface{}) error {
- var problem WorkSiteProblem
- db.GetModel(map[string]interface{}{
- "id": data["site_problem_id"].(int64),
- }, &problem)
- if problem.ID == 0 {
- return errors.New("没有权限")
- }
- if data["type"].(int64) == 0 {
- if problem.State != 0 {
- return errors.New("没有权限")
- }
- db.UpdateModel(db.Type(problem), problem.ID, map[string]interface{}{
- "state": 1,
- "visittime": data["time"].(int64),
- })
- } else if data["type"].(int64) == 1 {
- if problem.State != 2 {
- return errors.New("没有权限")
- }
- db.UpdateModel(db.Type(problem), problem.ID, map[string]interface{}{
- "state": 3,
- "finishtime": data["time"].(int64),
- })
- } else {
- if problem.State != 4 {
- return errors.New("没有权限")
- }
- db.UpdateModel(db.Type(problem), problem.ID, map[string]interface{}{
- "state": 5,
- })
- }
- data["admin_id"] = c.GetInt("adminID")
- return nil
- }
- func (WorkSiteProblemReport) OrderBy() string {
- return "updated_at"
- }
- func (WorkSiteProblemReport) Page() bool {
- return false
- }
- func (WorkSiteProblemReport) Count() bool {
- return true
- }
- func (model WorkSiteProblemReport) LeftJoin(data map[string]interface{}, s *db.Select) []db.JoinModel {
- return []db.JoinModel{
- {
- Model: Admin{},
- As: "admin",
- On: []string{"`admin`.`id` = " + model.TableName() + ".`admin_id`"},
- },
- {
- Model: Admin{},
- As: "check",
- On: []string{"`check`.`id` = " + model.TableName() + ".`check_id`"},
- },
- }
- }
|