Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

270 feature add description field to forminstance and formtemplate #292

Open
wants to merge 13 commits into
base: main
Choose a base branch
from
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
-- AlterTable
ALTER TABLE "FormInstance" ADD COLUMN "description" VARCHAR(255) NOT NULL DEFAULT 'No description';

-- AlterTable
ALTER TABLE "FormTemplate" ADD COLUMN "description" VARCHAR(255) NOT NULL DEFAULT 'No description';
2 changes: 2 additions & 0 deletions apps/server/prisma/schema.prisma
Original file line number Diff line number Diff line change
Expand Up @@ -88,6 +88,7 @@ model FormTemplate {
id String @id @default(uuid()) @db.Uuid
name String @db.VarChar(255)
formDocLink String @db.VarChar(255)
description String @db.VarChar(255) @default("No description")
createdAt DateTime @default(now())
updatedAt DateTime @updatedAt

Expand Down Expand Up @@ -140,6 +141,7 @@ model FormInstance {
id String @id @default(uuid()) @db.Uuid
name String @db.VarChar(255)
formDocLink String @db.VarChar(255)
description String @db.VarChar(255) @default("No description")
completed Boolean @default(false)
markedCompleted Boolean @default(false)
createdAt DateTime @default(now())
Expand Down
16 changes: 16 additions & 0 deletions apps/server/prisma/seed.ts
Original file line number Diff line number Diff line change
Expand Up @@ -162,10 +162,12 @@ const formTemplates: FormTemplateData[] = [
],
},
],
description: 'IT exit form description',
},
{
id: STAFFING_REQUISITION_UUID,
name: 'Staffing Requisition',
description: 'Staffing Requisition description',
formDocLink: DEV_FORM_DOC_LINK,
fieldGroups: [
{
Expand Down Expand Up @@ -199,6 +201,7 @@ const formTemplates: FormTemplateData[] = [
{
id: NETWORK_ADD_CHANGE_UUID,
name: 'Network Add Change',
description: 'Network Add Change description',
formDocLink: DEV_FORM_DOC_LINK,
fieldGroups: [
{
Expand All @@ -219,6 +222,7 @@ const formTemplates: FormTemplateData[] = [
{
id: MFA_ORACLE_LOGON_REQUEST_UUID,
name: 'MFA Oracle Logon Request',
description: 'MFA Oracle Logon Request description',
formDocLink: DEV_FORM_DOC_LINK,
fieldGroups: [
{
Expand Down Expand Up @@ -252,6 +256,7 @@ const formTemplates: FormTemplateData[] = [
{
id: HYBRID_AND_REMOTE_WORK_AGREEMENT_UUID,
name: 'Hybrid and Remote Work Agreement',
description: 'Hybrid and Remote Work Agreement description',
formDocLink: DEV_FORM_DOC_LINK,
fieldGroups: [
{
Expand All @@ -272,6 +277,7 @@ const formTemplates: FormTemplateData[] = [
{
id: VPN_REQUEST_UUID,
name: 'VPN Request',
description: 'VPN Request description',
formDocLink: DEV_FORM_DOC_LINK,
fieldGroups: [
{
Expand All @@ -292,6 +298,7 @@ const formTemplates: FormTemplateData[] = [
{
id: DIGITAL_MFA_ID_BADGE_REQUEST_UUID,
name: 'Digital MFA ID Badge Request',
description: 'Digital MFA ID Badge Request description',
formDocLink: DEV_FORM_DOC_LINK,
fieldGroups: [
{
Expand All @@ -312,6 +319,7 @@ const formTemplates: FormTemplateData[] = [
{
id: TRAVEL_AUTHORIZATION_UUID,
name: 'Travel Authorization',
description: 'Travel Authorization description',
formDocLink: DEV_FORM_DOC_LINK,
fieldGroups: [
{
Expand All @@ -335,6 +343,7 @@ const formInstances: FormInstanceData[] = [
{
id: uuidv4(),
name: 'IT Exit Form Instance',
description: 'IT Exit Form Instance description',
formDocLink: DEV_FORM_DOC_LINK,
originatorId: KAI_ZHENG_UUID,
formTemplateId: IT_EXIT_FORM_UUID,
Expand Down Expand Up @@ -363,6 +372,7 @@ const formInstances: FormInstanceData[] = [
{
id: uuidv4(),
name: 'Staffing Requisition Form Instance',
description: 'Staffing Requisition Form Instance description',
formDocLink: DEV_FORM_DOC_LINK,
originatorId: IRIS_ZHANG_UUID,
formTemplateId: STAFFING_REQUISITION_UUID,
Expand Down Expand Up @@ -391,6 +401,7 @@ const formInstances: FormInstanceData[] = [
{
id: uuidv4(),
name: 'Network Add Change Form Instance',
description: 'Network Add Change Form Instance description',
formDocLink: DEV_FORM_DOC_LINK,
originatorId: ANSHUL_SHIRUDE_UUID,
formTemplateId: NETWORK_ADD_CHANGE_UUID,
Expand All @@ -407,6 +418,7 @@ const formInstances: FormInstanceData[] = [
{
id: uuidv4(),
name: 'MFA Oracle Logon Request Form Instance',
description: 'MFA Oracle Logon Request Form Instance description',
formDocLink: DEV_FORM_DOC_LINK,
originatorId: ANGELA_WEIGL_UUID,
formTemplateId: MFA_ORACLE_LOGON_REQUEST_UUID,
Expand All @@ -430,6 +442,7 @@ const formInstances: FormInstanceData[] = [
{
id: uuidv4(),
name: 'Hybrid and Remote Work Agreement Form Instance',
description: 'Hybrid and Remote Work Agreement Form Instance description',
formDocLink: DEV_FORM_DOC_LINK,
originatorId: ANSHUL_SHIRUDE_UUID,
formTemplateId: HYBRID_AND_REMOTE_WORK_AGREEMENT_UUID,
Expand All @@ -446,6 +459,7 @@ const formInstances: FormInstanceData[] = [
{
id: uuidv4(),
name: 'VPN Request Form Instance',
description: 'VPN Request Form Instance description',
formDocLink: DEV_FORM_DOC_LINK,
originatorId: IRIS_ZHANG_UUID,
formTemplateId: VPN_REQUEST_UUID,
Expand All @@ -462,6 +476,7 @@ const formInstances: FormInstanceData[] = [
{
id: uuidv4(),
name: 'Digital MFA ID Badge Request Form Instance',
description: 'Digital MFA ID Badge Request Form Instance description',
formDocLink: DEV_FORM_DOC_LINK,
originatorId: KAI_ZHENG_UUID,
formTemplateId: DIGITAL_MFA_ID_BADGE_REQUEST_UUID,
Expand All @@ -478,6 +493,7 @@ const formInstances: FormInstanceData[] = [
{
id: uuidv4(),
name: 'Travel Authorization Form Instance',
description: 'Travel Authorization Form Instance description',
formDocLink: DEV_FORM_DOC_LINK,
originatorId: ANGELA_WEIGL_UUID,
formTemplateId: TRAVEL_AUTHORIZATION_UUID,
Expand Down
2 changes: 2 additions & 0 deletions apps/server/prisma/seed.types.ts
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,7 @@ export type FormTemplateData = {
name: string;
formDocLink: string;
fieldGroups: FieldGroupData[];
description: string;
};

export type AssignedGroupData = {
Expand All @@ -65,4 +66,5 @@ export type FormInstanceData = {
originatorId: string;
formTemplateId: string;
assignedGroups: AssignedGroupData[];
description: string;
};
4 changes: 3 additions & 1 deletion apps/server/prisma/seeder.ts
Original file line number Diff line number Diff line change
Expand Up @@ -180,7 +180,7 @@ export class Seeder {
}

private async upsertFormTemplate(data: FormTemplateData) {
const { id, name, formDocLink, fieldGroups } = data;
const { id, name, formDocLink, description, fieldGroups } = data;

await this.prisma.formTemplate.upsert({
where: { id },
Expand All @@ -189,6 +189,7 @@ export class Seeder {
id,
name,
formDocLink,
description,
fieldGroups: {
create: fieldGroups.map((fieldGroup) => {
return {
Expand Down Expand Up @@ -236,6 +237,7 @@ export class Seeder {
id: data.id,
name: data.name,
formDocLink: data.formDocLink,
description: data.description,
originatorId: data.originatorId,
formTemplateId: data.formTemplateId,
assignedGroups: {
Expand Down
14 changes: 7 additions & 7 deletions apps/server/src/assigned-group/assigned-group.service.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ import { PositionsService } from '../positions/positions.service';
import { AssignedGroupService } from './assigned-group.service';
import { ConnectEmployeeDto } from './dto/create-assigned-group.dto';

let assignedGroupPositionSigner = {
const assignedGroupPositionSigner = {
id: 'assignedGroup-id',
formInstanceId: 'form-instance-id',
signerType: SignerType.POSITION,
Expand All @@ -19,7 +19,7 @@ let assignedGroupPositionSigner = {
updatedAt: new Date(1672531200),
};

let assignedGroupDepartmentSigner = {
const assignedGroupDepartmentSigner = {
id: 'assignedGroup-id',
formInstanceId: 'form-instance-id',
signerType: SignerType.DEPARTMENT,
Expand All @@ -35,7 +35,7 @@ const db = {
assignedGroup: {
findFirstOrThrow: jest.fn().mockResolvedValue(assignedGroupPositionSigner),
update: jest.fn().mockImplementation((args) => {
let val = {
const val = {
...assignedGroupPositionSigner,
...args.data,
};
Expand Down Expand Up @@ -129,7 +129,7 @@ describe('AssignedGroupService', () => {
signerDepartmentId: undefined,
signerEmployeeId: undefined,
};
let updatedSignature = await service.updateSigner(
const updatedSignature = await service.updateSigner(
'assignedGroup-id',
updateSignatureSignerDto,
);
Expand All @@ -151,7 +151,7 @@ describe('AssignedGroupService', () => {
signerDepartmentId: 'department-id',
signerEmployeeId: undefined,
};
let updatedSignature = await service.updateSigner(
const updatedSignature = await service.updateSigner(
'assignedGroup-id',
updateSignatureSignerDto,
);
Expand All @@ -173,7 +173,7 @@ describe('AssignedGroupService', () => {
signerDepartmentId: undefined,
signerEmployeeId: 'employee-id',
};
let updatedSignature = await service.updateSigner(
const updatedSignature = await service.updateSigner(
'assignedGroup-id',
updateSignatureSignerDto,
);
Expand All @@ -199,7 +199,7 @@ describe('AssignedGroupService', () => {
{ id: 'employee-id-2' },
],
};
let updatedSignature = await service.updateSigner(
const updatedSignature = await service.updateSigner(
'assignedGroup-id',
updateSignatureSignerDto,
);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,10 @@ export class CreateFormInstanceDto {
@ApiProperty()
name: string;

@IsString()
@ApiProperty()
description: string;

@IsArray()
@ArrayMinSize(1)
@ApiProperty({
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -51,6 +51,9 @@ export class FormInstanceBaseEntity implements FormInstance {
constructor(partial: Partial<FormInstanceEntity>) {
Object.assign(this, partial);
}

@ApiProperty()
description: string;
}

export class FormInstanceEntity implements FormInstance {
Expand All @@ -60,6 +63,9 @@ export class FormInstanceEntity implements FormInstance {
@ApiProperty()
name: string;

@ApiProperty()
description: string;

@ApiProperty()
formDocLink: string;

Expand Down
11 changes: 11 additions & 0 deletions apps/server/src/form-instances/form-instances.service.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -85,6 +85,7 @@ const formTemplate = {
id: formTemplateId,
name: 'Form-Template-1',
formDocLink: 'mfa.org/form1',
description: 'description',
signatureFields: [
{
id: '086885ca-ecc8-4614-8103-9a99fa0bdf6d',
Expand Down Expand Up @@ -131,6 +132,7 @@ const formInstancesArray = [
{
id: formInstance1Id,
name: formInstance1Name,
description: 'forminstance1 description',
formDocLink: '',
completed: false,
createdAt: new Date(1672531200),
Expand Down Expand Up @@ -171,6 +173,7 @@ const formInstancesArray = [
{
id: formInstance2Id,
name: formInstance2Name,
description: 'forminstance2 description',
formDocLink: '',
completed: false,
createdAt: new Date(1672531200),
Expand Down Expand Up @@ -198,6 +201,7 @@ const formInstancesArray = [
{
id: formInstance3Id,
name: formInstance3Name,
description: 'forminstance3 description',
formDocLink: '',
completed: false,
createdAt: new Date(1672531200),
Expand Down Expand Up @@ -316,6 +320,7 @@ describe('FormInstancesService', () => {
originatorId: 'originator-id',
formTemplateId: 'form-template-id',
formDocLink: 'form-doc-link',
description: 'description',
};

jest
Expand Down Expand Up @@ -348,6 +353,7 @@ describe('FormInstancesService', () => {
originatorId: 'originator-id',
formTemplateId: 'form-template-id',
formDocLink: 'form-doc-link',
description: 'description',
};

jest
Expand All @@ -373,6 +379,7 @@ describe('FormInstancesService', () => {
originatorId: 'originator-id',
formTemplateId: 'form-template-id',
formDocLink: 'form-doc-link',
description: 'description',
};

expect(service.create(createFormInstanceDto)).rejects.toThrowError(
Expand All @@ -399,6 +406,7 @@ describe('FormInstancesService', () => {
originatorId: 'originator-id',
formTemplateId: 'form-template-id',
formDocLink: 'form-doc-link',
description: 'description',
};

jest
Expand Down Expand Up @@ -429,6 +437,7 @@ describe('FormInstancesService', () => {
originatorId: 'originator-id',
formTemplateId: 'form-template-id',
formDocLink: 'form-doc-link',
description: 'description',
};

jest
Expand Down Expand Up @@ -459,6 +468,7 @@ describe('FormInstancesService', () => {
originatorId: 'originator-id',
formTemplateId: 'form-template-id',
formDocLink: 'form-doc-link',
description: 'description',
};

jest
Expand Down Expand Up @@ -489,6 +499,7 @@ describe('FormInstancesService', () => {
originatorId: 'originator-id',
formTemplateId: 'form-template-id',
formDocLink: 'form-doc-link',
description: 'description',
};

jest
Expand Down
1 change: 1 addition & 0 deletions apps/server/src/form-instances/form-instances.service.ts
Original file line number Diff line number Diff line change
Expand Up @@ -130,6 +130,7 @@ export class FormInstancesService {
data: {
name: createFormInstanceDto.name,
formDocLink: createFormInstanceDto.formDocLink,
description: createFormInstanceDto.description,
assignedGroups: {
create: createFormInstanceDto.assignedGroups.map((assignedGroup) => ({
...assignedGroup,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,11 @@ export class CreateFormTemplateDto {
@ApiProperty()
formDocLink: string;

@IsString()
@IsNotEmpty()
@ApiProperty()
description: string;

@IsArray()
@ArrayMinSize(1)
@ApiProperty({
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,9 @@ export class FormTemplateBaseEntity implements FormTemplate {
@ApiProperty()
formDocLink: string;

@ApiProperty()
description: string;

@Exclude()
createdAt: Date;

Expand Down
Loading