Browse Source

#2624

fix bug
tags/v1.22.8.2^2
chenyifan01 3 years ago
parent
commit
2f1e7be34c
3 changed files with 15 additions and 15 deletions
  1. +7
    -3
      models/resource_specification.go
  2. +2
    -2
      routers/admin/resources.go
  3. +6
    -10
      services/cloudbrain/resource/resource_specification.go

+ 7
- 3
models/resource_specification.go View File

@@ -148,6 +148,10 @@ func InsertResourceSpecification(r ResourceSpecification) (int64, error) {
func UpdateResourceSpecificationById(queueId int64, spec ResourceSpecification) (int64, error) { func UpdateResourceSpecificationById(queueId int64, spec ResourceSpecification) (int64, error) {
return x.ID(queueId).Update(&spec) return x.ID(queueId).Update(&spec)
} }
func UpdateSpecUnitPriceById(id int64, unitPrice int) error {
_, err := x.Exec("update resource_specification set unit_price = ? where id = ?", unitPrice, id)
return err
}


func SearchResourceSpecification(opts SearchResourceSpecificationOptions) (int64, []ResourceSpecAndQueue, error) { func SearchResourceSpecification(opts SearchResourceSpecificationOptions) (int64, []ResourceSpecAndQueue, error) {
var cond = builder.NewCond() var cond = builder.NewCond()
@@ -193,9 +197,9 @@ func GetSpecScenes(specId int64) ([]ResourceSceneBriefRes, error) {
return r, nil return r, nil
} }


func ResourceSpecOnShelf(id int64, spec ResourceSpecification) (int64, error) {
spec.Status = SpecOnShelf
return x.Where("id = ? and status in (?,?)", id, SpecOffShelf, SpecNotVerified).Update(&spec)
func ResourceSpecOnShelf(id int64, unitPrice int) error {
_, err := x.Exec("update resource_specification set unit_price = ?,status = ? where id = ?", unitPrice, SpecOnShelf, id)
return err
} }


func ResourceSpecOffShelf(id int64) (int64, error) { func ResourceSpecOffShelf(id int64) (int64, error) {


+ 2
- 2
routers/admin/resources.go View File

@@ -169,9 +169,9 @@ func UpdateResourceSpecification(ctx *context.Context, req models.ResourceSpecif
return return
} }
//only UnitPrice and permitted to change //only UnitPrice and permitted to change
err = resource.UpdateResourceSpecification(ctx.User.ID, id, req)
err = resource.UpdateSpecUnitPrice(ctx.User.ID, id, req.UnitPrice)
case "on-shelf": case "on-shelf":
err = resource.ResourceSpecOnShelf(ctx.User.ID, id, req)
err = resource.ResourceSpecOnShelf(ctx.User.ID, id, req.UnitPrice)
case "off-shelf": case "off-shelf":
err = resource.ResourceSpecOffShelf(ctx.User.ID, id) err = resource.ResourceSpecOffShelf(ctx.User.ID, id)
} }


+ 6
- 10
services/cloudbrain/resource/resource_specification.go View File

@@ -22,7 +22,7 @@ func AddResourceSpecification(doerId int64, req models.ResourceSpecificationReq)
return nil return nil
} }


func UpdateResourceSpecification(doerId int64, specId int64, req models.ResourceSpecificationReq) *response.BizError {
func UpdateSpecUnitPrice(doerId int64, specId int64, unitPrice int) *response.BizError {
oldSpec, err := models.GetResourceSpecification(&models.ResourceSpecification{ID: specId}) oldSpec, err := models.GetResourceSpecification(&models.ResourceSpecification{ID: specId})
if err != nil { if err != nil {
return response.NewBizError(err) return response.NewBizError(err)
@@ -30,14 +30,12 @@ func UpdateResourceSpecification(doerId int64, specId int64, req models.Resource
if oldSpec == nil { if oldSpec == nil {
return response.SPECIFICATION_NOT_EXIST return response.SPECIFICATION_NOT_EXIST
} }
n, err := models.UpdateResourceSpecificationById(specId, models.ResourceSpecification{
UnitPrice: req.UnitPrice,
})
err = models.UpdateSpecUnitPriceById(specId, unitPrice)
if err != nil { if err != nil {
return response.NewBizError(err) return response.NewBizError(err)
} }


if n > 0 {
if oldSpec.UnitPrice != unitPrice {
newSpec, _ := models.GetResourceSpecification(&models.ResourceSpecification{ID: specId}) newSpec, _ := models.GetResourceSpecification(&models.ResourceSpecification{ID: specId})
AddSpecOperateLog(doerId, "edit", newSpec, oldSpec, fmt.Sprintf("修改单价从%d积分到%d积分", oldSpec.UnitPrice, newSpec.UnitPrice)) AddSpecOperateLog(doerId, "edit", newSpec, oldSpec, fmt.Sprintf("修改单价从%d积分到%d积分", oldSpec.UnitPrice, newSpec.UnitPrice))
} }
@@ -134,7 +132,7 @@ func GetResourceSpecificationScenes(specId int64) ([]models.ResourceSceneBriefRe
return r, nil return r, nil
} }


func ResourceSpecOnShelf(doerId int64, id int64, req models.ResourceSpecificationReq) *response.BizError {
func ResourceSpecOnShelf(doerId int64, id int64, unitPrice int) *response.BizError {
spec, err := models.GetResourceSpecification(&models.ResourceSpecification{ID: id}) spec, err := models.GetResourceSpecification(&models.ResourceSpecification{ID: id})
if err != nil { if err != nil {
return response.NewBizError(err) return response.NewBizError(err)
@@ -146,13 +144,11 @@ func ResourceSpecOnShelf(doerId int64, id int64, req models.ResourceSpecificatio
return response.RESOURCE_QUEUE_NOT_AVAILABLE return response.RESOURCE_QUEUE_NOT_AVAILABLE
} }


n, err := models.ResourceSpecOnShelf(id, models.ResourceSpecification{
UnitPrice: req.UnitPrice,
})
err = models.ResourceSpecOnShelf(id, unitPrice)
if err != nil { if err != nil {
return response.NewBizError(err) return response.NewBizError(err)
} }
if n > 0 {
if spec.UnitPrice != unitPrice {
newSpec, _ := models.GetResourceSpecification(&models.ResourceSpecification{ID: id}) newSpec, _ := models.GetResourceSpecification(&models.ResourceSpecification{ID: id})
AddSpecOperateLog(doerId, "on-shelf", newSpec, spec, fmt.Sprintf("修改单价从%d积分到%d积分", spec.UnitPrice, newSpec.UnitPrice)) AddSpecOperateLog(doerId, "on-shelf", newSpec, spec, fmt.Sprintf("修改单价从%d积分到%d积分", spec.UnitPrice, newSpec.UnitPrice))
} }


Loading…
Cancel
Save