request->post('type_id', 'variety_name'); if(!in_array($type_id, [$stockConfig::VarietyName, $stockConfig::PackingBox, $stockConfig::Material])) $this->error(__('参数错误')); $list = $stockConfig::where('type_id', $type_id)->field('id,title,field_name,unit')->select(); $this->success('ok', $list); } //添加出入库 public function stock(StockLog $stockLog, StockService $stockService) { $data = $this->request->post(); $result = false; Db::startTrans(); try { validate(StockValidate::class)->scene('add')->check($data); $resData = $stockService::setGoOutStock($this->userinfo['id'], $data); $result = $stockLog->saveAll($resData); Db::commit(); }catch (ValidateException $e) { return $this->error($e->getError()); } catch (\Exception $e) { Db::rollback(); $this->error($e->getMessage()); } if ($result === false) { $this->error(__('没有新增任何数据')); } $this->success(); } //出入库记录 public function stocklog(StockLog $stockLog) { $where = []; $type = $this->request->post('type/s', ''); $type_id = $this->request->post('type_id/s', ''); $spec_id = $this->request->post('spec/s', ''); $limit = $this->request->post('limit/d', 15); //条数 $time = $this->request->post('create_time/s'); //日期 if(!empty($type)) $where[] = ['a.type', '=', $type]; if(!empty($type_id)) $where[] = ['a.type_id', '=',$type_id]; if(!empty($spec_id)) $where[] = ['a.variety_id', '=',$spec_id]; if(!empty($time)){ $arr = explode(',', $time); $where[] = ['a.createtime', '>=', strtotime($arr[0])]; $where[] = ['a.createtime', '<=', strtotime($arr[1])]; } $list = $stockLog::alias('a') ->leftjoin('stock_config b', 'a.variety_id = b.id') ->where('a.user_id', $this->userinfo['id']) ->where($where) ->field('a.*,b.title') ->order('a.id desc') ->paginate($limit); $this->success('ok', $list); } }