Appveyor | Server side coverage | Client side coverage | Code Climate | Code Climate Issue Count |
---|---|---|---|---|
Slack Custom Integration/Apps for Leave Management, Standup Meetings, Task status.
Slack Custom Integration/Apps for Leave Management, Standup Meetings, Task status.
Create a gulp task like 'test-ci' which should execute test cases in a CI environment with tappveyor as reporter.
String constant is used as static property class. It should ideally be used through Dependency Injection mechanism. convert this class to make it Di friendly. This is similar to #58
slack.erp not working due to app.routing related issue and URL pattern issues.
right now there is no authentication in the entire application. We need to implement proper identity authentication supporting oauth.
Slack triggers user_change event when user details of a user in the team is changed. Handle this event to update user details at our end.
Create a common way to access all environment variables quickly. Right now a common way of using it is to Environment.GetEnvironmentVariable("","Scope). Whenever this variable is re-used, there will be code repetition. Instead, create something that will unify it.
I had used Nlog in my project but I m not able to detect where the file is gone to be saved
Currently, all strings are inside the code in a string constant. If I want to change any string, I would need to redeploy the application. Suggest a better way to manage text outside code and implement it.
While deploying on azure MS_TableConnectionString is the default connection string name. if we use this name connection string will be set automatically on cloud
Update angular and any other components
What will be action after admin applies sick leave for an employee? Will all team leader and management get any slack message as casual leave and email regarding sick leave has been applied for the employee?
And the same question arise for sick leave update?
Scrum BOT must answer when it is asked it should not talk when it is not asked anything.
When scrum is been halted then also it is answers as it is not proper behaviour.
List out all environment variables in a text file as an instruction file. for example, create SETUP.md file and write down set up instruction for the project. make sure you use dummy values and not the actual values in instructions
Improve build time by caching packages
and node_modules
folder. Also try to use yarn instead of npm for package management.
Access token is being passed as a parameter in every method that calls oauth server. Instead of that we can move its generation to the place from where we actually make call to oauth server (to be specific Http Client Repository).
Many issues have been reported by tslint in leave report module.
Steps to be followed:
Steps to be followed:
Steps to be followed:
I have used the following credentials.
Username: [email protected]
Password: Admin@123
Please refer the screenshot.
right now we are not utilizing all the fields provided by slack to filter out the users. We should ideally filterout all the bots and inactive users. SlackUserDetail should have more fields that will allow us to accomplish this. Here is the sample json that we receive.
{
"id": "U051J2QKG",
"team_id": "T04K6NL66",
"name": "johnlenin",
"deleted": false,
"status": null,
"color": "d1707d",
"real_name": "John Lenin",
"tz": "Asia\/Kolkata",
"tz_label": "India Standard Time",
"tz_offset": 19800,
"profile": {
"first_name": "John",
"last_name": "Lenin",
"avatar_hash": "762f356b8ed5",
"image_24": "https:\/\/avatars.slack-edge.com\/2016-06-24\/53960066869888_762f356b8ed5768f4f87_24.jpg",
"image_32": "https:\/\/avatars.slack-edge.com\/2016-06-24\/53960066869888_762f356b8ed5768f4f87_32.jpg",
"image_48": "https:\/\/avatars.slack-edge.com\/2016-06-24\/53960066869888_762f356b8ed5768f4f87_48.jpg",
"image_72": "https:\/\/avatars.slack-edge.com\/2016-06-24\/53960066869888_762f356b8ed5768f4f87_72.jpg",
"image_192": "https:\/\/avatars.slack-edge.com\/2016-06-24\/53960066869888_762f356b8ed5768f4f87_192.jpg",
"image_512": "https:\/\/avatars.slack-edge.com\/2016-06-24\/53960066869888_762f356b8ed5768f4f87_512.jpg",
"image_1024": "https:\/\/avatars.slack-edge.com\/2016-06-24\/53960066869888_762f356b8ed5768f4f87_1024.jpg",
"image_original": "https:\/\/avatars.slack-edge.com\/2016-06-24\/53960066869888_762f356b8ed5768f4f87_original.jpg",
"title": "",
"phone": "",
"skype": "",
"real_name": "John Lenin",
"real_name_normalized": "John Lenin",
"email": "[email protected]"
},
"is_admin": false,
"is_owner": false,
"is_primary_owner": false,
"is_restricted": false,
"is_ultra_restricted": false,
"is_bot": false,
"has_2fa": false
},
Do not use any static class or methods unless required absolutely. Using static class creates an issue for Unit testing. So, String constants, environment variables and any other equivalent utility classes should also be not static.
Check whether app has already been added to slack team and redirect to success page with appropriate message.
Once the scrum is been concluded and again we write "Scrum Time" it shows us a message as "Scrum concluded.Good luck team ๐ " instead of that we can make it as "Scrum has been concluded for today. Please start scrum tomorrow."
Please do not use any SMS language for bot (Scrum, Task Mail and Leave)
Scrum Report is not been implemented in Promact ERP as Leave and Task Mail are been implemented in Promact ERP.
Multiple events getting fired at channel_created event
Logout functionality is not been implemented on Promact ERP, If user logins to see his reports then he may also be allowed to log out from the Promact ERP.
In this link https://promactslack.azurewebsites.net all the pages do not have proper designing.
List of pages:
When we click on Task Mail Report the designing of the pages are not proper. Please fix the designing issue.
Please fix the designing issues.
Please see the screenshot:
When we add Slack Username and it does not match with the username in the slack, So we are not able to change it.
We have the function implemented for the edit but it is not been updated in the database.
Integrate ng2-admin design within current site
I tried adding slack app to the application. But, It showed this exception.
2016-09-29 09:49:37.7141 Promact.Erp.Core.Controllers.OAuthController Error in OAuth Controller-Slack OAuth. Error -> System.Data.Entity.Infrastructure.DbUpdateException: An error occurred while updating the entries. See the inner exception for details. ---> System.Data.Entity.Core.UpdateException: An error occurred while updating the entries. See the inner exception for details. ---> System.Data.SqlClient.SqlException: Cannot insert the value NULL into column 'Id', table 'promactslack.dbo.SlackUserDetails'; column does not allow nulls. INSERT fails.
The statement has been terminated.
at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action1 wrapCloseInAction) at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose) at System.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady) at System.Data.SqlClient.SqlDataReader.TryConsumeMetaData() at System.Data.SqlClient.SqlDataReader.get_MetaData() at System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString) at System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async, Int32 timeout, Task& task, Boolean asyncWrite, SqlDataReader ds, Boolean describeParameterEncryptionRequest) at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, TaskCompletionSource
1 completion, Int32 timeout, Task& task, Boolean asyncWrite)
at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method)
at System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior behavior, String method)
at System.Data.Entity.Infrastructure.Interception.InternalDispatcher1.Dispatch[TTarget,TInterceptionContext,TResult](TTarget target, Func
3 operation, TInterceptionContext interceptionContext, Action3 executing, Action
3 executed)
at System.Data.Entity.Infrastructure.Interception.DbCommandDispatcher.Reader(DbCommand command, DbCommandInterceptionContext interceptionContext)
at System.Data.Entity.Core.Mapping.Update.Internal.DynamicUpdateCommand.Execute(Dictionary2 identifierValues, List
1 generatedValues)
at System.Data.Entity.Core.Mapping.Update.Internal.UpdateTranslator.Update()
--- End of inner exception stack trace ---
at System.Data.Entity.Core.Mapping.Update.Internal.UpdateTranslator.Update()
at System.Data.Entity.Core.Objects.ObjectContext.ExecuteInTransaction[T](Func1 func, IDbExecutionStrategy executionStrategy, Boolean startLocalTransaction, Boolean releaseConnectionOnSuccess) at System.Data.Entity.Core.Objects.ObjectContext.SaveChangesToStore(SaveOptions options, IDbExecutionStrategy executionStrategy, Boolean startLocalTransaction) at System.Data.Entity.SqlServer.DefaultSqlExecutionStrategy.Execute[TResult](Func
1 operation)
at System.Data.Entity.Core.Objects.ObjectContext.SaveChangesInternal(SaveOptions options, Boolean executeInExistingTransaction)
at System.Data.Entity.Internal.InternalContext.SaveChanges()
--- End of inner exception stack trace ---
at System.Data.Entity.Internal.InternalContext.SaveChanges()
at Promact.Core.Repository.ExternalLoginRepository.OAuthLoginRepository.d__7.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Promact.Erp.Core.Controllers.OAuthController.d__7.MoveNext()
right now When we hit Add to Slack. It redirects a user to Slack for authentication and returns on a blank page. There is no way to know whether it was successful or failed. Please add a page which indicates the outcome. i.e, If It comes back successfully. It should show
Promact Slack app has been successfully
if it comes back with a failure
Promact Slack app was not added successfully. There is something wrong Internally.
or there is a server side exception.
Promact Slack app was not added successfully. {{REPLACE_THIS_WITH_ACTUAL_ERROR_RETURNED_FROM_SLACK}}
And below this description add a button to continue which brings use back to Home page.
Steps to be followed:
integrate client side code coverage tool like Istanbul and link that with coveralls.
Change Environment reading strategy from User level to process level.
Scrum bot continued scrum meeting even after it said it concluded the meeting. It should lock the meeting.
We will be using apidoc in application to create proper documentation.
Create a file that explains steps involved in using scrum bot and all it's options
Right now there are many issues have been reported by TsLint in task mail module and also wrong naming conventions. Please run tslint and solve the issues tslint issues and improve naming convention.
Forgot Password Functionality using email
An unhandled exception was thrown while connecting to slack bot using SlackSocketClient of SlackApi. It occurred after XMPP was enabled in slack team. Even after disabling it, this issue persists.
Add xUnit test cases for task mail report
we have all client side dependencies in scripts folder. ideally this folder should not be in repository and any client side dependencies should be used from bower.
After setting up all environment variables I tried to open LogIn with Promact. It showed 400 bad request error.
think scrum bot needs a change in implementation.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.