package com.ydd.app; import com.ydd.common.enums.DeliveryTypeEnums; import com.ydd.module.domain.DspDelivery; import com.ydd.module.domain.Merchant; import com.ydd.module.domain.Shop; import com.ydd.third.common.vo.shop.ShopVo; import java.math.BigDecimal; /** * Project:lb-server * Class:OrderEntityUtils * Description:TODO * Time:2021/3/8 16:14 * * @author zoe */ public class ShopEntityUtils { public static ShopVo createShopVo(Shop shop, DspDelivery delivery, Merchant merchant) { ShopVo shopVo = new ShopVo(); String poiAddress = shop.getPoiAddress() == null ? "" : shop.getPoiAddress(); if (DeliveryTypeEnums.DADA.getType().equals(delivery.getType())) { shopVo.setLbClient(DeliveryTypeEnums.DADA.getName()); /** * 门店名称 * 达达:station_name,门店名称,必传 * */ shopVo.setShopName(shop.getName()); /** * 业务类型 * 达达:business,必传,业务类型 * (食品小吃-1,饮料-2,鲜花-3,文印票务-8,便利店-9,水果生鲜-13,同城电商-19, 医药-20,蛋糕-21,酒品-24,小商品市场-25,服装-26,汽修零配-27, * 数码-28,小龙虾-29,火锅-51,其他-5) */ shopVo.setBusiness(merchant.getDdCcategory()); /** * 城市名称 * 达达:city_name 必传,城市名称(如,上海) */ shopVo.setCityName(shop.getCityName()); /** * 区域名称 * 达达:area_name 必传, 区域名称(如,浦东新区) */ shopVo.setAreaName(shop.getDistrictName()); /** * 门店地址 * 达达:station_address 必传,门店地址 */ shopVo.setShopAddress(poiAddress + shop.getAddress() + shop.getStreet()); /** *门店经度 * 达达:lng 必传,门店经度,店铺经度 */ shopVo.setShopLng(new BigDecimal(shop.getLng())); /** * 门店纬度 * 达达:lat 必传,门店纬度 */ shopVo.setShopLat(new BigDecimal(shop.getLat())); /** * 联系人姓名 * 达达:contact_name 必传 联系人姓名 */ shopVo.setContactName(shop.getContactName()); /** * 联系人电话 * 达达:phone 必传,联系人电话 */ shopVo.setContactPhone(shop.getMobile()); } else if (DeliveryTypeEnums.DADA_YZ.getType().equals(delivery.getType())) { shopVo.setLbClient(DeliveryTypeEnums.DADA_YZ.getName()); /** * 门店名称 * 达达:station_name,门店名称,必传 * */ shopVo.setShopName(shop.getName()); /** * 业务类型 * 达达:business,必传,业务类型 * (食品小吃-1,饮料-2,鲜花-3,文印票务-8,便利店-9,水果生鲜-13,同城电商-19, 医药-20,蛋糕-21,酒品-24,小商品市场-25,服装-26,汽修零配-27, * 数码-28,小龙虾-29,火锅-51,其他-5) */ shopVo.setBusiness(merchant.getDdCcategory()); /** * 城市名称 * 达达:city_name 必传,城市名称(如,上海) */ shopVo.setCityName(shop.getCityName()); /** * 区域名称 * 达达:area_name 必传, 区域名称(如,浦东新区) */ shopVo.setAreaName(shop.getDistrictName()); /** * 门店地址 * 达达:station_address 必传,门店地址 */ shopVo.setShopAddress(poiAddress + shop.getAddress() + shop.getStreet()); /** *门店经度 * 达达:lng 必传,门店经度,店铺经度 */ shopVo.setShopLng(new BigDecimal(shop.getLng())); /** * 门店纬度 * 达达:lat 必传,门店纬度 */ shopVo.setShopLat(new BigDecimal(shop.getLat())); /** * 联系人姓名 * 达达:contact_name 必传 联系人姓名 */ shopVo.setContactName(shop.getContactName()); /** * 联系人电话 * 达达:phone 必传,联系人电话 */ shopVo.setContactPhone(shop.getMobile()); } else if (DeliveryTypeEnums.SHAN_SONG.getType().equals(delivery.getType())) { shopVo.setLbClient(DeliveryTypeEnums.SHAN_SONG.getName()); /** * 门店名称 * 闪送:storeName门店名称,店铺名称 * */ shopVo.setShopName(shop.getName()); /** * 业务类型 * 闪送:goodType,必传,店铺业务类型 * 1-文件广告 3-电子产品 5-蛋糕 6-快餐水果 7-鲜花绿植 8-海鲜水产 9-汽车配件 10-其他 11-宠物 12-母婴 13-医药健康 14-教育 */ shopVo.setBusiness(merchant.getSsProductType()); /** * 城市名称 * 闪送:cityName 必传,城市名称(如,上海) */ shopVo.setCityName(shop.getCityName()); /** * 店铺地址 * 闪送:address 必传,店铺地址 */ shopVo.setShopAddress(poiAddress + shop.getAddress()); /** * 详细地址 * 闪送:addressDetail,门牌号 */ shopVo.setShopAddressDetail(shop.getStreet()); /** *门店经度 * 闪送:longitude必传,店铺经度 */ shopVo.setShopLng(new BigDecimal(shop.getLng())); /** * 门店纬度 * 达达:latitude 必传,店铺纬度 */ shopVo.setShopLat(new BigDecimal(shop.getLat())); /** * 联系人电话 * 达达:phone 必传,店铺联系人手机号/座机 */ shopVo.setContactPhone(shop.getMobile()); /** * 1.保存 2.更新,默认为1 */ shopVo.setOperationType(1); } else if (DeliveryTypeEnums.SHUN_FENG.getType().equals(delivery.getType())) { shopVo.setLbClient(DeliveryTypeEnums.SHUN_FENG.getName()); /** * 门店名称 * 顺丰:storeName门店名称,店铺名称 * */ shopVo.setShopName(shop.getName()); /** * 门店编码 * 顺丰 * 顺丰:out_shop_id,必传,第三⽅店铺id */ shopVo.setShopId(shop.getCode()); /** * 城市名称 * 顺丰:city_name 必传,城市名称 */ shopVo.setCityName(shop.getCityName()); /** * 业务类型 * 顺丰:shop_product_type,必传,店铺经营类型 * 1:快餐 2:药品 3:百货 4:脏⾐服收 5:⼲净⾐服派 6:⽣鲜 8:⾼端饮品 9:现场勘验 10:快递 12:⽂件 13:蛋糕 14:鲜花 15:数码 16:服装 17:汽配 18:珠宝 20:披萨 21:中餐 * 22:⽔产 27:专⼈直送 32:中端饮品 33:便利店 34:⾯包糕点 35:⽕锅 36:证照 40:烧烤⼩⻰虾 41:外部落地配 47:烟酒⾏ 48:成⼈⽤品 99:其他 */ shopVo.setBusiness(merchant.getSfProductType()); /** * 门店地址 * 顺丰:shop_address 必传,门店地址 */ shopVo.setShopAddress(poiAddress + shop.getAddress() + shop.getStreet()); /** *门店经度 * 顺丰:longitude 必传,门店经度 * */ shopVo.setShopLng(new BigDecimal(shop.getLng())); /** * 门店纬度 * 顺丰:latitude,必传,门店纬度 */ shopVo.setShopLat(new BigDecimal(shop.getLat())); /** * 联系人姓名 * 顺丰: shop_contact _name 必传 店铺联系人 */ shopVo.setContactName(shop.getContactName()); /** * 联系人电话 * 顺丰:shop_contact_phone 必传,店铺联系人电话 */ shopVo.setContactPhone(shop.getMobile()); /** * 负责人姓名 * 顺丰: account_contact_name 必传 负责人姓名 */ shopVo.setAccountContactName(shop.getLegalPerson()); /** * 负责人联系电话 * 顺丰:shop_contact_phone 必传,负责人联系电话 */ shopVo.setAccountContactPhone(shop.getDirectorMobile()); /** * 负责人身份证号 * 顺丰:account_id_card 必传 负责人身份证号 */ shopVo.setAccountIdCard(shop.getIdcardNo()); /** * 营业执照 * 顺丰:businessLicense 必传 营业执照 */ shopVo.setBusinessLicense(shop.getBizLicense()); /** * 卫生许可证 * 顺丰:health_permits 非必传 卫生许可证 */ shopVo.setFoodLicensePicHash(shop.getFoodLicensePic()); } else if (DeliveryTypeEnums.MEI_TUAN_ZB.getType().equals(delivery.getType())) { shopVo.setLbClient(DeliveryTypeEnums.MEI_TUAN_ZB.getName()); } else if (DeliveryTypeEnums.UUPT.getType().equals(delivery.getType())) { shopVo.setLbClient(DeliveryTypeEnums.UUPT.getName()); } else if (DeliveryTypeEnums.KUAI_FU.getType().equals(delivery.getType())) { shopVo.setLbClient(DeliveryTypeEnums.KUAI_FU.getName()); } else if (DeliveryTypeEnums.HUO_LA_LA.getType().equals(delivery.getType())) { shopVo.setLbClient(DeliveryTypeEnums.HUO_LA_LA.getName()); } else if (DeliveryTypeEnums.DWD.getType().equals(delivery.getType())) { shopVo.setLbClient(DeliveryTypeEnums.DWD.getName()); } else if (DeliveryTypeEnums.FENG_NIAO.getType().equals(delivery.getType())) { shopVo.setLbClient(DeliveryTypeEnums.FENG_NIAO.getName()); /** * 蜂鸟V3 * 蜂鸟V3:branch_shop_name 必传 门店分店名 */ shopVo.setHeadShopName(shop.getName()); /** * 蜂鸟V3 * 蜂鸟V3:branch_shop_name 必传 门店分店名 */ shopVo.setBranchShopName(shop.getName()); /** * 蜂鸟V3 * 外部门店编码 * 蜂鸟V3:out_shop_code 必传 外部门店编码 */ shopVo.setOutShopCode(shop.getCode()); /** * 蜂鸟,蜂鸟V3 * 门店类型 * 蜂鸟V3 chainstore_type 不必传, 1为正式门店,2为测试门店 不传时默认为1 */ shopVo.setShopType(1); /** * 品类 * 蜂鸟V3 * 蜂鸟V3:category_id 必传 门店类目 按二级类目表编码传入,二级类目表编码附表后 */ shopVo.setCategory(Integer.parseInt(merchant.getCategoryName())); /** * 门店地址 * 蜂鸟V3:address 必传,门店地址 */ shopVo.setShopAddress(poiAddress + shop.getAddress() + shop.getStreet()); /** *门店经度 * 蜂鸟V3:longitude 必传,门店经度 * */ shopVo.setShopLng(new BigDecimal(shop.getLng())); /** * 门店纬度 * 蜂鸟V3:latitude,必传,门店纬度 */ shopVo.setShopLat(new BigDecimal(shop.getLat())); /** * 联系人姓名 * 蜂鸟V3: owner_name 必传 门店拥有人姓名 */ shopVo.setContactName("殷宝珠"); /** * 联系人电话 * 蜂鸟V3:contact_phone 必传,门店联系方式 */ shopVo.setContactPhone(shop.getMobile()); /** * 蜂鸟V3 * 门店拥有人身份证号 * 蜂鸟V3:owner_id_num 必传 门店拥有人身份证号 */ shopVo.setOwnerIdNum("34252919570501502X"); /** * 蜂鸟V3 * 身份证正面 * 蜂鸟V3:owner_id_pic_front_hash 必传 身份证正面,调用图片上传接口后返回的id */ shopVo.setOwnerIdPicFrontHash("https://ecloud-cdn.51sssd.com/20210604/364b8355956740a281f676221d1a7a9b.jpg"); /** * 蜂鸟V3 * 门店拥有人手持身份证、营业执照图片 * 蜂鸟V3:handheld_licence_pic_hash 门店拥有人手持身份证、营业执照图片 * 调用图片上传接口后返回的id */ shopVo.setHandheldLicencePicHash("https://ecloud-cdn.51sssd.com/20210604/364b8355956740a281f676221d1a7a9b.jpg"); /** * 蜂鸟V3 * 身份证反面 * 蜂鸟V3:owner_id_pic_back_hash 必传 身份证反面,调用图片上传接口后返回的id */ shopVo.setOwnerIdPicBackHash("https://ecloud-cdn.51sssd.com/20210604/364b8355956740a281f676221d1a7a9b.jpg"); /** * 蜂鸟V3 * 统一社会信用代码 * 蜂鸟V3 credit_code 必传 统一社会信用代码 */ shopVo.setCreditCode("91320505MA22564J7P"); /** * 蜂鸟V3 * 营业执照图片 * 蜂鸟V3 business_licence_pic_hash 必传 营业执照图片 调用图片上传接口后返回的id */ shopVo.setBusinessLicencePicHash("https://ecloud-cdn.51sssd.com/20210604/364b8355956740a281f676221d1a7a9b.jpg"); /** * 蜂鸟V3, * 商户ID */ shopVo.setMerchantId(delivery.getShopId()); //"3640883"); /** * 闪送,蜂鸟V3 * 商户Token */ shopVo.setAccessToken(delivery.getAuthToken()); /** * 经营类目需要食品经营许可的必传 */ shopVo.setFoodLicensePicHash("https://ecloud-cdn.51sssd.com/20210604/364b8355956740a281f676221d1a7a9b.jpg"); } else if (DeliveryTypeEnums.MEI_TUAN.getType().equals(delivery.getType())){ shopVo.setLbClient(DeliveryTypeEnums.MEI_TUAN.getName()); /** * 门店编码 * 美团 * 美团:shop_id,必传,取货门店id,即合作方向美团提供的门店id */ shopVo.setShopId(shop.getCode()); /** * 门店名称 * 美团 * 美团:shop_name 必传,门店名称 说明:门店名称格式请按照 【XX品牌-XX店】填写,例:百果园-望京店,注:该名称需与实体门店门牌保持一致,保证骑手取货可确认门店 * 蜂鸟:chain_store_name 必传,门店名称(支持汉字、符号、字母的组合),门店名称重复时,请确保推单时带入合法且唯一的门店编码,否则将订单推送失败,蜂鸟配送开放平台无责。测试门店名称必须含有“测试”或“test”文字,正式门店名称不得含有“测试”或“test”文字!否则影响结算! */ shopVo.setShopName(shop.getName()); /** * 一级品类 * 美团 * 美团:category,必传,一级品类,见附件品类代码表 说明:品类需按门店真实配送品类选择 * */ String[] categorys = merchant.getMtCcategoryName().split(","); shopVo.setCategory(Integer.parseInt(categorys[0])); /** * 二级品类 * 美团 * 美团:second_category,必传,二级品类,见附件品类代码表 说明:品类需按门店真实配送品类选择 */ shopVo.setSecondCategory(Integer.parseInt(categorys[1])); /** * 联系人姓名 * 美团 * 美团:contact_name 必传,门店联系人姓名 */ shopVo.setContactName(shop.getContactName()); /** * 联系人电话 * 美团 * 美团:contact_phone 必传,联系电话 */ shopVo.setContactPhone(shop.getMobile()); /** * 门店地址 * 美团,蜂 * 美团:shop_address,必传,门店地址 */ shopVo.setShopAddress(poiAddress + shop.getAddress() + shop.getStreet()); /** * 详细地址 * 美团 * 美团:shop_address_detail,不必传,门牌号 */ // shopVo.setShopAddressDetail(""); /** *门店经度 * 美团 * 美团:shop_lng,必传,门店经度(高德), */ shopVo.setShopLng(new BigDecimal(shop.getLng())); /** * 门店纬度 * 美团 * 美团:shop_lat,必传,门店纬度(高德) */ shopVo.setShopLat(new BigDecimal(shop.getLat())); /** * 配送服务代码 * 美团 * 美团:delivery_service_codes 必传 * 配送服务代码,详情见合同 1)服务包 飞速达:4002 快速达:4011 及时达:4012 集中送:4013 跑腿B帮送:4031 例如:4011,4012(多个英文逗号隔开) 2)新服务产品 具体可参考新服务产品列表。(多个英文逗号隔开) * 默认光速达 光速达-45-> 100001,光速达-40->100000,光速达-50->100002,光速达-55->100003 */ shopVo.setDeliveryServiceCodes("100005");// 等确认后再改 /** * 营业时间 * 美团 * 美团:营业时间 例:[{"beginTime":"00:00","endTime":"24:00"}] 注:传入后美团根据区域可配送时间取交集时间作为门店配送时间 */ shopVo.setBusinessHours("[{\"beginTime\":\"00:00\",\"endTime\":\"24:00\"}]"); }else if (DeliveryTypeEnums.FENG_NIAO_PT.getType().equals(delivery.getType())) { shopVo.setLbClient(DeliveryTypeEnums.FENG_NIAO_PT.getName()); /** * 蜂鸟V3 * 蜂鸟V3:branch_shop_name 必传 门店分店名 */ shopVo.setHeadShopName(shop.getName()); /** * 蜂鸟V3 * 蜂鸟V3:branch_shop_name 必传 门店分店名 */ shopVo.setBranchShopName(shop.getName()); /** * 蜂鸟V3 * 外部门店编码 * 蜂鸟V3:out_shop_code 必传 外部门店编码 */ shopVo.setOutShopCode(shop.getCode()); /** * 蜂鸟,蜂鸟V3 * 门店类型 * 蜂鸟V3 chainstore_type 不必传, 1为正式门店,2为测试门店 不传时默认为1 */ shopVo.setShopType(1); /** * 品类 * 蜂鸟V3 * 蜂鸟V3:category_id 必传 门店类目 按二级类目表编码传入,二级类目表编码附表后 */ shopVo.setCategory(Integer.parseInt(merchant.getCategoryName())); /** * 门店地址 * 蜂鸟V3:address 必传,门店地址 */ shopVo.setShopAddress(poiAddress + shop.getAddress() + shop.getStreet()); /** *门店经度 * 蜂鸟V3:longitude 必传,门店经度 * */ shopVo.setShopLng(new BigDecimal(shop.getLng())); /** * 门店纬度 * 蜂鸟V3:latitude,必传,门店纬度 */ shopVo.setShopLat(new BigDecimal(shop.getLat())); /** * 联系人姓名 * 蜂鸟V3: owner_name 必传 门店拥有人姓名 */ shopVo.setContactName("殷宝珠"); /** * 联系人电话 * 蜂鸟V3:contact_phone 必传,门店联系方式 */ shopVo.setContactPhone(shop.getMobile()); /** * 蜂鸟V3 * 门店拥有人身份证号 * 蜂鸟V3:owner_id_num 必传 门店拥有人身份证号 */ shopVo.setOwnerIdNum("34252919570501502X"); /** * 蜂鸟V3 * 身份证正面 * 蜂鸟V3:owner_id_pic_front_hash 必传 身份证正面,调用图片上传接口后返回的id */ shopVo.setOwnerIdPicFrontHash("https://ecloud-cdn.51sssd.com/20210604/364b8355956740a281f676221d1a7a9b.jpg"); /** * 蜂鸟V3 * 门店拥有人手持身份证、营业执照图片 * 蜂鸟V3:handheld_licence_pic_hash 门店拥有人手持身份证、营业执照图片 * 调用图片上传接口后返回的id */ shopVo.setHandheldLicencePicHash("https://ecloud-cdn.51sssd.com/20210604/364b8355956740a281f676221d1a7a9b.jpg"); /** * 蜂鸟V3 * 身份证反面 * 蜂鸟V3:owner_id_pic_back_hash 必传 身份证反面,调用图片上传接口后返回的id */ shopVo.setOwnerIdPicBackHash("https://ecloud-cdn.51sssd.com/20210604/364b8355956740a281f676221d1a7a9b.jpg"); /** * 蜂鸟V3 * 统一社会信用代码 * 蜂鸟V3 credit_code 必传 统一社会信用代码 */ shopVo.setCreditCode("91320505MA22564J7P"); /** * 蜂鸟V3 * 营业执照图片 * 蜂鸟V3 business_licence_pic_hash 必传 营业执照图片 调用图片上传接口后返回的id */ shopVo.setBusinessLicencePicHash("https://ecloud-cdn.51sssd.com/20210604/364b8355956740a281f676221d1a7a9b.jpg"); /** * 蜂鸟V3, * 商户ID */ shopVo.setMerchantId(delivery.getShopId()); //"3640883"); /** * 闪送,蜂鸟V3 * 商户Token */ shopVo.setAccessToken(delivery.getAuthToken()); /** * 经营类目需要食品经营许可的必传 */ shopVo.setFoodLicensePicHash("https://ecloud-cdn.51sssd.com/20210604/364b8355956740a281f676221d1a7a9b.jpg"); } else if (DeliveryTypeEnums.MA_KE_PT.getType().equals(delivery.getType())) { shopVo.setLbClient(DeliveryTypeEnums.MA_KE_PT.getName()); shopVo.setShopName(shop.getName()); shopVo.setProvinceName(shop.getProvinceName()); shopVo.setCityName(shop.getCityName()); shopVo.setAreaName(shop.getDistrictName()); shopVo.setLbShopCode(shop.getCode()); shopVo.setShopAddress(poiAddress + shop.getAddress() + shop.getStreet()); shopVo.setShopLng(new BigDecimal(shop.getLng())); shopVo.setShopLat(new BigDecimal(shop.getLat())); shopVo.setContactPhone(shop.getMobile()); } return shopVo; } }