doctor_schedule_service.go 18KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401
  1. package service
  2. import (
  3. "XT_New/models"
  4. "fmt"
  5. "github.com/jinzhu/gorm"
  6. "time"
  7. )
  8. func GetClassName(orgid int64, class_name string) (*models.DoctorSchedules, error) {
  9. schedules := models.DoctorSchedules{}
  10. err := XTReadDB().Model(&schedules).Where("user_org_id = ? and status = 1 and class_name = ?", orgid, class_name).Find(&schedules).Error
  11. if err == gorm.ErrRecordNotFound {
  12. return nil, err
  13. }
  14. if err != nil {
  15. return nil, err
  16. }
  17. return &schedules, nil
  18. }
  19. func CreateDotorSchedule(schedules *models.DoctorSchedules) error {
  20. err := XTWriteDB().Create(&schedules).Error
  21. return err
  22. }
  23. func GetDoctorScheduleByOrgId(orgid int64) (*models.DoctorSchedules, error) {
  24. schedules := models.DoctorSchedules{}
  25. err := XTReadDB().Model(&schedules).Where("user_org_id = ? and status = 1", orgid).Find(&schedules).Error
  26. if err == gorm.ErrRecordNotFound {
  27. return nil, err
  28. }
  29. if err != nil {
  30. return nil, err
  31. }
  32. return &schedules, nil
  33. }
  34. func GetDoctorScheduleList(orgid int64, page int64, limit int64) (schedules []*models.DoctorSchedules, total int64, err error) {
  35. offset := (page - 1) * limit
  36. err = XTReadDB().Model(&schedules).Where("user_org_id = ? and status =1", orgid).Count(&total).Offset(offset).Limit(limit).Find(&schedules).Error
  37. return schedules, total, err
  38. }
  39. func GetScheduleDetail(id int64) (models.DoctorSchedules, error) {
  40. schedules := models.DoctorSchedules{}
  41. err := XTReadDB().Model(&schedules).Where("id=? and status = 1", id).Find(&schedules).Error
  42. return schedules, err
  43. }
  44. func GetClassNameIsExsit(classname string, orgid int64, id int64) (schedule models.DoctorSchedules, err error) {
  45. err = XTReadDB().Model(&schedule).Where("class_name = ? and user_org_id =? and id <> ?", classname, orgid, id).First(&schedule).Error
  46. return schedule, err
  47. }
  48. func UpdateScheduleList(id int64, schedules *models.DoctorSchedules) error {
  49. err := XTReadDB().Model(&schedules).Where("id=?", id).Updates(map[string]interface{}{"class_name": schedules.ClassName, "class_attributes": schedules.ClassAttributes, "timeone_start": schedules.TimeoneStart, "timeone_type": schedules.TimeoneType, "timeone_end": schedules.TimeoneEnd, "timetwo_start": schedules.TimetwoStart, "timetwo_type": schedules.TimetwoType, "timetwo_end": schedules.TimetwoEnd, "work_time": schedules.WorkTime, "remarks": schedules.Remarks, "minute": schedules.Minute, "mtime": time.Now().Unix()}).Error
  50. return err
  51. }
  52. func GetStaffScheduleByScheduleType(id int64, orgid int64) (*models.StaffSchedule, error) {
  53. schedule := models.StaffSchedule{}
  54. err := XTReadDB().Model(&schedule).Where("schedule_type = ? and user_org_id = ? and status = 1", id, orgid).Find(&schedule).Error
  55. if err == gorm.ErrRecordNotFound {
  56. return nil, err
  57. }
  58. if err != nil {
  59. return nil, err
  60. }
  61. return &schedule, nil
  62. }
  63. func DeleteScheduleById(id int64) error {
  64. schedules := models.DoctorSchedules{}
  65. err := XTWriteDB().Model(&schedules).Where("id=?", id).Updates(map[string]interface{}{"status": 0}).Error
  66. return err
  67. }
  68. func GetDoctorList(orgid int64, appid int64) (role []*models.XTSgjUserAdminRole, err error) {
  69. err = UserReadDB().Model(&role).Where("org_id = ? and app_id = ? and (user_type = 2 or user_type = 3) and status = 1 and is_sort = 1", orgid, appid).Order("user_type desc").Find(&role).Error
  70. return role, err
  71. }
  72. func GetAllDoctorList(orgid int64, appid int64) (role []*models.XTSgjUserAdminRole, err error) {
  73. err = UserReadDB().Model(&role).Where("org_id =? and app_id = ? and user_type = 2 and status = 1", orgid, appid).Order("sort desc").Find(&role).Error
  74. return role, err
  75. }
  76. func GetAllNurseList(orgid int64, appid int64) (role []*models.XTSgjUserAdminRole, err error) {
  77. err = UserReadDB().Model(&role).Where("org_id = ? and app_id = ? and user_type =3 and status =1", orgid, appid).Order("sort desc").Find(&role).Error
  78. return role, err
  79. }
  80. func GetScheduleList(orgid int64) (schedule []*models.DoctorSchedules, err error) {
  81. err = XTReadDB().Model(&schedule).Where("user_org_id = ? and status = 1", orgid).Find(&schedule).Error
  82. return schedule, err
  83. }
  84. func GetScheduleListDetail(doctor_id int64, orgid int64, scheduledate int64) (*models.StaffSchedule, error) {
  85. schedule := models.StaffSchedule{}
  86. err := XTReadDB().Model(&schedule).Where("doctor_id = ? and user_org_id = ? and status =1 and schedule_date = ?", doctor_id, orgid, scheduledate).Find(&schedule).Error
  87. if err == gorm.ErrRecordNotFound {
  88. return nil, err
  89. }
  90. if err != nil {
  91. return nil, err
  92. }
  93. return &schedule, nil
  94. }
  95. func AddSchedule(schedule *models.StaffSchedule) error {
  96. err := XTWriteDB().Create(&schedule).Error
  97. return err
  98. }
  99. func UpdateStaffList(schedule *models.StaffSchedule, id int64) error {
  100. err := XTReadDB().Model(&schedule).Where("id=?", id).Updates(map[string]interface{}{"doctor_id": schedule.DoctorId, "doctor_type": schedule.DoctorType, "schedule_type": schedule.ScheduleType, "schedule_week": schedule.ScheduleWeek, "schedule_date": schedule.ScheduleDate, "mtime": time.Now().Unix()}).Error
  101. return err
  102. }
  103. func GetStaffScheduleList(orgid int64, startime int64, endtime int64) (schedule []*models.XtStaffSchedule, err error) {
  104. db := XTReadDB().Table("xt_staff_schedule as x").Where("x.status = 1")
  105. if startime > 0 {
  106. db = db.Where("x.start_time >=?", startime)
  107. }
  108. if endtime > 0 {
  109. db = db.Where("x.end_time <=?", endtime)
  110. }
  111. if orgid > 0 {
  112. db = db.Where("x.user_org_id = ?", orgid)
  113. }
  114. err = db.Group("x.id").Select("x.id,x.doctor_id,x.doctor_type,x.schedule_type,x.schedule_week,x.user_org_id,x.start_time,x.end_time,x.schedule_date,r.user_name,s.class_name,r.admin_user_id,r.user_type,s.class_attributes,r.sort,r.is_sort,s.work_time,s.minute").Joins("left join sgj_users.sgj_user_admin_role as r on r.admin_user_id = x.doctor_id").Joins("left join xt_doctor_schedules as s on s.id = x.schedule_type").Where("r.org_id = ? and r.status = 1 and s.user_org_id = ? and s.status = 1", orgid, orgid).Scan(&schedule).Error
  115. return schedule, err
  116. }
  117. func GetStaffScheduleListTwo(orgid int64, startime int64, endtime int64) (schedule []*models.StaffSchedule, err error) {
  118. err = XTReadDB().Model(&schedule).Where("user_org_id = ? and start_time>=? and end_time<=? and status = 1", orgid, startime, endtime).Find(&schedule).Error
  119. return schedule, err
  120. }
  121. func GetNextWeekSchedule(orgid int64, startime int64, endtime int64) (*models.StaffSchedule, error) {
  122. schedule := models.StaffSchedule{}
  123. err := XTReadDB().Model(&schedule).Where("user_org_id = ? and status = 1 and start_time >=? and end_time<=?", orgid, startime, endtime).Find(&schedule).Error
  124. if err == gorm.ErrRecordNotFound {
  125. return nil, err
  126. }
  127. if err != nil {
  128. return nil, err
  129. }
  130. return &schedule, nil
  131. }
  132. func GetScheduleByDoctorId(doctorid int64, startime int64, endtime int64, orgid int64) (schedule []*models.XtStaffSchedule, err error) {
  133. fmt.Println(doctorid, startime, endtime)
  134. db := XTReadDB().Table("xt_staff_schedule as x").Where("x.status = 1")
  135. if startime > 0 {
  136. db = db.Where("x.start_time >=?", startime)
  137. }
  138. if endtime > 0 {
  139. db = db.Where("x.end_time <=?", endtime)
  140. }
  141. if orgid > 0 {
  142. db = db.Where("x.user_org_id = ?", orgid)
  143. }
  144. if doctorid == 0 {
  145. db = db.Where("x.doctor_type = 2 or x.doctor_type = 3")
  146. }
  147. if doctorid > 0 {
  148. db = db.Where("x.doctor_type = ?", doctorid)
  149. }
  150. err = db.Group("x.id").Select("x.id,x.doctor_id,x.doctor_type,x.schedule_type,x.schedule_week,x.user_org_id,x.start_time,x.end_time,x.schedule_date,r.user_name,s.class_name,r.admin_user_id,s.class_attributes,r.sort,r.is_sort").Joins("left join sgj_users.sgj_user_admin_role as r on r.admin_user_id = x.doctor_id").Joins("left join xt_doctor_schedules as s on s.id = x.schedule_type").Where("r.org_id = ? and r.status = 1 and s.user_org_id = ?", orgid, orgid).Scan(&schedule).Error
  151. return schedule, err
  152. }
  153. func ToSearchSeacheduleList(keywords string, startime int64, endtime int64, orgid int64) (schedule []*models.XtStaffSchedule, err error) {
  154. db := XTReadDB().Table("xt_staff_schedule as x").Where("x.status = 1")
  155. if startime > 0 {
  156. db = db.Where("x.start_time >=?", startime)
  157. }
  158. if endtime > 0 {
  159. db = db.Where("x.end_time <=?", endtime)
  160. }
  161. if orgid > 0 {
  162. db = db.Where("x.user_org_id = ?", orgid)
  163. }
  164. likeKey := "%" + keywords + "%"
  165. //if(doctorid >0){
  166. // db = db.Where("x.doctor_id = ?", doctorid)
  167. //}
  168. err = db.Group("x.id").Select("x.id,x.doctor_id,x.doctor_type,x.schedule_type,x.schedule_week,x.user_org_id,x.start_time,x.schedule_date,x.end_time,r.user_type,r.user_name,s.class_name,r.admin_user_id,s.class_attributes,r.sort,r.is_sort").Joins("left join sgj_users.sgj_user_admin_role AS r ON r.admin_user_id = x.doctor_id").Joins("left join xt_doctor_schedules as s on s.id = x.schedule_type and s.user_org_id = ?", orgid).Where("r.org_id = ? and r.status = 1 and r.user_name like ?", orgid, likeKey).Scan(&schedule).Error
  169. return schedule, err
  170. }
  171. func DeleteStaffSchedule(orgid int64, startime int64, endtime int64) error {
  172. schedule := models.StaffSchedule{}
  173. err := XTWriteDB().Model(&schedule).Where("user_org_id = ? and start_time >= ? and end_time <=?", orgid, startime, endtime).Updates(map[string]interface{}{"status": 0}).Error
  174. return err
  175. }
  176. func GetContinueScheduleByOrgId(orgid int64) (*models.ContinueSchedule, error) {
  177. //schedules := models.DoctorSchedules{}
  178. //err := XTReadDB().Model(&schedules).Where("user_org_id = ? and status = 1", orgid).Find(&schedules).Error
  179. //if err == gorm.ErrRecordNotFound {
  180. // return nil, err
  181. //}
  182. //if err != nil {
  183. // return nil, err
  184. //}
  185. //return &schedules, nil
  186. schedule := models.ContinueSchedule{}
  187. err := XTReadDB().Model(&schedule).Where("user_org_id = ? and status = 1", orgid).Find(&schedule).Error
  188. if err == gorm.ErrRecordNotFound {
  189. return nil, err
  190. }
  191. if err != nil {
  192. return nil, err
  193. }
  194. return &schedule, nil
  195. }
  196. func UpdateContinusSchedule(schedule *models.ContinueSchedule, orgid int64) error {
  197. err := XTWriteDB().Model(&schedule).Where("user_org_id = ? and status = 1", orgid).Updates(map[string]interface{}{"is_status": schedule.IsStatus, "mtime": time.Now().Unix()}).Error
  198. return err
  199. }
  200. func SaveNurseSort(role *models.App_Role, id int64) error {
  201. err := UserWriteDB().Model(&role).Where("id = ?", id).Updates(map[string]interface{}{"sort": role.Sort}).Error
  202. return err
  203. }
  204. func SaveIsSchedule(id int64, role *models.App_Role) error {
  205. err := UserWriteDB().Model(&role).Where("id=?", id).Updates(map[string]interface{}{"is_sort": role.IsSort}).Error
  206. return err
  207. }
  208. func GetScheduleListTotal(orgid int64, startime int64, endtime int64) (schedule []*models.CountStaffSchedule, err error) {
  209. db := XTReadDB().Table("xt_staff_schedule as x").Where("x.status = 1")
  210. if startime > 0 {
  211. db = db.Where("x.start_time >=?", startime)
  212. }
  213. if endtime > 0 {
  214. db = db.Where("x.end_time <=?", endtime)
  215. }
  216. if orgid > 0 {
  217. db = db.Where("x.user_org_id = ?", orgid)
  218. }
  219. err = db.Group("x.doctor_id,x.schedule_type").Select("x.doctor_id,x.schedule_type,x.start_time,x.end_time,x.schedule_date,r.user_name,s.class_name,r.sort,r.is_sort,count(s.class_name) as count").Joins("left join sgj_users.sgj_user_admin_role as r on r.admin_user_id = x.doctor_id").Joins("left join xt_doctor_schedules as s on s.id = x.schedule_type").Where("r.org_id = ? and r.status = 1 and s.user_org_id = ? and s.status = 1", orgid, orgid).Scan(&schedule).Error
  220. return schedule, err
  221. }
  222. func GetTotalMinutes(orgid int64, startime int64, endtime int64) (schedule []*models.CountStaffSchedule, err error) {
  223. db := XTReadDB().Table("xt_staff_schedule as x").Where("x.status = 1")
  224. if startime > 0 {
  225. db = db.Where("x.start_time >=?", startime)
  226. }
  227. if endtime > 0 {
  228. db = db.Where("x.end_time <=?", endtime)
  229. }
  230. if orgid > 0 {
  231. db = db.Where("x.user_org_id = ?", orgid)
  232. }
  233. err = db.Group("x.doctor_id").Select("x.doctor_id,x.schedule_type,x.start_time,x.end_time,x.schedule_date,r.user_name,s.class_name,r.sort,r.is_sort,sum(s.minute) as totalminute").Joins("left join sgj_users.sgj_user_admin_role as r on r.admin_user_id = x.doctor_id").Joins("left join xt_doctor_schedules as s on s.id = x.schedule_type").Where("r.org_id = ? and r.status = 1 and s.user_org_id = ? and s.status = 1", orgid, orgid).Scan(&schedule).Error
  234. return schedule, err
  235. }
  236. func GetTotalWorkDay(orgid int64, startime int64, endtime int64) (schedule []*models.CountStaffSchedule, err error) {
  237. db := XTReadDB().Table("xt_staff_schedule as x").Where("x.status = 1")
  238. if startime > 0 {
  239. db = db.Where("x.start_time >=?", startime)
  240. }
  241. if endtime > 0 {
  242. db = db.Where("x.end_time <=?", endtime)
  243. }
  244. if orgid > 0 {
  245. db = db.Where("x.user_org_id = ?", orgid)
  246. }
  247. err = db.Group("x.doctor_id").Select("x.doctor_id,x.schedule_type,x.start_time,x.end_time,x.schedule_date,r.user_name,s.class_name,r.sort,r.is_sort,count(x.id) as count").Joins("left join sgj_users.sgj_user_admin_role as r on r.admin_user_id = x.doctor_id").Joins("left join xt_doctor_schedules as s on s.id = x.schedule_type").Where("r.org_id = ? and r.status = 1 and s.user_org_id = ? and s.status = 1 and s.class_attributes = 1", orgid, orgid).Scan(&schedule).Error
  248. return schedule, err
  249. }
  250. func GetTotalNoWorkDay(orgid int64, startime int64, endtime int64) (schedule []*models.CountStaffSchedule, err error) {
  251. db := XTReadDB().Table("xt_staff_schedule as x").Where("x.status = 1")
  252. if startime > 0 {
  253. db = db.Where("x.start_time >=?", startime)
  254. }
  255. if endtime > 0 {
  256. db = db.Where("x.end_time <=?", endtime)
  257. }
  258. if orgid > 0 {
  259. db = db.Where("x.user_org_id = ?", orgid)
  260. }
  261. err = db.Group("x.doctor_id").Select("x.doctor_id,x.schedule_type,x.start_time,x.end_time,x.schedule_date,r.user_name,s.class_name,r.sort,r.is_sort,count(x.id) as count").Joins("left join sgj_users.sgj_user_admin_role as r on r.admin_user_id = x.doctor_id").Joins("left join xt_doctor_schedules as s on s.id = x.schedule_type").Where("r.org_id = ? and r.status = 1 and s.user_org_id = ? and s.status = 1 and s.class_attributes = 2", orgid, orgid).Scan(&schedule).Error
  262. return schedule, err
  263. }
  264. func GetSearchScheduleListTotal(orgid int64, startime int64, endtime int64, keywords string) (schedule []*models.CountStaffSchedule, err error) {
  265. likeKey := "%" + keywords + "%"
  266. db := XTReadDB().Table("xt_staff_schedule as x").Where("x.status = 1")
  267. if startime > 0 {
  268. db = db.Where("x.start_time >=?", startime)
  269. }
  270. if endtime > 0 {
  271. db = db.Where("x.end_time <=?", endtime)
  272. }
  273. if orgid > 0 {
  274. db = db.Where("x.user_org_id = ?", orgid)
  275. }
  276. err = db.Group("x.doctor_id,x.schedule_type").Select("x.doctor_id,x.schedule_type,x.start_time,x.end_time,x.schedule_date,r.user_name,s.class_name,r.sort,r.is_sort,count(s.class_name) as count").Joins("left join sgj_users.sgj_user_admin_role as r on r.admin_user_id = x.doctor_id").Where("r.user_name like ?", likeKey).Joins("left join xt_doctor_schedules as s on s.id = x.schedule_type").Where("r.org_id = ? and r.status = 1 and s.user_org_id = ? and s.status = 1 ", orgid, orgid).Scan(&schedule).Error
  277. return schedule, err
  278. }
  279. func GeSearchtTotalMinutes(orgid int64, startime int64, endtime int64, keywords string) (schedule []*models.CountStaffSchedule, err error) {
  280. likeKey := "%" + keywords + "%"
  281. db := XTReadDB().Table("xt_staff_schedule as x").Where("x.status = 1")
  282. if startime > 0 {
  283. db = db.Where("x.start_time >=?", startime)
  284. }
  285. if endtime > 0 {
  286. db = db.Where("x.end_time <=?", endtime)
  287. }
  288. if orgid > 0 {
  289. db = db.Where("x.user_org_id = ?", orgid)
  290. }
  291. err = db.Group("x.doctor_id").Select("x.doctor_id,x.schedule_type,x.start_time,x.end_time,x.schedule_date,r.user_name,s.class_name,r.sort,r.is_sort,sum(s.minute) as totalminute").Joins("left join sgj_users.sgj_user_admin_role as r on r.admin_user_id = x.doctor_id").Where("r.user_name like ?", likeKey).Joins("left join xt_doctor_schedules as s on s.id = x.schedule_type").Where("r.org_id = ? and r.status = 1 and s.user_org_id = ? and s.status = 1", orgid, orgid).Scan(&schedule).Error
  292. return schedule, err
  293. }
  294. func GetSearchWorkDay(orgid int64, startime int64, endtime int64, keywords string) (schedule []*models.CountStaffSchedule, err error) {
  295. likeKey := "%" + keywords + "%"
  296. db := XTReadDB().Table("xt_staff_schedule as x").Where("x.status = 1")
  297. if startime > 0 {
  298. db = db.Where("x.start_time >=?", startime)
  299. }
  300. if endtime > 0 {
  301. db = db.Where("x.end_time <=?", endtime)
  302. }
  303. if orgid > 0 {
  304. db = db.Where("x.user_org_id = ?", orgid)
  305. }
  306. err = db.Group("x.doctor_id").Select("x.doctor_id,x.schedule_type,x.start_time,x.end_time,x.schedule_date,r.user_name,s.class_name,r.sort,r.is_sort,count(x.id) as count").Joins("left join sgj_users.sgj_user_admin_role as r on r.admin_user_id = x.doctor_id").Where("r.user_name like ?", likeKey).Joins("left join xt_doctor_schedules as s on s.id = x.schedule_type").Where("r.org_id = ? and r.status = 1 and s.user_org_id = ? and s.status = 1 and s.class_attributes = 1", orgid, orgid).Scan(&schedule).Error
  307. return schedule, err
  308. }
  309. func GetSearchWorkNoDay(orgid int64, startime int64, endtime int64, keywords string) (schedule []*models.CountStaffSchedule, err error) {
  310. likeKey := "%" + keywords + "%"
  311. db := XTReadDB().Table("xt_staff_schedule as x").Where("x.status = 1")
  312. if startime > 0 {
  313. db = db.Where("x.start_time >=?", startime)
  314. }
  315. if endtime > 0 {
  316. db = db.Where("x.end_time <=?", endtime)
  317. }
  318. if orgid > 0 {
  319. db = db.Where("x.user_org_id = ?", orgid)
  320. }
  321. err = db.Group("x.doctor_id").Select("x.doctor_id,x.schedule_type,x.start_time,x.end_time,x.schedule_date,r.user_name,s.class_name,r.sort,r.is_sort,count(x.id) as count").Joins("left join sgj_users.sgj_user_admin_role as r on r.admin_user_id = x.doctor_id").Where("r.user_name like ?", likeKey).Joins("left join xt_doctor_schedules as s on s.id = x.schedule_type").Where("r.org_id = ? and r.status = 1 and s.user_org_id = ? and s.status = 1 and s.class_attributes = 2", orgid, orgid).Scan(&schedule).Error
  322. return schedule, err
  323. }
  324. func ChagneScheduleListTotal(orgid int64, startime int64, endtime int64, doctortype int64) (schedule []*models.CountStaffSchedule, err error) {
  325. db := XTReadDB().Table("xt_staff_schedule as x").Where("x.status = 1")
  326. if startime > 0 {
  327. db = db.Where("x.start_time >=?", startime)
  328. }
  329. if endtime > 0 {
  330. db = db.Where("x.end_time <=?", endtime)
  331. }
  332. if orgid > 0 {
  333. db = db.Where("x.user_org_id = ?", orgid)
  334. }
  335. if doctortype == 0 {
  336. db = db.Where("x.doctor_type = 2 or x.doctor_type = 3")
  337. }
  338. if doctortype > 0 {
  339. db = db.Where("x.doctor_type = ?", doctortype)
  340. }
  341. err = db.Group("x.doctor_id,x.schedule_type").Select("x.doctor_id,x.schedule_type,x.start_time,x.end_time,x.schedule_date,r.user_name,s.class_name,r.sort,r.is_sort,count(s.class_name) as count").Joins("left join sgj_users.sgj_user_admin_role as r on r.admin_user_id = x.doctor_id").Joins("left join xt_doctor_schedules as s on s.id = x.schedule_type").Where("r.org_id = ? and r.status = 1 and s.user_org_id = ? and s.status = 1 ", orgid, orgid).Scan(&schedule).Error
  342. return schedule, err
  343. }