linwu 1 年之前
父节点
当前提交
9f5dab6a4f
共有 2 个文件被更改,包括 69 次插入7 次删除
  1. 19 7
      app/mainapp/controller/Activity.php
  2. 50 0
      update/2024-1-4.sql

+ 19 - 7
app/mainapp/controller/Activity.php

@@ -47,16 +47,20 @@ class Activity extends BaseController
             page_result(1, "数据错误");
         }
 
-        $list = ActivityModel::findOrEmpty($id);
-        if ($list->isEmpty()) {
+        $info = ActivityModel::findOrEmpty($id);
+        if ($info->isEmpty()) {
             page_result(1, "活动不存在");
         }
+        $info->join_num++;
+        $info->save();
 
         ActivityJoinModel::create([
             'user_id'     => $userid,
             'activity_id' => $id,
             'create_time' => time(),
         ]);
+
+        page_result(0);
     }
 
     public function joinList()
@@ -79,14 +83,22 @@ class Activity extends BaseController
     public function cancelJoin()
     {
         $id = input('id/d', 0);
-        if (empty($userid)) {
+        if (empty($id)) {
             page_result(1, "数据错误");
         }
 
-        ActivityJoinModel::update([
-            'cancel_time' => time(),
-            'status'      => 2,
-        ], ['id' => $id]);
+        $join = ActivityJoinModel::find($id);
+        if (empty($join)) {
+            page_result(1, "数据错误");
+        }
+        if ($join->status == 2) {
+            page_result(0, "操作成功");
+        }
+        $join->cancel_time = time();
+        $join->status = 2;
+        $join->save();
+
+        ActivityModel::where('id' , $join['activity_id'])->dec('join_num')->update();
 
         page_result(0, "操作成功");
     }

+ 50 - 0
update/2024-1-4.sql

@@ -0,0 +1,50 @@
+/*
+Navicat MySQL Data Transfer
+
+Source Server         : localhost
+Source Server Version : 50724
+Source Host           : localhost:3306
+Source Database       : jinjianghc
+
+Target Server Type    : MYSQL
+Target Server Version : 50724
+File Encoding         : 65001
+
+Date: 2024-01-04 08:38:09
+*/
+
+SET FOREIGN_KEY_CHECKS=0;
+
+-- ----------------------------
+-- Table structure for echo_activity
+-- ----------------------------
+DROP TABLE IF EXISTS `echo_activity`;
+CREATE TABLE `echo_activity` (
+  `id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
+  `title` varchar(100) NOT NULL DEFAULT '' COMMENT '标题',
+  `main_image` varchar(255) NOT NULL DEFAULT '' COMMENT '主图',
+  `start_time` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '开始时间',
+  `address` varchar(255) NOT NULL DEFAULT '' COMMENT '活动地点',
+  `content` text COMMENT '内容',
+  `create_time` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '创建时间',
+  `join_num` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '参加人数',
+  `status` tinyint(3) unsigned NOT NULL DEFAULT '1' COMMENT '审核状态:1显示,2隐藏',
+  `priority` int(11) NOT NULL DEFAULT '255' COMMENT '排序',
+  PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='活动表';
+
+-- ----------------------------
+-- Table structure for echo_activity_join
+-- ----------------------------
+DROP TABLE IF EXISTS `echo_activity_join`;
+CREATE TABLE `echo_activity_join` (
+  `id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
+  `user_id` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '用户id',
+  `activity_id` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '活动id',
+  `create_time` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '创建时间',
+  `comment` varchar(1000) NOT NULL DEFAULT '' COMMENT '备注',
+  `cancel_time` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '取消时间',
+  `status` tinyint(4) NOT NULL DEFAULT '1' COMMENT '状态:1报名成功,2取消',
+  PRIMARY KEY (`id`),
+  KEY `activity_id` (`activity_id`,`user_id`) USING BTREE
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='活动参加记录表';