Cyd.php 8.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180
  1. <?php
  2. /**
  3. *
  4. *User:Administrator
  5. *Date:2021/10/28
  6. */
  7. namespace app\api\controller\v1;
  8. use app\api\business\CydBus;
  9. use app\api\business\SampleBus;
  10. use app\api\validate\CydValidate;
  11. use think\exception\ValidateException;
  12. class Cyd
  13. {
  14. //监管端获取抽样单列表
  15. public function getCydList()
  16. {
  17. $task_id = request()->param('task_id', '', 'int');
  18. $result = (new CydBus())->getCydList($task_id);
  19. return showSuccess($result);
  20. }
  21. public function getCydDetail()
  22. {
  23. $sample_id = request()->param('sample_id', '', 'trim');
  24. $result = (new SampleBus())->getCydDetail($sample_id);
  25. return showSuccess($result);
  26. }
  27. public function upCydItem()
  28. {
  29. $sample_id = request()->param('sample_id', '', 'trim');
  30. $result = (new CydBus())->upCydItem($sample_id);
  31. //返回一个undertake_id,前端要用这个刷新页面
  32. $undertake_id = (new CydBus())->getCydItemBySampleId($sample_id);
  33. return showSuccess($undertake_id['undertake_id']);
  34. }
  35. public function getJgCydList()
  36. {
  37. $data = [
  38. 'task_id' => request()->param('task_id', '', 'int'),//任务id
  39. 'unit_id' => request()->param('unit_id', '', 'int'),//牵头单位id
  40. 'pageNum' => request()->param('pageNum', '1', 'int'),
  41. 'pageSize' => request()->param('pageSize', '10', 'int'),
  42. ];
  43. try {
  44. validate(CydValidate::class)->scene('getJgCydList')->check($data);
  45. } catch (ValidateException $exception) {
  46. return showError($exception->getError());
  47. }
  48. $result = (new CydBus())->getCydByTaskIdAndUnitId($data);
  49. return showSuccess($result);
  50. }
  51. public function selectSampleList()
  52. {
  53. $data=[
  54. 'pageNum' => request()->param('pageNum',1,'int'),//页码
  55. 'pageSize' => request()->param('pageSize',10,'int'),//每页显示数量
  56. 'task_id' => request()->param('task_id',null,'int'),//任务id
  57. 'undertake_id' => request()->param('undertake_id', null, 'int'),//当前任务对应的承担信息,在undertake表中的id
  58. //注释掉的是原来的搜索功能
  59. // 'sample_name' => request()->param('sample_name','','trim'),//样品名称
  60. // 'sample_id' => request()->param('sample_id','','trim'),//样品编码
  61. // 'unit_test_name' => request()->param('unit_test_name','','trim'),//受检单位
  62. // 'unit_sample_name' => request()->param('unit_sample_name','','trim'),//抽样单位
  63. // 'unit_production_name' => request()->param('unit_production_name', '', 'trim'),//生产单位
  64. // 'sample_data' => request()->param('sample_data','','trim'),//抽样日期
  65. // 'sample_ground' => request()->param('sample_ground','','trim'),//抽样场所
  66. ];
  67. $result = (new SampleBus())->selectSampleList($data);
  68. return showSuccess($result);
  69. }
  70. public function getSampleObj()
  71. {
  72. $data =[
  73. 'task_id' => request()->param('task_id', '', 'int'),
  74. 'undertake_id'=>request()->param('undertake_id','','int')
  75. ];
  76. $task_id = request()->param('task_id','','int');
  77. $under_task_id = request()->param('undertake_id', '', 'int');
  78. if ($data['task_id'] == '' || $data['undertake_id'] == '') {
  79. return showError(config('status.none_valid_data'));
  80. }
  81. $result = (new SampleBus())->getSampleObj($data);
  82. return showSuccess($result);
  83. }
  84. public function createSampleId()
  85. {
  86. $task_id = request()->param('task_id', '', 'int');
  87. $result = (new SampleBus())->createSampleId($task_id);
  88. return showSuccess($result);
  89. }
  90. public function createSample()
  91. {
  92. //受检单位信息
  93. $unit_test = [
  94. 'unit_test_name' => request()->param('unit_test.unit_name','','trim'),//单位名称
  95. 'address' => request()->param('unit_test.address'),//通讯地址
  96. 'represent_name' => request()->param('unit_test.represent_name','','trim'),//法定代表人
  97. 'user_name' => request()->param('unit_test.user_name','','trim'),//*受检人
  98. 'phone' => request()->param('unit_test.phone','','trim'),//电话
  99. 'fax' => request()->param('unit_test.fax','','trim'),//传真
  100. ];
  101. //生产单位信息
  102. $unit_production = [
  103. 'unit_production_name' =>request()->param('unit_production.production_name','','trim'),//单位名称
  104. 'address' =>request()->param('unit_production.address','','trim'),//通讯地址
  105. 'postcode' =>request()->param('unit_production.postcode','','trim'),//邮编
  106. 'user_name' =>request()->param('unit_production.user_name','','trim'),//联系人
  107. 'phone' =>request()->param('unit_production.phone','','trim'),//电话
  108. 'fax' =>request()->param('unit_production.fax','','trim'),//传真
  109. 'production_class' =>request()->param('unit_production.production_class','','trim'),//生产方式
  110. ];
  111. //抽样单位信息
  112. $unit_sample = [
  113. 'unit_sample_name' => request()->param('unit_sample.unit_name','','trim'),//单位名称
  114. 'unit_user' => request()->param('unit_sample.unit_user','','trim'),//联系人
  115. 'address' => request()->param('unit_sample.address','','trim'),//通讯地址
  116. 'postcode' => request()->param('unit_sample.postcode','','trim'),//邮编
  117. 'phone' => request()->param('unit_sample.phone','','trim'),//联系电话
  118. 'fax' => request()->param('unit_sample.fax','','trim'),//传真
  119. 'email' => request()->param('unit_sample.email','','trim'),//Email
  120. ];
  121. //抽样单cyd信息
  122. $cyd_data = [
  123. 'undertake_id' => request()->param('cyd_data.undertake_id', '', 'trim'),//抽样单对应的undertake表单的id
  124. 'sample_id' => request()->param('cyd_data.sample_id','','trim'),//抽样单的id///todo
  125. 'task_id' => request()->param('cyd_data.task_id','','trim'),//关联任务id todo
  126. 'test_id' => request()->param('test_id','','trim'),//检测单位id----todo 未赋值
  127. // 'units_id' => request()->param('units_id','','trim'),//受检单位id---在business中赋值
  128. // 'product_unit' => request()->param('product_unit','','trim'),//生产单位id---在business中赋值
  129. // 'sample_unit' => request()->param('sample_unit','','trim'),//抽样单位id---在business中赋值
  130. 'sample_name' => request()->param('cyd_data.sample_name','','trim'),//样品名称
  131. 'brand' => request()->param('cyd_data.brand','','trim'),//商标
  132. 'ispack' => request()->param('cyd_data.ispack','','trim'),//包装
  133. 'type' => request()->param('cyd_data.type','','trim'),//型号规格
  134. 'standard' => request()->param('cyd_data.standard','','trim'),//执行标准
  135. 'production_date' => request()->param('cyd_data.production_date','','trim'),//生产日期或批号
  136. 'place' => request()->param('cyd_data.place','','trim'),// 产地
  137. 'certicfie' => request()->param('cyd_data.certicfie','','trim'),//*产品认证情况
  138. 'certifie_num' => request()->param('cyd_data.certifie_num','','trim'),//证书编号
  139. 'sample_num' => request()->param('cyd_data.sample_num','','trim'),//*抽样数量
  140. 'sample_num_unit' => request()->param('cyd_data.sample_num_unit','','trim'),//*抽样数量单位
  141. 'sample_base' => request()->param('cyd_data.sample_base','','trim'),//抽样基数
  142. 'sample_base_unit' => request()->param('cyd_data.sample_base_unit','','trim'),//抽样基数单位
  143. 'sample_ground' => request()->param('cyd_data.sample_ground','','trim'),//*抽样场所
  144. 'base' => request()->param('cyd_data.base', '', 'trim'),//检测任务依据
  145. 'sample_date'=>request()->param('cyd_data.sample_date','','trim'),//抽样时间
  146. 'file_name' => request()->param('cyd_data.file_name','','trim'),//文件名
  147. 'file_url' => request()->param('cyd_data.file_url','','trim'),//文件链接
  148. ];
  149. $result = (new SampleBus())->createSample($unit_test, $unit_production, $unit_sample, $cyd_data);
  150. return showSuccess($result);
  151. }
  152. }