cqp 3 månader sedan
förälder
incheckning
d0ba9a6d01
4 ändrade filer med 208 tillägg och 186 borttagningar
  1. 18 4
      app/Service/ExportFileService.php
  2. 8 6
      app/Service/ImportService.php
  3. 91 88
      config/excel/device.php
  4. 91 88
      config/excel/item.php

+ 18 - 4
app/Service/ExportFileService.php

@@ -4,7 +4,6 @@ namespace App\Service;
 
 use App\Exports\ExportOrder;
 use App\Exports\MultiSheetExport;
-use App\Model\RevenueCost;
 use Maatwebsite\Excel\Facades\Excel;
 
 class ExportFileService extends Service
@@ -18,9 +17,11 @@ class ExportFileService extends Service
     ];
 
     public function exportAll($data,$user){
-        if(empty($data['menu_id'])) return [false, '菜单ID不能为空'];
-        list($function, $name) = EmployeeService::fillMenu2($data['menu_id'], $user);
-        if (empty($function) || ! method_exists(self::class, $function)) return [false, "导出方法不存在,请联系开发"];
+        if(empty($data['menu_id'])) return [false, 'menu_id不能为空'];
+        if(empty($data['type'])) return [false, 'type不能为空'];
+        $function = $data['type'];
+        $name = $this->fillE($data['type'], $user);
+        if (! method_exists(self::class, $function)) return [false, "导出方法不存在,请联系开发"];
         self::$filename = $name;
 
         $export_type = $data['export_type'] ?? 0;
@@ -44,6 +45,19 @@ class ExportFileService extends Service
         return [true, $return];
     }
 
+    public function fillE($type, &$user){
+        $header = config("excel." . $type) ?? [];
+        $funcName = $header['name'] ?? "";
+
+//        $header_f = "extra_" . $menu_id;
+//        $service = new TableHeadService();
+//        if(method_exists($service,$header_f)) $service->$header_f($header_default);
+
+        $user['e_header_default'] = $header['array'];
+
+        return $funcName;
+    }
+
     private function fillData($data, $column, &$return)
     {
         // 预先创建包含默认值的键数组

+ 8 - 6
app/Service/ImportService.php

@@ -50,21 +50,23 @@ class ImportService extends Service
     }
 
     private function device($data,$user){
-        $config_array = $this->getTableConfig($data['type']);
-        if(empty($config_array)) return [false, ['导入配置表头文件不存在','']];
+        $config = $this->getTableConfig($data['type']);
+        if(empty($config)) return [false, ['导入配置表头文件不存在','']];
 
+        $config_array = $config['array'] ?? [];
         //生成下载文件
-        $filename =  "设备导入模板_" . time() . '.' . 'xlsx';
+        $filename =  $config['name'] . "导入模板_" . time() . '.' . 'xlsx';
 
         return [true, [$config_array, $filename]];
     }
 
     private function item($data,$user){
-        $config_array = $this->getTableConfig($data['type']);
-        if(empty($config_array)) return [false, ['导入配置表头文件不存在','']];
+        $config = $this->getTableConfig($data['type']);
+        if(empty($config)) return [false, ['导入配置表头文件不存在','']];
 
+        $config_array = $config['array'] ?? [];
         //生成下载文件
-        $filename =  "项目导入模板_" . time() . '.' . 'xlsx';
+        $filename =  $config['name'] . "导入模板_" . time() . '.' . 'xlsx';
 
         return [true, [$config_array, $filename]];
     }

+ 91 - 88
config/excel/device.php

@@ -1,92 +1,95 @@
 <?php
 return [
-    [
-        'key' =>'code',
-        'export' =>'code',
-        'value' => '固定资产编码',
-        'required' => true,
-        'is_main' => true,
-        'default' => "",
-        'unique' => true,
-        'enums' => [],
-        'comments' => '必填'
-    ],
-    [
-        'key' =>'title',
-        'export' =>'title',
-        'value' => '设备名称',
-        'required' => true,
-        'is_main' => true,
-        'default' => "",
-        'unique' => false,
-        'enums' => [],
-        'comments' => '必填'
-    ],
-    [
-        'key' =>'type',
-        'export' =>'type_title',
-        'value' => '固定资产类别',
-        'required' => true,
-        'is_main' => true,
-        'default' => 0,
-        'unique' => false,
-        'enums' => ['电子设备', '机器设备', '办公设备'],
-        'comments' => '必填'
-    ],
-    [
-        'key' =>'in_time',
-        'export' =>'in_time',
-        'value' => '入账日期',
-        'required' => false,
-        'is_main' => true,
-        'unique' => false,
-        'default' => "",
-    ],
-    [
-        'key' =>'size',
-        'export' =>'size',
-        'value' => '规格型号',
-        'required' => false,
-        'is_main' => true,
-        'unique' => false,
-        'default' => "",
-    ],
-    [
-        'key' =>'power',
-        'export' =>'power',
-        'value' => '功率',
-        'required' => false,
-        'default' => "",
-        'unique' => false,
-        'is_main' => true,
-    ],
-    [
-        'key' =>'original_value',
-        'export' =>'original_value',
-        'value' => '原始价值',
-        'required' => false,
-        'default' => 0,
-        'unique' => false,
-        'is_main' => true,
-    ],
-    [
-        'key' =>'initial_value',
-        'export' =>'initial_value',
-        'value' => '期初价值',
-        'required' => true,
-        'default' => 0,
-        'unique' => false,
-        'is_main' => true,
-    ],
-    [
-        'key' =>'is_use',
-        'export' => 'is_use_title',
-        'value' => '是否启用',
-        'required' => true,
-        'default' => 1,
-        'unique' => false,
-        'is_main' => true,
-        'enums' => ['是', '否'],
-        'comments' => '必填'
+    "name" => "设备档案",
+    "array" => [
+        [
+            'key' =>'code',
+            'export' =>'code',
+            'value' => '固定资产编码',
+            'required' => true,
+            'is_main' => true,
+            'default' => "",
+            'unique' => true,
+            'enums' => [],
+            'comments' => '必填'
+        ],
+        [
+            'key' =>'title',
+            'export' =>'title',
+            'value' => '设备名称',
+            'required' => true,
+            'is_main' => true,
+            'default' => "",
+            'unique' => false,
+            'enums' => [],
+            'comments' => '必填'
+        ],
+        [
+            'key' =>'type',
+            'export' =>'type_title',
+            'value' => '固定资产类别',
+            'required' => true,
+            'is_main' => true,
+            'default' => 0,
+            'unique' => false,
+            'enums' => ['电子设备', '机器设备', '办公设备'],
+            'comments' => '必填'
+        ],
+        [
+            'key' =>'in_time',
+            'export' =>'in_time',
+            'value' => '入账日期',
+            'required' => false,
+            'is_main' => true,
+            'unique' => false,
+            'default' => "",
+        ],
+        [
+            'key' =>'size',
+            'export' =>'size',
+            'value' => '规格型号',
+            'required' => false,
+            'is_main' => true,
+            'unique' => false,
+            'default' => "",
+        ],
+        [
+            'key' =>'power',
+            'export' =>'power',
+            'value' => '功率',
+            'required' => false,
+            'default' => "",
+            'unique' => false,
+            'is_main' => true,
+        ],
+        [
+            'key' =>'original_value',
+            'export' =>'original_value',
+            'value' => '原始价值',
+            'required' => false,
+            'default' => 0,
+            'unique' => false,
+            'is_main' => true,
+        ],
+        [
+            'key' =>'initial_value',
+            'export' =>'initial_value',
+            'value' => '期初价值',
+            'required' => true,
+            'default' => 0,
+            'unique' => false,
+            'is_main' => true,
+        ],
+        [
+            'key' =>'is_use',
+            'export' => 'is_use_title',
+            'value' => '是否启用',
+            'required' => true,
+            'default' => 1,
+            'unique' => false,
+            'is_main' => true,
+            'enums' => ['是', '否'],
+            'comments' => '必填'
+        ]
     ]
 ];

+ 91 - 88
config/excel/item.php

@@ -1,91 +1,94 @@
 <?php
 return [
-    [
-        'key' =>'code',
-        'export' =>'code',
-        'value' => '项目编码',
-        'required' => true,
-        'is_main' => true,
-        'default' => "",
-        'unique' => true,
-        'enums' => [],
-        'comments' => '必填'
-    ],
-    [
-        'key' =>'title',
-        'export' =>'title',
-        'value' => '项目名称',
-        'required' => true,
-        'is_main' => true,
-        'default' => "",
-        'unique' => false,
-        'enums' => [],
-        'comments' => '必填'
-    ],
-    [
-        'key' =>'start_time',
-        'export' =>'start_time',
-        'value' => '项目开始日期',
-        'required' => true,
-        'is_main' => true,
-        'default' => "",
-        'unique' => false,
-        'enums' => [],
-        'comments' => '必填(如 2025-01-02)'
-    ],
-    [
-        'key' =>'end_time',
-        'export' =>'end_time',
-        'value' => '项目结束日期',
-        'required' => true,
-        'is_main' => true,
-        'default' => "",
-        'unique' => false,
-        'enums' => [],
-        'comments' => '必填(如 2025-01-31)'
-    ],
-    [
-        'key' =>'state',
-        'export' =>'state_title',
-        'value' => '状态',
-        'required' => true,
-        'is_main' => true,
-        'default' => "0",
-        'unique' => false,
-        'enums' => ["待开始", "进行中", "已完成"],
-        'comments' => '必填'
-    ],
-    [
-        'key' =>'mark',
-        'export' =>'mark',
-        'value' => '项目说明',
-        'required' => false,
-        'is_main' => true,
-        'unique' => false,
-        'enums' => [],
-        'default' => "",
-        'comments' => ""
-    ],
-    [
-        'key' =>'man_list',
-        'export' =>'man_list',
-        'value' => '人员',
-        'required' => true,
-        'is_main' => false,
-        'unique' => false,
-        'enums' => [],
-        'default' => "",
-        'comments' => '必填(人员工号,多人员用英文逗号隔开,如 001,002,003,004)'
-    ],
-    [
-        'key' =>'device_list',
-        'export' =>'device_list',
-        'value' => '设备',
-        'required' => true,
-        'default' => "",
-        'is_main' => false,
-        'unique' => false,
-        'enums' => [],
-        'comments' => '必填(资产编码,多设备用英文逗号隔开,如 001,002,003,004)'
-    ],
+    "name" => "项目档案",
+    "array" => [
+        [
+            'key' =>'code',
+            'export' =>'code',
+            'value' => '项目编码',
+            'required' => true,
+            'is_main' => true,
+            'default' => "",
+            'unique' => true,
+            'enums' => [],
+            'comments' => '必填'
+        ],
+        [
+            'key' =>'title',
+            'export' =>'title',
+            'value' => '项目名称',
+            'required' => true,
+            'is_main' => true,
+            'default' => "",
+            'unique' => false,
+            'enums' => [],
+            'comments' => '必填'
+        ],
+        [
+            'key' =>'start_time',
+            'export' =>'start_time',
+            'value' => '项目开始日期',
+            'required' => true,
+            'is_main' => true,
+            'default' => "",
+            'unique' => false,
+            'enums' => [],
+            'comments' => '必填(如 2025-01-02)'
+        ],
+        [
+            'key' =>'end_time',
+            'export' =>'end_time',
+            'value' => '项目结束日期',
+            'required' => true,
+            'is_main' => true,
+            'default' => "",
+            'unique' => false,
+            'enums' => [],
+            'comments' => '必填(如 2025-01-31)'
+        ],
+        [
+            'key' =>'state',
+            'export' =>'state_title',
+            'value' => '状态',
+            'required' => true,
+            'is_main' => true,
+            'default' => "0",
+            'unique' => false,
+            'enums' => ["待开始", "进行中", "已完成"],
+            'comments' => '必填'
+        ],
+        [
+            'key' =>'mark',
+            'export' =>'mark',
+            'value' => '项目说明',
+            'required' => false,
+            'is_main' => true,
+            'unique' => false,
+            'enums' => [],
+            'default' => "",
+            'comments' => ""
+        ],
+        [
+            'key' =>'man_list',
+            'export' =>'man_list',
+            'value' => '人员',
+            'required' => true,
+            'is_main' => false,
+            'unique' => false,
+            'enums' => [],
+            'default' => "",
+            'comments' => '必填(人员工号,多人员用英文逗号隔开,如 001,002,003,004)'
+        ],
+        [
+            'key' =>'device_list',
+            'export' =>'device_list',
+            'value' => '设备',
+            'required' => true,
+            'default' => "",
+            'is_main' => false,
+            'unique' => false,
+            'enums' => [],
+            'comments' => '必填(资产编码,多设备用英文逗号隔开,如 001,002,003,004)'
+        ],
+    ]
 ];