123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615 |
- 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;
- }
- }
|