Browse Source

pm 设备管理接口补充

pull/45/head
DESKTOP-4672LME\Xu Tengfei 3 years ago
parent
commit
4c95b81883
5 changed files with 179 additions and 2 deletions
  1. +6
    -0
      models/pm/Asset.model.go
  2. +1
    -0
      models/pm/TemplateServiceLst.model.go
  3. +37
    -0
      services/pm/implments/Asset.service.impl.go
  4. +5
    -2
      services/pm/implments/Location.service.impl.go
  5. +130
    -0
      services/pm/implments/Template.service.impl.go

+ 6
- 0
models/pm/Asset.model.go View File

@ -60,3 +60,9 @@ type Asset struct {
func (self *Asset) GetKey() core.PK {
return core.PK{self.PlantNr, self.AssetNr}
}
type TemplateAsset struct {
AssetTemplateLst `xorm:"extends"`
Template `xorm:"extends"`
}

+ 1
- 0
models/pm/TemplateServiceLst.model.go View File

@ -27,6 +27,7 @@ type TemplateServiceLst struct {
LastModify grmi.DateTime `xorm:"datetime 'LastModify' not null updated" json:"PM_TemplateServiceLst-LastModify"`
LastUser string `xorm:"nvarchar(20) 'LastUser' not null" json:"PM_TemplateServiceLst-LastUser"`
CreateTime grmi.DateTime `xorm:"datetime 'CreateTime' not null created" json:"PM_TemplateServiceLst-CreateTime"`
Descr string `json:"PM_TemplateServiceLst-Descr" xorm:"-"`
}
/******************************************************************************


+ 37
- 0
services/pm/implments/Asset.service.impl.go View File

@ -222,6 +222,43 @@ func (impl *AssetServiceImplement) SelectOne(user *global.User, assetNr int) (*m
if err != nil {
return nil, err
}
if result == nil{
return result, err
}
var datalist []model.Template
var tem1 []model.Template
var tem2 []model.AssetTemplateLst
err = session.Table("PM_AssetTemplateLst").Find(&tem2)
if err != nil {
return result, err
}
err = session.Table("PM_Template").Find(&tem1)
if err != nil {
return result, err
}
var Maintemplatenrs []int
for _, v := range tem1 {
for _, v2 := range tem2{
if v.PlantNr == v2.PlantNr && v.MainTemplateNr == v2.MainTemplateNr{
dataone := model.Template{}
dataone.MainTemplateNr = v2.MainTemplateNr
dataone.Descr = v.Descr
Maintemplatenrs = append(Maintemplatenrs, v2.MainTemplateNr)
datalist = append(datalist, dataone)
}
}
}
result.Valst = datalist
var templatedata []model.Template
err = session.Table("PM_Template").NotIn("MainTemplateNr", Maintemplatenrs).Where("PlantNr = ?", result.PlantNr).Find(&templatedata)
if err != nil {
return result, err
}
result.UnValst = templatedata
return result, nil
}


+ 5
- 2
services/pm/implments/Location.service.impl.go View File

@ -189,8 +189,11 @@ func (impl *LocationServiceImplement) SelectOne(user *global.User, locaNr int) (
if err != nil {
return result, err
}
result.Valst = valst
result.UnValst = uvalst
if result!=nil{
result.Valst = valst
result.UnValst = uvalst
}
return result, nil
}


+ 130
- 0
services/pm/implments/Template.service.impl.go View File

@ -3,12 +3,14 @@
package implments
import (
baseDal "LAPP_ACURA_MOM_BACKEND/dao/base"
dal "LAPP_ACURA_MOM_BACKEND/dao/pm"
"LAPP_ACURA_MOM_BACKEND/db"
"LAPP_ACURA_MOM_BACKEND/global"
"LAPP_ACURA_MOM_BACKEND/grmi"
meta "LAPP_ACURA_MOM_BACKEND/meta/pm"
model "LAPP_ACURA_MOM_BACKEND/models/pm"
"LAPP_ACURA_MOM_BACKEND/utils"
)
/******************************************************************************
@ -95,15 +97,52 @@ func (impl *TemplateServiceImplement) InsertOne(user *global.User, entity *model
engine := db.Eloquent.Master()
session := engine.NewSession()
defer session.Close()
err := session.Begin()
if err != nil {
return err
}
dao := dal.NewTemplateDAO(session, user.PlantNr, user.UserId)
record, err := dao.SelectOne(entity.MainTemplateNr)
if err != nil {
return err
}
if record != nil {
session.Rollback()
return grmi.NewBusinessError("已经存在相同主键的记录!")
}
snrDao := baseDal.NewSnrDAO(session, user.PlantNr, user.UserId)
Maintemplatenr, err := snrDao.GetNextSnr("Templateid")
if err != nil {
session.Rollback()
return err
}
entity.MainTemplateNr = utils.ValueToInt(Maintemplatenr,0)
err = dao.InsertOne(entity)
if err != nil {
session.Rollback()
return err
}
//批量插入
alldata := make([]model.TemplateServiceLst, 0)
for k, v := range entity.Valst {
one := model.TemplateServiceLst{}
one.PlantNr = entity.PlantNr
one.Pos = k + 1
one.Descr = v.Descr
one.MainTemplateNr = entity.MainTemplateNr
one.MainServiceNr = utils.ValueToInt(v.MainServiceNr, 0)
one.CreateTime = entity.CreateTime
one.LastUser = entity.LastUser
one.LastModify = entity.LastModify
alldata = append(alldata, one)
}
_, err = session.Table("PM_TemplateServiceLst").Insert(&alldata)
if err != nil {
session.Rollback()
return err
}
err = session.Commit()
if err != nil {
return err
}
@ -122,6 +161,10 @@ func (impl *TemplateServiceImplement) DeleteOne(user *global.User, mainTemplateN
engine := db.Eloquent.Master()
session := engine.NewSession()
defer session.Close()
err := session.Begin()
if err != nil {
return err
}
dao := dal.NewTemplateDAO(session, user.PlantNr, user.UserId)
record, err := dao.SelectOne(mainTemplateNr)
if err != nil {
@ -131,6 +174,18 @@ func (impl *TemplateServiceImplement) DeleteOne(user *global.User, mainTemplateN
return grmi.NewBusinessError("不存在指定记录!")
}
err = dao.DeleteOne(mainTemplateNr)
if err != nil {
session.Rollback()
return err
}
dao_TemplateServiceLst := dal.NewTemplateServiceLstDAO(session, user.PlantNr, user.UserId)
err = dao_TemplateServiceLst.DeleteWhere([]grmi.Predicate{meta.TemplateServiceLst_PlantNr.NewPredicate(grmi.Equal, record.PlantNr), meta.TemplateServiceLst_MainTemplateNr.NewPredicate(grmi.Equal, record.MainTemplateNr)})
if err != nil {
session.Rollback()
return err
}
err = session.Commit()
if err != nil {
return err
}
@ -154,6 +209,45 @@ func (impl *TemplateServiceImplement) SelectOne(user *global.User, mainTemplateN
if err != nil {
return nil, err
}
if result == nil{
return result, err
}
var datalist []model.Service
var tem1 []model.Service
var tem2 []model.TemplateServiceLst
var maintemplatenrs []int
err = session.Table("PM_Service").Find(&tem1)
if err != nil {
return result, err
}
err = session.Table("PM_TemplateServiceLst").Find(&tem2)
if err != nil {
return result, err
}
var Maintemplatenrs []int
for _, v := range tem1 {
for _, v2 := range tem2{
if v.PlantNr == v2.PlantNr && v.MainServiceNr == v2.MainServiceNr{
dataone := model.Service{}
dataone.MainServiceNr = v.MainServiceNr
dataone.Descr = v.Descr
maintemplatenrs = append(maintemplatenrs, v2.MainTemplateNr)
datalist = append(datalist, dataone)
}
}
}
result.Valst = datalist
var templatedata []model.Service
err = session.Table("PM_Service").NotIn("MainServiceNr", Maintemplatenrs).Where("PlantNr = ?", result.PlantNr).Find(&templatedata)
if err != nil {
return result, err
}
result.UnValst = templatedata
return result, nil
}
@ -169,6 +263,10 @@ func (impl *TemplateServiceImplement) UpdateOne(user *global.User, entity *model
engine := db.Eloquent.Master()
session := engine.NewSession()
defer session.Close()
err := session.Begin()
if err != nil {
return err
}
dao := dal.NewTemplateDAO(session, user.PlantNr, user.UserId)
record, err := dao.SelectOne(entity.MainTemplateNr)
if err != nil {
@ -181,6 +279,38 @@ func (impl *TemplateServiceImplement) UpdateOne(user *global.User, entity *model
if err != nil {
return err
}
dao_TemplateServiceLst := dal.NewTemplateServiceLstDAO(session, user.PlantNr, user.UserId)
err = dao_TemplateServiceLst.DeleteWhere([]grmi.Predicate{meta.TemplateServiceLst_PlantNr.NewPredicate(grmi.Equal, record.PlantNr), meta.TemplateServiceLst_MainTemplateNr.NewPredicate(grmi.Equal, record.MainTemplateNr)})
if err != nil {
session.Rollback()
return err
}
//批量插入
alldata := make([]model.TemplateServiceLst, 0)
for k, v := range entity.Valst {
one := model.TemplateServiceLst{}
one.PlantNr = entity.PlantNr
one.Pos = k + 1
one.Descr = v.Descr
one.MainTemplateNr = entity.MainTemplateNr
one.MainServiceNr = utils.ValueToInt(v.MainServiceNr, 0)
one.CreateTime = entity.CreateTime
one.LastUser = entity.LastUser
one.LastModify = entity.LastModify
alldata = append(alldata, one)
}
_, err = session.Table("PM_TemplateServiceLst").Insert(&alldata)
if err != nil {
session.Rollback()
return err
}
err = session.Commit()
if err != nil {
return err
}
return nil
}


Loading…
Cancel
Save