Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

User can provide the feedback for the following at the end of the flows for create, mutate, update and payment for property tax, also if the review here is skipped user can also review once the property is active in my application details page, there user will receive a pop up for the feedback.

Citizen Feedback Screen

In this In My application screen, user is able to give rating by clicking on the stars (out of 5), once the stars are clicked, according to the value, “What went wrong?” or “What went good?” comment box is visible, which is a non mandatory field and then user can submit the review/rating.

...

Citizen Feedback Acknowledgement

Once the user submits the rating, the Search API is being called in order to retrieve the service definition for the particular business service, and with that id the create API is called for the submission of the review, if successful or failed, the screen will move to acknowledgement page in order to show whether the rating was submitted successfully or not and in the case of popup, after the review is submitted, toast message is displayed referring to the status of the submission.

Search definition API Curl :

...

service search API is being called with tenantId and referenceIds which are an array of acknowledgement number retrieved from property search, in order to get the data about the feedback already submitted, so that following label can be displayed on the button:

if review done and active: View.

if review not done and active: Rate Us.

if application is in progress: Track.

API Curl:

Code Block
curl 'https://qa.digit.org/service-request/service/v1/_search?_=1681472244925' \
  -H 'authority: qa.digit.org' \
  -H 'authority: qa.digit.org' \
  -H 'accept: application/json, text/plain, */*' \
  -H 'accept-language: en-US,en;q=0.9' \
  -H 'content-type: application/json;charset=UTF-8' \
  -H 'cookieorigin: _ga=GA1.2.2133756512.1676450222; __cuid=7b0fe5a8761f49f6bff7ede48649b0dc; amp_fef1e8=248239ce-459d-4f23-8e85-6eaecb3b54d0R...1gpckta4o.1gpckta4s.2.0.2' \
  -H 'origin: https://qa.digit.org' \
  -H 'https://qa.digit.org' \
  -H 'referer: https://qa.digit.org/digit-ui/citizen/feedback?redirectedFrom=/digit-ui/citizen/pt/property/new-application/acknowledgement&propertyId=PB-PT-2023-04-11-029030&acknowldgementNumber=PB-AC-2023-04-11-029111&creationReason=CREATE&tenantId=pb.amritsarmy-applications' \
  -H 'sec-ch-ua: "Google ChromeChromium";v="111112", "Not(A:BrandGoogle Chrome";v="8112", "ChromiumNot:A-Brand";v="11199"' \
  -H 'sec-ch-ua-mobile: ?1' \
  -H 'sec-ch-ua-platform: "Android"' \
  -H 'sec-fetch-dest: empty' \
  -H 'sec-fetch-mode: cors' \
  -H 'sec-fetch-site: same-origin' \
  -H 'user-agent: Mozilla/5.0 (Linux; Android 8.0.0; SM-G955U Build/R16NW) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.141 Mobile Safari/537.36' \
  --data-raw '{"ServiceDefinitionCriteria":{"tenantId":"pb.amritsar","code":["PT_CREATE"],"module":["PT"]},"RequestInfo":{"apiId":"Rainmaker","authToken":"810eb623-32e8-43d3-bf9f-cd1152faf856","userInfo":{"id":16490,"uuid":"7d82122e-1e91-4f34-893f-d16963af217a","userName":"7979797979","name":"Debasish","mobileNumber":"7979797979","emailId":"gubbi678@gmail.com","locale":null,"type":"CITIZEN","roles":[{"name":"Citizen","code":"CITIZEN","tenantId":"pb"}],"active":true,"tenantId":"pb","permanentCity":null},"msgId":"1681191005368|en_IN","plainAccessRequest":{}}}' \
  --compressed) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.141 Mobile Safari/537.36' \
  --data-raw '{"ServiceCriteria":{"tenantId":"pb.amritsar","referenceIds":["PB-AC-2023-04-13-029319","PB-AC-2023-04-13-029315","PB-AC-2023-04-13-029314","PB-AC-2023-04-11-029112"]},"RequestInfo":{"apiId":"Rainmaker","authToken":"47980bef-b2bb-44d3-80e6-a36354690735","userInfo":{"id":16490,"uuid":"7d82122e-1e91-4f34-893f-d16963af217a","userName":"7979797979","name":"Debasish","mobileNumber":"7979797979","emailId":"gubbi678@gmail.com","locale":null,"type":"CITIZEN","roles":[{"name":"Citizen","code":"CITIZEN","tenantId":"pb"}],"active":true,"tenantId":"pb","permanentCity":null},"msgId":"1681472244925|en_IN","plainAccessRequest":{}}}' \
  --compressed

...

Inside the Application details page also service search is called in order to check whether the feedback has been done or not, if it has been done for that particular application popup is not visible otherwise pop-up displays once the application details page opens up.

Citizen Feedback Screen

In this screen, user is able to give rating by clicking on the stars (out of 5), once the stars are clicked, according to the value, “What went wrong?” or “What went good?” comment box is visible, which is a non mandatory field and then user can submit the review/rating.

...

Citizen Feedback Acknowledgement

Once the user submits the rating, the Search API is being called in order to retrieve the service definition for the particular business service, and with that id the create API is called for the submission of the review, if successful or failed, the screen will move to acknowledgement page in order to show whether the rating was submitted successfully or not and in the case of popup, after the review is submitted, toast message is displayed referring to the status of the submission.

Search definition API Curl :

Code Block
curl 'https://qa.digit.org/service-request/service/definition/v1/_search?_=1681191005369' \
  -H 'authority: qa.digit.org' \
  -H 'accept: application/json, text/plain, */*' \
  -H 'accept-language: en-US,en;q=0.9' \
  -H 'content-type: application/json;charset=UTF-8' \
  -H 'cookie: _ga=GA1.2.2133756512.1676450222; __cuid=7b0fe5a8761f49f6bff7ede48649b0dc; amp_fef1e8=248239ce-459d-4f23-8e85-6eaecb3b54d0R...1gpckta4o.1gpckta4s.2.0.2' \
  -H 'origin: https://qa.digit.org' \
  -H 'referer: https://qa.digit.org/digit-ui/citizen/feedback?redirectedFrom=/digit-ui/citizen/pt/property/new-application/acknowledgement&propertyId=PB-PT-2023-04-11-029030&acknowldgementNumber=PB-AC-2023-04-11-029111&creationReason=CREATE&tenantId=pb.amritsar' \
  -H 'sec-ch-ua: "Google Chrome";v="111", "Not(A:Brand";v="8", "Chromium";v="111"' \
  -H 'sec-ch-ua-mobile: ?1' \
  -H 'sec-ch-ua-platform: "Android"' \
  -H 'sec-fetch-dest: empty' \
  -H 'sec-fetch-mode: cors' \
  -H 'sec-fetch-site: same-origin' \
  -H 'user-agent: Mozilla/5.0 (Linux; Android 8.0.0; SM-G955U Build/R16NW) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.141 Mobile Safari/537.36' \
  --data-raw '{"ServiceDefinitionCriteria":{"tenantId":"pb.amritsar","code":["PT_CREATE"],"module":["PT"]},"RequestInfo":{"apiId":"Rainmaker","authToken":"810eb623-32e8-43d3-bf9f-cd1152faf856","userInfo":{"id":16490,"uuid":"7d82122e-1e91-4f34-893f-d16963af217a","userName":"7979797979","name":"Debasish","mobileNumber":"7979797979","emailId":"gubbi678@gmail.com","locale":null,"type":"CITIZEN","roles":[{"name":"Citizen","code":"CITIZEN","tenantId":"pb"}],"active":true,"tenantId":"pb","permanentCity":null},"msgId":"1681191005368|en_IN","plainAccessRequest":{}}}' \
  --compressed

For Service Create following request object is needed :

Code Block
{
    "tenantId": "pb.amritsar",
    "serviceDefId": "aa85214f-8c8c-4f26-a064-6e324479e6bb",
    "isActive": true,
    "attributes": [
        {
            "attributeCode": "consumerCode",
            "value": "PB-PT-2023-04-13-029231",
            "additionalDetails": {}
        },
        {
            "attributeCode": "rating",
            "value": 3,
            "additionalDetails": {}
        },
        {
            "attributeCode": "comments",
            "value": "12345678901234567890123456789012345678901234567890",
            "additionalDetails": {}
        },
        {
            "attributeCode": "channel",
            "value": "Online",
            "additionalDetails": {}
        }
    ],
    "additionalDetails": {
        "locality": "SUN02"
    },
    "accountId": "7d82122e-1e91-4f34-893f-d16963af217a",
    "referenceId": "PB-AC-2023-04-13-029319"
}

Service Create API curl :

Code Block
curl 'https://qa.digit.org/service-request/service/v1/_create' \
  -H 'authority: qa.digit.org' \
  -H 'accept: application/json, text/plain, */*' \
  -H 'accept-language: en-US,en;q=0.9' \
  -H 'content-type: application/json;charset=UTF-8' \
  -H 'cookie: _ga=GA1.2.2133756512.1676450222; __cuid=7b0fe5a8761f49f6bff7ede48649b0dc; amp_fef1e8=248239ce-459d-4f23-8e85-6eaecb3b54d0R...1gpckta4o.1gpckta4s.2.0.2/json;charset=UTF-8' \
  -H 'origin: https://qa.digit.org' \
  -H 'referer: https://qa.digit.org/digit-ui/citizen/feedback?redirectedFrom=/digit-ui/citizen/pt/property/new-application/acknowledgement&propertyId=PB-PT-2023-04-11-029030&acknowldgementNumber=PB-AC-2023-04-11-029111&creationReason=CREATE&tenantId=-13-029319/pb.amritsar' \
  -H 'sec-ch-ua: "Google ChromeChromium";v="111112", "Not(A:BrandGoogle Chrome";v="8112", "ChromiumNot:A-Brand";v="11199"' \
  -H 'sec-ch-ua-mobile: ?1' \
  -H 'sec-ch-ua-platform: "Android"' \
  -H 'sec-fetch-dest: empty' \
  -H 'sec-fetch-mode: cors' \
  -H 'sec-fetch-site: same-origin' \
  -H 'user-agent: Mozilla/5.0 (Linux; Android 8.0.0; SM-G955U Build/R16NW) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.141 Mobile Safari/537.36' \
  --data-raw '{"Service":{"tenantId":"pb.amritsar","serviceDefId":"7fe72b01-32fc-4baa-8024-166f5367a93a","isActive":true,"attributes":[{"attributeCode":"consumerCode","valueserviceDefId":"PBaa85214f-PT8c8c-20234f26-04a064-11-0290306e324479e6bb","additionalDetailsisActive":{}},true,"attributes":[{"attributeCode":"referenceIdconsumerCode","value":"PB-ACPT-2023-04-1113-029111029231","additionalDetails":{}},{"attributeCode":"rating","value":3,"additionalDetails":{}},{"attributeCode":"comments","value":"something not right12345678901234567890123456789012345678901234567890","additionalDetails":{}},{"attributeCode":"channel","value":"Online","additionalDetails":{}}],"additionalDetails":{"locality":"SUN02"},"accountId":"7d82122e-1e91-4f34-893f-d16963af217a","referenceId":"PB-AC-2023-04-13-029319"},"RequestInfo":{"apiId":"Rainmaker","authToken":"810eb62347980bef-32e8b2bb-43d344d3-bf9f80e6-cd1152faf856a36354690735","userInfo":{"id":16490,"uuid":"7d82122e-1e91-4f34-893f-d16963af217a","userName":"7979797979","name":"Debasish","mobileNumber":"7979797979","emailId":"gubbi678@gmail.com","locale":null,"type":"CITIZEN","roles":[{"name":"Citizen","code":"CITIZEN","tenantId":"pb"}],"active":true,"tenantId":"pb","permanentCity":null},"msgId":"16811910055791681472454112|en_IN","plainAccessRequest":{}}}' \
  --compressed

...

In the above config headerByRating param is used to declare the value for which star condition will be there along with the code message which will be displayed in the UI screenmessage which will be displayed in the UI screen. for example if out of five star user selects 3 star it will show “CS_WHAT_WENT_WRONG" i.e. “What went wrong ?” in the heading of the comment box and if the user selects 4 or 5, it will display “CS_WHAT_WENT_GOOD" i.e. “What went good?” in the heading.

enabledScreensList is used to declare the flows where the Citizen feedback screen will be displayed in order to get review from citizen. for eg : in the config PT_CREATE is defined, so at the end of the property application create flow, in the acknowledgement screen, a link will be there to redirect to feedback screen.

Rating component is being used for the star rating part of the screen in citizen feedback screen which can be found inside micro-ui-internals folder : https://github.com/egovernments/DIGIT-Dev/blob/develop/frontend/micro-ui/web/micro-ui-internals/packages/react-components/src/atoms/Rating.js

...