crm: fix crm api

This commit is contained in:
Anton Suhorukov 2022-05-31 17:01:58 +03:00
parent f6d0b91898
commit ee7dddac5d
16 changed files with 274 additions and 274 deletions

View File

@ -96,7 +96,7 @@ namespace ASC.CRM.Api
/// <returns>
/// Case
/// </returns>
[Update(@"case/{caseid:int}/close")]
[HttpPut(@"case/{caseid:int}/close")]
public CasesDto CloseCases(int caseid)
{
if (caseid <= 0) throw new ArgumentException();
@ -121,7 +121,7 @@ namespace ASC.CRM.Api
/// <returns>
/// Case
/// </returns>
[Update(@"case/{caseid:int}/reopen")]
[HttpPut(@"case/{caseid:int}/reopen")]
public CasesDto ReOpenCases(int caseid)
{
if (caseid <= 0) throw new ArgumentException();
@ -160,7 +160,7 @@ namespace ASC.CRM.Api
///
/// ]]>
/// </example>
[Create(@"case")]
[HttpPost(@"case")]
public CasesDto CreateCases([FromBody] CreateOrUpdateCasesRequestDto inDto)
{
@ -237,7 +237,7 @@ namespace ASC.CRM.Api
///
/// ]]>
/// </example>
[Update(@"case/{caseid:int}")]
[HttpPut(@"case/{caseid:int}")]
public CasesDto UpdateCases(int caseid, [FromBody] CreateOrUpdateCasesRequestDto inDto)
{
var title = inDto.Title;
@ -295,7 +295,7 @@ namespace ASC.CRM.Api
/// <returns>
/// Case
/// </returns>
[Update(@"case/{caseid:int}/access")]
[HttpPut(@"case/{caseid:int}/access")]
public CasesDto SetAccessToCases(int caseid, bool isPrivate, IEnumerable<Guid> accessList)
{
if (caseid <= 0) throw new ArgumentException();
@ -356,7 +356,7 @@ namespace ASC.CRM.Api
/// <returns>
/// Case list
/// </returns>
[Update(@"case/access")]
[HttpPut(@"case/access")]
public IEnumerable<CasesDto> SetAccessToBatchCases([FromBody] SetAccessToBatchCasesRequestDto inDto)
{
var casesid = inDto.CasesId;
@ -397,7 +397,7 @@ namespace ASC.CRM.Api
/// <returns>
/// Case list
/// </returns>
[Update(@"case/filter/access")]
[HttpPut(@"case/filter/access")]
public IEnumerable<CasesDto> SetAccessToBatchCases([FromBody] SetAccessToBatchCasesByFilterInDto inDto)
{
int contactid = inDto.Contactid;
@ -433,7 +433,7 @@ namespace ASC.CRM.Api
/// <param name="caseid">Case ID</param>
///<exception cref="ArgumentException"></exception>
///<exception cref="ItemNotFoundException"></exception>
[Read(@"case/{caseid:int}")]
[HttpGet(@"case/{caseid:int}")]
public CasesDto GetCaseByID(int caseid)
{
if (caseid <= 0) throw new ItemNotFoundException();
@ -455,7 +455,7 @@ namespace ASC.CRM.Api
/// <returns>
/// Case list
/// </returns>
[Read(@"case/filter")]
[HttpGet(@"case/filter")]
public IEnumerable<CasesDto> GetCases(int contactid, bool? isClosed, IEnumerable<string> tags)
{
IEnumerable<CasesDto> result;
@ -537,7 +537,7 @@ namespace ASC.CRM.Api
/// <returns>
/// Case
/// </returns>
[Delete(@"case/{caseid:int}")]
[HttpDelete(@"case/{caseid:int}")]
public Task<CasesDto> DeleteCaseAsync(int caseid)
{
if (caseid <= 0) throw new ArgumentException();
@ -567,7 +567,7 @@ namespace ASC.CRM.Api
/// <returns>
/// Case list
/// </returns>
[Update(@"case")]
[HttpPut(@"case")]
public Task<IEnumerable<CasesDto>> DeleteBatchCasesAsync([FromBody] IEnumerable<int> casesids)
{
if (casesids == null) throw new ArgumentException();
@ -600,7 +600,7 @@ namespace ASC.CRM.Api
/// <returns>
/// Case list
/// </returns>
[Delete(@"case/filter")]
[HttpDelete(@"case/filter")]
public Task<IEnumerable<CasesDto>> DeleteBatchCasesAsync(int contactid, bool? isClosed, IEnumerable<string> tags)
{
var caseses = _daoFactory.GetCasesDao().GetCases(_apiContext.FilterValue, contactid, isClosed, tags, 0, 0, null);
@ -626,7 +626,7 @@ namespace ASC.CRM.Api
/// <category>Cases</category>
/// <returns>Contact list</returns>
///<exception cref="ArgumentException"></exception>
[Read(@"case/{caseid:int}/contact")]
[HttpGet(@"case/{caseid:int}/contact")]
public IEnumerable<ContactDto> GetCasesMembers(int caseid)
{
var contactIDs = _daoFactory.GetCasesDao().GetMembers(caseid);
@ -649,7 +649,7 @@ namespace ASC.CRM.Api
/// <returns>
/// Participant
/// </returns>
[Create(@"case/{caseid:int}/contact")]
[HttpPost(@"case/{caseid:int}/contact")]
public ContactDto AddMemberToCases([FromRoute] int caseid, [FromBody] int contactid)
{
if ((caseid <= 0) || (contactid <= 0)) throw new ArgumentException();
@ -680,7 +680,7 @@ namespace ASC.CRM.Api
/// <returns>
/// Participant
/// </returns>
[Delete(@"case/{caseid:int}/contact/{contactid:int}")]
[HttpDelete(@"case/{caseid:int}/contact/{contactid:int}")]
public ContactDto DeleteMemberFromCases(int caseid, int contactid)
{
if ((caseid <= 0) || (contactid <= 0)) throw new ArgumentException();
@ -712,7 +712,7 @@ namespace ASC.CRM.Api
/// Cases list
/// </returns>
/// <visible>false</visible>
[Read(@"case/byprefix")]
[HttpGet(@"case/byprefix")]
public IEnumerable<CasesDto> GetCasesByPrefix(string prefix, int contactID)
{
var result = new List<CasesDto>();

View File

@ -75,7 +75,7 @@ namespace ASC.CRM.Api
/// <returns>
/// List of all available contact categories
/// </returns>
[Read(@"contact/data/{infoType}/category")]
[HttpGet(@"contact/data/{infoType}/category")]
public IEnumerable<string> GetContactInfoCategory(ContactInfoType infoType)
{
return Enum.GetNames(ContactInfo.GetCategory(infoType));
@ -87,7 +87,7 @@ namespace ASC.CRM.Api
/// <short>Get all contact info types</short>
/// <category>Contacts</category>
/// <returns></returns>
[Read(@"contact/data/infoType")]
[HttpGet(@"contact/data/infoType")]
public IEnumerable<string> GetContactInfoType()
{
return Enum.GetNames(typeof(ContactInfoType));
@ -102,7 +102,7 @@ namespace ASC.CRM.Api
/// <returns>
/// Contact information
/// </returns>
[Read(@"contact/{contactid:int}/data")]
[HttpGet(@"contact/{contactid:int}/data")]
public IEnumerable<ContactInfoDto> GetContactInfo(int contactid)
{
if (contactid <= 0) throw new ArgumentException();
@ -127,7 +127,7 @@ namespace ASC.CRM.Api
/// <category>Contacts</category>
/// <returns>Contact information</returns>
///<exception cref="ArgumentException"></exception>
[Read(@"contact/{contactid:int}/data/{id:int}")]
[HttpGet(@"contact/{contactid:int}/data/{id:int}")]
public ContactInfoDto GetContactInfoByID(int contactid, int id)
{
if (contactid <= 0 || id <= 0) throw new ArgumentException();
@ -158,7 +158,7 @@ namespace ASC.CRM.Api
/// Contact information
/// </returns>
///<exception cref="ArgumentException"></exception>
[Create(@"contact/{contactid:int}/data")]
[HttpPost(@"contact/{contactid:int}/data")]
public ContactInfoDto CreateContactInfo(
[FromRoute] int contactid,
[FromBody] CreateContactInfoRequestDto inDto)
@ -228,7 +228,7 @@ namespace ASC.CRM.Api
/// </returns>
/// <exception cref="ArgumentException"></exception>
/// <exception cref="ItemNotFoundException"></exception>
[Create(@"contact/{contactid:int}/addressdata")]
[HttpPost(@"contact/{contactid:int}/addressdata")]
public ContactInfoDto CreateContactInfoAddress([FromRoute] int contactid, Address address)
{
if (contactid <= 0) throw new ArgumentException("Invalid value", "contactid");
@ -284,7 +284,7 @@ namespace ASC.CRM.Api
/// Contact information
/// </returns>
/// <visible>false</visible>
[Create(@"contact/{contactid:int}/batch")]
[HttpPost(@"contact/{contactid:int}/batch")]
public IEnumerable<ContactInfoDto> CreateBatchContactInfo([FromRoute] int contactid, [FromBody] IEnumerable<ContactInfoDto> items)
{
if (contactid <= 0) throw new ArgumentException();
@ -331,7 +331,7 @@ namespace ASC.CRM.Api
/// <returns>
/// Contact information
/// </returns>
[Update(@"contact/{contactid:int}/data/{id:int}")]
[HttpPut(@"contact/{contactid:int}/data/{id:int}")]
public ContactInfoDto UpdateContactInfo(int id, int contactid, ContactInfoType? infoType, string data, bool? isPrimary, string category)
{
if (id <= 0 || string.IsNullOrEmpty(data) || contactid <= 0) throw new ArgumentException();
@ -393,7 +393,7 @@ namespace ASC.CRM.Api
/// <returns>
/// Contact information
/// </returns>
[Update(@"contact/{contactid:int}/addressdata/{id:int}")]
[HttpPut(@"contact/{contactid:int}/addressdata/{id:int}")]
public ContactInfoDto UpdateContactInfoAddress(int id, int contactid, Address address)
{
if (id <= 0) throw new ArgumentException("Invalid value", "id");
@ -449,7 +449,7 @@ namespace ASC.CRM.Api
/// Contact information
/// </returns>
/// <visible>false</visible>
[Update(@"contact/{contactid:int}/batch")]
[HttpPut(@"contact/{contactid:int}/batch")]
public IEnumerable<ContactInfoDto> UpdateBatchContactInfo(int contactid, IEnumerable<ContactInfoDto> items)
{
if (contactid <= 0) throw new ArgumentException();
@ -492,7 +492,7 @@ namespace ASC.CRM.Api
/// <returns>
/// Contact information
/// </returns>
[Read(@"contact/{contactid:int}/data/{infoType}")]
[HttpGet(@"contact/{contactid:int}/data/{infoType}")]
public IEnumerable<string> GetContactInfo(int contactid, ContactInfoType infoType)
{
if (contactid <= 0) throw new ArgumentException();
@ -516,7 +516,7 @@ namespace ASC.CRM.Api
/// <returns>
/// Contact information
/// </returns>
[Delete(@"contact/{contactid:int}/data/{id:int}")]
[HttpDelete(@"contact/{contactid:int}/data/{id:int}")]
public ContactInfoDto DeleteContactInfo(int contactid, int id)
{
if (id <= 0 || contactid <= 0) throw new ArgumentException();

View File

@ -116,7 +116,7 @@ namespace ASC.CRM.Api
/// <category>Contacts</category>
/// <exception cref="ArgumentException"></exception>
/// <exception cref="ItemNotFoundException"></exception>
[Read(@"contact/{contactid:int}")]
[HttpGet(@"contact/{contactid:int}")]
public ContactDto GetContactByID(int contactid)
{
if (contactid <= 0) throw new ArgumentException();
@ -146,7 +146,7 @@ namespace ASC.CRM.Api
/// Contact list
/// </returns>
///<exception cref="ArgumentException"></exception>
[Read(@"contact/project/{projectid:int}")]
[HttpGet(@"contact/project/{projectid:int}")]
public IEnumerable<ContactDto> GetContactsByProjectID(int projectid)
{
if (projectid <= 0) throw new ArgumentException();
@ -167,7 +167,7 @@ namespace ASC.CRM.Api
///// <exception cref="ArgumentException"></exception>
///// <exception cref="ItemNotFoundException"></exception>
///// <returns>Contact Info</returns>
//[Create(@"contact/{contactid:int}/project/{projectid:int}")]
//[HttpPost(@"contact/{contactid:int}/project/{projectid:int}")]
//public ContactDto SetRelativeContactToProject(int contactid, int projectid)
//{
// if (contactid <= 0 || projectid <= 0) throw new ArgumentException();
@ -203,7 +203,7 @@ namespace ASC.CRM.Api
///// <returns>
///// Contact list
///// </returns>
//[Create(@"contact/project/{projectid:int}")]
//[HttpPost(@"contact/project/{projectid:int}")]
//public IEnumerable<ContactDto> SetRelativeContactListToProject(IEnumerable<int> contactid, int projectid)
//{
// if (contactid == null) throw new ArgumentException();
@ -242,7 +242,7 @@ namespace ASC.CRM.Api
///// <returns>
///// Contact info
///// </returns>
//[Delete(@"contact/{contactid:int}/project/{projectid:int}")]
//[HttpDelete(@"contact/{contactid:int}/project/{projectid:int}")]
//public ContactBaseDto RemoveRelativeContactToProject(int contactid, int projectid)
//{
// if (contactid <= 0 || projectid <= 0) throw new ArgumentException();
@ -276,7 +276,7 @@ namespace ASC.CRM.Api
/// <returns>
/// Opportunity
/// </returns>
[Create(@"contact/{contactid:int}/opportunity/{opportunityid:int}")]
[HttpPost(@"contact/{contactid:int}/opportunity/{opportunityid:int}")]
public OpportunityDto AddDealToContact([FromRoute] int contactid, [FromRoute] int opportunityid)
{
if ((opportunityid <= 0) || (contactid <= 0)) throw new ArgumentException();
@ -307,7 +307,7 @@ namespace ASC.CRM.Api
/// <returns>
/// Opportunity
/// </returns>
[Delete(@"contact/{contactid:int}/opportunity/{opportunityid:int}")]
[HttpDelete(@"contact/{contactid:int}/opportunity/{opportunityid:int}")]
public OpportunityDto DeleteDealFromContact(int contactid, int opportunityid)
{
if ((opportunityid <= 0) || (contactid <= 0)) throw new ArgumentException();
@ -339,7 +339,7 @@ namespace ASC.CRM.Api
/// <returns>
/// Contact list
/// </returns>
[Read(@"contact/filter")]
[HttpGet(@"contact/filter")]
public IEnumerable<ContactDto> GetContacts(
[FromQuery] IEnumerable<String> tags,
[FromQuery] int? contactStage,
@ -451,7 +451,7 @@ namespace ASC.CRM.Api
/// Contact list
/// </returns>
/// <visible>false</visible>
[Read(@"contact/simple/byEmail")]
[HttpGet(@"contact/simple/byEmail")]
public IEnumerable<ContactWithTaskDto> SearchContactsByEmail(string term, int maxCount)
{
var result = ToSimpleListContactDto(_daoFactory.GetContactDao().SearchContactsByEmail(
@ -478,7 +478,7 @@ namespace ASC.CRM.Api
/// Contact list
/// </returns>
/// <visible>false</visible>
[Read(@"contact/simple/filter")]
[HttpGet(@"contact/simple/filter")]
public IEnumerable<ContactWithTaskDto> GetSimpleContacts(
IEnumerable<string> tags,
int? contactStage,
@ -587,7 +587,7 @@ namespace ASC.CRM.Api
/// Contact list
/// </returns>
/// <visible>false</visible>
[Read(@"contact/mail")]
[HttpGet(@"contact/mail")]
public IEnumerable<ContactBaseWithEmailDto> GetContactsForMail(IEnumerable<int> contactids)
{
if (contactids == null) throw new ArgumentException();
@ -614,7 +614,7 @@ namespace ASC.CRM.Api
/// <returns>
/// Contact list
/// </returns>
[Delete(@"contact/filter")]
[HttpDelete(@"contact/filter")]
public async Task<IEnumerable<ContactBaseDto>> DeleteBatchContactsAsync(
IEnumerable<String> tags,
int? contactStage,
@ -657,7 +657,7 @@ namespace ASC.CRM.Api
/// <returns>
/// Linked persons
/// </returns>
[Read(@"contact/company/{companyid:int}/person")]
[HttpGet(@"contact/company/{companyid:int}/person")]
public IEnumerable<ContactDto> GetPeopleFromCompany(int companyid)
{
if (companyid <= 0) throw new ArgumentException();
@ -682,7 +682,7 @@ namespace ASC.CRM.Api
/// <returns>
/// Person
/// </returns>
[Create(@"contact/company/{companyid:int}/person")]
[HttpPost(@"contact/company/{companyid:int}/person")]
public PersonDto AddPeopleToCompany([FromRoute] int companyid, [FromBody] int personid)
{
if ((companyid <= 0) || (personid <= 0)) throw new ArgumentException();
@ -711,7 +711,7 @@ namespace ASC.CRM.Api
/// <returns>
/// Person
/// </returns>
[Delete(@"contact/company/{companyid:int}/person")]
[HttpDelete(@"contact/company/{companyid:int}/person")]
public PersonDto DeletePeopleFromCompany(int companyid, int personid)
{
if ((companyid <= 0) || (personid <= 0)) throw new ArgumentException();
@ -743,7 +743,7 @@ namespace ASC.CRM.Api
/// <category>Contacts</category>
/// <returns>Person</returns>
/// <exception cref="ArgumentException"></exception>
[Create(@"contact/person")]
[HttpPost(@"contact/person")]
public Task<PersonDto> CreatePersonAsync([FromBody] CreateOrUpdatePersonRequestDto intDto)
{
int companyId = intDto.CompanyId;
@ -823,7 +823,7 @@ namespace ASC.CRM.Api
/// <returns>
/// Path to contact photo
/// </returns>
[Update(@"contact/{contactid:int}/changephoto")]
[HttpPut(@"contact/{contactid:int}/changephoto")]
public Task<string> ChangeContactPhotoAsync(int contactid, IEnumerable<IFormFile> photo)
{
if (contactid <= 0)
@ -870,7 +870,7 @@ namespace ASC.CRM.Api
/// <returns>
/// Path to contact photo
/// </returns>
[Update(@"contact/{contactid:int}/changephotobyurl")]
[HttpPut(@"contact/{contactid:int}/changephotobyurl")]
public Task<string> ChangeContactPhotoAsync(int contactid, string photourl)
{
if (contactid <= 0 || string.IsNullOrEmpty(photourl)) throw new ArgumentException();
@ -900,7 +900,7 @@ namespace ASC.CRM.Api
/// <returns>
/// Contact
/// </returns>
[Update(@"contact/merge")]
[HttpPut(@"contact/merge")]
public ContactDto MergeContacts(int fromcontactid, int tocontactid)
{
if (fromcontactid <= 0 || tocontactid <= 0) throw new ArgumentException();
@ -939,7 +939,7 @@ namespace ASC.CRM.Api
/// <returns>Person</returns>
/// <exception cref="ArgumentException"></exception>
/// <exception cref="ItemNotFoundException"></exception>
[Update(@"contact/person/{personid:int}")]
[HttpPut(@"contact/person/{personid:int}")]
public Task<PersonDto> UpdatePersonAsync([FromQuery] int personid, [FromBody] CreateOrUpdatePersonRequestDto inDto)
{
string firstName = inDto.FirstName;
@ -1021,7 +1021,7 @@ namespace ASC.CRM.Api
/// <category>Contacts</category>
/// <returns>Company</returns>
/// <exception cref="ArgumentException"></exception>
[Create(@"contact/company")]
[HttpPost(@"contact/company")]
public async Task<CompanyDto> CreateCompanyAsync([FromBody] CreateOrUpdateCompanyRequestDto inDto)
{
var personList = inDto.PersonList;
@ -1093,7 +1093,7 @@ namespace ASC.CRM.Api
/// <category>Contacts</category>
/// <returns>Contact list</returns>
/// <exception cref="ArgumentException"></exception>
[Create(@"contact/company/quick")]
[HttpPost(@"contact/company/quick")]
public IEnumerable<ContactBaseDto> CreateCompany([FromBody] IEnumerable<string> companyName)
{
if (companyName == null) throw new ArgumentException();
@ -1143,7 +1143,7 @@ namespace ASC.CRM.Api
/// <category>Contacts</category>
/// <returns>Contact list</returns>
/// <exception cref="ArgumentException"></exception>
[Create(@"contact/person/quick")]
[HttpPost(@"contact/person/quick")]
public IEnumerable<ContactBaseDto> CreatePerson([FromBody] IEnumerable<ItemKeyValuePair<string, string>> data)
{
if (data == null) return null;
@ -1195,7 +1195,7 @@ namespace ASC.CRM.Api
/// <returns>
/// Company
/// </returns>
[Update(@"contact/company/{companyid:int}")]
[HttpPut(@"contact/company/{companyid:int}")]
public CompanyDto UpdateCompany(
[FromRoute] int companyid,
[FromBody] CreateOrUpdateCompanyRequestDto intDto)
@ -1252,7 +1252,7 @@ namespace ASC.CRM.Api
/// <returns>
/// Company
/// </returns>
[Update(@"contact/{contactid:int}/status")]
[HttpPut(@"contact/{contactid:int}/status")]
public ContactDto UpdateContactStatus(int contactid, int contactStatusid)
{
if (contactid <= 0 || contactStatusid < 0) throw new ArgumentException();
@ -1291,7 +1291,7 @@ namespace ASC.CRM.Api
/// <returns>
/// Company
/// </returns>
[Update(@"contact/company/{companyid:int}/status")]
[HttpPut(@"contact/company/{companyid:int}/status")]
public ContactDto UpdateCompanyAndParticipantsStatus(int companyid, int contactStatusid)
{
if (companyid <= 0 || contactStatusid < 0) throw new ArgumentException();
@ -1341,7 +1341,7 @@ namespace ASC.CRM.Api
/// <returns>
/// Person
/// </returns>
[Update(@"contact/person/{personid:int}/status")]
[HttpPut(@"contact/person/{personid:int}/status")]
public ContactDto UpdatePersonAndItsCompanyStatus(int personid, int contactStatusid)
{
if (personid <= 0 || contactStatusid < 0) throw new ArgumentException();
@ -1409,7 +1409,7 @@ namespace ASC.CRM.Api
///<exception cref="ItemNotFoundException"></exception>
///<exception cref="SecurityException"></exception>
/// <returns>User list</returns>
[Read(@"contact/{contactid:int}/access")]
[HttpGet(@"contact/{contactid:int}/access")]
public IEnumerable<EmployeeDto> GetContactAccessList(int contactid)
{
if (contactid <= 0) throw new ArgumentException();
@ -1440,7 +1440,7 @@ namespace ASC.CRM.Api
/// <returns>
/// Contact
/// </returns>
[Update(@"contact/{contactid:int}/access")]
[HttpPut(@"contact/{contactid:int}/access")]
public ContactDto SetAccessToContact(int contactid, bool isShared, IEnumerable<Guid> managerList)
{
if (contactid <= 0) throw new ArgumentException();
@ -1496,7 +1496,7 @@ namespace ASC.CRM.Api
/// <returns>
/// Contact list
/// </returns>
[Update(@"contact/access")]
[HttpPut(@"contact/access")]
public IEnumerable<ContactDto> SetAccessToBatchContact(
[FromBody] SetAccessToBatchContactRequestDto inDto)
{
@ -1535,7 +1535,7 @@ namespace ASC.CRM.Api
/// <returns>
/// Contact list
/// </returns>
[Update(@"contact/filter/access")]
[HttpPut(@"contact/filter/access")]
public IEnumerable<ContactDto> SetAccessToBatchContact(
[FromBody] SetAccessToBatchContactByFilterRequestDto inDto)
{
@ -1590,7 +1590,7 @@ namespace ASC.CRM.Api
/// <returns>
/// Contact
/// </returns>
[Delete(@"contact/{contactid:int}")]
[HttpDelete(@"contact/{contactid:int}")]
public Task<ContactDto> DeleteContactAsync(int contactid)
{
if (contactid <= 0) throw new ArgumentException();
@ -1620,7 +1620,7 @@ namespace ASC.CRM.Api
/// <returns>
/// Contact list
/// </returns>
[Update(@"contact")]
[HttpPut(@"contact")]
public Task<IEnumerable<ContactBaseDto>> DeleteBatchContactsAsync(IEnumerable<int> contactids)
{
if (contactids == null) throw new ArgumentException();
@ -1648,7 +1648,7 @@ namespace ASC.CRM.Api
/// Contact list
/// </returns>
/// <visible>false</visible>
[Read(@"contact/byprefix")]
[HttpGet(@"contact/byprefix")]
public IEnumerable<ContactBaseWithPhoneDto> GetContactsByPrefix(string prefix, int searchType, EntityType entityType, int entityID)
{
var result = new List<ContactBaseWithPhoneDto>();
@ -1720,7 +1720,7 @@ namespace ASC.CRM.Api
/// <returns>
/// Contact list
/// </returns>
[Read(@"contact/bycontactinfo")]
[HttpGet(@"contact/bycontactinfo")]
public IEnumerable<ContactDto> GetContactsByContactInfo(ContactInfoType? infoType, String data, int? category, bool? isPrimary)
{
if (!infoType.HasValue) throw new ArgumentException();
@ -1739,7 +1739,7 @@ namespace ASC.CRM.Api
///// <param name="count"></param>
///// <category>Contacts</category>
///// <returns></returns>
//[Read(@"contact/{contactid:int}/tweets")]
//[HttpGet(@"contact/{contactid:int}/tweets")]
//public List<Message> GetUserTweets(int contactid, int count)
//{
// var MessageCount = 10;
@ -1802,7 +1802,7 @@ namespace ASC.CRM.Api
///// <param name="searchText"></param>
///// <category>Contacts</category>
///// <returns></returns>
//[Read(@"contact/twitterprofile")]
//[HttpGet(@"contact/twitterprofile")]
//public List<TwitterUserInfo> FindTwitterProfiles(string searchText)
//{
// try
@ -1832,7 +1832,7 @@ namespace ASC.CRM.Api
/// <param name="uploadOnly"></param>
/// <category>Contacts</category>
/// <returns></returns>
[Delete(@"contact/{contactid:int}/avatar")]
[HttpDelete(@"contact/{contactid:int}/avatar")]
public Task<string> DeleteContactAvatarAsync(int contactId, string contactType, bool uploadOnly)
{
bool isCompany;
@ -1865,7 +1865,7 @@ namespace ASC.CRM.Api
///// <param name="contactId"></param>
///// <category>Contacts</category>
///// <returns></returns>
//[Read(@"contact/{contactid:int}/socialmediaavatar")]
//[HttpGet(@"contact/{contactid:int}/socialmediaavatar")]
//public List<SocialMediaImageDescription> GetContactSMImages(int contactId)
//{
// return new SocialMediaUI(DaoFactory).GetContactSMImages(contactId);
@ -1877,7 +1877,7 @@ namespace ASC.CRM.Api
///// <param name="socialNetworks"></param>
///// <category>Contacts</category>
///// <returns></returns>
//[Create(@"contact/socialmediaavatar")]
//[HttpPost(@"contact/socialmediaavatar")]
//public List<SocialMediaImageDescription> GetContactSMImagesByNetworks(List<ContactInfoDto> socialNetworks)
//{
// if (socialNetworks == null || socialNetworks.Count == 0)
@ -1904,7 +1904,7 @@ namespace ASC.CRM.Api
///// <param name="tmpDirName" visible="false"></param>
///// <category>Contacts</category>
///// <returns></returns>
//[Update(@"contact/{contactid:int}/avatar")]
//[HttpPut(@"contact/{contactid:int}/avatar")]
//public ContactPhotoManager.PhotoData UploadUserAvatarFromSocialNetwork(int contactId, SocialNetworks socialNetwork, string userIdentity, bool uploadOnly, string tmpDirName)
//{
// if (socialNetwork != SocialNetworks.Twitter)
@ -1929,7 +1929,7 @@ namespace ASC.CRM.Api
//}
/// <visible>false</visible>
[Create(@"contact/mailsmtp/send")]
[HttpPost(@"contact/mailsmtp/send")]
public IProgressItem SendMailSMTPToContacts(
SendMailSMTPToContactsRequestDto inDto)
{
@ -1949,7 +1949,7 @@ namespace ASC.CRM.Api
}
/// <visible>false</visible>
[Create(@"contact/mailsmtp/preview")]
[HttpPost(@"contact/mailsmtp/preview")]
public string GetMailSMTPToContactsPreview([FromBody] GetMailSMTPToContactsPreviewRequestDto inDto)
{
var contactId = inDto.ContactId;
@ -1963,14 +1963,14 @@ namespace ASC.CRM.Api
}
/// <visible>false</visible>
[Read(@"contact/mailsmtp/status")]
[HttpGet(@"contact/mailsmtp/status")]
public IProgressItem GetMailSMTPToContactsStatus()
{
return _mailSender.GetStatus();
}
/// <visible>false</visible>
[Update(@"contact/mailsmtp/cancel")]
[HttpPut(@"contact/mailsmtp/cancel")]
public IProgressItem CancelMailSMTPToContacts()
{
var progressItem = _mailSender.GetStatus();
@ -1982,7 +1982,7 @@ namespace ASC.CRM.Api
}
/// <visible>false</visible>
[Update(@"contact/{contactid:int}/creationdate")]
[HttpPut(@"contact/{contactid:int}/creationdate")]
public void SetContactCreationDate(int contactId, ApiDateTime creationDate)
{
var dao = _daoFactory.GetContactDao();
@ -1995,7 +1995,7 @@ namespace ASC.CRM.Api
}
/// <visible>false</visible>
[Update(@"contact/{contactid:int}/lastmodifeddate")]
[HttpPut(@"contact/{contactid:int}/lastmodifeddate")]
public void SetContactLastModifedDate(int contactId, ApiDateTime lastModifedDate)
{
var dao = _daoFactory.GetContactDao();

View File

@ -79,7 +79,7 @@ namespace ASC.CRM.Api
/// <returns>
/// List of currency rates
/// </returns>
[Read(@"currency/rates")]
[HttpGet(@"currency/rates")]
public IEnumerable<CurrencyRateDto> GetCurrencyRates()
{
return _daoFactory.GetCurrencyRateDao().GetAll().ConvertAll(x => _mapper.Map<CurrencyRateDto>(x));
@ -94,7 +94,7 @@ namespace ASC.CRM.Api
/// Currency rate
/// </returns>
/// <exception cref="ArgumentException"></exception>
[Read(@"currency/rates/{id:int}")]
[HttpGet(@"currency/rates/{id:int}")]
public CurrencyRateDto GetCurrencyRate(int id)
{
if (id <= 0) throw new ArgumentException();
@ -113,7 +113,7 @@ namespace ASC.CRM.Api
/// Currency rate
/// </returns>
/// <exception cref="ArgumentException"></exception>
[Read(@"currency/rates/{fromCurrency}/{toCurrency}")]
[HttpGet(@"currency/rates/{fromCurrency}/{toCurrency}")]
public CurrencyRateDto GetCurrencyRate(string fromCurrency, string toCurrency)
{
if (string.IsNullOrEmpty(fromCurrency) || string.IsNullOrEmpty(toCurrency))
@ -130,7 +130,7 @@ namespace ASC.CRM.Api
/// <short></short>
/// <category>Common</category>
/// <returns></returns>
[Create(@"currency/rates")]
[HttpPost(@"currency/rates")]
public CurrencyRateDto CreateCurrencyRate(
[FromBody] CreateCurrencyRateRequestDto inDto)
{
@ -162,7 +162,7 @@ namespace ASC.CRM.Api
/// <short></short>
/// <category>Common</category>
/// <returns></returns>
[Update(@"currency/rates/{id:int}")]
[HttpPut(@"currency/rates/{id:int}")]
public CurrencyRateDto UpdateCurrencyRate(int id, string fromCurrency, string toCurrency, decimal rate)
{
if (id <= 0)
@ -193,7 +193,7 @@ namespace ASC.CRM.Api
/// <short></short>
/// <category>Common</category>
/// <returns></returns>
[Create(@"currency/setrates")]
[HttpPost(@"currency/setrates")]
public List<CurrencyRateDto> SetCurrencyRates(
SetCurrencyRatesRequestDto inDto)
{
@ -241,7 +241,7 @@ namespace ASC.CRM.Api
/// <short></short>
/// <category>Common</category>
/// <returns></returns>
[Create(@"currency/addrates")]
[HttpPost(@"currency/addrates")]
public List<CurrencyRateDto> AddCurrencyRates([FromBody] List<CurrencyRate> rates)
{
if (!_crmSecurity.IsAdmin)
@ -283,7 +283,7 @@ namespace ASC.CRM.Api
/// <short></short>
/// <category>Common</category>
/// <returns></returns>
[Delete(@"currency/rates/{id:int}")]
[HttpDelete(@"currency/rates/{id:int}")]
public CurrencyRateDto DeleteCurrencyRate(int id)
{
if (id <= 0)

View File

@ -73,7 +73,7 @@ namespace ASC.CRM.Api
/// User field list
/// </returns>
///<exception cref="ArgumentException"></exception>
[Read(@"{entityType:regex(contact|person|company|opportunity|case)}/customfield/definitions")]
[HttpGet(@"{entityType:regex(contact|person|company|opportunity|case)}/customfield/definitions")]
public IEnumerable<CustomFieldDto> GetCustomFieldDefinitions(string entityType)
{
return _mapper.Map<List<CustomField>, List<CustomFieldDto>>(_daoFactory.GetCustomFieldDao().GetFieldsDescription(ToEntityType(entityType)));
@ -87,7 +87,7 @@ namespace ASC.CRM.Api
/// <short>Get user field values</short>
/// <category>User fields</category>
/// <returns></returns>
[Read(@"{entityType:regex(contact|person|company|opportunity|case)}/{entityid:int}/customfield")]
[HttpGet(@"{entityType:regex(contact|person|company|opportunity|case)}/{entityid:int}/customfield")]
public IEnumerable<CustomFieldBaseDto> GetCustomFieldForSubject(string entityType, int entityid)
{
return _mapper.Map<List<CustomField>, List<CustomFieldDto>>(_daoFactory.GetCustomFieldDao().GetEnityFields(ToEntityType(entityType), entityid, false));
@ -105,7 +105,7 @@ namespace ASC.CRM.Api
/// <returns>
/// User field
/// </returns>
[Create(@"{entityType:regex(contact|person|company|opportunity|case)}/{entityid:int}/customfield/{fieldid:int}")]
[HttpPost(@"{entityType:regex(contact|person|company|opportunity|case)}/{entityid:int}/customfield/{fieldid:int}")]
public CustomFieldBaseDto SetEntityCustomFieldValue(
[FromRoute] string entityType,
[FromRoute] int entityid,
@ -216,7 +216,7 @@ namespace ASC.CRM.Api
///
/// ]]>
/// </example>
[Create(@"{entityType:regex(contact|person|company|opportunity|case)}/customfield")]
[HttpPost(@"{entityType:regex(contact|person|company|opportunity|case)}/customfield")]
public CustomFieldDto CreateCustomFieldValue(
[FromRoute] string entityType,
[FromBody] CreateOrUpdateCustomFieldValueRequestDto inDto
@ -264,7 +264,7 @@ namespace ASC.CRM.Api
/// </remarks>
/// <exception cref="ArgumentException"></exception>
/// <exception cref="ItemNotFoundException"></exception>
[Update(@"{entityType:regex(contact|person|company|opportunity|case)}/customfield/{id:int}")]
[HttpPut(@"{entityType:regex(contact|person|company|opportunity|case)}/customfield/{id:int}")]
public CustomFieldDto UpdateCustomFieldValue(int id, string entityType, string label, int fieldType, int position, string mask)
{
if (id <= 0) throw new ArgumentException();
@ -304,7 +304,7 @@ namespace ASC.CRM.Api
/// <returns>
/// User field
/// </returns>
[Delete(@"{entityType:regex(contact|person|company|opportunity|case)}/customfield/{fieldid:int}")]
[HttpDelete(@"{entityType:regex(contact|person|company|opportunity|case)}/customfield/{fieldid:int}")]
public CustomFieldDto DeleteCustomField(string entityType, int fieldid)
{
if (!(_crmSecurity.IsAdmin)) throw _crmSecurity.CreateSecurityException();
@ -335,7 +335,7 @@ namespace ASC.CRM.Api
/// <exception cref="SecurityException"></exception>
/// <exception cref="ArgumentException"></exception>
/// <exception cref="ItemNotFoundException"></exception>
[Update(@"{entityType:regex(contact|person|company|opportunity|case)}/customfield/reorder")]
[HttpPut(@"{entityType:regex(contact|person|company|opportunity|case)}/customfield/reorder")]
public IEnumerable<CustomFieldBaseDto> UpdateCustomFieldsOrder(IEnumerable<int> fieldids, string entityType)
{
if (fieldids == null) throw new ArgumentException();

View File

@ -102,7 +102,7 @@ namespace ASC.CRM.Api
/// <category>Opportunities</category>
///<exception cref="ArgumentException"></exception>
///<exception cref="ItemNotFoundException"></exception>
[Read(@"opportunity/{opportunityid:int}")]
[HttpGet(@"opportunity/{opportunityid:int}")]
public OpportunityDto GetDealByID(int opportunityid)
{
if (opportunityid <= 0) throw new ArgumentException();
@ -125,7 +125,7 @@ namespace ASC.CRM.Api
/// <category>Opportunities</category>
///<exception cref="ArgumentException"></exception>
///<exception cref="ItemNotFoundException"></exception>
[Update(@"opportunity/{opportunityid:int}/stage/{id:int}")]
[HttpPut(@"opportunity/{opportunityid:int}/stage/{id:int}")]
public OpportunityDto UpdateToDealMilestone(int opportunityid, int stageid)
{
if (opportunityid <= 0 || stageid <= 0) throw new ArgumentException();
@ -159,7 +159,7 @@ namespace ASC.CRM.Api
/// <returns>
/// Opportunity
/// </returns>
[Update(@"opportunity/{opportunityid:int}/access")]
[HttpPut(@"opportunity/{opportunityid:int}/access")]
public OpportunityDto SetAccessToDeal(int opportunityid, bool isPrivate, IEnumerable<Guid> accessList)
{
if (opportunityid <= 0) throw new ArgumentException();
@ -228,7 +228,7 @@ namespace ASC.CRM.Api
/// <returns>
/// Opportunity list
/// </returns>
[Update(@"opportunity/filter/access")]
[HttpPut(@"opportunity/filter/access")]
public IEnumerable<OpportunityDto> SetAccessToBatchDeal([FromBody] SetAccessToBatchDealByFilterRequestDto inDto)
{
var responsibleid = inDto.Responsibleid;
@ -284,7 +284,7 @@ namespace ASC.CRM.Api
/// <returns>
/// Opportunity list
/// </returns>
[Update(@"opportunity/access")]
[HttpPut(@"opportunity/access")]
public IEnumerable<OpportunityDto> SetAccessToBatchDeal(SetAccessToBatchDealRequestDto inDto)
{
var opportunityid = inDto.Opportunityid;
@ -324,7 +324,7 @@ namespace ASC.CRM.Api
/// <returns>
/// Opportunity list
/// </returns>
[Update(@"opportunity")]
[HttpPut(@"opportunity")]
public Task<IEnumerable<OpportunityDto>> DeleteBatchDealsAsync(IEnumerable<int> opportunityids)
{
if (opportunityids == null || !opportunityids.Any()) throw new ArgumentException();
@ -358,7 +358,7 @@ namespace ASC.CRM.Api
/// <returns>
/// Opportunity list
/// </returns>
[Delete(@"opportunity/filter")]
[HttpDelete(@"opportunity/filter")]
public Task<IEnumerable<OpportunityDto>> DeleteBatchDealsAsync(
Guid responsibleid,
int opportunityStagesid,
@ -407,7 +407,7 @@ namespace ASC.CRM.Api
/// <returns>
/// Opportunity list
/// </returns>
[Read(@"opportunity/filter")]
[HttpGet(@"opportunity/filter")]
public IEnumerable<OpportunityDto> GetDeals(
[FromQuery] Guid responsibleid,
[FromQuery] int opportunityStagesid,
@ -515,7 +515,7 @@ namespace ASC.CRM.Api
/// <returns>
/// Opportunity
/// </returns>
[Delete(@"opportunity/{opportunityid:int}")]
[HttpDelete(@"opportunity/{opportunityid:int}")]
public Task<OpportunityDto> DeleteDealAsync(int opportunityid)
{
if (opportunityid <= 0) throw new ArgumentException();
@ -559,7 +559,7 @@ namespace ASC.CRM.Api
/// Opportunity
/// </returns>
///<exception cref="ArgumentException"></exception>
[Create(@"opportunity")]
[HttpPost(@"opportunity")]
public OpportunityDto CreateDeal(CreateOrUpdateDealRequestDto inDto)
{
@ -658,7 +658,7 @@ namespace ASC.CRM.Api
/// Opportunity
/// </returns>
///<exception cref="ArgumentException"></exception>
[Update(@"opportunity/{opportunityid:int}")]
[HttpPut(@"opportunity/{opportunityid:int}")]
public OpportunityDto UpdateDeal(
int opportunityid, CreateOrUpdateDealRequestDto inDto)
{
@ -740,7 +740,7 @@ namespace ASC.CRM.Api
/// <returns>Contact list</returns>
///<exception cref="ArgumentException"></exception>
///<exception cref="ItemNotFoundException"></exception>
[Read(@"opportunity/{opportunityid:int}/contact")]
[HttpGet(@"opportunity/{opportunityid:int}/contact")]
public IEnumerable<ContactDto> GetDealMembers(int opportunityid)
{
var opportunity = _daoFactory.GetDealDao().GetByID(opportunityid);
@ -771,7 +771,7 @@ namespace ASC.CRM.Api
/// <returns>
/// Participant
/// </returns>
[Create(@"opportunity/{opportunityid:int}/contact/{contactid:int}")]
[HttpPost(@"opportunity/{opportunityid:int}/contact/{contactid:int}")]
public ContactDto AddMemberToDeal([FromRoute] int opportunityid, [FromRoute] int contactid)
{
if (opportunityid <= 0 || contactid <= 0) throw new ArgumentException();
@ -804,7 +804,7 @@ namespace ASC.CRM.Api
/// <returns>
/// Participant
/// </returns>
[Delete(@"opportunity/{opportunityid:int}/contact/{contactid:int}")]
[HttpDelete(@"opportunity/{opportunityid:int}/contact/{contactid:int}")]
public ContactDto DeleteMemberFromDeal(int opportunityid, int contactid)
{
if ((opportunityid <= 0) || (contactid <= 0)) throw new ArgumentException();
@ -836,7 +836,7 @@ namespace ASC.CRM.Api
/// Opportunities list
/// </returns>
/// <visible>false</visible>
[Read(@"opportunity/byprefix")]
[HttpGet(@"opportunity/byprefix")]
public IEnumerable<OpportunityDto> GetDealsByPrefix(string prefix, int contactID, bool internalSearch = true)
{
var result = new List<OpportunityDto>();
@ -876,7 +876,7 @@ namespace ASC.CRM.Api
/// <returns>
/// Opportunity list
/// </returns>
[Read(@"opportunity/bycontact/{contactid:int}")]
[HttpGet(@"opportunity/bycontact/{contactid:int}")]
public IEnumerable<OpportunityDto> GetDeals(int contactid)
{
var deals = _daoFactory.GetDealDao().GetDealsByContactID(contactid);
@ -884,7 +884,7 @@ namespace ASC.CRM.Api
}
/// <visible>false</visible>
[Update(@"opportunity/{opportunityid:int}/creationdate")]
[HttpPut(@"opportunity/{opportunityid:int}/creationdate")]
public void SetDealCreationDate(int opportunityid, ApiDateTime creationDate)
{
var dao = _daoFactory.GetDealDao();
@ -897,7 +897,7 @@ namespace ASC.CRM.Api
}
/// <visible>false</visible>
[Update(@"opportunity/{opportunityid:int}/lastmodifeddate")]
[HttpPut(@"opportunity/{opportunityid:int}/lastmodifeddate")]
public void SetDealLastModifedDate(int opportunityid, ApiDateTime lastModifedDate)
{
var dao = _daoFactory.GetDealDao();

View File

@ -22,7 +22,7 @@ namespace ASC.CRM.Api
ProductEntryPoint = productEntryPoint;
}
[Read("info")]
[HttpGet("info")]
public Module GetModule()
{
ProductEntryPoint.Init();

View File

@ -103,7 +103,7 @@ namespace ASC.CRM.Api
/// <short>Get invoice by ID</short>
/// <category>Invoices</category>
/// <returns>Invoice</returns>
[Read(@"invoice/{invoiceid:int}")]
[HttpGet(@"invoice/{invoiceid:int}")]
public InvoiceDto GetInvoiceByID(int invoiceid)
{
if (invoiceid <= 0) throw new ArgumentException();
@ -125,7 +125,7 @@ namespace ASC.CRM.Api
/// <short>Get invoice sample</short>
/// <category>Invoices</category>
/// <returns>Invoice</returns>
[Read(@"invoice/sample")]
[HttpGet(@"invoice/sample")]
public InvoiceDto GetInvoiceSample()
{
var crmSettings = _settingsManager.Load<CrmSettings>();
@ -153,7 +153,7 @@ namespace ASC.CRM.Api
/// <short>Get invoice json data</short>
/// <category>Invoices</category>
/// <returns>Json Data</returns>
[Read(@"invoice/jsondata/{invoiceid:int}")]
[HttpGet(@"invoice/jsondata/{invoiceid:int}")]
public string GetInvoiceJsonData(int invoiceid)
{
var invoice = _daoFactory.GetInvoiceDao().GetByID(invoiceid);
@ -181,7 +181,7 @@ namespace ASC.CRM.Api
/// <short>Get invoice list</short>
/// <category>Invoices</category>
/// <returns>Invoice list</returns>
[Read(@"invoice/filter")]
[HttpGet(@"invoice/filter")]
public IEnumerable<InvoiceBaseDto> GetInvoices(
InvoiceStatus? status,
ApiDateTime issueDateFrom,
@ -285,7 +285,7 @@ namespace ASC.CRM.Api
/// <short>Get entity invoices</short>
/// <category>Invoices</category>
/// <returns>Invoice list</returns>
[Read(@"{entityType:regex(contact|person|company|opportunity)}/invoicelist/{entityid:int}")]
[HttpGet(@"{entityType:regex(contact|person|company|opportunity)}/invoicelist/{entityid:int}")]
public IEnumerable<InvoiceBaseDto> GetEntityInvoices(String entityType, int entityid)
{
if (String.IsNullOrEmpty(entityType) || entityid <= 0) throw new ArgumentException();
@ -301,7 +301,7 @@ namespace ASC.CRM.Api
/// <short>Update invoice group status</short>
/// <category>Invoices</category>
/// <returns>KeyValuePair of Invoices and InvoiceItems</returns>
[Update(@"invoice/status/{status:int}")]
[HttpPut(@"invoice/status/{status:int}")]
public KeyValuePair<IEnumerable<InvoiceBaseDto>, IEnumerable<InvoiceItemDto>> UpdateInvoiceBatchStatus(
int[] invoiceids,
InvoiceStatus status
@ -416,7 +416,7 @@ namespace ASC.CRM.Api
/// <short>Delete invoice</short>
/// <category>Invoices</category>
/// <returns>Invoice</returns>
[Delete(@"invoice/{invoiceid:int}")]
[HttpDelete(@"invoice/{invoiceid:int}")]
public InvoiceBaseDto DeleteInvoice(int invoiceid)
{
if (invoiceid <= 0) throw new ArgumentException();
@ -437,7 +437,7 @@ namespace ASC.CRM.Api
/// <short>Delete invoice group</short>
/// <category>Invoices</category>
/// <returns>Invoice list</returns>
[Delete(@"invoice")]
[HttpDelete(@"invoice")]
public IEnumerable<InvoiceBaseDto> DeleteBatchInvoices(IEnumerable<int> invoiceids)
{
if (invoiceids == null || !invoiceids.Any()) throw new ArgumentException();
@ -501,7 +501,7 @@ namespace ASC.CRM.Api
///
/// ]]>
/// </example>
[Create(@"invoice")]
[HttpPost(@"invoice")]
public InvoiceDto CreateInvoice(
CreateOrUpdateInvoiceRequestDto inDto
)
@ -672,7 +672,7 @@ namespace ASC.CRM.Api
///
/// ]]>
/// </example>
[Update(@"invoice/{id:int}")]
[HttpPut(@"invoice/{id:int}")]
public InvoiceDto UpdateInvoice(
int id,
CreateOrUpdateInvoiceRequestDto inDto)
@ -754,7 +754,7 @@ namespace ASC.CRM.Api
/// <short>Get invoice pdf file</short>
/// <category>Invoices</category>
/// <returns>File</returns>
[Read(@"invoice/{invoiceid:int}/pdf")]
[HttpGet(@"invoice/{invoiceid:int}/pdf")]
public Task<FileDto<int>> GetInvoicePdfExistOrCreateAsync(int invoiceid)
{
if (invoiceid <= 0) throw new ArgumentException();
@ -807,7 +807,7 @@ namespace ASC.CRM.Api
/// <short>Check invoice pdf file</short>
/// <category>Invoices</category>
/// <returns>ConverterData</returns>
[Create(@"invoice/converter/data")]
[HttpPost(@"invoice/converter/data")]
public Task<ConverterData> CreateInvoiceConverterDataAsync(
[FromBody] CreateInvoiceConverterDataRequestDto inDto)
{
@ -877,7 +877,7 @@ namespace ASC.CRM.Api
/// <short>Check invoice existence by number</short>
/// <category>Invoices</category>
/// <returns>IsExist</returns>
[Read(@"invoice/bynumber/exist")]
[HttpGet(@"invoice/bynumber/exist")]
public Boolean GetInvoiceByNumberExistence(string number)
{
if (String.IsNullOrEmpty(number)) throw new ArgumentException();
@ -893,7 +893,7 @@ namespace ASC.CRM.Api
/// <short>Get invoice by number</short>
/// <category>Invoices</category>
/// <returns>Invoice</returns>
[Read(@"invoice/bynumber")]
[HttpGet(@"invoice/bynumber")]
public InvoiceDto GetInvoiceByNumber(string number)
{
if (String.IsNullOrEmpty(number)) throw new ArgumentException();
@ -917,7 +917,7 @@ namespace ASC.CRM.Api
/// <short>Get invoice item list</short>
/// <category>Invoices</category>
/// <returns>InvoiceItem list</returns>
[Read(@"invoiceitem/filter")]
[HttpGet(@"invoiceitem/filter")]
public IEnumerable<InvoiceItemDto> GetInvoiceItems(int status, bool? inventoryStock)
{
IEnumerable<InvoiceItemDto> result;
@ -998,7 +998,7 @@ namespace ASC.CRM.Api
/// <short>Get invoice item by ID</short>
/// <category>Invoices</category>
/// <returns>Invoice Item</returns>
[Read(@"invoiceitem/{invoiceitemid:int}")]
[HttpGet(@"invoiceitem/{invoiceitemid:int}")]
public InvoiceItemDto GetInvoiceItemByID(int invoiceitemid)
{
if (invoiceitemid <= 0) throw new ArgumentException();
@ -1024,7 +1024,7 @@ namespace ASC.CRM.Api
/// <short>Create invoice line</short>
/// <category>Invoices</category>
/// <returns>InvoiceLine</returns>
[Create(@"invoiceline")]
[HttpPost(@"invoiceline")]
public InvoiceLineDto CreateInvoiceLine(
CreateOrUpdateInvoiceLineRequestDto inDto
)
@ -1087,7 +1087,7 @@ namespace ASC.CRM.Api
/// <short>Update invoice line</short>
/// <category>Invoices</category>
/// <returns>InvoiceLine</returns>
[Update(@"invoiceline/{id:int}")]
[HttpPut(@"invoiceline/{id:int}")]
public InvoiceLineDto UpdateInvoiceLine(int id, CreateOrUpdateInvoiceLineRequestDto inDto)
{
int invoiceId = inDto.InvoiceId;
@ -1140,7 +1140,7 @@ namespace ASC.CRM.Api
/// <short>Delete invoice line</short>
/// <category>Invoices</category>
/// <returns>Line ID</returns>
[Delete(@"invoiceline/{id:int}")]
[HttpDelete(@"invoiceline/{id:int}")]
public int DeleteInvoiceLine(int id)
{
var invoiceLine = _daoFactory.GetInvoiceLineDao().GetByID(id);
@ -1178,7 +1178,7 @@ namespace ASC.CRM.Api
/// <short>Create invoice item</short>
/// <category>Invoices</category>
/// <returns>InvoiceItem</returns>
[Create(@"invoiceitem")]
[HttpPost(@"invoiceitem")]
public InvoiceItemDto CreateInvoiceItem(
CreateOrUpdateInvoiceItemRequestDto inDto
)
@ -1235,7 +1235,7 @@ namespace ASC.CRM.Api
/// <short>Update invoice item</short>
/// <category>Invoices</category>
/// <returns>InvoiceItem</returns>
[Update(@"invoiceitem/{id:int}")]
[HttpPut(@"invoiceitem/{id:int}")]
public InvoiceItemDto UpdateInvoiceItem(int id,
CreateOrUpdateInvoiceItemRequestDto inDto
)
@ -1285,7 +1285,7 @@ namespace ASC.CRM.Api
/// <short>Delete invoice item</short>
/// <category>Invoices</category>
/// <returns>InvoiceItem</returns>
[Delete(@"invoiceitem/{id:int}")]
[HttpDelete(@"invoiceitem/{id:int}")]
public InvoiceItemDto DeleteInvoiceItem(int id)
{
if (!_crmSecurity.IsAdmin)
@ -1311,7 +1311,7 @@ namespace ASC.CRM.Api
/// <short>Delete Invoice item group</short>
/// <category>Invoices</category>
/// <returns>InvoiceItem list</returns>
[Delete(@"invoiceitem")]
[HttpDelete(@"invoiceitem")]
public IEnumerable<InvoiceItemDto> DeleteBatchItems(IEnumerable<int> ids)
{
if (!_crmSecurity.IsAdmin)
@ -1335,7 +1335,7 @@ namespace ASC.CRM.Api
/// <short>Get invoice taxes list</short>
/// <category>Invoices</category>
/// <returns>InvoiceTax list</returns>
[Read(@"invoice/tax")]
[HttpGet(@"invoice/tax")]
public IEnumerable<InvoiceTaxDto> GetInvoiceTaxes()
{
var responceFromDao = _daoFactory.GetInvoiceTaxDao().GetAll();
@ -1352,7 +1352,7 @@ namespace ASC.CRM.Api
/// <short>Create invoice tax</short>
/// <category>Invoices</category>
/// <returns>InvoiceTax</returns>
[Create(@"invoice/tax")]
[HttpPost(@"invoice/tax")]
public InvoiceTaxDto CreateInvoiceTax(
[FromBody] CreateOrUpdateInvoiceTaxRequestDto inDto)
{
@ -1391,7 +1391,7 @@ namespace ASC.CRM.Api
/// <short>Update invoice tax</short>
/// <category>Invoices</category>
/// <returns>InvoiceTax</returns>
[Update(@"invoice/tax/{id:int}")]
[HttpPut(@"invoice/tax/{id:int}")]
public InvoiceTaxDto UpdateInvoiceTax(
int id,
CreateOrUpdateInvoiceTaxRequestDto inDto)
@ -1430,7 +1430,7 @@ namespace ASC.CRM.Api
/// <short>Delete invoice tax</short>
/// <category>Invoices</category>
/// <returns>InvoiceTax</returns>
[Delete(@"invoice/tax/{id:int}")]
[HttpDelete(@"invoice/tax/{id:int}")]
public InvoiceTaxDto DeleteInvoiceTax(int id)
{
if (!_crmSecurity.IsAdmin)
@ -1454,7 +1454,7 @@ namespace ASC.CRM.Api
/// <short>Get default invoice settings</short>
/// <category>Invoices</category>
/// <returns>InvoiceSetting</returns>
[Read(@"invoice/settings")]
[HttpGet(@"invoice/settings")]
public InvoiceSetting GetSettings()
{
return _daoFactory.GetInvoiceDao().GetSettings();
@ -1469,7 +1469,7 @@ namespace ASC.CRM.Api
/// <short>Save default invoice number</short>
/// <category>Invoices</category>
/// <returns>InvoiceSetting</returns>
[Update(@"invoice/settings/name")]
[HttpPut(@"invoice/settings/name")]
public InvoiceSetting SaveNumberSettings(
SaveNumberSettingsRequestDto inDto
)
@ -1505,7 +1505,7 @@ namespace ASC.CRM.Api
/// <short>Save default invoice terms</short>
/// <category>Invoices</category>
/// <returns>InvoiceSetting</returns>
[Update(@"invoice/settings/terms")]
[HttpPut(@"invoice/settings/terms")]
public InvoiceSetting SaveTermsSettings(string terms)
{
if (!_crmSecurity.IsAdmin) throw _crmSecurity.CreateSecurityException();
@ -1521,7 +1521,7 @@ namespace ASC.CRM.Api
}
/// <visible>false</visible>
[Update(@"invoice/{invoiceid:int}/creationdate")]
[HttpPut(@"invoice/{invoiceid:int}/creationdate")]
public void SetInvoiceCreationDate(int invoiceid, ApiDateTime creationDate)
{
var dao = _daoFactory.GetInvoiceDao();
@ -1534,7 +1534,7 @@ namespace ASC.CRM.Api
}
/// <visible>false</visible>
[Update(@"invoice/{invoiceid:int}/lastmodifeddate")]
[HttpPut(@"invoice/{invoiceid:int}/lastmodifeddate")]
public void SetInvoiceLastModifedDate(int invoiceid, ApiDateTime lastModifedDate)
{
var dao = _daoFactory.GetInvoiceDao();

View File

@ -77,7 +77,7 @@ namespace ASC.CRM.Api
/// <returns>
/// Opportunity stage
/// </returns>
[Create(@"opportunity/stage")]
[HttpPost(@"opportunity/stage")]
public DealMilestoneDto CreateDealMilestone([FromBody] CreateOrUpdateDealMilestoneRequestDto inDto)
{
var title = inDto.Title;
@ -123,7 +123,7 @@ namespace ASC.CRM.Api
/// <returns>
/// Opportunity stage
/// </returns>
[Update(@"opportunity/stage/{id:int}")]
[HttpPut(@"opportunity/stage/{id:int}")]
public DealMilestoneDto UpdateDealMilestone([FromRoute] int id, [FromBody] CreateOrUpdateDealMilestoneRequestDto inDto)
{
var title = inDto.Title;
@ -169,7 +169,7 @@ namespace ASC.CRM.Api
/// <returns>
/// Opportunity stage
/// </returns>
[Update(@"opportunity/stage/{id:int}/color")]
[HttpPut(@"opportunity/stage/{id:int}/color")]
public DealMilestoneDto UpdateDealMilestoneColor([FromRoute] int id, [FromBody] string color)
{
if (!(_crmSecurity.IsAdmin)) throw _crmSecurity.CreateSecurityException();
@ -201,7 +201,7 @@ namespace ASC.CRM.Api
/// <exception cref="SecurityException"></exception>
/// <exception cref="ArgumentException"></exception>
/// <exception cref="ItemNotFoundException"></exception>
[Update(@"opportunity/stage/reorder")]
[HttpPut(@"opportunity/stage/reorder")]
public IEnumerable<DealMilestoneDto> UpdateDealMilestonesOrder(IEnumerable<int> ids)
{
if (!(_crmSecurity.IsAdmin)) throw _crmSecurity.CreateSecurityException();
@ -229,7 +229,7 @@ namespace ASC.CRM.Api
/// <returns>
/// Opportunity stage
/// </returns>
[Delete(@"opportunity/stage/{id:int}")]
[HttpDelete(@"opportunity/stage/{id:int}")]
public DealMilestoneDto DeleteDealMilestone(int id)
{
if (!(_crmSecurity.IsAdmin)) throw _crmSecurity.CreateSecurityException();
@ -258,7 +258,7 @@ namespace ASC.CRM.Api
/// <category>History</category>
///<returns>History category</returns>
///<exception cref="ArgumentException"></exception>
[Create(@"history/category")]
[HttpPost(@"history/category")]
public HistoryCategoryDto CreateHistoryCategory([FromBody] CreateListItemCategoryRequestDto inDto)
{
@ -298,7 +298,7 @@ namespace ASC.CRM.Api
///<returns>History category</returns>
///<exception cref="ArgumentException"></exception>
///<exception cref="ItemNotFoundException"></exception>
[Update(@"history/category/{id:int}")]
[HttpPut(@"history/category/{id:int}")]
public HistoryCategoryDto UpdateHistoryCategory(int id, string title, string description, string imageName, int sortOrder)
{
if (!(_crmSecurity.IsAdmin)) throw _crmSecurity.CreateSecurityException();
@ -335,7 +335,7 @@ namespace ASC.CRM.Api
/// <returns>
/// History category
/// </returns>
[Update(@"history/category/{id:int}/icon")]
[HttpPut(@"history/category/{id:int}/icon")]
public HistoryCategoryDto UpdateHistoryCategoryIcon(int id, string imageName)
{
if (!(_crmSecurity.IsAdmin)) throw _crmSecurity.CreateSecurityException();
@ -367,7 +367,7 @@ namespace ASC.CRM.Api
/// <exception cref="SecurityException"></exception>
/// <exception cref="ArgumentException"></exception>
/// <exception cref="ItemNotFoundException"></exception>
[Update(@"history/category/reorder")]
[HttpPut(@"history/category/reorder")]
public IEnumerable<HistoryCategoryDto> UpdateHistoryCategoriesOrder(IEnumerable<string> titles)
{
if (!(_crmSecurity.IsAdmin)) throw _crmSecurity.CreateSecurityException();
@ -392,7 +392,7 @@ namespace ASC.CRM.Api
/// <exception cref="ItemNotFoundException"></exception>
/// <exception cref="SecurityException"></exception>
/// <returns>History category</returns>
[Delete(@"history/category/{id:int}")]
[HttpDelete(@"history/category/{id:int}")]
public HistoryCategoryDto DeleteHistoryCategory(int id)
{
if (!(_crmSecurity.IsAdmin)) throw _crmSecurity.CreateSecurityException();
@ -431,7 +431,7 @@ namespace ASC.CRM.Api
///<returns>
/// Task category
///</returns>
[Create(@"task/category")]
[HttpPost(@"task/category")]
public TaskCategoryDto CreateTaskCategory(
[FromBody] CreateListItemCategoryRequestDto inDto)
{
@ -468,7 +468,7 @@ namespace ASC.CRM.Api
///<returns>
/// Task category
///</returns>
[Update(@"task/category/{id:int}")]
[HttpPut(@"task/category/{id:int}")]
public TaskCategoryDto UpdateTaskCategory(int id, string title, string description, string imageName, int sortOrder)
{
if (!(_crmSecurity.IsAdmin)) throw _crmSecurity.CreateSecurityException();
@ -505,7 +505,7 @@ namespace ASC.CRM.Api
/// <returns>
/// Task category
/// </returns>
[Update(@"task/category/{id:int}/icon")]
[HttpPut(@"task/category/{id:int}/icon")]
public TaskCategoryDto UpdateTaskCategoryIcon(int id, string imageName)
{
if (!(_crmSecurity.IsAdmin)) throw _crmSecurity.CreateSecurityException();
@ -537,7 +537,7 @@ namespace ASC.CRM.Api
/// <exception cref="SecurityException"></exception>
/// <exception cref="ArgumentException"></exception>
/// <exception cref="ItemNotFoundException"></exception>
[Update(@"task/category/reorder")]
[HttpPut(@"task/category/reorder")]
public IEnumerable<TaskCategoryDto> UpdateTaskCategoriesOrder([FromBody] IEnumerable<string> titles)
{
if (!(_crmSecurity.IsAdmin)) throw _crmSecurity.CreateSecurityException();
@ -563,7 +563,7 @@ namespace ASC.CRM.Api
///<exception cref="ArgumentException"></exception>
///<exception cref="ItemNotFoundException"></exception>
///<exception cref="SecurityException"></exception>
[Delete(@"task/category/{categoryid:int}")]
[HttpDelete(@"task/category/{categoryid:int}")]
public TaskCategoryDto DeleteTaskCategory([FromRoute] int categoryid, [FromBody] int newcategoryid)
{
if (!(_crmSecurity.IsAdmin)) throw _crmSecurity.CreateSecurityException();
@ -599,7 +599,7 @@ namespace ASC.CRM.Api
/// <returns>
/// Contact status
/// </returns>
[Create(@"contact/status")]
[HttpPost(@"contact/status")]
public ContactStatusDto CreateContactStatus(
[FromBody] CreateOrUpdateContactStatusRequestDto inDto)
{
@ -642,7 +642,7 @@ namespace ASC.CRM.Api
/// <returns>
/// Contact status
/// </returns>
[Update(@"contact/status/{id:int}")]
[HttpPut(@"contact/status/{id:int}")]
public ContactStatusDto UpdateContactStatus(
[FromRoute] int id,
[FromBody] CreateOrUpdateContactStatusRequestDto inDto)
@ -687,7 +687,7 @@ namespace ASC.CRM.Api
/// <returns>
/// Contact status
/// </returns>
[Update(@"contact/status/{id:int}/color")]
[HttpPut(@"contact/status/{id:int}/color")]
public ContactStatusDto UpdateContactStatusColor([FromRoute] int id, [FromBody] string color)
{
if (!(_crmSecurity.IsAdmin)) throw _crmSecurity.CreateSecurityException();
@ -719,7 +719,7 @@ namespace ASC.CRM.Api
/// <exception cref="SecurityException"></exception>
/// <exception cref="ArgumentException"></exception>
/// <exception cref="ItemNotFoundException"></exception>
[Update(@"contact/status/reorder")]
[HttpPut(@"contact/status/reorder")]
public IEnumerable<ContactStatusDto> UpdateContactStatusesOrder([FromBody] IEnumerable<string> titles)
{
if (!(_crmSecurity.IsAdmin)) throw _crmSecurity.CreateSecurityException();
@ -746,7 +746,7 @@ namespace ASC.CRM.Api
/// <returns>
/// Contact status
/// </returns>
[Delete(@"contact/status/{contactStatusid:int}")]
[HttpDelete(@"contact/status/{contactStatusid:int}")]
public ContactStatusDto DeleteContactStatus(int contactStatusid)
{
if (!(_crmSecurity.IsAdmin)) throw _crmSecurity.CreateSecurityException();
@ -779,7 +779,7 @@ namespace ASC.CRM.Api
/// <category>Contacts</category>
///<exception cref="ArgumentException"></exception>
///<exception cref="ItemNotFoundException"></exception>
[Read(@"contact/status/{contactStatusid:int}")]
[HttpGet(@"contact/status/{contactStatusid:int}")]
public ContactStatusDto GetContactStatusByID(int contactStatusid)
{
if (contactStatusid <= 0) throw new ArgumentException();
@ -802,7 +802,7 @@ namespace ASC.CRM.Api
/// <returns>
/// Contact type
/// </returns>
[Create(@"contact/type")]
[HttpPost(@"contact/type")]
public ContactTypeDto CreateContactType([FromBody] CreateOrUpdateContactTypeRequestDto inDto)
{
var title = inDto.Title;
@ -838,7 +838,7 @@ namespace ASC.CRM.Api
/// <returns>
/// Contact type
/// </returns>
[Update(@"contact/type/{id:int}")]
[HttpPut(@"contact/type/{id:int}")]
public ContactTypeDto UpdateContactType(int id, [FromBody] CreateOrUpdateContactTypeRequestDto inDto)
{
var title = inDto.Title;
@ -878,7 +878,7 @@ namespace ASC.CRM.Api
/// <exception cref="SecurityException"></exception>
/// <exception cref="ArgumentException"></exception>
/// <exception cref="ItemNotFoundException"></exception>
[Update(@"contact/type/reorder")]
[HttpPut(@"contact/type/reorder")]
public IEnumerable<ContactTypeDto> UpdateContactTypesOrder([FromBody] IEnumerable<string> titles)
{
if (!(_crmSecurity.IsAdmin)) throw _crmSecurity.CreateSecurityException();
@ -905,7 +905,7 @@ namespace ASC.CRM.Api
/// <returns>
/// Contact type
/// </returns>
[Delete(@"contact/type/{contactTypeid:int}")]
[HttpDelete(@"contact/type/{contactTypeid:int}")]
public ContactTypeDto DeleteContactType(int contactTypeid)
{
if (!(_crmSecurity.IsAdmin)) throw _crmSecurity.CreateSecurityException();
@ -938,7 +938,7 @@ namespace ASC.CRM.Api
/// <category>Contacts</category>
///<exception cref="ArgumentException"></exception>
///<exception cref="ItemNotFoundException"></exception>
[Read(@"contact/type/{contactTypeid:int}")]
[HttpGet(@"contact/type/{contactTypeid:int}")]
public ContactTypeDto GetContactTypeByID(int contactTypeid)
{
if (contactTypeid <= 0) throw new ArgumentException();
@ -958,7 +958,7 @@ namespace ASC.CRM.Api
/// <category>Opportunities</category>
///<exception cref="ItemNotFoundException"></exception>
///<exception cref="ArgumentException"></exception>
[Read(@"opportunity/stage/{stageid:int}")]
[HttpGet(@"opportunity/stage/{stageid:int}")]
public DealMilestoneDto GetDealMilestoneByID(int stageid)
{
if (stageid <= 0) throw new ArgumentException();
@ -978,7 +978,7 @@ namespace ASC.CRM.Api
/// <category>Tasks</category>
///<exception cref="ItemNotFoundException"></exception>
///<exception cref="ArgumentException"></exception>
[Read(@"task/category/{categoryid:int}")]
[HttpGet(@"task/category/{categoryid:int}")]
public TaskCategoryDto GetTaskCategoryByID(int categoryid)
{
if (categoryid <= 0) throw new ArgumentException();
@ -997,7 +997,7 @@ namespace ASC.CRM.Api
/// <returns>
/// List of all history categories
/// </returns>
[Read(@"history/category")]
[HttpGet(@"history/category")]
public IEnumerable<HistoryCategoryDto> GetHistoryCategoryDto()
{
var result = _daoFactory.GetListItemDao().GetItems(ListType.HistoryCategory).ConvertAll(item => new HistoryCategoryDto(item));
@ -1020,7 +1020,7 @@ namespace ASC.CRM.Api
/// <returns>
/// List of all task categories
/// </returns>
[Read(@"task/category")]
[HttpGet(@"task/category")]
public IEnumerable<TaskCategoryDto> GetTaskCategories()
{
var result = _daoFactory.GetListItemDao().GetItems(ListType.TaskCategory).ConvertAll(item => (TaskCategoryDto)_mapper.Map<TaskCategoryDto>(item));
@ -1043,7 +1043,7 @@ namespace ASC.CRM.Api
/// <returns>
/// List of all contact statuses
/// </returns>
[Read(@"contact/status")]
[HttpGet(@"contact/status")]
public IEnumerable<ContactStatusDto> GetContactStatuses()
{
var result = _daoFactory.GetListItemDao().GetItems(ListType.ContactStatus).ConvertAll(item => new ContactStatusDto(item));
@ -1066,7 +1066,7 @@ namespace ASC.CRM.Api
/// <returns>
/// List of all contact types
/// </returns>
[Read(@"contact/type")]
[HttpGet(@"contact/type")]
public IEnumerable<ContactTypeDto> GetContactTypes()
{
var result = _daoFactory.GetListItemDao().GetItems(ListType.ContactType).ConvertAll(item => new ContactTypeDto(item));
@ -1090,7 +1090,7 @@ namespace ASC.CRM.Api
/// <returns>
/// List of all opportunity stages
/// </returns>
[Read(@"opportunity/stage")]
[HttpGet(@"opportunity/stage")]
public IEnumerable<DealMilestoneDto> GetDealMilestones()
{
var result = _daoFactory.GetDealMilestoneDao().GetAll().ConvertAll(item => new DealMilestoneDto(item));

View File

@ -115,7 +115,7 @@ namespace ASC.CRM.Api
/// <returns>
/// Event list
/// </returns>
[Read(@"history/filter")]
[HttpGet(@"history/filter")]
public Task<IEnumerable<RelationshipEventDto>> GetHistoryAsync(
string entityType,
int entityId,
@ -230,7 +230,7 @@ namespace ASC.CRM.Api
/// <returns>
/// Event
/// </returns>
[Delete(@"history/{id:int}")]
[HttpDelete(@"history/{id:int}")]
public Task<RelationshipEventDto> DeleteHistoryAsync(int id)
{
if (id <= 0) throw new ArgumentException();
@ -266,7 +266,7 @@ namespace ASC.CRM.Api
/// <returns>
/// File info
/// </returns>
[Create(@"{entityType:regex(contact|opportunity|case)}/{entityid:int}/files/text")]
[HttpPost(@"{entityType:regex(contact|opportunity|case)}/{entityid:int}/files/text")]
public Task<FileDto<int>> CreateTextFileAsync(
[FromRoute] string entityType,
[FromRoute] int entityid,
@ -336,7 +336,7 @@ namespace ASC.CRM.Api
/// <returns>
/// File info
/// </returns>
[Create(@"{entityType:regex(contact|opportunity|case)}/{entityid:int}/files/upload")]
[HttpPost(@"{entityType:regex(contact|opportunity|case)}/{entityid:int}/files/upload")]
public async Task<FileDto<int>> UploadFileInCRMAsync([FromBody] UploadFileInCRMRequestDto inDto)
{
string entityType = inDto.EntityType;
@ -403,7 +403,7 @@ namespace ASC.CRM.Api
/// <returns>
/// Created event
/// </returns>
[Create(@"history")]
[HttpPost(@"history")]
public RelationshipEventDto AddHistoryTo([FromBody] AddHistoryToRequestDto inDto)
{
string entityType = inDto.EntityType;
@ -534,7 +534,7 @@ namespace ASC.CRM.Api
/// <param name="fileids">List of IDs of the files</param>
/// <category>Files</category>
/// <returns>Entity with the file attached</returns>
[Create(@"{entityType:regex(contact|opportunity|case)}/{entityid:int}/files")]
[HttpPost(@"{entityType:regex(contact|opportunity|case)}/{entityid:int}/files")]
public Task<RelationshipEventDto> AttachFilesAsync(
[FromRoute] string entityType,
[FromRoute] int entityid,
@ -591,7 +591,7 @@ namespace ASC.CRM.Api
/// <returns>
/// Root folder ID
/// </returns>
[Read(@"files/root")]
[HttpGet(@"files/root")]
public Task<int> GetRootFolderIDAsync()
{
return _daoFactory.GetFileDao().GetRootAsync();
@ -607,7 +607,7 @@ namespace ASC.CRM.Api
/// <returns>
/// File list
/// </returns>
[Read(@"{entityType:regex(contact|opportunity|case)}/{entityid:int}/files")]
[HttpGet(@"{entityType:regex(contact|opportunity|case)}/{entityid:int}/files")]
public IAsyncEnumerable<FileDto<int>> GetFiles(string entityType, int entityid)
{
if (entityid <= 0) throw new ArgumentException();
@ -637,7 +637,7 @@ namespace ASC.CRM.Api
/// <returns>
/// File Info
/// </returns>
[Delete(@"files/{fileid:int}")]
[HttpDelete(@"files/{fileid:int}")]
public Task<FileDto<int>> DeleteCRMFileAsync(int fileid)
{
if (fileid < 0) throw new ArgumentException();

View File

@ -78,7 +78,7 @@ namespace ASC.CRM.Api
/// <category>Reports</category>
/// <returns>Report files</returns>
/// <exception cref="SecurityException">if user can't create reports</exception>
[Read(@"report/files")]
[HttpGet(@"report/files")]
public Task<IEnumerable<FileDto<int>>> GetFilesAsync()
{
if (!_global.CanCreateReports)
@ -123,7 +123,7 @@ namespace ASC.CRM.Api
/// <exception cref="SecurityException">if user can't create reports</exception>
/// <exception cref="ArgumentException">if fileid les than 0</exception>
/// <exception cref="ItemNotFoundException">if file not found</exception>
[Delete(@"report/file/{fileid:int}")]
[HttpDelete(@"report/file/{fileid:int}")]
public void DeleteFile(int fileid)
{
if (!_global.CanCreateReports)
@ -138,7 +138,7 @@ namespace ASC.CRM.Api
_daoFactory.GetReportDao().DeleteFile(fileid);
}
[Delete(@"report/fileAsync/{fileid:int}")]
[HttpDelete(@"report/fileAsync/{fileid:int}")]
public Task DeleteFileAsync(int fileid)
{
if (!_global.CanCreateReports)
@ -163,7 +163,7 @@ namespace ASC.CRM.Api
/// <category>Reports</category>
/// <returns>Report state</returns>
/// <exception cref="SecurityException">if user can't create reports</exception>
[Read(@"report/status")]
[HttpGet(@"report/status")]
public ReportState GetStatus()
{
if (!_global.CanCreateReports)
@ -177,7 +177,7 @@ namespace ASC.CRM.Api
/// <short>Terminate report generation</short>
/// <category>Reports</category>
/// <exception cref="SecurityException">if user can't create reports</exception>
[Read(@"report/terminate")]
[HttpGet(@"report/terminate")]
public void Terminate()
{
if (!_global.CanCreateReports)
@ -194,7 +194,7 @@ namespace ASC.CRM.Api
/// <category>Reports</category>
/// <returns>Object</returns>
/// <exception cref="SecurityException">if user can't create reports</exception>
[Create(@"report/check")]
[HttpPost(@"report/check")]
public object CheckReportData([FromBody] ReportDataRequestDto inDto)
{
var type = inDto.Type;
@ -219,7 +219,7 @@ namespace ASC.CRM.Api
/// <category>Reports</category>
/// <returns>Report state</returns>
/// <exception cref="SecurityException">if user can't create reports</exception>
[Create(@"report/generate")]
[HttpPost(@"report/generate")]
public ReportState GenerateReport([FromBody] ReportDataRequestDto inDto)
{
var type = inDto.Type;

View File

@ -79,7 +79,7 @@ namespace ASC.CRM.Api
/// Tag
/// </returns>
///<exception cref="ArgumentException"></exception>
[Read(@"{entityType:regex(contact|opportunity|case)}/tag/{entityid:int}")]
[HttpGet(@"{entityType:regex(contact|opportunity|case)}/tag/{entityid:int}")]
public IEnumerable<string> GetEntityTags(string entityType, int entityid)
{
if (string.IsNullOrEmpty(entityType) || entityid <= 0) throw new ArgumentException();
@ -120,7 +120,7 @@ namespace ASC.CRM.Api
/// List of contact tags
/// </returns>
///<exception cref="ArgumentException"></exception>
[Read(@"contact/{contactid:int}/tag")]
[HttpGet(@"contact/{contactid:int}/tag")]
public IEnumerable<string> GetContactTags(int contactid)
{
if (contactid <= 0) throw new ArgumentException();
@ -141,7 +141,7 @@ namespace ASC.CRM.Api
/// Tag
/// </returns>
///<exception cref="ArgumentException"></exception>
[Create(@"{entityType:regex(contact|opportunity|case)}/tag")]
[HttpPost(@"{entityType:regex(contact|opportunity|case)}/tag")]
public string CreateTag([FromRoute] string entityType, [FromBody] string tagName)
{
if (string.IsNullOrEmpty(tagName)) throw new ArgumentException();
@ -166,7 +166,7 @@ namespace ASC.CRM.Api
/// Tag
/// </returns>
///<exception cref="ArgumentException"></exception>
[Read(@"{entityType:regex(contact|opportunity|case)}/tag")]
[HttpGet(@"{entityType:regex(contact|opportunity|case)}/tag")]
public IEnumerable<TagDto> GetAllTags(string entityType)
{
if (string.IsNullOrEmpty(entityType)) throw new ArgumentException();
@ -196,7 +196,7 @@ namespace ASC.CRM.Api
/// <returns>
/// Tag
/// </returns>
[Create(@"{entityType:regex(contact|opportunity|case)}/taglist")]
[HttpPost(@"{entityType:regex(contact|opportunity|case)}/taglist")]
public string AddTagToBatch([FromRoute] string entityType,
[FromBody] AddTagToBatchRequestDto inDto)
{
@ -229,7 +229,7 @@ namespace ASC.CRM.Api
/// <returns>
/// Tag
/// </returns>
[Create(@"contact/filter/taglist")]
[HttpPost(@"contact/filter/taglist")]
public string AddTagToBatchContacts(
[FromBody] AddTagToBatchContactsRequestDto inDto)
{
@ -280,7 +280,7 @@ namespace ASC.CRM.Api
/// <returns>
/// Tag
/// </returns>
[Create(@"opportunity/filter/taglist")]
[HttpPost(@"opportunity/filter/taglist")]
public string AddTagToBatchDeals(
[FromBody] AddTagToBatchDealsRequestDto inDto)
{
@ -326,7 +326,7 @@ namespace ASC.CRM.Api
/// <returns>
/// Tag
/// </returns>
[Create(@"case/filter/taglist")]
[HttpPost(@"case/filter/taglist")]
public string AddTagToBatchCases([FromBody] AddTagToBatchCasesRequestDto inDto)
{
var contactid = inDto.ContactId;
@ -354,7 +354,7 @@ namespace ASC.CRM.Api
/// <category>Tags</category>
/// <param name="entityType" remark="Allowed values: contact,opportunity,case">Entity type</param>
/// <returns>Tags</returns>
[Delete(@"{entityType:regex(contact|opportunity|case)}/tag/unused")]
[HttpDelete(@"{entityType:regex(contact|opportunity|case)}/tag/unused")]
public IEnumerable<string> DeleteUnusedTag(string entityType)
{
if (!_crmSecurity.IsAdmin) throw _crmSecurity.CreateSecurityException();
@ -380,7 +380,7 @@ namespace ASC.CRM.Api
/// <returns>
/// Tag
/// </returns>
[Create(@"{entityType:regex(contact|opportunity|case)}/{entityid:int}/tag")]
[HttpPost(@"{entityType:regex(contact|opportunity|case)}/{entityid:int}/tag")]
public string AddTagTo([FromRoute] string entityType, [FromRoute] int entityid, [FromBody] string tagName)
{
if (entityid <= 0 || string.IsNullOrEmpty(tagName)) throw new ArgumentException();
@ -413,7 +413,7 @@ namespace ASC.CRM.Api
/// <returns>
/// Tag
/// </returns>
[Create(@"{entityType:regex(company|person)}/{entityid:int}/tag/group")]
[HttpPost(@"{entityType:regex(company|person)}/{entityid:int}/tag/group")]
public string AddContactTagToGroup([FromRoute] string entityType, [FromRoute] int entityid, [FromBody] string tagName)
{
if (entityid <= 0 || string.IsNullOrEmpty(tagName)) throw new ArgumentException();
@ -501,7 +501,7 @@ namespace ASC.CRM.Api
/// <returns>
/// Tag
/// </returns>
[Delete(@"{entityType:regex(contact|opportunity|case)}/tag")]
[HttpDelete(@"{entityType:regex(contact|opportunity|case)}/tag")]
public string DeleteTag(string entityType, string tagName)
{
if (string.IsNullOrEmpty(entityType) || string.IsNullOrEmpty(tagName)) throw new ArgumentException();
@ -531,7 +531,7 @@ namespace ASC.CRM.Api
/// <returns>
/// Tag
/// </returns>
[Delete(@"{entityType:regex(contact|opportunity|case)}/{entityid:int}/tag")]
[HttpDelete(@"{entityType:regex(contact|opportunity|case)}/{entityid:int}/tag")]
public string DeleteTagFrom(string entityType, int entityid, string tagName)
{
if (string.IsNullOrEmpty(entityType) || entityid <= 0 || string.IsNullOrEmpty(tagName)) throw new ArgumentException();
@ -567,7 +567,7 @@ namespace ASC.CRM.Api
/// <returns>
/// Tag
/// </returns>
[Delete(@"{entityType:regex(company|person)}/{entityid:int}/tag/group")]
[HttpDelete(@"{entityType:regex(company|person)}/{entityid:int}/tag/group")]
public string DeleteContactTagFromGroup(string entityType, int entityid, string tagName)
{
if (entityid <= 0 || string.IsNullOrEmpty(tagName)) throw new ArgumentException();

View File

@ -72,7 +72,7 @@ namespace ASC.CRM.Api
/// </returns>
/// <exception cref="ArgumentException"></exception>
/// <visible>false</visible>
[Create(@"{entityType:regex(contact|person|company|opportunity|case)}/tasktemplatecontainer")]
[HttpPost(@"{entityType:regex(contact|person|company|opportunity|case)}/tasktemplatecontainer")]
public TaskTemplateContainerDto CreateTaskTemplateContainer([FromRoute] string entityType, [FromBody] string title)
{
if (string.IsNullOrEmpty(title)) throw new ArgumentException();
@ -97,7 +97,7 @@ namespace ASC.CRM.Api
/// Task template container list
/// </returns>
/// <visible>false</visible>
[Read(@"{entityType:regex(contact|person|company|opportunity|case)}/tasktemplatecontainer")]
[HttpGet(@"{entityType:regex(contact|person|company|opportunity|case)}/tasktemplatecontainer")]
public IEnumerable<TaskTemplateContainerDto> GetTaskTemplateContainers(string entityType)
{
return ToTaskListTemplateContainerDto(_daoFactory.GetTaskTemplateContainerDao().GetItems(ToEntityType(entityType)));
@ -115,7 +115,7 @@ namespace ASC.CRM.Api
/// <exception cref="ArgumentException"></exception>
/// <exception cref="ItemNotFoundException"></exception>
/// <visible>false</visible>
[Delete(@"tasktemplatecontainer/{containerid:int}")]
[HttpDelete(@"tasktemplatecontainer/{containerid:int}")]
public TaskTemplateContainerDto DeleteTaskTemplateContainer(int containerid)
{
if (containerid <= 0) throw new ArgumentException();
@ -141,7 +141,7 @@ namespace ASC.CRM.Api
/// <exception cref="ArgumentException"></exception>
/// <exception cref="ItemNotFoundException"></exception>
/// <visible>false</visible>
[Update(@"tasktemplatecontainer/{containerid:int}")]
[HttpPut(@"tasktemplatecontainer/{containerid:int}")]
public TaskTemplateContainerDto UpdateTaskTemplateContainer(int containerid, string title)
{
if (containerid <= 0 || string.IsNullOrEmpty(title)) throw new ArgumentException();
@ -168,7 +168,7 @@ namespace ASC.CRM.Api
/// <exception cref="ArgumentException"></exception>
/// <exception cref="ItemNotFoundException"></exception>
/// <visible>false</visible>
[Read(@"tasktemplatecontainer/{containerid:int}")]
[HttpGet(@"tasktemplatecontainer/{containerid:int}")]
public TaskTemplateContainerDto GetTaskTemplateContainerByID(int containerid)
{
if (containerid <= 0) throw new ArgumentException();
@ -191,7 +191,7 @@ namespace ASC.CRM.Api
/// <exception cref="ArgumentException"></exception>
/// <exception cref="ItemNotFoundException"></exception>
/// <visible>false</visible>
[Read(@"tasktemplatecontainer/{containerid:int}/tasktemplate")]
[HttpGet(@"tasktemplatecontainer/{containerid:int}/tasktemplate")]
public IEnumerable<TaskTemplateDto> GetTaskTemplates(int containerid)
{
if (containerid <= 0) throw new ArgumentException();
@ -219,7 +219,7 @@ namespace ASC.CRM.Api
/// <exception cref="ArgumentException"></exception>
/// <exception cref="ItemNotFoundException"></exception>
/// <visible>false</visible>
[Create(@"tasktemplatecontainer/{containerid:int}/tasktemplate")]
[HttpPost(@"tasktemplatecontainer/{containerid:int}/tasktemplate")]
public TaskTemplateDto CreateTaskTemplate(
[FromRoute] int containerid,
[FromBody] CreateOrUpdateTaskTemplateRequestDto inDto)
@ -273,7 +273,7 @@ namespace ASC.CRM.Api
/// <exception cref="ArgumentException"></exception>
/// <exception cref="ItemNotFoundException"></exception>
/// <visible>false</visible>
[Update(@"tasktemplatecontainer/{containerid:int}/tasktemplate/{id:int}")]
[HttpPut(@"tasktemplatecontainer/{containerid:int}/tasktemplate/{id:int}")]
public TaskTemplateDto UpdateTaskTemplate(
[FromRoute] int id,
[FromRoute] int containerid,
@ -324,7 +324,7 @@ namespace ASC.CRM.Api
/// <exception cref="ArgumentException"></exception>
/// <exception cref="ItemNotFoundException"></exception>
/// <visible>false</visible>
[Delete(@"tasktemplatecontainer/tasktemplate/{id:int}")]
[HttpDelete(@"tasktemplatecontainer/tasktemplate/{id:int}")]
public TaskTemplateDto DeleteTaskTemplate(int id)
{
if (id <= 0) throw new ArgumentException();
@ -349,7 +349,7 @@ namespace ASC.CRM.Api
/// <exception cref="ArgumentException"></exception>
/// <exception cref="ItemNotFoundException"></exception>
/// <visible>false</visible>
[Read(@"tasktemplatecontainer/tasktemplate/{id:int}")]
[HttpGet(@"tasktemplatecontainer/tasktemplate/{id:int}")]
public TaskTemplateDto GetTaskTemplateByID(int id)
{
if (id <= 0) throw new ArgumentException();

View File

@ -57,7 +57,7 @@ namespace ASC.CRM.Api
/// <category>Tasks</category>
///<exception cref="ArgumentException"></exception>
///<exception cref="ItemNotFoundException"></exception>
[Read(@"task/{taskid:int}")]
[HttpGet(@"task/{taskid:int}")]
public TaskDto GetTaskByID(int taskid)
{
if (taskid <= 0) throw new ArgumentException();
@ -90,7 +90,7 @@ namespace ASC.CRM.Api
/// <returns>
/// Task list
/// </returns>
[Read(@"task/filter")]
[HttpGet(@"task/filter")]
public IEnumerable<TaskDto> GetAllTasks(
Guid responsibleid,
int categoryid,
@ -206,7 +206,7 @@ namespace ASC.CRM.Api
/// <returns>
/// Task
/// </returns>
[Update(@"task/{taskid:int}/reopen")]
[HttpPut(@"task/{taskid:int}/reopen")]
public TaskDto ReOpenTask(int taskid)
{
if (taskid <= 0) throw new ArgumentException();
@ -230,7 +230,7 @@ namespace ASC.CRM.Api
/// <returns>
/// Task
/// </returns>
[Update(@"task/{taskid:int}/close")]
[HttpPut(@"task/{taskid:int}/close")]
public TaskDto CloseTask(int taskid)
{
if (taskid <= 0) throw new ArgumentException();
@ -255,7 +255,7 @@ namespace ASC.CRM.Api
/// <returns>
/// Deleted task
/// </returns>
[Delete(@"task/{taskid:int}")]
[HttpDelete(@"task/{taskid:int}")]
public TaskDto DeleteTask(int taskid)
{
if (taskid <= 0) throw new ArgumentException();
@ -287,7 +287,7 @@ namespace ASC.CRM.Api
/// <short>Create task</short>
/// <category>Tasks</category>
/// <returns>Task</returns>
[Create(@"task")]
[HttpPost(@"task")]
public TaskDto CreateTask(
[FromBody] CreateOrUpdateTaskRequestDto inDto)
{
@ -379,7 +379,7 @@ namespace ASC.CRM.Api
/// <category>Tasks</category>
/// <returns>Tasks</returns>
/// <visible>false</visible>
[Create(@"contact/task/group")]
[HttpPost(@"contact/task/group")]
public IEnumerable<TaskDto> CreateTaskGroup([FromBody] CreateTaskGroupRequestDto inDto)
{
var entityType = inDto.EntityType;
@ -492,7 +492,7 @@ namespace ASC.CRM.Api
/// <short> Update task</short>
/// <category>Tasks</category>
/// <returns>Task</returns>
[Update(@"task/{taskid:int}")]
[HttpPut(@"task/{taskid:int}")]
public TaskDto UpdateTask(
[FromRoute] int taskid,
[FromBody] CreateOrUpdateTaskRequestDto inDto)
@ -567,7 +567,7 @@ namespace ASC.CRM.Api
}
/// <visible>false</visible>
[Update(@"task/{taskid:int}/creationdate")]
[HttpPut(@"task/{taskid:int}/creationdate")]
public void SetTaskCreationDate(int taskId, ApiDateTime creationDate)
{
var dao = _daoFactory.GetTaskDao();
@ -580,7 +580,7 @@ namespace ASC.CRM.Api
}
/// <visible>false</visible>
[Update(@"task/{taskid:int}/lastmodifeddate")]
[HttpPut(@"task/{taskid:int}/lastmodifeddate")]
public void SetTaskLastModifedDate(int taskId, ApiDateTime lastModifedDate)
{
var dao = _daoFactory.GetTaskDao();

View File

@ -96,7 +96,7 @@ namespace ASC.CRM.Api
/// <returns>
/// List of available currencies
/// </returns>
[Read(@"settings/currency")]
[HttpGet(@"settings/currency")]
public IEnumerable<CurrencyInfoDto> GetAvaliableCurrency()
{
return _currencyProvider.GetAll().ConvertAll(item => _mapper.Map<CurrencyInfoDto>(item));
@ -113,7 +113,7 @@ namespace ASC.CRM.Api
/// <returns>
/// Decimal result of convertation
/// </returns>
[Read(@"settings/currency/convert")]
[HttpGet(@"settings/currency/convert")]
public Decimal ConvertAmount(Decimal amount, String fromcurrency, String tocurrency)
{
return _currencyProvider.MoneyConvert(amount, fromcurrency, tocurrency);
@ -129,7 +129,7 @@ namespace ASC.CRM.Api
/// Dictionary of currencies and rates
/// </returns>
/// <exception cref="ArgumentException"></exception>
[Read(@"settings/currency/summarytable")]
[HttpGet(@"settings/currency/summarytable")]
public IEnumerable<CurrencyRateInfoDto> GetSummaryTable(String currency)
{
var result = new List<CurrencyRateInfoDto>();
@ -167,7 +167,7 @@ namespace ASC.CRM.Api
/// ChangeContactStatusGroupAuto setting value (true, false or null)
/// </returns>
/// <exception cref="SecurityException"></exception>
[Update(@"contact/status/settings")]
[HttpPut(@"contact/status/settings")]
public Boolean? UpdateCRMContactStatusSettings(Boolean? changeContactStatusGroupAuto)
{
var tenantSettings = _settingsManager.Load<CrmSettings>();
@ -191,7 +191,7 @@ namespace ASC.CRM.Api
/// WriteMailToHistoryAuto setting value (true or false)
/// </returns>
/// <exception cref="SecurityException"></exception>
[Update(@"contact/mailtohistory/settings")]
[HttpPut(@"contact/mailtohistory/settings")]
public Boolean UpdateCRMWriteMailToHistorySettings(Boolean writeMailToHistoryAuto)
{
var tenantSettings = _settingsManager.Load<CrmSettings>();
@ -214,7 +214,7 @@ namespace ASC.CRM.Api
/// AddTagToContactGroupAuto setting value (true, false or null)
/// </returns>
/// <exception cref="SecurityException"></exception>
[Update(@"contact/tag/settings")]
[HttpPut(@"contact/tag/settings")]
public Boolean? UpdateCRMContactTagSettings(Boolean? addTagToContactGroupAuto)
{
var tenantSettings = _settingsManager.Load<CrmSettings>();
@ -236,7 +236,7 @@ namespace ASC.CRM.Api
/// <returns>
/// IsConfiguredPortal setting value (true or false)
/// </returns>
[Update(@"settings")]
[HttpPut(@"settings")]
public Boolean SetIsPortalConfigured(Boolean? configured, Guid? webFormKey)
{
if (!_crmSecurity.IsAdmin) throw _crmSecurity.CreateSecurityException();
@ -259,7 +259,7 @@ namespace ASC.CRM.Api
/// <category>Organisation</category>
/// <returns>Organisation company name</returns>
/// <exception cref="SecurityException"></exception>
[Update(@"settings/organisation/base")]
[HttpPut(@"settings/organisation/base")]
public String UpdateOrganisationSettingsCompanyName(String companyName)
{
if (!_crmSecurity.IsAdmin) throw _crmSecurity.CreateSecurityException();
@ -291,7 +291,7 @@ namespace ASC.CRM.Api
/// <category>Organisation</category>
/// <returns>Returns a JSON object with the organization company address details</returns>
/// <exception cref="SecurityException"></exception>
[Update(@"settings/organisation/address")]
[HttpPut(@"settings/organisation/address")]
public String UpdateOrganisationSettingsCompanyAddress(String street, String city, String state, String zip, String country)
{
if (!_crmSecurity.IsAdmin) throw _crmSecurity.CreateSecurityException();
@ -331,7 +331,7 @@ namespace ASC.CRM.Api
/// <returns>Organisation logo ID</returns>
/// <exception cref="SecurityException"></exception>
/// <exception cref="Exception"></exception>
[Update(@"settings/organisation/logo")]
[HttpPut(@"settings/organisation/logo")]
public Task<Int32> UpdateOrganisationSettingsLogoAsync(bool reset)
{
if (!_crmSecurity.IsAdmin) throw _crmSecurity.CreateSecurityException();
@ -379,7 +379,7 @@ namespace ASC.CRM.Api
/// <category>Organisation</category>
/// <returns>Organisation logo content in base64</returns>
/// <exception cref="Exception"></exception>
[Read(@"settings/organisation/logo")]
[HttpGet(@"settings/organisation/logo")]
public String GetOrganisationSettingsLogo(int id)
{
if (id != 0)
@ -406,7 +406,7 @@ namespace ASC.CRM.Api
/// <category>Common</category>
/// <returns>Web form key</returns>
/// <exception cref="SecurityException"></exception>
[Update(@"settings/webformkey/change")]
[HttpPut(@"settings/webformkey/change")]
public string ChangeWebToLeadFormKey()
{
if (!_crmSecurity.IsAdmin) throw _crmSecurity.CreateSecurityException();
@ -431,7 +431,7 @@ namespace ASC.CRM.Api
/// <returns>currency</returns>
/// <exception cref="SecurityException"></exception>
/// <exception cref="ArgumentException"></exception>
[Update(@"settings/currency")]
[HttpPut(@"settings/currency")]
public CurrencyInfoDto UpdateCRMCurrency(String currency)
{
if (!_crmSecurity.IsAdmin) throw _crmSecurity.CreateSecurityException();
@ -451,7 +451,7 @@ namespace ASC.CRM.Api
}
/// <visible>false</visible>
[Create(@"{entityType:regex(contact|opportunity|case|task)}/import/start")]
[HttpPost(@"{entityType:regex(contact|opportunity|case|task)}/import/start")]
public string StartImportFromCSV(
[FromRoute] string entityType,
[FromBody] StartImportFromCSVRequestDto inDto )
@ -487,7 +487,7 @@ namespace ASC.CRM.Api
}
/// <visible>false</visible>
[Read(@"{entityType:regex(contact|opportunity|case|task)}/import/status")]
[HttpGet(@"{entityType:regex(contact|opportunity|case|task)}/import/status")]
public IProgressItem GetImportFromCSVStatus(string entityType)
{
EntityType entityTypeObj;
@ -515,7 +515,7 @@ namespace ASC.CRM.Api
}
/// <visible>false</visible>
[Read(@"import/samplerow")]
[HttpGet(@"import/samplerow")]
public Task<String> GetImportFromCSVSampleRowAsync(string csvFileURI, int indexRow, string jsonSettings)
{
if (String.IsNullOrEmpty(csvFileURI) || indexRow < 0) throw new ArgumentException();
@ -533,7 +533,7 @@ namespace ASC.CRM.Api
}
/// <visible>false</visible>
[Create(@"import/uploadfake")]
[HttpPost(@"import/uploadfake")]
public Task<FileUploadResult> ProcessUploadFakeAsync([FromBody] ProcessUploadFakeRequestDto inDto)
{
var csvFileURI = inDto.CsvFileURI;
@ -543,7 +543,7 @@ namespace ASC.CRM.Api
}
/// <visible>false</visible>
[Read(@"export/status")]
[HttpGet(@"export/status")]
public IProgressItem GetExportStatus()
{
if (!_crmSecurity.IsAdmin) throw _crmSecurity.CreateSecurityException();
@ -553,7 +553,7 @@ namespace ASC.CRM.Api
}
/// <visible>false</visible>
[Update(@"export/cancel")]
[HttpPut(@"export/cancel")]
public IProgressItem CancelExport()
{
if (!_crmSecurity.IsAdmin) throw _crmSecurity.CreateSecurityException();
@ -565,7 +565,7 @@ namespace ASC.CRM.Api
}
/// <visible>false</visible>
[Create(@"export/start")]
[HttpPost(@"export/start")]
public IProgressItem StartExport()
{
if (!_crmSecurity.IsAdmin) throw _crmSecurity.CreateSecurityException();
@ -576,14 +576,14 @@ namespace ASC.CRM.Api
}
/// <visible>false</visible>
[Read(@"export/partial/status")]
[HttpGet(@"export/partial/status")]
public IProgressItem GetPartialExportStatus()
{
return _exportToCsv.GetStatus(true);
}
/// <visible>false</visible>
[Update(@"export/partial/cancel")]
[HttpPut(@"export/partial/cancel")]
public IProgressItem CancelPartialExport()
{
@ -594,7 +594,7 @@ namespace ASC.CRM.Api
}
/// <visible>false</visible>
[Create(@"export/partial/{entityType:regex(contact|opportunity|case|task|invoiceitem)}/start")]
[HttpPost(@"export/partial/{entityType:regex(contact|opportunity|case|task|invoiceitem)}/start")]
public IProgressItem StartPartialExport([FromRoute] string entityType, [FromBody] string base64FilterString)
{
if (string.IsNullOrEmpty(base64FilterString)) throw new ArgumentException();

View File

@ -105,7 +105,7 @@ namespace ASC.CRM.Api
/// <returns></returns>
/// <exception cref="SecurityException"></exception>
/// <exception cref="ArgumentException"></exception>
[Read(@"voip/numbers/available")]
[HttpGet(@"voip/numbers/available")]
public IEnumerable<VoipPhone> GetAvailablePhoneNumbers(PhoneNumberType numberType, string isoCountryCode)
{
if (!_crmSecurity.IsAdmin) throw _crmSecurity.CreateSecurityException();
@ -123,7 +123,7 @@ namespace ASC.CRM.Api
/// <category>Voip</category>
/// <returns></returns>
/// <exception cref="SecurityException"></exception>
[Read(@"voip/numbers/unlinked")]
[HttpGet(@"voip/numbers/unlinked")]
public IEnumerable<VoipPhone> GetUnlinkedPhoneNumbers()
{
if (!_crmSecurity.IsAdmin) throw _crmSecurity.CreateSecurityException();
@ -141,7 +141,7 @@ namespace ASC.CRM.Api
/// <category>Voip</category>
/// <returns></returns>
/// <exception cref="SecurityException"></exception>
[Read(@"voip/numbers/existing")]
[HttpGet(@"voip/numbers/existing")]
public IEnumerable<VoipPhone> GetExistingPhoneNumbers()
{
if (!_crmSecurity.IsAdmin) throw _crmSecurity.CreateSecurityException();
@ -155,7 +155,7 @@ namespace ASC.CRM.Api
/// <category>Voip</category>
/// <returns></returns>
/// <exception cref="SecurityException"></exception>
[Create(@"voip/numbers")]
[HttpPost(@"voip/numbers")]
public Task<VoipPhone> BuyNumberAsync([FromBody] string number)
{
if (!_crmSecurity.IsAdmin) throw _crmSecurity.CreateSecurityException();
@ -181,7 +181,7 @@ namespace ASC.CRM.Api
/// <category>Voip</category>
/// <returns></returns>
/// <exception cref="SecurityException"></exception>
[Create(@"voip/numbers/link")]
[HttpPost(@"voip/numbers/link")]
public Task<VoipPhone> LinkNumberAsync([FromBody] string id)
{
if (!_crmSecurity.IsAdmin) throw _crmSecurity.CreateSecurityException();
@ -232,7 +232,7 @@ namespace ASC.CRM.Api
/// <category>Voip</category>
/// <returns></returns>
/// <exception cref="SecurityException"></exception>
[Delete(@"voip/numbers/{numberId:regex(\w+)}")]
[HttpDelete(@"voip/numbers/{numberId:regex(\w+)}")]
public VoipPhone DeleteNumber(string numberId)
{
if (!_crmSecurity.IsAdmin) throw _crmSecurity.CreateSecurityException();
@ -255,7 +255,7 @@ namespace ASC.CRM.Api
/// <category>Voip</category>
/// <returns></returns>
/// <exception cref="SecurityException"></exception>
[Read(@"voip/numbers/{numberId:regex(\w+)}")]
[HttpGet(@"voip/numbers/{numberId:regex(\w+)}")]
public VoipPhone GetNumber(string numberId)
{
return _daoFactory.GetVoipDao().GetNumber(numberId).NotFoundIfNull();
@ -267,7 +267,7 @@ namespace ASC.CRM.Api
/// <short></short>
/// <category>Voip</category>
/// <returns></returns>
[Read(@"voip/numbers/current")]
[HttpGet(@"voip/numbers/current")]
public VoipPhone GetCurrentNumber()
{
return _daoFactory.GetVoipDao().GetCurrentNumber().NotFoundIfNull();
@ -279,7 +279,7 @@ namespace ASC.CRM.Api
/// <short></short>
/// <category>Voip</category>
/// <returns></returns>
[Read(@"voip/token")]
[HttpGet(@"voip/token")]
public string GetToken()
{
return _daoFactory.GetVoipDao().GetProvider().GetToken(GetCurrentNumber().Caller);
@ -292,7 +292,7 @@ namespace ASC.CRM.Api
/// <category>Voip</category>
/// <returns></returns>
/// <exception cref="SecurityException"></exception>
[Update(@"voip/numbers/{numberId:regex(\w+)}/settings")]
[HttpPut(@"voip/numbers/{numberId:regex(\w+)}/settings")]
public VoipPhone UpdateSettings(string numberId, string greeting, string holdUp, string wait, string voiceMail, WorkingHours workingHours, bool? allowOutgoingCalls, bool? record, string alias)
{
if (!_crmSecurity.IsAdmin) throw _crmSecurity.CreateSecurityException();
@ -341,7 +341,7 @@ namespace ASC.CRM.Api
/// <category>Voip</category>
/// <returns></returns>
/// <exception cref="SecurityException"></exception>
[Update(@"voip/numbers/settings")]
[HttpPut(@"voip/numbers/settings")]
public object UpdateSettings(Queue queue, bool pause)
{
if (!_crmSecurity.IsAdmin) throw _crmSecurity.CreateSecurityException();
@ -389,7 +389,7 @@ namespace ASC.CRM.Api
/// <returns></returns>
/// <exception cref="SecurityException"></exception>
[Read(@"voip/numbers/settings")]
[HttpGet(@"voip/numbers/settings")]
public Task<object> GetVoipSettingsAsync()
{
if (!_crmSecurity.IsAdmin) throw _crmSecurity.CreateSecurityException();
@ -418,7 +418,7 @@ namespace ASC.CRM.Api
/// <category>Voip</category>
/// <returns></returns>
/// <exception cref="SecurityException"></exception>
[Read(@"voip/uploads")]
[HttpGet(@"voip/uploads")]
public IAsyncEnumerable<VoipUpload> GetUploadedFilesUriAsync()
{
if (!_crmSecurity.IsAdmin) throw _crmSecurity.CreateSecurityException();
@ -466,7 +466,7 @@ namespace ASC.CRM.Api
/// <returns></returns>
/// <exception cref="SecurityException"></exception>
/// <exception cref="ItemNotFoundException"></exception>
[Delete(@"voip/uploads")]
[HttpDelete(@"voip/uploads")]
public Task<VoipUpload> DeleteUploadedFileAsync(AudioType audioType, string fileName)
{
if (!_crmSecurity.IsAdmin) throw _crmSecurity.CreateSecurityException();
@ -539,7 +539,7 @@ namespace ASC.CRM.Api
/// <category>Voip</category>
/// <returns></returns>
/// <exception cref="SecurityException"></exception>
[Read(@"voip/numbers/{numberId:regex(\w+)}/oper")]
[HttpGet(@"voip/numbers/{numberId:regex(\w+)}/oper")]
public IEnumerable<Guid> GetOperators(string numberId)
{
return _daoFactory.GetVoipDao().GetNumber(numberId).Settings.Operators.Select(r => r.Id);
@ -553,7 +553,7 @@ namespace ASC.CRM.Api
/// <returns></returns>
/// <exception cref="SecurityException"></exception>
/// <exception cref="ArgumentException"></exception>
[Update(@"voip/numbers/{numberId:regex(\w+)}/oper")]
[HttpPut(@"voip/numbers/{numberId:regex(\w+)}/oper")]
public IEnumerable<Agent> AddOperators(string numberId, IEnumerable<Guid> operators)
{
if (!_crmSecurity.IsAdmin) throw _crmSecurity.CreateSecurityException();
@ -582,7 +582,7 @@ namespace ASC.CRM.Api
/// <category>Voip</category>
/// <returns></returns>
/// <exception cref="SecurityException"></exception>
[Delete(@"voip/numbers/{numberId:regex(\w+)}/oper")]
[HttpDelete(@"voip/numbers/{numberId:regex(\w+)}/oper")]
public Guid DeleteOperator(string numberId, Guid oper)
{
if (!_crmSecurity.IsAdmin) throw _crmSecurity.CreateSecurityException();
@ -611,7 +611,7 @@ namespace ASC.CRM.Api
/// <category>Voip</category>
/// <returns></returns>
/// <exception cref="SecurityException"></exception>
[Update(@"voip/opers/{operatorId}")]
[HttpPut(@"voip/opers/{operatorId}")]
public Agent UpdateOperator(Guid operatorId, AgentStatus? status, bool? allowOutgoingCalls, bool? record, AnswerType? answerType, string redirectToNumber)
{
if (!_crmSecurity.IsAdmin && !operatorId.Equals(_securityContext.CurrentAccount.ID)) throw _crmSecurity.CreateSecurityException();
@ -664,7 +664,7 @@ namespace ASC.CRM.Api
/// <category>Voip</category>
/// <returns></returns>
/// <exception cref="SecurityException"></exception>
[Create(@"voip/call")]
[HttpPost(@"voip/call")]
public Task<VoipCallDto> MakeCallAsync([FromBody] CreateMakeCallRequestDto inDto)
{
var number = _daoFactory.GetVoipDao().GetCurrentNumber().NotFoundIfNull();
@ -715,7 +715,7 @@ namespace ASC.CRM.Api
/// <short></short>
/// <category>Voip</category>
/// <returns></returns>
[Create(@"voip/call/{callId:regex(\w+)}/answer")]
[HttpPost(@"voip/call/{callId:regex(\w+)}/answer")]
public VoipCallDto AnswerCall([FromRoute] string callId)
{
var dao = _daoFactory.GetVoipDao();
@ -734,7 +734,7 @@ namespace ASC.CRM.Api
/// <short></short>
/// <category>Voip</category>
/// <returns></returns>
[Create(@"voip/call/{callId:regex(\w+)}/reject")]
[HttpPost(@"voip/call/{callId:regex(\w+)}/reject")]
public VoipCallDto RejectCall([FromRoute] string callId)
{
var dao = _daoFactory.GetVoipDao();
@ -752,7 +752,7 @@ namespace ASC.CRM.Api
/// <short></short>
/// <category>Voip</category>
/// <returns></returns>
[Create(@"voip/call/{callId:regex(\w+)}/redirect")]
[HttpPost(@"voip/call/{callId:regex(\w+)}/redirect")]
public VoipCallDto ReditectCall([FromRoute] string callId, [FromBody] string to)
{
var dao = _daoFactory.GetVoipDao();
@ -782,7 +782,7 @@ namespace ASC.CRM.Api
/// <short></short>
/// <category>Voip</category>
/// <returns></returns>
[Create(@"voip/call/{callId:regex(\w+)}")]
[HttpPost(@"voip/call/{callId:regex(\w+)}")]
public VoipCallDto SaveCall(
[FromRoute] string callId,
[FromBody] CreateVoipCallRequestDto inDto)
@ -868,7 +868,7 @@ namespace ASC.CRM.Api
/// <short></short>
/// <category>Voip</category>
/// <returns></returns>
[Create(@"voip/price/{callId:regex(\w+)}")]
[HttpPost(@"voip/price/{callId:regex(\w+)}")]
public void SavePrice([FromRoute] string callId)
{
_voipEngine.SaveAdditionalInfo(callId);
@ -880,7 +880,7 @@ namespace ASC.CRM.Api
/// <short></short>
/// <category>Voip</category>
/// <returns></returns>
[Read(@"voip/call")]
[HttpGet(@"voip/call")]
public async Task<IEnumerable<VoipCallDto>> GetCallsAsync(string callType, ApiDateTime from, ApiDateTime to, Guid? agent, int? client, int? contactID)
{
var voipDao = _daoFactory.GetVoipDao();
@ -946,7 +946,7 @@ namespace ASC.CRM.Api
/// <short></short>
/// <category>Voip</category>
/// <returns></returns>
[Read(@"voip/call/missed")]
[HttpGet(@"voip/call/missed")]
public async Task<IEnumerable<VoipCallDto>> GetMissedCallsAsync()
{
var voipDao = _daoFactory.GetVoipDao();
@ -993,7 +993,7 @@ namespace ASC.CRM.Api
/// <short></short>
/// <category>Voip</category>
/// <returns></returns>
[Read(@"voip/call/{callId:regex(\w+)}")]
[HttpGet(@"voip/call/{callId:regex(\w+)}")]
public VoipCallDto GetCall(string callId)
{
var call = _daoFactory.GetVoipDao().GetCall(callId);