request->only(['order_use'], 'post', 'trim'); $val = Validate::rule([ 'order_use|订单用途' => 'require|max:255', ]); if ($val->check($param) == false) return json_show(1004, $val->getError()); $tmp = Db::name('order_use') ->field('id') ->where([ 'is_del' => 0, 'order_use' => $param['order_use'], ]) ->findOrEmpty(); if (!empty($tmp)) return json_show(1004, '同一公司下该订单用途已存在'); $datainfo = Db::name('order_use')->insert([ "order_use" => $param['order_use'], "creater" => $this->uname, "createrid" => $this->uid, "status" => 0, "is_del" => 0, "addtime" => date("Y-m-d H:i:s"), "updatetime" => date("Y-m-d H:i:s") ]); return $datainfo ? app_show(0, "新建成功") : error_show(1002, "新建失败"); } public function list() { $param = $this->request->only([ 'page' => 1, 'size' => 10, 'status' => '', 'order_use' => '', 'creater' => '', 'start' => '', 'end' => '', 'company_name' => '', // 'companyNo' => '', 'relaComNo' => '', ], 'post', 'trim'); // $page = isset($this->post['page']) && $this->post['page'] !== "" ? intval($this->post['page']) : "1"; // $size = isset($this->post['size']) && $this->post['size'] !== "" ? intval($this->post['size']) : "10"; $where = [['is_del', "=", 0]]; // $status = isset($this->post['status']) && $this->post['status'] !== "" ? intval($this->post['status']) : ""; if ($param['status'] !== "") $where [] = ['status', "=", $param['status']]; // $order_use = isset($this->post['order_use']) && $this->post['order_use'] !== "" ? trim($this->post['order_use']) : ""; if ($param['order_use'] !== "") $where [] = ['order_use', "like", '%' . $param['order_use'] . '%']; // $creater = isset($this->post['creater']) && $this->post['creater'] !== "" ? trim($this->post['creater']) : ""; if ($param['creater'] !== "") $where [] = ['creater', "like", '%' . $param['creater'] . '%']; // $start = isset($this->post['start']) && $this->post['start'] !== "" ? $this->post['start'] : ""; if ($param['start'] !== "") $where[] = ['addtime', ">=", date('Y-m-d H:i:s', strtotime($param['start']))]; // $end = isset($this->post['end']) && $this->post['end'] !== "" ? $this->post['end'] : ""; if ($param['end'] !== "") $where[] = ['addtime', "<", date('Y-m-d H:i:s', strtotime($param['end']) + 24 * 3600)]; // $company_name = isset($this->post['company_name']) && $this->post['company_name'] !== "" ? trim($this->post['company_name']) : ""; if ($param['company_name'] !== "") $where[] = ["createrid", 'in', get_company_item_user_by_name($param['company_name'])]; // if ($param['companyNo'] !== "") $where[] = ["companyNo", '=', $param['companyNo']]; if ($param['relaComNo'] !== "") $where[] = ["companyNo", '=', $param['relaComNo']]; $count = Db::name('order_use') ->where($where) ->count('id'); $list = Db::name('order_use') ->where($where) ->page($param['page'], $param['size']) ->order(['addtime' => 'desc', 'id' => 'desc']) ->select() ->toArray(); //补全部门信息 $all_createrid = array_column($list, 'createrid'); $item = get_company_name_by_uid($all_createrid); foreach ($list as &$value) { $val['company_name'] = $item[$value['createrid']] ?? ''; } return app_show(0, "获取成功", ["list" => $list, "count" => $count]); } public function edit() { $param = $this->request->only(['id', 'order_use'], 'post', 'trim'); $val = Validate::rule([ 'id' => 'require|number|gt:0', 'order_use|订单用途' => 'require|max:255', ]); if ($val->check($param) == false) return json_show(1004, $val->getError()); $tmp = Db::name('order_use') ->field('id') ->where([ 'is_del' => 0, 'order_use' => $param['order_use'], ]) ->where('id', '<>', $param['id']) ->findOrEmpty(); if (!empty($tmp)) return json_show(1004, '同一公司下该订单用途已存在'); $datainfo = Db::name("order_use") ->where(['is_del' => 0, 'id' => $param['id']]) ->update([ "order_use" => $param['order_use'], "updatetime" => date("Y-m-d H:i:s") ]); return $datainfo ? app_show(0, "编辑成功") : error_show(1002, "编辑失败"); } public function dele() { $id = $this->request->filter('trim')->post('id/d', 0); $item = Db::name('order_use') ->where(['is_del' => 0, 'id' => $id]) ->update(['is_del' => 1, 'updatetime' => date("Y-m-d H:i:s")]); return $item ? app_show(0, "删除成功") : error_show(1002, "删除失败"); } public function status() { $param = $this->request->only(['id', 'status'], 'post', 'trim'); $val = Validate::rule([ 'id' => 'require|number|gt:0', 'status|状态' => 'require|number|in:0,1', ]); if ($val->check($param) == false) return json_show(1004, $val->getError()); $in = Db::name("order_use") ->where(['is_del' => 0, 'id' => $param['id']]) ->where('status', '<>', $param['status']) ->update(['status' => $param['status'], 'updatetime' => date("Y-m-d H:i:s")]); return $in ? app_show(0, "操作成功") : error_show(1004, "操作失败"); } public function info() { $id = $this->request->filter('trim')->post('id/d', 0); $info = Db::name('order_use') ->where(['id' => $id, 'is_del' => 0]) ->findOrEmpty(); return empty($info) ? error_show(1004, '未找到数据') : app_show(0, "获取成功", $info); } }