123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547 |
- package worksitecheck
- import (
- "errors"
- "fmt"
- "time"
- "zhiyuan/models"
- "zhiyuan/pkg/app"
- "zhiyuan/pkg/db"
- "zhiyuan/pkg/utils"
- "zhiyuan/services/form"
- "zhiyuan/services/user"
- "zhiyuan/services/work/worksite"
- "zhiyuan/services/work/worksitenode"
- )
- var WorkSiteCheck models.WorkSiteCheck
- func AddCheck(form form.WorkSiteCheckAdd, adminID int) (int64, error) {
- worksitenodeInfo, _ := worksitenode.GetInfoByID(form.SiteNodeId, nil, nil)
- if worksitenodeInfo == nil {
- return 0, errors.New("invalid worksitenode id")
- }
- if worksitenodeInfo.State == 3 {
- return 0, errors.New("节点已验收")
- }
- worksiteInfo, err := worksite.GetInfoByID(worksitenodeInfo.SiteId, nil, nil)
- if worksiteInfo == nil {
- return 0, errors.New("invalid worksite id")
- }
- if worksiteInfo.State != 1 {
- return 0, errors.New("项目未开工")
- }
- if form.Type == 0 {
- type WorkSiteProcessRequireList struct {
- ID int `json:"id"`
- }
- requireList := make([]WorkSiteProcessRequireList, 0)
- db.GetMultiRaw("SELECT `zy_work_process_require`.`id` from `zy_work_process_require` left join `zy_work_site_process_point` on `zy_work_site_process_point`.`require_id` = `zy_work_process_require`.`id` AND `zy_work_site_process_point`.`deleted_at`=0 AND `zy_work_site_process_point`.`site_node_id`={{site_node_id}} left join `zy_work_process` on `zy_work_process`.`id` = `zy_work_process_require`.`process_id` ", map[string]string{
- "where": "`zy_work_process_require`.`id`>0 AND `zy_work_process_require`.`deleted_at`=0 AND `zy_work_process_require`.`state`=1 AND `zy_work_process`.`node_id`={{node_id}} AND FIND_IN_SET(`zy_work_process`.`id`, {{process_ids}}) AND ISNULL(`zy_work_site_process_point`.`id`)",
- "_order_by": "`zy_work_process_require`.`id` desc",
- "_group_by": "`zy_work_process_require`.`id`",
- }, map[string]interface{}{
- "site_node_id": worksitenodeInfo.ID,
- "node_id": worksitenodeInfo.NodeId,
- "process_ids": worksitenodeInfo.ProcessIds,
- }, &requireList)
- if len(requireList) != 0 {
- return 0, errors.New("存在图片未上传")
- }
- _, err = db.Update(models.WorkSiteNode{}.TableName(), map[string]interface{}{"id": form.SiteNodeId}, map[string]interface{}{"state": 2})
- if err != nil {
- return 0, err
- }
- }
- workSiteCheckMap := map[string]interface{}{
- "`site_id`": worksitenodeInfo.SiteId,
- "`site_node_id`": form.SiteNodeId,
- "`type`": form.Type,
- "`days`": form.Days,
- "`pictures`": form.Pictures,
- "`content`": form.Content,
- "`admin_id`": adminID,
- }
- workSiteCheckID, err := db.InsertOne(WorkSiteCheck.TableName(), workSiteCheckMap)
- if err != nil {
- return 0, err
- }
- return workSiteCheckID, nil
- }
- func AddSiteCheck(form form.WorkSiteCheckAddSite, adminID int) (int64, error) {
- worksiteInfo, err := worksite.GetInfoByID(form.SiteId, nil, nil)
- if worksiteInfo == nil {
- return 0, errors.New("invalid worksite id")
- }
- if form.Type == 2 {
- //now := time.Now().Unix()
- //if now >= int64(worksiteInfo.StartTime)+57600 && now <= int64(worksiteInfo.StartTime)+86400 {
- // return 0, errors.New("停工暂不可用")
- //}
- s := db.ModelQuery(db.Type(models.WorkSiteNode{}), map[string]interface{}{
- "site_id": worksiteInfo.ID,
- }, true)
- db.WhereParse(&s, map[string]interface{}{
- "state >=": 2,
- })
- deleted := models.WorkSiteNode{}.DeletedField()
- if deleted != "" {
- s.Where = append(s.Where, fmt.Sprintf("`%s`.`%s` = 0", models.WorkSiteNode{}.TableName(), deleted))
- }
- query, params := s.Query()
- list, err := db.QueryMap(query, params, nil)
- if err != nil {
- return 0, err
- }
- if list == nil {
- list = make([]map[string]interface{}, 0)
- }
- if len(list) == 0 {
- return 0, errors.New("需先发起节点验收")
- }
- }
- workSiteCheckMap := map[string]interface{}{
- "`site_id`": form.SiteId,
- "`site_node_id`": 0,
- "`type`": form.Type,
- "`days`": form.Days,
- "`pictures`": form.Pictures,
- "`content`": form.Content,
- "`admin_id`": adminID,
- }
- workSiteCheckID, err := db.InsertOne(WorkSiteCheck.TableName(), workSiteCheckMap)
- if err != nil {
- return 0, err
- }
- return workSiteCheckID, nil
- }
- func CheckPass(id int, forms form.WorkSiteCheckFrom, adminID int) error {
- worksitecheck, err := GetInfoByID(id, nil, nil)
- if worksitecheck == nil {
- return errors.New("invalid worksitecheck id")
- }
- if worksitecheck.State != 0 && worksitecheck.State != 3 {
- return errors.New("验收状态错误")
- }
- worksiteInfo, err := worksite.GetInfoByID(worksitecheck.SiteId, nil, nil)
- if worksiteInfo == nil {
- return errors.New("invalid worksite id")
- }
- now := time.Now().Unix()
- state := 1
- check_id := "`check_id`"
- explain := "`explain`"
- switch worksitecheck.Type {
- case 0:
- worksitenodeInfo, err := worksitenode.GetInfoByID(worksitecheck.SiteNodeId, nil, nil)
- if worksitenodeInfo == nil {
- return errors.New("invalid worksitenode id")
- }
- type WorkSiteProcessRequireList struct {
- ID int `json:"id"`
- }
- requireList := make([]WorkSiteProcessRequireList, 0)
- db.GetMultiRaw("SELECT `zy_work_process_require`.`id` from `zy_work_process_require` left join `zy_work_site_process_point` on `zy_work_site_process_point`.`require_id` = `zy_work_process_require`.`id` AND `zy_work_site_process_point`.`deleted_at`=0 AND `zy_work_site_process_point`.`site_node_id`={{site_node_id}} AND `zy_work_site_process_point`.`id` in (select max(`zy_work_site_process_point`.`id`) from `zy_work_site_process_point` where `zy_work_site_process_point`.`deleted_at`=0 group by `zy_work_site_process_point`.`site_node_id`, `zy_work_site_process_point`.`require_id`) left join `zy_work_process` on `zy_work_process`.`id` = `zy_work_process_require`.`process_id` ", map[string]string{
- "where": "`zy_work_process_require`.`id`>0 AND `zy_work_process_require`.`deleted_at`=0 AND `zy_work_process_require`.`state`=1 AND `zy_work_process`.`node_id`={{node_id}} AND FIND_IN_SET(`zy_work_process`.`id`, {{process_ids}}) AND (ISNULL(`zy_work_site_process_point`.`state`) OR `zy_work_site_process_point`.`state` != 1)",
- "_order_by": "`zy_work_process_require`.`id` desc",
- "_group_by": "`zy_work_process_require`.`id`",
- }, map[string]interface{}{
- "site_node_id": worksitenodeInfo.ID,
- "node_id": worksitenodeInfo.NodeId,
- "process_ids": worksitenodeInfo.ProcessIds,
- }, &requireList)
- if len(requireList) != 0 {
- return errors.New("存在图片未审核")
- }
- /*if worksitenodeInfo.QualityAcceptID != 0 {
- s := db.ModelQuery(db.Type(models.WorkSiteQualityAcceptItemModel{}), map[string]interface{}{
- "quality_accept_id": worksitenodeInfo.QualityAcceptID,
- "site_node_id": worksitenodeInfo.ID,
- }, true)
- s.Where = append(s.Where, "(`siteitem`.`state` != 1 OR isnull(`siteitem`.`state`))")
- deleted := models.WorkSiteQualityAcceptItemModel{}.DeletedField()
- if deleted != "" {
- s.Where = append(s.Where, fmt.Sprintf("`%s`.`%s` = 0", models.WorkSiteQualityAcceptItemModel{}.TableName(), deleted))
- }
- query, params := s.Query()
- list, err := db.QueryMap(query, params, nil)
- if err != nil {
- return err
- }
- if list == nil {
- list = make([]map[string]interface{}, 0)
- }
- if len(list) != 0 {
- return errors.New("未完成质检")
- }
- }
- if worksitenodeInfo.ReturnVisitID != 0 && worksitenodeInfo.ReturnVisitContent == "" {
- return errors.New("未完成客服回访")
- }*/
- s := db.ModelQuery(db.Type(models.WorkSiteProblem{}), map[string]interface{}{
- "site_node_id": worksitenodeInfo.ID,
- }, true)
- db.WhereParse(&s, map[string]interface{}{
- "state !=": 6,
- })
- deleted := models.WorkSiteProblem{}.DeletedField()
- if deleted != "" {
- s.Where = append(s.Where, fmt.Sprintf("`%s`.`%s` = 0", models.WorkSiteProblem{}.TableName(), deleted))
- }
- query, params := s.Query()
- list, err := db.QueryMap(query, params, nil)
- if err != nil {
- return err
- }
- if list == nil {
- list = make([]map[string]interface{}, 0)
- }
- if len(list) != 0 {
- return errors.New("存在问题未完结")
- }
- _, err = db.Update(worksitenodeInfo.TableName(), map[string]interface{}{"id": worksitenodeInfo.ID}, map[string]interface{}{
- "real_endtime": now,
- "quality_time": time.Date(time.Now().Year(), time.Now().Month(), time.Now().Day(), 0, 0, 0, 0, time.Local).AddDate(0, 0, 1).Unix(),
- "state": 3,
- })
- if err != nil {
- return err
- }
- var model models.WorkSiteNode
- s = db.ModelQuery(db.Type(model), map[string]interface{}{
- "site_id": worksiteInfo.ID,
- }, true)
- db.WhereParse(&s, map[string]interface{}{
- "state !=": 3,
- })
- deleted = model.DeletedField()
- if deleted != "" {
- s.Where = append(s.Where, fmt.Sprintf("`%s`.`%s` = 0", model.TableName(), deleted))
- }
- query, params = s.Query()
- list, err = db.QueryMap(query, params, nil)
- if err != nil {
- return err
- }
- if list == nil {
- list = make([]map[string]interface{}, 0)
- }
- if len(list) == 0 {
- _, err = db.Update(worksiteInfo.TableName(), map[string]interface{}{"id": worksiteInfo.ID}, map[string]interface{}{
- "real_endtime": now,
- "state": 2,
- })
- if err != nil {
- return err
- }
- userID := user.CreateNewUser(worksiteInfo.Username, worksiteInfo.Phone)
- if userID > 0 {
- _, err := user.HouseAdd(form.HouseAdd{
- UserID: userID,
- Address: worksiteInfo.Address + " " + worksiteInfo.Village,
- Designer: worksiteInfo.DesignerId,
- Supervisor: worksiteInfo.ManagerId,
- ProjectStart: time.Unix(int64(worksiteInfo.StartTime), 0).Format("2006-01-02"),
- ProjectEnd: time.Unix(int64(worksiteInfo.EndTime), 0).Format("2006-01-02"),
- WarrantyPeriodBase: 2,
- WarrantyPeriodMaterial: 1,
- WarrantyPeriodElectric: 5,
- WarrantyStart: time.Now().Format("2006-01") + fmt.Sprintf("-%02d", time.Now().Day()+1),
- })
- if err != nil {
- return err
- }
- }
- }
- case 1:
- nodes := make([]models.WorkSiteNode, 0)
- db.GetModel(map[string]interface{}{
- "site_id": worksitecheck.SiteId,
- "deleted_at": 0,
- }, &nodes)
- for _, node := range nodes {
- if node.State < 2 {
- data := map[string]interface{}{
- "endtime": node.EndTime + worksitecheck.Days*86400,
- }
- if int64(node.StartTime) >= now {
- data["starttime"] = node.StartTime + worksitecheck.Days*86400
- } else {
- data["days"] = node.Days + worksitecheck.Days
- }
- db.UpdateModel(db.Type(models.WorkSiteNode{}), int64(node.ID), data)
- }
- }
- if worksiteInfo.State < 2 {
- data := map[string]interface{}{
- "endtime": worksiteInfo.EndTime + worksitecheck.Days*86400,
- }
- if worksiteInfo.State == 0 {
- data["starttime"] = worksiteInfo.StartTime + worksitecheck.Days*86400
- }
- db.UpdateModel(db.Type(worksiteInfo), int64(worksiteInfo.ID), data)
- }
- case 2:
- if int64(worksitecheck.Days) <= now {
- db.UpdateModel(db.Type(worksiteInfo), int64(worksiteInfo.ID), map[string]interface{}{
- "stoptime": worksitecheck.Days,
- "state": 3,
- })
- }
- case 3:
- if int64(worksitecheck.Days) <= now {
- nodes := make([]models.WorkSiteNode, 0)
- db.GetModel(map[string]interface{}{
- "site_id": worksitecheck.SiteId,
- "deleted_at": 0,
- }, &nodes)
- for _, node := range nodes {
- if node.State < 2 {
- data := map[string]interface{}{
- "endtime": node.EndTime + worksitecheck.Days - worksiteInfo.StopTime,
- }
- if node.StartTime >= worksiteInfo.StopTime {
- data["starttime"] = node.StartTime + worksitecheck.Days - worksiteInfo.StopTime
- } else {
- data["days"] = node.Days + int((worksitecheck.Days-worksiteInfo.StopTime)/86400)
- }
- db.UpdateModel(db.Type(models.WorkSiteNode{}), int64(node.ID), data)
- }
- }
- data := map[string]interface{}{
- "state": 1,
- "endtime": worksiteInfo.EndTime + worksitecheck.Days - worksiteInfo.StopTime,
- }
- db.UpdateModel(db.Type(worksiteInfo), int64(worksiteInfo.ID), data)
- }
- case 4:
- if worksitecheck.State == 0 {
- state = 3
- } else {
- check_id = "`check_ids`"
- explain = "`explains`"
- worksitenodeInfo, _ := worksitenode.GetInfoByID(worksitecheck.SiteNodeId, nil, nil)
- if worksitenodeInfo == nil {
- return errors.New("invalid worksitenode id")
- }
- data := map[string]interface{}{
- "endtime": worksitenodeInfo.EndTime + worksitecheck.Days*86400,
- }
- if int64(worksitenodeInfo.StartTime) >= now {
- data["starttime"] = worksitenodeInfo.StartTime + worksitecheck.Days*86400
- } else {
- data["days"] = worksitenodeInfo.Days + worksitecheck.Days
- }
- db.UpdateModel(db.Type(models.WorkSiteNode{}), int64(worksitenodeInfo.ID), data)
- }
- case 5:
- if worksitecheck.State == 0 {
- state = 3
- } else {
- check_id = "`check_ids`"
- explain = "`explains`"
- worksitenodeInfo, _ := worksitenode.GetInfoByID(worksitecheck.SiteNodeId, nil, nil)
- if worksitenodeInfo == nil {
- return errors.New("invalid worksitenode id")
- }
- db.UpdateModel(db.Type(models.WorkSiteNode{}), int64(worksitenodeInfo.ID), map[string]interface{}{
- "state": 4,
- "process_ids": "",
- "return_visit_id": 0,
- "quality_accept_id": 0,
- })
- }
- }
- data := map[string]interface{}{
- "`state`": state,
- explain: forms.Explain,
- check_id: adminID,
- }
- if worksitecheck.State == 0 {
- data["check_at"] = now
- }
- _, err = db.Update(WorkSiteCheck.TableName(), map[string]interface{}{
- "id": worksitecheck.ID,
- }, data)
- if err != nil {
- return err
- }
- return nil
- }
- func CheckCron() {
- day, _ := time.ParseInLocation("2006-01-02", time.Now().Format("2006-01-02"), time.Local)
- now := day.Unix()
- checks := make([]models.WorkSiteCheck, 0)
- db.GetModel(map[string]interface{}{
- "days": day.Unix(),
- "state": 1,
- "deleted_at": 0,
- }, &checks)
- for _, check := range checks {
- worksiteInfo, _ := worksite.GetInfoByID(check.SiteId, nil, nil)
- if worksiteInfo == nil {
- return
- }
- switch check.Type {
- case 2:
- db.UpdateModel(db.Type(worksiteInfo), int64(worksiteInfo.ID), map[string]interface{}{
- "stoptime": now,
- "state": 3,
- })
- case 3:
- nodes := make([]models.WorkSiteNode, 0)
- db.GetModel(map[string]interface{}{
- "site_id": check.SiteId,
- "deleted_at": 0,
- }, &nodes)
- for _, node := range nodes {
- if node.State < 2 {
- data := map[string]interface{}{
- "endtime": node.EndTime + check.Days - worksiteInfo.StopTime,
- }
- if node.StartTime >= worksiteInfo.StopTime {
- data["starttime"] = node.StartTime + check.Days - worksiteInfo.StopTime
- } else {
- data["days"] = node.Days + int((check.Days-worksiteInfo.StopTime)/86400)
- }
- db.UpdateModel(db.Type(models.WorkSiteNode{}), int64(node.ID), data)
- }
- }
- data := map[string]interface{}{
- "state": 1,
- "endtime": worksiteInfo.EndTime + check.Days - worksiteInfo.StopTime,
- }
- db.UpdateModel(db.Type(worksiteInfo), int64(worksiteInfo.ID), data)
- }
- }
- }
- func CheckFail(id int, forms form.WorkSiteCheckFrom, adminID int) error {
- worksitecheck, err := GetInfoByID(id, nil, nil)
- if worksitecheck == nil {
- return errors.New("invalid worksitecheck id")
- }
- if worksitecheck.Type == 0 {
- worksitenodeInfo, err := worksitenode.GetInfoByID(worksitecheck.SiteNodeId, nil, nil)
- if worksitenodeInfo == nil {
- return errors.New("invalid worksitenode id")
- }
- _, err = db.Update(worksitenodeInfo.TableName(), map[string]interface{}{
- "id": worksitenodeInfo.ID,
- }, map[string]interface{}{
- "state": 0,
- })
- if err != nil {
- return err
- }
- }
- _, err = db.Update(WorkSiteCheck.TableName(), map[string]interface{}{
- "id": worksitecheck.ID,
- }, map[string]interface{}{
- "state": 2,
- "`explain`": forms.Explain,
- "`check_id`": adminID,
- })
- if err != nil {
- return err
- }
- return nil
- }
- func DeleteByID(id int) error {
- info, _ := GetInfoByID(id, nil, nil)
- if info == nil {
- return errors.New("invalid id")
- }
- _, err := db.DeleteSoft(WorkSiteCheck.TableName(), map[string]interface{}{"id": id})
- return err
- }
- func Count(where map[string]interface{}) (int64, error) {
- return db.Count(WorkSiteCheck.TableName(), where)
- }
- func CountRaw(where string, param map[string]interface{}) (int64, error) {
- query := "`zy_work_site_check` left join `zy_work_site` on `zy_work_site`.`id` = `zy_work_site_check`.`site_id` WHERE " + where
- return db.CountRaw(query, param)
- }
- func GetList(where map[string]interface{}, fields []string, page app.Page, retVal interface{}) ([]*models.WorkSiteCheck, error) {
- if page.PageNum > 0 && page.PageSize > 0 {
- where["_limit"] = db.GetOffset(uint(page.PageNum), uint(page.PageSize))
- }
- return WorkSiteCheck.GetMulti(where, fields, retVal)
- }
- func GetWorkSiteChecksRaw(where map[string]string, param map[string]interface{}, retVal interface{}) error {
- field := "SELECT `zy_work_site_check`.*, `zy_work_site_node`.`name` as `node_name`, `zy_work_node`.`color` as `node_color`, `zy_work_node`.`logo` as `node_logo`, `zy_admin`.`username` as `admin_name`, `zy_admin`.`headimgurl` as `admin_headimgurl`, `check`.`username` as `check_name`, `check`.`headimgurl` as `check_headimgurl`, `checks`.`username` as `checks_name`, `checks`.`headimgurl` as `checks_headimgurl`, `zy_work_site`.`username` as `username`, `zy_work_site`.`phone` as `phone`, `zy_work_site`.`village` as `village`, `zy_work_site`.`address` as `address`, `zy_work_site`.`room_no` as `room_no`, `zy_work_site`.`area` as `area`, `zy_work_site`.`starttime` as `site_starttime`, `zy_work_site`.`endtime` as `site_endtime`, `zy_work_site`.`state` as `site_state`, `zy_work_site`.`servicer_id` as `site_servicer_id` from `zy_work_site_check` left join `zy_admin` on `zy_admin`.`id` = `zy_work_site_check`.`admin_id` left join `zy_work_site_node` on `zy_work_site_node`.`id` = `zy_work_site_check`.`site_node_id` left join `zy_work_node` on `zy_work_node`.`id` = `zy_work_site_node`.`node_id` left join `zy_admin` as `check` on `check`.`id` = `zy_work_site_check`.`check_id` left join `zy_work_site` on `zy_work_site`.`id` = `zy_work_site_check`.`site_id` left join `zy_admin` as `checks` on `checks`.`id` = `zy_work_site_check`.`check_ids`"
- return db.GetMultiRaw(field, where, param, retVal)
- }
- func GetOne(where map[string]interface{}, fields []string, retVal interface{}) (*models.WorkSiteCheck, error) {
- return WorkSiteCheck.GetOne(where, fields, retVal)
- }
- func GetWorkSiteCheckOne(where map[string]string, param map[string]interface{}, retVal interface{}) error {
- field := "SELECT `zy_work_site_check`.*, `zy_work_site_node`.`name` as `node_name`, `zy_work_node`.`color` as `node_color`, `zy_work_node`.`logo` as `node_logo`, `zy_admin`.`username` as `admin_name`, `zy_admin`.`headimgurl` as `admin_headimgurl`, `check`.`username` as `check_name`, `check`.`headimgurl` as `check_headimgurl`, `zy_work_site`.`username` as `username`, `zy_work_site`.`phone` as `phone`, `zy_work_site`.`village` as `village`, `zy_work_site`.`address` as `address`, `zy_work_site`.`room_no` as `room_no`, `zy_work_site`.`area` as `area`, `zy_work_site`.`starttime` as `site_starttime`, `zy_work_site`.`endtime` as `site_endtime`, `zy_work_site`.`state` as `site_state` from `zy_work_site_check` left join `zy_admin` on `zy_admin`.`id` = `zy_work_site_check`.`admin_id` left join `zy_work_site_node` on `zy_work_site_node`.`id` = `zy_work_site_check`.`site_node_id` left join `zy_work_node` on `zy_work_node`.`id` = `zy_work_site_node`.`node_id` left join `zy_admin` as `check` on `check`.`id` = `zy_work_site_check`.`check_id` left join `zy_work_site` on `zy_work_site`.`id` = `zy_work_site_check`.`site_id`"
- where["_page_size"] = utils.ToStr(1)
- where["_page_num"] = utils.ToStr(1)
- return db.GetMultiRaw(field, where, param, retVal)
- }
- func GetWorkSiteCheckByID(id int, retVal interface{}) error {
- where := map[string]string{
- "where": "`zy_work_site_check`.`id` = {{id}}",
- }
- param := map[string]interface{}{"id": id}
- return GetWorkSiteCheckOne(where, param, retVal)
- }
- func GetInfoByID(id int, fields []string, retVal interface{}) (*models.WorkSiteCheck, error) {
- return GetOne(map[string]interface{}{"id": id}, fields, retVal)
- }
|