You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
165 lines
4.3 KiB
165 lines
4.3 KiB
using EasyBL.WebApi.Filters;
|
|
using EasyBL.WEBAPP;
|
|
using EasyBL.WEBAPP.SYS;
|
|
using Entity.ShowEasyDtos;
|
|
using Entity.Sugar;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Net;
|
|
using System.Net.Http;
|
|
using System.Web;
|
|
using System.Web.Http;
|
|
|
|
namespace WebApp.Controllers
|
|
{
|
|
public class MembersController : ApiController
|
|
{
|
|
|
|
[HttpPost]
|
|
//[SEApiSecurityFilter]
|
|
public HttpResponseMessage Login([FromBody] Login dto)
|
|
{
|
|
//登陸並返回token
|
|
return new MembersService().Login(dto);
|
|
}
|
|
|
|
[HttpPost]
|
|
[SEApiSecurityFilter]
|
|
public HttpResponseMessage Member([FromBody] MemberDTO Member)
|
|
{
|
|
|
|
var SEToken = SETokenUtil.GetToken(this.Request);
|
|
Member.Account = SEToken.Account;
|
|
|
|
return new MembersService().Update(Member);
|
|
}
|
|
|
|
/// <summary>
|
|
/// 上傳文件
|
|
/// </summary>
|
|
/// <param name="dto"></param>
|
|
/// <returns></returns>
|
|
[HttpPost]
|
|
public HttpResponseMessage UploadAvatar()
|
|
{
|
|
|
|
return new MembersService().UploadAvatar();
|
|
|
|
}
|
|
|
|
//註銷帳號
|
|
[HttpGet]
|
|
[SEApiSecurityFilter]
|
|
public HttpResponseMessage DeactivateAccount()
|
|
{
|
|
|
|
var SEToken = SETokenUtil.GetToken(this.Request);
|
|
|
|
return new MembersService().DeactivateAccount(SEToken.OrgID, SEToken.Account);
|
|
|
|
}
|
|
|
|
//會員個人訊息查詢
|
|
[HttpGet]
|
|
[SEApiSecurityFilter]
|
|
public HttpResponseMessage Info()
|
|
{
|
|
//根據參數取得Member的詳細信息,調用時需要在Header中添加token相關信息,包括orgId,userid,timestamp,token
|
|
//需要驗證的token相關信息的Api,添加上 [SEApiSecurityFilter]即可
|
|
|
|
var SEToken = SETokenUtil.GetToken(this.Request);
|
|
|
|
return new MembersService().GetMemberInfo(SEToken.OrgID, SEToken.Account);
|
|
}
|
|
|
|
//重設密碼
|
|
[HttpPost]
|
|
[SEApiSecurityFilter]
|
|
public HttpResponseMessage ResetNewPassword(string Password)
|
|
{
|
|
var SEToken = SETokenUtil.GetToken(this.Request);
|
|
|
|
return new MembersService().ResetNewPassword(SEToken.OrgID, SEToken.Account, Password);
|
|
|
|
}
|
|
|
|
[HttpGet]
|
|
[SEApiSecurityFilter]
|
|
public HttpResponseMessage Contacts()
|
|
{
|
|
var SEToken = SETokenUtil.GetToken(this.Request);
|
|
|
|
return new ContactService().GetContacts(SEToken.OrgID, SEToken.Account);
|
|
|
|
}
|
|
|
|
[HttpPost]
|
|
[SEApiSecurityFilter]
|
|
public HttpResponseMessage Contact([FromBody] SETB_CRM_Contact Contact)
|
|
{
|
|
var SEToken = SETokenUtil.GetToken(this.Request);
|
|
|
|
Contact.Account = SEToken.Account;
|
|
Contact.OrgID = SEToken.OrgID;
|
|
|
|
return new ContactService().SaveContact(Contact);
|
|
|
|
}
|
|
|
|
[HttpPost]
|
|
[SEApiSecurityFilter]
|
|
public HttpResponseMessage Contact(string ContactID)
|
|
{
|
|
var SEToken = SETokenUtil.GetToken(this.Request);
|
|
|
|
var Contact = new SETB_CRM_Contact();
|
|
|
|
Contact.ContactID = ContactID;
|
|
Contact.Account = SEToken.Account;
|
|
Contact.OrgID = SEToken.OrgID;
|
|
|
|
return new ContactService().RemoveContact(Contact);
|
|
|
|
}
|
|
|
|
[HttpGet]
|
|
[SEApiSecurityFilter]
|
|
public HttpResponseMessage Companies(string Lang)
|
|
{
|
|
var SEToken = SETokenUtil.GetToken(this.Request);
|
|
|
|
return new CompanyService().GetCompanies(SEToken.Account, Lang);
|
|
|
|
}
|
|
|
|
[HttpPost]
|
|
[SEApiSecurityFilter]
|
|
public HttpResponseMessage Company([FromBody] SETB_CRM_Company Company)
|
|
{
|
|
var SEToken = SETokenUtil.GetToken(this.Request);
|
|
|
|
Company.Account = SEToken.Account;
|
|
|
|
return new CompanyService().SaveCompany(Company);
|
|
|
|
}
|
|
|
|
[HttpPost]
|
|
[SEApiSecurityFilter]
|
|
public HttpResponseMessage Company(string CompanyID)
|
|
{
|
|
var SEToken = SETokenUtil.GetToken(this.Request);
|
|
|
|
var Company = new SETB_CRM_Company();
|
|
|
|
Company.CompanyID = CompanyID;
|
|
Company.Account = SEToken.Account;
|
|
|
|
return new CompanyService().RemoveCompany(Company);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|