WasteRecord.php 9.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325
  1. <?php
  2. namespace app\api\controller\v1;
  3. use app\api\controller\Base;
  4. use app\common\model\User;
  5. use app\hander\HelpHander;
  6. use think\App;
  7. use think\Db;
  8. class WasteRecord extends Base
  9. {
  10. public function __construct(App $app = null) {
  11. parent::__construct($app);
  12. $this->model = new \app\common\model\WasteRecord();
  13. }
  14. public function printRecord (){
  15. $id=input('id/d');
  16. db('waste_record')->where('id',$id)
  17. ->update(['is_print' =>1]);
  18. HelpHander::success([],'操作成功');
  19. }
  20. public function queryIsPrint(){
  21. $id=input('id/d');
  22. $ret=$this->model->queryIsPrint($id);
  23. if($ret){
  24. HelpHander::success($ret);
  25. }else{
  26. HelpHander::error('暂无数据');
  27. }
  28. }
  29. public function queryWasteRecordList(){
  30. $orgId=input('orgId/d');
  31. $status=input('status');
  32. $createTime=trim(input('createTime'));
  33. $page=input('page/d',1);
  34. $size=input('size/d',10);
  35. $ret=$this->model->wasteRecordList($orgId,$status,$createTime,$page,$size);
  36. if($ret){
  37. HelpHander::success($ret);
  38. }else{
  39. HelpHander::error('暂无数据');
  40. }
  41. }
  42. public function queryUnTransportList(){
  43. $orgId=input('orgId/d');
  44. $createTime=trim(input('createTime'));
  45. $ret=$this->model->unTransportList($orgId,$createTime);
  46. if($ret){
  47. HelpHander::success($ret);
  48. }else{
  49. HelpHander::error('暂无数据');
  50. }
  51. }
  52. // 保存医废记录
  53. public function saveRecord(){
  54. $data = [
  55. 'org_id' => input('orgId/d'),
  56. 'user_id' => $this->userId,
  57. 'waste_device_id' => input('wasteDeviceId'),
  58. 'cateid' =>input('cateId'),
  59. 'weight' => input('weight'),
  60. 'status' => 0,
  61. 'is_print' => 0,
  62. 'num'=>input('num')
  63. ];
  64. if(!$data['waste_device_id']){
  65. HelpHander::error('未选择收取科室');
  66. }
  67. if(!$data['cateid']){
  68. HelpHander::error('类型不能为空');
  69. }
  70. if($data['weight'] <= 0){
  71. HelpHander::error('称重必须大于0');
  72. }
  73. $waste_record_id = $this->model->saverecord($data);
  74. if(!$waste_record_id){
  75. HelpHander::error($this->model->getError());
  76. }
  77. $info = $this->model->getOne($waste_record_id,$data['org_id']);
  78. if(!$info){
  79. HelpHander::error('操作失败');
  80. }
  81. $info['unit'] = Db::name('waste_type')->where('id',$info['cateid'])->value('unit');
  82. $info['wasteDeviceName'] = Db::name('address')
  83. ->where('id',$info['waste_device_id'])
  84. ->value('title');
  85. $info['cateId']=$info['cateid'];
  86. $a = formatArray(['id','create_time',
  87. 'serial_number','wasteDeviceName','cateId','is_print','num','unit'],$info);
  88. HelpHander::success($a,'操作成功');
  89. }
  90. public function save(){
  91. $json = [
  92. 'serialNumber'=>input('serialNumber'),
  93. 'weight2'=>input('weight2'),
  94. 'status'=>input('status'),
  95. 'reason'=>input('reason'),
  96. 'userId'=>$this->userId,
  97. ];
  98. if(!in_array($json['status'],[1,2,3])){
  99. HelpHander::error('参数错误');
  100. }
  101. $ret = $this->model->saveStatus($json);
  102. if($ret){
  103. HelpHander::success([],'操作成功');
  104. }else{
  105. HelpHander::error('操作失败'.$this->model->getError());
  106. }
  107. }
  108. public function detail(){
  109. $serialNum = input('serialNum');
  110. $orgId = $this->orgId;
  111. if(strlen($serialNum) == 14){ // 包编号
  112. $ret = $this->model->packInfo($serialNum,$orgId);
  113. }else{
  114. $ret = $this->model->recordInfo($serialNum,$orgId);
  115. }
  116. if($ret){
  117. HelpHander::success($ret,'操作成功');
  118. }else{
  119. HelpHander::error('操作失败');
  120. }
  121. }
  122. public function lists(){
  123. $depId = input('depId');
  124. $date = input('date');
  125. $orgId = $this->orgId;
  126. $page=input('page/d',1);
  127. $size=input('size/d',10);
  128. $ret=$this->model->lists($orgId,$depId,$date,$page,$size,$this->userId);
  129. HelpHander::success($ret);
  130. }
  131. public function sign(){
  132. $path = input('path');
  133. $wasterecordid = input('wasteRecordId');
  134. if(!$path || !$wasterecordid){
  135. HelpHander::error('参数错误');
  136. }
  137. $ids = explode(',',$wasterecordid);
  138. $succ = 0;
  139. foreach ($ids as $k=>$v){
  140. $info = $this->model->getOne($v,$this->orgId);
  141. if(!$info){
  142. HelpHander::error($v.'记录不存在');
  143. }
  144. if($info['sign'] == 1){
  145. continue;
  146. }
  147. $res = Db::name('waste_record')
  148. ->where('id',$v)
  149. ->update([
  150. 'sign' => 1,
  151. 'sign_path' => $path,
  152. 'sign_user_id' => $this->userId,
  153. 'sign_time' => getTime()
  154. ]);
  155. if($res){
  156. $succ++;
  157. }
  158. }
  159. if($succ==count($ids)){
  160. HelpHander::success('操作成功');
  161. }else{
  162. HelpHander::error('操作失败');
  163. }
  164. }
  165. // 保存医废打包
  166. public function savePackage(){
  167. $data = [
  168. 'org_id' =>$this->orgId,
  169. 'user_id' => $this->userId,
  170. 'ids' =>input('ids'),
  171. ];
  172. $ids = explode(',',$data['ids']);
  173. $nids = [];
  174. foreach ($ids as $k=>$v){
  175. if($v && !in_array($v,$nids)){
  176. $nids[] = $v;
  177. }
  178. }
  179. $data['ids'] = $nids;
  180. if(!$data['ids']){
  181. HelpHander::error('未选择医废记录');
  182. }
  183. $ret = $this->model->savePackage($data);
  184. if(!$ret){
  185. HelpHander::error($this->model->getError());
  186. }
  187. HelpHander::success(['id' => $ret],'操作成功');
  188. }
  189. // 可使用的打包医废记录
  190. public function yflist(){
  191. $ret=$this->model->yflist($this->orgId,$this->userId);
  192. HelpHander::success($ret);
  193. }
  194. // 删除包内医废记录
  195. public function delpackage(){
  196. $id = input('id'); // 包id
  197. $recordId = input('recordId'); // 记录id
  198. $ret=$this->model->delpackage($this->orgId,$this->userId,$id,$recordId);
  199. if(!$ret){
  200. HelpHander::error($this->model->getError());
  201. }
  202. HelpHander::success([],'操作成功');
  203. }
  204. // 交接包
  205. public function jjpackage(){
  206. $id = input('id');
  207. $ret=$this->model->jjpackage($this->orgId,$this->userId,$id);
  208. if(!$ret){
  209. HelpHander::error($this->model->getError());
  210. }
  211. HelpHander::success([],'操作成功');
  212. }
  213. // 转运包
  214. public function zypackage(){
  215. $id = input('id');
  216. $ret=$this->model->zypackage($this->orgId,$this->userId,$id);
  217. if(!$ret){
  218. HelpHander::error($this->model->getError());
  219. }
  220. HelpHander::success([],'操作成功');
  221. }
  222. public function packages(){
  223. $page = input('page',1);
  224. $size = input('size',10);
  225. $ret=$this->model->packagesLists($this->orgId,$page,$size,$this->userId);
  226. HelpHander::success($ret);
  227. }
  228. public function recordLists(){
  229. $wasteDeviceId = input('wasteDeviceId/d',0);
  230. $start = input('start','');
  231. $end = input('end','');
  232. $orgId = $this->orgId;
  233. $page = input('page',1);
  234. $size = input('size',10);
  235. $ret=$this->model->recordLists($orgId,$wasteDeviceId,$start,$end,$page,$size,$this->userId);
  236. HelpHander::success($ret);
  237. }
  238. public function getByDepDayList(){
  239. $wasteDeviceId = input('wasteDeviceId/d',0);
  240. $str=$this->model->getByDepDayList($wasteDeviceId,$this->orgId);
  241. HelpHander::success(['str'=>$str]);
  242. }
  243. public function printList(){
  244. $ret=$this->model->printList($this->orgId,$this->userId);
  245. HelpHander::success($ret);
  246. }
  247. public function print(){
  248. $ids = input('ids','');
  249. if(empty($ids)){
  250. HelpHander::error('参数错误');
  251. }
  252. $ret = $this->model->print($ids,$this->orgId,$this->userId);
  253. $ret?HelpHander::success($ret):HelpHander::error($this->model->getError());
  254. }
  255. //补录
  256. public function addRecord(){
  257. $data = [
  258. 'org_id' => $this->orgId,
  259. 'user_id' => input('uid/d',0),
  260. 'waste_device_id' => input('wasteDeviceId/d',0),
  261. 'cateid' =>input('cateid/d',0),
  262. 'weight' => input('weight'),
  263. 'create_time' => input('createTime'),
  264. 'status' => 0,
  265. 'is_print' => 0,
  266. 'num'=>input('num',0),
  267. ];
  268. if(!$data['waste_device_id']){
  269. HelpHander::error('未选择收取科室');
  270. }
  271. if(!$data['cateid']){
  272. HelpHander::error('类型不能为空');
  273. }
  274. if($data['weight'] <= 0){
  275. HelpHander::error('重量不能为空');
  276. }
  277. if(!$data['create_time']){
  278. HelpHander::error('未选择收取时间');
  279. }
  280. $waste_record_id = model('WsateRecord')->saverecord($data);
  281. if(!$waste_record_id){
  282. HelpHander::error(model('WsateRecord')->getError());
  283. }
  284. HelpHander::success([],'操作成功');
  285. }
  286. public function getWasteUserList(){
  287. $lists = (new User())->getWasteWorker();
  288. HelpHander::success($lists);
  289. }
  290. }