wuxw пре 3 година
родитељ
комит
3044e56989

+ 10 - 0
java110-bean/src/main/java/com/java110/dto/communitySpacePersonTime/CommunitySpacePersonTimeDto.java

@@ -22,6 +22,8 @@ public class CommunitySpacePersonTimeDto extends PageDto implements Serializable
     private String timeId;
     private String timeId;
     private String communityId;
     private String communityId;
 
 
+    private String appointmentTime;
+
 
 
     private Date createTime;
     private Date createTime;
 
 
@@ -92,4 +94,12 @@ public class CommunitySpacePersonTimeDto extends PageDto implements Serializable
     public void setCspIds(String[] cspIds) {
     public void setCspIds(String[] cspIds) {
         this.cspIds = cspIds;
         this.cspIds = cspIds;
     }
     }
+
+    public String getAppointmentTime() {
+        return appointmentTime;
+    }
+
+    public void setAppointmentTime(String appointmentTime) {
+        this.appointmentTime = appointmentTime;
+    }
 }
 }

+ 4 - 0
java110-db/src/main/resources/mapper/community/CommunitySpacePersonTimeV1ServiceDaoImplMapper.xml

@@ -82,7 +82,11 @@
     <select id="queryCommunitySpacePersonTimesCount" parameterType="Map" resultType="Map">
     <select id="queryCommunitySpacePersonTimesCount" parameterType="Map" resultType="Map">
         select count(1) count
         select count(1) count
         from community_space_person_time t
         from community_space_person_time t
+        left join community_space_person csp on t.csp_id = csp.csp_id and csp.status_cd = '0'
         where 1 =1
         where 1 =1
+        <if test="appointmentTime !=null and appointmentTime != ''">
+            and csp.appointment_time= #{appointmentTime}
+        </if>
         <if test="spaceId !=null and spaceId != ''">
         <if test="spaceId !=null and spaceId != ''">
             and t.space_id= #{spaceId}
             and t.space_id= #{spaceId}
         </if>
         </if>

+ 29 - 0
service-community/src/main/java/com/java110/community/cmd/communitySpace/SaveCommunitySpacePersonCmd.java

@@ -25,6 +25,7 @@ import com.java110.core.event.cmd.CmdEvent;
 import com.java110.core.factory.GenerateCodeFactory;
 import com.java110.core.factory.GenerateCodeFactory;
 import com.java110.doc.annotation.*;
 import com.java110.doc.annotation.*;
 import com.java110.dto.communitySpacePerson.CommunitySpacePersonDto;
 import com.java110.dto.communitySpacePerson.CommunitySpacePersonDto;
+import com.java110.dto.communitySpacePersonTime.CommunitySpacePersonTimeDto;
 import com.java110.intf.community.ICommunitySpacePersonTimeV1InnerServiceSMO;
 import com.java110.intf.community.ICommunitySpacePersonTimeV1InnerServiceSMO;
 import com.java110.intf.community.ICommunitySpacePersonV1InnerServiceSMO;
 import com.java110.intf.community.ICommunitySpacePersonV1InnerServiceSMO;
 import com.java110.po.communitySpacePerson.CommunitySpacePersonPo;
 import com.java110.po.communitySpacePerson.CommunitySpacePersonPo;
@@ -109,6 +110,34 @@ public class SaveCommunitySpacePersonCmd extends Cmd {
         Assert.hasKeyAndValue(reqJson, "payWay", "请求报文中未包含payWay");
         Assert.hasKeyAndValue(reqJson, "payWay", "请求报文中未包含payWay");
         Assert.hasKeyAndValue(reqJson, "communityId", "请求报文中未包含communityId");
         Assert.hasKeyAndValue(reqJson, "communityId", "请求报文中未包含communityId");
 
 
+        if(!reqJson.containsKey("openTimes")){
+            cmdDataFlowContext.setResponseEntity(ResultVo.success());
+            return ;
+        }
+
+        JSONArray openTimes = reqJson.getJSONArray("openTimes");
+
+        if(openTimes == null || openTimes.size() <1){
+            cmdDataFlowContext.setResponseEntity(ResultVo.success());
+            return ;
+        }
+        CommunitySpacePersonTimeDto communitySpacePersonTimeDto = null;
+        int flag = 0;
+        for(int timeIndex = 0 ;timeIndex < openTimes.size(); timeIndex++) {
+            if("N".equals(openTimes.getJSONObject(timeIndex).getString("isOpen"))){
+                continue;
+            }
+            communitySpacePersonTimeDto = new CommunitySpacePersonTimeDto();
+            communitySpacePersonTimeDto.setCommunityId(reqJson.getString("communityId"));
+            communitySpacePersonTimeDto.setAppointmentTime(reqJson.getString("appointmentTime"));
+            communitySpacePersonTimeDto.setHours(openTimes.getJSONObject(timeIndex).getString("hours"));
+            communitySpacePersonTimeDto.setSpaceId(reqJson.getString("spaceId"));
+            flag = communitySpacePersonTimeV1InnerServiceSMOImpl.queryCommunitySpacePersonTimesCount(communitySpacePersonTimeDto);
+            if(flag > 0){
+                throw new CmdException(reqJson.getString("appointmentTime")+","+openTimes.getJSONObject(timeIndex).getString("hours")+"已经被预约");
+            }
+        }
+
     }
     }
 
 
     @Override
     @Override