1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798 |
- <?php
- namespace app\common\model;
- use think\Request;
- use app\common\enum\PrinterType as PrinterTypeEnum;
- /**
- * 物流公司模型
- * Class Printer
- * @package app\common\model
- */
- class Printer extends BaseModel
- {
- protected $name = 'printer';
- /**
- * 获取打印机类型列表
- * @return array
- */
- public static function getPrinterTypeList()
- {
- static $printerTypeEnum = [];
- if (empty($printerTypeEnum)) {
- $printerTypeEnum = PrinterTypeEnum::getTypeName();
- }
- return $printerTypeEnum;
- }
- /**
- * 获取器:打印机类型名称
- * @param $value
- * @return array
- */
- public function getPrinterTypeAttr($value)
- {
- $printerType = self::getPrinterTypeList();
- return ['value' => $value, 'text' => $printerType[$value]];
- }
- /**
- * 自动转换printer_config为array格式
- * @param $value
- * @return string
- */
- public function getPrinterConfigAttr($value)
- {
- return json_decode($value, true);
- }
- /**
- * 自动转换printer_config为json格式
- * @param $value
- * @return string
- */
- public function setPrinterConfigAttr($value)
- {
- return json_encode($value);
- }
- /**
- * 获取全部
- * @return mixed
- */
- public static function getAll()
- {
- $model = new static;
- return $model->where('is_delete', '=', 0)
- ->order(['sort' => 'asc', $model->getPk() => 'desc'])
- ->select();
- }
- /**
- * 获取列表
- * @return \think\Paginator
- * @throws \think\exception\DbException
- */
- public function getList()
- {
- return $this->where('is_delete', '=', 0)
- ->order(['sort' => 'asc', $this->getPk() => 'desc'])
- ->paginate(15, false, [
- 'query' => Request::instance()->request()
- ]);
- }
- /**
- * 物流公司详情
- * @param $printer_id
- * @return null|static
- * @throws \think\exception\DbException
- */
- public static function detail($printer_id)
- {
- return self::get($printer_id);
- }
- }
|