SharePoint Project Server List 列表CURD操作使用rest api接口
2024-09-06 07:37:38
//#region 界面交互代码
var issuesUtils = issuesUtils || {};
(function () {
/**
* 点击问题提处理方案按钮事件
*/
issuesUtils.issuuesSchemeBtn = function () {
var item_id = commonUtils.getUrlParamValue('ID');
issuesList.getIssuesItem(item_id, function (data) {
console.log(JSON.stringify(data));
var issuesSchemeUrl = '/sites/pwa/Lists/List/AllItems.aspx?IssuesId=' + data.ID;
//location.href = issuesSchemeUrl;
}); issuesList.deleteItem(item_id, function (data) {
alert("删除成功");
});
};
})();
//#endregion //#region 问题list
/**
* issues list
*/
var issuesList = issuesList || {};
(function () { var projectSiteName = function () {
return location.pathname.replace('/', '').split('/')[2];
}; /**
* 获取列表项目
* @param {*} itemId
* @param {*} fun
*/
issuesList.getIssuesItem = function (itemId, fun) {
var server_url = '/sites/pwa/' + projectSiteName() + '/_api/Lists/IssuesList/items(' + itemId + ')';
commonUtils.executeRequest({
type: commonUtils.ExecuteRequestType.READ,
url: server_url,
callBack: function (data) {
if (fun) {
fun(data);
}
}
});
}; issuesList.addIssuesItem = function (callBack) {
var issuesData = {
__metadata: { type: 'SP.Data.IssuesListItem' },
Title: '我的测试问题1212'
};
var server_url = '/sites/pwa/' + projectSiteName() + '/_api/Lists/IssuesList/items';
commonUtils.executeRequest({
type: commonUtils.ExecuteRequestType.CREATE,
data: issuesData,
url: server_url,
callBack: function (data) { }
});
}; issuesList.updateItem = function (callBack) {
var server_url = '/sites/pwa/' + projectSiteName() + '/_api/Lists/IssuesList/items(6)';
var issuesData = {
__metadata: { type: 'SP.Data.IssuesListItem' },
Title: '修改标题111111111'
};
commonUtils.executeRequest({
type: commonUtils.ExecuteRequestType.UPDATE,
data: issuesData,
url: server_url,
callBack: function (data) { }
});
}; /**
* 删除问题
* @param {*ID} itemId
* @param {*} callBack
*/
issuesList.deleteItem = function (itemId, callBack) {
var server_url = '/sites/pwa/' + projectSiteName() + '/_api/Lists/IssuesList/items(' + itemId + ')';
commonUtils.executeRequest({
type: commonUtils.ExecuteRequestType.DELETE,
url: server_url,
callBack: callBack
});
}
})();
//#endregion //#region 问题处理方案list
var issuesSchemeList = issuesSchemeList || {};
(function () { })();
//#endregion //#region 常用工具类
/**
* 常用工具类
*/
var commonUtils = commonUtils || {};
(function () {
/**
* 根据参数名称获取URL参数值
* @param {参数名称} paramName
*/
commonUtils.getUrlParamValue = function (paramName) {
var reg = new RegExp("(^|&)" + paramName + "=([^&]*)(&|$)");
var r = window.location.search.substr(1).match(reg);
if (r != null) return unescape(r[2]);
return undefined;
}; /**
*
* @param {type:commonUtils.ExecuteRequestType,data:提交的数据对象,url:rest api url 地址,callBack:回调函数function(data){}} option
*/
commonUtils.executeRequest = function (option) {
var ajax_type = undefined;
var ajax_header = undefined;
var ajax_data = undefined;
switch (option.type) {
case commonUtils.ExecuteRequestType.CREATE:
//添加数据
ajax_type = 'POST';
ajax_header = {
"Accept": "application/json; odata=verbose",
"X-RequestDigest": $("#__REQUESTDIGEST").val()
};
break;
case commonUtils.ExecuteRequestType.UPDATE:
//修改数据
ajax_type = 'POST';
ajax_header = {
"Accept": "application/json; odata=verbose",
"X-RequestDigest": $("#__REQUESTDIGEST").val(),
"IF-MATCH": "*",
"X-HTTP-Method": "MERGE"
};
break;
case commonUtils.ExecuteRequestType.READ:
//读取数据
ajax_type = 'GET';
ajax_header = {
"Accept": "application/json; odata=verbose",
};
break;
case commonUtils.ExecuteRequestType.DELETE:
//删除数据
ajax_type = 'POST';
ajax_header = {
//"Accept": "application/json; odata=verbose",
"X-RequestDigest": $("#__REQUESTDIGEST").val(),
"IF-MATCH": "*",
"X-HTTP-Method": "DELETE"
};
break;
}
if (option.data) {
ajax_data = JSON.stringify(option.data);
}
if (ajax_header && ajax_header) {
$.ajax({
url: option.url,
type: ajax_type,
//contentType: "application/json;odata=verbose",
data: ajax_data,
headers: ajax_header,
complete: function (xhr, textStatus) {
if (xhr.status == 200) {
var jsondata = xhr.responseText ? JSON.parse(xhr.responseText).d : {};
if (option.callBack) {
option.callBack(jsondata);
}
} else {
console.error("出现错误,错误代码为" + xhr.status);
}
},
error: function (data, errorCode, errorMessage) {
console.error("出现错误:" + errorMessage);
}
});
} else {
console.error("调用commonUtils.executeRequest方法参数不合法");
}
} /**
* 调用rest api类型,增删改查
*/
commonUtils.ExecuteRequestType = {
CREATE: 1,
UPDATE: 2,
READ: 3,
DELETE: 4
};
})();
//#endregion
最新文章
- ★Java多线程编程总结 系列 转
- The error occurred while setting parameters 错误解析--Bad value for type timestamp : 3
- Android Studio中导入第三方库
- C语言 猜数游戏--产生一个随机数
- hdu 4669 动态规划
- SCOI2009游戏
- android有点纠结的小问题
- Storyboards vs NIB vs Code 大辩论
- asp.net MVC 路由系统
- Django中的权限系统
- mybatis 做 insert操作的时候返回插入的那条数据的id
- shell 空格问题
- Npoi简单读写Excel
- Win7 64位下安装64bit MS SQL Server2005时安装不了Reporting Services的处理办法
- 派生 de rive
- python中生成器
- TDateTimePicker中Date与Time的误导
- 阿里巴巴java手册示例
- linux磁盘清理记录
- Python之元类详解