作者 王智

daima

... ... @@ -2,6 +2,7 @@
namespace app\admin\controller;
use think\Db;
use app\common\controller\Backend;
/**
... ... @@ -11,7 +12,7 @@ use app\common\controller\Backend;
*/
class Seller extends Backend
{
/**
* Seller模型对象
* @var \app\admin\model\Seller
... ... @@ -24,12 +25,64 @@ class Seller extends Backend
$this->model = new \app\admin\model\Seller;
$this->view->assign("isShowList", $this->model->getIsShowList());
}
/**
* 默认生成的控制器所继承的父类中有index/add/edit/del/multi五个基础方法、destroy/restore/recyclebin三个回收站方法
* 因此在当前控制器中可不用编写增删改查的代码,除非需要自己控制这部分逻辑
* 需要将application/admin/library/traits/Backend.php中对应的方法复制到当前控制器,然后进行修改
*/
}
/**
* 编辑
*/
public function edit($ids = null)
{
$row = $this->model->get($ids);
if (!$row) {
$this->error(__('No Results were found'));
}
$adminIds = $this->getDataLimitAdminIds();
if (is_array($adminIds)) {
if (!in_array($row[$this->dataLimitField], $adminIds)) {
$this->error(__('You have no permission'));
}
}
if ($this->request->isPost()) {
$params = $this->request->post("row/a");
if ($params) {
$params = $this->preExcludeFields($params);
$result = false;
Db::startTrans();
try {
//是否采用模型验证
if ($this->modelValidate) {
$name = str_replace("\\model\\", "\\validate\\", get_class($this->model));
$validate = is_bool($this->modelValidate) ? ($this->modelSceneValidate ? $name . '.edit' : $name) : $this->modelValidate;
$row->validateFailException(true)->validate($validate);
}
$params['talk_num'] = 0;
$result = $row->allowField(true)->save($params);
Db::commit();
} catch (ValidateException $e) {
Db::rollback();
$this->error($e->getMessage());
} catch (PDOException $e) {
Db::rollback();
$this->error($e->getMessage());
} catch (Exception $e) {
Db::rollback();
$this->error($e->getMessage());
}
if ($result !== false) {
$this->success();
} else {
$this->error(__('No rows were updated'));
}
}
$this->error(__('Parameter %s can not be empty', ''));
}
$this->view->assign("row", $row);
return $this->view->fetch();
}
}
\ No newline at end of file
... ...
... ... @@ -8,13 +8,13 @@ use think\Model;
class Seller extends Model
{
// 表名
protected $name = 'seller';
// 自动写入时间戳字段
protected $autoWriteTimestamp = 'int';
... ... @@ -25,23 +25,23 @@ class Seller extends Model
// 追加属性
protected $append = [
'opentime_text',
// 'opentime_text',
'is_show_text'
];
public function getIsShowList()
{
return ['1' => __('Is_show 1'), '0' => __('Is_show 0')];
}
public function getOpentimeTextAttr($value, $data)
{
$value = $value ? $value : (isset($data['opentime']) ? $data['opentime'] : '');
return is_numeric($value) ? date("Y-m-d H:i:s", $value) : $value;
}
// public function getOpentimeTextAttr($value, $data)
// {
// $value = $value ? $value : (isset($data['opentime']) ? $data['opentime'] : '');
// return $value;
// }
public function getIsShowTextAttr($value, $data)
... ... @@ -51,10 +51,10 @@ class Seller extends Model
return isset($list[$value]) ? $list[$value] : '';
}
protected function setOpentimeAttr($value)
{
return $value === '' ? null : ($value && !is_numeric($value) ? strtotime($value) : $value);
}
// protected function setOpentimeAttr($value)
// {
// return $value === '' ? null : ($value && !is_numeric($value) ? strtotime($value) : $value);
// }
}
... ...