|
|
@@ -2,14 +2,17 @@
|
|
|
|
|
|
namespace App\Http\Controllers\Api;
|
|
|
|
|
|
+use App\Exports\CompanyRdActivityExport;
|
|
|
use App\Exports\ItemSalaryFTMultipleSheetExport;
|
|
|
use App\Exports\ItemSalarySheetExport;
|
|
|
use App\Exports\ManActivityTimeCardMultipleSheetExport;
|
|
|
use App\Exports\ManMonthlyWorkHourMultipleSheetExport;
|
|
|
use App\Exports\ProjectDepreciationMultipleSheetExport;
|
|
|
+use App\Exports\ProjectStaffExport;
|
|
|
use App\Exports\ResearchExpenseMultipleSheetExport;
|
|
|
use App\Exports\ResearchExpenseSummaryMultipleSheetExport;
|
|
|
use App\Exports\ResearchProjectDetailMultiExport;
|
|
|
+use App\Exports\TechnicalStaffExport;
|
|
|
use Maatwebsite\Excel\Facades\Excel;
|
|
|
use PhpMqtt\Client\MqttClient;
|
|
|
// --- 必须引入以下两个 MQTT 相关的类 ---
|
|
|
@@ -18,7 +21,7 @@ use PhpMqtt\Client\ConnectionSettings;
|
|
|
class TestController extends BaseController
|
|
|
{
|
|
|
public function aa(){
|
|
|
- return $this->rdB();
|
|
|
+ return $this->testExport();
|
|
|
$mqtt = new MqttClient('47.111.77.194', 1883, 'web_publisher');
|
|
|
$mqtt->connect((new ConnectionSettings)->setUsername('yonglidev1')->setPassword('tZjUw0kQ'));
|
|
|
$mqtt->publish('/wy/119/RealtimeData/DT5/yonglidev1', json_encode(['cmd' => 'reset']), 0);
|
|
|
@@ -328,6 +331,7 @@ class TestController extends BaseController
|
|
|
return $filename;
|
|
|
}
|
|
|
|
|
|
+ //最长的报表
|
|
|
public function rdB(){
|
|
|
// 示例数据准备 (通常从数据库查询得出)
|
|
|
$year = 2026;
|
|
|
@@ -378,4 +382,133 @@ class TestController extends BaseController
|
|
|
|
|
|
return $filename;
|
|
|
}
|
|
|
+
|
|
|
+ //企业研究开发活动汇总表
|
|
|
+ public function exportRdSummary() {
|
|
|
+
|
|
|
+ // 模拟从数据库获取的研发活动列表数据
|
|
|
+ $rdData = [
|
|
|
+ [
|
|
|
+ 'activity_name' => '智能AI图像识别算法研发项目',
|
|
|
+ 'time_range' => '2025.01-2025.12',
|
|
|
+ 'budget' => 500000.00,
|
|
|
+ 'actual_spending' => 485000.50,
|
|
|
+ 'tech_area' => '人工智能',
|
|
|
+ 'remark' => '核心算法已申请软著',
|
|
|
+ ],
|
|
|
+ [
|
|
|
+ 'activity_name' => '高并发云原生架构优化',
|
|
|
+ 'time_range' => '2025.03-2025.10',
|
|
|
+ 'budget' => 300000.00,
|
|
|
+ 'actual_spending' => 310000.00,
|
|
|
+ 'tech_area' => '云计算',
|
|
|
+ 'remark' => '超出预算部分已通过审批',
|
|
|
+ ],
|
|
|
+ ];
|
|
|
+
|
|
|
+ $file_name = "企业研发活动汇总表_" . date("YmdHis");
|
|
|
+ $filename = $file_name . '.xlsx';
|
|
|
+
|
|
|
+ // 触发导出
|
|
|
+ Excel::store(
|
|
|
+ new CompanyRdActivityExport($rdData),
|
|
|
+ "public/export/{$filename}"
|
|
|
+ );
|
|
|
+
|
|
|
+ return $filename;
|
|
|
+ }
|
|
|
+
|
|
|
+ // 企业研究开发科技人员情况表
|
|
|
+ public function exportTechnicalStaff()
|
|
|
+ {
|
|
|
+ // 模拟测试数据,对应图片中的示例内容
|
|
|
+ $testData = [
|
|
|
+ [
|
|
|
+ 'name' => '张三',
|
|
|
+ 'id_card' => '33010119900101XXXX',
|
|
|
+ 'education' => '本科',
|
|
|
+ 'major' => '计算机科学',
|
|
|
+ 'title_level' => '高级工程师',
|
|
|
+ 'department_job' => "技术部/\n系统集成工程师",
|
|
|
+ 'employment_type' => '在职',
|
|
|
+ ],
|
|
|
+ [
|
|
|
+ 'name' => '李四',
|
|
|
+ 'id_card' => '33010119920202XXXX',
|
|
|
+ 'education' => '硕士',
|
|
|
+ 'major' => '机械工程',
|
|
|
+ 'title_level' => "工程师/\n注册电气工程师",
|
|
|
+ 'department_job' => "生产部/\n模具制作师",
|
|
|
+ 'employment_type' => '在职',
|
|
|
+ ],
|
|
|
+ [
|
|
|
+ 'name' => '王五',
|
|
|
+ 'id_card' => '33010119950505XXXX',
|
|
|
+ 'education' => '大专',
|
|
|
+ 'major' => '自动化',
|
|
|
+ 'title_level' => '助理工程师',
|
|
|
+ 'department_job' => "生产部/\n产品试制研发辅助员",
|
|
|
+ 'employment_type' => '临聘',
|
|
|
+ ],
|
|
|
+ [
|
|
|
+ 'name' => '赵六',
|
|
|
+ 'id_card' => '33010119800808XXXX',
|
|
|
+ 'education' => '博士',
|
|
|
+ 'major' => '电子工程',
|
|
|
+ 'title_level' => '教授/电工证',
|
|
|
+ 'department_job' => '研发部/技术顾问',
|
|
|
+ 'employment_type' => '兼职',
|
|
|
+ ]
|
|
|
+ ];
|
|
|
+
|
|
|
+ $filename = '企业研究开发科技人员情况表_' . date('Ymd') . '.xlsx';
|
|
|
+
|
|
|
+ Excel::store(new TechnicalStaffExport($testData), "public/export/{$filename}");
|
|
|
+
|
|
|
+ return $filename;
|
|
|
+ }
|
|
|
+
|
|
|
+ //项目研发活动人员情况表
|
|
|
+ public function testExport()
|
|
|
+ {
|
|
|
+ // 模拟数据:对应图片中的角色定义示例
|
|
|
+ $data = [
|
|
|
+ [
|
|
|
+ 'name' => '张技术',
|
|
|
+ 'education' => '本科',
|
|
|
+ 'major' => '机械设计',
|
|
|
+ 'title' => '高级工程师',
|
|
|
+ 'role_desc' => '项目负责人',
|
|
|
+ 'role_name' => '总指挥',
|
|
|
+ 'dept' => '研发部',
|
|
|
+ 'duty' => '负责项目整体进度把控与技术架构设计',
|
|
|
+ ],
|
|
|
+ [
|
|
|
+ 'name' => '李研发',
|
|
|
+ 'education' => '硕士',
|
|
|
+ 'major' => '自动化',
|
|
|
+ 'title' => '工程师',
|
|
|
+ 'role_desc' => '技术负责人',
|
|
|
+ 'role_name' => '核心研发',
|
|
|
+ 'dept' => '技术部',
|
|
|
+ 'duty' => '负责核心算法编写与系统集成',
|
|
|
+ ],
|
|
|
+ [
|
|
|
+ 'name' => '王测试',
|
|
|
+ 'education' => '大专',
|
|
|
+ 'major' => '电子信息',
|
|
|
+ 'title' => '助工',
|
|
|
+ 'role_desc' => '测试工程师',
|
|
|
+ 'role_name' => '质量检测',
|
|
|
+ 'dept' => '质检部',
|
|
|
+ 'duty' => '负责产品试制阶段的可靠性测试',
|
|
|
+ ]
|
|
|
+ ];
|
|
|
+
|
|
|
+ $filename = '项目研发活动人员情况表' . date('Ymd') . '.xlsx';
|
|
|
+
|
|
|
+ Excel::store(new ProjectStaffExport($data), "public/export/{$filename}");
|
|
|
+
|
|
|
+ return $filename;
|
|
|
+ }
|
|
|
}
|