Parcourir la source

更新im.proto,更新直传参数错误处理。

jyq il y a 4 ans
Parent
commit
dea28809a5

+ 2 - 0
api/grpc/base.go

@@ -895,3 +895,5 @@ func (a Api) UnBindHrSensor(ctx context.Context, r *pb.StandardRequest) (*pb.Sta
 	rst := a.toWebFunc(rs)
 	return rst, nil
 }
+
+// ----------------------- 评分管理 ---------------------------------------------

+ 112 - 106
api/grpc/base/base.pb.go

@@ -1252,7 +1252,7 @@ var file_base_proto_rawDesc = []byte{
 	0x09, 0x57, 0x65, 0x62, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x07, 0x0a, 0x03, 0x42, 0x61,
 	0x6e, 0x10, 0x00, 0x12, 0x06, 0x0a, 0x02, 0x4f, 0x6e, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x44,
 	0x65, 0x6c, 0x65, 0x74, 0x65, 0x10, 0x09, 0x12, 0x07, 0x0a, 0x03, 0x41, 0x6c, 0x6c, 0x10, 0x63,
-	0x32, 0xa2, 0x34, 0x0a, 0x03, 0x41, 0x70, 0x69, 0x12, 0x33, 0x0a, 0x06, 0x53, 0x69, 0x67, 0x6e,
+	0x32, 0xdf, 0x34, 0x0a, 0x03, 0x41, 0x70, 0x69, 0x12, 0x33, 0x0a, 0x06, 0x53, 0x69, 0x67, 0x6e,
 	0x55, 0x70, 0x12, 0x13, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x53, 0x69, 0x67, 0x6e, 0x55, 0x70,
 	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x12, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x44,
 	0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x22, 0x00, 0x12, 0x32, 0x0a,
@@ -1670,8 +1670,12 @@ var file_base_proto_rawDesc = []byte{
 	0x72, 0x53, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x12, 0x15, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x53,
 	0x74, 0x61, 0x6e, 0x64, 0x61, 0x72, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x13,
 	0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x53, 0x74, 0x61, 0x6e, 0x64, 0x61, 0x72, 0x64, 0x52, 0x65,
-	0x70, 0x6c, 0x79, 0x22, 0x00, 0x42, 0x08, 0x5a, 0x06, 0x2e, 0x3b, 0x62, 0x61, 0x73, 0x65, 0x62,
-	0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
+	0x70, 0x6c, 0x79, 0x22, 0x00, 0x12, 0x3b, 0x0a, 0x0b, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x51,
+	0x75, 0x65, 0x72, 0x79, 0x12, 0x15, 0x2e, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x53, 0x74, 0x61, 0x6e,
+	0x64, 0x61, 0x72, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x13, 0x2e, 0x62, 0x61,
+	0x73, 0x65, 0x2e, 0x53, 0x74, 0x61, 0x6e, 0x64, 0x61, 0x72, 0x64, 0x52, 0x65, 0x70, 0x6c, 0x79,
+	0x22, 0x00, 0x42, 0x08, 0x5a, 0x06, 0x2e, 0x3b, 0x62, 0x61, 0x73, 0x65, 0x62, 0x06, 0x70, 0x72,
+	0x6f, 0x74, 0x6f, 0x33,
 }
 
 var (
@@ -1816,109 +1820,111 @@ var file_base_proto_depIdxs = []int32{
 	4,   // 103: base.Api.PKGroupChg:input_type -> base.StandardRequest
 	4,   // 104: base.Api.BindHrSensor:input_type -> base.StandardRequest
 	4,   // 105: base.Api.UnBindHrSensor:input_type -> base.StandardRequest
-	3,   // 106: base.Api.SignUp:output_type -> base.DefaultReply
-	7,   // 107: base.Api.SignIn:output_type -> base.SignInReply
-	3,   // 108: base.Api.SignOut:output_type -> base.DefaultReply
-	10,  // 109: base.Api.GenVerifyImage:output_type -> base.GenVerifyImageReply
-	5,   // 110: base.Api.SelectHrSensors:output_type -> base.StandardReply
-	5,   // 111: base.Api.AcrossUserSimpleQuery:output_type -> base.StandardReply
-	5,   // 112: base.Api.VipUserSimpleQuery:output_type -> base.StandardReply
-	5,   // 113: base.Api.TempVipUserSimpleQuery:output_type -> base.StandardReply
-	5,   // 114: base.Api.ShopSimpleQuery:output_type -> base.StandardReply
-	5,   // 115: base.Api.ManageableSimpleQuery:output_type -> base.StandardReply
-	5,   // 116: base.Api.ClassSimpleQuery:output_type -> base.StandardReply
-	5,   // 117: base.Api.ScreenSimpleQuery:output_type -> base.StandardReply
-	13,  // 118: base.Api.ManageableShopList:output_type -> base.ShopListReply
-	16,  // 119: base.Api.GetShopNavi:output_type -> base.GetShopNaviReply
-	5,   // 120: base.Api.ShopGroupQuery:output_type -> base.StandardReply
-	5,   // 121: base.Api.ShopGroupAdd:output_type -> base.StandardReply
-	5,   // 122: base.Api.ShopGroupEdit:output_type -> base.StandardReply
-	5,   // 123: base.Api.ShopGroupStatusEdit:output_type -> base.StandardReply
-	5,   // 124: base.Api.ShopGroupDetailsQuery:output_type -> base.StandardReply
-	5,   // 125: base.Api.ShopGroupDetailsAdd:output_type -> base.StandardReply
-	5,   // 126: base.Api.ShopVenueQuery:output_type -> base.StandardReply
-	5,   // 127: base.Api.ShopVenueAdd:output_type -> base.StandardReply
-	5,   // 128: base.Api.ShopVenueEdit:output_type -> base.StandardReply
-	5,   // 129: base.Api.ShopVenueStatusEdit:output_type -> base.StandardReply
-	5,   // 130: base.Api.ShopVenueEquipQuery:output_type -> base.StandardReply
-	5,   // 131: base.Api.ShopVenueEquipAdd:output_type -> base.StandardReply
-	5,   // 132: base.Api.ShopVenueEquipEdit:output_type -> base.StandardReply
-	5,   // 133: base.Api.ShopVenueEquipStatusEdit:output_type -> base.StandardReply
-	5,   // 134: base.Api.ShopVenueEquipStatusDel:output_type -> base.StandardReply
-	5,   // 135: base.Api.ShopManagerQuery:output_type -> base.StandardReply
-	5,   // 136: base.Api.ShopManagerAdd:output_type -> base.StandardReply
-	5,   // 137: base.Api.ShopManagerEdit:output_type -> base.StandardReply
-	5,   // 138: base.Api.ShopManagerStatusEdit:output_type -> base.StandardReply
-	5,   // 139: base.Api.ShopConfigQuery:output_type -> base.StandardReply
-	5,   // 140: base.Api.ShopConfigEdit:output_type -> base.StandardReply
-	5,   // 141: base.Api.ShopVipUserQuery:output_type -> base.StandardReply
-	5,   // 142: base.Api.ShopVipUserAdd:output_type -> base.StandardReply
-	5,   // 143: base.Api.ShopVipUserEdit:output_type -> base.StandardReply
-	5,   // 144: base.Api.ShopVipUserStatusEdit:output_type -> base.StandardReply
-	5,   // 145: base.Api.AcrossVipUserQuery:output_type -> base.StandardReply
-	5,   // 146: base.Api.AcrossVipUserAdd:output_type -> base.StandardReply
-	5,   // 147: base.Api.AcrossVipUserDel:output_type -> base.StandardReply
-	5,   // 148: base.Api.VipPhoneQuery:output_type -> base.StandardReply
-	5,   // 149: base.Api.VipMainPhoneCheck:output_type -> base.StandardReply
-	5,   // 150: base.Api.VipOtherPhoneAdd:output_type -> base.StandardReply
-	5,   // 151: base.Api.VipOtherPhoneEdit:output_type -> base.StandardReply
-	5,   // 152: base.Api.VipOtherPhoneStatusEdit:output_type -> base.StandardReply
-	5,   // 153: base.Api.TempVipUserQuery:output_type -> base.StandardReply
-	5,   // 154: base.Api.TempVipUserAdd:output_type -> base.StandardReply
-	5,   // 155: base.Api.TempVipUserEdit:output_type -> base.StandardReply
-	5,   // 156: base.Api.TempVipUserStatusEdit:output_type -> base.StandardReply
-	5,   // 157: base.Api.VipHourEdit:output_type -> base.StandardReply
-	5,   // 158: base.Api.VipConsumeListQuery:output_type -> base.StandardReply
-	5,   // 159: base.Api.VipConsumeDetailQuery:output_type -> base.StandardReply
-	5,   // 160: base.Api.VipClassRelationEdit:output_type -> base.StandardReply
-	5,   // 161: base.Api.VipHourChgQuery:output_type -> base.StandardReply
-	18,  // 162: base.Api.GetOverlayImgQiNiuToken:output_type -> base.QiNiuTokenReply
-	18,  // 163: base.Api.GetSimpleQiNiuToken:output_type -> base.QiNiuTokenReply
-	5,   // 164: base.Api.ClassQuery:output_type -> base.StandardReply
-	5,   // 165: base.Api.ClassAdd:output_type -> base.StandardReply
-	5,   // 166: base.Api.ClassEdit:output_type -> base.StandardReply
-	5,   // 167: base.Api.ClassStatusEdit:output_type -> base.StandardReply
-	5,   // 168: base.Api.ClassColorEdit:output_type -> base.StandardReply
-	5,   // 169: base.Api.ClassWxVisibleEdit:output_type -> base.StandardReply
-	5,   // 170: base.Api.ClassVipEdit:output_type -> base.StandardReply
-	5,   // 171: base.Api.SttPlanBasicQuery:output_type -> base.StandardReply
-	5,   // 172: base.Api.SttPlanBasicAdd:output_type -> base.StandardReply
-	5,   // 173: base.Api.SttPlanBasicEdit:output_type -> base.StandardReply
-	5,   // 174: base.Api.SttPlanBasicShopEdit:output_type -> base.StandardReply
-	5,   // 175: base.Api.SttPlanBasicStatusEdit:output_type -> base.StandardReply
-	5,   // 176: base.Api.SttPlanBasicPublish:output_type -> base.StandardReply
-	5,   // 177: base.Api.SttPlanPreview:output_type -> base.StandardReply
-	5,   // 178: base.Api.SttPlanCopy:output_type -> base.StandardReply
-	5,   // 179: base.Api.SttPlanDetailQuery:output_type -> base.StandardReply
-	5,   // 180: base.Api.SttPlanDetailBatchSave:output_type -> base.StandardReply
-	5,   // 181: base.Api.STTBasicQuery:output_type -> base.StandardReply
-	5,   // 182: base.Api.STTBasicAdd:output_type -> base.StandardReply
-	5,   // 183: base.Api.STTBasicEdit:output_type -> base.StandardReply
-	5,   // 184: base.Api.STTBasicStatusEdit:output_type -> base.StandardReply
-	5,   // 185: base.Api.STTBasicPreview:output_type -> base.StandardReply
-	5,   // 186: base.Api.STTBasicCopy:output_type -> base.StandardReply
-	5,   // 187: base.Api.STTBasicOfflineEdit:output_type -> base.StandardReply
-	5,   // 188: base.Api.STTDetailListQuery:output_type -> base.StandardReply
-	5,   // 189: base.Api.STTBasicDetailBatchSave:output_type -> base.StandardReply
-	5,   // 190: base.Api.STTDetailAllowDelCheck:output_type -> base.StandardReply
-	5,   // 191: base.Api.CourseDetailQuery:output_type -> base.StandardReply
-	5,   // 192: base.Api.OrderListQuery:output_type -> base.StandardReply
-	5,   // 193: base.Api.OrderAddByManager:output_type -> base.StandardReply
-	5,   // 194: base.Api.OrderCancelByManager:output_type -> base.StandardReply
-	5,   // 195: base.Api.OrderStatistics:output_type -> base.StandardReply
-	5,   // 196: base.Api.ClassOrderQuery:output_type -> base.StandardReply
-	5,   // 197: base.Api.VipUserOrderQuery:output_type -> base.StandardReply
-	5,   // 198: base.Api.HrSensorsPublicQuery:output_type -> base.StandardReply
-	5,   // 199: base.Api.HrSensorsPvtQuery:output_type -> base.StandardReply
-	5,   // 200: base.Api.AddHrSensors:output_type -> base.StandardReply
-	5,   // 201: base.Api.AddPvtHrSensors:output_type -> base.StandardReply
-	5,   // 202: base.Api.EditHrSensors:output_type -> base.StandardReply
-	5,   // 203: base.Api.HrSensorsDel:output_type -> base.StandardReply
-	5,   // 204: base.Api.PKGroupChg:output_type -> base.StandardReply
-	5,   // 205: base.Api.BindHrSensor:output_type -> base.StandardReply
-	5,   // 206: base.Api.UnBindHrSensor:output_type -> base.StandardReply
-	106, // [106:207] is the sub-list for method output_type
-	5,   // [5:106] is the sub-list for method input_type
+	4,   // 106: base.Api.ActionQuery:input_type -> base.StandardRequest
+	3,   // 107: base.Api.SignUp:output_type -> base.DefaultReply
+	7,   // 108: base.Api.SignIn:output_type -> base.SignInReply
+	3,   // 109: base.Api.SignOut:output_type -> base.DefaultReply
+	10,  // 110: base.Api.GenVerifyImage:output_type -> base.GenVerifyImageReply
+	5,   // 111: base.Api.SelectHrSensors:output_type -> base.StandardReply
+	5,   // 112: base.Api.AcrossUserSimpleQuery:output_type -> base.StandardReply
+	5,   // 113: base.Api.VipUserSimpleQuery:output_type -> base.StandardReply
+	5,   // 114: base.Api.TempVipUserSimpleQuery:output_type -> base.StandardReply
+	5,   // 115: base.Api.ShopSimpleQuery:output_type -> base.StandardReply
+	5,   // 116: base.Api.ManageableSimpleQuery:output_type -> base.StandardReply
+	5,   // 117: base.Api.ClassSimpleQuery:output_type -> base.StandardReply
+	5,   // 118: base.Api.ScreenSimpleQuery:output_type -> base.StandardReply
+	13,  // 119: base.Api.ManageableShopList:output_type -> base.ShopListReply
+	16,  // 120: base.Api.GetShopNavi:output_type -> base.GetShopNaviReply
+	5,   // 121: base.Api.ShopGroupQuery:output_type -> base.StandardReply
+	5,   // 122: base.Api.ShopGroupAdd:output_type -> base.StandardReply
+	5,   // 123: base.Api.ShopGroupEdit:output_type -> base.StandardReply
+	5,   // 124: base.Api.ShopGroupStatusEdit:output_type -> base.StandardReply
+	5,   // 125: base.Api.ShopGroupDetailsQuery:output_type -> base.StandardReply
+	5,   // 126: base.Api.ShopGroupDetailsAdd:output_type -> base.StandardReply
+	5,   // 127: base.Api.ShopVenueQuery:output_type -> base.StandardReply
+	5,   // 128: base.Api.ShopVenueAdd:output_type -> base.StandardReply
+	5,   // 129: base.Api.ShopVenueEdit:output_type -> base.StandardReply
+	5,   // 130: base.Api.ShopVenueStatusEdit:output_type -> base.StandardReply
+	5,   // 131: base.Api.ShopVenueEquipQuery:output_type -> base.StandardReply
+	5,   // 132: base.Api.ShopVenueEquipAdd:output_type -> base.StandardReply
+	5,   // 133: base.Api.ShopVenueEquipEdit:output_type -> base.StandardReply
+	5,   // 134: base.Api.ShopVenueEquipStatusEdit:output_type -> base.StandardReply
+	5,   // 135: base.Api.ShopVenueEquipStatusDel:output_type -> base.StandardReply
+	5,   // 136: base.Api.ShopManagerQuery:output_type -> base.StandardReply
+	5,   // 137: base.Api.ShopManagerAdd:output_type -> base.StandardReply
+	5,   // 138: base.Api.ShopManagerEdit:output_type -> base.StandardReply
+	5,   // 139: base.Api.ShopManagerStatusEdit:output_type -> base.StandardReply
+	5,   // 140: base.Api.ShopConfigQuery:output_type -> base.StandardReply
+	5,   // 141: base.Api.ShopConfigEdit:output_type -> base.StandardReply
+	5,   // 142: base.Api.ShopVipUserQuery:output_type -> base.StandardReply
+	5,   // 143: base.Api.ShopVipUserAdd:output_type -> base.StandardReply
+	5,   // 144: base.Api.ShopVipUserEdit:output_type -> base.StandardReply
+	5,   // 145: base.Api.ShopVipUserStatusEdit:output_type -> base.StandardReply
+	5,   // 146: base.Api.AcrossVipUserQuery:output_type -> base.StandardReply
+	5,   // 147: base.Api.AcrossVipUserAdd:output_type -> base.StandardReply
+	5,   // 148: base.Api.AcrossVipUserDel:output_type -> base.StandardReply
+	5,   // 149: base.Api.VipPhoneQuery:output_type -> base.StandardReply
+	5,   // 150: base.Api.VipMainPhoneCheck:output_type -> base.StandardReply
+	5,   // 151: base.Api.VipOtherPhoneAdd:output_type -> base.StandardReply
+	5,   // 152: base.Api.VipOtherPhoneEdit:output_type -> base.StandardReply
+	5,   // 153: base.Api.VipOtherPhoneStatusEdit:output_type -> base.StandardReply
+	5,   // 154: base.Api.TempVipUserQuery:output_type -> base.StandardReply
+	5,   // 155: base.Api.TempVipUserAdd:output_type -> base.StandardReply
+	5,   // 156: base.Api.TempVipUserEdit:output_type -> base.StandardReply
+	5,   // 157: base.Api.TempVipUserStatusEdit:output_type -> base.StandardReply
+	5,   // 158: base.Api.VipHourEdit:output_type -> base.StandardReply
+	5,   // 159: base.Api.VipConsumeListQuery:output_type -> base.StandardReply
+	5,   // 160: base.Api.VipConsumeDetailQuery:output_type -> base.StandardReply
+	5,   // 161: base.Api.VipClassRelationEdit:output_type -> base.StandardReply
+	5,   // 162: base.Api.VipHourChgQuery:output_type -> base.StandardReply
+	18,  // 163: base.Api.GetOverlayImgQiNiuToken:output_type -> base.QiNiuTokenReply
+	18,  // 164: base.Api.GetSimpleQiNiuToken:output_type -> base.QiNiuTokenReply
+	5,   // 165: base.Api.ClassQuery:output_type -> base.StandardReply
+	5,   // 166: base.Api.ClassAdd:output_type -> base.StandardReply
+	5,   // 167: base.Api.ClassEdit:output_type -> base.StandardReply
+	5,   // 168: base.Api.ClassStatusEdit:output_type -> base.StandardReply
+	5,   // 169: base.Api.ClassColorEdit:output_type -> base.StandardReply
+	5,   // 170: base.Api.ClassWxVisibleEdit:output_type -> base.StandardReply
+	5,   // 171: base.Api.ClassVipEdit:output_type -> base.StandardReply
+	5,   // 172: base.Api.SttPlanBasicQuery:output_type -> base.StandardReply
+	5,   // 173: base.Api.SttPlanBasicAdd:output_type -> base.StandardReply
+	5,   // 174: base.Api.SttPlanBasicEdit:output_type -> base.StandardReply
+	5,   // 175: base.Api.SttPlanBasicShopEdit:output_type -> base.StandardReply
+	5,   // 176: base.Api.SttPlanBasicStatusEdit:output_type -> base.StandardReply
+	5,   // 177: base.Api.SttPlanBasicPublish:output_type -> base.StandardReply
+	5,   // 178: base.Api.SttPlanPreview:output_type -> base.StandardReply
+	5,   // 179: base.Api.SttPlanCopy:output_type -> base.StandardReply
+	5,   // 180: base.Api.SttPlanDetailQuery:output_type -> base.StandardReply
+	5,   // 181: base.Api.SttPlanDetailBatchSave:output_type -> base.StandardReply
+	5,   // 182: base.Api.STTBasicQuery:output_type -> base.StandardReply
+	5,   // 183: base.Api.STTBasicAdd:output_type -> base.StandardReply
+	5,   // 184: base.Api.STTBasicEdit:output_type -> base.StandardReply
+	5,   // 185: base.Api.STTBasicStatusEdit:output_type -> base.StandardReply
+	5,   // 186: base.Api.STTBasicPreview:output_type -> base.StandardReply
+	5,   // 187: base.Api.STTBasicCopy:output_type -> base.StandardReply
+	5,   // 188: base.Api.STTBasicOfflineEdit:output_type -> base.StandardReply
+	5,   // 189: base.Api.STTDetailListQuery:output_type -> base.StandardReply
+	5,   // 190: base.Api.STTBasicDetailBatchSave:output_type -> base.StandardReply
+	5,   // 191: base.Api.STTDetailAllowDelCheck:output_type -> base.StandardReply
+	5,   // 192: base.Api.CourseDetailQuery:output_type -> base.StandardReply
+	5,   // 193: base.Api.OrderListQuery:output_type -> base.StandardReply
+	5,   // 194: base.Api.OrderAddByManager:output_type -> base.StandardReply
+	5,   // 195: base.Api.OrderCancelByManager:output_type -> base.StandardReply
+	5,   // 196: base.Api.OrderStatistics:output_type -> base.StandardReply
+	5,   // 197: base.Api.ClassOrderQuery:output_type -> base.StandardReply
+	5,   // 198: base.Api.VipUserOrderQuery:output_type -> base.StandardReply
+	5,   // 199: base.Api.HrSensorsPublicQuery:output_type -> base.StandardReply
+	5,   // 200: base.Api.HrSensorsPvtQuery:output_type -> base.StandardReply
+	5,   // 201: base.Api.AddHrSensors:output_type -> base.StandardReply
+	5,   // 202: base.Api.AddPvtHrSensors:output_type -> base.StandardReply
+	5,   // 203: base.Api.EditHrSensors:output_type -> base.StandardReply
+	5,   // 204: base.Api.HrSensorsDel:output_type -> base.StandardReply
+	5,   // 205: base.Api.PKGroupChg:output_type -> base.StandardReply
+	5,   // 206: base.Api.BindHrSensor:output_type -> base.StandardReply
+	5,   // 207: base.Api.UnBindHrSensor:output_type -> base.StandardReply
+	5,   // 208: base.Api.ActionQuery:output_type -> base.StandardReply
+	107, // [107:209] is the sub-list for method output_type
+	5,   // [5:107] is the sub-list for method input_type
 	5,   // [5:5] is the sub-list for extension type_name
 	5,   // [5:5] is the sub-list for extension extendee
 	0,   // [0:5] is the sub-list for field type_name

+ 38 - 0
api/grpc/base/base_grpc.pb.go

@@ -127,6 +127,8 @@ type ApiClient interface {
 	PKGroupChg(ctx context.Context, in *StandardRequest, opts ...grpc.CallOption) (*StandardReply, error)
 	BindHrSensor(ctx context.Context, in *StandardRequest, opts ...grpc.CallOption) (*StandardReply, error)
 	UnBindHrSensor(ctx context.Context, in *StandardRequest, opts ...grpc.CallOption) (*StandardReply, error)
+	// 评分管理
+	ActionQuery(ctx context.Context, in *StandardRequest, opts ...grpc.CallOption) (*StandardReply, error)
 }
 
 type apiClient struct {
@@ -1046,6 +1048,15 @@ func (c *apiClient) UnBindHrSensor(ctx context.Context, in *StandardRequest, opt
 	return out, nil
 }
 
+func (c *apiClient) ActionQuery(ctx context.Context, in *StandardRequest, opts ...grpc.CallOption) (*StandardReply, error) {
+	out := new(StandardReply)
+	err := c.cc.Invoke(ctx, "/base.Api/ActionQuery", in, out, opts...)
+	if err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
 // ApiServer is the server API for Api service.
 // All implementations must embed UnimplementedApiServer
 // for forward compatibility
@@ -1159,6 +1170,8 @@ type ApiServer interface {
 	PKGroupChg(context.Context, *StandardRequest) (*StandardReply, error)
 	BindHrSensor(context.Context, *StandardRequest) (*StandardReply, error)
 	UnBindHrSensor(context.Context, *StandardRequest) (*StandardReply, error)
+	// 评分管理
+	ActionQuery(context.Context, *StandardRequest) (*StandardReply, error)
 	mustEmbedUnimplementedApiServer()
 }
 
@@ -1469,6 +1482,9 @@ func (UnimplementedApiServer) BindHrSensor(context.Context, *StandardRequest) (*
 func (UnimplementedApiServer) UnBindHrSensor(context.Context, *StandardRequest) (*StandardReply, error) {
 	return nil, status.Errorf(codes.Unimplemented, "method UnBindHrSensor not implemented")
 }
+func (UnimplementedApiServer) ActionQuery(context.Context, *StandardRequest) (*StandardReply, error) {
+	return nil, status.Errorf(codes.Unimplemented, "method ActionQuery not implemented")
+}
 func (UnimplementedApiServer) mustEmbedUnimplementedApiServer() {}
 
 // UnsafeApiServer may be embedded to opt out of forward compatibility for this service.
@@ -3300,6 +3316,24 @@ func _Api_UnBindHrSensor_Handler(srv interface{}, ctx context.Context, dec func(
 	return interceptor(ctx, in, info, handler)
 }
 
+func _Api_ActionQuery_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+	in := new(StandardRequest)
+	if err := dec(in); err != nil {
+		return nil, err
+	}
+	if interceptor == nil {
+		return srv.(ApiServer).ActionQuery(ctx, in)
+	}
+	info := &grpc.UnaryServerInfo{
+		Server:     srv,
+		FullMethod: "/base.Api/ActionQuery",
+	}
+	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+		return srv.(ApiServer).ActionQuery(ctx, req.(*StandardRequest))
+	}
+	return interceptor(ctx, in, info, handler)
+}
+
 // Api_ServiceDesc is the grpc.ServiceDesc for Api service.
 // It's only intended for direct use with grpc.RegisterService,
 // and not to be introspected or modified (even as a copy)
@@ -3711,6 +3745,10 @@ var Api_ServiceDesc = grpc.ServiceDesc{
 			MethodName: "UnBindHrSensor",
 			Handler:    _Api_UnBindHrSensor_Handler,
 		},
+		{
+			MethodName: "ActionQuery",
+			Handler:    _Api_ActionQuery_Handler,
+		},
 	},
 	Streams:  []grpc.StreamDesc{},
 	Metadata: "base.proto",

+ 15 - 1
main.go

@@ -27,7 +27,21 @@ func main() {
 	if err != nil {
 		panic(err)
 	}
-
+	// MiddleWare的写法
+	//app.Use(func(context *application.Context) {
+	//	defer func() {
+	//		if p := recover(); p != nil {
+	//			err := p.(error)
+	//			s, ok := status.FromError(err)
+	//			if !ok {
+	//				println(s) // not status
+	//			}
+	//			s.Code()
+	//			//context.Set()   // 在context中增加key value
+	//		}
+	//	}()
+	//	context.Next()
+	//})
 	//基础库初始化
 	base.Init()
 

+ 103 - 5
proto/client/bsw/im/im.proto

@@ -4,7 +4,6 @@ option go_package =".;im";
 
 package im;
 
-
 enum ErrorCode{
   OK = 0;
   PARAM = 4001;
@@ -17,6 +16,9 @@ enum ErrorCode{
 // metadata: 综合管理系统前端调用需要字段 token 用作登录验证;子系统调用需要字段 sys_token 用作系统验证
 service Api {
   rpc GenVerifyImage(GenVerifyImageRequest)returns(GenVerifyImageReply){}
+  rpc GenPhoneVerifyCode(GenPhoneVerifyCodeRequest)returns(DefaultReply){}
+  rpc CheckVerifyCode(CheckVerifyCodeRequest)returns(DefaultReply){}
+
   rpc SignUpUserCode (SignUpRequest) returns (CreateReply) {}
   rpc SignUpPhone (SignUpRequest) returns (CreateReply) {}
 
@@ -27,6 +29,13 @@ service Api {
 
   // 检查token有效性
   rpc SubSessionCheck (TokenParam) returns (SessionCheckReply)  {}
+
+  // session添加KV对
+  rpc SubSessionSetValue (SubSessionSetValueRequest) returns (DefaultReply)  {}
+  // session获取KV对
+  rpc SubSessionGetValue (SubSessionGetValueRequest) returns (SubSessionGetValueReply)  {}
+
+
   // 检查token所属用户是否拥有调用service权限
   rpc SubPermissionListCheck (PermissionCheck) returns (PermissionCheckReply)  {}
   // 登出传入token
@@ -66,6 +75,13 @@ service Api {
   rpc ShopCreate (CreateShopRequest) returns (CreateReply)  {}
   // 商户列表
   rpc ShopList (ShopListRequest) returns (ShopListReply)  {}
+  // 商户详情
+  rpc ShopDetail (ShopDetailRequest) returns (ShopInfo)  {}
+
+  // 商户许可列表
+  rpc ShopLicenseList (ShopDetailRequest) returns (LicenseList)  {}
+
+
   // 商户添加用户
   rpc ShopAddUser (ShopAddUserRequest) returns (DefaultReply)  {}
   // 商户添加许可证
@@ -81,12 +97,12 @@ service Api {
 
   // 创建许可
   rpc LicenseCreate (LicenseCreateRequest) returns (CreateReply)  {}
+  // 许可类型字典
+  rpc LicenseTypeMap (IdList) returns (LicenseTypeMapReply)  {}
 
   // 许可证批量绑定栏目(之前绑定的会全部取消)
   rpc LicenseBindColumns (LicenseBindColumnsRequest) returns (DefaultReply)  {}
 
-
-
   // ---总后台专用API---
 
   rpc IMSystemCreate (CreateSystemRequest) returns (TokenParam)  {}
@@ -103,11 +119,42 @@ message GenVerifyImageRequest{
   int32 height = 1;
   int32 width = 2;
 }
+enum VerifyType{
+  Undefined = 0;
+  SignUp = 1;
+  SignIn = 2;
+  ChangePassword = 3;
+}
+
+message GenPhoneVerifyCodeRequest{
+  VerifyType verifyType = 1;
+  string code = 2;
+  string account = 3;
+  string ip = 4;
+  string templateCode = 5;
+  int64 expireDurationNano = 6;
+}
+message CheckVerifyCodeRequest{
+  VerifyType verifyType = 1;
+  string code = 2;
+  string account = 3;
+}
+
 message GenVerifyImageReply{
   string codeId = 1;
   string imageBase64 = 2;
 }
-
+message SubSessionSetValueRequest{
+  string token = 1;
+  map<string, string> kv = 2;
+}
+message SubSessionGetValueRequest{
+  string token = 1;
+  repeated string keys = 2;
+}
+message SubSessionGetValueReply{
+  repeated string values = 1;
+}
 
 message TokenParam{
   string token = 1;
@@ -121,7 +168,47 @@ message DefaultReply{}
 message CreateReply{
   int64 id = 1;
 }
+message License{
+  int64 id = 1;
+  int64 shopId = 2;
+  int64 lcsTypeId = 3;
+  string name =4;
+  // nanoSec
+  int64 validPeriod =5;
+  // 分
+  int64 lcsPrice = 6;
+  // nanoSec
+  int64 lcsBeginTime = 7;
+  // nanoSec
+  int64 lcsEndTime = 8;
+
+  int64 feeId = 9;
+  Status    status = 10;
+  string memo = 11;
+  // nanoSec
+  int64  createdAt = 12;
+  int64 createdUser = 13;
+  // nanoSec
+  int64 updatedAt = 14;
+  int64 updatedUser = 15;
+}
+
+
+message LicenseType{
+  int64 typeId = 1;
+  string name = 2;
+  // 有效期时长,单位毫秒
+  int64 validPeriodMs = 3;
+  // 单位:分
+  int32 price = 4;
+  string memo = 5;
+  int64 execUser = 6;
+  Status status = 7;
+}
 
+message LicenseTypeMapReply{
+  map<int64, LicenseType> licenseMap = 1;
+}
 message SignInPasswordRequest {
   string codeId = 1;
   string verifyCode = 2;
@@ -249,9 +336,10 @@ message UserListRequest{
   Status status = 2;
   // 模糊查询
   string name = 3;
-  int64 lcstypeid = 4;
   // 仅总后台请求时有效
   int64 sysId = 5;
+  // 0为全部
+  int64 shopId = 6;
 }
 
 message UserListReply{
@@ -309,6 +397,10 @@ message ShopListRequest{
   //上级商家Id, -1 时查询全部
   int64 sId = 4;
 }
+message ShopDetailRequest{
+  int64 shopId = 1;
+}
+
 
 message ShopAddUserRequest{
   int64 shopId = 1;
@@ -337,6 +429,12 @@ message ShopInfo{
   int64 updated_at      =10;
   int64 updated_user    =11;
 }
+message IdList{
+  repeated int64 idList = 1;
+}
+message LicenseList{
+  repeated License list = 1;
+}
 
 message ShopListReply{
   repeated ShopInfo list = 1;

+ 16 - 24
repository/grpc/bsw/im/api.go

@@ -5,10 +5,18 @@ import (
 	"sportfitness/base/global"
 	im "sportfitness/base/repository/grpc/bsw/im/im"
 
+	"google.golang.org/grpc/status"
+
 	"git.beswell.com/gframe/application"
 	"google.golang.org/grpc/metadata"
 )
 
+func handleErr(err error) {
+	s, _ := status.FromError(err)
+
+	panic(application.ErrorBusinessF(application.ErrorCode(s.Code()), s.Message()))
+}
+
 func getClient() im.ApiClient {
 	conn, err := application.GetServiceGrpcConn("bsw/im")
 	if err != nil {
@@ -27,9 +35,7 @@ func ctx() context.Context {
 func SignUpUserCode(params *im.SignUpRequest) (userId int64) {
 	r, err := getClient().SignUpUserCode(ctx(), params)
 
-	if err != nil {
-		panic(err)
-	}
+	handleErr(err)
 	userId = r.GetId()
 	return
 }
@@ -39,9 +45,7 @@ func GenVerifyImage(height, width int32) (id, imageBase64 string) {
 		Height: int32(height),
 		Width:  int32(width),
 	})
-	if err != nil {
-		panic(err)
-	}
+	handleErr(err)
 
 	id = r.CodeId
 	imageBase64 = r.ImageBase64
@@ -58,9 +62,7 @@ func SignInUserCodePassword(userCode, password, ip, ClientInfo, codeId, verifyCo
 		CodeId:        codeId,
 		VerifyCode:    verifyCode,
 	})
-	if err != nil {
-		panic(err)
-	}
+	handleErr(err)
 	token = r.Token
 	userId = int(r.UserId)
 
@@ -87,18 +89,14 @@ func SignOut(token string) {
 	request := &im.TokenParam{Token: token}
 
 	_, err := getClient().SubSignOut(ctx(), request)
-	if err != nil {
-		panic(err)
-	}
+	handleErr(err)
 }
 
 func SubSessionCheck(token string) int64 {
 	request := &im.TokenParam{Token: token}
 
 	rs, err := getClient().SubSessionCheck(ctx(), request)
-	if err != nil {
-		panic(err)
-	}
+	handleErr(err)
 	return rs.UserId
 }
 
@@ -109,9 +107,7 @@ func SubPermissionListCheck(token string, shopId int64, servicePathList []string
 		ShopId:          shopId,
 		ServicePathList: servicePathList,
 	})
-	if err != nil {
-		panic(err)
-	}
+	handleErr(err)
 	return rs
 }
 
@@ -120,9 +116,7 @@ func ShopListRequest(name string, status im.Status, sId int64) *im.ShopListReply
 	request := &im.ShopListRequest{SysId: 1, Name: name, Status: status, SId: sId}
 
 	rs, err := getClient().ShopList(ctx(), request)
-	if err != nil {
-		panic(err)
-	}
+	handleErr(err)
 	return rs
 }
 
@@ -131,8 +125,6 @@ func GetShopNavi(userId, shopId int64, parentId int32) *im.UserGetColumnListRepl
 	request := &im.UserGetColumnListRequest{UserId: userId, ShopId: shopId, ParentId: parentId}
 
 	rs, err := getClient().UserGetColumnList(ctx(), request)
-	if err != nil {
-		panic(err)
-	}
+	handleErr(err)
 	return rs
 }

Fichier diff supprimé car celui-ci est trop grand
+ 823 - 155
repository/grpc/bsw/im/im/im.pb.go


+ 262 - 0
repository/grpc/bsw/im/im/im_grpc.pb.go

@@ -19,12 +19,18 @@ const _ = grpc.SupportPackageIsVersion7
 // For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.
 type ApiClient interface {
 	GenVerifyImage(ctx context.Context, in *GenVerifyImageRequest, opts ...grpc.CallOption) (*GenVerifyImageReply, error)
+	GenPhoneVerifyCode(ctx context.Context, in *GenPhoneVerifyCodeRequest, opts ...grpc.CallOption) (*DefaultReply, error)
+	CheckVerifyCode(ctx context.Context, in *CheckVerifyCodeRequest, opts ...grpc.CallOption) (*DefaultReply, error)
 	SignUpUserCode(ctx context.Context, in *SignUpRequest, opts ...grpc.CallOption) (*CreateReply, error)
 	SignUpPhone(ctx context.Context, in *SignUpRequest, opts ...grpc.CallOption) (*CreateReply, error)
 	SignInUserCode(ctx context.Context, in *SignInPasswordRequest, opts ...grpc.CallOption) (*SignInReply, error)
 	SignInWithPhonePassword(ctx context.Context, in *SignInPasswordRequest, opts ...grpc.CallOption) (*SignInReply, error)
 	// 检查token有效性
 	SubSessionCheck(ctx context.Context, in *TokenParam, opts ...grpc.CallOption) (*SessionCheckReply, error)
+	// session添加KV对
+	SubSessionSetValue(ctx context.Context, in *SubSessionSetValueRequest, opts ...grpc.CallOption) (*DefaultReply, error)
+	// session获取KV对
+	SubSessionGetValue(ctx context.Context, in *SubSessionGetValueRequest, opts ...grpc.CallOption) (*SubSessionGetValueReply, error)
 	// 检查token所属用户是否拥有调用service权限
 	SubPermissionListCheck(ctx context.Context, in *PermissionCheck, opts ...grpc.CallOption) (*PermissionCheckReply, error)
 	// 登出传入token
@@ -59,6 +65,10 @@ type ApiClient interface {
 	ShopCreate(ctx context.Context, in *CreateShopRequest, opts ...grpc.CallOption) (*CreateReply, error)
 	// 商户列表
 	ShopList(ctx context.Context, in *ShopListRequest, opts ...grpc.CallOption) (*ShopListReply, error)
+	// 商户详情
+	ShopDetail(ctx context.Context, in *ShopDetailRequest, opts ...grpc.CallOption) (*ShopInfo, error)
+	// 商户许可列表
+	ShopLicenseList(ctx context.Context, in *ShopDetailRequest, opts ...grpc.CallOption) (*LicenseList, error)
 	// 商户添加用户
 	ShopAddUser(ctx context.Context, in *ShopAddUserRequest, opts ...grpc.CallOption) (*DefaultReply, error)
 	// 商户添加许可证
@@ -71,6 +81,8 @@ type ApiClient interface {
 	ColumnCreate(ctx context.Context, in *ColumnCreateRequest, opts ...grpc.CallOption) (*CreateReply, error)
 	// 创建许可
 	LicenseCreate(ctx context.Context, in *LicenseCreateRequest, opts ...grpc.CallOption) (*CreateReply, error)
+	// 许可类型字典
+	LicenseTypeMap(ctx context.Context, in *IdList, opts ...grpc.CallOption) (*LicenseTypeMapReply, error)
 	// 许可证批量绑定栏目(之前绑定的会全部取消)
 	LicenseBindColumns(ctx context.Context, in *LicenseBindColumnsRequest, opts ...grpc.CallOption) (*DefaultReply, error)
 	IMSystemCreate(ctx context.Context, in *CreateSystemRequest, opts ...grpc.CallOption) (*TokenParam, error)
@@ -96,6 +108,24 @@ func (c *apiClient) GenVerifyImage(ctx context.Context, in *GenVerifyImageReques
 	return out, nil
 }
 
+func (c *apiClient) GenPhoneVerifyCode(ctx context.Context, in *GenPhoneVerifyCodeRequest, opts ...grpc.CallOption) (*DefaultReply, error) {
+	out := new(DefaultReply)
+	err := c.cc.Invoke(ctx, "/im.Api/GenPhoneVerifyCode", in, out, opts...)
+	if err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (c *apiClient) CheckVerifyCode(ctx context.Context, in *CheckVerifyCodeRequest, opts ...grpc.CallOption) (*DefaultReply, error) {
+	out := new(DefaultReply)
+	err := c.cc.Invoke(ctx, "/im.Api/CheckVerifyCode", in, out, opts...)
+	if err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
 func (c *apiClient) SignUpUserCode(ctx context.Context, in *SignUpRequest, opts ...grpc.CallOption) (*CreateReply, error) {
 	out := new(CreateReply)
 	err := c.cc.Invoke(ctx, "/im.Api/SignUpUserCode", in, out, opts...)
@@ -141,6 +171,24 @@ func (c *apiClient) SubSessionCheck(ctx context.Context, in *TokenParam, opts ..
 	return out, nil
 }
 
+func (c *apiClient) SubSessionSetValue(ctx context.Context, in *SubSessionSetValueRequest, opts ...grpc.CallOption) (*DefaultReply, error) {
+	out := new(DefaultReply)
+	err := c.cc.Invoke(ctx, "/im.Api/SubSessionSetValue", in, out, opts...)
+	if err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (c *apiClient) SubSessionGetValue(ctx context.Context, in *SubSessionGetValueRequest, opts ...grpc.CallOption) (*SubSessionGetValueReply, error) {
+	out := new(SubSessionGetValueReply)
+	err := c.cc.Invoke(ctx, "/im.Api/SubSessionGetValue", in, out, opts...)
+	if err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
 func (c *apiClient) SubPermissionListCheck(ctx context.Context, in *PermissionCheck, opts ...grpc.CallOption) (*PermissionCheckReply, error) {
 	out := new(PermissionCheckReply)
 	err := c.cc.Invoke(ctx, "/im.Api/SubPermissionListCheck", in, out, opts...)
@@ -294,6 +342,24 @@ func (c *apiClient) ShopList(ctx context.Context, in *ShopListRequest, opts ...g
 	return out, nil
 }
 
+func (c *apiClient) ShopDetail(ctx context.Context, in *ShopDetailRequest, opts ...grpc.CallOption) (*ShopInfo, error) {
+	out := new(ShopInfo)
+	err := c.cc.Invoke(ctx, "/im.Api/ShopDetail", in, out, opts...)
+	if err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
+func (c *apiClient) ShopLicenseList(ctx context.Context, in *ShopDetailRequest, opts ...grpc.CallOption) (*LicenseList, error) {
+	out := new(LicenseList)
+	err := c.cc.Invoke(ctx, "/im.Api/ShopLicenseList", in, out, opts...)
+	if err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
 func (c *apiClient) ShopAddUser(ctx context.Context, in *ShopAddUserRequest, opts ...grpc.CallOption) (*DefaultReply, error) {
 	out := new(DefaultReply)
 	err := c.cc.Invoke(ctx, "/im.Api/ShopAddUser", in, out, opts...)
@@ -348,6 +414,15 @@ func (c *apiClient) LicenseCreate(ctx context.Context, in *LicenseCreateRequest,
 	return out, nil
 }
 
+func (c *apiClient) LicenseTypeMap(ctx context.Context, in *IdList, opts ...grpc.CallOption) (*LicenseTypeMapReply, error) {
+	out := new(LicenseTypeMapReply)
+	err := c.cc.Invoke(ctx, "/im.Api/LicenseTypeMap", in, out, opts...)
+	if err != nil {
+		return nil, err
+	}
+	return out, nil
+}
+
 func (c *apiClient) LicenseBindColumns(ctx context.Context, in *LicenseBindColumnsRequest, opts ...grpc.CallOption) (*DefaultReply, error) {
 	out := new(DefaultReply)
 	err := c.cc.Invoke(ctx, "/im.Api/LicenseBindColumns", in, out, opts...)
@@ -421,12 +496,18 @@ func (x *apiIMMessageRcvClient) Recv() (*Message, error) {
 // for forward compatibility
 type ApiServer interface {
 	GenVerifyImage(context.Context, *GenVerifyImageRequest) (*GenVerifyImageReply, error)
+	GenPhoneVerifyCode(context.Context, *GenPhoneVerifyCodeRequest) (*DefaultReply, error)
+	CheckVerifyCode(context.Context, *CheckVerifyCodeRequest) (*DefaultReply, error)
 	SignUpUserCode(context.Context, *SignUpRequest) (*CreateReply, error)
 	SignUpPhone(context.Context, *SignUpRequest) (*CreateReply, error)
 	SignInUserCode(context.Context, *SignInPasswordRequest) (*SignInReply, error)
 	SignInWithPhonePassword(context.Context, *SignInPasswordRequest) (*SignInReply, error)
 	// 检查token有效性
 	SubSessionCheck(context.Context, *TokenParam) (*SessionCheckReply, error)
+	// session添加KV对
+	SubSessionSetValue(context.Context, *SubSessionSetValueRequest) (*DefaultReply, error)
+	// session获取KV对
+	SubSessionGetValue(context.Context, *SubSessionGetValueRequest) (*SubSessionGetValueReply, error)
 	// 检查token所属用户是否拥有调用service权限
 	SubPermissionListCheck(context.Context, *PermissionCheck) (*PermissionCheckReply, error)
 	// 登出传入token
@@ -461,6 +542,10 @@ type ApiServer interface {
 	ShopCreate(context.Context, *CreateShopRequest) (*CreateReply, error)
 	// 商户列表
 	ShopList(context.Context, *ShopListRequest) (*ShopListReply, error)
+	// 商户详情
+	ShopDetail(context.Context, *ShopDetailRequest) (*ShopInfo, error)
+	// 商户许可列表
+	ShopLicenseList(context.Context, *ShopDetailRequest) (*LicenseList, error)
 	// 商户添加用户
 	ShopAddUser(context.Context, *ShopAddUserRequest) (*DefaultReply, error)
 	// 商户添加许可证
@@ -473,6 +558,8 @@ type ApiServer interface {
 	ColumnCreate(context.Context, *ColumnCreateRequest) (*CreateReply, error)
 	// 创建许可
 	LicenseCreate(context.Context, *LicenseCreateRequest) (*CreateReply, error)
+	// 许可类型字典
+	LicenseTypeMap(context.Context, *IdList) (*LicenseTypeMapReply, error)
 	// 许可证批量绑定栏目(之前绑定的会全部取消)
 	LicenseBindColumns(context.Context, *LicenseBindColumnsRequest) (*DefaultReply, error)
 	IMSystemCreate(context.Context, *CreateSystemRequest) (*TokenParam, error)
@@ -489,6 +576,12 @@ type UnimplementedApiServer struct {
 func (UnimplementedApiServer) GenVerifyImage(context.Context, *GenVerifyImageRequest) (*GenVerifyImageReply, error) {
 	return nil, status.Errorf(codes.Unimplemented, "method GenVerifyImage not implemented")
 }
+func (UnimplementedApiServer) GenPhoneVerifyCode(context.Context, *GenPhoneVerifyCodeRequest) (*DefaultReply, error) {
+	return nil, status.Errorf(codes.Unimplemented, "method GenPhoneVerifyCode not implemented")
+}
+func (UnimplementedApiServer) CheckVerifyCode(context.Context, *CheckVerifyCodeRequest) (*DefaultReply, error) {
+	return nil, status.Errorf(codes.Unimplemented, "method CheckVerifyCode not implemented")
+}
 func (UnimplementedApiServer) SignUpUserCode(context.Context, *SignUpRequest) (*CreateReply, error) {
 	return nil, status.Errorf(codes.Unimplemented, "method SignUpUserCode not implemented")
 }
@@ -504,6 +597,12 @@ func (UnimplementedApiServer) SignInWithPhonePassword(context.Context, *SignInPa
 func (UnimplementedApiServer) SubSessionCheck(context.Context, *TokenParam) (*SessionCheckReply, error) {
 	return nil, status.Errorf(codes.Unimplemented, "method SubSessionCheck not implemented")
 }
+func (UnimplementedApiServer) SubSessionSetValue(context.Context, *SubSessionSetValueRequest) (*DefaultReply, error) {
+	return nil, status.Errorf(codes.Unimplemented, "method SubSessionSetValue not implemented")
+}
+func (UnimplementedApiServer) SubSessionGetValue(context.Context, *SubSessionGetValueRequest) (*SubSessionGetValueReply, error) {
+	return nil, status.Errorf(codes.Unimplemented, "method SubSessionGetValue not implemented")
+}
 func (UnimplementedApiServer) SubPermissionListCheck(context.Context, *PermissionCheck) (*PermissionCheckReply, error) {
 	return nil, status.Errorf(codes.Unimplemented, "method SubPermissionListCheck not implemented")
 }
@@ -555,6 +654,12 @@ func (UnimplementedApiServer) ShopCreate(context.Context, *CreateShopRequest) (*
 func (UnimplementedApiServer) ShopList(context.Context, *ShopListRequest) (*ShopListReply, error) {
 	return nil, status.Errorf(codes.Unimplemented, "method ShopList not implemented")
 }
+func (UnimplementedApiServer) ShopDetail(context.Context, *ShopDetailRequest) (*ShopInfo, error) {
+	return nil, status.Errorf(codes.Unimplemented, "method ShopDetail not implemented")
+}
+func (UnimplementedApiServer) ShopLicenseList(context.Context, *ShopDetailRequest) (*LicenseList, error) {
+	return nil, status.Errorf(codes.Unimplemented, "method ShopLicenseList not implemented")
+}
 func (UnimplementedApiServer) ShopAddUser(context.Context, *ShopAddUserRequest) (*DefaultReply, error) {
 	return nil, status.Errorf(codes.Unimplemented, "method ShopAddUser not implemented")
 }
@@ -573,6 +678,9 @@ func (UnimplementedApiServer) ColumnCreate(context.Context, *ColumnCreateRequest
 func (UnimplementedApiServer) LicenseCreate(context.Context, *LicenseCreateRequest) (*CreateReply, error) {
 	return nil, status.Errorf(codes.Unimplemented, "method LicenseCreate not implemented")
 }
+func (UnimplementedApiServer) LicenseTypeMap(context.Context, *IdList) (*LicenseTypeMapReply, error) {
+	return nil, status.Errorf(codes.Unimplemented, "method LicenseTypeMap not implemented")
+}
 func (UnimplementedApiServer) LicenseBindColumns(context.Context, *LicenseBindColumnsRequest) (*DefaultReply, error) {
 	return nil, status.Errorf(codes.Unimplemented, "method LicenseBindColumns not implemented")
 }
@@ -619,6 +727,42 @@ func _Api_GenVerifyImage_Handler(srv interface{}, ctx context.Context, dec func(
 	return interceptor(ctx, in, info, handler)
 }
 
+func _Api_GenPhoneVerifyCode_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+	in := new(GenPhoneVerifyCodeRequest)
+	if err := dec(in); err != nil {
+		return nil, err
+	}
+	if interceptor == nil {
+		return srv.(ApiServer).GenPhoneVerifyCode(ctx, in)
+	}
+	info := &grpc.UnaryServerInfo{
+		Server:     srv,
+		FullMethod: "/im.Api/GenPhoneVerifyCode",
+	}
+	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+		return srv.(ApiServer).GenPhoneVerifyCode(ctx, req.(*GenPhoneVerifyCodeRequest))
+	}
+	return interceptor(ctx, in, info, handler)
+}
+
+func _Api_CheckVerifyCode_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+	in := new(CheckVerifyCodeRequest)
+	if err := dec(in); err != nil {
+		return nil, err
+	}
+	if interceptor == nil {
+		return srv.(ApiServer).CheckVerifyCode(ctx, in)
+	}
+	info := &grpc.UnaryServerInfo{
+		Server:     srv,
+		FullMethod: "/im.Api/CheckVerifyCode",
+	}
+	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+		return srv.(ApiServer).CheckVerifyCode(ctx, req.(*CheckVerifyCodeRequest))
+	}
+	return interceptor(ctx, in, info, handler)
+}
+
 func _Api_SignUpUserCode_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
 	in := new(SignUpRequest)
 	if err := dec(in); err != nil {
@@ -709,6 +853,42 @@ func _Api_SubSessionCheck_Handler(srv interface{}, ctx context.Context, dec func
 	return interceptor(ctx, in, info, handler)
 }
 
+func _Api_SubSessionSetValue_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+	in := new(SubSessionSetValueRequest)
+	if err := dec(in); err != nil {
+		return nil, err
+	}
+	if interceptor == nil {
+		return srv.(ApiServer).SubSessionSetValue(ctx, in)
+	}
+	info := &grpc.UnaryServerInfo{
+		Server:     srv,
+		FullMethod: "/im.Api/SubSessionSetValue",
+	}
+	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+		return srv.(ApiServer).SubSessionSetValue(ctx, req.(*SubSessionSetValueRequest))
+	}
+	return interceptor(ctx, in, info, handler)
+}
+
+func _Api_SubSessionGetValue_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+	in := new(SubSessionGetValueRequest)
+	if err := dec(in); err != nil {
+		return nil, err
+	}
+	if interceptor == nil {
+		return srv.(ApiServer).SubSessionGetValue(ctx, in)
+	}
+	info := &grpc.UnaryServerInfo{
+		Server:     srv,
+		FullMethod: "/im.Api/SubSessionGetValue",
+	}
+	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+		return srv.(ApiServer).SubSessionGetValue(ctx, req.(*SubSessionGetValueRequest))
+	}
+	return interceptor(ctx, in, info, handler)
+}
+
 func _Api_SubPermissionListCheck_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
 	in := new(PermissionCheck)
 	if err := dec(in); err != nil {
@@ -1015,6 +1195,42 @@ func _Api_ShopList_Handler(srv interface{}, ctx context.Context, dec func(interf
 	return interceptor(ctx, in, info, handler)
 }
 
+func _Api_ShopDetail_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+	in := new(ShopDetailRequest)
+	if err := dec(in); err != nil {
+		return nil, err
+	}
+	if interceptor == nil {
+		return srv.(ApiServer).ShopDetail(ctx, in)
+	}
+	info := &grpc.UnaryServerInfo{
+		Server:     srv,
+		FullMethod: "/im.Api/ShopDetail",
+	}
+	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+		return srv.(ApiServer).ShopDetail(ctx, req.(*ShopDetailRequest))
+	}
+	return interceptor(ctx, in, info, handler)
+}
+
+func _Api_ShopLicenseList_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+	in := new(ShopDetailRequest)
+	if err := dec(in); err != nil {
+		return nil, err
+	}
+	if interceptor == nil {
+		return srv.(ApiServer).ShopLicenseList(ctx, in)
+	}
+	info := &grpc.UnaryServerInfo{
+		Server:     srv,
+		FullMethod: "/im.Api/ShopLicenseList",
+	}
+	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+		return srv.(ApiServer).ShopLicenseList(ctx, req.(*ShopDetailRequest))
+	}
+	return interceptor(ctx, in, info, handler)
+}
+
 func _Api_ShopAddUser_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
 	in := new(ShopAddUserRequest)
 	if err := dec(in); err != nil {
@@ -1123,6 +1339,24 @@ func _Api_LicenseCreate_Handler(srv interface{}, ctx context.Context, dec func(i
 	return interceptor(ctx, in, info, handler)
 }
 
+func _Api_LicenseTypeMap_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+	in := new(IdList)
+	if err := dec(in); err != nil {
+		return nil, err
+	}
+	if interceptor == nil {
+		return srv.(ApiServer).LicenseTypeMap(ctx, in)
+	}
+	info := &grpc.UnaryServerInfo{
+		Server:     srv,
+		FullMethod: "/im.Api/LicenseTypeMap",
+	}
+	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+		return srv.(ApiServer).LicenseTypeMap(ctx, req.(*IdList))
+	}
+	return interceptor(ctx, in, info, handler)
+}
+
 func _Api_LicenseBindColumns_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
 	in := new(LicenseBindColumnsRequest)
 	if err := dec(in); err != nil {
@@ -1227,6 +1461,14 @@ var Api_ServiceDesc = grpc.ServiceDesc{
 			MethodName: "GenVerifyImage",
 			Handler:    _Api_GenVerifyImage_Handler,
 		},
+		{
+			MethodName: "GenPhoneVerifyCode",
+			Handler:    _Api_GenPhoneVerifyCode_Handler,
+		},
+		{
+			MethodName: "CheckVerifyCode",
+			Handler:    _Api_CheckVerifyCode_Handler,
+		},
 		{
 			MethodName: "SignUpUserCode",
 			Handler:    _Api_SignUpUserCode_Handler,
@@ -1247,6 +1489,14 @@ var Api_ServiceDesc = grpc.ServiceDesc{
 			MethodName: "SubSessionCheck",
 			Handler:    _Api_SubSessionCheck_Handler,
 		},
+		{
+			MethodName: "SubSessionSetValue",
+			Handler:    _Api_SubSessionSetValue_Handler,
+		},
+		{
+			MethodName: "SubSessionGetValue",
+			Handler:    _Api_SubSessionGetValue_Handler,
+		},
 		{
 			MethodName: "SubPermissionListCheck",
 			Handler:    _Api_SubPermissionListCheck_Handler,
@@ -1315,6 +1565,14 @@ var Api_ServiceDesc = grpc.ServiceDesc{
 			MethodName: "ShopList",
 			Handler:    _Api_ShopList_Handler,
 		},
+		{
+			MethodName: "ShopDetail",
+			Handler:    _Api_ShopDetail_Handler,
+		},
+		{
+			MethodName: "ShopLicenseList",
+			Handler:    _Api_ShopLicenseList_Handler,
+		},
 		{
 			MethodName: "ShopAddUser",
 			Handler:    _Api_ShopAddUser_Handler,
@@ -1339,6 +1597,10 @@ var Api_ServiceDesc = grpc.ServiceDesc{
 			MethodName: "LicenseCreate",
 			Handler:    _Api_LicenseCreate_Handler,
 		},
+		{
+			MethodName: "LicenseTypeMap",
+			Handler:    _Api_LicenseTypeMap_Handler,
+		},
 		{
 			MethodName: "LicenseBindColumns",
 			Handler:    _Api_LicenseBindColumns_Handler,

Certains fichiers n'ont pas été affichés car il y a eu trop de fichiers modifiés dans ce diff