diff --git a/application/admin/controller/Order.php b/application/admin/controller/Order.php index e81ec9e..aee0d2f 100644 --- a/application/admin/controller/Order.php +++ b/application/admin/controller/Order.php @@ -204,11 +204,16 @@ class Order extends Backend public function add() { - if (false === $this->request->isPost()) { return $this->view->fetch(); } $params = $this->request->post('row/a'); + + $validate = $this->validate($params, \app\admin\validate\Order::class . '.add'); + if ($validate !== true) { + $this->error($validate); + } + $params = array_filter($params, function ($val) { return $val != ''; }); diff --git a/application/admin/validate/Order.php b/application/admin/validate/Order.php index e0565c2..50ef95c 100644 --- a/application/admin/validate/Order.php +++ b/application/admin/validate/Order.php @@ -10,18 +10,56 @@ class Order extends Validate * 验证规则 */ protected $rule = [ + 'source' => 'require', + 'item_id' => 'require', + 'customer' => 'require|max:32', + 'tel' => 'require|number|max:32', + 'area_id' => 'require', + 'address' => 'require|max:255', + 'lng' => 'require', + 'lat' => 'require', + 'online_amount|收款金额' => 'require|number|between:0.01,10000000', + 'plan_time|上门时间' => 'requireIf:set_time,1|date' ]; /** * 提示消息 */ protected $message = [ + 'source.require' => '请选择订单渠道', + 'item_id.require' => '请选择服务项目', + + 'customer.require' => '请输入客户昵称', + 'customer.max' => '客户昵称不能超过 32 个字符', + + 'tel.require' => '请输入客户电话', + 'area_id.require' => '请选择地区', + + 'address.require' => '请选择详细地址', + 'address.max' => '详细地址不能超过 255 个字符', + + 'lng.require' => '请选择详细地址', + 'lat.require' => '请选择详细地址', + + 'online_amount.require' => '请输入收款金额', + 'online_amount.number' => '收款金额不正确', ]; /** * 验证场景 */ protected $scene = [ - 'add' => [], + 'add' => [ + 'source', + 'item_id', + 'customer', + 'tel', + 'area_id', + 'address', + 'lng', + 'lat', + 'online_amount', + 'plan_time', + ], 'edit' => [], ]; - + } diff --git a/application/admin/view/order/add.html b/application/admin/view/order/add.html index 2644c32..b4feccc 100644 --- a/application/admin/view/order/add.html +++ b/application/admin/view/order/add.html @@ -1,283 +1,446 @@ - -