168 lines
5.8 KiB
TypeScript
168 lines
5.8 KiB
TypeScript
// Krishna Sales — sandbox app 434 (base https://sandbox.getzino.in).
|
|
// Three workflows share the app: Order Booking, Store, Daily Reports. Each has
|
|
// its own workflow_uuid + version_uuid; instantiate one ZinoClient per workflow
|
|
// (new ZinoClient(baseUrl, WORKFLOWS.<x>.workflowUuid)). All ids from the API
|
|
// docs under src/docs/api.
|
|
|
|
export const APP_ID = '434';
|
|
export const BASE_URL = 'https://sandbox.getzino.in';
|
|
|
|
// --- Order Booking (src/docs/api/order_booking.md) ---
|
|
export const ORDER_BOOKING = {
|
|
workflowUuid: 'b5a21627-9422-40cf-b7f5-31fa070bf42f',
|
|
versionUuid: 'f19b2146-88e5-448a-9a51-e517ebce680a',
|
|
activities: {
|
|
LOG_VISIT: {
|
|
uid: '42b7f47d-96f0-4289-a6d9-38f455ad57dd', // init
|
|
fields: {
|
|
selectStore: 'select_store', // wf_lookup
|
|
dateOfVisit: 'date_of_visit', // date
|
|
timeOfVisit: 'time_of_visit', // time
|
|
uploadImage: 'upload_image', // image
|
|
},
|
|
},
|
|
PLACE_ORDER: {
|
|
uid: 'f66403d7-e31f-4d64-bcfd-ff5485aec8b8',
|
|
fields: {
|
|
dateOfOrder: 'date_of_order', // date
|
|
orderDetails: 'order_details', // grid: br_code, sku_code, product_category, product_name, sku, bags
|
|
totalBags: 'total_bags', // number
|
|
totalKgs: 'total_kgs', // number
|
|
},
|
|
},
|
|
PRODUCTIVITY_OF_VISIT: {
|
|
uid: '11bd10f9-a001-470e-867f-33dee8eabe4b',
|
|
fields: {
|
|
isProductiveCall: 'is_productive_call', // radio
|
|
storeStatus: 'store_status', // select
|
|
orderReceivedChannel: 'order_received_channel', // select
|
|
remarks: 'remarks', // longtext
|
|
action: 'action', // radio
|
|
},
|
|
},
|
|
POTENTIAL_MINING: {
|
|
uid: 'af8ac8df-d868-4f7d-88b2-123955d69c56',
|
|
fields: {
|
|
potential: 'potential', // grid: product_category_, total_ordered, actual_potential, difference, reason, potential_remarks
|
|
},
|
|
},
|
|
CLOSE_ORDER: {
|
|
uid: '8580d7a2-5d31-40ab-b7ea-2a38d144e59a',
|
|
fields: {
|
|
remarks: 'remarks_2', // longtext
|
|
},
|
|
},
|
|
},
|
|
recordViews: {
|
|
ORDERS: '1e424561-9a27-44f5-9b68-64d63296d837',
|
|
CALLS: '56b21b46-6d2c-4e10-b5a3-c63d058d0afa',
|
|
},
|
|
detailViews: {
|
|
ORDERS: '0804c6c3-6cf9-4050-94bb-fa48dd5de87d',
|
|
CALLS: '09a32bfe-9e43-4e0f-bb7d-db89c8a2557c',
|
|
},
|
|
} as const;
|
|
|
|
// --- Store (src/docs/api/store.md) ---
|
|
export const STORE = {
|
|
workflowUuid: '2f827d27-b7a4-4ed9-9336-879fa46dbcba',
|
|
versionUuid: 'ced1fb5b-c6a4-4305-b85d-3c263d9d618e',
|
|
activities: {
|
|
// Init (fields carry the _2 suffix).
|
|
INIT: {
|
|
uid: '8626a77f-9e70-448e-8ac9-2c51eae5015b', // init
|
|
fields: {
|
|
businessName: 'business_name_2', // text
|
|
area: 'area_2', // text
|
|
completeAddress: 'complete_address_2', // longtext
|
|
pinCode: 'pin_code_2', // number
|
|
ownerName: 'owner_name_2', // text
|
|
phoneNumber: 'phone_number_2', // phone
|
|
email: 'email_2', // email
|
|
storeLocation: 'store_location_2', // geolocation
|
|
storeImage: 'store_image_2', // image
|
|
routeName: 'route_name_2', // select
|
|
routeCode: 'route_code_2', // select
|
|
subRoute: 'sub_route_2', // select
|
|
distributorName: 'distributor_name_2', // select
|
|
distributorOwnerName: 'distributor_owner_name_2', // text
|
|
distributorEmail: 'distributor_email_2', // email
|
|
distributorPhoneNumber: 'distributor_phone_number_2', // phone
|
|
notes: 'notes_2', // longtext
|
|
potential: 'potential_2', // grid: product_category_1, quantity_1
|
|
},
|
|
},
|
|
// Edit (same fields, _3 suffix).
|
|
EDIT_STORE: {
|
|
uid: '87647fae-3b07-445f-9615-21881b163276',
|
|
fields: {
|
|
businessName: 'business_name_3', // text
|
|
area: 'area_3', // text
|
|
completeAddress: 'complete_address_3', // longtext
|
|
pinCode: 'pin_code_3', // number
|
|
ownerName: 'owner_name_3', // text
|
|
phoneNumber: 'phone_number_3', // phone
|
|
email: 'email_3', // email
|
|
storeLocation: 'store_location_3', // geolocation
|
|
storeImage: 'store_image_3', // image
|
|
routeName: 'route_name_3', // select
|
|
routeCode: 'route_code_3', // select
|
|
subRoute: 'sub_route_3', // select
|
|
distributorName: 'distributor_name_3', // select
|
|
distributorOwnerName: 'distributor_owner_name_3', // text
|
|
distributorEmail: 'distributor_email_3', // email
|
|
distributorPhoneNumber: 'distributor_phone_number_3', // phone
|
|
notes: 'notes_3', // longtext
|
|
potential: 'potential_3', // grid: col_1, col_2
|
|
},
|
|
},
|
|
},
|
|
recordViews: {
|
|
STORE: 'c03b411a-8454-4d8b-8220-00095e92a5de',
|
|
},
|
|
detailViews: {
|
|
STORE: 'af868269-d340-4ea9-9793-5fabe4f6ae27',
|
|
},
|
|
} as const;
|
|
|
|
// --- Daily Reports (src/docs/api/daily_reports.md) ---
|
|
export const DAILY_REPORTS = {
|
|
workflowUuid: 'c420dc04-2ba3-488e-902d-66bc9a2032cd',
|
|
versionUuid: 'd4d4c738-bf74-4b44-a297-9a6653458f3a',
|
|
activities: {
|
|
INIT: {
|
|
uid: 'ac04a444-9b96-463d-bc91-447fa80b028f', // init
|
|
fields: {
|
|
salesOfficerName: 'sales_officer_name', // app_user
|
|
date: 'date', // date
|
|
time: 'field_1', // time
|
|
routeCode: 'route_code', // select
|
|
subRoute: 'sub_route', // select
|
|
storeImage: 'store_image', // image
|
|
dayPlanNotes: 'day_plan_notes', // longtext
|
|
},
|
|
},
|
|
PUNCH_OUT: {
|
|
uid: '37c218fc-fd91-41d1-9964-fcaeade54e74',
|
|
fields: {
|
|
totalProductiveCalls: 'total_productive_calls', // number
|
|
totalNonProductiveCalls: 'total_non_productive_calls', // number
|
|
eodNotesRemarks: 'eod_notes_remarks', // longtext
|
|
},
|
|
},
|
|
},
|
|
recordViews: {
|
|
DAILY_LOGS: '269da629-1701-477a-a37b-a78bb056d4b3',
|
|
},
|
|
detailViews: {
|
|
DAILY_LOGS: '26b3c6de-a1d7-4f71-be88-7e4929932b0b',
|
|
},
|
|
} as const;
|
|
|
|
// All workflows keyed by slug, for generic lookup.
|
|
export const WORKFLOWS = {
|
|
orderBooking: ORDER_BOOKING,
|
|
store: STORE,
|
|
dailyReports: DAILY_REPORTS,
|
|
} as const;
|