diff --git a/meta/pln/ReleaseTaskConfig.meta.go b/meta/pln/ReleaseTaskConfig.meta.go index 2a76087..20a22ff 100644 --- a/meta/pln/ReleaseTaskConfig.meta.go +++ b/meta/pln/ReleaseTaskConfig.meta.go @@ -13,15 +13,15 @@ import ( * * @Author : 代码生成器创建 * - * @Date : 2022-06-23 17:08:07 + * @Date : 2022-06-23 17:23:13 * ******************************************************************************/ var ReleaseTaskConfig_PlantNr = grmi.NewField("PlantNr", "[PLN_ReleaseTaskConfig].PlantNr", "plantnr", grmi.TypeInt) var ReleaseTaskConfig_ConfigNr = grmi.NewField("ConfigNr", "[PLN_ReleaseTaskConfig].ConfigNr", "confignr", grmi.TypeInt) var ReleaseTaskConfig_LeadTime = grmi.NewField("LeadTime", "[PLN_ReleaseTaskConfig].LeadTime", "leadtime", grmi.TypeInt) var ReleaseTaskConfig_TimeUomId = grmi.NewField("TimeUomId", "[PLN_ReleaseTaskConfig].TimeUomId", "timeuomid", grmi.TypeString) -var ReleaseTaskConfig_BussinessObjType = grmi.NewField("BussinessObjType", "[PLN_ReleaseTaskConfig].BussinessObjType", "bussinessobjtype", grmi.TypeString) -var ReleaseTaskConfig_BussinessObjId = grmi.NewField("BussinessObjId", "[PLN_ReleaseTaskConfig].BussinessObjId", "bussinessobjid", grmi.TypeString) +var ReleaseTaskConfig_BusinessObjType = grmi.NewField("BusinessObjType", "[PLN_ReleaseTaskConfig].BusinessObjType", "businessobjtype", grmi.TypeString) +var ReleaseTaskConfig_BusinessObjId = grmi.NewField("BusinessObjId", "[PLN_ReleaseTaskConfig].BusinessObjId", "businessobjid", grmi.TypeString) var ReleaseTaskConfig_LastModify = grmi.NewField("LastModify", "[PLN_ReleaseTaskConfig].LastModify", "lastmodify", grmi.TypeDateTime) var ReleaseTaskConfig_LastUser = grmi.NewField("LastUser", "[PLN_ReleaseTaskConfig].LastUser", "lastuser", grmi.TypeString) var ReleaseTaskConfig_CreateTime = grmi.NewField("CreateTime", "[PLN_ReleaseTaskConfig].CreateTime", "createtime", grmi.TypeDateTime) @@ -32,22 +32,22 @@ var ReleaseTaskConfig_CreateTime = grmi.NewField("CreateTime", "[PLN_ReleaseTask * * @Author : 代码生成器创建 * - * @Date : 2022-06-23 17:08:07 + * @Date : 2022-06-23 17:23:13 * ******************************************************************************/ var ReleaseTaskConfig = grmi.NewEntity( "PLN_ReleaseTaskConfig", func() interface{} { return &model.ReleaseTaskConfig{} }, map[string]grmi.Field{ - ReleaseTaskConfig_PlantNr.Name: ReleaseTaskConfig_PlantNr, - ReleaseTaskConfig_ConfigNr.Name: ReleaseTaskConfig_ConfigNr, - ReleaseTaskConfig_LeadTime.Name: ReleaseTaskConfig_LeadTime, - ReleaseTaskConfig_TimeUomId.Name: ReleaseTaskConfig_TimeUomId, - ReleaseTaskConfig_BussinessObjType.Name: ReleaseTaskConfig_BussinessObjType, - ReleaseTaskConfig_BussinessObjId.Name: ReleaseTaskConfig_BussinessObjId, - ReleaseTaskConfig_LastModify.Name: ReleaseTaskConfig_LastModify, - ReleaseTaskConfig_LastUser.Name: ReleaseTaskConfig_LastUser, - ReleaseTaskConfig_CreateTime.Name: ReleaseTaskConfig_CreateTime, + ReleaseTaskConfig_PlantNr.Name: ReleaseTaskConfig_PlantNr, + ReleaseTaskConfig_ConfigNr.Name: ReleaseTaskConfig_ConfigNr, + ReleaseTaskConfig_LeadTime.Name: ReleaseTaskConfig_LeadTime, + ReleaseTaskConfig_TimeUomId.Name: ReleaseTaskConfig_TimeUomId, + ReleaseTaskConfig_BusinessObjType.Name: ReleaseTaskConfig_BusinessObjType, + ReleaseTaskConfig_BusinessObjId.Name: ReleaseTaskConfig_BusinessObjId, + ReleaseTaskConfig_LastModify.Name: ReleaseTaskConfig_LastModify, + ReleaseTaskConfig_LastUser.Name: ReleaseTaskConfig_LastUser, + ReleaseTaskConfig_CreateTime.Name: ReleaseTaskConfig_CreateTime, }, []string{"PlantNr"}, - []string{"LeadTime", "TimeUomId", "BussinessObjType", "BussinessObjId", "LastUser"}) + []string{"LeadTime", "TimeUomId", "BusinessObjType", "BusinessObjId", "LastUser"}) diff --git a/models/pln/ReleaseTaskConfig.model.go b/models/pln/ReleaseTaskConfig.model.go index 1b3f42c..3300f9d 100644 --- a/models/pln/ReleaseTaskConfig.model.go +++ b/models/pln/ReleaseTaskConfig.model.go @@ -16,19 +16,19 @@ import ( * * @Author : 代码生成器创建 * - * @Date : 2022-06-23 17:08:07 + * @Date : 2022-06-23 17:23:13 * ******************************************************************************/ type ReleaseTaskConfig struct { - PlantNr int `xorm:"pk int 'PlantNr'" json:"PLN_ReleaseTaskConfig-PlantNr"` - ConfigNr int `xorm:"pk int 'ConfigNr' autoincr" json:"PLN_ReleaseTaskConfig-ConfigNr"` - LeadTime int `xorm:"int 'LeadTime' not null" json:"PLN_ReleaseTaskConfig-LeadTime"` - TimeUomId string `xorm:"nvarchar(40) 'TimeUomId' not null" json:"PLN_ReleaseTaskConfig-TimeUomId"` - BussinessObjType string `xorm:"nvarchar(40) 'BussinessObjType' not null" json:"PLN_ReleaseTaskConfig-BussinessObjType"` - BussinessObjId string `xorm:"nvarchar(40) 'BussinessObjId' not null" json:"PLN_ReleaseTaskConfig-BussinessObjId"` - LastModify grmi.DateTime `xorm:"datetime 'LastModify' not null updated" json:"PLN_ReleaseTaskConfig-LastModify"` - LastUser string `xorm:"nvarchar(20) 'LastUser' not null" json:"PLN_ReleaseTaskConfig-LastUser"` - CreateTime grmi.DateTime `xorm:"datetime 'CreateTime' not null created" json:"PLN_ReleaseTaskConfig-CreateTime"` + PlantNr int `xorm:"pk int 'PlantNr'" json:"PLN_ReleaseTaskConfig-PlantNr"` + ConfigNr int `xorm:"pk int 'ConfigNr' autoincr" json:"PLN_ReleaseTaskConfig-ConfigNr"` + LeadTime int `xorm:"int 'LeadTime' not null" json:"PLN_ReleaseTaskConfig-LeadTime"` + TimeUomId string `xorm:"nvarchar(40) 'TimeUomId' not null" json:"PLN_ReleaseTaskConfig-TimeUomId"` + BusinessObjType string `xorm:"nvarchar(40) 'BusinessObjType' not null" json:"PLN_ReleaseTaskConfig-BusinessObjType"` + BusinessObjId string `xorm:"nvarchar(40) 'BusinessObjId' not null" json:"PLN_ReleaseTaskConfig-BusinessObjId"` + LastModify grmi.DateTime `xorm:"datetime 'LastModify' not null updated" json:"PLN_ReleaseTaskConfig-LastModify"` + LastUser string `xorm:"nvarchar(20) 'LastUser' not null" json:"PLN_ReleaseTaskConfig-LastUser"` + CreateTime grmi.DateTime `xorm:"datetime 'CreateTime' not null created" json:"PLN_ReleaseTaskConfig-CreateTime"` } /****************************************************************************** @@ -42,7 +42,7 @@ type ReleaseTaskConfig struct { * * @Author : 代码生成器创建 * - * @Date : 2022-06-23 17:08:07 + * @Date : 2022-06-23 17:23:13 * ******************************************************************************/ func (self *ReleaseTaskConfig) GetKey() core.PK { diff --git a/services/pln/ReleaseTaskConfig.service.go b/services/pln/ReleaseTaskConfig.service.go index aedfdbc..24945ed 100644 --- a/services/pln/ReleaseTaskConfig.service.go +++ b/services/pln/ReleaseTaskConfig.service.go @@ -18,7 +18,7 @@ import ( * * @Author : 代码生成器创建 * - * @Date : 2022-06-23 17:08:07 + * @Date : 2022-06-23 17:23:13 * ******************************************************************************/ type ReleaseTaskConfigService interface { @@ -37,7 +37,7 @@ type ReleaseTaskConfigService interface { * * @Author : 代码生成器创建 * - * @Date : 2022-06-23 17:08:07 + * @Date : 2022-06-23 17:23:13 * ******************************************************************************/ InsertOne(*global.User, *model.ReleaseTaskConfig) error @@ -54,7 +54,7 @@ type ReleaseTaskConfigService interface { * * @Author : 代码生成器创建 * - * @Date : 2022-06-23 17:08:07 + * @Date : 2022-06-23 17:23:13 * ******************************************************************************/ DeleteOne(*global.User, int) error @@ -73,7 +73,7 @@ type ReleaseTaskConfigService interface { * * @Author : 代码生成器创建 * - * @Date : 2022-06-23 17:08:07 + * @Date : 2022-06-23 17:23:13 * ******************************************************************************/ SelectOne(*global.User, int) (*model.ReleaseTaskConfig, error) @@ -92,7 +92,7 @@ type ReleaseTaskConfigService interface { * * @Author : 代码生成器创建 * - * @Date : 2022-06-23 17:08:07 + * @Date : 2022-06-23 17:23:13 * ******************************************************************************/ UpdateOne(*global.User, *model.ReleaseTaskConfig) error @@ -111,7 +111,7 @@ type ReleaseTaskConfigService interface { * * @Author : 代码生成器创建 * - * @Date : 2022-06-23 17:08:07 + * @Date : 2022-06-23 17:23:13 * ******************************************************************************/ Insert(*global.User, *[]model.ReleaseTaskConfig) error @@ -130,7 +130,7 @@ type ReleaseTaskConfigService interface { * * @Author : 代码生成器创建 * - * @Date : 2022-06-23 17:08:07 + * @Date : 2022-06-23 17:23:13 * ******************************************************************************/ Delete(*global.User, *[]model.ReleaseTaskConfig) error @@ -151,7 +151,7 @@ type ReleaseTaskConfigService interface { * * @Author : 代码生成器创建 * - * @Date : 2022-06-23 17:08:07 + * @Date : 2022-06-23 17:23:13 * ******************************************************************************/ Select(*global.User, map[string]string) ([]model.ReleaseTaskConfig, error) @@ -172,7 +172,7 @@ type ReleaseTaskConfigService interface { * * @Author : 代码生成器创建 * - * @Date : 2022-06-23 17:08:07 + * @Date : 2022-06-23 17:23:13 * ******************************************************************************/ SelectAndPaging(*global.User, map[string]string) (grmi.PagingResult, error) @@ -191,7 +191,7 @@ type ReleaseTaskConfigService interface { * * @Author : 代码生成器创建 * - * @Date : 2022-06-23 17:08:07 + * @Date : 2022-06-23 17:23:13 * ******************************************************************************/ Update(*global.User, *[]model.ReleaseTaskConfig) error @@ -213,7 +213,7 @@ type ReleaseTaskConfigService interface { * * @Author : 代码生成器创建 * - * @Date : 2022-06-23 17:08:07 + * @Date : 2022-06-23 17:23:13 * ******************************************************************************/ func NewReleaseTaskConfigService() ReleaseTaskConfigService { diff --git a/services/pln/implments/CustOrder.service.impl.go b/services/pln/implments/CustOrder.service.impl.go index 1dc2908..7a39f4e 100644 --- a/services/pln/implments/CustOrder.service.impl.go +++ b/services/pln/implments/CustOrder.service.impl.go @@ -228,7 +228,7 @@ func (impl *CustOrderServiceImplement) InsertOne(user *global.User, entity *mode custOrderId, err := snrDao.GetNextSnr(project.CustOrderSnr) if err != nil { _ = session.Rollback() - return grmi.NewBusinessError("生成客户订单流水号失败, error:" + custOrderId) + return grmi.NewBusinessError("生成客户订单流水号失败, error:" + err.Error()) } entity.CustOrderId = custOrderId custOrderQty := model.CustOrderQty{ diff --git a/services/pln/implments/CustOrderLogic.service.impl.go b/services/pln/implments/CustOrderLogic.service.impl.go index 268be88..d944026 100644 --- a/services/pln/implments/CustOrderLogic.service.impl.go +++ b/services/pln/implments/CustOrderLogic.service.impl.go @@ -116,7 +116,7 @@ func (impl *CustOrderServiceImplement) LockCustOrder(user *global.User, custOrde err = snrDao.OccupySnrWithTime(snrId, custOrder.PlanStartTime.Restore(), baseModel.SNR_OCCUPY_CUSTORDER, custOrder.CustOrderId, custOrder.PlanQty) if err != nil { _ = session.Rollback() - return grmi.NewBusinessError(fmt.Sprintf("派生%s占用流水号失败", custOrder.ProductFamilyId)) + return grmi.NewBusinessError(fmt.Sprintf("派生%s占用流水号失败,错误:%v, 流水号ID:%s", custOrder.ProductFamilyId, err, snrId)) } } } @@ -124,7 +124,7 @@ func (impl *CustOrderServiceImplement) LockCustOrder(user *global.User, custOrde err = snrDao.OccupySnrWithTime(project.SerialOrderSnr, custOrder.PlanStartTime.Restore(), baseModel.SNR_OCCUPY_CUSTORDER, custOrder.CustOrderId, custOrder.PlanQty) if err != nil { _ = session.Rollback() - return grmi.NewBusinessError(fmt.Sprintf("派生%s占用流水号失败", custOrder.ProductFamilyId)) + return grmi.NewBusinessError(fmt.Sprintf("派生%s占用流水号失败,错误:%v, 流水号ID:%s", custOrder.ProductFamilyId, err, project.SerialOrderSnr)) } } } @@ -322,7 +322,7 @@ func (impl *CustOrderServiceImplement) AnalysisPlanFromExcel(user *global.User, productLi, err := productRelateDao.SelectProductByFamilyIdForCreateSerialOrder(custOrder.ProjectId, custOrder.ProductFamilyId) if err != nil { _ = session.Rollback() - return grmi.NewBusinessError(fmt.Sprintf("获取派生%s的生产总成失败", custOrder.ProductFamilyId)) + return grmi.NewBusinessError(fmt.Sprintf("获取派生%s的生产总成失败,错误:%v", custOrder.ProductFamilyId, err)) } if len(productLi) == 0 { _ = session.Rollback() @@ -337,7 +337,7 @@ func (impl *CustOrderServiceImplement) AnalysisPlanFromExcel(user *global.User, err = snrDao.OccupySnrWithTime(snrId, custOrder.PlanStartTime.Restore(), baseModel.SNR_OCCUPY_CUSTORDER, custOrder.CustOrderId, custOrder.PlanQty) if err != nil { _ = session.Rollback() - return grmi.NewBusinessError(fmt.Sprintf("派生%s占用流水号失败", custOrder.ProductFamilyId)) + return grmi.NewBusinessError(fmt.Sprintf("派生%s占用流水号失败,错误:%v, 流水号ID:%s", custOrder.ProductFamilyId, err, snrId)) } } } @@ -345,11 +345,13 @@ func (impl *CustOrderServiceImplement) AnalysisPlanFromExcel(user *global.User, err = snrDao.OccupySnrWithTime(project.SerialOrderSnr, custOrder.PlanStartTime.Restore(), baseModel.SNR_OCCUPY_CUSTORDER, custOrder.CustOrderId, custOrder.PlanQty) if err != nil { _ = session.Rollback() - return grmi.NewBusinessError(fmt.Sprintf("派生%s占用流水号失败", custOrder.ProductFamilyId)) + return grmi.NewBusinessError(fmt.Sprintf("派生%s占用流水号失败,错误:%v, 流水号ID:%s", custOrder.ProductFamilyId, err, project.SerialOrderSnr)) } } } _ = session.Commit() + //newReleaseTaskLi := make([]model.CustOrder, 0) + //for _, custOrder := range sort.Slice(releaseCustOrderLi, func(i, j int) bool { itemI := releaseCustOrderLi[i] itemJ := releaseCustOrderLi[j] @@ -357,6 +359,7 @@ func (impl *CustOrderServiceImplement) AnalysisPlanFromExcel(user *global.User, jUnix := itemJ.PlanStartTime.Restore().Unix() return iUnix < jUnix }) + plantNr := user.PlantNr channel, exist := common.ReleaseTaskChannel[plantNr] if !exist { @@ -1232,7 +1235,7 @@ func (impl *CustOrderServiceImplement) RepairReleaseFailedTask(user *global.User err = channel.ResetChannel() if err != nil { _ = session.Rollback() - return grmi.NewBusinessError("刷新任务队列失败") + return grmi.NewBusinessError("刷新任务队列失败, 错误:" + err.Error()) } custOrderLi, err := custOrderDao.SelectNeedReleaseCustOrder() if err != nil { diff --git a/services/pln/implments/ReleaseTaskConfig.service.impl.go b/services/pln/implments/ReleaseTaskConfig.service.impl.go index b913def..892c7fa 100644 --- a/services/pln/implments/ReleaseTaskConfig.service.impl.go +++ b/services/pln/implments/ReleaseTaskConfig.service.impl.go @@ -17,19 +17,19 @@ import ( * * @Author : 代码生成器创建 * - * @Date : 2022-06-23 17:08:07 + * @Date : 2022-06-23 17:23:13 * ******************************************************************************/ var DefaultConditionOfReleaseTaskConfig = grmi.NewCondition( map[string]grmi.ConditionItem{ - meta.ReleaseTaskConfig_ConfigNr.UrlParameterName: grmi.NewConditionItem(meta.ReleaseTaskConfig_ConfigNr, grmi.Equal, true), - meta.ReleaseTaskConfig_LeadTime.UrlParameterName: grmi.NewConditionItem(meta.ReleaseTaskConfig_LeadTime, grmi.Equal, false), - meta.ReleaseTaskConfig_TimeUomId.UrlParameterName: grmi.NewConditionItem(meta.ReleaseTaskConfig_TimeUomId, grmi.Equal, false), - meta.ReleaseTaskConfig_BussinessObjType.UrlParameterName: grmi.NewConditionItem(meta.ReleaseTaskConfig_BussinessObjType, grmi.Equal, false), - meta.ReleaseTaskConfig_BussinessObjId.UrlParameterName: grmi.NewConditionItem(meta.ReleaseTaskConfig_BussinessObjId, grmi.Equal, false), - meta.ReleaseTaskConfig_LastModify.UrlParameterName: grmi.NewConditionItem(meta.ReleaseTaskConfig_LastModify, grmi.Approximate, false), - meta.ReleaseTaskConfig_LastUser.UrlParameterName: grmi.NewConditionItem(meta.ReleaseTaskConfig_LastUser, grmi.Equal, false), - meta.ReleaseTaskConfig_CreateTime.UrlParameterName: grmi.NewConditionItem(meta.ReleaseTaskConfig_CreateTime, grmi.Approximate, false), + meta.ReleaseTaskConfig_ConfigNr.UrlParameterName: grmi.NewConditionItem(meta.ReleaseTaskConfig_ConfigNr, grmi.Equal, true), + meta.ReleaseTaskConfig_LeadTime.UrlParameterName: grmi.NewConditionItem(meta.ReleaseTaskConfig_LeadTime, grmi.Equal, false), + meta.ReleaseTaskConfig_TimeUomId.UrlParameterName: grmi.NewConditionItem(meta.ReleaseTaskConfig_TimeUomId, grmi.Equal, false), + meta.ReleaseTaskConfig_BusinessObjType.UrlParameterName: grmi.NewConditionItem(meta.ReleaseTaskConfig_BusinessObjType, grmi.Equal, false), + meta.ReleaseTaskConfig_BusinessObjId.UrlParameterName: grmi.NewConditionItem(meta.ReleaseTaskConfig_BusinessObjId, grmi.Equal, false), + meta.ReleaseTaskConfig_LastModify.UrlParameterName: grmi.NewConditionItem(meta.ReleaseTaskConfig_LastModify, grmi.Approximate, false), + meta.ReleaseTaskConfig_LastUser.UrlParameterName: grmi.NewConditionItem(meta.ReleaseTaskConfig_LastUser, grmi.Equal, false), + meta.ReleaseTaskConfig_CreateTime.UrlParameterName: grmi.NewConditionItem(meta.ReleaseTaskConfig_CreateTime, grmi.Approximate, false), }, nil, ) @@ -40,7 +40,7 @@ var DefaultConditionOfReleaseTaskConfig = grmi.NewCondition( * * @Author : 代码生成器创建 * - * @Date : 2022-06-23 17:08:07 + * @Date : 2022-06-23 17:23:13 * ******************************************************************************/ var DefaultConditionOfReleaseTaskConfigAndPaging = grmi.NewCondition( @@ -57,7 +57,7 @@ var DefaultConditionOfReleaseTaskConfigAndPaging = grmi.NewCondition( * * @Author : 代码生成器创建 * - * @Date : 2022-06-23 17:08:07 + * @Date : 2022-06-23 17:23:13 * ******************************************************************************/ type ReleaseTaskConfigServiceImplement struct { @@ -74,7 +74,7 @@ type ReleaseTaskConfigServiceImplement struct { * * @Author : 代码生成器创建 * - * @Date : 2022-06-23 17:08:07 + * @Date : 2022-06-23 17:23:13 * ******************************************************************************/ func NewReleaseTaskConfigServiceImplement() *ReleaseTaskConfigServiceImplement { @@ -346,8 +346,8 @@ func (impl *ReleaseTaskConfigServiceImplement) Save(user *global.User, entity *m } }() err = dao.DeleteWhere([]grmi.Predicate{ - meta.ReleaseTaskConfig_BussinessObjType.NewPredicate(grmi.Equal, entity.BussinessObjType), - meta.ReleaseTaskConfig_BussinessObjId.NewPredicate(grmi.Equal, entity.BussinessObjId), + meta.ReleaseTaskConfig_BusinessObjType.NewPredicate(grmi.Equal, entity.BusinessObjType), + meta.ReleaseTaskConfig_BusinessObjId.NewPredicate(grmi.Equal, entity.BusinessObjId), }) if err != nil { return err @@ -369,8 +369,8 @@ func (impl *ReleaseTaskConfigServiceImplement) SelectConfig(user *global.User, o defer session.Close() dao := dal.NewReleaseTaskConfigDAO(session, user.PlantNr, user.UserId) result, err := dao.Select([]grmi.Predicate{ - meta.ReleaseTaskConfig_BussinessObjType.NewPredicate(grmi.Equal, objType), - meta.ReleaseTaskConfig_BussinessObjId.NewPredicate(grmi.Equal, objId)}, nil) + meta.ReleaseTaskConfig_BusinessObjType.NewPredicate(grmi.Equal, objType), + meta.ReleaseTaskConfig_BusinessObjId.NewPredicate(grmi.Equal, objId)}, nil) if err != nil { return nil, err } diff --git a/utils/time.go b/utils/time.go index 7805149..5718044 100644 --- a/utils/time.go +++ b/utils/time.go @@ -403,3 +403,35 @@ func GetHoursData(startTime, endTime time.Time) (data []string, err error) { } } +// CalcDurationByUom 根据传入得数量和单位返回时间 +func CalcDurationByUom(qty float64, uom string) time.Duration { + seconds := GetTimeUomSeconds(uom) + return time.Duration(float64(qty) * seconds) +} + +// GetTimeUomSeconds 基于时间单位获取秒数 +func GetTimeUomSeconds(uomId string) (seconds float64) { + seconds = 0 + switch strings.ToUpper(uomId) { + case TIME_UOM_WEEK: + seconds = 7 * 24 * 3600 + case TIME_UOM_DAY: + seconds = 24 * 3600 + case TIME_UOM_HOUR: + seconds = 3600 + case TIME_UOM_MINUTE: + seconds = 60 + case TIME_UOM_SECOND: + seconds = 1 + } + return +} + +const ( + // 时间类型 + TIME_UOM_WEEK = "WEEK" + TIME_UOM_DAY = "DAY" + TIME_UOM_HOUR = "HOUR" + TIME_UOM_MINUTE = "MINUTE" + TIME_UOM_SECOND = "SECOND" +) \ No newline at end of file