|
|
@@ -173,26 +173,42 @@ class SignsService extends BaseService
|
|
|
if(in_array($cateId, [1,2])){
|
|
|
$checkInfo = SignsModel::where($where)->whereIn('cate_id',[1,2])
|
|
|
->where('sign_at','>=', date('Y-m-d'))
|
|
|
- ->select(['id','sign_at','cate_id'])
|
|
|
+ ->select(['id','sign_at','cate_id','siyuan_id'])
|
|
|
->orderBy('sign_at','desc')
|
|
|
->first();
|
|
|
if($checkInfo && $checkInfo->cate_id == $cateId){
|
|
|
return message('您最近已经打过'.$cateInfo->name.'卡,请先联系客服', false);
|
|
|
}
|
|
|
- if($cateId == 2 && !$cateInfo){
|
|
|
- return message('请先完成上班打卡,才能打下班卡', false);
|
|
|
+ if($cateId == 2){
|
|
|
+ if(!$checkInfo){
|
|
|
+ return message('请先完成上班打卡,才能打下班卡', false);
|
|
|
+ }
|
|
|
+ $siyuanInfo = SiyuanModel::where(['id'=> $checkInfo->siyuan_id,'mark'=> 1,'status'=> 1])
|
|
|
+ ->select(['id','title','status'])
|
|
|
+ ->first();
|
|
|
+ if($checkInfo->siyuan_id != $siyuanId){
|
|
|
+ return message('打卡寺院与今日最近一次['.$siyuanInfo->title.']不相同,请联系客服', false);
|
|
|
+ }
|
|
|
}
|
|
|
}else if(in_array($cateId, [3,4])){
|
|
|
$checkInfo = SignsModel::where($where)->whereIn('cate_id',[3,4])
|
|
|
->where('sign_at','>=', date('Y-m-d'))
|
|
|
- ->select(['id','sign_at','cate_id'])
|
|
|
+ ->select(['id','sign_at','cate_id','siyuan_id'])
|
|
|
->orderBy('sign_at','desc')
|
|
|
->first();
|
|
|
if($checkInfo && $checkInfo->cate_id == $cateId){
|
|
|
return message('您最近已经打过'.$cateInfo->name.'卡,请先联系客服', false);
|
|
|
}
|
|
|
- if($cateId == 4 && !$cateInfo){
|
|
|
- return message('请先完成上课打卡,才能打下课卡', false);
|
|
|
+ if($cateId == 4){
|
|
|
+ if(!$checkInfo){
|
|
|
+ return message('请先完成上课打卡,才能打下课卡', false);
|
|
|
+ }
|
|
|
+ $siyuanInfo = SiyuanModel::where(['id'=> $checkInfo->siyuan_id,'mark'=> 1,'status'=> 1])
|
|
|
+ ->select(['id','title','status'])
|
|
|
+ ->first();
|
|
|
+ if($checkInfo->siyuan_id != $siyuanId){
|
|
|
+ return message('打卡寺院与今日最近一次['.$siyuanInfo->title.']不相同,请联系客服', false);
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
|