field([ 'customer_id', 'customer_guid', 'customer_name', 'customer_phone', 'customer_email', 'customer_sex', 'customer_blacklist', 'customer_create_time', ]) ->order('customer_update_time', 'desc'); return msg("获取客户列表成功!", $query); } /** * 添加客户接口 * * @param Request $request * @return array * @date 2023-06-27 * @author xjh * @since 1.0.0 */ public function addCustomer(Request $request): array { $params = $request->param(); $this->validate($params, [ 'customer_name|客户昵称' => 'require', 'customer_email|客户邮箱' => 'require|email', 'customer_password|客户密码' => 'require|alphaNum|min:8' ]); ModelCustomer::create($params, [ 'customer_name', 'customer_password', 'customer_phone', 'customer_email', 'customer_sex', 'customer_blacklist', 'customer_guid', 'customer_create_user_guid', 'customer_update_user_guid' ]); return msg('添加成功!'); } /** * 编辑客户接口 * * @param Request $request * @return array * @date 2023-06-27 * @author xjh * @since 1.0.0 */ public function editCustomer(Request $request): array { $params = $request->param(); $this->validate($params, [ 'customer_guid|客户guid' => 'require', ]); $model = ModelCustomer::where('customer_guid', $params['customer_guid'])->find(); if (!$model) throwErrorMsg("该客户不存在", 1); $model->allowField([ 'customer_name', 'customer_phone', 'customer_email', 'customer_sex', 'customer_blacklist', 'customer_update_user_guid' ])->save($params); return msg('编辑成功!'); } /** * 删除客户接口 * * @param Request $request * @return array * @date 2023-06-27 * @author xjh * @since 1.0.0 */ public function deleteCustomer(Request $request): array { $params = $request->param(); $this->validate($params, [ 'customer_guid|客户guid' => 'require', ]); $customer = ModelCustomer::where([ 'customer_guid' => explode(',', $params['customer_guid']) ])->select(); $customer->delete(); return msg('删除成功!'); } /** * 修改密码接口 * * @param Request $request * @return array * @date 2023-06-27 * @author xjh * @since 1.0.0 */ public function editPassword(Request $request): array { $params = $request->param(); $this->validate($params, [ 'customer_guid|客户guid' => 'require', 'customer_password|客户密码' => 'require|alphaNum|min:8' ]); $model = ModelCustomer::where('customer_guid', $params['customer_guid'])->find(); if (!$model) throwErrorMsg("该客户不存在", 1); $model->allowField(['customer_password'])->save($params); return msg('编辑成功!'); } /** * 获取客户下拉选项数据接口 * * @param Request $request * @return array * @date 2023-06-28 * @author xjh * @since 1.0.0 */ public function getCustomerOptionList(Request $request): array { $select = ModelCustomer::scope('blacklist') ->field(['customer_guid', 'customer_name', 'customer_email']) ->append(['customer_show_text']) ->order('customer_update_time', 'desc') ->select(); return msg(0, '获取客户下拉选项数据成功!', ['data' => $select]); } }