预约会议sql
@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的更多相关文章
- SQL存储过程-新增和修改,参数Xml数据类型
输入参数:xml数据类型 功能:新增和修改 --value() 方法从 XML 中检索 rogue 属性值.然后将该值分配给 int 变量. --将 Member 节点拆分成多行 SELECT T ...
- Sql语法高级应用之五:使用存储过程实现对明细多层次统计
前言 前面章节我们讲到了存储过程的基础用法,本章则将一个在项目中实际应用的场景. 在项目中经常会存在这样的需求,例如需要对明细列表进行按组.按级别.按人等进行统计,如果在附带列表的查询条件,又如何实现 ...
- 会议通js
js逻辑: /** * Created by wanglijuan on 2016/12/2. */ $(function () { //登陆后请求数据 // $.ajax({ // url:&quo ...
- Google I/O 官方应用中的动效设计
版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/jILRvRTrc/article/details/82881743 作者:Nick Butcher, ...
- Odoo,快速上手Odoo,来了解Odoo几个标准模块
odoo通过Apps和Connector扩展和集成数以万计的应用和服务,odoo目前有超过12500个Apps可选用.它囊括了项目管理,生产.财务.记账和销售管理,仓储管理,人力资源管理,等等项目.本 ...
- 小鱼易连 for mac如何使用?小鱼易连 mac版使用教程
小鱼易连 for mac如何使用?小鱼易连 mac版是参加远程会议人士的首选,高效极致,简单流畅,视频流畅,语音清晰,无需专用网络的功能深受用户的喜欢,它提供的文件和电脑的共享,让你的会议更加高效.下 ...
- 怎样管理Exchange Server 2013资源邮箱
1. exchange资源邮箱介绍 这次将介绍Exchange Server 2013的资源邮箱相关内容. Exchange Server 2013的资源邮箱包含两类,其一为“会议室邮箱”,另一类是“ ...
- 图书管理系统(Java实现,十个数据表,含源码、ER图,超详细报告解释,2020.7.11更新)
图书管理系统数据库设计实验报告 文章目录 更新日志 1.概述 2.需求分析 2.1需要实现的功能 2.2业务流程图 2.2.1学生流程图 2.2.2管理员流程图 2.2.3超级管理员流程图 2.3功能 ...
- SQL 会议消费记录统计
统计 /****** Object: Procedure [dbo].[JOB_UP_Summit_UserConfStat] Script Date: 2014-3-17 10:00:50 **** ...
随机推荐
- Ubuntu中文本地化后字体改变
ubuntu中文本地化后会安装2个字体 fonts-arphic-ukai fonts-arphic-uming 找到这两个字体删除之.. sudo apt- get remove fonts-arp ...
- spring 动态创建数据源
项目需求如下,公司对外提供服务,公司本身有个主库,另外公司会为每个新客户创建一个数据库,客户的数据库地址,用户名,密码,都保存在主数据库中.由于不断有新的客户加入,所以要求,项目根据主数据库中的信息, ...
- Angular2.js——主从结构
学习这一篇的内容,还回到我们快速起步的应用上来. 主从结构,我们想要做一个英雄的列表,我们希望用户在列表中选中一个英雄,然后这个被选中的英雄出现在详情视图中.主视图是英雄列表,从视图则是被选中英雄的详 ...
- Fullcalendar 日历控件的基本使用
1:Fullcalendar 日历控件的基本简介 Fullcalendar是一款十分强大的开源日历免费控件,提供了丰富的属性设置和方法调用. 官网地址:https://fullcalendar.io/ ...
- Ruby中有意思的块
块:是在调用方法时,能与参数一起传递的多个处理的集合 简单点说,跟在方法执行后面的do |变量| end就是一个块,这个块会被传入方法中去执行! 这个非常厉害,非常有意思! 在ruby中,如果需要便利 ...
- Spring Cloud 学习笔记(二)——Netflix
4 Spring Cloud Netflix Spring Cloud 通过自动配置和绑定到Spring环境和其他Spring编程模型惯例,为Spring Boot应用程序提供Netflix OSS集 ...
- dp
1. 将原问题分解为子问题 2. 确定状态 3. 确定一些初始状态(边界状态)的值 4. 确定状态转移方程 1) 问题具有最优子结构性质.如果问题的最优解所包含的子问题的解也是最优的,我们就称该问题具 ...
- 在iOS应用程序中使用Frida绕过越狱检测
阿里聚安全在之前的三篇博客中介绍了利用Frida攻击Android应用程序,整个过程仿佛让开发者开启上帝视角,在本篇博客中,我们将会介绍在iOS应用程序中使用Frida绕过越狱检测.即使 ...
- 转:Redis使用认证密码登录
Redis默认配置是不需要密码认证的,也就是说只要连接的Redis服务器的host和port正确,就可以连接使用.这在安全性上会有一定的问题,所以需要启用Redis的认证密码,增加Redis服务器的安 ...
- Oracle 12C 新特性之move (非分区表)table online
以前版本中move table不能够online, move 会引rowid改变使对应的索引失效. 12c 中 alter table move online不会对新事务阻塞同时会自动的维护索引的有效 ...