calendar-center.md 45 KB

工作历接口文档

工作历作息时间管理

工作历作息时间查询

URL:http://192.168.64.18:9930/calendar/v2.0/workCalendarDate/queryWorkCalendarDateList
Method:POST
Header:Content-Type=application/json

请求:

{
    "userId":"QKZZ",                           // 用户ID ,必填
    "groupCode":"WD",				// 集团编码,必填
    "projectId":"Pj1101050029",                // 项目ID ,必填
    "ruleId":"WR1335232948013666305",          //规则ID,选填
    "calendarId":"WC1335228701901586434",		// 工作历ID,选填
    "objId":"Bd440307000375f48be8ed6b47189da6f2db66fd3a65", //对象ID,选填
	"calendarName": "开闭店工作历类型",                   // 工作历类型名称,选填
    "dictType": "shop",         // 约定的类型
    "dictTypes": [				//批量时查询时字段
    	"shop"
    ]
    "dictCode": [               // 约定的编码,不填就是此类型下所有的  2-开店时间;3-商业闭店时间;4-娱乐闭店时间
        "2-dOfW", "3-dOfW", "4-dOfW"
    ]
    "workDateStart":"20201205", //需要查询的时间段范围的日期开始,必填
    "workDateEnd":"20201207"   //需要查询的时间段范围的日期结束,必填
}

返回:

{
    "content": [
        {
            "timeTable": [],
            "workDate": "20201205"
        },
        {
            "timeTable": [],
            "workDate": "20201206"
        },
        {
            "timeTable": [
                {
                    "calendarDesc": "开闭店工作历类型",
                    "calendarId": "WC1335228701901586434",
                    "calendarName": "开闭店工作历类型",
                    "customFlag":"0",	//0-非自定义,1-自定义
                    "dictCode": "4",
                    "dictType": "shop",
                    "projectId": "Pj1101050029",
                    "ruleId": "WR1335232948013666305",
                    "workDate": "20201207",
                    "workTime": "230000"
                }
            ],
            "workDate": "20201207"
        }
    ],
    "count": 3,
    "respCode": "00000",
    "respMsg": "success"
}

批量添加工作历作息时间信息

URL:http://192.168.64.18:9930/calendar/v2.0/workCalendarDate/createCustomCalendarDate
Method:POST
Header:Content-Type=application/json

请求:

{
    "userId":"QKZZ",                           // 用户ID ,必填
    "groupCode":"WD",				// 集团编码,必填
    "projectId":"Pj1101081009",                  // 项目ID ,必填
    "batchInfo":[
        {
            "calendarId":"WC1335782235639480322",        // 工作历ID,必填
            "dictType": "shop",         // 约定的类型,必填
            "dictCode": "2",            // 约定的编码,必填
            "workDate":"20201214",      // 作息日期YYYYMMDD,必填
            "workTime":"220000"   		// 作息时间点HHMMSS,必填
        }
    ]
}

返回:

{
    "respCode": "00000",
    "respMsg": "添加成功"
}

多时间段添加工作历作息时间信息

说明:每次都是根据dictType先删再建

URL:http://192.168.64.18:9930/calendar/v2.0/workCalendarDate/createCustomCalendarMoreDate
Method:POST
Header:Content-Type=application/json

请求:

{
    "userId":"QKZZ",                    // 用户ID ,必填
    "groupCode":"WD",				// 集团编码,必填
    "projectId":"Pj1101081009",         // 项目ID ,必填
    "calendarId":"WC1335782235639480322",        // 工作历ID,必填
    "dictType": "shop",         		// 约定的类型,必填
    "dictCode": "2",            		// 约定的编码,选填
    "workDateStart":"20201201",      	// 开始作息日期YYYYMMDD,必填
    "workDateEnd":"20201215",   		// 结束作息日期YYYYMMDD,必填
    "timetable":[
        "01:00-02:00", "05:30-06:30"
    ]
}

返回:

{
    "respCode": "00000",
    "respMsg": "添加成功"
}

定义工作历标签属性

URL:http://192.168.64.18:9930/calendar/v2.0/calendarLabel/updateCalendarDateAttribute
Method:POST
Header:Content-Type=application/json

请求:

{
	"groupCode":"WD",				// 集团编码,必填
	"labels": [
        {
            "userId": "QKZZ",                   // 用户ID ,必填
            "projectId": "Pj1209010205",        // 项目ID ,必填
            "isUpdate":true,					// 是否在创建或更新之前,优先删除此段日期下已存在的标签属性,默认true
            "isDelete":false,					// 是否只删除此段日期下已存在的标签属性,默认false
            "calendarId": "WC1367022614879485953",  //工作历ID,必填
            "labelDateStart": "20210303",       //标签所属开始日期  YYYYMMdd,必填
            "labelDateEnd": "20210331",         //标签所属开始日期  YYYYMMdd,必填
            "dictType": "ServerNum",           		//来源于字典值查询接口,当diyLabel为0的时候,必填,1的时候,选填;
            "dictCode": "ServerNum-1",          	//来源于字典值查询接口,当diyLabel为0的时候,必填,1的时候,选填;
            "diyLabel":"0",                      	//是否自定义,0-非自定义,1-自定义;
            "diyValue":["小明", "小红"]         	  //自定义的时候,必填
        }
	],
	"times": [
        {
            "userId":"QKZZ",                    // 用户ID ,必填
            "projectId":"Pj1101081009",         // 项目ID ,必填
            "isDelete":false,					// 是否只删除此段日期下已存在的作息时间属性,默认false
            "calendarId":"WC1335782235639480322",        // 工作历ID,必填
            "dictType": "shop",         		// 约定的类型,必填
            "dictCode": "2",            		// 约定的编码,选填
            "workDateStart":"20201201",      	// 开始作息日期YYYYMMDD,必填
            "workDateEnd":"20201215",   		// 结束作息日期YYYYMMDD,必填
            "timetable":[						// 作息时间点集合timetable,isDelete true-无意义,false-必填
                "01:00-02:00", "05:30-06:30"
            ]
        }
	]
}

返回:

{
    "respCode": "00000",
    "respMsg": "添加成功"
}

更新工作历作息时间

URL:http://192.168.64.18:9930/calendar/v2.0/workCalendarDate/updateCustomCalendarDate
Method:POST
Header:Content-Type=application/json

请求:

{
    "userId":"QKZZ",                           // 用户ID ,必填
    "projectId":"Pj1101081009",                  // 项目ID ,必填
    "groupCode":"WD",				// 集团编码,必填
    "batchInfo":[
        {
            "id":"WD1338066552063373313",		// 作息时间ID,必填
            "calendarId":"WC1335782235639480322",        // 工作历ID,必填
            "dictType": "shop",         // 约定的类型,必填
            "dictCode": "2",            // 约定的编码,必填
            "workDate":"20201214",      //作息日期YYYYMMDD,必填
            "workTime":"230000"   //作息时间点HHMMSS,必填
        }
    ]
}

返回:

{
    "respCode": "00000",
    "respMsg": "更新成功"
}

删除工作历作息时间

URL:http://192.168.64.18:9930/calendar/v2.0/workCalendarDate/deleteCustomCalendarDate
Method:POST
Header:Content-Type=application/json

请求:

{
    "userId":"QKZZ",                           // 用户ID ,必填
    "groupCode":"WD",				// 集团编码,必填
    "projectId":"Pj1101050029",                  // 项目ID ,必填
    "id":"WD1335560618685612034",           // 作息时间ID,选填
    "dictType": "shop",         // 约定的类型,必填
    "dictCode": [        		// 约定的编码,选填,不填为删除dictType下所有的code定义的作息时间信息
        "3"
    ],           
    "workDateStart":"20201201",      	// 开始作息日期YYYYMMDD,必填
    "workDateEnd":"20201215"   		// 结束作息日期YYYYMMDD,必填
}

返回:

{
    "respCode": "00000",
    "respMsg": "删除成功"
}

工作历类型管理

工作历类型查询

URL:http://192.168.64.18:9930/calendar/v2.0/workCalendar/queryWorkCalendarList
Method:POST
Header:Content-Type=application/json

请求:

{
    "userId":"QKZZ",                           // 用户ID ,必填
    "groupCode":"WD",               // 集团编码,必填
    "projectId":"Pj1101050029",                  // 项目ID ,必填
    "id":"WC1335218584007233538",        // 工作历ID,选填
    "calendarName":"开闭店",                 //工作历名称,选填
    "objId":"Bd440307000375f48be8ed6b47189da6f2db66fd3a65"  //对象ID,查询出此对象对应的工作历ID,选填,和ID同时存在时,以id为准,objId失效
}

返回:

{
    "content": [
        {
            "calendarDesc": "开闭店工作历类型",
            "calendarName": "开闭店工作历类型",
            "createTime": "20201205214452",
            "delFlag": "0",
            "groupCode":"WD",
            "id": "WC1335218584007233538",
            "projectId": "Pj1101050029",
            "updateTime": "20201205214458",
            "updateUser": "QKZZ"
        }
    ],
    "count": 1,
    "respCode": "00000",
    "respMsg": "success"
}

工作历类型名称重复性校验

URL:http://192.168.64.18:9930/calendar/v2.0/workCalendar/validCalendarName
Method:POST
Header:Content-Type=application/json

请求:

{
    "id": "WC1335218584007233538",           // 工作历类型ID,当为更新的时候,必填
    "groupCode": "WD",  // 集团编码,必填
    "projectId": "Pj1101051130",    //项目ID,必填
    "calendarName": "乾坤测试", // 工作历类型名称 ,必填
    "userId": "b9df7de50df148d3be69bcebab30c396" // 用户ID,必填,不做为sql条件
}

返回:

// 验证通过,可以使用
{
    "respCode": "00000",        // 00000 代表可用
    "respMsg": "可用"
}
// 验证不通过,名称重复
{
    "respCode": "C0341",        // C0341 不可用
    "respMsg": "名称重复"
}

创建工作历类型

URL:http://192.168.64.18:9930/calendar/v2.0/workCalendar/createWorkCalendar
Method:POST
Header:Content-Type=application/json

请求:

{
	"calendarDesc": "开闭店工作历类型",         // 工作历类型描述
	"groupCode":"WD",				// 集团编码,必填
	"calendarName": "开闭店工作历类型",         // 工作历类型名称,必填,项目下唯一
    "userId":"QKZZ",                           // 用户ID ,必填,不做为sql条件
    "projectId":"Pj1101050029",                  // 项目ID,必填,作为sql条件
    "objIds":[								// 对象ID集合,选填
    	"Bd440307000375f48be8ed6b47189da6f2db66fd3a65"
    ]
}

返回:

{
    "content": "WC1335207337782165505",		// 工作历类型ID
    "respCode": "00000",
    "respMsg": "新增成功"
}

根据模板创建工作历类型

URL:http://192.168.64.18:9930/calendar/v2.0/workCalendar/createWorkCalendarFromId
Method:POST
Header:Content-Type=application/json

请求:

{
	"groupCode":"WD",				// 集团编码,必填
	"calendarDesc": "开闭店工作历类型",         // 工作历类型描述
	"calendarName": "开闭店工作历类型",         // 工作历类型名称,必填,项目下唯一
	"fromId":"WC1335207337782165503",		 //工作历来源ID,必填
    "userId":"QKZZ",                           // 用户ID ,必填,不做为sql条件
    "projectId":"Pj1101050029",                // 项目ID,必填,作为sql条件
    "objIds":[								// 对象ID集合,选填
    	"Bd440307000375f48be8ed6b47189da6f2db66fd3a65"
    ]
}

返回:

{
    "content": "WC1335207337782165505",		// 工作历类型ID
    "respCode": "00000",
    "respMsg": "新增成功"
}

更新工作历类型

URL:http://192.168.64.18:9930/calendar/v2.0/workCalendar/updateWorkCalendar
Method:POST
Header:Content-Type=application/json

请求:

{
    "groupCode":"WD",               // 集团编码,必填
    "id":"WC1335207337782165505",               // 工作历类型ID
    "calendarDesc": "开闭店工作历类型",         // 工作历类型描述
    "calendarName": "开闭店工作历类型",         // 工作历类型名称
    "userId":"QKZZ",                           // 用户ID 
    "projectId":"Pj1101050029"                  // 项目ID
}

返回:

{
    "respCode": "00000",
    "respMsg": "更新成功"
}

删除工作历类型

说明:级联删除规则信息

URL:http://192.168.64.18:9930/calendar/v2.0/workCalendar/deleteWorkCalendar
Method:POST
Header:Content-Type=application/json

请求:

{
    "groupCode":"WD",               // 集团编码,必填
    "id":"WC1335207337782165505",               // 工作历类型ID
    "userId":"QKZZ",                           // 用户ID 
    "projectId":"Pj1101050029"                  // 项目ID
}

返回:

{
    "respCode": "00000",
    "respMsg": "删除成功"
}

工作历规则管理

工作历规则查询

URL:http://192.168.64.18:9930/calendar/v2.0/workCalendarRule/queryWorkCalendarRuleList
Method:POST
Header:Content-Type=application/json

请求:

{
    "groupCode":"WD",               // 集团编码,必填
    "userId":"QKZZ",                           // 用户ID ,必填
    "projectId":"Pj1101050029",                  // 项目ID ,必填
    "id":"WR1335224788167286786",               //规则ID,选填
    "calendarId":"WC1335218584007233538",        // 工作历ID,选填
    "dictType":"shop",       //字典类型,选填
    "dictCode": [               // 约定的编码,不填就是此类型下所有的  2-开店时间;3-商业闭店时间;4-娱乐闭店时间
        "2-dOfW", "3-dOfW", "4-dOfW"
    ]
}

返回:

{
    "content": [
        {
            "calendarId": "WC1335218584007233538",
            "createTime": "20201205220931",
            "delFlag": "0",
            "dictCode": "4",
            "dictType": "shop",
            "id": "WR1335224788167286786",
            "projectId": "Pj1101050029",
            "ruleDateEnd": "20300101",
            "ruleDateStart": "20200101",
            "ruleFlag": "0",
            "ruleTime": "230000",
            "updateTime": "20201205220931",
            "updateUser": "QKZZ"
        }
    ],
    "count": 1,
    "respCode": "00000",
    "respMsg": "success"
}

创建工作历规则

URL:http://192.168.64.18:9930/calendar/v2.0/workCalendarRule/createWorkCalendarRule
Method:POST
Header:Content-Type=application/json

请求:

{
    "userId":"QKZZ",                           // 用户ID ,必填
    "groupCode":"WD",				// 集团编码,必填
    "projectId":"Pj1101081009",                  // 项目ID ,必填
    "isDelete":false,			//是否添加时,优先删除此工作历下已存在的对应dictType的规则,默认false,true删除,false或不填不删除
    "batchInfo":[
        {
            "calendarId":"WC1335782235639480322",        // 工作历ID ,必填
            "dictType":"shop",                      //类型 ,必填
            "dictCode":"2-dOfW",                         //数据code ,选填  dOfW-周
            "ruleDateStart":"20200101",             //规则生效开始日期 YYYYMMDD ,必填
            "ruleDateEnd":"20300101",               //规则结束开始日期 YYYYMMDD ,必填
            "ruleTime":"080000",                    //规则生效具体时间点 HHMMSS,选填
            "value":[                           
                // 当想要以周、月、月日设置规则时,填写此项,配合dictCode使用,如:2-dOfW;
                // dOfW-按周 取值1~7,周一到周日; dOfM-按月, 取值 1, 15, 20-25每月的第1天、15天,20~25天, mAndD-几月几日,0221,0925-1028,每年的2月21,每年的0925~1028
                "1", "2", "3"
                // 当此日下有多个时间段的时候,请在value字段内,传此值
                // "01:00-02:00","03:00-04:00"
            ]
        }   
    ]
}

返回:

{
    "respCode": "00000",
    "respMsg": "保存成功"
}

更新工作历规则

URL:http://192.168.64.18:9930/calendar/v2.0/workCalendarRule/updateWorkCalendarRule
Method:POST
Header:Content-Type=application/json

请求:

{
    "userId":"QKZZ",                           // 用户ID ,必填
    "groupCode":"WD",               // 集团编码,必填
    "projectId":"Pj1101081009",                  // 项目ID ,必填
    "batchInfo":[
        {
            "id":"WR1338035594022948865",               //规则ID,必填
            "calendarId":"WC1335782235639480322",        // 工作历ID ,必填
            "dictType":"shop",                      //类型 ,必填,同项目下,字典类型+数据code 联合唯一
            "dictCode":"2-dOfW",                         //数据code ,必填  dOfW-周
            "ruleDateStart":"20200101",             //规则生效开始日期 YYYYMMDD ,必填
            "ruleDateEnd":"20300101",               //规则结束开始日期 YYYYMMDD ,必填
            "ruleTime":"080000",                    //规则生效具体时间点 HHMMSS,选填
            "value":[                           
                // 当想要以周、月、月日设置规则时,填写此项,配合dictCode使用,如:2-dOfW;
                // dOfW-按周 取值1~7,周一到周日; dOfM-按月, 取值 1, 15, 20-25每月的第1天、15天,20~25天, mAndD-几月几日,0221,0925-1028,每年的2月21,每年的0925~1028
                "1", "2", "3"          
            ]
        }   
    ]
}

返回:

{
    "respCode": "00000",
    "respMsg": "更新成功"
}

删除工作历规则

URL:http://192.168.64.18:9930/calendar/v2.0/workCalendarRule/deleteWorkCalendarRule
Method:POST
Header:Content-Type=application/json

请求:

{
    "userId":"QKZZ",                           // 用户ID ,必填
    "groupCode":"WD",				// 集团编码,必填
    "projectId":"Pj1101050029",                  // 项目ID ,必填
    "calendarId":"WC1335218584007233538",        // 工作历ID,选填
    "id":"WR1335218652328251393"        //规则ID,选填,但与工作历ID,必填其一
}

返回:

{
    "respCode": "00000",
    "respMsg": "删除成功"
}

标签属性管理

根据时间段-自动计算出此年内不在此时间段内的日期

URL:http://192.168.64.18:9930/calendar/v2.0/calendarLabel/calculateExtraDate
Method:POST
Header:Content-Type=application/json

请求:

{
    "userId": "QKZZ",                   // 用户ID ,必填
    "labelDates": [     // 计算出不在此段时间内的,当年的时间段,必填
        "20210102-20210305","20210502-20210807"
    ]
}

返回:

{
    "content": [
    	// 有序的,根据开始日期从小~大
        "20210101-20210101",
        "20210306-20210501",
        "20210808-20211231"
    ],
    "respCode": "00000",
    "respMsg": "success"
}

日期标签属性列表查询

URL:http://192.168.64.18:9930/calendar/v2.0/calendarLabel/queryCalendarLabelList
Method:POST
Header:Content-Type=application/json

请求:

{
    "userId": "QKZZ",                   // 用户ID ,必填
    "groupCode":"WD",				// 集团编码,必填
    "projectId": "Pj1209010205",        // 项目ID ,必填
    "calendarId": "WC1367022614879485953",  //工作历ID,选填
    "labelDateStart": "20210301",       //标签所属开始日期  YYYYMMdd,必填
    "labelDateEnd": "20210331",         //标签所属开始日期  YYYYMMdd,必填
    "dictType": "ServerNum",           //来源于字典值查询接口,选填;
    "dictCode": "ServerNum-1",          //来源于字典值查询接口,选填;
    "diyLabel":"0"                      //是否自定义,0-非自定义,1-自定义,选填;
}

返回:

{
    "content": [
        {
            "calendarId": "WC1367022614879485953",
            "createTime": "20210304195459",
            "dictCode": "ServerNum-1",
            "dictType": "ServerNum",
            "diyLabel": "0",
            "id": "WL1367443450996322306",
            "labelDate": "20210315",
            "projectId": "Pj1209010205",
            "updateTime": "20210304195459",
            "updateUser": "b9df7de50df148d3be69bcebab30c396"
        }
    ],
    "count": 1,
    "respCode": "00000",
    "respMsg": "success"
}

查询标签的有效期

URL:http://develop.persagy.com/calendar/v2.0/calendarLabel/queryCalendarLabelValid
Method:POST
Header:Content-Type=application/json

请求:

// 因为设计允许一个项目下创建多个工作历,所以当不传objId或calendarId时,结果是不对的
{
    "userId": "QKZZ",                   // 用户ID ,必填,不做为sql条件
    "groupCode":"YL",					// 集团编码,必填,作为sql条件
    "projectId": "Pj4403050002",        // 项目ID ,必填,作为sql条件
    "objId":"Bd123546645",              // 对象ID,当其存在时 calendarId 失效,以其为准,选填,作为sql条件
    "calendarId": "WC1435880201339994114",  //工作历ID,选填,作为sql条件
    "labelDateStart": "20210301",       //标签所属开始日期  YYYYMMdd,选填;作为sql条件
    "labelDateEnd": "20210331",         //标签所属开始日期  YYYYMMdd,选填;作为sql条件
    "dictType": "ACSeason",           //来源于字典值查询接口,选填;作为sql条件
    "dictCode": "ACSeason-1",          //来源于字典值查询接口,选填;作为sql条件
    "diyLabel":"0",                      //是否自定义,0-非自定义,1-自定义,选填,作为sql条件
    "groupBy": "DICT_TYPE, DICT_CODE"	//分组条件,传列名:不传默认为 DICT_TYPE, DICT_CODE
}

返回:

{
    "content": [
        {
            "dictCode": "ACSeason-1",
            "dictType": "ACSeason",
            "labelDateEnd": "20210930",		// 此标签的有效期-结束时间
            "labelDateStart": "20210602"	// 此标签的有效期-开始时间
        }
    ],
    "count": 1,
    "respCode": "00000",
    "respMsg": "success"
}

创建或更新或删除日期标签属性

URL:http://192.168.64.18:9930/calendar/v2.0/calendarLabel/updateLabelInfo
Method:POST
Header:Content-Type=application/json

请求:

{
    "userId": "QKZZ",                   // 用户ID ,必填
    "groupCode":"WD",				// 集团编码,必填
    "projectId": "Pj1209010205",        // 项目ID ,必填
    "isUpdate":true,					// 是否在创建或更新之前,优先删除此段日期下已存在的标签属性,默认true
    "isDelete":false,					// 是否只删除此段日期下已存在的标签属性,默认false
    "calendarId": "WC1367022614879485953",  //工作历ID,必填
    "labelDateStart": "20210303",       //标签所属开始日期  YYYYMMdd,必填
    "labelDateEnd": "20210331",         //标签所属开始日期  YYYYMMdd,必填
    "dictType": "ServerNum",           //来源于字典值查询接口,当diyLabel为0的时候,必填,1的时候,选填;
    "dictCode": "ServerNum-1",          //来源于字典值查询接口,当diyLabel为0的时候,必填,1的时候,选填;
    "diyLabel":"0",                      //是否自定义,0-非自定义,1-自定义;
    "diyValue":["小明", "小红"]         //自定义的时候,必填
}

返回:

{
    "respCode": "00000",
    "respMsg": "保存成功"
}

删除日期标签属性

URL:http://192.168.64.18:9930/calendar/v2.0/calendarLabel/createLabelInfo
Method:POST
Header:Content-Type=application/json

请求:

{
    "userId": "QKZZ",                   // 用户ID ,必填
    "groupCode":"WD",				// 集团编码,必填
    "projectId": "Pj1209010205",        // 项目ID ,必填
    "isDelete":true,					// 是否优先删除此段日期下已存在的标签属性,默认false
    "calendarId": "WC1367022614879485953",  //工作历ID,必填
    "labelDateStart": "20210303",       //标签所属开始日期  YYYYMMdd
    "labelDateEnd": "20210331",         //标签所属开始日期  YYYYMMdd
    "labelCode": "ServerNum",           //来源于字典值查询接口
    "diyLabel": "0"                     //是否自定义,0-非自定义,1-自定义,当为1时,labelCode字段值,可以为 "1,2,3" 类型结构数据
}

返回:

{
    "respCode": "00000",
    "respMsg": "保存成功"
}

物理世界对象管理

物理世界对象查询

URL:http://192.168.64.18:9930/calendar/v2.0/rwdObject/queryRwdObjects
Method:POST
Header:Content-Type=application/json

请求:

{
    "groupCode": "WD",    // 集团编码,必填,做为sql条件
	"userId": "QKCC",       //用户ID,必填,不做为sql条件
    "projectId":"Pj4403070003",  //项目ID,必填,做为sql条件
    "id":"Bd440307000375f48be8ed6b47189da6f2db66fd3a65"	//主键ID,选填
    "objType":["space", "floor", "building", "project"]   //对象类型,默认为space, floor, building, project全查
}

返回:

{
    "content": [
        {
            "classCode": "building",
            "updateApp": "datacenter",
            "updateTime": 1608778512000,
            "createApp": "datacenter",
            "grouping": 1,
            "localId": "11",
            "virtualInfoCodes": [],
            "valid": 1,
            "localName": "111",
            "createTime": 1608778502000,
            "name": "建筑-M0S80",
            "id": "Bd440307000375f48be8ed6b47189da6f2db66fd3a65",	// 对象ID
            "projectId": "Pj4403070003",
            "objType": "building",
            "isRelated": true,						//是否存在工作历,true-存在,false-不存在
            "calendarId":"WC1369223137783271425",  //工作历ID,当isRelated为true时,存在
            "calendarId":"测试"  					//工作历名称,当isRelated为true时,存在
        }
    ],
    "count": 1,
    "respCode": "00000",
    "respMsg": "success"
}

查询工作历对象列表

URL:http://192.168.64.18:9930/calendar/v2.0/rwdObject/queryCalendarObjectList
Method:POST
Header:Content-Type=application/json

请求:

{
    "groupCode": "WD",    // 集团编码,必填
	"userId": "QKCC",       //用户ID,必填
    "projectId":"Pj1101051130",  //项目ID,必填
    "id": "WC1369223137783271425"            //工作历ID,选填
}

返回:

{
    "content": [
        {
            "calendarDesc": "adsf", //工作历描述
            "calendarName": "g1",	//工作历名称/
            "createTime": "20210310152105",
            "delFlag": "0",
            "groupCode": "WD",
            "id": "WC1369548849831501826",	//工作历ID
            "objects": [
                {
                    "objectName": "楼层-Y8HAJ",		//对象名称
                    "objectId": "Fl11010511304ad6248649744d6b9850352fbfbf7cdc"		//对象ID
                },
                {
                    "objectName": "万达模型测试项目2",
                    "objectId": "Pj1101051130"
                }
            ],
            "projectId": "Pj1101051130",
            "updateTime": "20210310152105",
            "updateUser": "b9df7de50df148d3be69bcebab30c396"
        }
    ],
    "count": 1,
    "respCode": "00000",
    "respMsg": "success"
}

添加对象工作历

URL:http://192.168.64.18:9930/calendar/v2.0/rwdObject/addCalendarObject
Method:POST
Header:Content-Type=application/json

请求:

{
    "groupCode": "WD",    // 集团编码,必填
	"userId": "QKCC",       //用户ID,必填
    "projectId":"Pj1209010205",  //项目ID,必填
    "calendarId":"WC1368868481819336705",    //工作历ID,必填
    "objId": "Sp4403070003f55c8b33cf1f45e5bfc699caaba4eedc",    // 对象ID,假如与objIds同时存在,会一起生效,选填
    "objIds": ["Sp4403070003f55c8b33cf1f45e5bfc699caaba4eedc"]   //对象ID集合,默认为space, floor, building, project,选填
}

返回:

{
    "respCode": "00000",
    "respMsg": "添加成功"
}

删除对象工作历

URL:http://192.168.64.18:9930/calendar/v2.0/rwdObject/deleteCalendarObject
Method:POST
Header:Content-Type=application/json

请求:

{
    "groupCode": "WD",    // 集团编码,必填
	"userId": "QKCC",       //用户ID,必填
    "projectId":"Pj1209010205",  //项目ID,必填
    "calendarId":"WC1368868481819336705",    //工作历ID,选填
    "objId": "Sp4403070003f55c8b33cf1f45e5bfc699caaba4eedc",    // 对象ID,假如与objIds同时存在,会一起生效,选填
    "objIds": ["Sp4403070003f55c8b33cf1f45e5bfc699caaba4eedc"]   //对象ID集合,默认为space, floor, building, project,选填
}

返回:

{
    "respCode": "00000",
    "respMsg": "删除成功"
}

物理世界对象变更所属工作历

URL:http://192.168.64.18:9930/calendar/v2.0/rwdObject/changeCalendarObject
Method:POST
Header:Content-Type=application/json

请求:

{
    "groupCode": "WD",    // 集团编码,必填
	"userId": "QKCC",       //用户ID,必填
    "projectId":"Pj1209010205",  //项目ID,必填
    "calendarId":"WC1368868481819336705",    //工作历ID,必填
    "objIds": ["Sp4403070003f55c8b33cf1f45e5bfc699caaba4eedc"]   //对象ID集合,默认为space, floor, building, project,必填
}

返回:

{
    "respCode": "00000",
    "respMsg": "操作成功"
}

通用功能管理

字典值查询

URL:http://192.168.64.18:9930/calendar/v2.0/common/dictQuery
Method:POST
Header:Content-Type=application/json

请求:

{
    "userId":"QKZZ",                           // 用户ID ,必填,不做为sql条件
    "groupCode":"WD",				// 集团编码,必填
    "calendarId":"WC1367022614879485953",	//工作历ID,一般是不需要填写的,除非此字典值是在属于某工作历类型的,而非项目的
    "dictType": "shop"         // 约定的类型,必填
}

返回:

// 当dictType: shop,开闭店类型
{
    "content": {
        "2": "开店时间",
        "3": "商业闭店时间",
        "4": "娱乐闭店时间"
    },
    "respCode": "00000",
    "respMsg": "success"
}

// 当dictType: ACSeason,空调季类别
{
    "content": {
        "ACSeason-1": "供冷",
        "ACSeason-2": "供暖",
        "ACSeason-3": "过渡"
    },
    "respCode": "00000",
    "respMsg": "success"
}

// 当dictType: ServerNum,服务人数
{
    "content": {
        "ServerNum-1": "正常",
        "ServerNum-2": "急剧增多",
        "ServerNum-3": "一般增多",
        "ServerNum-4": "急剧减少",
        "ServerNum-5": "一般减少"
    },
    "respCode": "00000",
    "respMsg": "success"
}

// 当dictType: UserNum,客流人数
{
    "content": {
        "UserNum-1": "正常",
        "UserNum-2": "急剧增多",
        "UserNum-3": "一般增多",
        "UserNum-4": "急剧减少",
        "UserNum-5": "一般减少"
    },
    "respCode": "00000",
    "respMsg": "success"
}

// 当dictType: OpenTime
{
    "content": {
        "OpenTime-1": "工作日",
        "OpenTime-2": "休息日"
    },
    "respCode": "00000",
    "respMsg": "success"
}


// 当dictType: custom-type, 当calendarId: 不为空时(工作历类型ID)
// 此时,允许code与name为相同值,如下仅是示例,并不是代表,code与name必须相同
{
    "content": {
        "小明": "小明",
        "小红": "小红",
        ...
    },
    "respCode": "00000",
    "respMsg": "success"
}

字典值创建

URL:http://192.168.64.18:9930/calendar/v2.0/common/dictCreate
Method:POST
Header:Content-Type=application/json

请求:

{
    "userId": "QKZZ",               // 用户ID ,必填
    "groupCode":"WD",				// 集团编码,必填
    "projectId": "Pj1101050029",    // 项目ID ,必填
    "calendarId": "WC1367022614879485953",  //工作历ID,一般是不需要填写的,除非此字典值是在属于某工作历类型的,而非项目的,选填
    "dictType": "shop",                     // 约定的类型,必填
    "codes": [
        {
            "dictCode": "2", 	// 非必填
            "dictDesc": "开店时间" // 必填
        }
    ]
}

返回:

{
    "respCode": "00000",
    "respMsg": "保存成功"
}

立即解析规则信息

说明:非自定义已存在的作息时间信息被更新,不存在的被插入

URL:http://192.168.64.18:9930/calendar/v2.0/common/handleParseCalendarRule
Method:POST
Header:Content-Type=application/json

请求:

{
    "userId":"QKZZ",                           // 用户ID ,必填
    "projectId":"Pj1101050029",                  // 项目ID ,必填
    "ruleId":"WR1335232948013666305",               //规则ID,选填
    "calendarId":"WC1335228701901586434",        // 工作历ID,选填
    "dictType": "shop",         // 约定的类型
    "dictCode": "4",            // 约定的编码,不填就是此类型下所有的  2-开店时间;3-商业闭店时间;4-娱乐闭店时间
    "workDateStart":"20201205", //需要查询的时间段范围的日期开始,必填
    "workDateEnd":"20201207"   //需要查询的时间段范围的日期结束,必填
}

返回:

{
    "content": {
        "4": "娱乐闭店时间",
        "2": "开店时间",
        "3": "商业闭店时间"
    },
    "respCode": "00000",
    "respMsg": "success"
}

染色标尺相关接口

新增染色基础信息

URL:http://develop.persagy.com/calendar/dyeBasic/createDyeBasic
Method:POST
Header:Content-Type=application/json

请求:

{
    "typeCode": "QQQQQQ", // 染色类型编码 必传
    "typeName": "AAAA", // 染色类型名称 必传
    "seasonCode": "ACSeason-3", // 季节类型编码 必传
    "seasonName": "过渡季", // 季节类型名称 必传
    "updateUserId": "423594c93c8f45ee904269f4d8d14743" // 操作人ID
}

返回:

{
    "respCode": "00000",
    "respMsg": "保存成功"
}

更新染色基础信息

URL:http://develop.persagy.com/calendar/dyeBasic/updateDyeBasic
Method:POST
Header:Content-Type=application/json

请求:

{
    "id":"98af9c276010410aa56a8053f678fd8f", // 要更新的数据ID 必传
    "typeCode": "QQQQQQ", // 染色类型编码
    "typeName": "AAAA", // 染色类型名称
    "seasonCode": "ACSeason-3", // 季节类型编码
    "seasonName": "过渡季", // 季节类型名称
    "updateUserId": "423594c93c8f45ee904269f4d8d14743" // 操作人ID
}

返回:

{
    "respCode": "00000",
    "respMsg": "更新成功"
}

逻辑删除染色基础信息

URL:http://develop.persagy.com/calendar/dyeBasic/deleteDyeBasic?dyeBasicId=必传&updateUserId=
Method:POST
Header:Content-Type=application/json

请求:

dyeBasicId=&updateUserId=

返回:

{
    "respCode": "00000",
    "respMsg": "删除成功"
}

染色基础信息列表查询

URL:http://develop.persagy.com/calendar/dyeBasic/queryDyeBasicList
Method:POST
Header:Content-Type=application/json

请求:

{

}

返回:

{
    "content": [
        {
            "createTime": "2021-10-26 09:46:57", // 数据创建时间
            "id": "1afa744ee32a45da8af67f704c8c4207", // 数据主键
            "isDelete": "0", // 是否删除
            "seasonCode": "ACSeason-1", // 季节编码
            "seasonName": "供冷季", // 季节名称
            "typeCode": "cO2", // 染色类型编码
            "typeName": "空气CO2浓度", // 染色类型名称
            "updateUserId": "423594c93c8f45ee904269f4d8d14743" // 最后操作人ID
        },
        ...
    ],
    "count": 16,
    "respCode": "00000",
    "respMsg": "success"
}

新增默认染色规则信息

URL:http://develop.persagy.com/calendar/dyeRuleDefault/createDyeRuleDefault
Method:POST
Header:Content-Type=application/json

请求:

{
    "basicId": "8a5ec9d1c28d4804b69de317f635752d", // 染色基础表数据 必传
    "tempLowerLimit": "45", // 下限值 必传
    "lowerSymbol": "(", // 下限符号 必传
    "tempUpperLimit": "+∞", // 上限值 必传
    "upperSymbol": ")", // 上限符号 必传
    "name": "潮湿报警", // 染色标尺名称 必传
    "colorValue": "#FF0000", // 色值 必传
    "orderNum": "3", // 染色标尺排序 
    "updateUserId": "423594c93c8f45ee904269f4d8d14743", // 操作人ID
    "numSymbol": "%" // 数值单位(符号)
}

返回:

{
    "respCode": "00000",
    "respMsg": "保存成功"
}

更新默认染色规则信息

URL:http://develop.persagy.com/calendar/dyeRuleDefault/updateDyeRuleDefault
Method:POST
Header:Content-Type=application/json

请求:

{
    "id":"98af9c276010410aa56a8053f678fd8f", // 要更新的数据ID 必传
    "basicId": "8a5ec9d1c28d4804b69de317f635752d", // 染色基础表数据 必传
    "tempLowerLimit": "45", // 下限值 必传
    "lowerSymbol": "(", // 下限符号 必传
    "tempUpperLimit": "+∞", // 上限值 必传
    "upperSymbol": ")", // 上限符号 必传
    "name": "潮湿报警", // 染色标尺名称 必传
    "colorValue": "#FF0000", // 色值 必传
    "orderNum": "3", // 染色标尺排序 
    "updateUserId": "423594c93c8f45ee904269f4d8d14743", // 操作人ID
    "numSymbol": "%" // 数值单位(符号)
}

返回:

{
    "respCode": "00000",
    "respMsg": "更新成功"
}

逻辑删除默认染色规则信息

URL:http://develop.persagy.com/calendar/dyeRuleDefault/deleteDyeRuleDefault?dyeRuleDefaultId=必传&updateUserId=
Method:POST
Header:Content-Type=application/json

请求:

dyeRuleDefaultId=&updateUserId=

返回:

{
    "respCode": "00000",
    "respMsg": "删除成功"
}

默认染色规则信息列表查询

URL:http://develop.persagy.com/calendar/dyeRuleDefault/queryDyeRuleDefaultList
Method:POST
Header:Content-Type=application/json

请求:

{

}

返回:

{
    "content": [
        {
            "basicId": "e101200c05094f30af34c741b10e7069", // 染色基础表ID
            "colorValue": "#00B050", // 色值
            "createTime": "2021-10-27 15:17:39", // 创建时间
            "id": "bec61d651b184609b4e62b4cc02b60b8", // 数据主键
            "isDelete": "0", // 是否删除
            "lowerLimit": -99, // 下限值(99在数据库代表无穷 前端显示建议使用返回字段tempLowerLimit)
            "lowerSymbol": "(", // 下限符号
            "name": "良好", // 染色名称
            "numSymbol": "μg/m3 每24小时", // 数值单位(符号)
            "orderNum": 3, // 染色排序
            "tempLowerLimit": "(-∞", // 下限值 前端可直接用这个字段在列表回显
            "tempUpperLimit": "15)", // 上限值 前端可直接用这个字段在列表回显
            "updateUserId": "423594c93c8f45ee904269f4d8d14743", // 最后操作人ID
            "upperLimit": 15, // 上限值(99在数据库代表无穷 前端显示建议使用返回字段tempUpperLimit)
            "upperSymbol": ")" // 上限符号
        },
        ...
    ],
    "count": 16,
    "respCode": "00000",
    "respMsg": "success"
}

新增自定义染色规则信息

URL:http://develop.persagy.com/calendar/dyeRuleCustom/createDyeRuleCustom
Method:POST
Header:Content-Type=application/json

请求:

{
    "basicId": "8a5ec9d1c28d4804b69de317f635752d", // 染色基础表数据 必传
    "groupCode": "YL", // 集团编码 必传
    "projectId": "Pj4403050002", // 项目ID 必传
    "tempLowerLimit": "45", // 下限值 必传
    "lowerSymbol": "(", // 下限符号 必传
    "tempUpperLimit": "+∞", // 上限值 必传
    "upperSymbol": ")", // 上限符号 必传
    "name": "潮湿报警", // 染色标尺名称 必传
    "colorValue": "#FF0000", // 色值 必传
    "orderNum": "3", // 染色标尺排序 
    "updateUserId": "423594c93c8f45ee904269f4d8d14743", // 操作人ID
    "numSymbol": "%" // 数值单位(符号)
}

返回:

{
    "respCode": "00000",
    "respMsg": "保存成功"
}

更新自定义染色规则信息

URL:http://develop.persagy.com/calendar/dyeRuleCustom/updateDyeRuleCustom
Method:POST
Header:Content-Type=application/json

请求:

{
    "id":"98af9c276010410aa56a8053f678fd8f", // 要更新的数据ID 必传
    "basicId": "8a5ec9d1c28d4804b69de317f635752d", // 染色基础表数据 必传
    "groupCode": "YL", // 集团编码 必传
    "projectId": "Pj4403050002", // 项目ID 必传
    "tempLowerLimit": "45", // 下限值 必传
    "lowerSymbol": "(", // 下限符号 必传
    "tempUpperLimit": "+∞", // 上限值 必传
    "upperSymbol": ")", // 上限符号 必传
    "name": "潮湿报警", // 染色标尺名称 必传
    "colorValue": "#FF0000", // 色值 必传
    "orderNum": "3", // 染色标尺排序 
    "updateUserId": "423594c93c8f45ee904269f4d8d14743", // 操作人ID
    "numSymbol": "%" // 数值单位(符号)
}

返回:

{
    "respCode": "00000",
    "respMsg": "更新成功"
}

逻辑删除自定义染色规则信息

URL:http://develop.persagy.com/calendar/dyeRuleCustom/deleteDyeRuleCustom?dyeRuleCustomId=必传&updateUserId=
Method:POST
Header:Content-Type=application/json

请求:

dyeRuleCustomId=&updateUserId=

返回:

{
    "respCode": "00000",
    "respMsg": "删除成功"
}

自定义染色规则信息列表查询

URL:http://develop.persagy.com/calendar/dyeRuleCustom/queryDyeRuleCustomList
Method:POST
Header:Content-Type=application/json

请求:

{

}

返回:

{
    "content": [
        {
            "basicId": "e101200c05094f30af34c741b10e7069", // 染色基础表ID
            "groupCode": "YL", // 集团编码 
            "projectId": "Pj4403050002", // 项目ID 
            "colorValue": "#00B050", // 色值
            "createTime": "2021-10-27 15:17:39", // 创建时间
            "id": "bec61d651b184609b4e62b4cc02b60b8", // 数据主键
            "isDelete": "0", // 是否删除
            "lowerLimit": -99, // 下限值(99在数据库代表无穷 前端显示建议使用返回字段tempLowerLimit)
            "lowerSymbol": "(", // 下限符号
            "name": "良好", // 染色名称
            "numSymbol": "μg/m3 每24小时", // 数值单位(符号)
            "orderNum": 3, // 染色排序
            "tempLowerLimit": "(-∞", // 下限值 前端可直接用这个字段在列表回显
            "tempUpperLimit": "15)", // 上限值 前端可直接用这个字段在列表回显
            "updateUserId": "423594c93c8f45ee904269f4d8d14743", // 最后操作人ID
            "upperLimit": 15, // 上限值(99在数据库代表无穷 前端显示建议使用返回字段tempUpperLimit)
            "upperSymbol": ")" // 上限符号
        },
        ...
    ],
    "count": 16,
    "respCode": "00000",
    "respMsg": "success"
}

查询指定集团、项目和类型的染色标尺列表

URL:http://develop.persagy.com/calendar/dye/sdk/listDyeScaleplateByType
Method:POST
Header:Content-Type=application/json

请求:

{
    "groupCode": "YL", // 集团编码 必传
    "projectId": "Pj4403050002", // 项目ID 必传
    "typeCode": "pM2d5" // 染色类型编码 必传
}

返回:

{
    "content": [
        {
            "name": "高", // 染色名称
            "colorValue": "#FF0000", // 色值
            "upperLimit": "+∞)", // 上限值
            "lowerLimit": "(35", // 下限值
            "ID": "0e7024ae696b44e38dbafacc86c28d18" // 染色标尺唯一ID
        },
        ...
    ],
    "count": 3,
    "respCode": "00000",
    "respMsg": "success"
}

查询空间对应的染色标尺

URL:http://develop.persagy.com/calendar/dye/sdk/listDyeScaleplateWithSpaceIds
Method:POST
Header:Content-Type=application/json

请求:

{
    "projectId": "Pj4403050002", // 项目ID 必传
    "groupCode": "YL", // 集团编码 必传
    "typeCode": "pM2d5", // 染色类型编码 必传
    "dynamicArray": [ // 动态监测数据 必传
        {
            "spaceId": "SP369784854323156456", // 空间ID 必传
            "realTimeNum": 22 // 动态监测值 必传
        },
        ...
    ]
}

返回:

{
    "content": [
        {
            "spaceId": "SP369784854323156456", // 空间ID
            "name": "达标", // 染色类型编码
            "colorValue": "#C5E0B3", // 色值
            "upperLimit": "35]", // 上限
            "lowerLimit": "[15", // 下限
            "ID": "b0e884ff3a5141a189f4f40b2878b83c", // 染色标尺主键
            "projectId": "Pj4403050002", // 项目ID
            "realTimeNum": 22, // 实时动态监测值
            "groupCode": "YL", // 集团编码
            "typeCode": "pM2d5" // 染色类型编码
        },,
        ...
    ],
    "count": 2,
    "respCode": "00000",
    "respMsg": "success"
}