From 47902de43c6c7bc8fd17a311341b6bdc3fe07a1b Mon Sep 17 00:00:00 2001 From: Thomas Leese Date: Tue, 16 Jul 2024 09:00:47 +0100 Subject: [PATCH] Record who created a suitability record This adds a field on the suitability records that we can use to track who created the record. --- app/models/suitability_record.rb | 9 +++++++ config/analytics.yml | 1 + ...1_add_created_by_to_suitability_records.rb | 14 +++++++++++ db/schema.rb | 5 +++- docs/diagram.pdf | Bin 68562 -> 68578 bytes spec/factories/suitability_records.rb | 22 ++++++++++++++++++ spec/models/suitability_record_spec.rb | 22 ++++++++++++++++++ 7 files changed, 72 insertions(+), 1 deletion(-) create mode 100644 db/migrate/20240716075611_add_created_by_to_suitability_records.rb diff --git a/app/models/suitability_record.rb b/app/models/suitability_record.rb index f77f10cf8..8a6260ef7 100644 --- a/app/models/suitability_record.rb +++ b/app/models/suitability_record.rb @@ -12,6 +12,15 @@ # note :text not null # created_at :datetime not null # updated_at :datetime not null +# created_by_id :bigint not null +# +# Indexes +# +# index_suitability_records_on_created_by_id (created_by_id) +# +# Foreign Keys +# +# fk_rails_... (created_by_id => staff.id) # class SuitabilityRecord < ApplicationRecord has_and_belongs_to_many :application_forms diff --git a/config/analytics.yml b/config/analytics.yml index de44e22ef..a36725760 100644 --- a/config/analytics.yml +++ b/config/analytics.yml @@ -334,6 +334,7 @@ - archived_at - country_code - created_at + - created_by - date_of_birth - id - updated_at diff --git a/db/migrate/20240716075611_add_created_by_to_suitability_records.rb b/db/migrate/20240716075611_add_created_by_to_suitability_records.rb new file mode 100644 index 000000000..5b0e2936c --- /dev/null +++ b/db/migrate/20240716075611_add_created_by_to_suitability_records.rb @@ -0,0 +1,14 @@ +# frozen_string_literal: true + +class AddCreatedByToSuitabilityRecords < ActiveRecord::Migration[7.1] + def change + # rubocop:disable Rails/NotNullColumn + add_reference :suitability_records, + :created_by, + foreign_key: { + to_table: :staff, + }, + null: false + # rubocop:enable Rails/NotNullColumn + end +end diff --git a/db/schema.rb b/db/schema.rb index c79435680..8331a9400 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -10,7 +10,7 @@ # # It's strongly recommended that you check this file into your version control system. -ActiveRecord::Schema[7.1].define(version: 2024_07_11_100342) do +ActiveRecord::Schema[7.1].define(version: 2024_07_16_075611) do # These are extensions that must be enabled in order to support this database enable_extension "pgcrypto" enable_extension "plpgsql" @@ -513,6 +513,8 @@ t.text "archive_note", default: "", null: false t.datetime "created_at", null: false t.datetime "updated_at", null: false + t.bigint "created_by_id", null: false + t.index ["created_by_id"], name: "index_suitability_records_on_created_by_id" end create_table "teachers", force: :cascade do |t| @@ -631,6 +633,7 @@ add_foreign_key "selected_failure_reasons", "assessment_sections" add_foreign_key "suitability_record_emails", "suitability_records" add_foreign_key "suitability_record_names", "suitability_records" + add_foreign_key "suitability_records", "staff", column: "created_by_id" add_foreign_key "timeline_events", "application_forms" add_foreign_key "timeline_events", "assessment_sections" add_foreign_key "timeline_events", "assessments" diff --git a/docs/diagram.pdf b/docs/diagram.pdf index fed4da43fe811472ee8e156300471259b1257427..8cd1718fa93ea189e5b72cd1abc3236dc3772137 100644 GIT binary patch delta 21267 zcmV)zK#{-FmjvRM1dvaElN?8G;P?6!{gD%KYUlgma5%!WEuZbP!@JVneOPZWM#G^< zX@=xV;@a}BKLGixM^;rgtEYOz*bsLLomquMW+DM39{j-Ie_wIm%-#&JKfA!`o_7ywu!?$m` zKfd_8o3Dg^@e%&z@!yA=uiT4Y;ZOGBYxq~a_&|UEbn_LLFMf9;?2AtXxJ|A7i+4BO zpT7N<@Ma$0{5OC5mHQjU82{V+Q~oIRzo&m+(_6m1@jL>;YwzG|{>5AR`=0&{-~Wct z{RRH!U2IAZ5vQMjZ{o*z{utmP7$7o<22Tilpno54go$r`hvRxb{W?DLI(UVSZ+o4w zXFw)w|Bv6s8T|b}L8t$Mhkt?pe(3)Arvp2(!|RT-!@nK0cSq*Lfg5&I${!v_5NqU7 zan*dj1BgdRSDIKInrPL3RxWiJK=L!UN3D4`1k_zPCrJE%>VY#IpJng)E_*&%{0NI(C>6J1e$*be zq0oSfKN`lh5pffW-X`Q4*1V9gnl-FF?q2-mMhI9uu(W>?hpo^ycywXwU^%dW#4c#kUL> zaweuwN2_7A=2Z~@4+Bd19>2;@hHGrir8_zeWRj6gvXJTZjpVRBCGB~@>NagpRc%k1 zcPAowgwMqP=D#jsrObXjeDWT@{@;-a^(e7wa9SLHdA$az_y0^UrT2$F!@t0XaK

J9^@J zBal)6aDE1G*8$888o`c^05Jd<6MBt75zqmIdEz0ZNd(lrm<(;wx4E|wAbNlfdktV^ zoK3)g9sFr}AV7?>NS*lc3gC0E0jL1tI3u8|iBTFwg5{4Vl8$C(H8;dp8CYvl0PH+= zIK{$l@vrakpZmfRI}_i8ZSlX`$U+4O793A|uEQ(eW2aw6oUIT734pAv%y@vT}xGP072WKY(UFaGld z@(hQa|MRBRdzxREo)B5}X@Bi&oX&qefj#H>QL4!S-{-^U@dnS#?dC(N#gAW>{jQ^p zwny1mFN6{;k~>0_RxknS$bNn&7=Z?p83vh>ruo^THECS%9=mS7Dh^O)p6anx$2E18% zSDGY1)r)~PPi@k-ne+jW5R3p6Hiob=&L-dvK%xf%t;j|RAbq?5GJ+#e2BdLDKvxr^ zG>QbvA5SD5&CF_HgL_Y^7hoh&X%pOkUsBk3No^mp!u8!)=Px93u=)iFxp}4oXr)NO zouqxlKt?mZ8ro2#__f+h_i>B!TDkb2sCaC)#f5N-s9h;*UdLxM?VU#HcXEJ%yS|Mh zO5FCxO0)YEWQhq>-C0zZd=aS~#fVHZ+>?z(QJqM`rBOYQD;dOLdki5JQvA$ z8c8@8eeNU^r2~<_{b9V|bx;)wZEkVpZ!DP#A&=AeUDJvJ4&P)mKNh3PuT$v2uV)d4 ziQ~eTuYoYqH90|8DU~Hn@=Kc6gs^B~nnmfe3~YJKXv3PFlKU+1{-vCOcjYINfG?)( z31yF~(7dFnjR6iq27$^dgHi~88mBqRSXLgHf{kT`O^WfE>Mv18aby`MF42K*-9sr_` zx^DDvc-u|%eAy{D4?S=c;Gr_!PYfW&@S_F>(|W!Gh($1XNut@IZur#IGK#G4YxAp6?Q*%b+y0*7My#0VC?QfP;gc!$-Rc;BuEfBt560 z4WDz5F4HG{HPLT41?wFJ7=6ORzLUOk))^gcAMv=Mf5_HEM;x6#x8WK~_pa*!^z{c2 zV##6PadawW3OF4tp?R(%WaXKpKuEM8#hKdCsNxy7#R}4YXK*|-I8j-r|BU~9%KR?= z&?P2Ft-sq^uhWdCY;G7k>UBtA2fDb!)nOYHPN!;3(A!Mp-mgKqxeW@}c0^RbljqP} zB@CQE5n=kyZJ$k%h~Q@SP&~ipu-uv;!Dzn`LF)A$rIQZ-{uF-Pa@ly)G3Kz}d+&kL zPHdsI_ek1*uI7+%EY`Vjt@aKDKU-1wO{Q&EmLI(;m^WY5HoiH7#950|3p&N-#?~;* zOv##CQrqajLR!oCJZgWRkCeaQLe`ZDb<*;)@haDn&5mp*T3bKQLu-$;k&9ZnLcYjF zzp@JS%Q+PHQ7`AzMShaHNK@cN;Cn6R@?T_XDEi`mYsBt8YlW{W)keGG8#;Gx%4h;#pCiC`8B_Y_;r>SWgz1T7=B~-nCfCQS_*FrtpA666 zW$rySKQ~IIaJYD&HmNKX99Vmn>ccFS8~1;U)3 z$A3dIai*H0<3MhDU)^&|oYL(R+O9dFqeY5fq4}q>2)kqrsH`qeb{e5~#T=P`_CAU* z?L>=fz0b2(?8eoaFQV@EQ%gKu)^@Y=_C8AuI9cCSa`tw5j$9b$&RPz~=;p?0yD$ae zqGgfobY)U5!*(=V7{}fu#(3rPR(T+C*_wfj!*HKhJ@>`|SIH_v9Uioy+8{}7m>c8X ze-mxr_H(3qGk&#`RTjTb~>E?u;LUnj0cQacH}Z z>fe-Jtv^?<=5^%ZZJw&iU%1>eWlks730OTw*X6da^T>)T(RjUVrcW6jf)VD3z4zX9 zvMEtN#X6{1?ezBSF0em257RO;_TBfVw@r3lB(Jibb6A+Db`7uCg3@|&RM(*H{%jJbNuJj zD3(5dSP{jdUi{%yO%%g_TjKqco-z;&HunQFd>*GSEy^fNk~B?ryHc5)74P1Y%y404 zl97dUZYZA>92^LxS<`%fb74ZI+pQ-Pm1VG=&JB6*qgWW(6yqnOKz_;ut)!cByLg{< zn&_|8x#(O~TqY}Pe=9x5mih{#MLjdly$@k)R`B;q(z#DcgT1t?L~vM}#qhV_E5U{H ztK4krxQ*?Itju~0_TUkc$yL{lV_sVMsc(1>pgrY?U5V8$6a(FVc-}Zd1R}=sL)_A$ z@=1;^{52nSwTUiS5Vl)`F5E%QA-*%4l)^Xd4C`pR?ILs`P4Wy@JKc;*B^EUQWkSUR zI#`R%Q`jvqTyX{JJML-S4jmklb+BD~_JztGAvSf$jehmBh+egSIhV$-@y)0#IYn~3 zVBnLn^Qe813a@m3VvS44aIO-qL?BSH%zY~Ki~iJIn$>D2RjR`pkH*BvI=TL`D_@ZX zUO3n+UApYb_wL(Wb{Sz}>isrp_dbOEs+h?&vpzJy2U(}fi}W1-33$T?BuFs_e9RxH zf|-gB@|zGvo$gQSy<1eTO>@t(4z0-bvobzQ&L z@E)lt>rIpk>6(1`Ja33tAY_gR8)vcLSWBa2m{@(J&bp6uJ^zv9N%yMI{_|sl8&|a3 zv2{(ZiF34n+WFwdi?xtYw~#hPcgFdo#N&Oy!Tw#cD(Av=b|CoUf}XW z1YR{W*o)_{bDABU6bJ4Y`R^Sb#~{u?Z^qPfZ3yMlWKIp6c@`knt0Bat+;<~bSAmd7 zV z(A9J(jUut~hZ8+VGqXBno0pg%8_-exREeXMZKWRDpgdcuLBw9foT8(ZRL1OMU95W6 z0&Hc9Hm5-Pr!r((9a$q+=apm;^V}}ux}nTbXk%D6Z2dxqk0k2IMz(@dOB%R zqLg%hN^Gd@mc=uJ@zYz$3n9I1=2pGUG7J3^!UR`2eolJthU?i$tEBK}(H3~`;vl{> z%VeHe!|V!fl{^glw;w|jQo{`*hk$NqYWBiXqT5;gw=obEQo*_3;$BbeBs-PkOmy)M zDtph1%Hg48d8!iyZ8H~EEfZ)*=4DXmX)KX{$?9UrhWcv3(6V+B-Pi;977^ajtW*f9 zOp}prKv2}mnyY-2$!~s_8C5MGE$V5>R9EOa2pR%8S zPz)sNykn)^O24-2=7Tp>6`rH(?Eqt1zAKD_FVS$u&7}Yy?PlG zqK$ke;X>+OITGZU&icbcHoNud#TiC_;D`kh?RU{pW>AYJ*L%tf+gawnq0%VgtjrAi z5;j3Bw$kE*TatOz8Cp3r49bbn+;r2D`ndApl0JIYdCZwq%QU;l99iGwv0KhjI$Ff6 zZ-T6Cmi-w^VtQY<5*y6enY>P`AVSSi@FFt?vRjL{UfGPT*`FKE2#-ST9EDDQn~~rD z6O}yj-e7EpJ#vi|F)cSo;~YBRs-x!SU`@PhRcI^4k}f=4hbk8d<$vD;Jd_0Um3e*|T)ePXSJ18JYzmazV zV7wjxoDaRmpa|&DZYHRFdTA1W0d+5|YeQ{B0S^N*QwSRX5|9p#U znEv@aDbfEg`u*-F`qx!XE=L^`{S-lvSz%;%fxwK-KeD&jgnv zJ2zY;c%($D{q*uO0rdoxDm!L*2;r;9rQsl|;ZI8>(pPU%S zoj1U?VQ$>T4KOo?_4R9FePpr&2&|+QDv={dPy!WobOL^J{3tvI>pDzY5?rfE#Ya^X zH4d-QCs_gCqH~8@3ju-|ll&k;_>(XORT2{_kY|`C*y90zlldrj5EhsoRxk&-1z7q) zIOfTAAwtq0;T)DryrVMWmRUIKoaaY{sw+E!r~|YCA_)eEBbP_(kXRsXFsm9x%N18> zyMR`T^hT^QE{+V|NT&%(BM;C>kibG9L2q0@mD#V_&V;8*6D~JeH;cc;f&@-=}(a?JV0Knf`K2jNG^~vc;n;YkcJ}_qkJ^xQh^gs z89Jju&ktst>9bkDdtflw%pJYaC?_a>v=R>zO^5UYKtTC($UZrV1avk}^nBTApUmBY zM?1oQ2xReqr(1>=01juX%%G7@cN1I>0L(|Nc?608JOnuf_2m}vx$0vWWrfZkHjIU5 zRzKqrH~^IqHlFVQBKj?G5rxA!d^G|pyoQkcoW?c;bakghr2OGT#?fr7KAcfV!1d1u zDsy!-)4c=TDBR)>f4JeUI82Iap>x+`8r3U*ZiEPyiraL+zq{c!9QW@>M}0*ke^hkT zS2G+yE01~%MhPrt#@YMYk9ye$A4-t4N-Z2 z{zado;xky;9Y*90VA(^vT1Q*oQJCzf^wfUh=*}c;H09)*MI%8krSuF)9e%)bhG~y6 z+bu}nbVhrhZOcX3AB+`$6XKb}z zLPqppvWE|uhGSIa_e9s9q*c)M=j-SJ#ej)@WncUwrQ4u3q{O^KCFWslWGtgXfs6d2 zs>zJ7wPr@4TrdQ~UTS$-tf}I8p2bO6z4-MV@B9jNtZF)26gQbFVTO!RXGFEuJ>Qns zd>n6fmQelD^sh31&Ne;f&YQn~K)`Yn*loHmq>%GSU);k71#UENNYL)k+ZVlxfybfy z4%!3-M~fDo%Xn04Os%IUyozBhT82y(FE=$A4LN2tpu)aQ5n)G zZTLfZx*+VhMTpA)?j;bD3A%+EfSLdy;1D+|+$klPhB0{KL(U#_P7(%xFDo&@w&J#T zJ4uN*rALUTQQ$gjpRgbj%BwQxepnj zK8huj;1-txU4aJI*SFnN@0T6)AOoy$q3+=0VF*!xlfdJm@r=$x79m|}0w;86BHiFQ z+6{-0{ERN;Fag~NQg>2+KFm`5FaR)j7Xf%5fbQZ$SRP;#fS1{9&<18$&^2@Vc!bml zjzAd@hdFre>OPTH`OA@(!|7P>h|PlFB+wDMm(8*gIKB;8fw`+PbVY+G$HcVoNYY4< zH~tbcd-3qg*d;3uMl(#B!^uG}PFe!3ls1InfnvN}wfjnPcu5?8;sUDY9;X|5q-JVL z-ptx~9a+DmWQ&+y3o%u@HuqKK3Cjy~2H~f-;bb!Ec6se;?YVslyEHjn!-c79C1nR)Z=Lg1r$OF0_i z<-mRah}nD&KvkK4#qYN=2L?2?7JIL*v`FvIuEL}1neB~YatXN|4Pu#gqFpFE(5_fj zsx!Ukz_u~hM-62TtqnunGZkdJNcDOuyw7%~%@-18c%H@b8kUk~O;)p>h(mMSrgY?P z5!3a4`Rj;c+NGk25>Xn3}3cm-)Zg zeB0{fL0kikJ!`U+Wf}+amOOp6yi=8=USNyo86%>4H#dMQps!`^;>%fZugTW4PV@x% zaoRMTfNpC?Wen1>3z%O6VR^eSbIC;(GSyU>I7`8`Pn$ETWj5{{W@Wo1=~CE5l&{o^e&U??cIoKP zo0Fu;br(_PD5z!@`zsLE9P$7KccNYY_?nU@%OzxYB%y2<7~ZHV z?dHaMOp!N_`7=2BFxQ{pwQClJnZmJ-87Bnl>kdFTR&s#C)C|UBT0~%799k%Jc{Hx! zVTFmigc8_H!Z*-e7JF*1&=V+x>^;!iy-qJQ2f=`D3`SJwNV+7E#3>$p#1ym9d3^*zr)fl@4Y=#5?n%E9Xl4<> z`v5A|jlIU82mqwH4RMmWNdnx}AQ{@EZ*w4jR{+Q!0R66purkgj0E;Z@9;iDw;Ugq| zyaFTyN1zNyi70 zsd#%aCy_FvupAnfImK0~gu4-)s-H^|&S3$9Ur-hnV+;MOY`2T1XOT?LQ?kQZ1(GSS z!nOvtL%D}c?4W2h=v~E${kowf?BMXCtYWRN?@16$7BzdPU+u}|r36f4dKsNp8vgQnMvL; zsNYd)9$hBZ++o!YJA=>X#F>}D3U=;Ddxqoc;y&I>SA{ilF}BN4%E!_)(}UT6v6@pR za`4n2p;mIbeagn7$_V!{Q?s~D1T$3e0R3^&V1K4ehoNhMkPU>ltQM1r17h{WrCSda{Wl_A^n@5Q2OaYfEidk{a!a zwvF!Ul=3O`n*s5p#$+ct#(q1F*)TBxl?jUdHu#LCXr>BEc|oRX4E@$58+!`s#&Bxo zC{&vB;8;=xehW-5&C!m|VsJQSj^>pA5#%93q2wqs4$R_`>m%lj!O&=bj@hjx{N}J2 z1*X|YOMmJmn9wx14nN0%vtc%C7zTw@a}KD`#Q?+4VM-YmowK+xl)e|bG3JhV)dDbw z{W}EVEh-1gxo}IkDOPL?b}hErUz`s>2iQRfOj1f z{XNn7W#?H;yy(3+a*O$Yw?`n(M9ekWgiv%mlVaFR#tKXxw(JnX2y!=ubrlGCB@=Q2 zQg?LLrdA?BI6}G#)d-@FLs%Yj3xET3-t-$e&l12602#?4s4I{}f)U`Z2ASB#^d}`E z*cHfX+rQ`Nb;Pm4FS82P_1OIXcNFbSrM7;KA>XWeETQ7>Q~Jw)Z>Yz8uHXT%E?gCS z2<=9f1DP=JhY%K18I%c)u(h`XKBfrrz$IXBmNA_a;&z|4*9(=f*P)EtESlF_s5%pw z+oQJU68TBOI=wN=xPEarE_nj607hf^RocUSvFrR8CvZdkF_tTwMP{QwnKE#t`Yf;d z)|(;}7ZI)K+Qm(Oeh^{wb8TDf2(TfQ@;aWud~+&cs-DJ-{8%>imN!J6n~+6t?%Nl! zFt6Kf>ct<KLLFkF=gUrc(1)-J8>5nal=5c?GU%m*W!aj5yAEJ(&{}=SM+17gJyx?9L2HZr`Iv1R6*$zJu2_QA+Arh!rAe@50x4hKG*K!e^T#aB6&WsF zQ(Zv6!(yh3=v}RTSBQ%Td1J*r+rS^p&*YXy_r>miC%nz`jRjkzwW|08Q7Y#Zxa_V{ zGU@VdB(Hy0p^dx6$5%!ET%OJ`|MwiG&w$R-HhFKMb6C3XatIaPmD_$Az6)GoX)1!X zfaKF(l@{7**5r+=Xm_$wdmb6JOO}c@z8lp=&ZIGN1&5p_O|mOrZs(?DHG||c*tym= z`A%_vKkKJC6IB+5Lg9(xy?DRcHRSfvJh;rf&!&kFIo;Ch>NA@yWGYs%H1z$hwad)F zA1!uOB^QcDxhaWoz82M`FJ7`>J~xo7-yj07iCgS$JPm+yuxVFbniotli}rygX}K zI{;wBN&`fM3ObJLORd`6)Dhzy(Pn1pw%A}56NQy%v4p5WE0BR

})r99ANway;XI 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 diff --git a/spec/factories/suitability_records.rb b/spec/factories/suitability_records.rb index ebc17d781..01270dfac 100644 --- a/spec/factories/suitability_records.rb +++ b/spec/factories/suitability_records.rb @@ -1,5 +1,27 @@ # frozen_string_literal: true +# == Schema Information +# +# Table name: suitability_records +# +# id :bigint not null, primary key +# archive_note :text default(""), not null +# archived_at :datetime +# country_code :text default(""), not null +# date_of_birth :date +# note :text not null +# created_at :datetime not null +# updated_at :datetime not null +# created_by_id :bigint not null +# +# Indexes +# +# index_suitability_records_on_created_by_id (created_by_id) +# +# Foreign Keys +# +# fk_rails_... (created_by_id => staff.id) +# FactoryBot.define do factory :suitability_record do note { Faker::Lorem.sentence } diff --git a/spec/models/suitability_record_spec.rb b/spec/models/suitability_record_spec.rb index e2a6918d5..f815806b2 100644 --- a/spec/models/suitability_record_spec.rb +++ b/spec/models/suitability_record_spec.rb @@ -1,5 +1,27 @@ # frozen_string_literal: true +# == Schema Information +# +# Table name: suitability_records +# +# id :bigint not null, primary key +# archive_note :text default(""), not null +# archived_at :datetime +# country_code :text default(""), not null +# date_of_birth :date +# note :text not null +# created_at :datetime not null +# updated_at :datetime not null +# created_by_id :bigint not null +# +# Indexes +# +# index_suitability_records_on_created_by_id (created_by_id) +# +# Foreign Keys +# +# fk_rails_... (created_by_id => staff.id) +# require "rails_helper" RSpec.describe SuitabilityRecord, type: :model do