Selaa lähdekoodia

认领处理rpc异常返回值

fuwencai 3 vuotta sitten
vanhempi
commit
e506700281

+ 10 - 2
api/medical/internal/logic/distributor/claimdistributorlogic.go

@@ -1,6 +1,7 @@
 package distributor
 
 import (
+	"bp.jydev.jianyu360.cn/ApplicationCenter/medicalField/entity"
 	"bp.jydev.jianyu360.cn/ApplicationCenter/medicalField/rpc/medical/medical"
 	"context"
 
@@ -26,18 +27,25 @@ func NewClaimDistributorLogic(ctx context.Context, svcCtx *svc.ServiceContext) *
 
 // ClaimDistributor 我认领的经销商列表
 func (l *ClaimDistributorLogic) ClaimDistributor(req *types.ClaimDistributorReq) (resp *types.CommonRes, err error) {
-	rs, _ := l.svcCtx.Medical.ClaimedDistributorList(l.ctx, &medical.ClaimedReq{
+	rs, err := l.svcCtx.Medical.ClaimedDistributorList(l.ctx, &medical.ClaimedReq{
 		AppId:    req.AppId,
 		UserId:   int64(req.UserId),
 		Page:     int64(req.Page),
 		PageSize: int64(req.PageSize),
 	})
+
 	var result interface{}
 	result = map[string]interface{}{
 		"list":  rs.Data.List,
 		"total": rs.Data.Total,
 	}
-
+	if err != nil || rs == nil {
+		return &types.CommonRes{
+			Error_msg:  "查询失败",
+			Error_code: entity.ERRORCODE,
+			Data:       result,
+		}, nil
+	}
 	return &types.CommonRes{
 		Error_msg:  rs.ErrorMsg,
 		Error_code: int(rs.ErrorCode),

+ 9 - 2
api/medical/internal/logic/institution/claiminstitutionlogic.go

@@ -3,6 +3,7 @@ package institution
 import (
 	"bp.jydev.jianyu360.cn/ApplicationCenter/medicalField/api/medical/internal/svc"
 	"bp.jydev.jianyu360.cn/ApplicationCenter/medicalField/api/medical/internal/types"
+	"bp.jydev.jianyu360.cn/ApplicationCenter/medicalField/entity"
 	"bp.jydev.jianyu360.cn/ApplicationCenter/medicalField/rpc/medical/medical"
 	"context"
 	"github.com/zeromicro/go-zero/core/logx"
@@ -24,7 +25,7 @@ func NewClaimInstitutionLogic(ctx context.Context, svcCtx *svc.ServiceContext) *
 
 // ClaimInstitution 我认领的医疗机构列表
 func (l *ClaimInstitutionLogic) ClaimInstitution(req *types.ClaimInstitutionReq) (resp *types.CommonRes, err error) {
-	rs, _ := l.svcCtx.Medical.ClaimedInstitutionList(l.ctx, &medical.ClaimedReq{
+	rs, err := l.svcCtx.Medical.ClaimedInstitutionList(l.ctx, &medical.ClaimedReq{
 		AppId:    req.AppId,
 		UserId:   int64(req.UserId),
 		Page:     int64(req.Page),
@@ -36,7 +37,13 @@ func (l *ClaimInstitutionLogic) ClaimInstitution(req *types.ClaimInstitutionReq)
 		"list":  rs.Data.List,
 		"total": rs.Data.Total,
 	}
-
+	if err != nil || rs == nil {
+		return &types.CommonRes{
+			Error_msg:  "查询失败",
+			Error_code: entity.ERRORCODE,
+			Data:       result,
+		}, nil
+	}
 	return &types.CommonRes{
 		Error_msg:  rs.ErrorMsg,
 		Error_code: int(rs.ErrorCode),

+ 13 - 6
api/medical/internal/logic/public/claimlogic.go

@@ -2,11 +2,11 @@ package public
 
 import (
 	"app.yhyue.com/moapp/jybase/encrypt"
-	"bp.jydev.jianyu360.cn/ApplicationCenter/medicalField/rpc/medical/medical"
-	"context"
-
 	"bp.jydev.jianyu360.cn/ApplicationCenter/medicalField/api/medical/internal/svc"
 	"bp.jydev.jianyu360.cn/ApplicationCenter/medicalField/api/medical/internal/types"
+	"bp.jydev.jianyu360.cn/ApplicationCenter/medicalField/entity"
+	"bp.jydev.jianyu360.cn/ApplicationCenter/medicalField/rpc/medical/medical"
+	"context"
 
 	"github.com/zeromicro/go-zero/core/logx"
 )
@@ -27,18 +27,25 @@ func NewClaimLogic(ctx context.Context, svcCtx *svc.ServiceContext) *ClaimLogic
 
 // Claim 认领
 func (l *ClaimLogic) Claim(req *types.ClaimReq) (resp *types.ClaimResp, err error) {
-
-	rs, _ := l.svcCtx.Medical.Claim(l.ctx, &medical.ClaimReq{
+	rs, err := l.svcCtx.Medical.Claim(l.ctx, &medical.ClaimReq{
 		UserId: int64(req.UserId),
 		EntId:  encrypt.SE.Decode4Hex(req.EntId),
 		Type:   int64(req.Type),
 		AppId:  req.AppId,
 	})
-
+	if err != nil || rs == nil {
+		return &types.ClaimResp{
+			Error_msg:   "操作失败",
+			Error_code:  entity.ERRORCODE,
+			ResourceNum: 0,
+			ResourceIds: 0,
+		}, nil
+	}
 	return &types.ClaimResp{
 		Error_msg:   rs.ErrorMsg,
 		Error_code:  int(rs.ErrorCode),
 		ResourceNum: int(rs.ResourceNum),
 		ResourceIds: int(rs.ResourceIds),
 	}, nil
+
 }

+ 10 - 2
api/medical/internal/logic/public/unclaimedlogic.go

@@ -3,6 +3,7 @@ package public
 import (
 	"app.yhyue.com/moapp/jybase/common"
 	"app.yhyue.com/moapp/jybase/encrypt"
+	"bp.jydev.jianyu360.cn/ApplicationCenter/medicalField/entity"
 	"bp.jydev.jianyu360.cn/ApplicationCenter/medicalField/rpc/medical/medical"
 	"context"
 
@@ -28,11 +29,18 @@ func NewUnclaimedLogic(ctx context.Context, svcCtx *svc.ServiceContext) *Unclaim
 
 // Unclaimed 取消认领
 func (l *UnclaimedLogic) Unclaimed(req *types.UnclaimedReq) (resp *types.ClaimResp, err error) {
-	rs, _ := l.svcCtx.Medical.UnClaimed(l.ctx, &medical.UnclaimedReq{
+	rs, err := l.svcCtx.Medical.UnClaimed(l.ctx, &medical.UnclaimedReq{
 		UserId: int64(req.UserId),
 		Id:     common.Int64All(encrypt.SE.Decode4Hex(req.Id)),
 	})
-
+	if err != nil || rs == nil {
+		return &types.ClaimResp{
+			Error_msg:   "操作失败",
+			Error_code:  entity.ERRORCODE,
+			ResourceNum: 0,
+			ResourceIds: 0,
+		}, nil
+	}
 	return &types.ClaimResp{
 		Error_msg:   rs.ErrorMsg,
 		Error_code:  int(rs.ErrorCode),

+ 8 - 13
rpc/medical/internal/logic/claimlogic.go

@@ -7,7 +7,6 @@ import (
 	"bp.jydev.jianyu360.cn/ApplicationCenter/medicalField/rpc/medical/internal/svc"
 	"bp.jydev.jianyu360.cn/ApplicationCenter/medicalField/rpc/medical/medical"
 	"context"
-	"github.com/mitchellh/mapstructure"
 	"github.com/zeromicro/go-zero/core/logx"
 )
 
@@ -27,25 +26,21 @@ func NewClaimLogic(ctx context.Context, svcCtx *svc.ServiceContext) *ClaimLogic
 
 // Claim 认领(经销商/医疗机构)
 func (l *ClaimLogic) Claim(in *medical.ClaimReq) (*medical.ClaimResp, error) {
-	tmp := struct {
-		CompanyName    string `mapstructure:"company_name,omitempty"`
-		EstablishDate  string `mapstructure:"establish_date,omitempty"`
-		CompanyAddress string `mapstructure:"company_address,omitempty"`
-		CompanyPhone   string `mapstructure:"company_phone,omitempty"`
-		Capital        string `mapstructure:"capital,omitempty"`
-	}{}
 	// 查询基本信息
 	baseInfo := l.svcCtx.EntClaimSrv.GetInstitution(in.EntId)
-	err := mapstructure.Decode(*baseInfo, &tmp)
-	if err != nil {
-		return nil, err
+	if baseInfo == nil || len(*baseInfo) == 0 {
+		return &medical.ClaimResp{
+			ErrorMsg:    "无效的企业id",
+			ErrorCode:   entity.ERRORCODE,
+			ResourceNum: 0,
+			ResourceIds: 0,
+		}, nil
 	}
-
 	rs := l.svcCtx.EntClaimSrv.Claim(&entity.EntClaim{
 		AppId:      in.AppId,
 		UserId:     int(in.UserId),
 		EntId:      in.EntId,
-		EntName:    tmp.CompanyName,
+		EntName:    common.ObjToString((*baseInfo)["company_name"]),
 		Status:     entity.StatusClaimed,
 		Type:       int(in.Type),
 		CreateTime: date.NowFormat(date.Date_Full_Layout),