import request from "@/sheep/request"; const newOrderInfoAPI = { /** * 订单初始化接口 * @param {Object} data - 请求参数对象 * @param {number} data.coach_id - 技师ID * @param {string} data.area_code - 区划代码 * @param {number} data.project_id - 项目ID * @param {number} [data.latitude] - 纬度(可选) * @param {number} [data.longitude] - 经度(可选) * @returns {Promise} 返回请求的Promise对象 */ initialize(data) { return request({ url: "/client/orders/initialize", method: "POST", data: { coach_id: data?.coach_id, // 技师ID area_code: data?.area_code, // 区划代码 project_id: data?.project_id, // 项目ID latitude: data?.latitude, // 可选,纬度 longitude: data?.longitude, // 可选,经度 distance: data?.distance, // 可选,距离 address_id: data?.addressId || undefined, }, }); }, /** * 创建订单接口 * @param {Object} data - 请求参数对象 * @param {number} data.project_id - 项目ID * @param {number} data.address_id - 地址ID * @param {number} data.coach_id - 技师ID * @param {boolean} [data.use_balance] - 是否使用余额(可选) * @param {string} data.service_time - 服务时间,格式:YYYY-MM-DD HH:mm:ss * @param {number} [data.order_id] - 订单ID(可选) * @param {number} data.payment_type - 支付类型 * @param {number} data.order_type - 订单类型 * @param {number} [data.distance] - 距离(可选) * @param {string} [data.remark] - 备注(可选) * @returns {Promise} 返回请求的Promise对象 */ create(data) { return request({ url: "/client/orders/create", method: "POST", data: { project_id: data?.project_id, // 项目ID address_id: data?.address_id, // 地址ID coach_id: data?.coach_id, // 技师ID use_balance: data?.use_balance, // 是否使用余额 service_time: data?.service_time, // 服务时间 order_id: data?.order_id, // 订单ID payment_type: data?.payment_type, // 支付类型 order_type: data?.order_type, // 订单类型 distance: data?.distance, // 距离 remark: data?.remark, // 备注 coupon_id: data?.coupon_id, //优惠券 }, }); }, /** * 取消订单接口 * @param {Object} data - 请求参数对象 * @param {number} data.order_id - 订单ID * @returns {Promise} 返回请求的Promise对象 */ cancel(data) { return request({ url: "/client/orders/cancel", method: "POST", data: { order_id: data?.order_id, // 订单ID }, }); }, /** * 结束订单接口 * @param {Object} data - 请求参数对象 * @param {number} data.order_id - 订单ID * @returns {Promise} 返回请求的Promise对象 */ finish(data) { return request({ url: "/client/orders/finish", method: "POST", data: { order_id: data?.order_id, // 订单ID }, }); }, /** * 确认技师离开接口 * @param {Object} data - 请求参数对象 * @param {number} data.order_id - 订单ID * @returns {Promise} 返回请求的Promise对象 */ confirmLeave(data) { return request({ url: "/client/orders/confirm-leave", method: "POST", data: { order_id: data?.order_id, // 订单ID }, }); }, /** * 获取订单列表接口 * @returns {Promise} 返回请求的Promise对象 */ getList(params) { return request({ url: "/client/orders/list", method: "GET", params: params, }); }, /** * 获取订单详情接口 * @param {Object} order_id - 订单ID * @returns {Promise} 返回请求的Promise对象 */ getDetail(order_id) { return request({ url: "/client/orders/detail/" + order_id, method: "GET", }); }, /** * 订单加钟接口 * @param {Object} data - 请求参数对象 * @param {number} data.project_id - 项目ID * @param {boolean} [data.use_balance] - 是否使用余额(可选) * @param {number} [data.order_id] - 订单ID(可选) * @param {number} [data.payment_type] - 支付类型(可选) * @returns {Promise} 返回请求的Promise对象 */ addTime(data) { return request({ url: "/client/orders/add-time", method: "POST", data: { project_id: data?.project_id, // 项目ID use_balance: data?.use_balance, // 是否使用余额 order_id: data?.order_id, // 订单ID payment_type: data?.payment_type, // 支付类型 }, }); }, /** * 计算订单金额接口 * @param {Object} data - 请求参数对象 * @param {number} data.address_id - 地址ID * @param {number} data.coach_id - 技师ID * @param {number} data.project_id - 项目ID * @param {number} [data.agent_id] - 代理商ID(可选) * @param {boolean} [data.use_balance] - 是否使用余额(可选) * @param {number} [data.distance] - 距离(可选) * @returns {Promise} 返回请求的Promise对象 */ calculateAmount(data) { return request({ url: "/client/orders/calculate-order-amount", method: "POST", data: { address_id: data?.address_id, // 地址ID coach_id: data?.coach_id, // 技师ID project_id: data?.project_id, // 项目ID agent_id: data?.agent_id, // 代理商ID use_balance: data?.use_balance, // 是否使用余额 distance: data?.distance, // 距离 coupon_id: data?.coupon_id, }, }); }, /** * 获取抢单列表接口 * @param {Object} data - 请求参数对象 * @param {number} data.order_id - 订单ID * @returns {Promise} 返回请求的Promise对象 */ getGrabList(data) { return request({ url: "/client/orders/grab-list", method: "GET", params: { order_id: data?.order_id, // 订单ID }, }); }, /** * 指定技师接口 * @param {Object} data - 请求参数对象 * @param {number} data.coach_id - 技师ID * @param {number} data.order_id - 订单ID * @param {number} data.payment_type - 支付类型 * @param {number} [data.distance] - 距离(可选) * @returns {Promise} 返回请求的Promise对象 */ assignCoach(data) { return request({ url: "/client/orders/assign-coach", method: "POST", data: { coach_id: data?.coach_id, // 技师ID order_id: data?.order_id, // 订单ID payment_type: data?.payment_type, // 支付类型 distance: data?.distance, // 距离 coupon_id: data?.coupon_id, }, }); }, /** * 生成核销码接口 * @param {Object} order_id - 订单ID * @returns {Promise} 返回请求的Promise对象 */ generateCode(order_id) { return request({ url: "/client/orders/" + order_id + "/code", method: "GET", }); }, /** * 订单评价接口 * @param {Object} data - 请求参数对象 * @param {number} data.order_id - 订单ID * @param {number} data.score - 评分(1-5分) * @param {string} [data.content] - 评价内容(可选) * @param {Array} [data.images] - 评价图片数组(可选) * @param {number} data.service_score - 服务评分(1-5分) * @param {number} data.skill_score - 技能评分(1-5分) * @param {number} data.attitude_score - 态度评分(1-5分) * @returns {Promise} 返回请求的Promise对象 */ rate(data) { return request({ url: "/client/orders/rate", method: "POST", data: { order_id: data?.order_id, // 订单ID service_score: data?.service_score, // 服务评分 appearance_score: data?.appearance_score, // 外观评分 attitude_score: data?.attitude_score, // 态度评分 professional_score: data?.professional_score, // 专业评分 tags: data?.tags, // 标签 content: data?.content, // 评价内容 images: data?.images, // 评价图片 }, }); }, /** * 获取微信支付配置信息接口 * @param {Object} data - 请求参数对象 * @param {number} data.order_id - 订单ID * @returns {Promise} 返回请求的Promise对象 */ getWechatPayConfig(data) { return request({ url: "/client/wechat/pay/config", method: "post", data: { order_id: data?.order_id, // 订单ID }, }); }, /** * 删除订单接口 * @param {Object} data - 请求参数对象 * @returns {Promise} 返回请求的Promise对象 */ deleteOrder(data) { return request({ url: "/client/orders/" + data?.order_id, method: "DELETE", }); }, /** * 获取评价标签列表接口 * @returns {Promise} 返回包含评价标签列表的Promise对象 * @property {Array} data - 标签列表 * @property {number} data[].id - 标签ID * @property {string} data[].tag_name - 标签名称 */ getCommentTags() { return request({ url: "/client/orders/comment-tags", method: "GET", }); }, /** * 通过用户位置id获取技师最近的经纬度 * @param {Object} addressId - 请求参数对象 * @param {number} data.order_id - 订单ID * @returns {Promise} 返回请求的Promise对象 */ getTechnicianLatLng(data) { return request({ url: "/client/orders/get-coach-location", method: "post", data: { address_id: data?.address_id, // 位置id coach_id: data?.coach_id, //技师id }, }); }, }; export default newOrderInfoAPI;