Commit 4ea72192 authored by liuyuzhen's avatar liuyuzhen

Merge branch 'master' of git.shenbd.com:qm-develop/shenbd into lyz_recommond_store

parents eb629002 6ffe3ea6
...@@ -33,7 +33,7 @@ class UserController extends \Our\Controller_AbstractIndex { ...@@ -33,7 +33,7 @@ class UserController extends \Our\Controller_AbstractIndex {
$password=$data[NameConst::password]; $password=$data[NameConst::password];
if($this->memberService->checkUserNamePassWord($mobile,$password)){ if($this->memberService->checkUserNamePassWord($mobile,$password)){
$member= $this->memberService->getOneByMobileAndPassword($mobile,$password); $member= $this->memberService->getOneByMobileAndPassword($mobile,$password);
if($member['member_state']==\Our\ApiConst::zero){ if($member&&$member['member_state']==\Our\ApiConst::zero){
\Error\ErrorModel::throwException(\Error\CodeConfigModel::unavailMemberState); \Error\ErrorModel::throwException(\Error\CodeConfigModel::unavailMemberState);
} }
//第二步保存扫码会员信息 //第二步保存扫码会员信息
......
...@@ -64,6 +64,8 @@ class ApiConst ...@@ -64,6 +64,8 @@ class ApiConst
const cannotSendMsg=-1; const cannotSendMsg=-1;
const canSendMsg=1; const canSendMsg=1;
const telephoneLen=11;
const defaultIntervalTime = 1500; const defaultIntervalTime = 1500;
const getExpressSuccess=0; const getExpressSuccess=0;
......
File mode changed from 100755 to 100644
...@@ -8,23 +8,57 @@ use Zend\Json\Server\Exception\ErrorException; ...@@ -8,23 +8,57 @@ use Zend\Json\Server\Exception\ErrorException;
class GoodsCommonServiceModel extends \Business\AbstractModel class GoodsCommonServiceModel extends \Business\AbstractModel
{ {
private $goodsStorageField = 'goods_id goodsId,goods_name goodsName,goods_verify goodsVerify,goods_state goodsState,goods_image goodsImage,goods_price goodsPrice,goods_storage goodsStorage,goods_spec goodsAttr'; private $goodsStorageField = 'goods_id goodsId,goods_name goodsName,goods_verify goodsVerify,goods_state goodsState,goods_image goodsImage,goods_price goodsPrice,goods_storage goodsStorage,goods_spec goodsAttr';
private $setStorageType = array('add'=> 1, 'set'=>2);
public function init() { public function init() {
} }
public function setGoodsStorage($storeId, $goodsId, $num = 0, $type='set') {
if($goodsId === 0){
\Error\ErrorModel::throwException(\Error\CodeConfigModel::commonError);
}
$goodsDao=\DAO\GoodsModel::getInstance();
$commonDao = \DAO\GoodsCommonModel::getInstance();
$where = array();
$where['store_id'] = $storeId;
$where['goods_id'] = $goodsId;
$data = $goodsDao->find($where, 'goods_id, goods_commonid');
if(!$data) {
\Error\ErrorModel::throwException(\Error\CodeConfigModel::goodsNotExist);
}
$op = isset($this->setStorageType[$type]) ? $this->setStorageType[$type] : 2; //默认设置库存
$goodsDao->db->doTransaction();
$ret1 = $goodsDao->updateStorage($goodsId, $num, $op);
$ret2 = true;
if($op==1) { //如果就库存调整
$ret2 = $commonDao->updateStorage($data['goods_commonid']);
}
if(!$ret1 || !$ret2) {
$goodsDao->db->doRollback();
\Error\ErrorModel::throwException(\Error\CodeConfigModel::updateGoodsStorageForOrder);
}
$goodsDao->db->doCommit();
return array();
}
/** /**
* 获取商品库存方法 * 获取商品库存方法
* * @author king
*/ */
public function getGoodsStorageList($storeId, $pageIndex = ApiConst::zero, $pageSize = ApiConst::pageSize) public function getGoodsStorageList($storeId, $pageIndex = ApiConst::zero, $pageSize = ApiConst::pageSize)
{ {
$goodsDao=\DAO\GoodsModel::getInstance(DbNameConst::salveDBConnectName); $goodsDao=\DAO\GoodsModel::getInstance();
$where = array(); $where = array();
$where[] = 'store_id = '.$storeId; $where[] = 'store_id = '.$storeId;
$where[] = 'goods_storage_alarm > 0';
$where[] = 'goods_storage<=goods_storage_alarm'; $where[] = 'goods_storage<=goods_storage_alarm';
//获得列表 //获得列表
$datas = $goodsDao->getListPage(implode($where, ' and '), $this->goodsStorageField, $pageIndex, $pageSize); if($datas = $goodsDao->getList(implode($where, ' and '), $this->goodsStorageField)) {
foreach ($datas as $key=>$val) {
$datas[$key]['goodsAttr'] = $goodsDao->getFormatGoodsAttr($val['goodsAttr']);
}
}
//获得售后商品列表getOrderGoodsByRecIds //获得售后商品列表getOrderGoodsByRecIds
if (!empty($datas)) { if (!empty($datas)) {
...@@ -1230,6 +1264,8 @@ class GoodsCommonServiceModel extends \Business\AbstractModel ...@@ -1230,6 +1264,8 @@ class GoodsCommonServiceModel extends \Business\AbstractModel
} }
private static $_instance = null; private static $_instance = null;
/** /**
......
...@@ -33,7 +33,9 @@ class RefundServiceModel extends \Business\AbstractModel ...@@ -33,7 +33,9 @@ class RefundServiceModel extends \Business\AbstractModel
private $refunReasonField = 'reason_id as reasonId,reason_info as reasonInfo,sort'; private $refunReasonField = 'reason_id as reasonId,reason_info as reasonInfo,sort';
//获得退款详情字段 //获得退款详情字段
private $refundReturnField = 'refund_id as refundId,order_id as orderId,order_sn as orderSn,refund_sn as refundSn,store_id as storeId,store_name as storeName,goods_id as goodsId,order_goods_id as orderGoodsId,goods_name as goodsName,goods_num as goodsNum,refund_amount as refundAmount,goods_image as goodsImage,refund_type as refundType,seller_state as sellerState,refund_state as refundState,return_type as returnType,add_time as addTime,seller_time as sellerTime,admin_time as adminTime,reason_info as reasonInfo,pic_info as picInfo,buyer_message as buyerMessage,seller_message as sellerMessage,admin_message adminMessage,express_id as expressId,invoice_no as invoiceNo,ship_time as shipTime,delay_time as delayTime,receive_time as receiveTime,shipping_over as shippingOver,shipping_sign as shippingSign,shipping_html as shippingHtml,is_suc_refund as isSucRefund,refund_shipping_type as refundShippingType,address_id as addressId,diliveryman_id as diliverymanId,is_platform_in as isPlatformIn,platform_in_reason as platformInReason,platform_state as platformState,seller_state as sellerState,return_type as returnType,refund_shipping_type as refundShippingType,buyer_refund_amount as buyerRefundAmount,reason_id as reasonId,receive_message as receiveMessage,goods_state as goodsState'; private $refundReturnField = 'refund_id as refundId,order_id as orderId,order_sn as orderSn,refund_sn as refundSn,store_id as storeId,store_name as storeName,seller_state as sellerState,goods_id as goodsId,order_goods_id as orderGoodsId,goods_name as goodsName,goods_num as goodsNum,refund_amount as refundAmount,goods_image as goodsImage,refund_type as refundType,refund_state as refundState,return_type as returnType,add_time as addTime,seller_time as sellerTime,admin_time as adminTime,reason_info as reasonInfo,pic_info as picInfo,buyer_message as buyerMessage,seller_message as sellerMessage,admin_message adminMessage,express_id as expressId,invoice_no as invoiceNo,ship_time as shipTime,delay_time as delayTime,receive_time as receiveTime,shipping_over as shippingOver,shipping_sign as shippingSign,shipping_html as shippingHtml,is_suc_refund as isSucRefund,refund_shipping_type as refundShippingType,address_id as addressId,diliveryman_id as diliverymanId,is_platform_in as isPlatformIn,platform_in_reason as platformInReason,platform_state as platformState,seller_state as sellerState,return_type as returnType,refund_shipping_type as refundShippingType,buyer_refund_amount as buyerRefundAmount,reason_id as reasonId,receive_message as receiveMessage,goods_state as goodsState';
private $storeRefundReturnField = 'refund_id as refundId,order_id as orderId,order_sn as orderSn,refund_sn as refundSn,store_id as storeId,store_name as storeName,seller_state as sellerState,goods_id as goodsId,order_goods_id as recId,goods_name as goodsName,goods_num as goodsNum,refund_amount as refundAmount,buyer_refund_amount as buyerRefundAmount,goods_image as goodsImage,refund_type as refundType,refund_state as refundState,return_type as returnType,add_time as addTime,seller_time as sellerTime,admin_time as adminTime,reason_id as reasonId,reason_info as reasonInfo,pic_info as picInfo,buyer_message as buyerMessage,seller_message as sellerMessage,admin_message adminMessage,express_id as expressId,invoice_no as invoiceNo,ship_time as shipTime,delay_time as delayTime,receive_time as receiveTime,receive_message as receiveMessage,shipping_over as shippingOver,shipping_sign as shippingSign,shipping_html as shippingHtml,is_suc_refund as isSucRefund,refund_shipping_type as refundShippingType,address_id as addressId,diliveryman_id as diliverymanId,is_platform_in as isPlatformIn,platform_in_reason as platformInReason,platform_state as platformState,return_type as returnType,refund_shipping_type as refundShippingType,goods_state as goodsState';
private $order; private $order;
...@@ -58,6 +60,60 @@ class RefundServiceModel extends \Business\AbstractModel ...@@ -58,6 +60,60 @@ class RefundServiceModel extends \Business\AbstractModel
return $this->orderGoodsField . ',goods_commonid as goodsCommonid,goods_commonid as goodsCommonId,goods_spec as goodsSpec '; return $this->orderGoodsField . ',goods_commonid as goodsCommonid,goods_commonid as goodsCommonId,goods_spec as goodsSpec ';
} }
/**
* 店铺退款列表
* @param $storeId
* @param int $type
* @param int $pageIndex
* @param int $pageSize
* @return \stdClass
*/
public function getStoreRefundList($storeId, $type=0,$pageIndex = ApiConst::zero, $pageSize = ApiConst::pageSize)
{
$refundReturnDao = \DAO\Order\RefundReturnModel::getInstance(DbNameConst::salveDBConnectName);
$orderGoodsDao = \DAO\Order\OrderGoodsModel::getInstance(DbNameConst::salveDBConnectName);
$goodsDao=\DAO\GoodsModel::getInstance(DbNameConst::salveDBConnectName);
$where['store_id'] = $storeId;
$order = array('add_time' => 'desc');
switch($type) {
case 1:
$where['refund_state'] = 1;
break;
case 2:
$where['refund_state'] = 2;
$where['refund_type'] = 2;
$order= array('receive_time'=> 'asc');
break;
}
//获得售后列表
$refundReturns = \Our\RedisHelper::cachedFunction(\Redis\Db5\OrderRedisModel::getInstance(), array(&$refundReturnDao, 'getList'), array($where, $this->storeRefundReturnField, $pageIndex, $pageSize, $order), \Our\ApiConst::oneDaySecond, array($storeId));
$orderGoodsId = array_column($refundReturns['list'], 'orderGoodsId');
//获得售后商品列表getOrderGoodsByRecIds
if (!empty($orderGoodsId)) {
$orderGoods = \Our\RedisHelper::cachedFunction(\Redis\Db5\OrderRedisModel::getInstance(), array(&$orderGoodsDao, 'getOrderGoodsByRecIds'), array($orderGoodsId, $this->orderGoodsField), \Our\ApiConst::oneDaySecond, array($memberId));
$refundMerge = Common::intergrateOneToOne($refundReturns['list'], $orderGoods, 'orderGoodsId', 'recId');
foreach ($refundMerge as &$value) {
$value['stateName'] = $refundReturnDao->getRefundTextStatus($value);
$value['blId'] = isset($value['blId']) ? (!is_null($value['blId']) ? $value['blId'] : ApiConst::zero) : ApiConst::zero;
$value['canPlatformIn'] = $refundReturnDao->isPlatformIn($value) ? ApiConst::one : ApiConst::zero;
$value['canSendShippingType'] = $refundReturnDao->checkIsAddReturnShipping($value) ? ApiConst::one : ApiConst::zero;
$value['goodsImage'] = ImageUtil::getGoodsImgUrl($value['goodsImage'], ApiConst::goodsSmallSize);
$value['goodsAttr']=$goodsDao->getFormatGoodsAttr($value['goodsSpec']);
$goodGroup=unserialize($value['goodsGroup']);
$value['goodsGroup']=!empty($goodGroup)?$goodGroup:[];
unset($value['goodsSpec']);
unset($value['picInfo']);
}
$returnData['refundReturns'] = $refundMerge;
$returnData['totalCount'] = $refundReturns['totalCount'];
return $returnData;
} else {
return new \stdClass();
}
}
/** /**
* 退款列表 * 退款列表
* *
......
...@@ -7,6 +7,8 @@ use DAO\StoreModel; ...@@ -7,6 +7,8 @@ use DAO\StoreModel;
use Error\CodeConfigModel; use Error\CodeConfigModel;
use Error\ErrorModel; use Error\ErrorModel;
use Our\ApiConst; use Our\ApiConst;
use Our\DbNameConst;
use Yaf\Exception;
/** /**
...@@ -26,32 +28,73 @@ class DeliveryServiceModel extends \Business\AbstractModel ...@@ -26,32 +28,73 @@ class DeliveryServiceModel extends \Business\AbstractModel
$this->storeDao = StoreModel::getInstance(); $this->storeDao = StoreModel::getInstance();
} }
public function selectDeliveryMan($data){ public function selectDeliveryMan($data)
$orderDao=\DAO\Order\OrderModel::getInstance(DbNameConst::masterDBConnectName); {
$qmDeliveryManLog=\DAO\Order\QmDeliverymanLogModel::getInstance(DbNameConst::masterDBConnectName); $orderDao = \DAO\Order\OrderModel::getInstance(DbNameConst::masterDBConnectName);
$orderDao->setDb($orderDao->dbName); $qmDeliveryManLog = \DAO\Order\QmDeliverymanLogModel::getInstance(DbNameConst::masterDBConnectName);
$orderDao->db->doTransaction(); $orderDao->setDb($orderDao->dbName);
$orderData['diliveryman_id']=$data['id']; $orderDao->db->doTransaction();
$orderRes=$orderDao->updateByOrderId($orderData,$data['orderId']); $orderData['diliveryman_id'] = $data['id'];
if(!$orderRes){ $orderRes = $orderDao->updateByOrderId($orderData, $data['orderId']);
$orderDao->db->doRollback(); if (!$orderRes) {
ErrorModel::throwException(CodeConfigModel::updateOrderFail); $orderDao->db->doRollback();
} ErrorModel::throwException(CodeConfigModel::updateOrderFail);
$qmDeliveryManLogData['diliveryman_id']=$data['id']; }
$qmDeliveryManLogData['store_id']=$data['storeId']; $qmDeliveryManLogData['diliveryman_id'] = $data['id'];
$qmDeliveryManLogData['order_id']=$data['orderId']; $qmDeliveryManLogData['store_id'] = $data['storeId'];
$qmDeliveryManLogData['delivery_state']=ApiConst::deliveryStateWait; $qmDeliveryManLogData['order_id'] = $data['orderId'];
$qmDeliveryManLogData['distribution_fee']=$data['distributionFee']; $qmDeliveryManLogData['delivery_state'] = ApiConst::deliveryStateWait;
$qmDeliveryManLogData['order_type']=$data['orderType']; $qmDeliveryManLogData['distribution_fee'] = $data['distributionFee'];
$qmDeliveryManLogData['get_time']=TIMESTAMP; $qmDeliveryManLogData['order_type'] = $data['orderType'];
$res=$qmDeliveryManLog->insert($data); $qmDeliveryManLogData['get_time'] = TIMESTAMP;
if(!res){ $qmDeliveryWhere['diliveryman_id']= $qmDeliveryManLogData['diliveryman_id'];
$orderDao->db->doRollback(); $qmDeliveryWhere['order_id']=$qmDeliveryManLogData['order_id'];
ErrorModel::throwException(CodeConfigModel::selectDeliveryFail); $qmDeliveryWhere['order_type']=$qmDeliveryManLogData['order_type'];
} $isRepeat=$qmDeliveryManLog->find($qmDeliveryWhere);
$orderDao->db->doCommit(); if($isRepeat){
return $res; $orderDao->db->doRollback();
ErrorModel::throwException(CodeConfigModel::alreadyExsitQmDeliveryLog);
}
$res = $qmDeliveryManLog->insert($qmDeliveryManLogData);
if (!res) {
$orderDao->db->doRollback();
ErrorModel::throwException(CodeConfigModel::selectDeliveryFail);
}
$orderDao->db->doCommit();
return $res;
} }
public function addDeleiveryMan($storeId,$memberId){
$memberDao=\DAO\MemberModel::getInstance(DbNameConst::masterDBConnectName);
$deliveryManDao=\DAO\Order\DiliverymanModel::getInstance(DbNameConst::masterDBConnectName);
$member=$memberDao->getInfo($memberId);
$memberMobile=$member['memberMobile'];
if(strlen($memberMobile)>ApiConst::telephoneLen || !$memberMobile){
ErrorModel::throwException(CodeConfigModel::notExsitDeliveryMan);
}
$where['store_id']=$storeId;
$where['member_id']=$memberId;
$res=$deliveryManDao->getByWhere($where);
if($res){
ErrorModel::throwException(CodeConfigModel::alreadyExsitDeliveryMan);
}
$deliveryManData['true_name']=$member['memberName'];
$deliveryManData['mobile']=$memberMobile;
$deliveryManData['scores']=ApiConst::five;
$deliveryManData['store_id']=$storeId;
$deliveryManData['add_time']=TIMESTAMP;
$deliveryManData['update_time']=TIMESTAMP;
$deliveryManData['member_id']=$memberId;
$deliveryManData['bind_status']=ApiConst::one;
$deliveryManData['is_del']=ApiConst::zero;
$resData=$deliveryManDao->insert($deliveryManData);
if(!$resData){
ErrorModel::throwException(CodeConfigModel::addDeliveryManError);
}
return $resData;
}
/** /**
* 登录业务 * 登录业务
* *
......
...@@ -860,11 +860,21 @@ class ShopkeeperServiceModel extends \Business\AbstractModel ...@@ -860,11 +860,21 @@ class ShopkeeperServiceModel extends \Business\AbstractModel
public function sellerLogin($sellerName) public function sellerLogin($sellerName)
{ {
$sellerDao = \DAO\Store\SellerModel::getInstance(DbNameConst::masterDBConnectName); $sellerDao = \DAO\Store\SellerModel::getInstance(DbNameConst::masterDBConnectName);
$sellerGroupDao=\DAO\Store\SellerGroupModel::getInstance(DbNameConst::masterDBConnectName);
$sellerInfo = $sellerDao->getInfoBySellerName($sellerName); $sellerInfo = $sellerDao->getInfoBySellerName($sellerName);
if($sellerInfo['sellerGroupId'] > ApiConst::zero){
$allowMenus=$sellerGroupDao->getInfoById($sellerInfo['sellerGroupId'],'limits');
$allowMenuaArr=explode(',',$allowMenus);
if(!in_array('client',$allowMenuaArr)){
ErrorModel::throwException(CodeConfigModel::notHaveAccess);
}
}
if ($sellerInfo) { if ($sellerInfo) {
$memberDao = \DAO\MemberModel::getInstance(DbNameConst::masterDBConnectName); $memberDao = \DAO\MemberModel::getInstance(DbNameConst::masterDBConnectName);
$memberInfo = $memberDao->getInfo($sellerInfo['memberId']); $memberInfo = $memberDao->getInfo($sellerInfo['memberId']);
return $memberInfo; $sellerInfo['memberMobile']=$memberInfo['memberMobile'];
$sellerInfo['trueName']=$memberInfo['memberName'];
return $sellerInfo;
} }
ErrorModel::throwException(CodeConfigModel::errorUsernameOrPassword); ErrorModel::throwException(CodeConfigModel::errorUsernameOrPassword);
......
...@@ -43,7 +43,6 @@ class MemberCenterServiceModel extends \Business\AbstractModel ...@@ -43,7 +43,6 @@ class MemberCenterServiceModel extends \Business\AbstractModel
'vibrate'=>ApiConst::openMessae, 'vibrate'=>ApiConst::openMessae,
); );
} }
$memberInfo['storeId'] ? $memberCenter['is'] = 1 : $memberCenter['isSeller'] = 0;
//是否销售员 //是否销售员
$saleInstance = \DAO\SaleModel::getInstance(); $saleInstance = \DAO\SaleModel::getInstance();
//$sale_act_id = \DAO\SaleModel::getInstance()->getOne(array('member_id'=>$memberId,'is_closing'=>0),'sale_act_id'); //$sale_act_id = \DAO\SaleModel::getInstance()->getOne(array('member_id'=>$memberId,'is_closing'=>0),'sale_act_id');
......
...@@ -309,11 +309,14 @@ class MemberServiceModel extends \Business\AbstractModel ...@@ -309,11 +309,14 @@ class MemberServiceModel extends \Business\AbstractModel
return $result; return $result;
} }
private function saveWxInfoMemberInfo($where){ private function saveWxInfoMemberInfo($where,$openid=null){
$memberDao = \DAO\MemberModel::getInstance(\Our\DbNameConst::masterDBConnectName); $memberDao = \DAO\MemberModel::getInstance(\Our\DbNameConst::masterDBConnectName);
//构造需要保存的会员信息 //构造需要保存的会员信息
$member['member_name'] = \Our\CommonExtension::createNewMemberName(); $member['member_name'] = \Our\CommonExtension::createNewMemberName();
if($openid){
$member['member_mobile'] = $openid;
}
$result = $memberDao->addInfo($member); $result = $memberDao->addInfo($member);
return $result; return $result;
} }
...@@ -727,22 +730,45 @@ class MemberServiceModel extends \Business\AbstractModel ...@@ -727,22 +730,45 @@ class MemberServiceModel extends \Business\AbstractModel
public function changeMobile($data,$memberId){ public function changeMobile($data,$memberId){
$memberDao = \DAO\MemberModel::getInstance(); $memberDao = \DAO\MemberModel::getInstance(\Our\DbNameConst::masterDBConnectName);
$memberDao->checkChangedInfo($data); $memberDao->checkChangedInfo($data);
//验证短信验证码 //验证短信验证码
$shortMessageDao = \DAO\ShortMessageModel::getInstance(); $shortMessageDao = \DAO\ShortMessageModel::getInstance();
$data['messageType'] = \Our\ApiConst::messageTypeValidNewMobile; $data['messageType'] = \Our\ApiConst::messageTypeValidNewMobile;
$shortMessageDao->validCode($data); $shortMessageDao->validCode($data);
$memberTime = $memberDao->getInfo($memberId,'member_time'); $memberTime= $memberDao->getInfo($memberId,'member_time');
if(!$memberTime){ if(!$memberTime){
$memberTime = TIMESTAMP; $memberTime = TIMESTAMP;
} }
$oldMemberMobile= $memberDao->getInfo($memberId,'member_mobile');
$passwordStr = $this->getRealPassword($data['password'],$memberTime); $passwordStr = $this->getRealPassword($data['password'],$memberTime);
$storeModel = \DAO\StoreModel::getInstance(\Our\DbNameConst::masterDBConnectName);
$store = $storeModel->getInfo(array('store_phone'=>$oldMemberMobile));
$memberDao->db->doTransaction();
$result = $memberDao->updateInfo(array('member_passwd'=>md5($passwordStr),'member_mobile'=>$data['mobile'],'member_time'=>$memberTime,'member_mobile_bind'=>\Our\ApiConst::one),array('member_id'=>$memberId)); $result = $memberDao->updateInfo(array('member_passwd'=>md5($passwordStr),'member_mobile'=>$data['mobile'],'member_time'=>$memberTime,'member_mobile_bind'=>\Our\ApiConst::one),array('member_id'=>$memberId));
if(!$result){ if(!$result){
$memberDao->db->doRollback();
\Error\ErrorModel::throwException(\Error\CodeConfigModel::changeMobileFailed); \Error\ErrorModel::throwException(\Error\CodeConfigModel::changeMobileFailed);
} }
if($store){
$storeResult = $storeModel->save(array('store_phone'=>$data['mobile']),array('store_id'=>$store['store_id']));
if($storeResult===false){
$memberDao->db->doRollback();
\Error\ErrorModel::throwException(\Error\CodeConfigModel::storePhoneUpdateFailed);
}
}
$sellerResult = \DAO\Store\SellerModel::getInstance(\Our\DbNameConst::masterDBConnectName)->update(array('seller_name'=>$data['mobile']),array('seller_name'=>$oldMemberMobile));
if($sellerResult===false){
$memberDao->db->doRollback();
\Error\ErrorModel::throwException(\Error\CodeConfigModel::sellerNameUpdateFailed);
}
$memberDao->db->doCommit();
if($store){
\Our\RedisHelper::delCachedFunction(\Redis\Db6\StoreRedisModel::getInstance(),array(&$storeModel, 'getInfoById'),array(),array($store['store_id']));
}
$this->memberDb0Redis->tableHMSet($memberId,array('member_mobile'=>$data['mobile']),ApiConst::tenDaySecond); $this->memberDb0Redis->tableHMSet($memberId,array('member_mobile'=>$data['mobile']),ApiConst::tenDaySecond);
$shortMessageDao = \DAO\ShortMessageModel::getInstance(); $shortMessageDao = \DAO\ShortMessageModel::getInstance();
$shortMessageDao->delCodeRedis($data['key'],$data['mobile'],\Our\ApiConst::messageTypeValidNewMobile); $shortMessageDao->delCodeRedis($data['key'],$data['mobile'],\Our\ApiConst::messageTypeValidNewMobile);
...@@ -855,7 +881,8 @@ class MemberServiceModel extends \Business\AbstractModel ...@@ -855,7 +881,8 @@ class MemberServiceModel extends \Business\AbstractModel
return $returnMember; return $returnMember;
} }
$db->doTransaction(); $db->doTransaction();
$memberId = $this->saveWxInfoMemberInfo($where); $openid = $this->getUnionId($where['encryptedData'],$where['iv'],$where['session_key']);
$memberId = $this->saveWxInfoMemberInfo($where,$openid);
if(!$memberId){ if(!$memberId){
$db->doRollback(); $db->doRollback();
......
...@@ -29,6 +29,25 @@ class GoodsModel extends \DAO\AbstractModel { ...@@ -29,6 +29,25 @@ class GoodsModel extends \DAO\AbstractModel {
public function init(){ public function init(){
} }
/**
* 更新商品表商品库存
* @param $goodsId 商品ID
* @param $num 库存数量
* @param $op 1增加 2设置
* @return mixed
*/
public function updateStorage($goodsId, $num, $op) {
$this->setDb();
$whereSql = 'goods_id='.$goodsId;
if($op==1){ //调整库存
$updateSql = 'goods_storage = goods_storage'.($num<0 ? '-'.(-$num) : '+'.$num);
} else { //调整库存预警为不需要预警
$updateSql = 'goods_storage_alarm =0';
}
$updateAllSql = "UPDATE {$this->_tableName} set {$updateSql} where {$whereSql}";
return $this->db->update($this->_tableName)->query($updateAllSql);
}
/** /**
* *
* 分页获取商品列表 * 分页获取商品列表
...@@ -44,7 +63,7 @@ class GoodsModel extends \DAO\AbstractModel { ...@@ -44,7 +63,7 @@ class GoodsModel extends \DAO\AbstractModel {
$this->setDb($this->dbName); $this->setDb($this->dbName);
if($datas = $this->lists($where, $order, $field, $pageIndex, $pageSize)) { if($datas = $this->lists($where, $order, $field, $pageIndex, $pageSize)) {
foreach ($datas['list'] as $key=>$val) { foreach ($datas['list'] as $key=>$val) {
$datas['list'][$key]['goodsAttr'] = $this->getFormatGoodsAttr($val['goodsAttrs']); $datas['list'][$key]['goodsAttr'] = $this->getFormatGoodsAttr($val['goodsAttr']);
} }
} }
return $datas ? $datas : array(); return $datas ? $datas : array();
...@@ -330,7 +349,12 @@ class GoodsModel extends \DAO\AbstractModel { ...@@ -330,7 +349,12 @@ class GoodsModel extends \DAO\AbstractModel {
return $goodsList; return $goodsList;
} }
/**
* 更新库存
* @param $dataList
* @param int $op
* @return bool
*/
public function updateGoodsStorage($dataList,$op=\Our\ApiConst::zero){ public function updateGoodsStorage($dataList,$op=\Our\ApiConst::zero){
$datas = array_values($dataList); $datas = array_values($dataList);
$this->setDb(\Our\DbNameConst::masterDBConnectName); $this->setDb(\Our\DbNameConst::masterDBConnectName);
......
...@@ -2,6 +2,7 @@ ...@@ -2,6 +2,7 @@
namespace DAO; namespace DAO;
use \Our\Common; use \Our\Common;
use Our\CommonExtension;
...@@ -14,6 +15,7 @@ class GoodsCommonModel extends \DAO\AbstractModel { ...@@ -14,6 +15,7 @@ class GoodsCommonModel extends \DAO\AbstractModel {
* @var string * @var string
*/ */
protected $_tableName = 'han_goods_common'; protected $_tableName = 'han_goods_common';
protected $_child_tableName = 'han_goods';
/** /**
* 主键 * 主键
...@@ -25,6 +27,22 @@ class GoodsCommonModel extends \DAO\AbstractModel { ...@@ -25,6 +27,22 @@ class GoodsCommonModel extends \DAO\AbstractModel {
public function init(){ public function init(){
} }
/**
* 更新商品主表商品库存
* @param $goodsId 商品ID
* @param $num 库存数量
* @param $op 1增加 2设置
* @return mixed
*/
public function updateStorage($goodsCommonid) {
$this->setDb();
$whereSql = 'goods_commonid='.$goodsCommonid;
$updateSql = 'goods_storage = (select sum(t.goods_storage) from '.$this->_child_tableName.' t where t.goods_commonid='.$goodsCommonid.')';
$updateAllSql = "UPDATE {$this->_tableName} set {$updateSql} where {$whereSql}";
return $this->db->update($this->_tableName)->query($updateAllSql);
}
public function getOneById($goodsCommonId,$field = \Our\NameConst::allField){ public function getOneById($goodsCommonId,$field = \Our\NameConst::allField){
$this->setDb($this->dbName); $this->setDb($this->dbName);
return $this->db->select($field)->from($this->_tableName)->where(array('goods_commonid'=>$goodsCommonId))->fetchOne(); return $this->db->select($field)->from($this->_tableName)->where(array('goods_commonid'=>$goodsCommonId))->fetchOne();
......
...@@ -261,7 +261,13 @@ class MemberModel extends \DAO\AbstractModel ...@@ -261,7 +261,13 @@ class MemberModel extends \DAO\AbstractModel
} }
} }
public function updateMemberCache($memberId,$member) {
$memberDb0Redis = \Redis\Db0\MemberRedisModel::getInstance();
if($memberDb0Redis->tableExists($memberId)) {
return $memberDb0Redis->tableHMSet($memberId,$member);
}
return true;
}
public function updateInfo($data, $where) public function updateInfo($data, $where)
{ {
$this->setDb(\Our\DbNameConst::masterDBConnectName); $this->setDb(\Our\DbNameConst::masterDBConnectName);
......
...@@ -71,6 +71,18 @@ class DiliverymanModel extends \DAO\AbstractModel ...@@ -71,6 +71,18 @@ class DiliverymanModel extends \DAO\AbstractModel
$result=$this->find($where); $result=$this->find($where);
return $result; return $result;
} }
/**
* 插入数据
* @param $data
* @param $where
* @return mixed
*/
public function insert($data)
{
$this->setDb(\Our\DbNameConst::masterDBConnectName);
return $this->db->insert($this->_tableName)->rows($data)->execute();
}
public function getDeliveryManFields() public function getDeliveryManFields()
{ {
return array( return array(
......
...@@ -58,8 +58,8 @@ class QmDeliverymanLogModel extends \DAO\AbstractModel ...@@ -58,8 +58,8 @@ class QmDeliverymanLogModel extends \DAO\AbstractModel
*/ */
public function insert($data) public function insert($data)
{ {
$this->setDb(\Our\DbNameConst::masterDBConnectName); $this->setDb(\Our\DbNameConst::masterDBConnectName);
return $this->db->insert($this->_tableName)->rows($data)->execute(); return $this->db->insert($this->_tableName)->rows($data)->execute();
} }
public function updateStatusById($id) public function updateStatusById($id)
...@@ -145,13 +145,13 @@ class QmDeliverymanLogModel extends \DAO\AbstractModel ...@@ -145,13 +145,13 @@ class QmDeliverymanLogModel extends \DAO\AbstractModel
*/ */
public function find($where) public function find($where)
{ {
$this->setDb($this->dbName);
$data = $this->db->from($this->_tableName)->select($this->fieldDetail)->where($where)->fetchOne(); $data = $this->db->from($this->_tableName)->select($this->fieldDetail)->where($where)->fetchOne();
return $data; return $data;
} }
public function findById($id) public function findById($id)
{ {
$this->setDb($this->dbName);
$where[$this->_primaryKey] = $id; $where[$this->_primaryKey] = $id;
return $this->find($where); return $this->find($where);
} }
......
...@@ -269,7 +269,7 @@ class StoreModel extends \DAO\AbstractModel ...@@ -269,7 +269,7 @@ class StoreModel extends \DAO\AbstractModel
public function get($storeId,$label = true) public function get($storeId,$label = true)
{ {
$storeInfo = $this->getStoreInfoCache($storeId); $storeInfo = $this->getStoreInfoCache($storeId);
if(!$storeInfo || $storeInfo['open_flag'] == 0 || $storeInfo['store_state'] != 1){ if(!$storeInfo || $storeInfo['open_flag'] != 1 || $storeInfo['store_state'] != 1){
\Error\ErrorModel::throwException(\Error\CodeConfigModel::storeNotExistOrClose); \Error\ErrorModel::throwException(\Error\CodeConfigModel::storeNotExistOrClose);
} }
...@@ -467,4 +467,10 @@ class StoreModel extends \DAO\AbstractModel ...@@ -467,4 +467,10 @@ class StoreModel extends \DAO\AbstractModel
return $result; return $result;
} }
public function save($data,$where){
$this->setDb(\Our\DbNameConst::masterDBConnectName);
$result = $this->db->update($this->_tableName)->rows($data)->where($where)->execute();
return $result;
}
} }
...@@ -81,7 +81,8 @@ class SellerModel extends \DAO\AbstractModel ...@@ -81,7 +81,8 @@ class SellerModel extends \DAO\AbstractModel
public function update($data, $where) public function update($data, $where)
{ {
$this->setDb(DbNameConst::masterDBConnectName); $this->setDb(DbNameConst::masterDBConnectName);
return $this->db->update($this->_tableName)->where($where)->rows($data)->execute(); $result = $this->db->update($this->_tableName)->rows($data)->where($where)->execute();
return $result;
} }
public function updateBySellerId($data,$sellerId){ public function updateBySellerId($data,$sellerId){
......
<?php
namespace DAO\Store;
use OSS\Common;
use Our\ApiConst;
use Our\DbNameConst;
use Redis\Db6\StoreRedisModel;
/**
* 店铺数据统计
* @date 2018-5-14
* @author csw
*/
class SellerGroupModel extends \DAO\AbstractModel
{
protected $redis;
private $detailField = "group_id as groupId,group_name as groupName,limits as limits,smt_limits as smtLimits,store_id as storeId";
/**
* 表名
*
* @var string
*/
protected $_tableName = 'han_seller_group';
/**
* 主键
*
* @var string
*/
protected $_primaryKey = 'group_id';
public function init()
{
$this->setDb();
}
/**
* 获取店铺统计信息
* @param $where
* @return array
*/
public function find($where)
{
$this->setDb($this->dbName);
$data = $this->db->select($this->detailField)->from($this->_tableName)->where($where)->fetchOne();
return $data;
}
public function getInfoBySellerName($sellerName)
{
$where['seller_name'] = $sellerName;
return $this->find($where);
}
public function getByStoreIdAndGmtCreate($storeId, $gmtCreate)
{
$where['store_id'] = $storeId;
$where['gmt_create'] = $gmtCreate;
$res = $this->find($where);
return $res;
}
public function getById($id)
{
$where['id'] = $id;
$res = $this->find($where);
return $res;
}
/**
* 更新数据
* @param $data
* @param $where
* @return mixed
*/
public function update($data, $where)
{
$this->setDb(DbNameConst::masterDBConnectName);
return $this->db->update($this->_tableName)->where($where)->rows($data)->execute();
}
public function updateBySellerId($data,$sellerId){
$where['seller_id']=$sellerId;
return $this->update($data,$where);
}
/**
* 插入数据
* @param $data
* @return mixed
*/
public function insert($data)
{
return $this->db->insert($this->_tableName)->rows($data)->execute();
}
/**
* @param $storeId 店铺id
* @param $field 更新栏目
* @param $value 增加值
* @param $type ,'INC':增加,'DEC':减少
*/
public function updateStoreStatisticsToday($storeId, $field, $value, $type = 'INC')
{
$h = 'todayData' . date('Ymd');
$key = $storeId;
$this->redis = StoreRedisModel::getInstance();
$data = $this->redis->tableHGet($h, $key);
$data[$field] = $type == 'INC' ? $data[$field] + $value : $data[$field] - $value;
StoreRedisModel::tableHSet($h, $storeId, $data, ApiConst::oneDaySecond);
}
public function getInfoById($id, $field=false)
{
$where[$this->_primaryKey] = $id;
$sellerGroup=$this->find($where);
if ($field) {
return $sellerGroup[$field];
} else {
return $sellerGroup;
}
}
public function getInfoByMemberId($memberId, $field = '*', $isField = false)
{
$this->setDb();
$where['member_id'] = $memberId;
$store = $this->db->from($this->_tableName)->select($field)->where($where)->fetchOne();
if ($isField) {
return $store[$isField];
} else {
return $store;
}
}
//插入数据大量
public function addAllReduce($datas)
{
$this->setDb(DbNameConst::masterDBConnectName);
$error = 0;
$baseSql = "insert into {$this->_tableName}(store_id,order_count,order_total,gmt_create) values";
$extentSql = " ON DUPLICATE KEY UPDATE order_count=order_goods_count-values(order_goods_count),order_total=order_total-values(order_total)";
$insertAllSql = $baseSql;
for ($i = 0; $i < count($datas); $i++) {
$addSql = \Our\Common::format("({0},{1},{2},{3}),", $datas[$i]['storeId'], $datas[$i]['orderCount'], $datas[$i]['orderTotal'], datas[$i]['gmtCreate']);
$insertAllSql .= $addSql;
if ($i % 1000 == 0 && $i != 0) {
$insertAllSql = rtrim($insertAllSql, ',');
$insertSql = $insertAllSql . $extentSql;
$one = $this->db->insert($this->_tableName)->query($insertSql);
if (!$one) {
$error++;
}
$insertAllSql = $baseSql;
}
}
if ($insertAllSql != $baseSql) {
$insertAllSql = rtrim($insertAllSql, ',');
$insertSql = $insertAllSql . $extentSql;
$one = $this->db->insert($this->_tableName)->query($insertSql);
if (!$one) {
$error++;
}
}
if ($error > 0) {
$dataJson = json_encode($datas);
throw new Exception('插入han_store_member_statistics失败,' . $dataJson, 4);
}
}
//插入数据大量
public function addAll($datas)
{
$this->setDb(DbNameConst::masterDBConnectName);
$error = 0;
$baseSql = "insert into {$this->_tableName}(store_id,order_count,order_total,fav_count,gmt_update,gmt_create) values";
$extentSql = " ON DUPLICATE KEY UPDATE order_count=order_count+values(order_count),order_total=order_total+values(order_total),fav_count=fav_count+values(fav_count),gmt_update=values(gmt_update)";
$insertAllSql = $baseSql;
for ($i = 0; $i < count($datas); $i++) {
$addSql = \Our\Common::format("({0},{1},{2},{3},{4},'{5}'),", $datas[$i]['storeId'], $datas[$i]['orderCount'], $datas[$i]['orderTotal'], $datas[$i]['favCount'], TIMESTAMP, date('Y-m-d', TIMESTAMP));
$insertAllSql .= $addSql;
if ($i % 1000 == 0 && $i != 0) {
$insertAllSql = rtrim($insertAllSql, ',');
$insertSql = $insertAllSql . $extentSql;
$one = $this->db->insert($this->_tableName)->query($insertSql);
if (!$one) {
$error++;
}
$insertAllSql = $baseSql;
}
}
if ($insertAllSql != $baseSql) {
$insertAllSql = rtrim($insertAllSql, ',');
$insertSql = $insertAllSql . $extentSql;
$one = $this->db->insert($this->_tableName)->query($insertSql);
if (!$one) {
$error++;
}
}
if ($error > 0) {
$dataJson = json_encode($datas);
throw new Exception('插入han_store_statics_day失败,' . $dataJson, 4);
}
}
/**
* 类实例
*
* @var \DAO\UserModel
*/
private static $_instance = null;
/**
* 获取类实例
*
* @return \DAO\UserModel
*/
public static function getInstance()
{
if (!(self::$_instance instanceof self)) {
self::$_instance = new self();
}
return self::$_instance;
}
/**
* 获取字段
* @return array
*/
private function _getColumns()
{
return array(
'store_id as storeId',
'order_count as orderCount',
'order_total as orderTotal',
'fav_count as favCount',
'goods_count as goodsCount',
);
}
}
...@@ -100,7 +100,9 @@ class CodeConfigModel ...@@ -100,7 +100,9 @@ class CodeConfigModel
const uploadMemberAvatarFailed = 10112; const uploadMemberAvatarFailed = 10112;
const uploadWxMemberAvatarFailed = 10113; const uploadWxMemberAvatarFailed = 10113;
const unavailMemberState = 10114; const unavailMemberState = 10114;
const storePhoneUpdateFailed = 10115;
const sellerNameUpdateFailed = 10116;
const notHaveAccess = 10117;
//访问错误 //访问错误
const illegalAccess = 200001; const illegalAccess = 200001;
...@@ -285,7 +287,9 @@ class CodeConfigModel ...@@ -285,7 +287,9 @@ class CodeConfigModel
const platFormAreadyIn = 300117; const platFormAreadyIn = 300117;
const confirmReceiveError = 300118; const confirmReceiveError = 300118;
const alreadyExsitDeliveryMan = 300119; const alreadyExsitDeliveryMan = 300119;
const alreadyExsitQmDeliveryLog = 300122;
const notExsitDeliveryMan = 300123;
const addDeliveryManError = 300124;
const updateOrderFail = 300120; const updateOrderFail = 300120;
const selectDeliveryFail = 300121; const selectDeliveryFail = 300121;
const noEnoughStorageForBundlingGoods = 30118; const noEnoughStorageForBundlingGoods = 30118;
...@@ -412,6 +416,9 @@ class CodeConfigModel ...@@ -412,6 +416,9 @@ class CodeConfigModel
//分享错误码 //分享错误码
const shareGrowImageError = 180001; const shareGrowImageError = 180001;
//数据库错误
const databaseError = 190001;
/** /**
* 获取错误码配置 * 获取错误码配置
*/ */
...@@ -498,6 +505,9 @@ class CodeConfigModel ...@@ -498,6 +505,9 @@ class CodeConfigModel
self::uploadMemberAvatarFailed => '上传用户头像失败', self::uploadMemberAvatarFailed => '上传用户头像失败',
self::uploadWxMemberAvatarFailed => '微信上传用户头像失败', self::uploadWxMemberAvatarFailed => '微信上传用户头像失败',
self::unavailMemberState => '您的账号已被禁用', self::unavailMemberState => '您的账号已被禁用',
self::storePhoneUpdateFailed => '更换手机时卖家手机号码更新失败',
self::sellerNameUpdateFailed => '更换手机时卖家手机号码更新失败',
self::notHaveAccess => '您没有权限使用',
//商品相关 //商品相关
self::emptyCommonId => '商品主键不能为空', self::emptyCommonId => '商品主键不能为空',
self::goodsNotExist => '商品不存在', self::goodsNotExist => '商品不存在',
...@@ -705,6 +715,9 @@ class CodeConfigModel ...@@ -705,6 +715,9 @@ class CodeConfigModel
self::bundlingGoodsNotExist => '组合销售商品不存在', self::bundlingGoodsNotExist => '组合销售商品不存在',
self::confirmReceiveError => '确认收款失败', self::confirmReceiveError => '确认收款失败',
self::alreadyExsitDeliveryMan=>'您的店铺已经存在此配送员', self::alreadyExsitDeliveryMan=>'您的店铺已经存在此配送员',
self::alreadyExsitQmDeliveryLog=>'配送订单已存在',
self::notExsitDeliveryMan=>'配送员不存在',
self::addDeliveryManError=>'添加配送员失败',
self::noStorageForBundlingGoods => '组合销售商品库存不存在', self::noStorageForBundlingGoods => '组合销售商品库存不存在',
self::bundlingGoodsOfflineForCartOrOrder => '组合销售活动已下架', self::bundlingGoodsOfflineForCartOrOrder => '组合销售活动已下架',
self::goodsNoStoreForCartOrOrder => '商品库存不足', self::goodsNoStoreForCartOrOrder => '商品库存不足',
...@@ -795,7 +808,8 @@ class CodeConfigModel ...@@ -795,7 +808,8 @@ class CodeConfigModel
self::wrongTimeForReadLog => '读日志时写入时间段查询开始时间不能大于结束时间', self::wrongTimeForReadLog => '读日志时写入时间段查询开始时间不能大于结束时间',
self::saveUserMappingFailed => '保存用户关联关系失败', self::saveUserMappingFailed => '保存用户关联关系失败',
self::registerMemberInfoFailed => '注册更新用户信息失败', self::registerMemberInfoFailed => '注册更新用户信息失败',
self::authMemberExistMobile => '该授权用户已经绑定手机号码' self::authMemberExistMobile => '该授权用户已经绑定手机号码',
self::databaseError=>'数据库执行失败',
); );
} }
......
<?php <?php
namespace Mysql; namespace Mysql;
use Error\CodeConfigModel;
use Error\ErrorModel;
use Our\ApiConst; use Our\ApiConst;
/** /**
...@@ -129,16 +131,14 @@ class LinkMySQLModel{ ...@@ -129,16 +131,14 @@ class LinkMySQLModel{
if ( is_object($sql) ) { if ( is_object($sql) ) {
$sql = $sql->_toSQL(); $sql = $sql->_toSQL();
} }
$resource = mysqli_query($this->_connection, $sql); $resource = mysqli_query($this->_connection, $sql);
if(! $resource) { if(! $resource) {
if ( APP_ENV != 'product' ) { if ( APP_ENV == 'product' || APP_ENV=='productOne' ) {
die('Error: ' . mysqli_error($this->_connection) . '<br />Error No: ' . mysqli_errno($this->_connection) . '<br />' . $sql); ErrorModel::throwException(CodeConfigModel::databaseError);
} else { } else {
die('DataBase Error'); throw new \Exception('Error: ' . mysqli_error($this->_connection) . '<br />Error No: ' . mysqli_errno($this->_connection) . '<br />' . $sql);
} }
} }
if($this->_type == 'SELECT') { if($this->_type == 'SELECT') {
$i = 0; $data = array(); $i = 0; $data = array();
while ($result = mysqli_fetch_assoc($resource)) { while ($result = mysqli_fetch_assoc($resource)) {
...@@ -146,12 +146,10 @@ class LinkMySQLModel{ ...@@ -146,12 +146,10 @@ class LinkMySQLModel{
$i++; $i++;
} }
mysqli_free_result($resource); mysqli_free_result($resource);
$query = new \stdClass(); $query = new \stdClass();
$query->one = isset($data[0]) ? $data[0] : FALSE; $query->one = isset($data[0]) ? $data[0] : FALSE;
$query->rows = empty($data) ? FALSE : $data; $query->rows = empty($data) ? FALSE : $data;
$query->num = $i; $query->num = $i;
unset($data); unset($data);
return $query; return $query;
} else { } else {
......
...@@ -38,7 +38,9 @@ class MemberRedisModel extends \Redis\Db0\AbstractModel { ...@@ -38,7 +38,9 @@ class MemberRedisModel extends \Redis\Db0\AbstractModel {
} }
return null; return null;
} }
public function tableExists($h){
return $this->exists($this->calcKey($h));
}
/** /**
* 更新数据 * 更新数据
* *
......
...@@ -30,6 +30,7 @@ class DeliveryController extends \Our\Controller_AbstractClient { ...@@ -30,6 +30,7 @@ class DeliveryController extends \Our\Controller_AbstractClient {
$deliveryService=\Business\Store\DeliveryServiceModel::getInstance(); $deliveryService=\Business\Store\DeliveryServiceModel::getInstance();
$data=$this->req['data']; $data=$this->req['data'];
$data['storeId']=$this->storeId; $data['storeId']=$this->storeId;
unset($data['key']);
$result =$deliveryService->selectDeliveryMan($data); $result =$deliveryService->selectDeliveryMan($data);
if($result!==false){ if($result!==false){
$this->success($result,\Our\DescribeConst::successMessage,\Our\DescribeConst::successMessage); $this->success($result,\Our\DescribeConst::successMessage,\Our\DescribeConst::successMessage);
...@@ -60,7 +61,12 @@ class DeliveryController extends \Our\Controller_AbstractClient { ...@@ -60,7 +61,12 @@ class DeliveryController extends \Our\Controller_AbstractClient {
* 添加配送员 * 添加配送员
*/ */
public function addDeliveryAction(){ public function addDeliveryAction(){
$deliveryService=\Business\Store\DeliveryServiceModel::getInstance();
$result =$deliveryService->addDeleiveryMan($this->storeId,$this->memberId);
if($result!==false){
$this->success($result,\Our\DescribeConst::successMessage,\Our\DescribeConst::successMessage);
}
ErrorModel::throwException(CodeConfigModel::commonError);
} }
......
...@@ -182,10 +182,11 @@ class ShopkeeperController extends \Our\Controller_AbstractClient { ...@@ -182,10 +182,11 @@ class ShopkeeperController extends \Our\Controller_AbstractClient {
* 获得售后列表 * 获得售后列表
*/ */
public function getRefunds(){ public function getRefunds(){
$type = intval($this->req['data']['type']);
$refundService=\Business\Order\RefundServiceModel::getInstance(); $refundService=\Business\Order\RefundServiceModel::getInstance();
$pageIndex=$this->getPageIndex(); $pageIndex=$this->getPageIndex();
$pageSize=$this->getPageSize(); $pageSize=$this->getPageSize();
$res=$refundService->getList($this->memberId,$pageIndex,$pageSize); $res=$refundService->getStoreRefundList($this->storeId, $type, $pageIndex, $pageSize);
$this->success($res); $this->success($res);
} }
...@@ -221,15 +222,29 @@ class ShopkeeperController extends \Our\Controller_AbstractClient { ...@@ -221,15 +222,29 @@ class ShopkeeperController extends \Our\Controller_AbstractClient {
$res=$res?$res:new \stdClass(); $res=$res?$res:new \stdClass();
$this->success($res,\Our\DescribeConst::successMessage); $this->success($res,\Our\DescribeConst::successMessage);
} }
/** /**
* 单一属性商品库存预警 * 单一属性商品库存预警
*/ * @author king
*/
public function warningAction(){ public function warningAction(){
$goodsCommonService = \Business\Goods\GoodsCommonServiceModel::getInstance(); $goodsCommonService = \Business\Goods\GoodsCommonServiceModel::getInstance();
$pageIndex=$this->getPageIndex(); $pageIndex=$this->getPageIndex();
$pageSize=$this->getPageSize(); $pageSize=$this->getPageSize();
$res = $goodsCommonService->getGoodsStorageList($this->store_id, $pageIndex, $pageSize); $res = $goodsCommonService->getGoodsStorageList($this->storeId, $pageIndex, $pageSize);
$this->success($res);
}
/**
* 添加库存
* @author king
*/
public function addStockAction(){
$goodsCommonService = \Business\Goods\GoodsCommonServiceModel::getInstance();
$goodsId = (int)$this->req['data']['goodsId'];
$num = (int)$this->req['data']['num'];
$type = trim($this->req['data']['type']);
$res = $goodsCommonService->setGoodsStorage($this->storeId, $goodsId, $num, $type);
$this->success($res); $this->success($res);
} }
......
...@@ -69,7 +69,7 @@ class UserController extends \Our\Controller_AbstractIndex { ...@@ -69,7 +69,7 @@ class UserController extends \Our\Controller_AbstractIndex {
$member['store_id']=$seller['storeId']; $member['store_id']=$seller['storeId'];
$member['seller_id']=$seller['sellerId']; $member['seller_id']=$seller['sellerId'];
$this->memberService->saveMember($member,'seller'); $this->memberService->saveMember($member,'seller');
$this->success(array('key'=>$this->key,'trueName'=>$seller['trueName'],'memberAvatar'=>$member['memberAvatarUrl'],'memberId'=>(int)$member['member_id'],'storeId'=>(int)$seller['storeId'])); $this->success(array('key'=>$this->key,'memberName'=>$member['member_name'],'memberMobile'=>$member['member_mobile'],'memberAvatar'=>$member['memberAvatarUrl'],'memberId'=>(int)$member['member_id'],'storeId'=>(int)$seller['storeId']));
}else{ }else{
ErrorModel::throwException(CodeConfigModel::errorUsernameOrPassword); ErrorModel::throwException(CodeConfigModel::errorUsernameOrPassword);
} }
......
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>简单的html5 File测试 for pic2base64</title>
<style>
</style>
</head>
<body>
<form action="/client/delivery/addDelivery" method="post">
用户登录状态key:<input name="data[key]" value="73526b0db474f2a0e5f80c67301be73d"/><br />
memberId:<input name="data[memberId]" value="284"/><br />
<input type="submit" value="提交">
</form>
</body>
</html>
\ No newline at end of file
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>简单的html5 File测试 for pic2base64</title>
<style>
</style>
</head>
<body>
<form action="/client/delivery/selectDelivery" method="post">
用户登录状态key:<input name="data[key]" value="ceb72deab920ac0edb7272b2ed9dfa1e"/><br />
订单id:<input name="data[orderId]" value=""/><br />
配送员id:<input name="data[id]" value=""/><br />
配送费:<input name="data[distributionFee]" value="85"/><br />
订单类型:<input name="data[orderType]" value="1"/><br />
<input type="submit" value="提交">
</form>
</body>
</html>
\ 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