EditCategoryController.class.php
1.9 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
<?php
/**
* 【调研中心-后台】11_修改调研所属分类
* EditCategoryController.class.php
* CreateBy:dj
* Date:2017-03-07
*/
namespace Apicp\Controller\Questionnaire;
use Common\Service\BaseinfoService;
class EditCategoryController extends \Apicp\Controller\AbstractController
{
public function Index_post()
{
// 获取调研id集合
$list = I('post.list');
if (empty($list)) {
E('_EMPTY_BASEINFO_ID');
}
// 获取调研分类id
$qc_id = I('post.qc_id');
if (empty($qc_id)) {
E('_EMPTY_CATEGORY_ID');
}
// 实例化问卷基本信息Service
$base_info_s = new BaseinfoService();
// 调研分类列表
$class_list = $base_info_s->get_classify_list();
$class_list = array_combine_by_key($class_list, 'qc_id');
// 调研分类信息
$classify = $class_list[$qc_id];
// 调研分类不存在
if (empty($classify)) {
E('_ERR_CLASSIFY_NOT_FOUND');
}
// 调研id集合
$qu_ids = array_column($list, 'qu_id');
try {
// 开始事务
$base_info_s->start_trans();
// 修改问卷基本信息表
$base_info_s->update_by_conds(['qu_id in (?)' => $qu_ids], ['qc_id' => $qc_id]);
// 提交事务
$base_info_s->commit();
} catch (\Think\Exception $e) {
\Think\Log::record($e);
// 事务回滚
$this->_set_error($e->getMessage(), $e->getCode());
$base_info_s->rollback();
} catch (\Exception $e) {
\Think\Log::record($e);
$this->_set_error($e->getMessage(), $e->getCode());
// 事务回滚
$base_info_s->rollback();
}
return true;
}
}