cqpCow 2 lat temu
rodzic
commit
0a4b1fc75d

+ 12 - 2
app/Http/Controllers/Api/EmployeeController.php

@@ -274,8 +274,6 @@ class EmployeeController extends BaseController
 
     public function teamList(Request $request)
     {
-
-
         $service = new EmployeeService();
         $user = $request->get('auth');
         list($status,$data) = $service->teamList($request->all());
@@ -285,7 +283,19 @@ class EmployeeController extends BaseController
         }else{
             return $this->json_return(201,$data);
         }
+    }
+
+    public function teamDetail(Request $request)
+    {
+        $service = new EmployeeService();
+        $user = $request->get('auth');
+        list($status,$data) = $service->teamDetail($request->all());
 
+        if($status){
+            return $this->json_return(200,'',$data);
+        }else{
+            return $this->json_return(201,$data);
+        }
     }
 
 

+ 61 - 0
app/Http/Controllers/Api/EquipmentController.php

@@ -0,0 +1,61 @@
+<?php
+
+namespace App\Http\Controllers\Api;
+
+use App\Service\EquipmentService;
+use Illuminate\Http\Request;
+
+class EquipmentController extends BaseController
+{
+    public function equipmentList(Request $request)
+    {
+        $service = new EquipmentService();
+        $user = $request->get('auth');
+        list($status,$data) = $service->equipmentList($request->all());
+
+        if($status){
+            return $this->json_return(200,'',$data);
+        }else{
+            return $this->json_return(201,$data);
+        }
+    }
+
+    public function equipmentEdit(Request $request)
+    {
+        $service = new EquipmentService();
+        $user = $request->get('auth');
+        list($status,$data) = $service->equipmentEdit($request->all());
+
+        if($status){
+            return $this->json_return(200,'',$data);
+        }else{
+            return $this->json_return(201,$data);
+        }
+    }
+
+    public function equipmentAdd(Request $request)
+    {
+        $service = new EquipmentService();
+        $user = $request->get('auth');
+        list($status,$data) = $service->equipmentAdd($request->all());
+
+        if($status){
+            return $this->json_return(200,'',$data);
+        }else{
+            return $this->json_return(201,$data);
+        }
+    }
+
+    public function equipmentDel(Request $request)
+    {
+        $service = new EquipmentService();
+        $user = $request->get('auth');
+        list($status,$data) = $service->equipmentDel($request->all());
+
+        if($status){
+            return $this->json_return(200,'',$data);
+        }else{
+            return $this->json_return(201,$data);
+        }
+    }
+}

+ 14 - 0
app/Model/Equipment.php

@@ -0,0 +1,14 @@
+<?php
+
+namespace App\Model;
+
+use Illuminate\Database\Eloquent\Model;
+
+class Equipment extends Model
+{
+    protected $table = "equipment"; //指定表
+    const CREATED_AT = 'crt_time';
+    const UPDATED_AT = 'upd_time';
+    protected $dateFormat = 'U';
+}
+

+ 12 - 0
app/Service/EmployeeService.php

@@ -289,6 +289,18 @@ class EmployeeService extends Service
         return [true,''];
     }
 
+    public function teamDetail($data){
+        if($this->isEmpty($data,'id')) return [false,'ID不能为空!'];
+
+        $result = EmployeeTeamPermission::from('employee_team_permission as a')
+            ->leftJoin('employee as b','b.id','a.employee_id')
+            ->where('team_id',$data['id'])
+            ->select('b.id','b.emp_name')
+            ->get()->toArray();
+
+        return [true,$result];
+    }
+
     public function employeeRole($data){
         $role_ids = [];
         $employee_ids = [];

+ 96 - 0
app/Service/EquipmentService.php

@@ -0,0 +1,96 @@
+<?php
+
+namespace App\Service;
+
+use App\Model\Equipment;
+
+/**
+ * 设备档案
+ * @package App\Models
+ */
+class EquipmentService extends Service
+{
+    public function equipmentEdit($data){
+        list($status,$msg) = $this->equipmentRule($data,false);
+        if(!$status) return [$status,$msg];
+
+        $update = $msg['data'][0];
+        Equipment::where('id',$data['id'])->update($update);
+
+        return [true,'保存成功!'];
+    }
+
+    public function equipmentAdd($data,$user){
+        list($status,$msg) = $this->equipmentRule($data);
+        if(!$status) return [$status,$msg];
+
+        Equipment::insert($msg['data']);
+
+        return [true,'保存成功!'];
+    }
+
+    public function equipmentDel($data){
+        if($this->isEmpty($data,'id')) return [false,'ID必须!'];
+
+        Equipment::whereIn('id',$data['id'])->update([
+            'del_time' => time()
+        ]);
+
+        return [true,'删除成功'];
+    }
+
+    public function equipmentList($data){
+        $model = Equipment::where('del_time',0)
+            ->select('*');
+
+        if(! empty($data['title'])) $model->where('title', 'LIKE', '%'.$data['title'].'%');
+        if(! empty($data['code'])) $model->where('code', 'LIKE', '%'.$data['code'].'%');
+
+        $list = $this->limit($model,'',$data);
+
+        return [200,$list];
+    }
+
+    public function equipmentRule($data,$is_add = true){
+        if($this->isEmpty($data,'data')) return [false,'数据不能为空!'];
+
+        $code = array_column($data['data'],'code');
+        $code = array_map(function($val) {
+            return $val !== null ? $val : 0;
+        }, $code);
+        $code_count = array_count_values($code);
+        foreach ($code as $value){
+            if(empty($value)) return [false,'编码不能为空!'];
+            if($code_count[$value] > 1) return [false,'编码不能重复'];
+        }
+
+        $title = array_column($data['data'],'title');
+        $title = array_map(function($val) {
+            return $val !== null ? $val : 0;
+        }, $title);
+        $title_count = array_count_values($title);
+        foreach ($title as $value){
+            if(empty($value)) return [false,'名称不能为空!'];
+            if($title_count[$value] > 1) return [false,'名称不能重复'];
+        }
+
+        foreach ($data['data'] as $key => $value){
+            $data['data'][$key]['upd_time'] = time();
+            if($is_add){
+                $bool = Equipment::whereRaw("title = '{$value['title']}' OR code = '{$value['code']}'")
+                    ->where('del_time',0)
+                    ->exists();
+                $data['data'][$key]['crt_time'] = time();
+            }else{
+                if($this->isEmpty($data,'id')) return [false,'id不能为空!'];
+                $bool = Equipment::whereRaw("title = '{$value['title']}' OR code = '{$value['code']}'")
+                    ->where('id','<>',$data['id'])
+                    ->where('del_time',0)
+                    ->exists();
+            }
+            if($bool) return [false,'名称和编码不能重复'];
+        }
+
+        return [true,$data];
+    }
+}