1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192 |
- <?php
- namespace app\common\model;
- use think\Db;
- use think\Exception;
- class WashingRecord extends Base
- {
- public function addSave($post){
- $data = [
- 'create_time'=>date('Y-m-d H:i:s'),
- 'create_yyyy'=>date('Y'),
- 'create_yyyymm'=>date('Ym'),
- 'create_yyyymmdd'=>date('Ymd'),
- ];
- $items =$post['items'];
- unset($post['items']);
- $data = array_merge($data,$post);
- $this->startTrans();
- try{
- $recordId = $this->insertGetId($data);
- if(intval($recordId) <=0){
- exception('添加记录失败');
- }
- foreach ($items as $k=>$v){
- $items[$k]['create_time'] =date('Y-m-d H:i:s');
- $items[$k]['washing_record_id'] =$recordId;
- }
- $res = Db::name('washing_record_item')->insertAll($items);
- if (!$res) {
- \exception('保存物品失败');
- }
- $data['id'] = $recordId;
- $this->commit();
- return true;
- }catch (Exception $e){
- $this->rollback();
- $this->error = $e->getMessage();
- return false;
- }
- }
- public function returnWash($id,$orgId){
- $ret = $this->where('id',$id)
- ->where('mode',1)
- ->where('org_id',$orgId)
- ->find();
- if(!$ret){
- $this->error='记录不存在,或当前状态已归还';
- return false;
- }
- $res = $this->where('id',$id)->update(
- ['mode'=>2,'return_time'=>date('Y-m-d H:i:s')]);
- return $res;
- }
- public function confirmWash($id,$orgId,$sign='',$img=''){
- $ret = $this->where('id',$id)
- ->where('mode',2)
- ->where('org_id',$orgId)
- ->find();
- if(!$ret){
- $this->error='记录不存在,或当前状态不可确认';
- return false;
- }
- $res = $this->where('id',$id)->update(
- ['mode'=>3,'confirm_time'=>date('Y-m-d H:i:s'),'sign'=>$sign,'img'=>$img]);
- return $res;
- }
- public function getApiList($page,$size,$type,$userId,$orgId){
- $offset =($page-1)*$size;
- $data = $this
- ->alias('a')
- ->join('address b','a.dep_id=b.id')
- ->field('a.id,a.create_time,a.return_time,a.confirm_time,b.title,a.mode as mode')
- ->where('a.mode',$type)
- ->where('a.user_id',$userId)
- ->where('a.org_id',$orgId)
- ->where('a.del',0)
- ->limit($offset,$size)
- ->select();
- $data = $data?$data->toArray():[];
- foreach ($data as $k=>$v){
- $data[$k]['return_time'] = $v['return_time']?$v['return_time']:'';
- $data[$k]['confirm_time'] = $v['confirm_time']?$v['confirm_time']:'';
- }
- return $data;
- }
- }
|