Commit 555e2fa7 authored by liuyuzhen's avatar liuyuzhen

Merge branch 'master_dev' of git.shenbd.com:qm-develop/shenbd into lyz_version1

parents 4e02f53d 5fd280d9
......@@ -13,9 +13,21 @@ class StoreController extends \Our\Controller_AbstractIndex {
* 获取店铺首页头部
*/
public function getStoreInfoAction(){
$address = \Business\User\AddressServiceModel::getInstance()->getMyAddress($this->req[\Our\NameConst::data],$this->memberId,false);
$storeInfo = $this->storeService->getStoreInfo($this->req[\Our\NameConst::data],$this->memberId, $address);
$storeInfo['share'] = \Business\Common\CommonServiceModel::getInstance()->getShareInfo(\Our\ApiConst::shareStore,$this->req[\Our\NameConst::data]['storeId']);
//获取地址相关信息
$data = $this->req[\Our\NameConst::data];
$addressService = \Business\User\AddressServiceModel::getInstance();
$memberId=$this->sess->get('member_id');
$currentAddress =$addressService->setAddress($data,$memberId);
if(!isset($currentAddress['addresses'])){
$currentAddress['addresses'] = array();
}
//$returnData['currentAddress'] = $currentAddress;
$address = $addressService->getMyAddress($data,$this->memberId,false);
$storeInfo = $this->storeService->getStoreInfo($data,$this->memberId, $address);
$storeInfo['share'] = \Business\Common\CommonServiceModel::getInstance()->getShareInfo(\Our\ApiConst::shareStore,$data['storeId']);
$storeInfo['currentAddress'] = $currentAddress;
$this->success($storeInfo);
}
/**
......
......@@ -147,7 +147,9 @@ class ApiConst
const orderStateWaitPay = 10;//待付款
const orderStateWaitConfirm = 20;//待接单
const orderStateWaitSend = 25;//待发货
const orderStateWaitSendOne = 26;//待发货
const orderStateWaitRecieve = 30;//待收货
const orderStateWaitRecieveOne = 31;//待收货
const orderStateComplete = 40;//已完成
const orderStateClose = -1;//关闭定单
const receivePayment = 1;//商家收到货款了
......
......@@ -111,6 +111,7 @@ class ImageConst{
const groupGoodsImg = 160; //组合详情页的搭配商品
const storeGroupImg = 186; //店铺促销
const storeGroupGoodsImg = 130;
const salestoreImg = 129;//销售详情店铺头像
const cartBlImage = 184;
const cartBlDetailImage = 148;
......
......@@ -117,8 +117,8 @@ class ImageUtil {
* @return mixed|string 返回图片路径
*/
public static function getGoodsImgUrl($goodsImg,$width=\Our\ImageConst::goodsListImgSize, $height = 0){
$width = $width * \Our\ImageConst::sizeScale;
$height ? $height = $height * \Our\ImageConst::sizeScale : $height = $width;
$width = ceil($width * \Our\ImageConst::sizeScale);
$height ? $height = ceil($height * \Our\ImageConst::sizeScale) : $height = $width;
if (empty($goodsImg)) {
$directory =\Our\ImageConst::defaultPath;
//$goodsImg = str_ireplace('.', '_' . $type . '.', 'default_goods_image.gif');
......
......@@ -13,7 +13,7 @@ class OrderConst {
const waitRecieve="待收货";
const waitPay="待付款";
const waitYouPay="等待您付款";
const waitSend="待发货";
const waitSend="配送中";
const waitSellerSend="等待卖家发货";
const sellerSended="商家已发货";
const waitGetFromShop="待到店自取";
......
......@@ -369,7 +369,7 @@ class GoodsCommonServiceModel extends \Business\AbstractModel
$in_store_service_flag=0;
if($lng && $lat){
$location = array('lat'=>$lat,'lng'=>$lng);
$in_store_service = \Store\StoreUtil::getInstance()->checkAddressInServiceArea($location,$storeId);
$in_store_service = \Store\StoreUtil::getInstance()->checkAddressInServiceArea($location,$commonInfo['store_id']);
$in_store_service && $in_store_service_flag = 1;
}
//所在地
......@@ -414,7 +414,7 @@ class GoodsCommonServiceModel extends \Business\AbstractModel
$html = array('width'=>750,'height'=>$commonInfo['goods_height'],'url'=>\Our\Common::getBaseUrl().'/index/goodsDetail?goodsCommonId='.$goodsCommonId);
if($commonInfo['is_del'] == 1) $commonInfo['goods_state'] = 0;
unset($attrs['commonInfo']);
return array_merge(array('storeId'=>$commonInfo['store_id'],'goodsId'=>$commonInfo['goodsId'],'goodsName'=>$commonInfo['goods_name'],'goodsVerify'=>$commonInfo['goods_verify'],'goodsState'=>$commonInfo['goods_state'],'saleCount'=>$commonInfo['sale_num'],'collectionState'=>$collectionState,'isOwn'=>$isOwn,'isHot'=>$commonInfo['goods_hot'],'isRecoment'=>$commonInfo['goods_commend'],'isFree'=>$commonInfo['goods_free'],'isVirtual'=>$commonInfo['is_virtual'],'goodsMostLimit'=>$commonInfo['goods_most_limit'],'goodsLeastLimit'=>$commonInfo['goods_least_limit'],'goodsTotalLimit'=>$commonInfo['goods_total_limit'],'address'=>$area,'range'=>$rangePrice,'productData'=>$productData,'htmlContent'=>$html,'videoUrl'=>$commonInfo['goods_youku_url'],'inStoreService'=>$in_store_service_flag),$attrs);
return array_merge(array('storeId'=>$commonInfo['store_id'],'goodsId'=>$commonInfo['goodsId'],'goodsName'=>$commonInfo['goods_name'],'goodsVerify'=>$commonInfo['goods_verify'],'goodsState'=>$commonInfo['goods_state'],'saleCount'=>$commonInfo['sale_num'],'collectionState'=>$collectionState,'isOwn'=>$isOwn,'isHot'=>$commonInfo['goods_hot'],'isRecoment'=>$commonInfo['goods_commend'],'isFree'=>$commonInfo['goods_free'],'isVirtual'=>$commonInfo['is_virtual'],'goodsMostLimit'=>$commonInfo['goods_most_limit'],'goodsLeastLimit'=>$commonInfo['goods_least_limit'],'goodsTotalLimit'=>$commonInfo['goods_total_limit'],'address'=>$area,'range'=>$rangePrice,'productData'=>$productData,'htmlContent'=>$html,'videoUrl'=>$commonInfo['goods_youku_url'],'subheading'=>$commonInfo['goods_jingle'],'inStoreService'=>$in_store_service_flag),$attrs);
}
public function getAttr($goodsCommonId,$memberId = null){
$goodsCommonId = (int)$goodsCommonId;
......
......@@ -122,16 +122,17 @@ class OrderServiceModel extends \Business\AbstractModel
if ($orderState != false) {
if($orderState==ApiConst::orderStateComplete){
$where['evaluation_state']=ApiConst::waitEvaluation;
$where['order_state']=array('eq',ApiConst::orderStateComplete);
}
// if($orderState==ApiConst::orderStateWaitRecieve){
// $where['shipping_type']=array('eq',ApiConst::bySeller);
// $where['order_state'] =array('in',array(ApiConst::orderStateWaitSend,ApiConst::orderStateWaitRecieve));
// }
// if($orderState==ApiConst::orderStateWaitSend){
// $where['shipping_type']=array('eq',ApiConst::bySelf);
// $where['order_state']=array('eq',ApiConst::orderStateWaitRecieve);
// }
$where['order_state'] = array('in', explode(',', $orderState));
if($orderState==ApiConst::orderStateWaitRecieveOne){
$where['shipping_type']=array('eq',ApiConst::bySeller);
$where['order_state'] =array('in',array(ApiConst::orderStateWaitSend,ApiConst::orderStateWaitRecieve));
}
if($orderState==ApiConst::orderStateWaitSendOne){
$where['shipping_type']=array('eq',ApiConst::bySelf);
$where['order_state']=array('eq',ApiConst::orderStateWaitRecieve);
}
// $where['order_state'] = array('in', explode(',', $orderState));
}
}
......@@ -240,6 +241,9 @@ class OrderServiceModel extends \Business\AbstractModel
$goodsDao = \DAO\GoodsModel::getInstance(DbNameConst::salveDBConnectName);
//订单
$order = \Our\RedisHelper::cachedFunction(\Redis\Db5\OrderRedisModel::getInstance(), array(&$orderDao, 'findByOrderId'), array($orderId), \Our\ApiConst::oneDaySecond,array($orderId));
if(!$order){
ErrorModel::throwException(CodeConfigModel::orderNotExist);
}
$fields = $orderDao->getFields();
$this->order = $orderDao->getConvertOrder($order, $fields);
//收货人地址
......@@ -272,6 +276,7 @@ class OrderServiceModel extends \Business\AbstractModel
$returnData['shippingName'] = $orderDao->getShippingName($returnData['shippingType']);
$returnData['orderMessage'] = $this->orderCommon['orderMessage'];
$returnData['shippingFeeName'] = $orderDao->getFreightFeeName($returnData['shippingType']);
$returnData['dlyoPickupCode'] = intval(substr($returnData['orderSn'], ApiConst::positionPickupCodeBegin));
$returnData['paymentName'] = $orderDao->getPayTypeName($returnData['paymentType']);
$returnData['discountAmount'] = $returnData['goodsAmount'] - $returnData['orderAmount'] + $returnData['shippingFee'];
$returnData['orderText'] = $orderDao->getStatusDetailText($this->order);
......
......@@ -311,6 +311,7 @@ class ShopkeeperServiceModel extends \Business\AbstractModel
// $value['orderAmount'] = $value['orderAmount'];
$value['reciverInfo'] = unserialize($value['reciverInfo']);
$value['reciverInfo'] =$orderCommonDao->getReciverInfo( $value['reciverInfo'] );
$value['dlyoPickupCode'] = intval(substr($value['orderSn'], ApiConst::positionPickupCodeBegin));
$value['deliveryTimeEnd'] = $value['deliveryTime'] + ApiConst::arriveTimeRadius;
if ($value['diliverymanId']) {
......
......@@ -48,7 +48,12 @@ class StoreServiceModel extends \Business\AbstractModel{
$storeMember['fav_type'] = \Our\ApiConst::one;
$storeMembers[] = $storeMember;
$favoritesStoreDao = \DAO\FavoritesStoreModel::getInstance();
$one = $favoritesStoreDao->selectList(array('store_id'=>$storeId,'member_id'=>$memberId,'fav_type'=>0),'store_id');
$one && $storeIds = array($one['store_id']);
$result = $favoritesStoreDao->insertAll($storeMembers);
if($result) {
$favoritesStoreDao->updateStoreCollecitonsCache($storeIds,$memberId,2);
}
$favoritesDao = \DAO\FavoritesStoreModel::getInstance();
\Our\RedisHelper::delCachedFunction(\Redis\Db6\FavoritesStoreRedisModel::getInstance(),array(&$favoritesDao, 'getOne'),array(),array($memberId));
}else{
......@@ -361,16 +366,14 @@ class StoreServiceModel extends \Business\AbstractModel{
}
$FavoritesStoreInstance = \DAO\FavoritesStoreModel::getInstance();
$return = $FavoritesStoreInstance->insertOrUpdate(array('member_id'=>$memberId,'store_id'=>$storeId,'fav_time'=>time()));
$one = $FavoritesStoreInstance->getOne('store_id',array('store_id'=>$storeId,'member_id'=>$memberId,'fav_type'=>1));
if($one) {
return true;
}
$return = $FavoritesStoreInstance->insertOrUpdate(array('member_id'=>$memberId,'store_id'=>$storeId,'fav_time'=>time(),'fav_type'=>1,'fav_from'=>1));
if((int)$return > 0){
//更新店铺收藏数
$FavoritesStoreInstance->getFavoritesStoreCountByStoreId($storeId, 1);
//删除缓存
\Our\RedisHelper::delCachedFunction(\Redis\Db6\FavoritesStoreRedisModel::getInstance(),array(&$FavoritesStoreInstance, 'getOne'),array('*',array('store_id'=>$storeId,'member_id'=>$memberId)),array($memberId));
\Our\RedisHelper::delCachedFunction(\Redis\Db6\FavoritesStoreRedisModel::getInstance(),array(&$FavoritesStoreInstance, 'getList'),array(),array($memberId));
//更新个人中心首页数量
\DAO\MemberModel::getInstance()->_changeNum(\Our\NameConst::storeCollection,$memberId);
$FavoritesStoreInstance->updateStoreCollecitonsCache(array($storeId),$memberId,2);
return true;
}
}
......
......@@ -58,7 +58,7 @@ class MemberCenterServiceModel extends \Business\AbstractModel
public function getMessageSet($memberId){
$memberInfo = \DAO\MemberModel::getInstance()->getInfo($memberId);
// $pushSet=array();
// $pushSet=array();
if(!empty($memberInfo['pushSet'])){
$pushSet=unserialize($memberInfo['pushSet']);
$pushSet=array(
......@@ -101,38 +101,39 @@ class MemberCenterServiceModel extends \Business\AbstractModel
$memberCenter[NameConst::goodsCollection] = \DAO\FavoritesModel::getInstance()->getFavoritesCountWithCommon(null, $memberId);
//足迹数量
$memberCenter[NameConst::footprint] = \DAO\GoodsBrowseModel::getInstance()->getBrowseCount(array('member_id'=>$memberId));
$memebrCenterDb1Redis->tableHMSet($memberId,$memberCenter);
$memebrCenterDb1Redis->tableHMSet($memberId,$memberCenter,\Our\ApiConst::sevenDaySecond);
}else{
if($memebrCenterDb1Redis->tableHExists($memberId,NameConst::footprint) === false){
$memberCenter[NameConst::footprint] = \DAO\GoodsBrowseModel::getInstance()->getBrowseCount(array('member_id'=>$memberId));
$memebrCenterDb1Redis->tableHSet($memberId,NameConst::footprint,$memberCenter[NameConst::footprint]);
$memebrCenterDb1Redis->tableHSet($memberId,NameConst::footprint,$memberCenter[NameConst::footprint],\Our\ApiConst::sevenDaySecond);
}
if($memebrCenterDb1Redis->tableHExists($memberId,NameConst::goodsCollection) === false){
$memberCenter[NameConst::goodsCollection] = \DAO\FavoritesModel::getInstance()->getFavoritesCountWithCommon(null, $memberId);
$memebrCenterDb1Redis->tableHSet($memberId,NameConst::goodsCollection,$memberCenter[NameConst::goodsCollection]);
$memebrCenterDb1Redis->tableHSet($memberId,NameConst::goodsCollection,$memberCenter[NameConst::goodsCollection],\Our\ApiConst::sevenDaySecond);
}
if($memebrCenterDb1Redis->tableHExists($memberId,NameConst::waitPay) === false){
$memberCenter[NameConst::waitPay] = \DAO\Order\OrderModel::getInstance()->getCount(array('order_state'=>ApiConst::orderStateWaitPay,'buyer_id'=>$memberId));
$memebrCenterDb1Redis->tableHSet($memberId,NameConst::waitPay,$memberCenter[NameConst::waitPay]);
$memebrCenterDb1Redis->tableHSet($memberId,NameConst::waitPay,$memberCenter[NameConst::waitPay],\Our\ApiConst::sevenDaySecond);
}
if($memebrCenterDb1Redis->tableHExists($memberId,NameConst::waitShipments) === false){
$memberCenter[NameConst::waitShipments] = \DAO\Order\OrderModel::getInstance()->getCount(array('order_state'=>ApiConst::orderStateWaitSend,'buyer_id'=>$memberId));
$memebrCenterDb1Redis->tableHSet($memberId,NameConst::waitShipments,$memberCenter[NameConst::waitShipments]);
$memebrCenterDb1Redis->tableHSet($memberId,NameConst::waitShipments,$memberCenter[NameConst::waitShipments],\Our\ApiConst::sevenDaySecond);
}
if($memebrCenterDb1Redis->tableHExists($memberId,NameConst::waitReceiving) === false){
$memberCenter[NameConst::waitReceiving] = \DAO\Order\OrderModel::getInstance()->getCount(array('order_state'=>ApiConst::orderStateWaitRecieve,'buyer_id'=>$memberId));
$memebrCenterDb1Redis->tableHSet($memberId,NameConst::waitReceiving,$memberCenter[NameConst::waitReceiving]);
$memebrCenterDb1Redis->tableHSet($memberId,NameConst::waitReceiving,$memberCenter[NameConst::waitReceiving],\Our\ApiConst::sevenDaySecond);
}
if($memebrCenterDb1Redis->tableHExists($memberId,NameConst::waitSelfLifting) === false){
$memberCenter[NameConst::waitSelfLifting] = \DAO\Order\OrderModel::getInstance()->getCount(array('order_state'=>ApiConst::orderStateComplete,'buyer_id'=>$memberId,'evaluation_state'=>ApiConst::waitEvaluation));
$memebrCenterDb1Redis->tableHSet($memberId,NameConst::waitSelfLifting,$memberCenter[NameConst::waitSelfLifting]);
$memebrCenterDb1Redis->tableHSet($memberId,NameConst::waitSelfLifting,$memberCenter[NameConst::waitSelfLifting],\Our\ApiConst::sevenDaySecond);
}
if($memebrCenterDb1Redis->tableHExists($memberId,NameConst::waitEvaluate) === false){
$memberCenter[NameConst::waitEvaluate] = \DAO\Order\OrderModel::getInstance()->getCount(array('order_state'=>ApiConst::orderStateComplete,'buyer_id'=>$memberId,'evaluation_state'=>ApiConst::waitEvaluation));
$memebrCenterDb1Redis->tableHSet($memberId,NameConst::waitEvaluate,$memberCenter[NameConst::waitEvaluate]);
$memebrCenterDb1Redis->tableHSet($memberId,NameConst::waitEvaluate,$memberCenter[NameConst::waitEvaluate],\Our\ApiConst::sevenDaySecond);
}
if($memebrCenterDb1Redis->tableHExists($memberId,NameConst::refund) === false){
$memberCenter[NameConst::refund] = \DAO\Order\RefundReturnModel::getInstance()->getCount('refund_state != '.ApiConst::refundStateComplete.' AND buyer_id = '.$memberId);
$memebrCenterDb1Redis->tableHSet($memberId,NameConst::refund,$memberCenter[NameConst::refund],\Our\ApiConst::sevenDaySecond);
}
foreach ($memberCenter as &$v){
$v = (int)$v;
......@@ -150,30 +151,46 @@ class MemberCenterServiceModel extends \Business\AbstractModel
* @throws \Our\Exception
*/
public function getStores($param,$memberId){
$pageSize = intval($param['pageSize']);
$pageIndex = intval($param['pageIndex']);
if($pageSize === 0){
\Error\ErrorModel::throwException(\Error\CodeConfigModel::commonError);
}
$pageIndex=$pageIndex+\Our\ApiConst::one;
$keyword = trim($param['keyword']);
// $pageSize = intval($param['pageSize']);
// $pageIndex = intval($param['pageIndex']);
// if($pageSize === 0){
// \Error\ErrorModel::throwException(\Error\CodeConfigModel::commonError);
// }
// $pageIndex=$pageIndex+\Our\ApiConst::one;
// $keyword = trim($param['keyword']);
$memberCenter = $this->getStatistics($memberId);
$totalCount = (int)$memberCenter['storeCollection'];
$field = 'evaluation_score,evaluation_number,han_store_score_statistics.store_collect,store_name,store_label,han_store.store_id,favid';
$param['keyword'] && $where = "store_name like '%{$param['keyword']}%'";
// $memberCenter = $this->getStatistics($memberId);
// $totalCount = (int)$memberCenter['storeCollection'];
//
// $field = 'evaluation_score,evaluation_number,han_store_score_statistics.store_collect,store_name,store_label,han_store.store_id,favid';
// $param['keyword'] && $where = "store_name like '%{$param['keyword']}%'";
//$list = \DAO\FavoritesStoreModel::getInstance()->getList($where,$field,$pageIndex,$pageSize,$memberId);
$favoritesInstance = \DAO\FavoritesStoreModel::getInstance();
$list = \Our\RedisHelper::cachedFunction(\Redis\Db6\FavoritesStoreRedisModel::getInstance(),array(&$favoritesInstance, 'getList'),array($where,$field,$pageIndex,$pageSize,$memberId),\Our\ApiConst::oneDaySecond,array($memberId));
$stores = array();
if(is_array($list) && !empty($list)){
foreach ($list as $v){
$v['evaluation_score'] ? $grade = number_format(($v['evaluation_score']/3/$v['evaluation_number']),1,'.',''):$grade = '5.0';
$stores[] = array('favid'=>$v['favid'],'storeId'=>$v['store_id'],'storeLabel'=>\DAO\StoreModel::getInstance()->getStoreLabelSrc($v['store_label'],\Our\ImageConst::storeCollectionImg),'storeName'=>$v['store_name'],'grade'=>$grade,'collectCount'=>$favoritesInstance->getFavoritesStoreCountByStoreId($v['store_id']));
$list = $favoritesInstance->getFavoritesStores(array('member_id'=>$memberId,'fav_type'=>1),'fav_from,store_id,favid');
$brandsAround = [];
$concernedShops = [];
$returnStores = [];
if($list) {
$storeIds = array_column($list,'store_id');
$storeIds = implode(',',$storeIds);
$where =\Our\Common::format(" store_id in({0})",$storeIds);
$storeScores = \DAO\StoreScoreStatisticsModel::getInstance()->getStoreScoreStatistics($where,'store_id,evaluation_score,evaluation_number');
$list = \Our\Common::intergrateOneToOne($list, $storeScores, 'store_id', 'store_id');
$stores = \DAO\StoreModel::getInstance()->getStores($where,'store_id,store_label,store_name');
$list = \Our\Common::intergrateOneToOne($list, $stores, 'store_id', 'store_id');
foreach ($list as $v) {
$grade = isset($v['evaluation_score']) ? number_format(($v['evaluation_score']/3/$v['evaluation_number']),1,'.',''):'5.0';
$tempStore = array('favId'=>$v['favid'],'storeId'=>$v['store_id'],'storeLabel'=>\DAO\StoreModel::getInstance()->getStoreLabelSrc($v['store_label'],\Our\ImageConst::storeCollectionImg),'storeName'=>$v['store_name'],'grade'=>$grade,'collectCount'=>$favoritesInstance->getFavoritesStoreCountByStoreId($v['store_id']));
if($v['fav_from'] == 1) {
$concernedShops[] = $tempStore;
}elseif($v['fav_from'] == 3){
$brandsAround[] = $tempStore;
}
$returnStores[] = $tempStore;
}
}
return array('stores'=>$stores,'totalCount'=>$totalCount);
return array('concernedShop'=>$concernedShops,'brandsAround'=>$brandsAround,'stores'=>$returnStores,'totalCount'=>count($stores));
}
/**
......@@ -197,7 +214,7 @@ class MemberCenterServiceModel extends \Business\AbstractModel
$list = $FavoritesStoreInstance->selectList(array('store_id'=>array('in',$ids),'member_id'=>$memberId,'fav_type'=>1),'store_id');
if($list) {
$storeIds = array_column($list, 'store_id');
$return = $FavoritesStoreInstance->update(array('fav_type'=>0),'store_id in ('.implode(',',$ids).')',true,$memberId);
$return = $FavoritesStoreInstance->update(array('fav_type'=>0,'fav_from'=>0),'store_id in ('.implode(',',$ids).')',true,$memberId);
}
}else{
if(strpos($ids,']') !== false ) {
......@@ -205,14 +222,14 @@ class MemberCenterServiceModel extends \Business\AbstractModel
$list = $FavoritesStoreInstance->selectList(array('store_id'=>array('in',$ids),'member_id'=>$memberId,'fav_type'=>1),'store_id');
if($list) {
$storeIds = array_column($list, 'store_id');
$return = $FavoritesStoreInstance->update(array('fav_type'=>0),'store_id in ('.implode(',',$ids).')',true,$memberId);
$return = $FavoritesStoreInstance->update(array('fav_type'=>0,'fav_from'=>0),'store_id in ('.implode(',',$ids).')',true,$memberId);
}
}else{
$ids = intval($ids);
$one = $FavoritesStoreInstance->getOne('store_id',array('store_id'=>$ids,'member_id'=>$memberId,'fav_type'=>1));
if($one) {
$storeIds = array($one['store_id']);
$return = $FavoritesStoreInstance->update(array('fav_type'=>0),array('store_id'=>$ids,'member_id'=>$memberId));
$return = $FavoritesStoreInstance->update(array('fav_type'=>0,'fav_from'=>0),array('store_id'=>$ids,'member_id'=>$memberId));
}
}
......@@ -220,26 +237,8 @@ class MemberCenterServiceModel extends \Business\AbstractModel
if($return === false) {
\Error\ErrorModel::throwException(\Error\CodeConfigModel::commonError);
}
if(($return = (int)$return) > 0){
//删除缓存
foreach ($storeIds as $storeId) {
//更新店铺收藏数
$FavoritesStoreInstance->getFavoritesStoreCountByStoreId($storeId, -1);
}
if(is_array($ids) && count($ids) <= 20){
foreach ($ids as $v){
\Our\RedisHelper::delCachedFunction(\Redis\Db6\FavoritesStoreRedisModel::getInstance(),array(&$FavoritesStoreInstance, 'getOne'),array('*',array('store_id'=>$v,'member_id'=>$memberId)),array($memberId));
}
}elseif (!is_array($ids)){
\Our\RedisHelper::delCachedFunction(\Redis\Db6\FavoritesStoreRedisModel::getInstance(),array(&$FavoritesStoreInstance, 'getOne'),array('*',array('store_id'=>$ids,'member_id'=>$memberId)),array($memberId));
}else{
\Our\RedisHelper::delCachedFunction(\Redis\Db6\FavoritesStoreRedisModel::getInstance(),array(&$FavoritesStoreInstance, 'getOne'),array(),array($memberId));
}
\Our\RedisHelper::delCachedFunction(\Redis\Db6\FavoritesStoreRedisModel::getInstance(),array(&$FavoritesStoreInstance, 'getList'),array(),array($memberId));
//更新个人中心首页数量
\DAO\MemberModel::getInstance()->_changeNum(\Our\NameConst::storeCollection,$memberId,-$return);
return true;
}
$FavoritesStoreInstance->updateStoreCollecitonsCache($storeIds, $memberId);
return true;
}
/**
......@@ -271,8 +270,8 @@ class MemberCenterServiceModel extends \Business\AbstractModel
if(is_array($list) && !empty($list)){
foreach ($list as $v){
//if($stores['store_id'] && $stores['store_id']['open_flag'] == 1 && $stores['store_id']['store_state'] == 1) {
$goods[] = array('favid'=>$v['favid'],'goodsCommonId'=>$v['goods_commonid'],'goodsImage'=>\Our\ImageUtil::getGoodsImgUrl($v['goods_image'],\Our\ImageConst::goodsCollectionImgSize),'goodsName'=>$v['goods_name'],'goodsPrice'=>$v['goods_price'],'goodsId'=>$v['goods_id']);
// }
$goods[] = array('favid'=>$v['favid'],'goodsCommonId'=>$v['goods_commonid'],'goodsImage'=>\Our\ImageUtil::getGoodsImgUrl($v['goods_image'],\Our\ImageConst::goodsCollectionImgSize),'goodsName'=>$v['goods_name'],'goodsPrice'=>$v['goods_price'],'goodsId'=>$v['goods_id']);
// }
}
if($where) {
$totalCount = $favoritesInstance->getFavoritesCountWithCommon($where, $memberId);
......
......@@ -356,11 +356,15 @@ class MemberServiceModel extends \Business\AbstractModel
/*$storeMemberDao = \DAO\StoreMemberModel::getInstance(\Our\DbNameConst::masterDBConnectName);
$result = $storeMemberDao->addBatch($storeMember);*/
$favoritesStoreDao = \DAO\FavoritesStoreModel::getInstance();
$storeIds = array_column($scan_store_ids,'store_id');
$list = $favoritesStoreDao->selectList(array('store_id'=>array('in',$storeIds),'member_id'=>$memberId,'fav_type'=>0),'store_id');
$list && $storeIds = array_column($list, 'store_id');
$result = $favoritesStoreDao->insertAll($storeMembers);
if(!$result){
\Our\Log::getInstance()->write(json_encode($storeMembers).'扫码数据写入失败');
return false;
}
$favoritesStoreDao->updateStoreCollecitonsCache($storeIds,$memberId,2);
$favoritesDao = \DAO\FavoritesStoreModel::getInstance();
\Our\RedisHelper::delCachedFunction(\Redis\Db6\FavoritesStoreRedisModel::getInstance(),array(&$favoritesDao, 'getOne'),array(),array($memberId));
}
......
......@@ -80,6 +80,8 @@ class SalespersonServiceModel extends \Business\AbstractModel
$orderGoodsList = \Our\RedisHelper::cachedFunction(\Redis\Db1\SaleOrderRedisModel::getInstance(),array(&$saleOrderDAO, 'getOrderGoodsList'),array("sale_act_id in(".implode(',',$saleActArr).") AND sale_id = {$memberId} AND goods_id in(".implode(',',$goodsIds).")",'sum(goods_num) AS goodsCount,goods_name AS goodsName,goods_image AS goodsImage,goods_id AS goodsId,sale_act_id','goods_id',[],'sale_act_id'),\Our\ApiConst::halfDaySecond,array($memberId));
$existIds = [];
$storeModelDAO = \DAO\StoreModel::getInstance();
//数据处理
if($orderGoodsList && is_array($orderGoodsList)) {
foreach ($orderGoodsList as $v){
$existIds[] = $v['goodsId'];
......@@ -96,16 +98,18 @@ class SalespersonServiceModel extends \Business\AbstractModel
if(key_exists($v['sale_act_id'],$acts)){
array_push($acts[$v['sale_act_id']]['goods'],$goods);
}else{
$storeInfo = $storeModelDAO->getStoreInfoCache($actList[$v['sale_act_id']]['store_id']);
$storeLabel = $storeModelDAO->getStoreLabelSrc($storeInfo['store_label'],\Our\ImageConst::salestoreImg);
$qrCode = \Our\Common::getStaticFile($tempActs[$v['sale_act_id']],\Our\ImageConst::salesmanQr);
$hashData[$v['sale_act_id']][$v['sale_act_id'].'_'.$memberId] = $qrCode;
$acts[$v['sale_act_id']] = [
'storeId'=>$actList[$v['sale_act_id']]['store_id'],
'storeName'=>$actList[$v['sale_act_id']]['store_name'],
'storeName'=>$storeInfo['store_name'],
'actId'=>$v['sale_act_id'],
'actName'=>$actList[$v['sale_act_id']]['sale_title'],
'qrCode'=>$qrCode,
'memberName'=>$memberName,
'memberAvatarUrl'=>$memberAvatarUrl,
'memberName'=>$storeInfo['store_name'],
'memberAvatarUrl'=>$storeLabel,
'goods'=>$goods ? array($goods) : $goods
];
}
......@@ -113,6 +117,7 @@ class SalespersonServiceModel extends \Business\AbstractModel
}
if(is_array($goodsIds) && $goodsIds) {
foreach ($goodsIds as $id){
//没有销售量的商品,即在sale_order表中不存在数据的商品
if(!in_array($id,$existIds)){
if($goodsList[$id]) {
$data = [
......@@ -129,15 +134,17 @@ class SalespersonServiceModel extends \Business\AbstractModel
if(key_exists($saleGoods[$id],$acts)){
array_push($acts[$saleGoods[$id]]['goods'],$data);
}else{
$storeInfo = $storeModelDAO->getStoreInfoCache($actList[$saleGoods[$id]]['store_id']);
$storeLabel = $storeModelDAO->getStoreLabelSrc($storeInfo['store_label'],\Our\ImageConst::salestoreImg);
$qrCode = \Our\Common::getStaticFile($tempActs[$saleGoods[$id]],\Our\ImageConst::salesmanQr);
$acts[$saleGoods[$id]] = [
'storeId'=>$actList[$saleGoods[$id]]['store_id'],
'storeName'=>$actList[$saleGoods[$id]]['store_name'],
'storeName'=>$storeInfo['store_name'],
'actId'=>$saleGoods[$id],
'actName'=>$actList[$saleGoods[$id]]['sale_title'],
'qrCode'=>$qrCode,
'memberName'=>$memberName,
'memberAvatarUrl'=>$memberAvatarUrl,
'memberName'=>$storeInfo['store_name'],
'memberAvatarUrl'=>$storeLabel,
'goods'=>$data ? array($data) : $data
];
$hashData[$saleGoods[$id]][$saleGoods[$id].'_'.$memberId] = $qrCode;
......@@ -231,15 +238,18 @@ class SalespersonServiceModel extends \Business\AbstractModel
$qrcode = \Redis\Db1\SaleOrderRedisModel::getInstance()->tableHGet('orderGoods_'.$actId,$actId.'_'.$memberId);
$goods = \Redis\Db1\SaleOrderRedisModel::getInstance()->tableHGet('orderGoods_'.$actId,$actId.'_'.$memberId.'_'.$goodsId);
}
$storeModelDAO = \DAO\StoreModel::getInstance();
if($act && $qrcode && $goods) {
$act = unserialize($act);
$goods = unserialize($goods);
$storeInfo = $storeModelDAO->getStoreInfoCache($act['store_id']);
$storeLabel = $storeModelDAO->getStoreLabelSrc($storeInfo['store_label'],\Our\ImageConst::salestoreImg);
$info['storeId'] = $act['store_id'];
$info['storeName'] = $act['store_name'];
$info['storeName'] = $storeInfo['store_name'];
$info['actName'] = $act['sale_title'];
$info['qrCode'] = $qrcode;
$info['memberName'] = $memberName;
$info['memberAvatarUrl'] = $memberAvatarUrl;
$info['memberName'] = $storeInfo['store_name'];
$info['memberAvatarUrl'] = $storeLabel;
$info = array_merge($info,$goods);
}else{
\Error\ErrorModel::throwException(\Error\CodeConfigModel::saleActOrGoodsNotExist);
......
......@@ -27,7 +27,10 @@ class FavoritesStoreModel extends \DAO\AbstractModel {
public function init(){
}
public function getFavoritesStores($where,$field) {
$this->setDb($this->dbName);
return $this->db->select($field)->where($where)->from($this->_tableName)->order('fav_time','DESC')->fetchAll();
}
public function getList($where,$field,$pageIndex,$pageSize,$memberId){
$this->setDb($this->dbName);
return $this->db->select($field)->from($this->_tableName)->join('han_store',"han_favorites_store.store_id = han_store.store_id",'inner')->join('han_store_score_statistics',"han_favorites_store.store_id = han_store_score_statistics.store_id",'left')->where(['han_favorites_store.member_id'=>$memberId,'fav_type'=>1])->where($where)->page($pageIndex,$pageSize)->order('fav_time','DESC')->fetchAll();
......@@ -108,8 +111,8 @@ class FavoritesStoreModel extends \DAO\AbstractModel {
public function insertOrUpdate($data){
$this->setDb(\Our\DbNameConst::masterDBConnectName);
$baseSql = "insert into {$this->_tableName}(member_id,store_id,fav_type,fav_time) values({0},{1},1,{2}) ON DUPLICATE KEY UPDATE fav_type=1,fav_time=VALUES (fav_time)";
$sql = \Our\Common::format($baseSql, $data['member_id'], $data['store_id'],$data['fav_time']);
$baseSql = "insert into {$this->_tableName}(member_id,store_id,fav_type,fav_time,fav_from) values({0},{1},{2},{3},{4}) ON DUPLICATE KEY UPDATE fav_type=VALUES (fav_type),fav_time=VALUES (fav_time),fav_from = VALUES (fav_from)";
$sql = \Our\Common::format($baseSql, $data['member_id'], $data['store_id'],$data['fav_type'],$data['fav_time'],$data['fav_from']);
$result = $this->db->insert($this->_tableName)->query($sql);
if($result){
if($data&&(isset($data['member_id'])&&$data['member_id'])){
......@@ -176,7 +179,36 @@ class FavoritesStoreModel extends \DAO\AbstractModel {
$res = $this->db->insert($this->_tableName)->query($sql);
return $res;
}
/**
* @param $storeIds
* @param $memberId
* @param int $type 取消关注:1 关注:2
* @return bool
* @throws \Our\Exception
*/
public function updateStoreCollecitonsCache($storeIds, $memberId, $type = 1) {
if(!$storeIds || !is_array($storeIds)) {
return true;
}
//删除缓存
foreach ($storeIds as $storeId) {
//更新店铺收藏数
$this->getFavoritesStoreCountByStoreId($storeId, $type == 1 ? -1 : 1);
}
if(is_array($storeIds) && count($storeIds) <= 20){
foreach ($storeIds as $v){
\Our\RedisHelper::delCachedFunction(\Redis\Db6\FavoritesStoreRedisModel::getInstance(),array(&$this, 'getOne'),array('*',array('store_id'=>$v,'member_id'=>$memberId)),array($memberId));
}
// }elseif (!is_array($storeIds)){
// \Our\RedisHelper::delCachedFunction(\Redis\Db6\FavoritesStoreRedisModel::getInstance(),array(&$this, 'getOne'),array('*',array('store_id'=>$storeIds,'member_id'=>$memberId)),array($memberId));
}else{
\Our\RedisHelper::delCachedFunction(\Redis\Db6\FavoritesStoreRedisModel::getInstance(),array(&$this, 'getOne'),array(),array($memberId));
}
\Our\RedisHelper::delCachedFunction(\Redis\Db6\FavoritesStoreRedisModel::getInstance(),array(&$this, 'getFavoritesStores'),array(),array($memberId));
//更新个人中心首页数量
\DAO\MemberModel::getInstance()->_changeNum(\Our\NameConst::storeCollection,$memberId,$type == 1 ? -(count($storeIds)) : count($storeIds));
return true;
}
public function getFavoritesStoreCountByStoreId($storeId, $num = 0) {
$statisticsDb6Redis = \Redis\Db6\StatisticsRedisModel::getInstance();
$collectCount = $statisticsDb6Redis->tableCacheGet('storeCollectCount:'.$storeId);
......
......@@ -436,9 +436,9 @@ class OrderModel extends \DAO\AbstractModel
$orderText = '';
if ($order['orderState'] == ApiConst::orderStateWaitRecieve) {
$orderText = OrderConst::getOnShop;//默认到店自取
if ($order['shippingType'] == ApiConst::express) {
$orderText = OrderConst::waitRecieve;
}
// if ($order['shippingType'] == ApiConst::express) {
// $orderText = OrderConst::waitRecieve;
// }
if ($order['shippingType'] == ApiConst::bySeller) {
$orderText = OrderConst::sendding;
}
......
......@@ -85,8 +85,8 @@ class StoreModel extends \DAO\AbstractModel
*/
public function getStoreLabelSrc($storeLabel, $width = \Our\ImageConst::circleStoreLabel, $height = 0)
{
$width = $width * \Our\ImageConst::sizeScale;
$height ? $height = $height * \Our\ImageConst::sizeScale : $height = $width;
$width = ceil($width * \Our\ImageConst::sizeScale);
$height ? $height = ceil($height * \Our\ImageConst::sizeScale) : $height = $width;
if ($storeLabel) {
$storeLabel = \Our\Common::getStaticFile($storeLabel, \Our\ImageConst::storeLabel, 'ossHost');
} else {
......
......@@ -28,6 +28,10 @@ class StoreScoreStatisticsModel extends \DAO\AbstractModel {
$this->setDb();
return $this->db->select($field)->from($this->_tableName)->where($where)->fetchOne();
}
public function getStoreScoreStatistics($where, $field) {
$this->setDb();
return $this->db->select($field)->from($this->_tableName)->where($where)->fetchAll();
}
public function insertOrUpdate($data){
$this->setDb(\Our\DbNameConst::masterDBConnectName);
$baseSql = "insert into {$this->_tableName}(store_id,evaluation_score,evaluation_number) values({0},{1},{2}) ON DUPLICATE KEY UPDATE evaluation_number = VALUES(evaluation_number),evaluation_score=VALUES(evaluation_score)";
......
<table class="" style="test-align:center">
<p>更新备注</p><p>请求参数</p><p>orderState:订单状态(多个用英文逗号分割),全部时不用传此参数为:待付款:10:待自提,26,待收货:31,待评价:40 旧版弃用 的状态待发货,25:待收货 30</p><p>
返回的文案参考列表</p>
<table class="">
<tbody>
<tr>
<td> 订单状态(orderState)</td>
<td> 配送类型(shippingType)</td>
<td> 支付状态(isReceivePayment)</td>
<td><span style="color: rgb(51, 51, 51); font-family: " arial="" negreta",="" arial;="" font-size:="" 13px;=""
font-weight:="" 700;="" text-align:="" center;="" white-space:="" normal;"="">订单状态(列表文案)</span> </td>
<td> 订单状态
orderState
</td>
<td> 配送类型
shippingType
</td>
<td> 支付状态
isReceivePayment
</td>
<td> 订单下单时间<p
style="margin-top: 0px; margin-bottom: 0px; text-rendering: optimizeLegibility; font-feature-settings: "
kern";="" font-kerning:="" normal;="" color:="" rgb(51,="" 51,="" 51);="" font-family:="" "arial=""
negreta",="" arial;="" font-size:="" 13px;="" font-weight:="" 700;="" text-align:="" center;=""
white-space:="" normal;"="">(跟当前时间对比)</p></td>
<td> 删除订单</td>
<td> 订单状态(列表文案)</td>
<td> 商品额外文案</td>
<td> 状态/倒计时</td>
<td> 商品额外操作</td>
<td> 用户文案</td>
<td> 用户操作(按钮)</td>
<td> 店家文案</td>
<td> 店家操作</td>
</tr>
<tr>
<td> 20</td>
<td>-1/ 0/40</td>
<td></td>
<td></td>
<td> &lt;10分钟</td>
<td></td>
<td><br></td>
<td></td>
<td></td>
<td></td>
<td><span style="color: rgb(51, 51, 51); font-family: " arial="" normal",="" arial;="" font-size:="" 13px;=""
text-align:="" center;="" white-space:="" normal;"="">取消订单</span></td>
<td></td>
<td></td>
</tr>
<tr>
<td> 10</td>
<td></td>
<td></td>
<td></td>
<td></td>
<td> 待付款</td>
<td> 10分钟内未付款订单将自动关闭</td>
<td></td>
<td> 等待您付款<p
style="margin-top: 0px; margin-bottom: 0px; text-rendering: optimizeLegibility; font-feature-settings: "
kern";="" font-kerning:="" normal;="" color:="" rgb(51,="" 51,="" 51);="" font-family:="" "arial=""
normal",="" arial;="" font-size:="" 13px;="" text-align:="" center;="" white-space:="" normal;"="">剩余关闭时间:5分
23秒</p></td>
<td> 立即付款<p
style="margin-top: 0px; margin-bottom: 0px; text-rendering: optimizeLegibility; font-feature-settings: "
kern";="" font-kerning:="" normal;="" color:="" rgb(51,="" 51,="" 51);="" font-family:="" "arial=""
normal",="" arial;="" font-size:="" 13px;="" text-align:="" center;="" white-space:="" normal;"="">取消订单</p>
</td>
<td></td>
<td> 1541568512(大于0的时间戳)</td>
<td> 待接单</td>
<td></td>
<td> 请尽快确认订单<p
style="margin-top: 0px; margin-bottom: 0px; text-rendering: optimizeLegibility; font-feature-settings: &quot;kern&quot;; font-kerning: normal; color: rgb(51, 51, 51); font-family: &quot;Arial Normal&quot;, Arial; font-size: 13px; text-align: center; white-space: normal;">
剩余关闭时间:5分 23秒</p></td>
<td> 接单</td>
</tr>
<tr>
<td> 20</td>
<td></td>
<td> 0</td>
<td> 待接单</td>
<td></td>
<td> 请尽快确认订单<p
style="margin-top: 0px; margin-bottom: 0px; text-rendering: optimizeLegibility; font-feature-settings: &quot;kern&quot;; font-kerning: normal; color: rgb(51, 51, 51); font-family: &quot;Arial Normal&quot;, Arial; font-size: 13px; text-align: center; white-space: normal;">
剩余关闭时间:5分 23秒</p></td>
<td> 修改价格<p
style="margin-top: 0px; margin-bottom: 0px; text-rendering: optimizeLegibility; font-feature-settings: &quot;kern&quot;; font-kerning: normal; color: rgb(51, 51, 51); font-family: &quot;Arial Normal&quot;, Arial; font-size: 13px; text-align: center; white-space: normal;">
确认收款</p>
<p style="margin-top: 0px; margin-bottom: 0px; text-rendering: optimizeLegibility; font-feature-settings: &quot;kern&quot;; font-kerning: normal; color: rgb(51, 51, 51); font-family: &quot;Arial Normal&quot;, Arial; font-size: 13px; text-align: center; white-space: normal;">
接单</p></td>
<td></td>
<td></td>
<td></td>
<td>待接单<br></td>
<td></td>
<td></td>
<td> 等待卖家接单<p
style="margin-top: 0px; margin-bottom: 0px; text-rendering: optimizeLegibility; font-feature-settings: "
kern";="" font-kerning:="" normal;="" color:="" rgb(51,="" 51,="" 51);="" font-family:="" "arial=""
normal",="" arial;="" font-size:="" 13px;="" text-align:="" center;="" white-space:="" normal;"="">剩余关闭时间:5分
23秒</p></td>
<td> 取消订单</td>
<td></td>
<td></td>
</tr>
<tr>
<td> 25</td>
<td></td>
<td> 大于0的时间戳</td>
<td></td>
<td></td>
<td> 待付款</td>
<td>配送中<br></td>
<td></td>
<td> 退款<span style="font-family: " arial="" normal",="" arial;="" font-size:="" 13px;="" text-align:=""
center;="" white-space:="" normal;="" color:="" rgb(255,="" 0,="" 0);"="">(退款规则)</span></td>
<td> 等待卖家发货</td>
<td> 提醒发货(调用店家IM界面)</td>
<td></td>
<td></td>
<td> 待线上付款</td>
<td> 修改价格</td>
</tr>
<tr>
<td> 25</td>
<td></td>
<td> 0</td>
<td></td>
<td></td>
<td> 配送中</td>
<td></td>
<td></td>
<td> 等待卖家发货</td>
<td> 提醒发货(调用店家IM界面)</td>
<td></td>
<td></td>
<td> 待配送</td>
<td> {售后状态}<span
style="font-family: &quot;Arial Normal&quot;, Arial; font-size: 13px; text-align: center; white-space: normal; color: rgb(0, 0, 0);">(可能存在)</span>
</td>
<td> 待配送</td>
<td> 选择配送人员<p
style="margin-top: 0px; margin-bottom: 0px; text-rendering: optimizeLegibility; font-feature-settings: &quot;kern&quot;; font-kerning: normal; color: rgb(0, 0, 0); font-family: &quot;Arial Normal&quot;, Arial; font-size: 13px; text-align: center; white-space: normal;">
打印订单</p></td>
</tr>
<tr>
<td> 30</td>
<td> 1</td>
<td> 大于0的时间戳<br></td>
<td></td>
<td></td>
<td> 配送中</td>
<td></td>
<td> 退款<br></td>
<td> 配送中</td>
<td> 确认收货</td>
<td></td>
<td></td>
<td> 待配送</td>
<td> {售后状态}<span
style="color: rgb(0, 0, 0); font-family: &quot;Arial Normal&quot;, Arial; font-size: 13px; white-space: normal; text-align: center;">(可能存在)</span>
</td>
<td> 待配送</td>
<td> 修改价格<p
style="margin-top: 0px; margin-bottom: 0px; text-rendering: optimizeLegibility; font-feature-settings: &quot;kern&quot;; font-kerning: normal; color: rgb(51, 51, 51); font-family: &quot;Arial Normal&quot;, Arial; font-size: 13px; text-align: center; white-space: normal;">
确认收款</p>
<p style="margin-top: 0px; margin-bottom: 0px; text-rendering: optimizeLegibility; font-feature-settings: &quot;kern&quot;; font-kerning: normal; color: rgb(51, 51, 51); font-family: &quot;Arial Normal&quot;, Arial; font-size: 13px; text-align: center; white-space: normal;">
<span style="color: rgb(0, 0, 0);">选择配送人员</span></p>
<p style="margin-top: 0px; margin-bottom: 0px; text-rendering: optimizeLegibility; font-feature-settings: &quot;kern&quot;; font-kerning: normal; color: rgb(51, 51, 51); font-family: &quot;Arial Normal&quot;, Arial; font-size: 13px; text-align: center; white-space: normal;">
<span style="color: rgb(0, 0, 0);">打印订单</span></p></td>
</tr>
<tr>
<td> 30</td>
<td> 1</td>
<td> 0</td>
<td></td>
<td></td>
<td> 配送中</td>
<td></td>
<td> 待自提</td>
<td> {售后状态}<span
style="color: rgb(0, 0, 0); font-family: &quot;Arial Normal&quot;, Arial; font-size: 13px; white-space: normal; text-align: center;">(可能存在)</span>
<td><br></td>
<td> 配送中</td>
<td> 确认收货<p
style="margin-top: 0px; margin-bottom: 0px; text-rendering: optimizeLegibility; font-feature-settings: "
kern";="" font-kerning:="" normal;="" color:="" rgb(51,="" 51,="" 51);="" font-family:="" "arial=""
normal",="" arial;="" font-size:="" 13px;="" text-align:="" center;="" white-space:="" normal;"="">取消订单</p>
</td>
<td></td>
<td></td>
</tr>
<tr>
<td> 30</td>
<td> 0</td>
<td> 大于0的时间戳</td>
<td></td>
<td></td>
<td> 到店自提</td>
<td></td>
<td> 退款</td>
<td> 待到店自取</td>
<td> 修改价格<p
style="margin-top: 0px; margin-bottom: 0px; text-rendering: optimizeLegibility; font-feature-settings: &quot;kern&quot;; font-kerning: normal; color: rgb(51, 51, 51); font-family: &quot;Arial Normal&quot;, Arial; font-size: 13px; text-align: center; white-space: normal;">
确认收款</p></td>
<td> 确认收货</td>
<td></td>
<td></td>
</tr>
<tr>
<td> 30</td>
<td> 0</td>
<td> 0</td>
<td></td>
<td></td>
<td> 到店自提</td>
<td></td>
<td></td>
<td> 待自提</td>
<td> {售后状态}<span
style="color: rgb(0, 0, 0); font-family: &quot;Arial Normal&quot;, Arial; font-size: 13px; white-space: normal; text-align: center;">(可能存在)</span>
</td>
<td> 待到店自取</td>
<td><p style="margin-top: 0px; margin-bottom: 0px; text-rendering: optimizeLegibility; font-feature-settings: "
kern";="" font-kerning:="" normal;="" color:="" rgb(51,="" 51,="" 51);="" font-family:="" "arial=""
normal",="" arial;="" font-size:="" 13px;="" text-align:="" center;="" white-space:="" normal;"="">确认收货</p>
<span style="color: rgb(51, 51, 51); font-family: " arial="" normal",="" arial;="" font-size:="" 13px;=""
text-align:="" center;="" white-space:="" normal;"="">取消订单</span> </td>
<td></td>
<td></td>
</tr>
<tr>
<td> 40</td>
<td></td>
<td></td>
<td></td>
<td> 可以</td>
<td> 已完成</td>
<td> {售后状态}<span
style="color: rgb(0, 0, 0); font-family: &quot;Arial Normal&quot;, Arial; font-size: 13px; white-space: normal; text-align: center;">(可能存在)</span>
</td>
<td></td>
<td> 退货(可能存在)</td>
<td> 订单已完成</td>
<td> 未收到货(调用店家IM界面)<p
style="margin-top: 0px; margin-bottom: 0px; text-rendering: optimizeLegibility; font-feature-settings: "
kern";="" font-kerning:="" normal;="" color:="" rgb(51,="" 51,="" 51);="" font-family:="" "arial=""
normal",="" arial;="" font-size:="" 13px;="" text-align:="" center;="" white-space:="" normal;"="">去评价</p>
</td>
<td></td>
<td></td>
</tr>
<tr>
<td> 0</td>
<td></td>
<td></td>
<td></td>
<td> 可以</td>
<td> 已取消</td>
<td> {售后状态}<span
style="color: rgb(0, 0, 0); font-family: &quot;Arial Normal&quot;, Arial; font-size: 13px; white-space: normal; text-align: center;">(可能存在)</span>
</td>
<td></td>
<td></td>
<td> 已取消<p
style="margin-top: 0px; margin-bottom: 0px; text-rendering: optimizeLegibility; font-feature-settings: &quot;kern&quot;; font-kerning: normal; color: rgb(51, 51, 51); font-family: &quot;Arial Normal&quot;, Arial; font-size: 13px; text-align: center; white-space: normal;">
{取消原因}(orderNote)</p></td>
style="margin-top: 0px; margin-bottom: 0px; text-rendering: optimizeLegibility; font-feature-settings: "
kern";="" font-kerning:="" normal;="" color:="" rgb(51,="" 51,="" 51);="" font-family:="" "arial=""
normal",="" arial;="" font-size:="" 13px;="" text-align:="" center;="" white-space:=""
normal;"="">{取消原因}</p></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td> -1</td>
<td></td>
<td></td>
<td></td>
<td> 可以</td>
<td> 已关闭</td>
<td> {售后状态}<span
style="color: rgb(0, 0, 0); font-family: &quot;Arial Normal&quot;, Arial; font-size: 13px; white-space: normal; text-align: center;">(可能存在)</span>
</td>
<td></td>
<td></td>
<td> 已关闭<p
style="margin-top: 0px; margin-bottom: 0px; text-rendering: optimizeLegibility; font-feature-settings: &quot;kern&quot;; font-kerning: normal; color: rgb(51, 51, 51); font-family: &quot;Arial Normal&quot;, Arial; font-size: 13px; text-align: center; white-space: normal;">
{关闭原因}(orderNodte)</p></td>
style="margin-top: 0px; margin-bottom: 0px; text-rendering: optimizeLegibility; font-feature-settings: "
kern";="" font-kerning:="" normal;="" color:="" rgb(51,="" 51,="" 51);="" font-family:="" "arial=""
normal",="" arial;="" font-size:="" 13px;="" text-align:="" center;="" white-space:=""
normal;"="">{关闭原因}</p></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td></td>
......@@ -155,7 +250,11 @@
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
</tbody>
</table><p><br></p>
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment