syntax = "proto3"; package bundle; option go_package = "./bundle"; import "pb/descriptor.proto"; import "pb/validator.proto"; service Bundle { rpc CreateBundle(BundleProfile) returns (CommonResponse) {} rpc UpdateBundle(BundleProfile) returns (CommonResponse) {} rpc DeleteBundle(DelBundleRequest) returns (CommonResponse) {} rpc HandShelf(HandShelfRequest) returns(CommonResponse) {} //更新套餐上下架状态 rpc SaveBundle(BundleProfile)returns (SaveResponse) {} rpc BundleListV2(BundleListRequest) returns(BundleListResponse) {} rpc BundleDetailV2(BundleDetailRequest) returns(BundleDetailResponseV2) {} rpc BundleList(BundleListRequest) returns (BundleListResponse) {} rpc BundleDetail(BundleDetailRequest) returns (BundleDetailResponse) {} rpc CreateOrderRecord(OrderRecord) returns (CommonResponse) {} rpc UpdateOrderRecord(OrderRecord) returns (CommonResponse) {} rpc UpdateOrderRecordByOrderNo(OrderRecord) returns (CommonResponse) {} rpc OrderRecordsList(OrderRecordsRequest) returns (OrderRecordsResponse) {} rpc OrderRecordsDetail(OrderRecordsDetailRequest) returns (OrderRecordsDetailResponse) {} rpc UpdateFinancialConfirmationStatus(FinancialConfirmationRequest) returns (CommonResponse) {} //增值套餐 rpc CreateValueAddBundle(CreateValueAddBundleRequest) returns (CreateValueAddBundleResponse) {} rpc ValueAddBundleList(ValueAddBundleListRequest) returns (ValueAddBundleListResponse) {} rpc ValueAddBundleDetail(ValueAddBundleDetailRequest) returns (ValueAddBundleDetailResponse) {} //新增值服务 rpc SaveValueAddService(ValueAddServiceLang) returns (SaveResponse) {} rpc ValueAddServiceList(ValueAddServiceListRequest) returns (ValueAddServiceListResponse) {} rpc ValueAddServiceDetail(ValueAddServiceDetailRequest) returns (ValueAddServiceDetailResponse) {} } message CommonResponse { string msg = 1 [json_name = "msg"]; string uuid = 2 [json_name = "uuid"]; string orderNo = 3 [json_name = "orderNo"]; } message BundleProfile { string uuid = 1 [json_name = "uuid"]; string name = 2 [json_name = "name"]; float price = 3 [json_name = "price"]; int64 priceType = 4 [json_name = "priceType"]; string content = 5 [json_name = "content"]; string contract = 6 [json_name = "contract"]; string language = 7 [json_name = "language"]; string createdAt = 8 [json_name = "createdAt"]; string updatedAt = 9 [json_name = "updatedAt"]; string companySign = 10 [json_name = "companySign"]; int64 contractDuration = 11 [json_name = "contractDuration"]; string bundleCommonUid = 12 [json_name = "bundleCommonUid"]; int64 sort = 13 [json_name = "sort"]; string bgImg1 = 14 [json_name = "bgImg1"]; string bgImg2 = 15 [json_name = "bgImg2"]; int64 shelfStatus = 16 [json_name = "shelfStatus"]; // 1 上架 2 下架 repeated SelectValueAddService selectValueAddService = 17 [json_name = "SelectValueAddService"]; repeated BundleProfileLang bundleProfileLang = 18 [json_name = "bundleProfileLang"]; } message BundleProfileLang { string uuid = 1 [json_name = "uuid"]; string name = 2 [json_name = "name"]; float price = 3 [json_name = "price"]; int64 priceType = 4 [json_name = "priceType"]; string content = 5 [json_name = "content"]; string language = 6 [json_name = "language"]; string createdAt = 7 [json_name = "createdAt"]; string updatedAt = 8 [json_name = "updatedAt"]; string bgImg1 = 9 [json_name = "bgImg1"]; string bgImg2 = 10 [json_name = "bgImg2"]; int64 sort = 11 [json_name = "sort"]; repeated ValueAddServiceLang valueAddServiceLang = 12 [json_name = "ValueAddServiceLang"]; } message SaveResponse { string msg = 1 [json_name = "msg"]; string uuid = 2 [json_name = "uuid"]; int64 cancelNum = 3 [json_name = "cancelNum"]; } message SelectValueAddService { string valueAddUuid = 1 [json_name = "valueAddUuid"]; string serviceName= 2 [json_name = "serviceName"]; bool isDisplay = 3 [json_name = "isDisplay"]; } message DelBundleRequest { string uuid = 1 [json_name = "uuid"]; } message BundleListRequest { int32 page = 1 [json_name = "page"]; int32 pageSize = 2 [json_name = "pageSize"]; string name = 3 [json_name = "name"]; string content = 4 [json_name = "content"]; string language = 5 [json_name = "language"]; } message BundleListResponse { repeated BundleProfile bundles = 1 [json_name = "bundles"]; int32 total = 2 [json_name = "total"]; } message BundleDetailRequest { string uuid = 1 [json_name = "uuid"]; string language = 2 [json_name = "language"]; //语言 默认zh-CN, zh-CN zh-TW EN de-DE js-JP } message HandShelfRequest { string uuid = 1 [json_name = "uuid"]; int64 shelfStatus = 2 [json_name = "shelfStatus"]; // 1 上架 2 下架 } message BundleDetailResponse { BundleProfile bundle = 1 [json_name = "bundle"]; string msg = 2 [json_name = "msg"]; } message BundleDetailResponseV2{ BundleProfileLang bundle = 1 [json_name = "bundle"]; repeated SelectValueAddService selectValueAddService = 2 [json_name = "SelectValueAddService"]; string msg =3 [json_name = "msg"]; } message OrderRecord { string uuid = 1 [json_name = "uuid"]; string bundleUuid = 2 [json_name = "bundleUuid"]; string customerID = 3 [json_name = "customerID"]; string customerNum = 4 [json_name = "customerNum"]; string customerName = 5 [json_name = "customerName"]; float amount = 6 [json_name = "amount"]; int64 amountType = 7 [json_name = "amountType"]; string signContract = 8 [json_name = "signContract"]; string signature = 9 [json_name = "signature"]; string signedTime = 10 [json_name = "signedTime"]; int64 payType = 11 [json_name = "payType"]; string payTime = 12 [json_name = "payTime"]; string checkoutSessionId = 13 [json_name = "checkoutSessionId"]; string checkoutSessionUrl = 14 [json_name = "checkoutSessionUrl"]; int64 status = 15 [json_name = "status"]; string orderNo = 16 [json_name = "orderNo"]; string bundleName = 17 [json_name = "bundleName"]; string contractNo = 18 [json_name = "contractNo"]; string valueAddBundleUuid= 19 [json_name= "valueAddBundleUuid"]; //增值套餐UUID float valueAddBundleAmount = 20 [json_name = "valueAddBundleAmount"]; //增值套餐金额 float valueAddOriginalPrice= 21 [json_name= "valueAddOriginalPrice"]; //原单价 float valueAddDiscountPrice= 22 [json_name= "valueAddDiscountPrice"]; //优惠单价 float valueAddSavedAmount= 23 [json_name= "valueAddSavedAmount"]; //节省金额 int32 num = 24 [json_name = "num"]; float totalAmount = 25 [json_name = "totalAmount"]; //总金额 string sex = 26 [json_name = "sex"]; string nationality = 27 [json_name = "nationality"]; string certificatePicture = 28 [json_name = "certificatePicture"]; string placeOfResidence = 29 [json_name = "placeOfResidence"]; string groupPhoto = 30 [json_name = "groupPhoto"]; string bundleCommonUid = 31 [json_name = "bundleCommonUid"]; string addBundleCommonUid = 32 [json_name = "addBundleCommonUid"]; int32 financialConfirmation = 33 [json_name = "financialConfirmation"]; string telNum = 34 [json_name = "telNum"]; } message OrderRecordsRequest { int32 page = 1 [json_name = "page"]; int32 pageSize = 2 [json_name = "pageSize"]; string customerNum = 3 [json_name = "customerNum"]; string customerName = 4 [json_name = "customerName"]; string bundleUUID = 5 [json_name = "bundleUUID"]; string orderNo = 6 [json_name = "orderNo"]; int64 status = 7 [json_name = "status"]; string bundleName = 8 [json_name = "bundleName"]; string startSignedTime = 9 [json_name = "startSignedTime"]; string endSignedTime = 10 [json_name = "endSignedTime"]; string startPayTime = 11 [json_name = "startPayTime"]; string endPayTime = 12 [json_name = "endPayTime"]; string customerID = 13 [json_name = "customerID"]; int64 isHaveValueAdd = 14 [json_name = "isHaveValueAdd"];//有无增值选项 int32 financialConfirmation = 15 [json_name = "financialConfirmation"]; string telNum = 16 [json_name = "telNum"]; } message OrderRecordsResponse { repeated OrderRecord orderRecords = 1 [json_name = "orderRecords"]; int32 total = 2 [json_name = "total"]; } message OrderRecordsDetailRequest { string uuid = 1 [json_name = "uuid"]; string orderNo = 2 [json_name = "orderNo"]; string customerID = 3 [json_name = "customerID"]; } message OrderRecordsDetailResponse { OrderRecord orderRecord = 1 [json_name = "orderRecord"]; string msg = 2 [json_name = "msg"]; } // 增值套餐 message ValueAddBundleProfile { string uuid = 1 [json_name = "uuid"]; int32 num = 2 [json_name = "num"]; float originalPrice = 3 [json_name = "originalPrice"]; float discountPrice = 4 [json_name = "discountPrice"]; float totalPrice = 6 [json_name = "totalPrice"]; float savedAmount = 7 [json_name = "savedAmount"]; bool discountPriceStatus = 8 [json_name = "discountPriceStatus"]; bool choose = 9 [json_name = "choose"]; bool status = 10 [json_name = "status"]; string addBundleCommonUid = 11 [json_name = "addBundleCommonUid"]; } message CreateValueAddBundleRequest { int32 num = 1 [json_name = "num",(validator.field) = {int_gt: 29, int_lt:101, human_error: "至少数为30,最多数为100"}]; } message CreateValueAddBundleResponse { string uuid = 1 [json_name = "uuid"]; float totalPrice = 2 [json_name = "totalPrice"]; float savedAmount = 3 [json_name = "savedAmount"]; string msg = 4 [json_name = "msg"]; } // 增值套餐列表请求 message ValueAddBundleListRequest { int32 userId = 1 [json_name = "userId"]; string bundleUuid = 2 [json_name = "bundleUuid"]; int32 priceType = 3 [json_name = "priceType"]; } message ValueAddBundleListResponse { float originalPrice = 1 [json_name = "originalPrice"]; int32 total = 2 [json_name = "total"]; repeated ValueAddBundleProfile data = 3 [json_name = "data"]; bool status = 4 [json_name = "status"]; int32 num = 5 [json_name = "num"]; float price = 6 [json_name = "price"]; bool orderNo = 7 [json_name = "orderNo"]; string msg = 8 [json_name = "msg"]; } message ValueAddBundleDetailRequest { string uuid = 1 [json_name = "uuid"]; } message ValueAddBundleDetailResponse { ValueAddBundleProfile data = 1 [json_name = "data"]; string payTime = 2 [json_name = "payTime"]; string msg = 3 [json_name = "msg"]; } message FinancialConfirmationRequest { string orderNo = 1 [json_name = "orderNo"]; } // ****************************************************新增值服务*********************** //增值服务 message ValueAddService { string uuid = 1 [json_name = "uuid"]; string serviceName = 2 [json_name = "serviceName"]; //服务名称 int32 serviceType = 3 [json_name = "serviceType"]; repeated ValueAddServiceLang serviceLang = 4 [json_name = "serviceLang"]; } message ValueAddServiceLang { string uuid = 1 [json_name = "uuid"]; string serviceName = 2 [json_name = "serviceName"]; //服务名称 int32 serviceType = 3 [json_name = "serviceType"]; int32 priceMode = 4 [json_name = "priceMode"]; string originalPrice = 5 [json_name = "originalPrice"]; string unit = 6 [json_name = "unit"]; int64 priceType = 7 [json_name = "priceType"]; string language = 8 [json_name = "language"]; string createdAt = 9 [json_name = "createdAt"]; string updatedAt = 10 [json_name = "updatedAt"]; repeated ValueAddPriceOptions options = 12 [json_name = "options"]; } //增值服务价格选项 message ValueAddPriceOptions { int64 id = 1 [json_name = "id"]; int32 num = 2 [json_name = "num"]; string symbol = 3 [json_name = "symbol"]; string price = 4 [json_name = "price"]; } //增值服务列表 message ValueAddServiceListRequest { int32 page = 1 [json_name = "page"]; int32 pageSize = 2 [json_name = "pageSize"]; string name = 3 [json_name = "name"]; string language = 4 [json_name = "language"]; } message ValueAddServiceListResponse { int32 total = 1 [json_name = "total"]; string msg = 2 [json_name = "msg"]; repeated ValueAddService valueAddServiceList = 3 [json_name = "valueAddServiceList"]; } //增值服务详情 message ValueAddServiceDetailRequest { string uuid = 1 [json_name = "uuid"]; string language = 2 [json_name = "language"]; //语言 默认zh-CN, zh-CN zh-TW EN de-DE js-JP } message ValueAddServiceDetailResponse { string msg = 1 [json_name = "msg"]; ValueAddServiceLang valueAddServiceLang = 2 [json_name = "valueAddServiceLang"]; } //*********************************新增值服务-over******************************************