CREATE proc sp_MeetingCheck_Test        
@serialno varchar(max)='',   ---- 主档serialno        
@title nvarchar(200)='',--会议主题        
@buser nvarchar(50)='' --建档人        
as        
declare @Result varchar(max)        
declare @sdate datetime        
declare @edate datetime        
declare @stime datetime        
declare @etime datetime        
declare @shour nvarchar(50)        
declare @ehour nvarchar(50)        
declare @sdate1 datetime        
declare @edate1 datetime        
declare @stime1 datetime        
declare @etime1 datetime        
declare @shour1 nvarchar(50)        
declare @ehour1 nvarchar(50)        
declare @adress nvarchar(100)        
        
--INSERT INTO A1(A1) VALUES('1')        
        
set xact_abort on        
begin transaction  --select * from A1 delete from A1        
begin        
set @Result='SUCCESS'        
        
    -----------获取当前单据相关数据------        
    select         
    @sdate=MeetingDate,        
    @edate=MeetingDate2,        
    @stime=cast(convert(varchar(50),MeetingDate,23)+' '+startDatetime as datetime),        
    @etime=cast(convert(varchar(50),MeetingDate2,23)+' '+endDatetime as datetime),        
    @shour=startDatetime,        
    @ehour=endDatetime,        
    @adress=MeetingAdress        
    from t_OA_meetingApply where serialno=@serialno        
            
    ------------对比最前已审核10张单,用游标做对比-----        
    select top 10        
    MeetingDate,isnull(MeetingDate2,MeetingDate) MeetingDate2,        
    cast(convert(varchar(50),MeetingDate,23)+' '+startDatetime as datetime) stime1,        
    cast(convert(varchar(50),isnull(MeetingDate2,MeetingDate),23)+' '+endDatetime as datetime) etime1,        
    startDatetime,endDatetime        
    into #mttmp1 from t_OA_meetingApply where MeetingAdress=@adress          
    and checked=1 order by stime1 desc        
    --------------------------------------         
    declare cur cursor for        
    select MeetingDate,MeetingDate2,stime1,etime1,startDatetime,endDatetime from #mttmp1        
    for read only          
    open cur        
    fetch cur into @sdate1,@edate1,@stime1,@etime1,@shour1,@ehour1          
    while @@fetch_status=0          
    begin          
         --set @Result='SUCCESS'        
         --@sdate1,@edate1 不带时间        
         --@stime1,@etime1 带时间        
         --@shour1,@ehour1 小时与分钟 字串 如09:30        
         if(@sdate=@edate)  --日期相同        
         begin        
              --if(@edate=@sdate1 or @edate=@edate1)        
              --begin        
                     if(@stime=@etime1 or @etime=@etime1) --相等时间        
                     begin        
                          set @Result='会议时间有重复,不能预定!'        
                     end        
                     else if((@stime>@stime1 and @stime<@etime1) and (@etime>@stime1 and @etime<@etime1)) --中间时间        
                     begin        
                          set @Result='会议时间有包含,不能预定!'        
                     end        
                     else if(@stime<@stime1 and @etime>@etime1)  --两边时间        
                     begin        
                          set @Result='会议时间有包含,不能预定!'        
                     end        
                     else if(@stime<@stime1 and @etime>@stime1)        
                     begin        
                          set @Result='会议时间有包含,不能预定!'        
                     end        
                     else if(@stime<@etime1 and @etime>@etime1)        
                     begin        
                          set @Result='会议时间有包含,不能预定!'        
                     end        
                     else if((@stime<@stime1 and @etime<@stime1) or (@stime>@etime1 and @etime>@etime1))        
                     begin        
                          set @Result='SUCCESS'        
                     end        
                     else        
                     begin        
                          set @Result='SUCCESS'        
                     end        
                             
                   if(@Result<>'SUCCESS')        
                     begin        
                           --return        
                           break        
                     end        
            --end        
         end 

预约会议sql的更多相关文章

  1. SQL存储过程-新增和修改,参数Xml数据类型

    输入参数:xml数据类型  功能:新增和修改  --value() 方法从 XML 中检索 rogue 属性值.然后将该值分配给 int 变量. --将 Member 节点拆分成多行 SELECT T ...

  2. Sql语法高级应用之五:使用存储过程实现对明细多层次统计

    前言 前面章节我们讲到了存储过程的基础用法,本章则将一个在项目中实际应用的场景. 在项目中经常会存在这样的需求,例如需要对明细列表进行按组.按级别.按人等进行统计,如果在附带列表的查询条件,又如何实现 ...

  3. 会议通js

    js逻辑: /** * Created by wanglijuan on 2016/12/2. */ $(function () { //登陆后请求数据 // $.ajax({ // url:&quo ...

  4. Google I/O 官方应用中的动效设计

    版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/jILRvRTrc/article/details/82881743 作者:Nick Butcher, ...

  5. Odoo,快速上手Odoo,来了解Odoo几个标准模块

    odoo通过Apps和Connector扩展和集成数以万计的应用和服务,odoo目前有超过12500个Apps可选用.它囊括了项目管理,生产.财务.记账和销售管理,仓储管理,人力资源管理,等等项目.本 ...

  6. 小鱼易连 for mac如何使用?小鱼易连 mac版使用教程

    小鱼易连 for mac如何使用?小鱼易连 mac版是参加远程会议人士的首选,高效极致,简单流畅,视频流畅,语音清晰,无需专用网络的功能深受用户的喜欢,它提供的文件和电脑的共享,让你的会议更加高效.下 ...

  7. 怎样管理Exchange Server 2013资源邮箱

    1. exchange资源邮箱介绍 这次将介绍Exchange Server 2013的资源邮箱相关内容. Exchange Server 2013的资源邮箱包含两类,其一为“会议室邮箱”,另一类是“ ...

  8. 图书管理系统(Java实现,十个数据表,含源码、ER图,超详细报告解释,2020.7.11更新)

    图书管理系统数据库设计实验报告 文章目录 更新日志 1.概述 2.需求分析 2.1需要实现的功能 2.2业务流程图 2.2.1学生流程图 2.2.2管理员流程图 2.2.3超级管理员流程图 2.3功能 ...

  9. SQL 会议消费记录统计

    统计 /****** Object: Procedure [dbo].[JOB_UP_Summit_UserConfStat] Script Date: 2014-3-17 10:00:50 **** ...

随机推荐

  1. R语言与SQL server链接

    第一步:创建数据源(方法见下面链接) http://www.2cto.com/database/201412/365396.html 第二步:在R中输入以下代码: #####SQL SERVER与R语 ...

  2. Java泛型知识点:泛型类、泛型接口和泛型方法

    有许多原因促成了泛型的出现,而最引人注意的一个原因,就是为了创建容器类. 泛型类 容器类应该算得上最具重用性的类库之一.先来看一个没有泛型的情况下的容器类如何定义: public class Cont ...

  3. Kafka协议兼容性改进

    在Kafka 0.10.2.0之前,Kafka服务器端和客户端版本之间的兼容性是"单向"的,即高版本的broker可以处理低版本client的请求.反过来,低版本的broker不能 ...

  4. css 设置 checkbox复选框控件的对勾√样式

      效果 最终的样式,想要的效果:   我们要创建方框中的对勾,对于这一点,我们可以使用:after伪类创建一个新的元素,为了实现这个样式,我们可以创建一个5px * 15px的长方形并给他加上边框. ...

  5. ssh公钥认证原理及设置root外的其他用户登录ssh

    1)创建其他用户 useradd [-d 登录目录] [-G ssh][用户名]  一定要将用户添加到ssh组不然无法没有权限登录ssh 2)设置ssh不允许root登录 vi /etc/ssh/ss ...

  6. Mycil命令行MySQL语法高亮和自动补全工具

    MyCli 是MySQL,MariaDB和Percona的命令行界面,具有自动完成和语法高亮的功能. 其效果如图: 那么我们应该怎么安装它呢,这里附上windows的安装方法. 在命令行下输入 pip ...

  7. Pangolin学习

    0.1. 资料 0.2. 使用说明 0.3. HelloPangolin 0.4. Plot data with ros 0.1. 资料 泡泡机器人 github example opengl中摄像机 ...

  8. VR全景:互联网与实体店的完美结合

     VR元年已过,VR项目.VR创业潮转为理性,VR行业分为两个方向:硬件和内容.硬件又分为VR头显和辅助设备,内容又分为VR全景和VR虚拟内容,如游戏.娱乐.根据行业划分为VR+购物,VR+教育,VR ...

  9. 从源码来理解slf4j的绑定,以及logback对配置文件的加载

    项目中的日志系统使用的是slf4j + logback.slf4j作为一个简单日志门面,为各种loging APIs(像java.util.logging, logback, log4j)提供一个简单 ...

  10. [刷题]ACM/ICPC 2016北京赛站网络赛 第1题 第3题

    第一次玩ACM...有点小紧张小兴奋.这题目好难啊,只是网赛就这么难...只把最简单的两题做出来了. 题目1: 代码: //#define _ACM_ #include<iostream> ...