Express.php 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131
  1. <?php
  2. namespace app\admin\controller\system;
  3. use service\FormBuilder as Form;
  4. use service\UtilService as Util;
  5. use service\JsonService as Json;
  6. use think\Request;
  7. use think\Url;
  8. use app\admin\model\system\Express as ExpressModel;
  9. use app\admin\controller\AuthController;
  10. /**
  11. * 物流公司管理控制器
  12. * Class SystemMenus
  13. * @package app\admin\controller\system
  14. */
  15. class Express extends AuthController
  16. {
  17. /**
  18. * 显示资源列表
  19. *
  20. * @return \think\Response
  21. */
  22. public function index()
  23. {
  24. $params = Util::getMore([
  25. ['keyword','']
  26. ],$this->request);
  27. $this->assign(ExpressModel::systemPage($params));
  28. $this->assign(compact('params'));
  29. return $this->fetch();
  30. }
  31. /**
  32. * 显示创建资源表单页.
  33. *
  34. * @return \think\Response
  35. */
  36. public function create($cid = 0)
  37. {
  38. $formbuider = [
  39. Form::input('name','公司名称')->required('公司名称名称必填'),
  40. Form::input('code','编码'),
  41. Form::number('sort','排序',0),
  42. Form::radio('is_show','是否启用',1)->options([['value'=>0,'label'=>'隐藏'],['value'=>1,'label'=>'启用']]),
  43. ];
  44. $form = Form::make_post_form('添加物流公司',$formbuider,Url::build('save'),2);
  45. $this->assign(compact('form'));
  46. return $this->fetch('public/form-builder');
  47. }
  48. /**
  49. * 保存新建的资源
  50. *
  51. * @param \think\Request $request
  52. * @return \think\Response
  53. */
  54. public function save(Request $request)
  55. {
  56. $data = Util::postMore([
  57. 'name',
  58. 'code',
  59. ['sort',0],
  60. ['is_show',0]],$request);
  61. if(!$data['name']) return Json::fail('请输入公司名称');
  62. ExpressModel::set($data);
  63. return Json::successful('添加公司成功!');
  64. }
  65. /**
  66. * 显示编辑资源表单页.
  67. *
  68. * @param int $id
  69. * @return \think\Response
  70. */
  71. public function edit($id)
  72. {
  73. $menu = ExpressModel::get($id);
  74. if(!$menu) return Json::fail('数据不存在!');
  75. $formbuider = [
  76. Form::input('name','公司名称',$menu['name']),
  77. Form::input('code','编码',$menu['code']),
  78. Form::number('sort','排序',$menu['sort']),
  79. Form::radio('is_show','是否启用',$menu['is_show'])->options([['value'=>0,'label'=>'隐藏'],['value'=>1,'label'=>'启用']])
  80. ];
  81. $form = Form::make_post_form('添加物流公司',$formbuider,Url::build('update',array('id'=>$id)),2);
  82. $this->assign(compact('form'));
  83. return $this->fetch('public/form-builder');
  84. }
  85. /**
  86. * 保存更新的资源
  87. *
  88. * @param \think\Request $request
  89. * @param int $id
  90. * @return \think\Response
  91. */
  92. public function update(Request $request, $id)
  93. {
  94. $data = Util::postMore([
  95. 'name',
  96. 'code',
  97. ['sort',0],
  98. ['is_show',0]],$request);
  99. if(!$data['name']) return Json::fail('请输入公司名称');
  100. if(!ExpressModel::get($id)) return Json::fail('编辑的记录不存在!');
  101. ExpressModel::edit($data,$id);
  102. return Json::successful('修改成功!');
  103. }
  104. /**
  105. * 删除指定资源
  106. *
  107. * @param int $id
  108. * @return \think\Response
  109. */
  110. public function delete($id)
  111. {
  112. if(!$id) return $this->failed('参数错误,请重新打开');
  113. $res = ExpressModel::destroy($id);
  114. if(!$res)
  115. return Json::fail(ExpressModel::getErrorInfo('删除失败,请稍候再试!'));
  116. else
  117. return Json::successful('删除成功!');
  118. }
  119. }