Sellertransport.php 5.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145
  1. <?php
  2. namespace app\api\controller;
  3. use think\facade\Lang;
  4. /**
  5. * ============================================================================
  6. *
  7. * ============================================================================
  8. *
  9. * ----------------------------------------------------------------------------
  10. *
  11. * ============================================================================
  12. * 卖家售卖地区控制器
  13. */
  14. class Sellertransport extends MobileSeller {
  15. public function initialize() {
  16. parent::initialize();
  17. Lang::load(base_path() . 'home/lang/'.config('lang.default_lang').'/sellertransport.lang.php');
  18. }
  19. public function index() {
  20. $this->transport_list();
  21. }
  22. /**
  23. * 返回商家店铺商品分类列表
  24. */
  25. public function transport_list() {
  26. $transport_model = model('transport');
  27. $transport_list = $transport_model->getTransportList(array('store_id' => $this->store_info['store_id']));
  28. ds_json_encode(10000, '',array('transport_list' => $transport_list));
  29. }
  30. public function edit_transport()
  31. {
  32. $id = intval(input('param.transport_id'));
  33. $transport_model = model('transport');
  34. $transport = $transport_model->getTransportInfo(array('transport_id' => $id));
  35. $extend = $transport_model->getExtendInfo(array('transport_id' => $id));
  36. ds_json_encode(10000, '',array('transport_info' => $transport,'transport_extend' => $extend));
  37. }
  38. public function save_transport()
  39. {
  40. $trans_info = array();
  41. $trans_info['transport_title'] = input('post.transport_title');
  42. $trans_info['send_tpl_id'] = 1;
  43. $trans_info['store_id'] = $this->store_info['store_id'];
  44. $trans_info['transport_updatetime'] = TIMESTAMP;
  45. $trans_info['transport_is_limited'] =intval(input('post.transport_is_limited'));
  46. $trans_info['transport_type'] =input('post.transport_type');
  47. $transport_model = model('transport');
  48. if(!$trans_info['transport_title']){
  49. ds_json_encode(10001, lang('transport_tpl_name_note'));
  50. }
  51. $transport_id = input('post.transport_id');
  52. if (is_numeric($transport_id)) {
  53. //编辑时,删除所有附加表信息
  54. $transport_id = intval($transport_id);
  55. $transport_model->editTransport($trans_info, array('transport_id' => $transport_id));
  56. $transport_model->delTransportextend($transport_id);
  57. }
  58. else {
  59. //新增
  60. $transport_id = $transport_model->addTransport($trans_info);
  61. }
  62. $trans_list = array();
  63. $special = input('post.transport_extend/a');
  64. if (is_array($special)) {
  65. foreach ($special as $key => $value) {
  66. if($value){
  67. if(!isset($value['transportext_is_default'])){
  68. $value['transportext_is_default']=0;
  69. }
  70. if($trans_info['transport_is_limited'] && $value['transportext_is_default']){
  71. continue;
  72. }
  73. $tmp['transportext_top_area_id'] = $value['transportext_top_area_id'];
  74. $tmp['transportext_area_id'] = $value['transportext_area_id'];
  75. $tmp['transportext_area_name'] = $value['transportext_area_name'];
  76. $tmp['transportext_sprice'] = floatval($value['transportext_sprice']);
  77. $tmp['transport_id'] = $transport_id;
  78. $tmp['transport_title'] = $trans_info['transport_title'];
  79. $tmp['transportext_snum'] = intval($value['transportext_snum']);
  80. $tmp['transportext_xnum'] = intval($value['transportext_xnum']);
  81. $tmp['transportext_xprice'] = floatval($value['transportext_xprice']);
  82. $tmp['transportext_is_default'] =$value['transportext_is_default'];
  83. if($tmp['transportext_is_default'] && $tmp['transportext_area_id']){
  84. ds_json_encode(10001, lang('transportext_default_error'));
  85. }
  86. if(!$tmp['transportext_is_default'] && !$tmp['transportext_area_id']){
  87. ds_json_encode(10001, lang('transportext_area_empty'));
  88. }
  89. $trans_list[] = $tmp;
  90. }
  91. }
  92. if(empty($trans_list)){
  93. ds_json_encode(10001, lang('transportext_empty'));
  94. }
  95. }else{
  96. ds_json_encode(10001, lang('transportext_empty'));
  97. }
  98. $result = $transport_model->addExtend($trans_list);
  99. if ($result) {
  100. ds_json_encode(10000, '');
  101. }
  102. else {
  103. ds_json_encode(10001, lang('transport_op_fail'));
  104. }
  105. }
  106. public function del_transport()
  107. {
  108. $transport_id = intval(input('param.transport_id'));
  109. $transport_model = model('transport');
  110. $transport = $transport_model->getTransportInfo(array('transport_id' => $transport_id));
  111. if ($transport['store_id'] != session('store_id')) {
  112. ds_json_encode(10001, lang('transport_op_fail'));
  113. }
  114. //查看是否正在被使用
  115. if ($transport_model->isTransportUsing($transport_id)) {
  116. $this->error(lang('transport_op_using'));
  117. }
  118. if ($transport_model->delTansport($transport_id)) {
  119. ds_json_encode(10000, '');
  120. }
  121. else {
  122. ds_json_encode(10001, lang('transport_op_fail'));
  123. }
  124. }
  125. }