Commit 9173d5a5 by biao

111

parent 6761e7c2
......@@ -97,6 +97,8 @@ define("THEME_IMAGES_PATH", COMPASS_ROOT . "/data/media");
define("GOVERNMENT_QR_MAX_COUNT", 5);
// 领导注册用二维码可用的时间(生成时间开始+天数)
define("GOVERNMENT_QR_MAX_DAY", 7);
// 最大可创建圈子数量
define("MAX_CIRCLE_COUNT", 3);
// ポップアップの窓が画像最低サイズ
define("POPUP_WINDOW_IMAGE_MIN_WIDTH", 480);
......
......@@ -8,11 +8,12 @@ ErrorLogger::doOutput("Compass...ajax_attend_volunteer_event_circle.php....Start
//获取参数
$unionId = ParamUtil::getRequestString("unionId");
$eventId = ParamUtil::getRequestNumber("eventId", 0);
$circleIds = ParamUtil::getRequestString("circleIds");
$result = array();
//参数检查
if(empty($unionId) || empty($eventId)) {
if(empty($unionId) || empty($eventId)|| empty($circleIds)) {
$result["message"] = "参数错误!";
responseNG($result);
}
......@@ -27,6 +28,8 @@ if(empty($userList)) {
responseNG($result);
}
$userMst = $userList[0];
//查询志愿者活动
$volunteerDat = VolunteerEventDat::getById($eventId);
if(empty($volunteerDat)) {
......@@ -34,8 +37,6 @@ if(empty($volunteerDat)) {
responseNG($result);
}
$userMst = $userList[0];
//是否已经报名
$param = array();
$param['volunteer_event_id'] = $eventId;
......@@ -47,55 +48,59 @@ if(!empty($tmpList)) {
responseNG($result);
}
//查找圈子信息
$param = array();
$param['owner_id'] = $userMst->id;
$param['delete_flg'] = false;
$tmpCircleDatList = CircleDat::getList($param, "id", "asc", 0, 1);
if(empty($tmpCircleDatList)) {
$result["message"] = "不是圈主!";
//分解获取圈子id参数
$tmpArray = explode("|",$circleIds);
$circleIdArray = array_filter($tmpArray);
if(empty($circleIdArray)) {
$result["message"] = "参数错误!";
responseNG($result);
}
$circleDat = $tmpCircleDatList[0];
//报名顺序
$param = array();
$param['volunteer_event_id'] = $userMst->id;
$param['delete_flg'] = false;
$tmpCount = VolunteerEventMemberDat::getListCount($param);
$indexNo = sprintf("%05d", $tmpCount+1);
//报名表插入数据
$volunteerEventMemberDat = new VolunteerEventMemberDat();
$volunteerEventMemberDat->volunteer_event_id = $volunteerDat->id;
$volunteerEventMemberDat->user_id = $userMst->id;
$volunteerEventMemberDat->circle_id = $circleDat->id;
$volunteerEventMemberDat->is_owner = true;
$volunteerEventMemberDat->index_no = $indexNo;
$volunteerEventMemberDat->mobile = $userMst->mobile;
$volunteerEventMemberDat->save();
//查找圈子成员,给圈子成员发送邀请消息
$param = array();
$param['circle_id'] = $circleDat->id;
$param['user_id_NOT'] = $userMst->id;//不包含自己
$param['delete_flg'] = false;
$tmpCircleMemberList = CircleMemberDat::getList($param);
if(!empty($tmpCircleMemberList)) {
foreach($tmpCircleMemberList as $tmpCircleMember) {
$userMessageDat = new UserMessageDat();
$userMessageDat->user_id = $tmpCircleMember->user_id;
$userMessageDat->title = "活动参加邀请通知";
$userMessageDat->comment = "嘀嘀嘀!圈主邀请您参加活动,快点击参加报名吧!";
//添加附件附件
$userMessageDat->attach_dat_type = "VOLUNTEER";
$userMessageDat->attach_dat_id = $circleDat->id;
$userMessageDat->attach_dat_path = "/pages/volunteersEventDetail/volunteersEventDetail?eventId={$volunteerDat->id}&circleId={$circleDat->id}";
$userMessageDat->save();
//循环处理圈子报名
foreach($circleIdArray as $circleId) {
$circleDat = CircleDat::getById($circleId);
if(empty($circleDat)) {
continue;
}
//报名顺序
$param = array();
$param['volunteer_event_id'] = $eventId;
$param['delete_flg'] = false;
$tmpCount = VolunteerEventMemberDat::getListCount($param);
$indexNo = sprintf("%05d", $tmpCount+1);
//报名表插入数据
$volunteerEventMemberDat = new VolunteerEventMemberDat();
$volunteerEventMemberDat->volunteer_event_id = $eventId;
$volunteerEventMemberDat->user_id = $userMst->id;
$volunteerEventMemberDat->circle_id = $circleId;
$volunteerEventMemberDat->is_owner = true;
$volunteerEventMemberDat->index_no = $indexNo;
$volunteerEventMemberDat->mobile = $userMst->mobile;
$volunteerEventMemberDat->save();
//查找圈子成员,给圈子成员发送邀请消息
$param = array();
$param['circle_id'] = $circleId;
$param['user_id_NOT'] = $userMst->id;//不包含自己
$param['delete_flg'] = false;
$tmpCircleMemberList = CircleMemberDat::getList($param);
if(!empty($tmpCircleMemberList)) {
foreach($tmpCircleMemberList as $tmpCircleMember) {
$userMessageDat = new UserMessageDat();
$userMessageDat->user_id = $tmpCircleMember->user_id;
$userMessageDat->title = "活动参加邀请通知";
$userMessageDat->comment = "嘀嘀嘀!圈主邀请您参加活动,快点击参加报名吧!";
//添加附件附件
$userMessageDat->attach_dat_type = "VOLUNTEER";
$userMessageDat->attach_dat_id = $circleDat->id;
$userMessageDat->attach_dat_path = "/pages/volunteersEventDetail/volunteersEventDetail?eventId={$eventId}&circleId={$circleId}";
$userMessageDat->save();
}
}
}
}
ErrorLogger::doOutput("Compass...ajax_attend_volunteer_event_circle.php....End.", 0);
......
......@@ -41,32 +41,32 @@ $param = array();
$param['volunteer_event_id'] = $eventId;
$param['user_id'] = $userMst->id;
$param['delete_flg'] = false;
$tmpVolunteerEventMemberList = VolunteerEventMemberDat::getList($param, "id", "desc", 0, 1);
$tmpVolunteerEventMemberList = VolunteerEventMemberDat::getList($param, "id", "desc");
if(empty($tmpVolunteerEventMemberList)) {
$result["message"] = "数据错误!";
responseNG($result);
}
$volunteerEventMemberDat = $tmpVolunteerEventMemberList[0];
//个人报名直接取消
if($volunteerEventMemberDat->circle_id == 0) {
$volunteerEventMemberDat->delete_flg = true;
$volunteerEventMemberDat->save();
} else {
//圈子报名
if($volunteerEventMemberDat->is_owner) {
//圈主取消的情况下,取消所有成员报名
$circleId = $volunteerEventMemberDat->circle_id;
$sql = "update volunteer_event_member_dat set delete_flg=true where delete_flg=false and volunteer_event_id='{$eventId}' and circle_id='{$circleId}'";
$db = &CompassDBManager::getInstance();
$db->executeQuery($sql);
} else {
//成员取消参加,之取消自己的的参加
foreach($tmpVolunteerEventMemberList as $volunteerEventMemberDat) {
//个人报名直接取消
if($volunteerEventMemberDat->circle_id == 0) {
$volunteerEventMemberDat->delete_flg = true;
$volunteerEventMemberDat->save();
} else {
//圈子报名
if($volunteerEventMemberDat->is_owner) {
//圈主取消的情况下,取消所有成员报名
$circleId = $volunteerEventMemberDat->circle_id;
$sql = "update volunteer_event_member_dat set delete_flg=true where delete_flg=false and volunteer_event_id='{$eventId}' and circle_id='{$circleId}'";
$db = &CompassDBManager::getInstance();
$db->executeQuery($sql);
} else {
//圈子成员只取消自己的的参加
$volunteerEventMemberDat->delete_flg = true;
$volunteerEventMemberDat->save();
}
}
}
ErrorLogger::doOutput("Compass...ajax_cancel_volunteer_event_personal.php....End.", 0);
......
......@@ -37,31 +37,16 @@ if(empty($userList)) {
$userMst = $userList[0];
//是否已经有圈子
//检查圈子数量
$param = array();
$param['owner_id'] = $userMst->id;
$param['delete_flg'] = false;
$circleCount = CircleDat::getListCount($param);
if($circleCount > 0 && !DEBUG_MODE) {
$result["message"] = "只能创建一个圈子!";
if($circleCount >= MAX_CIRCLE_COUNT) {
$result["message"] = "最多只能创建" + MAX_CIRCLE_COUNT + "个圈子!";
responseNG($result);
}
if(DEBUG_MODE) {
$param = array();
$param['owner_id'] = $userMst->id;
$param['delete_flg'] = false;
$circleList = CircleDat::getList($param, "id", "desc", 0, 1);
if(!empty($circleList)) {
$circleDat = $circleList[0];
//返回数据
$result["message"] = "重复建圈子!";
$result["circleDat"] = $circleDat;
responseOK($result);
}
}
//建立圈子
$circleDat = new CircleDat();
$circleDat->title = $title;
......
......@@ -112,7 +112,15 @@ $param = array();
$param['delete_flg'] = false;
$mediaList = CourseMediaDat::getList($param,'id','desc', 0, 3);
//未读消息数量
$param = array();
$param['user_id'] = $userMst->id;
$param['is_read'] = false;
$param['delete_flg'] = false;
$unreadMessageCount = UserMessageDat::getListCount($param);
//组装返回数据
$result["unreadMessageCount"] = $volunteerEventList;
$result["volunteerEventList"] = $volunteerEventList;
$result["familyEventList"] = $familyEventList;
$result["socialEventList"] = $socialEventList;
......
......@@ -51,13 +51,14 @@ if(!empty($tmpList)) {
}
}
//该用户是否为圈主
//该用户是否为圈主以及获取该用户所有自建圈子
$isCircleOwner = false;
$ownerCircleList = array();
$param = array();
$param['owner_id'] = $userMst->id;
$param['delete_flg'] = false;
$tmpCount = CircleDat::getListCount($param);
if($tmpCount > 0) {
$ownerCircleList = CircleDat::getList($param, "id", "desc");
if(!empty($ownerCircleList)) {
$isCircleOwner = true;
}
......@@ -80,12 +81,12 @@ $tmpMemberList1 = VolunteerEventMemberDat::getList($param, "id", "desc");
if(!empty($tmpMemberList1)) {
foreach($tmpMemberList1 as $tmpMember) {
$tmpUser = UserMst::getById($tmpMember->user_id);
$tmpArray= array("name"=>$tmpUser->name);
$tmpArray= array("name"=>$tmpUser->name, "header_img"=>$tmpUser->header_img );
$personalMemberList[] = $tmpArray;
}
}
//【圈子】
//【圈子已报名成员
$param = array();
$param['volunteer_event_id'] = $userMst->id;
$param['circle_id_MIN'] = 1;
......@@ -121,6 +122,7 @@ if($volunteerDat->include_social_user) {
$result["isEnrollFinish"] = $isEnrollFinish;
$result["isComplete"] = $isComplete;
$result["isCircleOwner"] = $isCircleOwner;
$result["ownerCircleList"] = $ownerCircleList;
$result["isMember"] = $isMember;
$result["volunteerEventDat"] = $volunteerDat;
$result["personalMemberList"] = $personalMemberList;
......
......@@ -69,6 +69,21 @@
</van-tabs>
<view class='actionBtn' bindtap='userAction' wx:if="{{showActionButton}}">{{menuText}}</view>
</view>
<view class="ownerAttendDialog" wx:if="{{showOwnerDialog}}">
<view class="dialogMsg">检测到您为圈主身份,是否以圈主身份参加,确认后,邀请参加信息会通知您的圈内成员?</view>
<view class="circleList">
<view class="circleItem" wx:for="{{ownerCircleList}}" wx:for-index="i">
<van-checkbox value="{{ checkCircleIndex[i] }}" shape="square" bind:change="onClickCircle" icon-size="16px" data-index="{{i}}"/>
<view class="circleName">{{item.title}}</view>
</view>
</view>
<view class="buttonRow">
<view class="button" bindtap="circleEnroll">确认</view>
<view class="button" bindtap="personalEnroll">个人参加</view>
<view class="button" bindtap="back">返回</view>
</view>
</view>
</view>
<van-dialog id="van-dialog" />
<van-notify id="van-notify" />
......@@ -101,4 +101,69 @@
margin-bottom: 10px;
color: #fff;
border-radius: 15px;
}
/**圈主报名对话框**/
.ownerAttendDialog{
position: fixed;
bottom: 100px;
width: 90%;
margin-left:5%;
display: flex;
flex-direction: column;
justify-content: space-around;
align-items: center;
text-align: left;
z-index: 99;
color: #363636;
background:#fff;
border: 1rpx solid #969696;
}
.ownerAttendDialog .dialogMsg {
width: 90%;
margin:15px auto;
line-height: 20px;
font-weight: bold;
}
.ownerAttendDialog .circleList{
width: 90%;
margin:10px auto;
display: flex;
flex-direction: column;
justify-content: space-around;
align-items: center;
}
.ownerAttendDialog .circleList .circleItem{
width: 100%;
margin:5px auto;
display: flex;
flex-direction: row;
justify-content: flex-start;
align-items: center;
}
.ownerAttendDialog .circleList .circleItem .circleName{
padding-left: 5px;
}
.ownerAttendDialog .buttonRow{
width: 90%;
margin:10px auto;
display: flex;
flex-direction: row;
justify-content: space-around;
align-items: center;
}
.ownerAttendDialog .buttonRow .button{
width: 28%;
height:32px;
line-height: 32px;
text-align: center;
border: 1rpx solid #969696;
border-radius: 4px;
}
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment