Browse Source

添加生产线、时间模型得数据维护接口开发

pull/106/head
zhangxin 3 years ago
parent
commit
34c16b1bc4
11 changed files with 304 additions and 10 deletions
  1. +11
    -10
      models/base/WeekModel.model.go
  2. +57
    -0
      services/base/implments/DayModel.service.impl.go
  3. +35
    -0
      services/base/implments/WeekModel.service.impl.go
  4. +27
    -0
      services/base/implments/WeekModelLst.service.impl.go
  5. +12
    -0
      services/base/implments/WorkCalendar.service.impl.go
  6. +27
    -0
      services/base/implments/WorkCalendarLst.service.impl.go
  7. +59
    -0
      services/base/implments/WorkLine.service.impl.go
  8. +27
    -0
      services/base/implments/WorkLineSpecialDay.service.impl.go
  9. +28
    -0
      services/base/implments/WorkLineWorkShiftLst.service.impl.go
  10. +12
    -0
      services/base/implments/WorkShift.service.impl.go
  11. +9
    -0
      services/base/implments/WorkShiftEffLst.service.impl.go

+ 11
- 10
models/base/WeekModel.model.go View File

@ -20,16 +20,17 @@ import (
*
******************************************************************************/
type WeekModel struct {
PlantNr int `xorm:"pk int 'PlantNr'" json:"WeekModel-PlantNr"`
WeekModelNr int `xorm:"pk int 'WeekModelNr'" json:"WeekModel-WeekModelNr"`
DateFrom int `xorm:"int 'DateFrom' not null" json:"WeekModel-DateFrom"`
Descr string `xorm:"nvarchar(100) 'Descr' not null" json:"WeekModel-Descr"`
Abrev string `xorm:"nvarchar(10) 'Abrev' not null" json:"WeekModel-Abrev"`
CtrlToggle bool `xorm:"bit 'CtrlToggle' not null" json:"WeekModel-CtrlToggle"`
LoopDays int `xorm:"int 'LoopDays' not null" json:"WeekModel-LoopDays"`
LastModify grmi.DateTime `xorm:"datetime 'LastModify' not null updated" json:"WeekModel-LastModify"`
LastUser string `xorm:"nvarchar(20) 'LastUser' not null" json:"WeekModel-LastUser"`
CreateTime grmi.DateTime `xorm:"datetime 'CreateTime' not null created" json:"WeekModel-CreateTime"`
PlantNr int `xorm:"pk int 'PlantNr'" json:"WeekModel-PlantNr"`
WeekModelNr int `xorm:"pk int 'WeekModelNr'" json:"WeekModel-WeekModelNr"`
DateFrom int `xorm:"int 'DateFrom' not null" json:"WeekModel-DateFrom"`
Descr string `xorm:"nvarchar(100) 'Descr' not null" json:"WeekModel-Descr"`
Abrev string `xorm:"nvarchar(10) 'Abrev' not null" json:"WeekModel-Abrev"`
CtrlToggle bool `xorm:"bit 'CtrlToggle' not null" json:"WeekModel-CtrlToggle"`
LoopDays int `xorm:"int 'LoopDays' not null" json:"WeekModel-LoopDays"`
LastModify grmi.DateTime `xorm:"datetime 'LastModify' not null updated" json:"WeekModel-LastModify"`
LastUser string `xorm:"nvarchar(20) 'LastUser' not null" json:"WeekModel-LastUser"`
CreateTime grmi.DateTime `xorm:"datetime 'CreateTime' not null created" json:"WeekModel-CreateTime"`
WeekModelLst []WeekModelLst `xorm:"-" json:"WeekModel-WeekModelLst"`
}
/******************************************************************************


+ 57
- 0
services/base/implments/DayModel.service.impl.go View File

@ -147,6 +147,34 @@ func (impl *DayModelServiceImplement) InsertOne(user *models.Usertab, entity *mo
if record != nil {
return grmi.NewBusinessError("已经存在相同主键的记录!")
}
dependOnDao := dal.NewWorkShiftDAO(session, user.Pid, user.Userid)
if record.S1WorkShiftNr != 0 {
workShift, err := dependOnDao.SelectOne(record.S1WorkShiftNr)
if err != nil {
return err
}
if workShift == nil {
return grmi.NewBusinessError("S1WorkShiftNr不存在对应的人员班组信息,请检查")
}
}
if record.S2WorkShiftNr != 0 {
workShift, err := dependOnDao.SelectOne(record.S2WorkShiftNr)
if err != nil {
return err
}
if workShift == nil {
return grmi.NewBusinessError("S2WorkShiftNr不存在对应的人员班组信息,请检查")
}
}
if record.S3WorkShiftNr != 0 {
workShift, err := dependOnDao.SelectOne(record.S3WorkShiftNr)
if err != nil {
return err
}
if workShift == nil {
return grmi.NewBusinessError("S3WorkShiftNr不存在对应的人员班组信息,请检查")
}
}
err = dao.InsertOne(entity)
if err != nil {
return err
@ -221,6 +249,35 @@ func (impl *DayModelServiceImplement) UpdateOne(user *models.Usertab, entity *mo
if record == nil {
return grmi.NewBusinessError("不存在指定记录!")
}
dependOnDao := dal.NewWorkShiftDAO(session, user.Pid, user.Userid)
if entity.S1WorkShiftNr != 0 {
workShift, err := dependOnDao.SelectOne(entity.S1WorkShiftNr)
if err != nil {
return err
}
if workShift == nil {
return grmi.NewBusinessError("S1WorkShiftNr不存在对应的人员班组信息,请检查")
}
}
if entity.S2WorkShiftNr != 0 {
workShift, err := dependOnDao.SelectOne(entity.S2WorkShiftNr)
if err != nil {
return err
}
if workShift == nil {
return grmi.NewBusinessError("S2WorkShiftNr不存在对应的人员班组信息,请检查")
}
}
if entity.S3WorkShiftNr != 0 {
workShift, err := dependOnDao.SelectOne(entity.S3WorkShiftNr)
if err != nil {
return err
}
if workShift == nil {
return grmi.NewBusinessError("S3WorkShiftNr不存在对应的人员班组信息,请检查")
}
}
entity.DayModelNr = record.DayModelNr
err = dao.UpdateOne(entity)
if err != nil {
return err


+ 35
- 0
services/base/implments/WeekModel.service.impl.go View File

@ -121,6 +121,10 @@ func (impl *WeekModelServiceImplement) DeleteOne(user *models.Usertab, weekModel
engine := db.Eloquent.Master()
session := engine.NewSession()
defer session.Close()
err := session.Begin()
if err != nil {
return err
}
dao := dal.NewWeekModelDAO(session, user.Pid, user.Userid)
record, err := dao.SelectOne(weekModelNr)
if err != nil {
@ -129,10 +133,18 @@ func (impl *WeekModelServiceImplement) DeleteOne(user *models.Usertab, weekModel
if record == nil {
return grmi.NewBusinessError("不存在指定记录!")
}
weekLstDao := dal.NewWeekModelLstDAO(session, user.Pid, user.Userid)
err = weekLstDao.DeleteWhere([]grmi.Predicate{meta.WeekModelLst_WeekModelNr.NewPredicate(grmi.Equal, weekModelNr)})
if err != nil {
session.Rollback()
return err
}
err = dao.DeleteOne(weekModelNr)
if err != nil {
session.Rollback()
return err
}
session.Commit()
return nil
}
@ -176,6 +188,7 @@ func (impl *WeekModelServiceImplement) UpdateOne(user *models.Usertab, entity *m
if record == nil {
return grmi.NewBusinessError("不存在指定记录!")
}
entity.WeekModelNr = record.WeekModelNr
err = dao.UpdateOne(entity)
if err != nil {
return err
@ -263,17 +276,39 @@ func (impl *WeekModelServiceImplement) Select(user *models.Usertab, urlParameter
return nil, err
}
dao := dal.NewWeekModelDAO(session, user.Pid, user.Userid)
weekModelLstDao := dal.NewWeekModelLstDAO(session, user.Pid, user.Userid)
lstCondition := DefaultConditionOfWeekModelAndPaging
if condition.Fill(urlParameters) {
result, err := dao.SelectAndPaging(condition.Paging, predicates, condition.OrderByFields)
if err != nil {
return nil, err
}
li := result.Records.([]model.WeekModel)
for index, weekModel := range li {
weekModelLstLi, err := weekModelLstDao.Select([]grmi.Predicate{meta.WeekModelLst_WeekModelNr.NewPredicate(grmi.Equal, weekModel.WeekModelNr)}, lstCondition.OrderByFields)
if err != nil {
return nil, err
}
newWeekModel := weekModel
newWeekModel.WeekModelLst = weekModelLstLi
li[index] = weekModel
}
result.Records = li
return result, nil
} else {
result, err := dao.Select(predicates, condition.OrderByFields)
if err != nil {
return nil, err
}
for index, weekModel := range result {
weekModelLstLi, err := weekModelLstDao.Select([]grmi.Predicate{meta.WeekModelLst_WeekModelNr.NewPredicate(grmi.Equal, weekModel.WeekModelNr)}, lstCondition.OrderByFields)
if err != nil {
return nil, err
}
newWeekModel := weekModel
newWeekModel.WeekModelLst = weekModelLstLi
result[index] = weekModel
}
return result, nil
}
}


+ 27
- 0
services/base/implments/WeekModelLst.service.impl.go View File

@ -99,6 +99,22 @@ func (impl *WeekModelLstServiceImplement) InsertOne(user *models.Usertab, entity
if record != nil {
return grmi.NewBusinessError("已经存在相同主键的记录!")
}
weekModelDao := dal.NewWeekModelDAO(session, user.Pid, user.Userid)
weekModel, err := weekModelDao.SelectOne(entity.WeekModelNr)
if err != nil {
return err
}
if weekModel == nil {
return grmi.NewBusinessError("不存在对应的周模型,请检查")
}
dayModelDao := dal.NewDayModelDAO(session, user.Pid, user.Userid)
dayModel, err := dayModelDao.SelectOne(entity.DayModelNr)
if err != nil {
return err
}
if dayModel == nil {
return grmi.NewBusinessError("不存在对应的日模型,请检查")
}
err = dao.InsertOne(entity)
if err != nil {
return err
@ -173,6 +189,17 @@ func (impl *WeekModelLstServiceImplement) UpdateOne(user *models.Usertab, entity
if record == nil {
return grmi.NewBusinessError("不存在指定记录!")
}
if record.DayModelNr != entity.DayModelNr {
dayModelDao := dal.NewDayModelDAO(session, user.Pid, user.Userid)
dayModel, err := dayModelDao.SelectOne(entity.DayModelNr)
if err != nil {
return err
}
if dayModel == nil {
return grmi.NewBusinessError("不存在对应的日模型,请检查")
}
}
entity.WeekModelNr = record.WeekModelNr
err = dao.UpdateOne(entity)
if err != nil {
return err


+ 12
- 0
services/base/implments/WorkCalendar.service.impl.go View File

@ -117,6 +117,10 @@ func (impl *WorkCalendarServiceImplement) DeleteOne(user *models.Usertab, workCa
engine := db.Eloquent.Master()
session := engine.NewSession()
defer session.Close()
err := session.Begin()
if err != nil {
return err
}
dao := dal.NewWorkCalendarDAO(session, user.Pid, user.Userid)
record, err := dao.SelectOne(workCalendarNr)
if err != nil {
@ -125,10 +129,18 @@ func (impl *WorkCalendarServiceImplement) DeleteOne(user *models.Usertab, workCa
if record == nil {
return grmi.NewBusinessError("不存在指定记录!")
}
calendarLstDao := dal.NewWorkCalendarLstDAO(session, user.Pid, user.Userid)
err = calendarLstDao.DeleteWhere([]grmi.Predicate{meta.WorkCalendarLst_WorkCalendarNr.NewPredicate(grmi.Equal, workCalendarNr)})
if err != nil {
session.Rollback()
return err
}
err = dao.DeleteOne(workCalendarNr)
if err != nil {
session.Rollback()
return err
}
session.Commit()
return nil
}


+ 27
- 0
services/base/implments/WorkCalendarLst.service.impl.go View File

@ -99,6 +99,22 @@ func (impl *WorkCalendarLstServiceImplement) InsertOne(user *models.Usertab, ent
if record != nil {
return grmi.NewBusinessError("已经存在相同主键的记录!")
}
calendarDao := dal.NewWorkCalendarDAO(session, user.Pid, user.Userid)
calendar, err := calendarDao.SelectOne(entity.WorkCalendarNr)
if err != nil {
return err
}
if calendar == nil {
return grmi.NewBusinessError("不存在对应的日历模型,请检查")
}
dayModelDao := dal.NewDayModelDAO(session, user.Pid, user.Userid)
dayModel, err := dayModelDao.SelectOne(entity.DayModelNr)
if err != nil {
return err
}
if dayModel == nil {
return grmi.NewBusinessError("不存在对应的日模型, 请检查")
}
err = dao.InsertOne(entity)
if err != nil {
return err
@ -173,6 +189,17 @@ func (impl *WorkCalendarLstServiceImplement) UpdateOne(user *models.Usertab, ent
if record == nil {
return grmi.NewBusinessError("不存在指定记录!")
}
if record.DayModelNr != entity.DayModelNr {
dayModelDao := dal.NewDayModelDAO(session, user.Pid, user.Userid)
dayModel, err := dayModelDao.SelectOne(entity.DayModelNr)
if err != nil {
return err
}
if dayModel == nil {
return grmi.NewBusinessError("不存在对应的日模型, 请检查")
}
}
entity.WorkCalendarNr = record.WorkCalendarNr
err = dao.UpdateOne(entity)
if err != nil {
return err


+ 59
- 0
services/base/implments/WorkLine.service.impl.go View File

@ -116,6 +116,25 @@ func (impl *WorkLineServiceImplement) InsertOne(user *models.Usertab, entity *mo
if record != nil {
return grmi.NewBusinessError("已经存在相同主键的记录!")
}
weekModelDao := dal.NewWeekModelDAO(session, user.Pid, user.Userid)
weekModel, err := weekModelDao.SelectOne(entity.WeekModelNr)
if err != nil {
return err
}
if weekModel == nil {
return grmi.NewBusinessError("不存在对应的周模型,请检查")
}
if entity.WorkCalendarNr != 0 {
calendarDao := dal.NewWorkCalendarDAO(session, user.Pid, user.Userid)
calendar, err := calendarDao.SelectOne(entity.WorkCalendarNr)
if err != nil {
return err
}
if calendar == nil {
return grmi.NewBusinessError("不存在对应的日历模型")
}
}
err = dao.InsertOne(entity)
if err != nil {
return err
@ -135,6 +154,10 @@ func (impl *WorkLineServiceImplement) DeleteOne(user *models.Usertab, workLineid
engine := db.Eloquent.Master()
session := engine.NewSession()
defer session.Close()
err := session.Begin()
if err != nil {
return err
}
dao := dal.NewWorkLineDAO(session, user.Pid, user.Userid)
record, err := dao.SelectOne(workLineid)
if err != nil {
@ -143,10 +166,24 @@ func (impl *WorkLineServiceImplement) DeleteOne(user *models.Usertab, workLineid
if record == nil {
return grmi.NewBusinessError("不存在指定记录!")
}
specialDayDao := dal.NewWorkLineSpecialDayDAO(session, user.Pid, user.Userid)
err = specialDayDao.DeleteWhere([]grmi.Predicate{meta.WorkLineSpecialDay_WorkLineid.NewPredicate(grmi.Equal, workLineid)})
if err != nil {
session.Rollback()
return err
}
workLineShiftDao := dal.NewWorkLineWorkShiftLstDAO(session, user.Pid, user.Userid)
err = workLineShiftDao.DeleteWhere([]grmi.Predicate{meta.WorkLineWorkShiftLst_WorkLineId.NewPredicate(grmi.Equal, workLineid)})
if err != nil {
session.Rollback()
return err
}
err = dao.DeleteOne(workLineid)
if err != nil {
session.Rollback()
return err
}
session.Commit()
return nil
}
@ -190,6 +227,28 @@ func (impl *WorkLineServiceImplement) UpdateOne(user *models.Usertab, entity *mo
if record == nil {
return grmi.NewBusinessError("不存在指定记录!")
}
if record.WeekModelNr != entity.WeekModelNr {
weekModelDao := dal.NewWeekModelDAO(session, user.Pid, user.Userid)
weekModel, err := weekModelDao.SelectOne(entity.WeekModelNr)
if err != nil {
return err
}
if weekModel == nil {
return grmi.NewBusinessError("不存在对应的周模型,请检查")
}
}
if record.WorkCalendarNr != entity.WorkCalendarNr && entity.WorkCalendarNr != 0 {
calendarDao := dal.NewWorkCalendarDAO(session, user.Pid, user.Userid)
calendar, err := calendarDao.SelectOne(entity.WorkCalendarNr)
if err != nil {
return err
}
if calendar == nil {
return grmi.NewBusinessError("不存在对应的日历模型,请检查")
}
}
entity.WorkLineid = record.WorkLineid
entity.Pos = record.Pos
err = dao.UpdateOne(entity)
if err != nil {
return err


+ 27
- 0
services/base/implments/WorkLineSpecialDay.service.impl.go View File

@ -100,6 +100,22 @@ func (impl *WorkLineSpecialDayServiceImplement) InsertOne(user *models.Usertab,
if record != nil {
return grmi.NewBusinessError("已经存在相同主键的记录!")
}
workLineDao := dal.NewWorkLineDAO(session, user.Pid, user.Userid)
workLine, err := workLineDao.SelectOne(entity.WorkLineid)
if err != nil {
return err
}
if workLine == nil {
return grmi.NewBusinessError("不存在对应的生产线,请检查")
}
dayModelDao := dal.NewDayModelDAO(session, user.Pid, user.Userid)
dayModel, err := dayModelDao.SelectOne(entity.DayModelNr)
if err != nil {
return err
}
if dayModel == nil {
return grmi.NewBusinessError("不存在对应的日模型")
}
err = dao.InsertOne(entity)
if err != nil {
return err
@ -174,6 +190,17 @@ func (impl *WorkLineSpecialDayServiceImplement) UpdateOne(user *models.Usertab,
if record == nil {
return grmi.NewBusinessError("不存在指定记录!")
}
if record.DayModelNr != entity.DayModelNr {
dayModelDao := dal.NewDayModelDAO(session, user.Pid, user.Userid)
dayModel, err := dayModelDao.SelectOne(entity.DayModelNr)
if err != nil {
return err
}
if dayModel == nil {
return grmi.NewBusinessError("不存在对应的日模型,请检查")
}
}
entity.WorkLineid = record.WorkLineid
err = dao.UpdateOne(entity)
if err != nil {
return err


+ 28
- 0
services/base/implments/WorkLineWorkShiftLst.service.impl.go View File

@ -101,6 +101,22 @@ func (impl *WorkLineWorkShiftLstServiceImplement) InsertOne(user *models.Usertab
if record != nil {
return grmi.NewBusinessError("已经存在相同主键的记录!")
}
workLineDao := dal.NewWorkLineDAO(session, user.Pid, user.Userid)
workLine, err := workLineDao.SelectOne(entity.WorkLineId)
if err != nil {
return err
}
if workLine == nil {
return grmi.NewBusinessError("不存在对应的生产线,请检查")
}
workShiftDao := dal.NewWorkShiftDAO(session, user.Pid, user.Userid)
workShift, err := workShiftDao.SelectOne(entity.WorkShiftNr)
if err != nil {
return err
}
if workShift == nil {
return grmi.NewBusinessError("不存在对应的人员班组,请检查")
}
err = dao.InsertOne(entity)
if err != nil {
return err
@ -175,6 +191,18 @@ func (impl *WorkLineWorkShiftLstServiceImplement) UpdateOne(user *models.Usertab
if record == nil {
return grmi.NewBusinessError("不存在指定记录!")
}
if record.WorkShiftNr != entity.WorkShiftNr {
workShiftDao := dal.NewWorkShiftDAO(session, user.Pid, user.Userid)
workShift, err := workShiftDao.SelectOne(entity.WorkShiftNr)
if err != nil {
return err
}
if workShift == nil {
return grmi.NewBusinessError("不存在对应的人员班组,请检查")
}
}
entity.WorkLineId = record.WorkLineId
entity.Pos = record.Pos
err = dao.UpdateOne(entity)
if err != nil {
return err


+ 12
- 0
services/base/implments/WorkShift.service.impl.go View File

@ -134,6 +134,10 @@ func (impl *WorkShiftServiceImplement) DeleteOne(user *models.Usertab, workShift
engine := db.Eloquent.Master()
session := engine.NewSession()
defer session.Close()
err := session.Begin()
if err != nil {
return err
}
dao := dal.NewWorkShiftDAO(session, user.Pid, user.Userid)
record, err := dao.SelectOne(workShiftNr)
if err != nil {
@ -142,10 +146,18 @@ func (impl *WorkShiftServiceImplement) DeleteOne(user *models.Usertab, workShift
if record == nil {
return grmi.NewBusinessError("不存在指定记录!")
}
wslDao := dal.NewWorkShiftEffLstDAO(session, user.Pid, user.Userid)
err = wslDao.DeleteWhere([]grmi.Predicate{meta.WorkShiftEffLst_WorkShiftNr.NewPredicate(grmi.Equal, workShiftNr)})
if err != nil {
session.Rollback()
return err
}
err = dao.DeleteOne(workShiftNr)
if err != nil {
session.Rollback()
return err
}
session.Commit()
return nil
}


+ 9
- 0
services/base/implments/WorkShiftEffLst.service.impl.go View File

@ -102,6 +102,14 @@ func (impl *WorkShiftEffLstServiceImplement) InsertOne(user *models.Usertab, ent
if record != nil {
return grmi.NewBusinessError("已经存在相同主键的记录!")
}
dependOnDao := dal.NewWorkShiftDAO(session, user.Pid, user.Userid)
workShift, err := dependOnDao.SelectOne(entity.WorkShiftNr)
if err != nil {
return err
}
if workShift == nil {
return grmi.NewBusinessError("不存在对应的人员班组, 请检查")
}
err = dao.InsertOne(entity)
if err != nil {
return err
@ -176,6 +184,7 @@ func (impl *WorkShiftEffLstServiceImplement) UpdateOne(user *models.Usertab, ent
if record == nil {
return grmi.NewBusinessError("不存在指定记录!")
}
entity.WorkShiftNr = record.WorkShiftNr
err = dao.UpdateOne(entity)
if err != nil {
return err


Loading…
Cancel
Save