diff --git a/api/requests/area.go b/api/requests/area.go index 3502fc8..d96b9b7 100644 --- a/api/requests/area.go +++ b/api/requests/area.go @@ -16,6 +16,7 @@ type GetAreaList struct { // AddArea 新增地区 type AddArea struct { + AreaId string `json:"area_id" form:"area_id" label:"名称" validate:"required"` AreaName string `json:"area_name" form:"area_name" label:"名称" validate:"required"` ParentId string `json:"parent_id" form:"parent_id" label:"上级编号" validate:"required"` AreaType *int `json:"area_type" form:"area_type" label:"类型(1:国家,2:省,3:市,4:区县)" validate:"required"` @@ -24,6 +25,7 @@ type AddArea struct { // PutArea 修改地区 type PutArea struct { + AreaId string `json:"area_id" form:"area_id" label:"名称" validate:"required"` AreaName string `json:"area_name" form:"area_name" label:"名称" validate:"required"` Zip string `json:"zip" form:"zip" label:"邮编"` } diff --git a/api/service/area.go b/api/service/area.go index bb58daf..f7f5407 100644 --- a/api/service/area.go +++ b/api/service/area.go @@ -53,8 +53,15 @@ func (r *AreaService) AddArea(req requests.AddArea) (bool, string, error) { return false, "", errors.New("新增失败") } + areaId, err := strconv.ParseInt(req.AreaId, 10, 64) + if err != nil { + tx.Rollback() + return false, "", errors.New("新增失败") + } + // 新增优惠卷表 area := &model.Area{ + AreaId: areaId, AreaName: req.AreaName, ParentId: parentId, Zip: req.Zip, @@ -67,10 +74,8 @@ func (r *AreaService) AddArea(req requests.AddArea) (bool, string, error) { return false, "", errors.New(err.Error()) } - areaId := fmt.Sprintf("%d", area.AreaId) - tx.Commit() - return true, areaId, nil + return true, fmt.Sprintf("%d", area.AreaId), nil } // PutArea 修改地区 @@ -102,6 +107,16 @@ func (r *AreaService) PutArea(areaId int, req requests.PutArea) (bool, error) { } } + if req.AreaId != "" { + areaId, err := strconv.ParseInt(req.AreaId, 10, 64) + if err != nil { + tx.Rollback() + return false, errors.New("修改失败") + } + + areaData["area_id"] = areaId + } + if len(areaData) > 0 { err = areaDao.EditAreaById(tx, areaId, areaData) if err != nil || area == nil {