diff --git a/app/MyBusinessException.php b/app/MyBusinessException.php new file mode 100644 index 0000000..41da0fe --- /dev/null +++ b/app/MyBusinessException.php @@ -0,0 +1,20 @@ +expectsJson()) { + return json(['code' => $this->getCode() ?: 500, 'message' => $this->getMessage(),'show'=>1]); + } + // 非json请求则返回一个页面 + return new Response(200, [], $this->getMessage()); + } +} \ No newline at end of file diff --git a/app/admin/controller/operation/OpurchaseGoodsOfferController.php b/app/admin/controller/operation/OpurchaseGoodsOfferController.php new file mode 100644 index 0000000..75c0391 --- /dev/null +++ b/app/admin/controller/operation/OpurchaseGoodsOfferController.php @@ -0,0 +1,53 @@ +dataLists(new OpurchaseclassofferLists()); + } + + + /** + * @notes 供应商报价日期列表 + */ + public function date_lists() + { + $supplier=$this->request->supplierId; + if(!$supplier) return $this->success('供应商不存在', []); + $page_no = $this->request->get('page_no', 1); + $page_size = $this->request->get('page_size', 15); + + $data = Db::name('opurchase_goods_offer_date')->where('supplier_id', $supplier)->page($page_no, $page_size)->select()->each(function ($item) { + $item['name']=date('Y-m-d', $item['create_time']).' 报价清单'; + return $item; + })->toArray(); + $count = Db::name('opurchase_goods_offer_date')->where('supplier_id', $supplier)->count(); + return $this->success('请求成功', ['lists' => $data, 'count' => $count, 'page_no' => $page_no, 'page_size' => $page_size]); + } + /** + * 提交报价 + */ + public function offer() + { + $supplier=$this->request->supplierId; + if(!$supplier) return $this->fail('非供应商用户不能报价'); + $params = (new OpurchaseGoodsOfferValidate())->post()->goCheck('offer'); + $result = OpurchaseGoodsOfferLogic::offer($params); + if (true === $result) { + return $this->success('报价成功', [], 1, 1); + } + return $this->fail(OpurchaseGoodsOfferLogic::getError()); + } +} diff --git a/app/admin/lists/auth/AdminLists.php b/app/admin/lists/auth/AdminLists.php index 6d6fb9b..6261a91 100755 --- a/app/admin/lists/auth/AdminLists.php +++ b/app/admin/lists/auth/AdminLists.php @@ -152,7 +152,7 @@ class AdminLists extends BaseAdminDataLists implements ListsExtendInterface, Lis // 部门列表 $deptLists = Dept::column('name', 'id'); // 岗位列表 - $jobsLists = Jobs::column('name', 'id'); + // $jobsLists = Jobs::column('name', 'id'); //管理员列表增加角色名称 foreach ($adminLists as $k => $v) { diff --git a/app/admin/lists/operation/OpurchaseclassofferLists.php b/app/admin/lists/operation/OpurchaseclassofferLists.php index 3cd6e57..46c7d20 100644 --- a/app/admin/lists/operation/OpurchaseclassofferLists.php +++ b/app/admin/lists/operation/OpurchaseclassofferLists.php @@ -53,6 +53,9 @@ class OpurchaseclassofferLists extends BaseAdminDataLists implements ListsSearch if($id){ $where[]=['order_id','=',$id]; } + if($this->request->supplierId>0){ + $where[]=['supplier_id','=',$this->request->supplierId]; + } $this->where=$where; return OpurchaseGoodsOffer::where($this->searchWhere) ->where($where) diff --git a/app/admin/logic/LoginLogic.php b/app/admin/logic/LoginLogic.php index 3e2c462..5aaac01 100755 --- a/app/admin/logic/LoginLogic.php +++ b/app/admin/logic/LoginLogic.php @@ -18,9 +18,9 @@ use app\common\logic\BaseLogic; use app\common\model\auth\Admin; use app\admin\service\AdminTokenService; use app\common\service\FileService; +use app\MyBusinessException; use think\facade\Db; use Webman\Config; -use support\exception\BusinessException; /** * 登录逻辑 @@ -46,7 +46,7 @@ class LoginLogic extends BaseLogic if(isset($params['is_admin']) &&$params['is_admin'] == 0 &&$admin){ $auth_shop=Db::name('user_auth_shop')->where(['admin_id'=>$admin['id'],'status'=>1,'apply_status'=>1,'type'=>2])->find(); if(!$auth_shop){ - throw new BusinessException('该账户没有权限', 1); + throw new MyBusinessException('该账户没有权限'); } } //用户表登录信息更新 diff --git a/app/admin/logic/auth/AdminLogic.php b/app/admin/logic/auth/AdminLogic.php index cc70b20..b696742 100755 --- a/app/admin/logic/auth/AdminLogic.php +++ b/app/admin/logic/auth/AdminLogic.php @@ -43,10 +43,11 @@ class AdminLogic extends BaseLogic */ public static function add(array $params) { - d($params); Db::startTrans(); try { - $password = password_hash($params['password'],PASSWORD_DEFAULT); + $passwordSalt = Config::get('project.unique_identification'); + $password=create_password($params['password'], $passwordSalt); + // $password = password_hash($params['password'],PASSWORD_DEFAULT); $defaultAvatar = config('project.default_image.admin_avatar'); $avatar = !empty($params['avatar']) ? FileService::setFileUrl($params['avatar']) : $defaultAvatar; @@ -102,7 +103,9 @@ class AdminLogic extends BaseLogic // 密码 if (!empty($params['password'])) { - $data['password'] = password_hash($params['password'],PASSWORD_DEFAULT); + $passwordSalt = Config::get('project.unique_identification'); + $data['password']=create_password($params['password'], $passwordSalt); + // $data['password'] = password_hash($params['password'],PASSWORD_DEFAULT); } // 禁用或更换角色后.设置token过期 @@ -254,7 +257,9 @@ class AdminLogic extends BaseLogic ]; if (!empty($params['password'])) { - $data['password'] = password_hash($params['password'],PASSWORD_DEFAULT); + $passwordSalt = Config::get('project.unique_identification'); + $data['password']=create_password($params['password'], $passwordSalt); + // $data['password'] = password_hash($params['password'],PASSWORD_DEFAULT); } return Admin::update($data); diff --git a/app/admin/validate/goods/GoodsValidate.php b/app/admin/validate/goods/GoodsValidate.php index 9ed5255..d1b2239 100644 --- a/app/admin/validate/goods/GoodsValidate.php +++ b/app/admin/validate/goods/GoodsValidate.php @@ -24,7 +24,7 @@ class GoodsValidate extends BaseValidate 'spec' => 'require', 'class' => 'require', 'unit' => 'require', - 'sys_labels' => 'require', + // 'sys_labels' => 'require', 'buy' => 'require', 'warehouse' => 'require', 'stocktip' => 'require', diff --git a/app/api/controller/order/RetailOrderController.php b/app/api/controller/order/RetailOrderController.php index 577e193..c13ed92 100644 --- a/app/api/controller/order/RetailOrderController.php +++ b/app/api/controller/order/RetailOrderController.php @@ -131,7 +131,7 @@ class RetailOrderController extends BaseApiController return $this->fail('购物车商品不能超过100个'); } - if ($pay_type == 9) { + if ($pay_type == 9 || $pay_type == 17) { if (empty($this->request->userInfo['merchant'])) { return $this->fail('请先绑定商户'); } @@ -158,7 +158,7 @@ class RetailOrderController extends BaseApiController case PayEnum::CASH_PAY: //现金支付 PayNotifyLogic::handle('cash_pay', $order['number']); - return $this->success('余额支付成功'); + return $this->success('现金支付成功'); break; case PayEnum::WECHAT_PAY: //微信支付 @@ -226,6 +226,11 @@ class RetailOrderController extends BaseApiController return $this->fail(RetailOrderLogic::getError()); } break; + case PayEnum::CASH_PAY: + //现金支付 + PayNotifyLogic::handle('cash_pay', $order['number']); + return $this->success('现金支付成功'); + break; case PayEnum::WECHAT_PAY: //微信支付 $redirectUrl = $params['redirect'] ?? '/pages/payment/payment'; diff --git a/app/api/lists/goods/GoodsLists.php b/app/api/lists/goods/GoodsLists.php index 39f2e97..93cdc14 100644 --- a/app/api/lists/goods/GoodsLists.php +++ b/app/api/lists/goods/GoodsLists.php @@ -26,10 +26,16 @@ class GoodsLists extends BaseAdminDataLists implements ListsSearchInterface */ public function setSearch(): array { - return [ - '%like%' => ['name'], + $name=$this->request->get('name'); + $where= [ '=' => ['class'] ]; + if($name && preg_match('/[\x{4e00}-\x{9fff}]+/u', $name)==1){ + $where['%like%']=['name']; + }else{ + $where['=']=['code']; + } + return $where; } /** * @notes 设置支持排序字段 diff --git a/app/common/cache/AdminTokenCache.php b/app/common/cache/AdminTokenCache.php index 52eca10..b85645a 100644 --- a/app/common/cache/AdminTokenCache.php +++ b/app/common/cache/AdminTokenCache.php @@ -74,10 +74,13 @@ class AdminTokenCache extends BaseCache } $roleName = trim($roleName, '/'); } - + $supplier_id=0; + if(isset($auth_shop)){ + $supplier_id=$auth_shop['pid']; + } $adminInfo = [ 'admin_id' => $admin->id, - 'supplier_id' => $auth_shop?$auth_shop['id']:0, + 'supplier_id' => $supplier_id, 'root' => $admin->root, 'name' => $admin->name, 'account' => $admin->account,