From 4c011cd0606faa6ca015bb719d3577dce610e872 Mon Sep 17 00:00:00 2001
From: whb <17803890193@163.com>
Date: Wed, 17 Apr 2024 16:04:00 +0800
Subject: [PATCH 1/3] =?UTF-8?q?=E5=AE=8C=E6=88=90=E8=B4=A2=E5=8A=A1?=
 =?UTF-8?q?=E6=8C=87=E6=A0=87=E5=AF=BC=E5=87=BA?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 .../StuExportToExcelController.java           | 166 +++++++++++++++++-
 .../service/impl/StuRateServiceImpl.java      |  18 +-
 src/main/resources/template/财务指标.xls  | Bin 0 -> 24064 bytes
 3 files changed, 168 insertions(+), 16 deletions(-)
 create mode 100644 src/main/resources/template/财务指标.xls

diff --git a/src/main/java/com/sztzjy/digital_credit/controller/StuExportToExcelController.java b/src/main/java/com/sztzjy/digital_credit/controller/StuExportToExcelController.java
index 3d41299..ad22f60 100644
--- a/src/main/java/com/sztzjy/digital_credit/controller/StuExportToExcelController.java
+++ b/src/main/java/com/sztzjy/digital_credit/controller/StuExportToExcelController.java
@@ -13,9 +13,7 @@ import com.alibaba.excel.write.metadata.fill.FillConfig;
 import com.alibaba.excel.write.metadata.fill.FillWrapper;
 import com.sztzjy.digital_credit.annotation.AnonymousAccess;
 import com.sztzjy.digital_credit.entity.*;
-import com.sztzjy.digital_credit.mapper.StuFinancialStatementsMapper;
-import com.sztzjy.digital_credit.mapper.StuOperationAssetAnalysisModuleMapper;
-import com.sztzjy.digital_credit.mapper.StuScoreModuleMapper;
+import com.sztzjy.digital_credit.mapper.*;
 import com.sztzjy.digital_credit.util.excel.FilePortUtil;
 
 import com.sztzjy.digital_credit.util.file.IFileUtil;
@@ -64,10 +62,168 @@ public class StuExportToExcelController {
     @Autowired
     private StuOperationAssetAnalysisModuleMapper operationAssetAnalysisModuleMapper;
 
+    @Autowired
+    private StuProfitAbilityMapper profitAbilityMapper;
+
+    @Autowired
+    private StuSolvencyMapper solvencyMapper;
+
+    @Autowired
+    private StuOperatingCapacityMapper operatingCapacityMapper;
+
+
+    @Autowired
+    private StuGrowthAbilityMapper growthAbilityMapper;
+
+    @Autowired
+    private StuDuPontAnalysisMapper duPontAnalysisMapper;
+
+
+
+
+
+
+    @ApiOperation("财务指标")
+    @GetMapping("/financialIndexExport")
+    @AnonymousAccess
+    public void financialIndexExport(HttpServletResponse response, @RequestParam("userId") String userId) {
+        Map<String, Object> sheetMap = new HashMap<>();
+
+        //盈利能力
+        StuProfitAbilityExample profitAbilityExample = new StuProfitAbilityExample();
+        profitAbilityExample.createCriteria().andUserIdEqualTo(userId);
+        List<StuProfitAbility> profitAbilityList = profitAbilityMapper.selectByExample(profitAbilityExample);
+        if (!profitAbilityList.isEmpty()){
+
+            sheetMap.put("data1", profitAbilityList.get(0).getGrossMargin());
+            sheetMap.put("data2", profitAbilityList.get(0).getReturnAssetRoa());
+            sheetMap.put("data3", profitAbilityList.get(0).getReturnEquityRoe());
+            sheetMap.put("data4", profitAbilityList.get(0).getNetOperatProfitMargin());
+        }
+
+
+
+        //偿债能力
+        StuSolvencyExample solvencyExample = new StuSolvencyExample();
+        solvencyExample.createCriteria().andUserIdEqualTo(userId);
+        List<StuSolvency> stuSolvencyList = solvencyMapper.selectByExample(solvencyExample);
+        if (!stuSolvencyList.isEmpty()){
+
+            //与模板对应字段-值设置
+
+            sheetMap.put("data5", stuSolvencyList.get(0).getCurrentRatio());
+            sheetMap.put("data6", stuSolvencyList.get(0).getAssetLiabilityRatio());
+            sheetMap.put("data7", stuSolvencyList.get(0).getEquityRatio());
+            sheetMap.put("data8", stuSolvencyList.get(0).getEquityMultiplier());
+
+            sheetMap.put("data9", stuSolvencyList.get(0).getQuickRatio());
+            sheetMap.put("data10", stuSolvencyList.get(0).getCashRatio());
+        }
+
+
+        //营运能力
+        StuOperatingCapacityExample operatingCapacityExample = new StuOperatingCapacityExample();
+        operatingCapacityExample.createCriteria().andUserIdEqualTo(userId);
+        List<StuOperatingCapacity> operatingCapacityList = operatingCapacityMapper.selectByExample(operatingCapacityExample);
+        if (!operatingCapacityList.isEmpty()){
+
+            //与模板对应字段-值设置
+            sheetMap.put("data11", operatingCapacityList.get(0).getTotalAssetTurnover());
+            sheetMap.put("data12", operatingCapacityList.get(0).getCurrentAssetTurnover());
+            sheetMap.put("data13", operatingCapacityList.get(0).getAccountsReceivalTurnoverRate());
+            sheetMap.put("data14", operatingCapacityList.get(0).getInventoryTurnoverRate());
+
+        }
+
+
+        //成长能力
+        StuGrowthAbilityExample growthAbilityExample = new StuGrowthAbilityExample();
+        growthAbilityExample.createCriteria().andUserIdEqualTo(userId);
+        List<StuGrowthAbility> growthAbilityList = growthAbilityMapper.selectByExample(growthAbilityExample);
+        if (!growthAbilityList.isEmpty()){
+
+            //与模板对应字段-值设置
+            sheetMap.put("data15", growthAbilityList.get(0).getYearGrowth());
+
+        }
+
+        //杜邦分析
+        StuDuPontAnalysisExample duPontAnalysisExample = new StuDuPontAnalysisExample();
+        duPontAnalysisExample.createCriteria().andUserIdEqualTo(userId);
+        List<StuDuPontAnalysis> duPontAnalysisList = duPontAnalysisMapper.selectByExample(duPontAnalysisExample);
+        if (!duPontAnalysisList.isEmpty()){
+
+            //与模板对应字段-值设置
+            sheetMap.put("data16", duPontAnalysisList.get(0).getNetOperatProfitMargin());
+            sheetMap.put("data17", duPontAnalysisList.get(0).getTotalAssetTurnover());
+            sheetMap.put("data18", duPontAnalysisList.get(0).getEquityMultiplier());
+            sheetMap.put("data19", duPontAnalysisList.get(0).getNetPrifitMarginTotalAsset());
+            sheetMap.put("data20", duPontAnalysisList.get(0).getReturnEquity());
+
+        }
+
+
+        ExcelWriter excelWriter = null;
+        InputStream inputStream = null;
+        ServletOutputStream outputStream = null;
+
+        try {
+
+            ClassPathResource classPathResource = new ClassPathResource("/template/财务指标.xls");
+            inputStream = classPathResource.getInputStream();
+            outputStream = response.getOutputStream();
+
+            excelWriter = EasyExcel.write(outputStream).inMemory(Boolean.TRUE).withTemplate(inputStream).excelType(ExcelTypeEnum.XLS).build();
+            WriteSheet writeSheet = EasyExcel.writerSheet().build();
+            //FillConfig fillConfig = FillConfig.builder().forceNewRow(Boolean.TRUE).build();
+            excelWriter.fill(sheetMap, writeSheet);
+
+
+            String fileName = URLEncoder.encode("财务指标", "UTF-8").replaceAll("\\+", "%20");
+            response.setContentType("application/vnd.ms-excel");
+            response.setCharacterEncoding("utf-8");
+            response.setHeader("Content-disposition", "attachment;filename*=utf-8''" + fileName + ".xls");
+            excelWriter.finish();
+
+
+        } catch (IOException e) {
+            throw new RuntimeException(e);
+        }finally {
+            // 千万别忘记finish 会帮忙关闭流
+            if (excelWriter != null) {
+                excelWriter.finish();
+            }
+            //关闭流
+            if (outputStream != null) {
+                try {
+                    outputStream.close();
+                } catch (IOException e) {
+                    e.printStackTrace();
+                }
+            }
+            if (inputStream != null) {
+                try {
+                    inputStream.close();
+                } catch (IOException e) {
+                    e.printStackTrace();
+                }
+            }
+        }
+
+
+
+
+
+
+
+
+
+
+
+    }
+
 
 
-    //TODO
-    // 财务指标Excel 未导出
 
 
     @AnonymousAccess
diff --git a/src/main/java/com/sztzjy/digital_credit/service/impl/StuRateServiceImpl.java b/src/main/java/com/sztzjy/digital_credit/service/impl/StuRateServiceImpl.java
index 4abaf90..2b08379 100644
--- a/src/main/java/com/sztzjy/digital_credit/service/impl/StuRateServiceImpl.java
+++ b/src/main/java/com/sztzjy/digital_credit/service/impl/StuRateServiceImpl.java
@@ -430,21 +430,17 @@ public class StuRateServiceImpl implements StuRateService {
         ratingResultMapper.deleteByExample(stuRatingResultExample);
 
 
-//        StuScoreModuleExample stuOperationAssetAnalysisModuleExample = new StuScoreModuleExample();
-//        stuOperationAssetAnalysisModuleExample.createCriteria().andUserIdEqualTo(userId);
-//        operationAssetAnalysisModuleMapper.deleteByExample(stuOperationAssetAnalysisModuleExample);
-//
-//
-//        StuDuPontAnalysisExample stuDuPontAnalysisExample = new StuDuPontAnalysisExample();
-//        stuDuPontAnalysisExample.createCriteria().andUserIdEqualTo(userId);
-//        duPontAnalysisMapper.deleteByExample(stuDuPontAnalysisExample);
+        StuScoreModuleExample stuScoreModuleExample = new StuScoreModuleExample();
+        stuScoreModuleExample.createCriteria().andUserIdEqualTo(userId);
+        scoreModuleMapper.deleteByExample(stuScoreModuleExample);
 
 
+        StuSolvencyExample stuSolvencyExample = new StuSolvencyExample();
+        stuSolvencyExample.createCriteria().andUserIdEqualTo(userId);
+        solvencyMapper.deleteByExample(stuSolvencyExample);
 
 
-
-
-        return null;
+        return new ResultEntity<>(HttpStatus.OK);
     }
 
     //增信措施自动评分
diff --git a/src/main/resources/template/财务指标.xls b/src/main/resources/template/财务指标.xls
new file mode 100644
index 0000000000000000000000000000000000000000..beeec4ee30143e2b939477ffe0b022bbcad434db
GIT binary patch
literal 24064
zcmeG^2Urx>)^~PSSP&Ex5J6!<1VliJ6g9|#SV20dQL(OKH)0SH3B(ekf}kc=qDDhB
z8oMdRh7}7Y_L^9OHMYDM#c1|FXYS6<?Cj23{`ddid+&R9zdLvCxu@N8&n<KB>>T^a
z{>tYYU9J*QXiwziZ><%v5WpF@$H)ddLR!EL=Kt1ewG>DQ-2ONG8(H85=;{xRCx@tj
zSO+4uxg|s;L@S8a5bHv;foKb{9>n?(!3Bst#0C%>LUe%W2+;{*BZ$rr8$)z~=nAn3
z#HJA4Ai6_TLG*y=39%VOFNn<{dPDSq=nD~j3u8;T4-n-4jZFM6t!gS61HbXm79GiG
zNXL<Uu=1-1C-4}qf-)deDe+23C3_{EXhN^c_WSQ&RCa;!!z?-(gdQM$92r3dvU-f5
zz}L7oAToxNkLjzBqJ}rRQ_PMe9crEjHIE|$;5y({7zl72Kt2O`>_4w6AIYClGlBKe
z$h%||{06YL?+UFjgtZAm#*<-iKN<-ng0HUr*mqx5KKA2E9X~52^kR!TWSi|#%iTo`
zv4D2DN@Qe%VmDj~xdyQh84G$c!6br2k{}XFRR8xOmepYZgE~}#furD#fzbr>(B^P$
z$X?g87~9!v6gv{Zyfo@^t4P4W*{P>Y&El1?S5Nj@53UUPj-|Q4LV{t8ItcjM!ZK`3
zU|)xcf%X^%Z7`Aq!^rkCUrIg#o6qc>mh>j@hb*7%SOEba7b1X5N*7a6t)dC5vw+*{
zYU@Jwf;Kun64IrlNWpDbtr#P%93<dMiCS2jfM-J+g%eZOkiooTYz==2e1!xY+uAgL
zLfV_)kND9h^&uoo0&XP%50l`pl)$%_z_*itH<W-|Nx;SJ;-+W`V?jg0c#;~eCrsP^
z5SziM(2h_@ADE_jsGA}TMtWyc=)FlQ(U8HUuLNNPtU($Z69$4TDQUFKO%Vf27dL5A
z^O89x!-yXVAxuA_(kbW%cYMtd-i{cS8rIzuh9_9Zlcl1xYWChu(E}FKEvPUlF$k9u
zfMrsw^P!2_O4ox{*Oab?!ld!2;ArRqJQuEBLrF^*K3O9g)=SLJxOS#6%!z6ReczEV
zeP9_WY^4^^N_}7{X$bEF)^=000nc<XO~U(#6mdK7PFFE8r?hFQw3N#32$EIi$jxaW
zWHgj)peFVOhZTCLP?vsS0cv7jfpvH`=#3OZXkx4d!m%~cUioArbtPZ$HZO?g1@bs(
zL%vbOVtG7s!iSMfv_F~_jv7*Jd3J_k(e7dlDv+n;YTAQr25j(Ku~B(cV{`HXu*@{;
zE9_GeA&<2xm^HXisX{md*~eN~kNxp#a9l)~!k2<0S5x@^$#4c*f)CWr1bPf>|EF9D
z2j3_Gw~~Nwl7MeE3CHJV&i-nZS_Laxw%zer+7ui-fx^q}?Vaj6)g=lS79XFvP2uBn
zxG6Y3o122;^EwMZML-)hJg!rH@EP6|9G~k2aL7`8JskX2STEcIVDUe(x1V2kKIq?y
z)gJ`u;k(>-xf6vI3&*_zLwpLy{R0XgGKAtsu=u#Apwp*6$OSa25AHMQ-~-gEAbq`X
z?}3GH(dnu1WBK5IgdseDh2tKDA-p9ER~f;BSh$A~+*JbZF2ToN0v;y8hx&uDTxw@y
zJ*D8(p2mEr{f*&H5_(F(Ltj&WDLYH)A1=Y4+SyotDf>H1)T@mIf9gNR{H5$b;kd`f
z;InF^y*>CXJi1fA#VwJS!WBHer2t>4Q0n>Mz8%j;sUkAUANTSM;5xauzxPtO0{H0g
zaW9Y|o}B)A{)T+idVB-8f`{Wi1TPohIz2^j1qV0aBe0tRTwotVJM;P*+F1fFs4wn$
z@_GWkPESKPufGVc*Wa*Rczh9Dk8e<~m(+Kn(t%7wM*7f;)IQ9MDo_TH0s}aX?lRcN
zg`F!Fm)|q12Tyh~V*(uBd4eKRq~B!I5fq3d;J9xAJI7SQrcIml1lA^CmL_0I6EKAi
zrqx#K`AKMu6AZ60V84t2XC6v``*;|+ARz&#Bwj*cVWC(;jL0T9SIObA)Iq<~&Pl+Q
zkdP{7f)m^SnhDN=920Fc?i+H!j3#0y!YR|N!Dfr<?+yf(dY=#)jPnU0jPnU0jPnU0
zOz#ub3-t}ad3JPkt{$dqMX^#U1Er#)qxA%wQbHJ~ln}-#C4_NG{r>y!dVai8ybKAY
zJPec))|OLB2;-Cz!Z@XbFmp;hD=_LHVoSkbFK9ktZ8@ccFit5Uj8jSo<CLnXs4%jW
za5GzHDRFmb21-#+#*s{0#27I#QL_w@V|oFp0_tYmF;Qden5Mc218^=#Xon|Rav-Lo
z;DHA}8fgcc%X*ju6K?}1+A3ov<;3D;OneNP+%4A=aBf+yd8sD8dL~jf0R(-Js7?z&
zpf-^c&5$=Vte=2Mb;27m!Sh5;laNqTO!Reu8;R=p3z*QOQ;vumO1V6y5=;W1h|@$f
z1lKHF;F!FEvjqYT$D}&p4VknOFbN4Y#e~xgQ;F&X37F_l`B*xxI&4OFkzf)mV4@j<
z>oqQLOkTkzAwa|1<PDjG3Ydh1nqtCfhN(n#S__!aqjipms}7gPRDwwu6miwj48gTO
z7dR%bV3Tm5;h0n>ydjea0h5qWQ%pF`FqNoIq<{&1)qo@7s>9_mm0;2ain!`%h6tCr
z9FteDNm~Jv>V!9B(oVo6B-9iWK+p$?>bwOATy^NH7aRpw9WIZl1d}Kz;+SZLSP3XN
zCa++V_5vo=32(?GTEHYE)D#nea$I$MMe}nU;4u2fmC(>o{p3}k6ytU=gDYOa#se<D
zf*0~dyE4X)K?$!*kZP8|#DiAa>k_2Dj6iIl3?O(_V`fU?&XvJ@SwysRlrChBz||Rs
zXk{caYu|JrC5UBLB-dhUU!-8u21Rw)v|*72n>rL(vZ-T{l1-h8tRS_5lN>mqzcupk
zY$FjeYY>4YRD>;@;3x<)WM;SYX&V2bbChm|8p-Nv6@)9LBv$NO1dL_&f(1t0<@JF(
zmQd9Ca7F{ZaDDpW**^U#f0c-Tn6?h#%Q>Z7Q7Po3f}<HDrQ~*?6j#cTG~r1?Opw^?
zNpM<2>)OJ*RC+0)CP*6SNpKRQByK!OYZD|5^&~iDA&C{dsReB@w^Wm2WG$HkSPM%y
zR24;iW&+ibMSZ46^+43mXU>1$n5z?@VhQD1A2ynx4Jxy1hGwL7NO>!Jj#AtPji3$q
za*nJSlKuTj#ULp%XCULtxjJ~EVx32}>u;o(yfG+-B^1>X-c@5@py)M6=?tbsAPo%T
zqGd=yFU-xAS;FgVfOfyHF`6r&-S11$tcVW^mX!r08VP2afM6`4sE%+br6f$-e)8gJ
znjXE&7mS-k-OSri4MkI}l8CV=3lBKlsz;a*I7x3#RB$G(GD4iAL^niq8W@F}wjLb7
zNmC%+T$u+P3IglaW)O{8y8~-;6ddc8$U6MBSgU}wISR_!5e~_XY>EaD+tkCzrd)sY
z05h7kDY6sW)YGg@dDemEZEA{jGqX13S+_E8Q&X(H%-WP=?Fj8;WK$fd#5QeiWK(Xy
z@_^yftWA-f*rwiQZOXF_F>g~-tbNSdlxH1k-lnEl`<k^W$J!CPiIGilBp2JXg^^9U
z5#0mcNiu6wWGA+%pIMvoti#RQ)D-KMW^Kx|jxcXiQ>^{X+LUAM2yZnS*)+_AO#_T<
ziqB+p&}(DfrpQig(?GK}<yp5iZ&OpOTbZ>f&$^v?o0?)BWY(q}Ye({yu}#BG*fiM4
zruc|TZ5n0XrpQig(-5;Z<yp5kZ&OpOL(SThXB}<crlwf8HfvMLdXUnI3=+)8POO>m
zGEaHbW}ct~Vaf4w1s)#}GA;3%8dEOd7RLB&%_vPPX&gL&qc}XK1HhClw-NdCoC+W}
z10tSC2r=3F?gK^-7^)c;m^W&qZFP6+y(&BP)q>9_l%0<lw9U8Uz)eTiZTpjSD0hje
zT6SXT#j`cnCrA8v+2Qo!c-vn7<(9THG)DtJ{_f#K|CO$*E_7+K-+$!QD#shQ^PCTD
zDQS4Q>%p9qf@Y`7rmp?w7uA_>TAucJ;Qve3R<GevGduUVb@EAzYaQ>l^tP5ozF@F|
zyxIv(=N-EUn_4P3>_OuhsU3_8-|N+VjBAA5jz+f%d;Yd#_TanCLOd<MZGX)>w?SOD
z8BM<GJAA(VgsrL;?S61Pv{C)x@?pp0KfLsw?*)r4MOi2MT@UZLSXNuN>9`&(Q<o2~
zI_MEFu%Flc#aFLaKeXNY!??!-Vs{Lxt}|d*)%w1xpSdN<o#wQ@^K?Sz$)$mREh+Q0
zwb!(`|1`({`I>F+AB?SY@1V2KIr(4dzb%{P9>4Hjx}Rs!0I$G}HY*>F+><xSYhq1G
z^IvZ%o_lZEl(9CvrIqJb4=Q|_@4oYH*r0#mgsa~s?VjK_)kW#+?zb|pscYg0YmXbt
z<F`&I&aRr)I5szAPyLDqDPCT0-Flkw;%1NB_36hF2gKD_^xivqnbvyS9##41+imh&
z2l}i%>-zXc*6n`sReh=+_kJ;CSFdL$iGyOpiSn7ZH*dUr=|PzF*UaJQwiBPcz2n}Z
zsS(e|tbgayh*gDk*T-ztK6CjX=vJ&lz;=t8rw3eiW{ny3?p>#>$>S#G*j`?J|M8sw
zzzS}Dd%SJmQLVq*HuLnnGOHDqiFw;n+_!vdeKX!6y+g0Q!)I8<*L?YQ{4x0fOOmXf
z;ng*&%});%b&_}WjXSiU;e)ccjp-+sH7zc_S(~gn^U<l|CCbP{gR6Ee@i=E6zkYqc
z=TD#Q4}I`>=E{|&OP02OR`bWB>nA%$-`wfHSN=(-FR!k7u<Pkx7n64ET2k=j&Y>Qo
zw+B7irTydlm|Y*-w%F7D?U46sAD@g~5?xSx^k(7T5BD*buV;_k)7fkHo^8{Uwzu>D
z@SEF}=c*qq*tKxKZ>N2m)WJ`4zrTOvoa|D0vpak44QiM7B(lrLb@N93S$VB(acx3_
zs_KYq`($pxot`wFU~%Q6MMpk<m_4u4{X@0Y`+kYJbuMf|ql(Poe{HteGWYvFxr0U?
z-`+jNFJ(%af7IjR?!mcV-*4}c*{8Hi<--0AZ~x+RslDfqWyJ^2`F&Awoaw4+mD4Du
z%QudTSG<3z{fc!NPabY8nPU6ls>#olX)TM-9!prhuV&no2E#3$+Z{UBaa`oh52xR)
zYqfAzkR~g7U+niIN59i^{p>$nRqpq<xF63S*lep;+Wen7>{~GXw~fOhI(5CVr(Rc=
z#pg=*J9Kl%|8C*<-K7h5bT~EPpuAhemw&nK&ivsgr%BtEm3vocK3wG!djDWeSoPP>
zn*MlOF<@<o>bH4WK3-92+yBw{(vjS%%h&g9&99fa@4bfiqkWG@wT>S%=$zx-fIB;4
zclF5D7Op?G_|M;AT&QrE+-=R?{vTXBbMwLA>yO@#^=*2%&HibzODpTNUN)9YKAhOE
z?K}BRj|_aeDmNsd|5eXfTS}@HKA&<h&v}JS;)Ae$ZKlUvZQCI0fZ}JD#~V(5x94Q9
zar^c>KhtZ?SFS?>-DHPq^1ex#wYMbZ#;qYE^5^>fGUD6WJ0ArqeJ@6M3`iI<_grpS
zc7R1j*&i=lCf!hd-s8{Ao?Dvw2ey1NGkxtwGF+2+Wy-I+x30b(ai_nm)7Vk54%7US
z@>e%HfBMkG#S1SvB&?CGeweyqRgvb)i!<&XsQK!2O-1gkgx+4o<2HA_b?}y(_dthh
z%iEs5m7l$R*t&~HK6(3(bl(|0om;;>Ut6-jV~%a^nhWZ*v=-TSJ{$l1My|Y@x4Ku=
z(#m^H+j}=YH7nVtcU-f)TE{L+#yp+r8-HNxZyxqHnX}91u8E2Dy5ZKmYgLaUtxl@b
z)_N@JJ*uwa>SxW*TJ*|4dobq2J+JGB6qY9vwgoTu{H(Cf)StfDQ=7iHUz4x>&)b}c
zD&E_0Ov2FT^(HkKv1Pblk%#@m87t>?4)uDNxyfOZ=Ed69U&iJhJv-@#kA8nAZnLvv
z)BO(rXtJ(i`xh&AeHt9J({aQ{MJ^sKT&_l@+McmleY*RRb+dEMoqPAE@YLC%aXIHh
z12R(jo?JWdjLppO4GoUW49lN<+H>Erz@zn+#y?s8>$i>G{%%~N?>2>Ed-2j0cbBa2
za6UC}Zm&}g*WYcNxu|dPg&l)7R)((nY-LyH)tCEx-*<ZN^Ucan?!Gd$ZS=XdnE^K4
zoo;q(I_$;XskL?GuF>Stt=-#xZv3fdBc<(y7naiV9nOjU#%V_8uyZ0mWmKG5dGiM-
z3x^$3eCdVa1S00t(w~O!4YHZ`VCs&^#|u(U>~(IQ+p40hL#q`9<f?CBwx{bw*Si;!
zsw}LxDW`n#;K^4}f3KTad-ao>DyK!OE%sjP5Pc;3YHrl7!byjwezCH-vUlFtk5;^Y
z@tc0zlaH@>>u9iRMVD`bK5bC{<MT<|Q`f}~K7PpVM7NF?TMzUqTsixlerMemENOft
zJmKVHr_{3%{nwSQI;7paH>i3^((c0b{xuyHqa!{^820PH&sVj&p0=ZGm1gxRw`1RY
zUwekmil&za4Mek|DU;Y9FI&1E@La(pc&;d%MJc{`37|7qck4Yt4pW{?nxGsr=Hw4{
zv%P=$_}JQ0@+rTD*@j1ZrTli!cAdX6aN2;K3x{o+|Jk92gF-F^XRmfqw!Qu7JBxOY
z`u?|B>Qtx1>F3)G-q3&2tT7Sy9EZ-1_wDZOmFgQ9ykJ~CpKf!@kIhK0Em{}3qBQeY
z&lO+B9Nc!S%aeBtmOWa`Ox*9aW1!vpr%B^^$&0j`Uqrf0AKJ>@sqfz@F*)a_*703_
zp!!O)#j6t(hkO6<!@kRgD+krrUMHSHU7Nr$b3;gbcNjBzyk_+He(CvRH9388*|2u@
zk;J`0b{(H|c|N%&pj-JSwX*r`Nma9|mQSoaxX{b#(78=3GyZy#a3Vc+mC9+P|M}}%
zZ|3z`_vHGrT<5v}NWYztl|6NE!Sz*Z{`l)gi*2X<f|KQweZKyKnVWTXexsTjc0ny}
zf0=%JNt>S=&mCFX?2Df*y}sJgepcnClFzLAM=$G;)7K&5z<UF|e#|?3?A_X;fRUD&
zrSG?CzbLNBoXjUxGaIfsVYlas|AqyNnucBWJs*3pB4_8^_Zpq}G&?(IUQosd7XAh6
zLl)g~NgrcZTc^|UApg>R>+kw$qwW@eJ*M~2jgNBM9ajC`=J#Kp`P>LCD-Qj;e!f*Z
zs|B@V?j|M2GcpG_;^x+dVpBl@?0%`>8V&pZCJaXznD$5hv<=^cb%28=&La(lin}Qw
z>x4$?X;?3Obz#VYy0$qQTqo0j3VJ~lb_a8m*wtu2N>^CD3n@)kQ{45Cp4v9vB)!Rw
zNR{FnOuQ=Qnbv_GE>w!WXV=JL9^wZAo(Jw&8u1W39wf)tVH?>B-VBO{-j&TdLNWX&
zu~_s#Q=%M9N(3-`3Bdw(cx{L!=m|k<0nc5Qa4>=Q47|`G%qb0WRt7m6HWz|BEI?PH
zj4_gfC*iP{%%Cux0GZ&PRRYBVgT|oLc3BBLmx`5@ODbyt2NIOZ%ZN&5K=rzKt&I4g
z+4NP>3_+D?Rp@<*@(oCmjHF<jnvo)GHQG*`^|=c6HDZaU%&*9jIs(Viw179L<{OZx
zjjEwAXisx4%bDU;eZt>JmZ9$$+Mxsv%ETVZ80c1_>|lgp&=HKi$4~@UfhZ$3*oVxt
zr6HSH$~-bl(DCO0abx(U!`o8>;m^4m_yhHL_|rPxCBt8KH6#b(c=(rcKN3R*!B4~f
zu{{_{hml<PJN0-8iV!1;Qe`JnDv*uuiJ|n@mt6*DL}da_zy`){8pLG?=c2d_Uv$GV
zOvPo`x3LUUaT%H%%P<v}VXI;prs6WJFP34C7F$Ecei)+h8`xDW1tnlaY2q@j#%Mfo
z8K*fcEsV-I&2dH%)8U+p@^DQrF0<E_;oL4R!xx*84qxyVmpSXo@J~MCGJIPY>F|#}
z;xc?O7|T$n{tVW3Dx5lBi-j9v#dwx{o?0<5`{Mv&ljS-zC($Kw5qQ!ffhQp?2GqA0
z+BXw^yBQ@!`1A1{8F^0b%3`1_7$O`OAIxo$`l4uYDxMq<vdp$kf0z$l5s&pkpv#QU
z(q}@1nPAAs33G8oi_~d3mV|j9{<llNmJmz|aHBV_WMyKw=5X$`oK%to{muX<1aPbf
zQ<-9j)zJ_u6tF;g^C>Qgl_^GYT0<%5T$tQ88P(UR84O$ZdYyww8$N?I8lMFeF{4(c
zo*E(2I*iIfecVghCW}hLsjQWW9flfFM$objLl5WnOdP8*sAnWCb1yR?u?;QTkaK)C
z@&uC!Z5TvLn@>4binX&KOuPQ5Tz2}%QX^zEImpF|N#dZ%0q2vfaE*6K`w=Gj=nUSo
zw@-=5a-GTT1{Qv*Gr3LrsS!(h7Jh1^6511N-Dl{RWfrMrLq)Yidx}74MiB_Dr>{8m
z01*b-5E>qBZ=xJq9A9L%23NlauO4BCz|K#<aA9Zgg^Ri}?5;F;Led;Yi>w4fx^>6S
z4d?JcEdw8~&)(a^6+5VsJpby^iS7fFqx-RNKNjASy-s2wMS#PF=J=Kj=<^|#Gq~b*
zggBYSp2A+e_1L$feFXP-yidc!=oW(e&*4=F2DF0L3E(Fq{tSNE0K*l0)rw6SQVwT<
z<s1VFmbhjB4<*<PEk(%1NUW`b%_IL&wtOC5KOm!Q_`Dn@8LxUYPh>dc5&S<81gx`C
zhJzX2({C}TnffdYl~s^>RA(IwEh~oM1SW<dUoi}ae=!UvDh2m4vrYz11!5Q)NKA{<
zh!}<*B!=O%A%>w1#W0*E#4xm#7>3h=SU<F&7=}}mm=+%-#W38X5W~>_#4z+nF$_;e
z#By=k6T`6oh-u+q#R!H|pO_Y>JTVLplEnP*pDJP){_#W%a~Hv0u>GD8HNXkk$@(_~
zlTr+c1;52obioenmF5`8p(oOu407m$G$)4~dLQNxCyrex(HsNc4nmLH0srR1KGF$z
zs@0v@E0u(Ny1-CO>0u5fUD+P}fy^3Y$RNiMrCJVs2>Vnw@>|OHZd31Wj7I(_H6CV8
zN(<vFV52`GHvCBpauj=aG;&k0^b848BQ5rg1a^T#b4ZImikiZ|yhwN8W~WYst4d8Z
z#d;*MOB=KpjKr|8OC~A6btgU{Ln&I2w;}c*-i9z#Lk_(g<tafz2X?tbb7({KXv|@K
zQrYi@(Hv@qUW}Sq0Ug?~3)-+KQKuQ!IgQ<ULkeuYuI!c*Qec~)4b#-!fFfB(fju;h
z9dD7ME=z%)jTCh$#jzZu=%1~lK-;9TUoArl8<qln94T-v02y}gp}oeA(@|jWPJ@R5
zS}R+Y0=*q6a1Mcb6vaY4aCD{?M(d=rUqV9}@D2uWMZZT1{3a3BBLcM|(K;D8G9<Cz
zOv5&*4<*7jL5mu;362nao7e+B-zGSV@oi#Hgl&TMk7K{fhMF}1x~}XO+E6p}Y^Y0R
zChONdb(-NAlR;E)MGE*H3{ZGL4m}aS%+wX`sb4n)N!^IUy3SYMb5O9piDOX)J6|9z
ze)pg&d>w+);=g6U4mJzfK7oJ0=|-Zg&#o976~xlwn3ch9wIMBh?*p)#0}M5F)XDWm
z8xEeW(-hl1iT$P=+RzCogf_&n&CrI}>bwo%(=`GcI)en>hR&cJ@7L%FaqONrY6f4f
z0nK~?hMM7btI)6QSbxArG{iw~NrE@==okebA~DbmM@d7?&{ufPniy!-#6Ytq2AbhG
z8mAu%nzEYtu~MzUw@|arI*o92&CvS+d_o86&{Bu#2AEx;HK^`5=4R;oi#v<yufxPQ
zMk(f5kZTPC#YmYOtkgr`rI5Ga>IN3U9RK4WhUFCM2QL)jib4h4#Unp@oDhaqMZ64n
z7ms?Tiq$L-a_E`(f-3eh>X|C2i{Xfi{4z-^9jymT8w5EVaq*4S9{LfNLgb{U9&#2&
zy)OXQ0qWRZ)_{DA11dWQy@fXrX2QPaOdK|KVK8uP3cXtH0gB*Lpa=Zq@`V8QvZ{e<
z;~<Vf4#P1Hz;ZywPA>;HM#q(d3!$6H$xvk@h;XY5u!O}w(8=TI8khqcrwo8_Rzn4F
zzCn?wIEq7lI9lWQiz6z2hY?3T9LMk;RlyMlM-LnixHT^JI8+aD{u}<aEr3r)j0LH`
zNOl^VoNe>J>i;Nnb}t;+3%@7`4pOPblK=md6^agu;bkeH2=rWXlO>`T0h|Ru-VS};
zM9P)3^iVF9a`evFSCIde|Hw392|7ikmZoYMmp<3x_|L)ll!J3=980fOb9pW`<Xfrb
z;9P20&dW7~^K!*-jt`eUsgLVBhFpmv<QNR^IHJ+;H?$pH*K-h>qPtz0y7c$jq-?u2
zvz4T!&*t+u6O=*3HplWvh!Bd@aKW*%3q+JN7$T07V<F<$I1wU_u^YhY*k?09M*HE|
zx{Rm<aT!1eJ7*NtzR0>#dVx_RVEej#_}x^b!SOi})(J^4k71C~ALYqTA3a?j=xR52
zKIrdXyDko3bwsc_Fhh@lO>+DODcvZ4z3-7mLd}FD9P0G4fU8;?RPdh^URVA<NvxjD
zzq9;es0I2hj)&;ez7Qc4p|9hdk3Mb(Q4JBBOz6W{j)6;yfB`#+089-L`Bg)NP;?3|
zNdGfLTx&dph%yy`gg%`PDdrIeduM0X8#QpCgZs?*jbKWL{mHmY1*<m1&C!1^m*ow(
zU17zX2`S3Jz84SAY)R06#sSa4;Pr!mdn}~G-~ef`jtig})zwtrLl}+)AtVs?&he{u
zv|oEc8U%0I2ebca35FgP2U<izJ`^CGAQui>)wo~T2JU0vE*wfau&ezr_9MGta1<2`
caLNzsjM!mt4PfDca7B5Th66<iaC)=wKdi92q5uE@

literal 0
HcmV?d00001


From b1f35c72321bbd01ca55089bc62d518932d739d6 Mon Sep 17 00:00:00 2001
From: whb <17803890193@163.com>
Date: Tue, 23 Apr 2024 14:08:36 +0800
Subject: [PATCH 2/3] =?UTF-8?q?=E5=AE=8C=E6=88=90=E8=B4=B7=E6=AC=BE?=
 =?UTF-8?q?=E6=A1=88=E4=BE=8B?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 .../StuExperimentTrainByCreditController.java |   52 +
 .../StuExportToExcelController.java           |   25 +-
 .../entity/StuMachineLearning.java            |  439 +++
 .../entity/StuMachineLearningExample.java     | 2909 +++++++++++++++++
 .../entity/StuUserPortrait.java               |  439 +++
 .../entity/StuUserPortraitExample.java        | 2909 +++++++++++++++++
 .../mapper/StuMachineLearningMapper.java      |   30 +
 .../mapper/StuUserPortraitMapper.java         |   30 +
 .../StuExperimentTrainByCreditService.java    |   18 +
 ...StuExperimentTrainByCreditServiceImpl.java |   66 +
 .../mappers/StuMachineLearningMapper.xml      |  750 +++++
 .../mappers/StuUserPortraitMapper.xml         |  750 +++++
 12 files changed, 8401 insertions(+), 16 deletions(-)
 create mode 100644 src/main/java/com/sztzjy/digital_credit/controller/StuExperimentTrainByCreditController.java
 create mode 100644 src/main/java/com/sztzjy/digital_credit/entity/StuMachineLearning.java
 create mode 100644 src/main/java/com/sztzjy/digital_credit/entity/StuMachineLearningExample.java
 create mode 100644 src/main/java/com/sztzjy/digital_credit/entity/StuUserPortrait.java
 create mode 100644 src/main/java/com/sztzjy/digital_credit/entity/StuUserPortraitExample.java
 create mode 100644 src/main/java/com/sztzjy/digital_credit/mapper/StuMachineLearningMapper.java
 create mode 100644 src/main/java/com/sztzjy/digital_credit/mapper/StuUserPortraitMapper.java
 create mode 100644 src/main/java/com/sztzjy/digital_credit/service/StuExperimentTrainByCreditService.java
 create mode 100644 src/main/java/com/sztzjy/digital_credit/service/impl/StuExperimentTrainByCreditServiceImpl.java
 create mode 100644 src/main/resources/mappers/StuMachineLearningMapper.xml
 create mode 100644 src/main/resources/mappers/StuUserPortraitMapper.xml

diff --git a/src/main/java/com/sztzjy/digital_credit/controller/StuExperimentTrainByCreditController.java b/src/main/java/com/sztzjy/digital_credit/controller/StuExperimentTrainByCreditController.java
new file mode 100644
index 0000000..6261313
--- /dev/null
+++ b/src/main/java/com/sztzjy/digital_credit/controller/StuExperimentTrainByCreditController.java
@@ -0,0 +1,52 @@
+package com.sztzjy.digital_credit.controller;
+
+import com.sztzjy.digital_credit.annotation.AnonymousAccess;
+import com.sztzjy.digital_credit.entity.StuMachineLearning;
+import com.sztzjy.digital_credit.service.StuExperimentTrainByCreditService;
+import com.sztzjy.digital_credit.util.ResultEntity;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import javax.annotation.Resource;
+
+/**
+ * @author 17803
+ * @date 2024-04-23 9:38
+ */
+
+@RestController
+@RequestMapping("api/stu/digitalCreditTrain")
+@Api(tags = "数字征信实验实训")
+public class StuExperimentTrainByCreditController {
+
+
+
+    @Autowired
+    private StuExperimentTrainByCreditService experimentTrainByCreditService;
+
+
+    @ApiOperation("前端校验数据(自动保存接口)")
+    @AnonymousAccess
+    @PostMapping("/trainByPublicSave")
+    public ResultEntity trainByPublicSave(@RequestBody StuMachineLearning learning){
+
+        return  experimentTrainByCreditService.trainByPublicSave(learning);
+
+
+    }
+
+
+
+
+
+
+
+
+
+
+}
diff --git a/src/main/java/com/sztzjy/digital_credit/controller/StuExportToExcelController.java b/src/main/java/com/sztzjy/digital_credit/controller/StuExportToExcelController.java
index ad22f60..6ff75af 100644
--- a/src/main/java/com/sztzjy/digital_credit/controller/StuExportToExcelController.java
+++ b/src/main/java/com/sztzjy/digital_credit/controller/StuExportToExcelController.java
@@ -80,9 +80,6 @@ public class StuExportToExcelController {
 
 
 
-
-
-
     @ApiOperation("财务指标")
     @GetMapping("/financialIndexExport")
     @AnonymousAccess
@@ -209,23 +206,10 @@ public class StuExportToExcelController {
                 }
             }
         }
-
-
-
-
-
-
-
-
-
-
-
     }
 
 
 
-
-
     @AnonymousAccess
     @GetMapping("/generalViewExport")
     @ApiOperation("资产负债表")
@@ -425,6 +409,15 @@ public class StuExportToExcelController {
 
 
 
+    @ApiOperation("学历与违约:导出Excel")
+    @GetMapping("/getExcelByEducation")
+    @AnonymousAccess
+    public void getExcelByEducation(HttpServletResponse response, @RequestParam("userId") String userId) {
+
+        iFileUtil.download(response,"/excel/学历与违约.xls");
+
+    }
+
 
 
 
diff --git a/src/main/java/com/sztzjy/digital_credit/entity/StuMachineLearning.java b/src/main/java/com/sztzjy/digital_credit/entity/StuMachineLearning.java
new file mode 100644
index 0000000..3212dff
--- /dev/null
+++ b/src/main/java/com/sztzjy/digital_credit/entity/StuMachineLearning.java
@@ -0,0 +1,439 @@
+package com.sztzjy.digital_credit.entity;
+
+import io.swagger.annotations.ApiModelProperty;
+/**
+ * 实验实训根据模块存储
+ *
+ * @author whb
+ * stu_machine_learning
+ */
+public class StuMachineLearning {
+    @ApiModelProperty("id")
+    private Integer id;
+
+    @ApiModelProperty("步骤一  a")
+    private String stepOneA;
+
+    @ApiModelProperty("步骤一  b")
+    private String stepOneB;
+
+    @ApiModelProperty("步骤一  c")
+    private String stepOneC;
+
+    @ApiModelProperty("步骤一  d")
+    private String stepOneD;
+
+    @ApiModelProperty("4")
+    private String stepTwoA;
+
+    @ApiModelProperty("5")
+    private String stepTwoB;
+
+    @ApiModelProperty("6")
+    private String stepTwoC;
+
+    @ApiModelProperty("7")
+    private String stepThreeA;
+
+    @ApiModelProperty("8")
+    private String stepThreeB;
+
+    @ApiModelProperty("9")
+    private String stepThreeC;
+
+    @ApiModelProperty("10")
+    private String stepThreeD;
+
+    @ApiModelProperty("11")
+    private String stepFourA;
+
+    @ApiModelProperty("12")
+    private String stepFourB;
+
+    @ApiModelProperty("13")
+    private String stepFourC;
+
+    @ApiModelProperty("14")
+    private String stepFourD;
+
+    @ApiModelProperty("15")
+    private String stepFiveA;
+
+    @ApiModelProperty("16")
+    private String stepFiveB;
+
+    @ApiModelProperty("17")
+    private String stepFiveC;
+
+    @ApiModelProperty("18")
+    private String stepFiveD;
+
+    @ApiModelProperty("19")
+    private String stepSixA;
+
+    @ApiModelProperty("20")
+    private String stepSixB;
+
+    @ApiModelProperty("21")
+    private String stepSixC;
+
+    @ApiModelProperty("22")
+    private String stepSixD;
+
+    @ApiModelProperty("23")
+    private String stepSevenA;
+
+    @ApiModelProperty("24")
+    private String stepSevenB;
+
+    @ApiModelProperty("25")
+    private String stepSevenC;
+
+    @ApiModelProperty("26")
+    private String stepSevenD;
+
+    @ApiModelProperty("27")
+    private String stepEightA;
+
+    @ApiModelProperty("28")
+    private String stepEightB;
+
+    @ApiModelProperty("29")
+    private String stepEightC;
+
+    @ApiModelProperty("30")
+    private String stepEightD;
+
+    @ApiModelProperty("31")
+    private String stepNineA;
+
+    @ApiModelProperty("32")
+    private String stepNineB;
+
+    @ApiModelProperty("33")
+    private String stepNineC;
+
+    @ApiModelProperty("34")
+    private String stepNineD;
+
+    @ApiModelProperty("用户ID")
+    private String userId;
+
+    @ApiModelProperty("提交状态")
+    private Integer subState;
+
+    @ApiModelProperty("归属模块(小模块)")
+    private String module;
+
+    public Integer getId() {
+        return id;
+    }
+
+    public void setId(Integer id) {
+        this.id = id;
+    }
+
+    public String getStepOneA() {
+        return stepOneA;
+    }
+
+    public void setStepOneA(String stepOneA) {
+        this.stepOneA = stepOneA == null ? null : stepOneA.trim();
+    }
+
+    public String getStepOneB() {
+        return stepOneB;
+    }
+
+    public void setStepOneB(String stepOneB) {
+        this.stepOneB = stepOneB == null ? null : stepOneB.trim();
+    }
+
+    public String getStepOneC() {
+        return stepOneC;
+    }
+
+    public void setStepOneC(String stepOneC) {
+        this.stepOneC = stepOneC == null ? null : stepOneC.trim();
+    }
+
+    public String getStepOneD() {
+        return stepOneD;
+    }
+
+    public void setStepOneD(String stepOneD) {
+        this.stepOneD = stepOneD == null ? null : stepOneD.trim();
+    }
+
+    public String getStepTwoA() {
+        return stepTwoA;
+    }
+
+    public void setStepTwoA(String stepTwoA) {
+        this.stepTwoA = stepTwoA == null ? null : stepTwoA.trim();
+    }
+
+    public String getStepTwoB() {
+        return stepTwoB;
+    }
+
+    public void setStepTwoB(String stepTwoB) {
+        this.stepTwoB = stepTwoB == null ? null : stepTwoB.trim();
+    }
+
+    public String getStepTwoC() {
+        return stepTwoC;
+    }
+
+    public void setStepTwoC(String stepTwoC) {
+        this.stepTwoC = stepTwoC == null ? null : stepTwoC.trim();
+    }
+
+    public String getStepThreeA() {
+        return stepThreeA;
+    }
+
+    public void setStepThreeA(String stepThreeA) {
+        this.stepThreeA = stepThreeA == null ? null : stepThreeA.trim();
+    }
+
+    public String getStepThreeB() {
+        return stepThreeB;
+    }
+
+    public void setStepThreeB(String stepThreeB) {
+        this.stepThreeB = stepThreeB == null ? null : stepThreeB.trim();
+    }
+
+    public String getStepThreeC() {
+        return stepThreeC;
+    }
+
+    public void setStepThreeC(String stepThreeC) {
+        this.stepThreeC = stepThreeC == null ? null : stepThreeC.trim();
+    }
+
+    public String getStepThreeD() {
+        return stepThreeD;
+    }
+
+    public void setStepThreeD(String stepThreeD) {
+        this.stepThreeD = stepThreeD == null ? null : stepThreeD.trim();
+    }
+
+    public String getStepFourA() {
+        return stepFourA;
+    }
+
+    public void setStepFourA(String stepFourA) {
+        this.stepFourA = stepFourA == null ? null : stepFourA.trim();
+    }
+
+    public String getStepFourB() {
+        return stepFourB;
+    }
+
+    public void setStepFourB(String stepFourB) {
+        this.stepFourB = stepFourB == null ? null : stepFourB.trim();
+    }
+
+    public String getStepFourC() {
+        return stepFourC;
+    }
+
+    public void setStepFourC(String stepFourC) {
+        this.stepFourC = stepFourC == null ? null : stepFourC.trim();
+    }
+
+    public String getStepFourD() {
+        return stepFourD;
+    }
+
+    public void setStepFourD(String stepFourD) {
+        this.stepFourD = stepFourD == null ? null : stepFourD.trim();
+    }
+
+    public String getStepFiveA() {
+        return stepFiveA;
+    }
+
+    public void setStepFiveA(String stepFiveA) {
+        this.stepFiveA = stepFiveA == null ? null : stepFiveA.trim();
+    }
+
+    public String getStepFiveB() {
+        return stepFiveB;
+    }
+
+    public void setStepFiveB(String stepFiveB) {
+        this.stepFiveB = stepFiveB == null ? null : stepFiveB.trim();
+    }
+
+    public String getStepFiveC() {
+        return stepFiveC;
+    }
+
+    public void setStepFiveC(String stepFiveC) {
+        this.stepFiveC = stepFiveC == null ? null : stepFiveC.trim();
+    }
+
+    public String getStepFiveD() {
+        return stepFiveD;
+    }
+
+    public void setStepFiveD(String stepFiveD) {
+        this.stepFiveD = stepFiveD == null ? null : stepFiveD.trim();
+    }
+
+    public String getStepSixA() {
+        return stepSixA;
+    }
+
+    public void setStepSixA(String stepSixA) {
+        this.stepSixA = stepSixA == null ? null : stepSixA.trim();
+    }
+
+    public String getStepSixB() {
+        return stepSixB;
+    }
+
+    public void setStepSixB(String stepSixB) {
+        this.stepSixB = stepSixB == null ? null : stepSixB.trim();
+    }
+
+    public String getStepSixC() {
+        return stepSixC;
+    }
+
+    public void setStepSixC(String stepSixC) {
+        this.stepSixC = stepSixC == null ? null : stepSixC.trim();
+    }
+
+    public String getStepSixD() {
+        return stepSixD;
+    }
+
+    public void setStepSixD(String stepSixD) {
+        this.stepSixD = stepSixD == null ? null : stepSixD.trim();
+    }
+
+    public String getStepSevenA() {
+        return stepSevenA;
+    }
+
+    public void setStepSevenA(String stepSevenA) {
+        this.stepSevenA = stepSevenA == null ? null : stepSevenA.trim();
+    }
+
+    public String getStepSevenB() {
+        return stepSevenB;
+    }
+
+    public void setStepSevenB(String stepSevenB) {
+        this.stepSevenB = stepSevenB == null ? null : stepSevenB.trim();
+    }
+
+    public String getStepSevenC() {
+        return stepSevenC;
+    }
+
+    public void setStepSevenC(String stepSevenC) {
+        this.stepSevenC = stepSevenC == null ? null : stepSevenC.trim();
+    }
+
+    public String getStepSevenD() {
+        return stepSevenD;
+    }
+
+    public void setStepSevenD(String stepSevenD) {
+        this.stepSevenD = stepSevenD == null ? null : stepSevenD.trim();
+    }
+
+    public String getStepEightA() {
+        return stepEightA;
+    }
+
+    public void setStepEightA(String stepEightA) {
+        this.stepEightA = stepEightA == null ? null : stepEightA.trim();
+    }
+
+    public String getStepEightB() {
+        return stepEightB;
+    }
+
+    public void setStepEightB(String stepEightB) {
+        this.stepEightB = stepEightB == null ? null : stepEightB.trim();
+    }
+
+    public String getStepEightC() {
+        return stepEightC;
+    }
+
+    public void setStepEightC(String stepEightC) {
+        this.stepEightC = stepEightC == null ? null : stepEightC.trim();
+    }
+
+    public String getStepEightD() {
+        return stepEightD;
+    }
+
+    public void setStepEightD(String stepEightD) {
+        this.stepEightD = stepEightD == null ? null : stepEightD.trim();
+    }
+
+    public String getStepNineA() {
+        return stepNineA;
+    }
+
+    public void setStepNineA(String stepNineA) {
+        this.stepNineA = stepNineA == null ? null : stepNineA.trim();
+    }
+
+    public String getStepNineB() {
+        return stepNineB;
+    }
+
+    public void setStepNineB(String stepNineB) {
+        this.stepNineB = stepNineB == null ? null : stepNineB.trim();
+    }
+
+    public String getStepNineC() {
+        return stepNineC;
+    }
+
+    public void setStepNineC(String stepNineC) {
+        this.stepNineC = stepNineC == null ? null : stepNineC.trim();
+    }
+
+    public String getStepNineD() {
+        return stepNineD;
+    }
+
+    public void setStepNineD(String stepNineD) {
+        this.stepNineD = stepNineD == null ? null : stepNineD.trim();
+    }
+
+    public String getUserId() {
+        return userId;
+    }
+
+    public void setUserId(String userId) {
+        this.userId = userId == null ? null : userId.trim();
+    }
+
+    public Integer getSubState() {
+        return subState;
+    }
+
+    public void setSubState(Integer subState) {
+        this.subState = subState;
+    }
+
+    public String getModule() {
+        return module;
+    }
+
+    public void setModule(String module) {
+        this.module = module == null ? null : module.trim();
+    }
+}
\ No newline at end of file
diff --git a/src/main/java/com/sztzjy/digital_credit/entity/StuMachineLearningExample.java b/src/main/java/com/sztzjy/digital_credit/entity/StuMachineLearningExample.java
new file mode 100644
index 0000000..e47f8ed
--- /dev/null
+++ b/src/main/java/com/sztzjy/digital_credit/entity/StuMachineLearningExample.java
@@ -0,0 +1,2909 @@
+package com.sztzjy.digital_credit.entity;
+
+import java.util.ArrayList;
+import java.util.List;
+
+public class StuMachineLearningExample {
+    protected String orderByClause;
+
+    protected boolean distinct;
+
+    protected List<Criteria> oredCriteria;
+
+    public StuMachineLearningExample() {
+        oredCriteria = new ArrayList<>();
+    }
+
+    public void setOrderByClause(String orderByClause) {
+        this.orderByClause = orderByClause;
+    }
+
+    public String getOrderByClause() {
+        return orderByClause;
+    }
+
+    public void setDistinct(boolean distinct) {
+        this.distinct = distinct;
+    }
+
+    public boolean isDistinct() {
+        return distinct;
+    }
+
+    public List<Criteria> getOredCriteria() {
+        return oredCriteria;
+    }
+
+    public void or(Criteria criteria) {
+        oredCriteria.add(criteria);
+    }
+
+    public Criteria or() {
+        Criteria criteria = createCriteriaInternal();
+        oredCriteria.add(criteria);
+        return criteria;
+    }
+
+    public Criteria createCriteria() {
+        Criteria criteria = createCriteriaInternal();
+        if (oredCriteria.size() == 0) {
+            oredCriteria.add(criteria);
+        }
+        return criteria;
+    }
+
+    protected Criteria createCriteriaInternal() {
+        Criteria criteria = new Criteria();
+        return criteria;
+    }
+
+    public void clear() {
+        oredCriteria.clear();
+        orderByClause = null;
+        distinct = false;
+    }
+
+    protected abstract static class GeneratedCriteria {
+        protected List<Criterion> criteria;
+
+        protected GeneratedCriteria() {
+            super();
+            criteria = new ArrayList<>();
+        }
+
+        public boolean isValid() {
+            return criteria.size() > 0;
+        }
+
+        public List<Criterion> getAllCriteria() {
+            return criteria;
+        }
+
+        public List<Criterion> getCriteria() {
+            return criteria;
+        }
+
+        protected void addCriterion(String condition) {
+            if (condition == null) {
+                throw new RuntimeException("Value for condition cannot be null");
+            }
+            criteria.add(new Criterion(condition));
+        }
+
+        protected void addCriterion(String condition, Object value, String property) {
+            if (value == null) {
+                throw new RuntimeException("Value for " + property + " cannot be null");
+            }
+            criteria.add(new Criterion(condition, value));
+        }
+
+        protected void addCriterion(String condition, Object value1, Object value2, String property) {
+            if (value1 == null || value2 == null) {
+                throw new RuntimeException("Between values for " + property + " cannot be null");
+            }
+            criteria.add(new Criterion(condition, value1, value2));
+        }
+
+        public Criteria andIdIsNull() {
+            addCriterion("id is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdIsNotNull() {
+            addCriterion("id is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdEqualTo(Integer value) {
+            addCriterion("id =", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdNotEqualTo(Integer value) {
+            addCriterion("id <>", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdGreaterThan(Integer value) {
+            addCriterion("id >", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdGreaterThanOrEqualTo(Integer value) {
+            addCriterion("id >=", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdLessThan(Integer value) {
+            addCriterion("id <", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdLessThanOrEqualTo(Integer value) {
+            addCriterion("id <=", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdIn(List<Integer> values) {
+            addCriterion("id in", values, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdNotIn(List<Integer> values) {
+            addCriterion("id not in", values, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdBetween(Integer value1, Integer value2) {
+            addCriterion("id between", value1, value2, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdNotBetween(Integer value1, Integer value2) {
+            addCriterion("id not between", value1, value2, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneAIsNull() {
+            addCriterion("step_one_a is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneAIsNotNull() {
+            addCriterion("step_one_a is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneAEqualTo(String value) {
+            addCriterion("step_one_a =", value, "stepOneA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneANotEqualTo(String value) {
+            addCriterion("step_one_a <>", value, "stepOneA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneAGreaterThan(String value) {
+            addCriterion("step_one_a >", value, "stepOneA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneAGreaterThanOrEqualTo(String value) {
+            addCriterion("step_one_a >=", value, "stepOneA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneALessThan(String value) {
+            addCriterion("step_one_a <", value, "stepOneA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneALessThanOrEqualTo(String value) {
+            addCriterion("step_one_a <=", value, "stepOneA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneALike(String value) {
+            addCriterion("step_one_a like", value, "stepOneA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneANotLike(String value) {
+            addCriterion("step_one_a not like", value, "stepOneA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneAIn(List<String> values) {
+            addCriterion("step_one_a in", values, "stepOneA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneANotIn(List<String> values) {
+            addCriterion("step_one_a not in", values, "stepOneA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneABetween(String value1, String value2) {
+            addCriterion("step_one_a between", value1, value2, "stepOneA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneANotBetween(String value1, String value2) {
+            addCriterion("step_one_a not between", value1, value2, "stepOneA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneBIsNull() {
+            addCriterion("step_one_b is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneBIsNotNull() {
+            addCriterion("step_one_b is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneBEqualTo(String value) {
+            addCriterion("step_one_b =", value, "stepOneB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneBNotEqualTo(String value) {
+            addCriterion("step_one_b <>", value, "stepOneB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneBGreaterThan(String value) {
+            addCriterion("step_one_b >", value, "stepOneB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneBGreaterThanOrEqualTo(String value) {
+            addCriterion("step_one_b >=", value, "stepOneB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneBLessThan(String value) {
+            addCriterion("step_one_b <", value, "stepOneB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneBLessThanOrEqualTo(String value) {
+            addCriterion("step_one_b <=", value, "stepOneB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneBLike(String value) {
+            addCriterion("step_one_b like", value, "stepOneB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneBNotLike(String value) {
+            addCriterion("step_one_b not like", value, "stepOneB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneBIn(List<String> values) {
+            addCriterion("step_one_b in", values, "stepOneB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneBNotIn(List<String> values) {
+            addCriterion("step_one_b not in", values, "stepOneB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneBBetween(String value1, String value2) {
+            addCriterion("step_one_b between", value1, value2, "stepOneB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneBNotBetween(String value1, String value2) {
+            addCriterion("step_one_b not between", value1, value2, "stepOneB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneCIsNull() {
+            addCriterion("step_one_c is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneCIsNotNull() {
+            addCriterion("step_one_c is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneCEqualTo(String value) {
+            addCriterion("step_one_c =", value, "stepOneC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneCNotEqualTo(String value) {
+            addCriterion("step_one_c <>", value, "stepOneC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneCGreaterThan(String value) {
+            addCriterion("step_one_c >", value, "stepOneC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneCGreaterThanOrEqualTo(String value) {
+            addCriterion("step_one_c >=", value, "stepOneC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneCLessThan(String value) {
+            addCriterion("step_one_c <", value, "stepOneC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneCLessThanOrEqualTo(String value) {
+            addCriterion("step_one_c <=", value, "stepOneC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneCLike(String value) {
+            addCriterion("step_one_c like", value, "stepOneC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneCNotLike(String value) {
+            addCriterion("step_one_c not like", value, "stepOneC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneCIn(List<String> values) {
+            addCriterion("step_one_c in", values, "stepOneC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneCNotIn(List<String> values) {
+            addCriterion("step_one_c not in", values, "stepOneC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneCBetween(String value1, String value2) {
+            addCriterion("step_one_c between", value1, value2, "stepOneC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneCNotBetween(String value1, String value2) {
+            addCriterion("step_one_c not between", value1, value2, "stepOneC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneDIsNull() {
+            addCriterion("step_one_d is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneDIsNotNull() {
+            addCriterion("step_one_d is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneDEqualTo(String value) {
+            addCriterion("step_one_d =", value, "stepOneD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneDNotEqualTo(String value) {
+            addCriterion("step_one_d <>", value, "stepOneD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneDGreaterThan(String value) {
+            addCriterion("step_one_d >", value, "stepOneD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneDGreaterThanOrEqualTo(String value) {
+            addCriterion("step_one_d >=", value, "stepOneD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneDLessThan(String value) {
+            addCriterion("step_one_d <", value, "stepOneD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneDLessThanOrEqualTo(String value) {
+            addCriterion("step_one_d <=", value, "stepOneD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneDLike(String value) {
+            addCriterion("step_one_d like", value, "stepOneD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneDNotLike(String value) {
+            addCriterion("step_one_d not like", value, "stepOneD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneDIn(List<String> values) {
+            addCriterion("step_one_d in", values, "stepOneD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneDNotIn(List<String> values) {
+            addCriterion("step_one_d not in", values, "stepOneD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneDBetween(String value1, String value2) {
+            addCriterion("step_one_d between", value1, value2, "stepOneD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneDNotBetween(String value1, String value2) {
+            addCriterion("step_one_d not between", value1, value2, "stepOneD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoAIsNull() {
+            addCriterion("step_two_a is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoAIsNotNull() {
+            addCriterion("step_two_a is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoAEqualTo(String value) {
+            addCriterion("step_two_a =", value, "stepTwoA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoANotEqualTo(String value) {
+            addCriterion("step_two_a <>", value, "stepTwoA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoAGreaterThan(String value) {
+            addCriterion("step_two_a >", value, "stepTwoA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoAGreaterThanOrEqualTo(String value) {
+            addCriterion("step_two_a >=", value, "stepTwoA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoALessThan(String value) {
+            addCriterion("step_two_a <", value, "stepTwoA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoALessThanOrEqualTo(String value) {
+            addCriterion("step_two_a <=", value, "stepTwoA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoALike(String value) {
+            addCriterion("step_two_a like", value, "stepTwoA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoANotLike(String value) {
+            addCriterion("step_two_a not like", value, "stepTwoA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoAIn(List<String> values) {
+            addCriterion("step_two_a in", values, "stepTwoA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoANotIn(List<String> values) {
+            addCriterion("step_two_a not in", values, "stepTwoA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoABetween(String value1, String value2) {
+            addCriterion("step_two_a between", value1, value2, "stepTwoA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoANotBetween(String value1, String value2) {
+            addCriterion("step_two_a not between", value1, value2, "stepTwoA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoBIsNull() {
+            addCriterion("step_two_b is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoBIsNotNull() {
+            addCriterion("step_two_b is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoBEqualTo(String value) {
+            addCriterion("step_two_b =", value, "stepTwoB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoBNotEqualTo(String value) {
+            addCriterion("step_two_b <>", value, "stepTwoB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoBGreaterThan(String value) {
+            addCriterion("step_two_b >", value, "stepTwoB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoBGreaterThanOrEqualTo(String value) {
+            addCriterion("step_two_b >=", value, "stepTwoB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoBLessThan(String value) {
+            addCriterion("step_two_b <", value, "stepTwoB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoBLessThanOrEqualTo(String value) {
+            addCriterion("step_two_b <=", value, "stepTwoB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoBLike(String value) {
+            addCriterion("step_two_b like", value, "stepTwoB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoBNotLike(String value) {
+            addCriterion("step_two_b not like", value, "stepTwoB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoBIn(List<String> values) {
+            addCriterion("step_two_b in", values, "stepTwoB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoBNotIn(List<String> values) {
+            addCriterion("step_two_b not in", values, "stepTwoB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoBBetween(String value1, String value2) {
+            addCriterion("step_two_b between", value1, value2, "stepTwoB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoBNotBetween(String value1, String value2) {
+            addCriterion("step_two_b not between", value1, value2, "stepTwoB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoCIsNull() {
+            addCriterion("step_two_c is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoCIsNotNull() {
+            addCriterion("step_two_c is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoCEqualTo(String value) {
+            addCriterion("step_two_c =", value, "stepTwoC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoCNotEqualTo(String value) {
+            addCriterion("step_two_c <>", value, "stepTwoC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoCGreaterThan(String value) {
+            addCriterion("step_two_c >", value, "stepTwoC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoCGreaterThanOrEqualTo(String value) {
+            addCriterion("step_two_c >=", value, "stepTwoC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoCLessThan(String value) {
+            addCriterion("step_two_c <", value, "stepTwoC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoCLessThanOrEqualTo(String value) {
+            addCriterion("step_two_c <=", value, "stepTwoC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoCLike(String value) {
+            addCriterion("step_two_c like", value, "stepTwoC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoCNotLike(String value) {
+            addCriterion("step_two_c not like", value, "stepTwoC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoCIn(List<String> values) {
+            addCriterion("step_two_c in", values, "stepTwoC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoCNotIn(List<String> values) {
+            addCriterion("step_two_c not in", values, "stepTwoC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoCBetween(String value1, String value2) {
+            addCriterion("step_two_c between", value1, value2, "stepTwoC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoCNotBetween(String value1, String value2) {
+            addCriterion("step_two_c not between", value1, value2, "stepTwoC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeAIsNull() {
+            addCriterion("step_three_a is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeAIsNotNull() {
+            addCriterion("step_three_a is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeAEqualTo(String value) {
+            addCriterion("step_three_a =", value, "stepThreeA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeANotEqualTo(String value) {
+            addCriterion("step_three_a <>", value, "stepThreeA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeAGreaterThan(String value) {
+            addCriterion("step_three_a >", value, "stepThreeA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeAGreaterThanOrEqualTo(String value) {
+            addCriterion("step_three_a >=", value, "stepThreeA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeALessThan(String value) {
+            addCriterion("step_three_a <", value, "stepThreeA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeALessThanOrEqualTo(String value) {
+            addCriterion("step_three_a <=", value, "stepThreeA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeALike(String value) {
+            addCriterion("step_three_a like", value, "stepThreeA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeANotLike(String value) {
+            addCriterion("step_three_a not like", value, "stepThreeA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeAIn(List<String> values) {
+            addCriterion("step_three_a in", values, "stepThreeA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeANotIn(List<String> values) {
+            addCriterion("step_three_a not in", values, "stepThreeA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeABetween(String value1, String value2) {
+            addCriterion("step_three_a between", value1, value2, "stepThreeA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeANotBetween(String value1, String value2) {
+            addCriterion("step_three_a not between", value1, value2, "stepThreeA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeBIsNull() {
+            addCriterion("step_three_b is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeBIsNotNull() {
+            addCriterion("step_three_b is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeBEqualTo(String value) {
+            addCriterion("step_three_b =", value, "stepThreeB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeBNotEqualTo(String value) {
+            addCriterion("step_three_b <>", value, "stepThreeB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeBGreaterThan(String value) {
+            addCriterion("step_three_b >", value, "stepThreeB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeBGreaterThanOrEqualTo(String value) {
+            addCriterion("step_three_b >=", value, "stepThreeB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeBLessThan(String value) {
+            addCriterion("step_three_b <", value, "stepThreeB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeBLessThanOrEqualTo(String value) {
+            addCriterion("step_three_b <=", value, "stepThreeB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeBLike(String value) {
+            addCriterion("step_three_b like", value, "stepThreeB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeBNotLike(String value) {
+            addCriterion("step_three_b not like", value, "stepThreeB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeBIn(List<String> values) {
+            addCriterion("step_three_b in", values, "stepThreeB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeBNotIn(List<String> values) {
+            addCriterion("step_three_b not in", values, "stepThreeB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeBBetween(String value1, String value2) {
+            addCriterion("step_three_b between", value1, value2, "stepThreeB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeBNotBetween(String value1, String value2) {
+            addCriterion("step_three_b not between", value1, value2, "stepThreeB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeCIsNull() {
+            addCriterion("step_three_c is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeCIsNotNull() {
+            addCriterion("step_three_c is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeCEqualTo(String value) {
+            addCriterion("step_three_c =", value, "stepThreeC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeCNotEqualTo(String value) {
+            addCriterion("step_three_c <>", value, "stepThreeC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeCGreaterThan(String value) {
+            addCriterion("step_three_c >", value, "stepThreeC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeCGreaterThanOrEqualTo(String value) {
+            addCriterion("step_three_c >=", value, "stepThreeC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeCLessThan(String value) {
+            addCriterion("step_three_c <", value, "stepThreeC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeCLessThanOrEqualTo(String value) {
+            addCriterion("step_three_c <=", value, "stepThreeC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeCLike(String value) {
+            addCriterion("step_three_c like", value, "stepThreeC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeCNotLike(String value) {
+            addCriterion("step_three_c not like", value, "stepThreeC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeCIn(List<String> values) {
+            addCriterion("step_three_c in", values, "stepThreeC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeCNotIn(List<String> values) {
+            addCriterion("step_three_c not in", values, "stepThreeC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeCBetween(String value1, String value2) {
+            addCriterion("step_three_c between", value1, value2, "stepThreeC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeCNotBetween(String value1, String value2) {
+            addCriterion("step_three_c not between", value1, value2, "stepThreeC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeDIsNull() {
+            addCriterion("step_three_d is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeDIsNotNull() {
+            addCriterion("step_three_d is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeDEqualTo(String value) {
+            addCriterion("step_three_d =", value, "stepThreeD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeDNotEqualTo(String value) {
+            addCriterion("step_three_d <>", value, "stepThreeD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeDGreaterThan(String value) {
+            addCriterion("step_three_d >", value, "stepThreeD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeDGreaterThanOrEqualTo(String value) {
+            addCriterion("step_three_d >=", value, "stepThreeD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeDLessThan(String value) {
+            addCriterion("step_three_d <", value, "stepThreeD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeDLessThanOrEqualTo(String value) {
+            addCriterion("step_three_d <=", value, "stepThreeD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeDLike(String value) {
+            addCriterion("step_three_d like", value, "stepThreeD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeDNotLike(String value) {
+            addCriterion("step_three_d not like", value, "stepThreeD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeDIn(List<String> values) {
+            addCriterion("step_three_d in", values, "stepThreeD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeDNotIn(List<String> values) {
+            addCriterion("step_three_d not in", values, "stepThreeD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeDBetween(String value1, String value2) {
+            addCriterion("step_three_d between", value1, value2, "stepThreeD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeDNotBetween(String value1, String value2) {
+            addCriterion("step_three_d not between", value1, value2, "stepThreeD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourAIsNull() {
+            addCriterion("step_four_a is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourAIsNotNull() {
+            addCriterion("step_four_a is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourAEqualTo(String value) {
+            addCriterion("step_four_a =", value, "stepFourA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourANotEqualTo(String value) {
+            addCriterion("step_four_a <>", value, "stepFourA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourAGreaterThan(String value) {
+            addCriterion("step_four_a >", value, "stepFourA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourAGreaterThanOrEqualTo(String value) {
+            addCriterion("step_four_a >=", value, "stepFourA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourALessThan(String value) {
+            addCriterion("step_four_a <", value, "stepFourA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourALessThanOrEqualTo(String value) {
+            addCriterion("step_four_a <=", value, "stepFourA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourALike(String value) {
+            addCriterion("step_four_a like", value, "stepFourA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourANotLike(String value) {
+            addCriterion("step_four_a not like", value, "stepFourA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourAIn(List<String> values) {
+            addCriterion("step_four_a in", values, "stepFourA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourANotIn(List<String> values) {
+            addCriterion("step_four_a not in", values, "stepFourA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourABetween(String value1, String value2) {
+            addCriterion("step_four_a between", value1, value2, "stepFourA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourANotBetween(String value1, String value2) {
+            addCriterion("step_four_a not between", value1, value2, "stepFourA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourBIsNull() {
+            addCriterion("step_four_b is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourBIsNotNull() {
+            addCriterion("step_four_b is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourBEqualTo(String value) {
+            addCriterion("step_four_b =", value, "stepFourB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourBNotEqualTo(String value) {
+            addCriterion("step_four_b <>", value, "stepFourB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourBGreaterThan(String value) {
+            addCriterion("step_four_b >", value, "stepFourB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourBGreaterThanOrEqualTo(String value) {
+            addCriterion("step_four_b >=", value, "stepFourB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourBLessThan(String value) {
+            addCriterion("step_four_b <", value, "stepFourB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourBLessThanOrEqualTo(String value) {
+            addCriterion("step_four_b <=", value, "stepFourB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourBLike(String value) {
+            addCriterion("step_four_b like", value, "stepFourB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourBNotLike(String value) {
+            addCriterion("step_four_b not like", value, "stepFourB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourBIn(List<String> values) {
+            addCriterion("step_four_b in", values, "stepFourB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourBNotIn(List<String> values) {
+            addCriterion("step_four_b not in", values, "stepFourB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourBBetween(String value1, String value2) {
+            addCriterion("step_four_b between", value1, value2, "stepFourB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourBNotBetween(String value1, String value2) {
+            addCriterion("step_four_b not between", value1, value2, "stepFourB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourCIsNull() {
+            addCriterion("step_four_c is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourCIsNotNull() {
+            addCriterion("step_four_c is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourCEqualTo(String value) {
+            addCriterion("step_four_c =", value, "stepFourC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourCNotEqualTo(String value) {
+            addCriterion("step_four_c <>", value, "stepFourC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourCGreaterThan(String value) {
+            addCriterion("step_four_c >", value, "stepFourC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourCGreaterThanOrEqualTo(String value) {
+            addCriterion("step_four_c >=", value, "stepFourC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourCLessThan(String value) {
+            addCriterion("step_four_c <", value, "stepFourC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourCLessThanOrEqualTo(String value) {
+            addCriterion("step_four_c <=", value, "stepFourC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourCLike(String value) {
+            addCriterion("step_four_c like", value, "stepFourC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourCNotLike(String value) {
+            addCriterion("step_four_c not like", value, "stepFourC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourCIn(List<String> values) {
+            addCriterion("step_four_c in", values, "stepFourC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourCNotIn(List<String> values) {
+            addCriterion("step_four_c not in", values, "stepFourC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourCBetween(String value1, String value2) {
+            addCriterion("step_four_c between", value1, value2, "stepFourC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourCNotBetween(String value1, String value2) {
+            addCriterion("step_four_c not between", value1, value2, "stepFourC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourDIsNull() {
+            addCriterion("step_four_d is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourDIsNotNull() {
+            addCriterion("step_four_d is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourDEqualTo(String value) {
+            addCriterion("step_four_d =", value, "stepFourD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourDNotEqualTo(String value) {
+            addCriterion("step_four_d <>", value, "stepFourD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourDGreaterThan(String value) {
+            addCriterion("step_four_d >", value, "stepFourD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourDGreaterThanOrEqualTo(String value) {
+            addCriterion("step_four_d >=", value, "stepFourD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourDLessThan(String value) {
+            addCriterion("step_four_d <", value, "stepFourD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourDLessThanOrEqualTo(String value) {
+            addCriterion("step_four_d <=", value, "stepFourD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourDLike(String value) {
+            addCriterion("step_four_d like", value, "stepFourD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourDNotLike(String value) {
+            addCriterion("step_four_d not like", value, "stepFourD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourDIn(List<String> values) {
+            addCriterion("step_four_d in", values, "stepFourD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourDNotIn(List<String> values) {
+            addCriterion("step_four_d not in", values, "stepFourD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourDBetween(String value1, String value2) {
+            addCriterion("step_four_d between", value1, value2, "stepFourD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourDNotBetween(String value1, String value2) {
+            addCriterion("step_four_d not between", value1, value2, "stepFourD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveAIsNull() {
+            addCriterion("step_five_a is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveAIsNotNull() {
+            addCriterion("step_five_a is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveAEqualTo(String value) {
+            addCriterion("step_five_a =", value, "stepFiveA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveANotEqualTo(String value) {
+            addCriterion("step_five_a <>", value, "stepFiveA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveAGreaterThan(String value) {
+            addCriterion("step_five_a >", value, "stepFiveA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveAGreaterThanOrEqualTo(String value) {
+            addCriterion("step_five_a >=", value, "stepFiveA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveALessThan(String value) {
+            addCriterion("step_five_a <", value, "stepFiveA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveALessThanOrEqualTo(String value) {
+            addCriterion("step_five_a <=", value, "stepFiveA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveALike(String value) {
+            addCriterion("step_five_a like", value, "stepFiveA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveANotLike(String value) {
+            addCriterion("step_five_a not like", value, "stepFiveA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveAIn(List<String> values) {
+            addCriterion("step_five_a in", values, "stepFiveA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveANotIn(List<String> values) {
+            addCriterion("step_five_a not in", values, "stepFiveA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveABetween(String value1, String value2) {
+            addCriterion("step_five_a between", value1, value2, "stepFiveA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveANotBetween(String value1, String value2) {
+            addCriterion("step_five_a not between", value1, value2, "stepFiveA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveBIsNull() {
+            addCriterion("step_five_b is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveBIsNotNull() {
+            addCriterion("step_five_b is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveBEqualTo(String value) {
+            addCriterion("step_five_b =", value, "stepFiveB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveBNotEqualTo(String value) {
+            addCriterion("step_five_b <>", value, "stepFiveB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveBGreaterThan(String value) {
+            addCriterion("step_five_b >", value, "stepFiveB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveBGreaterThanOrEqualTo(String value) {
+            addCriterion("step_five_b >=", value, "stepFiveB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveBLessThan(String value) {
+            addCriterion("step_five_b <", value, "stepFiveB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveBLessThanOrEqualTo(String value) {
+            addCriterion("step_five_b <=", value, "stepFiveB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveBLike(String value) {
+            addCriterion("step_five_b like", value, "stepFiveB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveBNotLike(String value) {
+            addCriterion("step_five_b not like", value, "stepFiveB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveBIn(List<String> values) {
+            addCriterion("step_five_b in", values, "stepFiveB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveBNotIn(List<String> values) {
+            addCriterion("step_five_b not in", values, "stepFiveB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveBBetween(String value1, String value2) {
+            addCriterion("step_five_b between", value1, value2, "stepFiveB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveBNotBetween(String value1, String value2) {
+            addCriterion("step_five_b not between", value1, value2, "stepFiveB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveCIsNull() {
+            addCriterion("step_five_c is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveCIsNotNull() {
+            addCriterion("step_five_c is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveCEqualTo(String value) {
+            addCriterion("step_five_c =", value, "stepFiveC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveCNotEqualTo(String value) {
+            addCriterion("step_five_c <>", value, "stepFiveC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveCGreaterThan(String value) {
+            addCriterion("step_five_c >", value, "stepFiveC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveCGreaterThanOrEqualTo(String value) {
+            addCriterion("step_five_c >=", value, "stepFiveC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveCLessThan(String value) {
+            addCriterion("step_five_c <", value, "stepFiveC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveCLessThanOrEqualTo(String value) {
+            addCriterion("step_five_c <=", value, "stepFiveC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveCLike(String value) {
+            addCriterion("step_five_c like", value, "stepFiveC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveCNotLike(String value) {
+            addCriterion("step_five_c not like", value, "stepFiveC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveCIn(List<String> values) {
+            addCriterion("step_five_c in", values, "stepFiveC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveCNotIn(List<String> values) {
+            addCriterion("step_five_c not in", values, "stepFiveC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveCBetween(String value1, String value2) {
+            addCriterion("step_five_c between", value1, value2, "stepFiveC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveCNotBetween(String value1, String value2) {
+            addCriterion("step_five_c not between", value1, value2, "stepFiveC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveDIsNull() {
+            addCriterion("step_five_d is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveDIsNotNull() {
+            addCriterion("step_five_d is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveDEqualTo(String value) {
+            addCriterion("step_five_d =", value, "stepFiveD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveDNotEqualTo(String value) {
+            addCriterion("step_five_d <>", value, "stepFiveD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveDGreaterThan(String value) {
+            addCriterion("step_five_d >", value, "stepFiveD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveDGreaterThanOrEqualTo(String value) {
+            addCriterion("step_five_d >=", value, "stepFiveD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveDLessThan(String value) {
+            addCriterion("step_five_d <", value, "stepFiveD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveDLessThanOrEqualTo(String value) {
+            addCriterion("step_five_d <=", value, "stepFiveD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveDLike(String value) {
+            addCriterion("step_five_d like", value, "stepFiveD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveDNotLike(String value) {
+            addCriterion("step_five_d not like", value, "stepFiveD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveDIn(List<String> values) {
+            addCriterion("step_five_d in", values, "stepFiveD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveDNotIn(List<String> values) {
+            addCriterion("step_five_d not in", values, "stepFiveD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveDBetween(String value1, String value2) {
+            addCriterion("step_five_d between", value1, value2, "stepFiveD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveDNotBetween(String value1, String value2) {
+            addCriterion("step_five_d not between", value1, value2, "stepFiveD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixAIsNull() {
+            addCriterion("step_six_a is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixAIsNotNull() {
+            addCriterion("step_six_a is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixAEqualTo(String value) {
+            addCriterion("step_six_a =", value, "stepSixA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixANotEqualTo(String value) {
+            addCriterion("step_six_a <>", value, "stepSixA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixAGreaterThan(String value) {
+            addCriterion("step_six_a >", value, "stepSixA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixAGreaterThanOrEqualTo(String value) {
+            addCriterion("step_six_a >=", value, "stepSixA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixALessThan(String value) {
+            addCriterion("step_six_a <", value, "stepSixA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixALessThanOrEqualTo(String value) {
+            addCriterion("step_six_a <=", value, "stepSixA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixALike(String value) {
+            addCriterion("step_six_a like", value, "stepSixA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixANotLike(String value) {
+            addCriterion("step_six_a not like", value, "stepSixA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixAIn(List<String> values) {
+            addCriterion("step_six_a in", values, "stepSixA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixANotIn(List<String> values) {
+            addCriterion("step_six_a not in", values, "stepSixA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixABetween(String value1, String value2) {
+            addCriterion("step_six_a between", value1, value2, "stepSixA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixANotBetween(String value1, String value2) {
+            addCriterion("step_six_a not between", value1, value2, "stepSixA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixBIsNull() {
+            addCriterion("step_six_b is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixBIsNotNull() {
+            addCriterion("step_six_b is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixBEqualTo(String value) {
+            addCriterion("step_six_b =", value, "stepSixB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixBNotEqualTo(String value) {
+            addCriterion("step_six_b <>", value, "stepSixB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixBGreaterThan(String value) {
+            addCriterion("step_six_b >", value, "stepSixB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixBGreaterThanOrEqualTo(String value) {
+            addCriterion("step_six_b >=", value, "stepSixB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixBLessThan(String value) {
+            addCriterion("step_six_b <", value, "stepSixB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixBLessThanOrEqualTo(String value) {
+            addCriterion("step_six_b <=", value, "stepSixB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixBLike(String value) {
+            addCriterion("step_six_b like", value, "stepSixB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixBNotLike(String value) {
+            addCriterion("step_six_b not like", value, "stepSixB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixBIn(List<String> values) {
+            addCriterion("step_six_b in", values, "stepSixB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixBNotIn(List<String> values) {
+            addCriterion("step_six_b not in", values, "stepSixB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixBBetween(String value1, String value2) {
+            addCriterion("step_six_b between", value1, value2, "stepSixB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixBNotBetween(String value1, String value2) {
+            addCriterion("step_six_b not between", value1, value2, "stepSixB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixCIsNull() {
+            addCriterion("step_six_c is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixCIsNotNull() {
+            addCriterion("step_six_c is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixCEqualTo(String value) {
+            addCriterion("step_six_c =", value, "stepSixC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixCNotEqualTo(String value) {
+            addCriterion("step_six_c <>", value, "stepSixC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixCGreaterThan(String value) {
+            addCriterion("step_six_c >", value, "stepSixC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixCGreaterThanOrEqualTo(String value) {
+            addCriterion("step_six_c >=", value, "stepSixC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixCLessThan(String value) {
+            addCriterion("step_six_c <", value, "stepSixC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixCLessThanOrEqualTo(String value) {
+            addCriterion("step_six_c <=", value, "stepSixC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixCLike(String value) {
+            addCriterion("step_six_c like", value, "stepSixC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixCNotLike(String value) {
+            addCriterion("step_six_c not like", value, "stepSixC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixCIn(List<String> values) {
+            addCriterion("step_six_c in", values, "stepSixC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixCNotIn(List<String> values) {
+            addCriterion("step_six_c not in", values, "stepSixC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixCBetween(String value1, String value2) {
+            addCriterion("step_six_c between", value1, value2, "stepSixC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixCNotBetween(String value1, String value2) {
+            addCriterion("step_six_c not between", value1, value2, "stepSixC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixDIsNull() {
+            addCriterion("step_six_d is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixDIsNotNull() {
+            addCriterion("step_six_d is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixDEqualTo(String value) {
+            addCriterion("step_six_d =", value, "stepSixD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixDNotEqualTo(String value) {
+            addCriterion("step_six_d <>", value, "stepSixD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixDGreaterThan(String value) {
+            addCriterion("step_six_d >", value, "stepSixD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixDGreaterThanOrEqualTo(String value) {
+            addCriterion("step_six_d >=", value, "stepSixD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixDLessThan(String value) {
+            addCriterion("step_six_d <", value, "stepSixD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixDLessThanOrEqualTo(String value) {
+            addCriterion("step_six_d <=", value, "stepSixD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixDLike(String value) {
+            addCriterion("step_six_d like", value, "stepSixD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixDNotLike(String value) {
+            addCriterion("step_six_d not like", value, "stepSixD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixDIn(List<String> values) {
+            addCriterion("step_six_d in", values, "stepSixD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixDNotIn(List<String> values) {
+            addCriterion("step_six_d not in", values, "stepSixD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixDBetween(String value1, String value2) {
+            addCriterion("step_six_d between", value1, value2, "stepSixD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixDNotBetween(String value1, String value2) {
+            addCriterion("step_six_d not between", value1, value2, "stepSixD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenAIsNull() {
+            addCriterion("step_seven_a is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenAIsNotNull() {
+            addCriterion("step_seven_a is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenAEqualTo(String value) {
+            addCriterion("step_seven_a =", value, "stepSevenA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenANotEqualTo(String value) {
+            addCriterion("step_seven_a <>", value, "stepSevenA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenAGreaterThan(String value) {
+            addCriterion("step_seven_a >", value, "stepSevenA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenAGreaterThanOrEqualTo(String value) {
+            addCriterion("step_seven_a >=", value, "stepSevenA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenALessThan(String value) {
+            addCriterion("step_seven_a <", value, "stepSevenA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenALessThanOrEqualTo(String value) {
+            addCriterion("step_seven_a <=", value, "stepSevenA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenALike(String value) {
+            addCriterion("step_seven_a like", value, "stepSevenA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenANotLike(String value) {
+            addCriterion("step_seven_a not like", value, "stepSevenA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenAIn(List<String> values) {
+            addCriterion("step_seven_a in", values, "stepSevenA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenANotIn(List<String> values) {
+            addCriterion("step_seven_a not in", values, "stepSevenA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenABetween(String value1, String value2) {
+            addCriterion("step_seven_a between", value1, value2, "stepSevenA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenANotBetween(String value1, String value2) {
+            addCriterion("step_seven_a not between", value1, value2, "stepSevenA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenBIsNull() {
+            addCriterion("step_seven_b is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenBIsNotNull() {
+            addCriterion("step_seven_b is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenBEqualTo(String value) {
+            addCriterion("step_seven_b =", value, "stepSevenB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenBNotEqualTo(String value) {
+            addCriterion("step_seven_b <>", value, "stepSevenB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenBGreaterThan(String value) {
+            addCriterion("step_seven_b >", value, "stepSevenB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenBGreaterThanOrEqualTo(String value) {
+            addCriterion("step_seven_b >=", value, "stepSevenB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenBLessThan(String value) {
+            addCriterion("step_seven_b <", value, "stepSevenB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenBLessThanOrEqualTo(String value) {
+            addCriterion("step_seven_b <=", value, "stepSevenB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenBLike(String value) {
+            addCriterion("step_seven_b like", value, "stepSevenB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenBNotLike(String value) {
+            addCriterion("step_seven_b not like", value, "stepSevenB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenBIn(List<String> values) {
+            addCriterion("step_seven_b in", values, "stepSevenB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenBNotIn(List<String> values) {
+            addCriterion("step_seven_b not in", values, "stepSevenB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenBBetween(String value1, String value2) {
+            addCriterion("step_seven_b between", value1, value2, "stepSevenB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenBNotBetween(String value1, String value2) {
+            addCriterion("step_seven_b not between", value1, value2, "stepSevenB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenCIsNull() {
+            addCriterion("step_seven_c is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenCIsNotNull() {
+            addCriterion("step_seven_c is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenCEqualTo(String value) {
+            addCriterion("step_seven_c =", value, "stepSevenC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenCNotEqualTo(String value) {
+            addCriterion("step_seven_c <>", value, "stepSevenC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenCGreaterThan(String value) {
+            addCriterion("step_seven_c >", value, "stepSevenC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenCGreaterThanOrEqualTo(String value) {
+            addCriterion("step_seven_c >=", value, "stepSevenC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenCLessThan(String value) {
+            addCriterion("step_seven_c <", value, "stepSevenC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenCLessThanOrEqualTo(String value) {
+            addCriterion("step_seven_c <=", value, "stepSevenC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenCLike(String value) {
+            addCriterion("step_seven_c like", value, "stepSevenC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenCNotLike(String value) {
+            addCriterion("step_seven_c not like", value, "stepSevenC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenCIn(List<String> values) {
+            addCriterion("step_seven_c in", values, "stepSevenC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenCNotIn(List<String> values) {
+            addCriterion("step_seven_c not in", values, "stepSevenC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenCBetween(String value1, String value2) {
+            addCriterion("step_seven_c between", value1, value2, "stepSevenC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenCNotBetween(String value1, String value2) {
+            addCriterion("step_seven_c not between", value1, value2, "stepSevenC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenDIsNull() {
+            addCriterion("step_seven_d is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenDIsNotNull() {
+            addCriterion("step_seven_d is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenDEqualTo(String value) {
+            addCriterion("step_seven_d =", value, "stepSevenD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenDNotEqualTo(String value) {
+            addCriterion("step_seven_d <>", value, "stepSevenD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenDGreaterThan(String value) {
+            addCriterion("step_seven_d >", value, "stepSevenD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenDGreaterThanOrEqualTo(String value) {
+            addCriterion("step_seven_d >=", value, "stepSevenD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenDLessThan(String value) {
+            addCriterion("step_seven_d <", value, "stepSevenD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenDLessThanOrEqualTo(String value) {
+            addCriterion("step_seven_d <=", value, "stepSevenD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenDLike(String value) {
+            addCriterion("step_seven_d like", value, "stepSevenD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenDNotLike(String value) {
+            addCriterion("step_seven_d not like", value, "stepSevenD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenDIn(List<String> values) {
+            addCriterion("step_seven_d in", values, "stepSevenD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenDNotIn(List<String> values) {
+            addCriterion("step_seven_d not in", values, "stepSevenD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenDBetween(String value1, String value2) {
+            addCriterion("step_seven_d between", value1, value2, "stepSevenD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenDNotBetween(String value1, String value2) {
+            addCriterion("step_seven_d not between", value1, value2, "stepSevenD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightAIsNull() {
+            addCriterion("step_eight_a is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightAIsNotNull() {
+            addCriterion("step_eight_a is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightAEqualTo(String value) {
+            addCriterion("step_eight_a =", value, "stepEightA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightANotEqualTo(String value) {
+            addCriterion("step_eight_a <>", value, "stepEightA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightAGreaterThan(String value) {
+            addCriterion("step_eight_a >", value, "stepEightA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightAGreaterThanOrEqualTo(String value) {
+            addCriterion("step_eight_a >=", value, "stepEightA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightALessThan(String value) {
+            addCriterion("step_eight_a <", value, "stepEightA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightALessThanOrEqualTo(String value) {
+            addCriterion("step_eight_a <=", value, "stepEightA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightALike(String value) {
+            addCriterion("step_eight_a like", value, "stepEightA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightANotLike(String value) {
+            addCriterion("step_eight_a not like", value, "stepEightA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightAIn(List<String> values) {
+            addCriterion("step_eight_a in", values, "stepEightA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightANotIn(List<String> values) {
+            addCriterion("step_eight_a not in", values, "stepEightA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightABetween(String value1, String value2) {
+            addCriterion("step_eight_a between", value1, value2, "stepEightA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightANotBetween(String value1, String value2) {
+            addCriterion("step_eight_a not between", value1, value2, "stepEightA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightBIsNull() {
+            addCriterion("step_eight_b is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightBIsNotNull() {
+            addCriterion("step_eight_b is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightBEqualTo(String value) {
+            addCriterion("step_eight_b =", value, "stepEightB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightBNotEqualTo(String value) {
+            addCriterion("step_eight_b <>", value, "stepEightB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightBGreaterThan(String value) {
+            addCriterion("step_eight_b >", value, "stepEightB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightBGreaterThanOrEqualTo(String value) {
+            addCriterion("step_eight_b >=", value, "stepEightB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightBLessThan(String value) {
+            addCriterion("step_eight_b <", value, "stepEightB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightBLessThanOrEqualTo(String value) {
+            addCriterion("step_eight_b <=", value, "stepEightB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightBLike(String value) {
+            addCriterion("step_eight_b like", value, "stepEightB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightBNotLike(String value) {
+            addCriterion("step_eight_b not like", value, "stepEightB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightBIn(List<String> values) {
+            addCriterion("step_eight_b in", values, "stepEightB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightBNotIn(List<String> values) {
+            addCriterion("step_eight_b not in", values, "stepEightB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightBBetween(String value1, String value2) {
+            addCriterion("step_eight_b between", value1, value2, "stepEightB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightBNotBetween(String value1, String value2) {
+            addCriterion("step_eight_b not between", value1, value2, "stepEightB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightCIsNull() {
+            addCriterion("step_eight_c is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightCIsNotNull() {
+            addCriterion("step_eight_c is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightCEqualTo(String value) {
+            addCriterion("step_eight_c =", value, "stepEightC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightCNotEqualTo(String value) {
+            addCriterion("step_eight_c <>", value, "stepEightC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightCGreaterThan(String value) {
+            addCriterion("step_eight_c >", value, "stepEightC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightCGreaterThanOrEqualTo(String value) {
+            addCriterion("step_eight_c >=", value, "stepEightC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightCLessThan(String value) {
+            addCriterion("step_eight_c <", value, "stepEightC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightCLessThanOrEqualTo(String value) {
+            addCriterion("step_eight_c <=", value, "stepEightC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightCLike(String value) {
+            addCriterion("step_eight_c like", value, "stepEightC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightCNotLike(String value) {
+            addCriterion("step_eight_c not like", value, "stepEightC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightCIn(List<String> values) {
+            addCriterion("step_eight_c in", values, "stepEightC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightCNotIn(List<String> values) {
+            addCriterion("step_eight_c not in", values, "stepEightC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightCBetween(String value1, String value2) {
+            addCriterion("step_eight_c between", value1, value2, "stepEightC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightCNotBetween(String value1, String value2) {
+            addCriterion("step_eight_c not between", value1, value2, "stepEightC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightDIsNull() {
+            addCriterion("step_eight_d is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightDIsNotNull() {
+            addCriterion("step_eight_d is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightDEqualTo(String value) {
+            addCriterion("step_eight_d =", value, "stepEightD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightDNotEqualTo(String value) {
+            addCriterion("step_eight_d <>", value, "stepEightD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightDGreaterThan(String value) {
+            addCriterion("step_eight_d >", value, "stepEightD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightDGreaterThanOrEqualTo(String value) {
+            addCriterion("step_eight_d >=", value, "stepEightD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightDLessThan(String value) {
+            addCriterion("step_eight_d <", value, "stepEightD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightDLessThanOrEqualTo(String value) {
+            addCriterion("step_eight_d <=", value, "stepEightD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightDLike(String value) {
+            addCriterion("step_eight_d like", value, "stepEightD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightDNotLike(String value) {
+            addCriterion("step_eight_d not like", value, "stepEightD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightDIn(List<String> values) {
+            addCriterion("step_eight_d in", values, "stepEightD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightDNotIn(List<String> values) {
+            addCriterion("step_eight_d not in", values, "stepEightD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightDBetween(String value1, String value2) {
+            addCriterion("step_eight_d between", value1, value2, "stepEightD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightDNotBetween(String value1, String value2) {
+            addCriterion("step_eight_d not between", value1, value2, "stepEightD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineAIsNull() {
+            addCriterion("step_nine_a is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineAIsNotNull() {
+            addCriterion("step_nine_a is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineAEqualTo(String value) {
+            addCriterion("step_nine_a =", value, "stepNineA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineANotEqualTo(String value) {
+            addCriterion("step_nine_a <>", value, "stepNineA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineAGreaterThan(String value) {
+            addCriterion("step_nine_a >", value, "stepNineA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineAGreaterThanOrEqualTo(String value) {
+            addCriterion("step_nine_a >=", value, "stepNineA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineALessThan(String value) {
+            addCriterion("step_nine_a <", value, "stepNineA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineALessThanOrEqualTo(String value) {
+            addCriterion("step_nine_a <=", value, "stepNineA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineALike(String value) {
+            addCriterion("step_nine_a like", value, "stepNineA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineANotLike(String value) {
+            addCriterion("step_nine_a not like", value, "stepNineA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineAIn(List<String> values) {
+            addCriterion("step_nine_a in", values, "stepNineA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineANotIn(List<String> values) {
+            addCriterion("step_nine_a not in", values, "stepNineA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineABetween(String value1, String value2) {
+            addCriterion("step_nine_a between", value1, value2, "stepNineA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineANotBetween(String value1, String value2) {
+            addCriterion("step_nine_a not between", value1, value2, "stepNineA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineBIsNull() {
+            addCriterion("step_nine_b is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineBIsNotNull() {
+            addCriterion("step_nine_b is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineBEqualTo(String value) {
+            addCriterion("step_nine_b =", value, "stepNineB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineBNotEqualTo(String value) {
+            addCriterion("step_nine_b <>", value, "stepNineB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineBGreaterThan(String value) {
+            addCriterion("step_nine_b >", value, "stepNineB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineBGreaterThanOrEqualTo(String value) {
+            addCriterion("step_nine_b >=", value, "stepNineB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineBLessThan(String value) {
+            addCriterion("step_nine_b <", value, "stepNineB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineBLessThanOrEqualTo(String value) {
+            addCriterion("step_nine_b <=", value, "stepNineB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineBLike(String value) {
+            addCriterion("step_nine_b like", value, "stepNineB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineBNotLike(String value) {
+            addCriterion("step_nine_b not like", value, "stepNineB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineBIn(List<String> values) {
+            addCriterion("step_nine_b in", values, "stepNineB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineBNotIn(List<String> values) {
+            addCriterion("step_nine_b not in", values, "stepNineB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineBBetween(String value1, String value2) {
+            addCriterion("step_nine_b between", value1, value2, "stepNineB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineBNotBetween(String value1, String value2) {
+            addCriterion("step_nine_b not between", value1, value2, "stepNineB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineCIsNull() {
+            addCriterion("step_nine_c is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineCIsNotNull() {
+            addCriterion("step_nine_c is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineCEqualTo(String value) {
+            addCriterion("step_nine_c =", value, "stepNineC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineCNotEqualTo(String value) {
+            addCriterion("step_nine_c <>", value, "stepNineC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineCGreaterThan(String value) {
+            addCriterion("step_nine_c >", value, "stepNineC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineCGreaterThanOrEqualTo(String value) {
+            addCriterion("step_nine_c >=", value, "stepNineC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineCLessThan(String value) {
+            addCriterion("step_nine_c <", value, "stepNineC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineCLessThanOrEqualTo(String value) {
+            addCriterion("step_nine_c <=", value, "stepNineC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineCLike(String value) {
+            addCriterion("step_nine_c like", value, "stepNineC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineCNotLike(String value) {
+            addCriterion("step_nine_c not like", value, "stepNineC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineCIn(List<String> values) {
+            addCriterion("step_nine_c in", values, "stepNineC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineCNotIn(List<String> values) {
+            addCriterion("step_nine_c not in", values, "stepNineC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineCBetween(String value1, String value2) {
+            addCriterion("step_nine_c between", value1, value2, "stepNineC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineCNotBetween(String value1, String value2) {
+            addCriterion("step_nine_c not between", value1, value2, "stepNineC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineDIsNull() {
+            addCriterion("step_nine_d is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineDIsNotNull() {
+            addCriterion("step_nine_d is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineDEqualTo(String value) {
+            addCriterion("step_nine_d =", value, "stepNineD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineDNotEqualTo(String value) {
+            addCriterion("step_nine_d <>", value, "stepNineD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineDGreaterThan(String value) {
+            addCriterion("step_nine_d >", value, "stepNineD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineDGreaterThanOrEqualTo(String value) {
+            addCriterion("step_nine_d >=", value, "stepNineD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineDLessThan(String value) {
+            addCriterion("step_nine_d <", value, "stepNineD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineDLessThanOrEqualTo(String value) {
+            addCriterion("step_nine_d <=", value, "stepNineD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineDLike(String value) {
+            addCriterion("step_nine_d like", value, "stepNineD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineDNotLike(String value) {
+            addCriterion("step_nine_d not like", value, "stepNineD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineDIn(List<String> values) {
+            addCriterion("step_nine_d in", values, "stepNineD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineDNotIn(List<String> values) {
+            addCriterion("step_nine_d not in", values, "stepNineD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineDBetween(String value1, String value2) {
+            addCriterion("step_nine_d between", value1, value2, "stepNineD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineDNotBetween(String value1, String value2) {
+            addCriterion("step_nine_d not between", value1, value2, "stepNineD");
+            return (Criteria) this;
+        }
+
+        public Criteria andUserIdIsNull() {
+            addCriterion("user_id is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andUserIdIsNotNull() {
+            addCriterion("user_id is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andUserIdEqualTo(String value) {
+            addCriterion("user_id =", value, "userId");
+            return (Criteria) this;
+        }
+
+        public Criteria andUserIdNotEqualTo(String value) {
+            addCriterion("user_id <>", value, "userId");
+            return (Criteria) this;
+        }
+
+        public Criteria andUserIdGreaterThan(String value) {
+            addCriterion("user_id >", value, "userId");
+            return (Criteria) this;
+        }
+
+        public Criteria andUserIdGreaterThanOrEqualTo(String value) {
+            addCriterion("user_id >=", value, "userId");
+            return (Criteria) this;
+        }
+
+        public Criteria andUserIdLessThan(String value) {
+            addCriterion("user_id <", value, "userId");
+            return (Criteria) this;
+        }
+
+        public Criteria andUserIdLessThanOrEqualTo(String value) {
+            addCriterion("user_id <=", value, "userId");
+            return (Criteria) this;
+        }
+
+        public Criteria andUserIdLike(String value) {
+            addCriterion("user_id like", value, "userId");
+            return (Criteria) this;
+        }
+
+        public Criteria andUserIdNotLike(String value) {
+            addCriterion("user_id not like", value, "userId");
+            return (Criteria) this;
+        }
+
+        public Criteria andUserIdIn(List<String> values) {
+            addCriterion("user_id in", values, "userId");
+            return (Criteria) this;
+        }
+
+        public Criteria andUserIdNotIn(List<String> values) {
+            addCriterion("user_id not in", values, "userId");
+            return (Criteria) this;
+        }
+
+        public Criteria andUserIdBetween(String value1, String value2) {
+            addCriterion("user_id between", value1, value2, "userId");
+            return (Criteria) this;
+        }
+
+        public Criteria andUserIdNotBetween(String value1, String value2) {
+            addCriterion("user_id not between", value1, value2, "userId");
+            return (Criteria) this;
+        }
+
+        public Criteria andSubStateIsNull() {
+            addCriterion("sub_state is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andSubStateIsNotNull() {
+            addCriterion("sub_state is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andSubStateEqualTo(Integer value) {
+            addCriterion("sub_state =", value, "subState");
+            return (Criteria) this;
+        }
+
+        public Criteria andSubStateNotEqualTo(Integer value) {
+            addCriterion("sub_state <>", value, "subState");
+            return (Criteria) this;
+        }
+
+        public Criteria andSubStateGreaterThan(Integer value) {
+            addCriterion("sub_state >", value, "subState");
+            return (Criteria) this;
+        }
+
+        public Criteria andSubStateGreaterThanOrEqualTo(Integer value) {
+            addCriterion("sub_state >=", value, "subState");
+            return (Criteria) this;
+        }
+
+        public Criteria andSubStateLessThan(Integer value) {
+            addCriterion("sub_state <", value, "subState");
+            return (Criteria) this;
+        }
+
+        public Criteria andSubStateLessThanOrEqualTo(Integer value) {
+            addCriterion("sub_state <=", value, "subState");
+            return (Criteria) this;
+        }
+
+        public Criteria andSubStateIn(List<Integer> values) {
+            addCriterion("sub_state in", values, "subState");
+            return (Criteria) this;
+        }
+
+        public Criteria andSubStateNotIn(List<Integer> values) {
+            addCriterion("sub_state not in", values, "subState");
+            return (Criteria) this;
+        }
+
+        public Criteria andSubStateBetween(Integer value1, Integer value2) {
+            addCriterion("sub_state between", value1, value2, "subState");
+            return (Criteria) this;
+        }
+
+        public Criteria andSubStateNotBetween(Integer value1, Integer value2) {
+            addCriterion("sub_state not between", value1, value2, "subState");
+            return (Criteria) this;
+        }
+
+        public Criteria andModuleIsNull() {
+            addCriterion("module is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andModuleIsNotNull() {
+            addCriterion("module is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andModuleEqualTo(String value) {
+            addCriterion("module =", value, "module");
+            return (Criteria) this;
+        }
+
+        public Criteria andModuleNotEqualTo(String value) {
+            addCriterion("module <>", value, "module");
+            return (Criteria) this;
+        }
+
+        public Criteria andModuleGreaterThan(String value) {
+            addCriterion("module >", value, "module");
+            return (Criteria) this;
+        }
+
+        public Criteria andModuleGreaterThanOrEqualTo(String value) {
+            addCriterion("module >=", value, "module");
+            return (Criteria) this;
+        }
+
+        public Criteria andModuleLessThan(String value) {
+            addCriterion("module <", value, "module");
+            return (Criteria) this;
+        }
+
+        public Criteria andModuleLessThanOrEqualTo(String value) {
+            addCriterion("module <=", value, "module");
+            return (Criteria) this;
+        }
+
+        public Criteria andModuleLike(String value) {
+            addCriterion("module like", value, "module");
+            return (Criteria) this;
+        }
+
+        public Criteria andModuleNotLike(String value) {
+            addCriterion("module not like", value, "module");
+            return (Criteria) this;
+        }
+
+        public Criteria andModuleIn(List<String> values) {
+            addCriterion("module in", values, "module");
+            return (Criteria) this;
+        }
+
+        public Criteria andModuleNotIn(List<String> values) {
+            addCriterion("module not in", values, "module");
+            return (Criteria) this;
+        }
+
+        public Criteria andModuleBetween(String value1, String value2) {
+            addCriterion("module between", value1, value2, "module");
+            return (Criteria) this;
+        }
+
+        public Criteria andModuleNotBetween(String value1, String value2) {
+            addCriterion("module not between", value1, value2, "module");
+            return (Criteria) this;
+        }
+    }
+
+    public static class Criteria extends GeneratedCriteria {
+        protected Criteria() {
+            super();
+        }
+    }
+
+    public static class Criterion {
+        private String condition;
+
+        private Object value;
+
+        private Object secondValue;
+
+        private boolean noValue;
+
+        private boolean singleValue;
+
+        private boolean betweenValue;
+
+        private boolean listValue;
+
+        private String typeHandler;
+
+        public String getCondition() {
+            return condition;
+        }
+
+        public Object getValue() {
+            return value;
+        }
+
+        public Object getSecondValue() {
+            return secondValue;
+        }
+
+        public boolean isNoValue() {
+            return noValue;
+        }
+
+        public boolean isSingleValue() {
+            return singleValue;
+        }
+
+        public boolean isBetweenValue() {
+            return betweenValue;
+        }
+
+        public boolean isListValue() {
+            return listValue;
+        }
+
+        public String getTypeHandler() {
+            return typeHandler;
+        }
+
+        protected Criterion(String condition) {
+            super();
+            this.condition = condition;
+            this.typeHandler = null;
+            this.noValue = true;
+        }
+
+        protected Criterion(String condition, Object value, String typeHandler) {
+            super();
+            this.condition = condition;
+            this.value = value;
+            this.typeHandler = typeHandler;
+            if (value instanceof List<?>) {
+                this.listValue = true;
+            } else {
+                this.singleValue = true;
+            }
+        }
+
+        protected Criterion(String condition, Object value) {
+            this(condition, value, null);
+        }
+
+        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
+            super();
+            this.condition = condition;
+            this.value = value;
+            this.secondValue = secondValue;
+            this.typeHandler = typeHandler;
+            this.betweenValue = true;
+        }
+
+        protected Criterion(String condition, Object value, Object secondValue) {
+            this(condition, value, secondValue, null);
+        }
+    }
+}
\ No newline at end of file
diff --git a/src/main/java/com/sztzjy/digital_credit/entity/StuUserPortrait.java b/src/main/java/com/sztzjy/digital_credit/entity/StuUserPortrait.java
new file mode 100644
index 0000000..eb00b13
--- /dev/null
+++ b/src/main/java/com/sztzjy/digital_credit/entity/StuUserPortrait.java
@@ -0,0 +1,439 @@
+package com.sztzjy.digital_credit.entity;
+
+import io.swagger.annotations.ApiModelProperty;
+/**
+ * 综合案例:用户画像
+ *
+ * @author whb
+ * stu_user_portrait
+ */
+public class StuUserPortrait {
+    @ApiModelProperty("id")
+    private Integer id;
+
+    @ApiModelProperty("步骤一  a")
+    private String stepOneA;
+
+    @ApiModelProperty("步骤一  b")
+    private String stepOneB;
+
+    @ApiModelProperty("步骤一  c")
+    private String stepOneC;
+
+    @ApiModelProperty("步骤一  d")
+    private String stepOneD;
+
+    @ApiModelProperty("4")
+    private String stepTwoA;
+
+    @ApiModelProperty("5")
+    private String stepTwoB;
+
+    @ApiModelProperty("6")
+    private String stepTwoC;
+
+    @ApiModelProperty("7")
+    private String stepThreeA;
+
+    @ApiModelProperty("8")
+    private String stepThreeB;
+
+    @ApiModelProperty("9")
+    private String stepThreeC;
+
+    @ApiModelProperty("10")
+    private String stepThreeD;
+
+    @ApiModelProperty("11")
+    private String stepFourA;
+
+    @ApiModelProperty("12")
+    private String stepFourB;
+
+    @ApiModelProperty("13")
+    private String stepFourC;
+
+    @ApiModelProperty("14")
+    private String stepFourD;
+
+    @ApiModelProperty("15")
+    private String stepFiveA;
+
+    @ApiModelProperty("16")
+    private String stepFiveB;
+
+    @ApiModelProperty("17")
+    private String stepFiveC;
+
+    @ApiModelProperty("18")
+    private String stepFiveD;
+
+    @ApiModelProperty("19")
+    private String stepSixA;
+
+    @ApiModelProperty("20")
+    private String stepSixB;
+
+    @ApiModelProperty("21")
+    private String stepSixC;
+
+    @ApiModelProperty("22")
+    private String stepSixD;
+
+    @ApiModelProperty("23")
+    private String stepSevenA;
+
+    @ApiModelProperty("24")
+    private String stepSevenB;
+
+    @ApiModelProperty("25")
+    private String stepSevenC;
+
+    @ApiModelProperty("26")
+    private String stepSevenD;
+
+    @ApiModelProperty("27")
+    private String stepEightA;
+
+    @ApiModelProperty("28")
+    private String stepEightB;
+
+    @ApiModelProperty("29")
+    private String stepEightC;
+
+    @ApiModelProperty("30")
+    private String stepEightD;
+
+    @ApiModelProperty("31")
+    private String stepNineA;
+
+    @ApiModelProperty("32")
+    private String stepNineB;
+
+    @ApiModelProperty("33")
+    private String stepNineC;
+
+    @ApiModelProperty("34")
+    private String stepNineD;
+
+    @ApiModelProperty("用户ID")
+    private String userId;
+
+    @ApiModelProperty("提交状态")
+    private Integer subState;
+
+    @ApiModelProperty("归属模块(小模块)")
+    private String module;
+
+    public Integer getId() {
+        return id;
+    }
+
+    public void setId(Integer id) {
+        this.id = id;
+    }
+
+    public String getStepOneA() {
+        return stepOneA;
+    }
+
+    public void setStepOneA(String stepOneA) {
+        this.stepOneA = stepOneA == null ? null : stepOneA.trim();
+    }
+
+    public String getStepOneB() {
+        return stepOneB;
+    }
+
+    public void setStepOneB(String stepOneB) {
+        this.stepOneB = stepOneB == null ? null : stepOneB.trim();
+    }
+
+    public String getStepOneC() {
+        return stepOneC;
+    }
+
+    public void setStepOneC(String stepOneC) {
+        this.stepOneC = stepOneC == null ? null : stepOneC.trim();
+    }
+
+    public String getStepOneD() {
+        return stepOneD;
+    }
+
+    public void setStepOneD(String stepOneD) {
+        this.stepOneD = stepOneD == null ? null : stepOneD.trim();
+    }
+
+    public String getStepTwoA() {
+        return stepTwoA;
+    }
+
+    public void setStepTwoA(String stepTwoA) {
+        this.stepTwoA = stepTwoA == null ? null : stepTwoA.trim();
+    }
+
+    public String getStepTwoB() {
+        return stepTwoB;
+    }
+
+    public void setStepTwoB(String stepTwoB) {
+        this.stepTwoB = stepTwoB == null ? null : stepTwoB.trim();
+    }
+
+    public String getStepTwoC() {
+        return stepTwoC;
+    }
+
+    public void setStepTwoC(String stepTwoC) {
+        this.stepTwoC = stepTwoC == null ? null : stepTwoC.trim();
+    }
+
+    public String getStepThreeA() {
+        return stepThreeA;
+    }
+
+    public void setStepThreeA(String stepThreeA) {
+        this.stepThreeA = stepThreeA == null ? null : stepThreeA.trim();
+    }
+
+    public String getStepThreeB() {
+        return stepThreeB;
+    }
+
+    public void setStepThreeB(String stepThreeB) {
+        this.stepThreeB = stepThreeB == null ? null : stepThreeB.trim();
+    }
+
+    public String getStepThreeC() {
+        return stepThreeC;
+    }
+
+    public void setStepThreeC(String stepThreeC) {
+        this.stepThreeC = stepThreeC == null ? null : stepThreeC.trim();
+    }
+
+    public String getStepThreeD() {
+        return stepThreeD;
+    }
+
+    public void setStepThreeD(String stepThreeD) {
+        this.stepThreeD = stepThreeD == null ? null : stepThreeD.trim();
+    }
+
+    public String getStepFourA() {
+        return stepFourA;
+    }
+
+    public void setStepFourA(String stepFourA) {
+        this.stepFourA = stepFourA == null ? null : stepFourA.trim();
+    }
+
+    public String getStepFourB() {
+        return stepFourB;
+    }
+
+    public void setStepFourB(String stepFourB) {
+        this.stepFourB = stepFourB == null ? null : stepFourB.trim();
+    }
+
+    public String getStepFourC() {
+        return stepFourC;
+    }
+
+    public void setStepFourC(String stepFourC) {
+        this.stepFourC = stepFourC == null ? null : stepFourC.trim();
+    }
+
+    public String getStepFourD() {
+        return stepFourD;
+    }
+
+    public void setStepFourD(String stepFourD) {
+        this.stepFourD = stepFourD == null ? null : stepFourD.trim();
+    }
+
+    public String getStepFiveA() {
+        return stepFiveA;
+    }
+
+    public void setStepFiveA(String stepFiveA) {
+        this.stepFiveA = stepFiveA == null ? null : stepFiveA.trim();
+    }
+
+    public String getStepFiveB() {
+        return stepFiveB;
+    }
+
+    public void setStepFiveB(String stepFiveB) {
+        this.stepFiveB = stepFiveB == null ? null : stepFiveB.trim();
+    }
+
+    public String getStepFiveC() {
+        return stepFiveC;
+    }
+
+    public void setStepFiveC(String stepFiveC) {
+        this.stepFiveC = stepFiveC == null ? null : stepFiveC.trim();
+    }
+
+    public String getStepFiveD() {
+        return stepFiveD;
+    }
+
+    public void setStepFiveD(String stepFiveD) {
+        this.stepFiveD = stepFiveD == null ? null : stepFiveD.trim();
+    }
+
+    public String getStepSixA() {
+        return stepSixA;
+    }
+
+    public void setStepSixA(String stepSixA) {
+        this.stepSixA = stepSixA == null ? null : stepSixA.trim();
+    }
+
+    public String getStepSixB() {
+        return stepSixB;
+    }
+
+    public void setStepSixB(String stepSixB) {
+        this.stepSixB = stepSixB == null ? null : stepSixB.trim();
+    }
+
+    public String getStepSixC() {
+        return stepSixC;
+    }
+
+    public void setStepSixC(String stepSixC) {
+        this.stepSixC = stepSixC == null ? null : stepSixC.trim();
+    }
+
+    public String getStepSixD() {
+        return stepSixD;
+    }
+
+    public void setStepSixD(String stepSixD) {
+        this.stepSixD = stepSixD == null ? null : stepSixD.trim();
+    }
+
+    public String getStepSevenA() {
+        return stepSevenA;
+    }
+
+    public void setStepSevenA(String stepSevenA) {
+        this.stepSevenA = stepSevenA == null ? null : stepSevenA.trim();
+    }
+
+    public String getStepSevenB() {
+        return stepSevenB;
+    }
+
+    public void setStepSevenB(String stepSevenB) {
+        this.stepSevenB = stepSevenB == null ? null : stepSevenB.trim();
+    }
+
+    public String getStepSevenC() {
+        return stepSevenC;
+    }
+
+    public void setStepSevenC(String stepSevenC) {
+        this.stepSevenC = stepSevenC == null ? null : stepSevenC.trim();
+    }
+
+    public String getStepSevenD() {
+        return stepSevenD;
+    }
+
+    public void setStepSevenD(String stepSevenD) {
+        this.stepSevenD = stepSevenD == null ? null : stepSevenD.trim();
+    }
+
+    public String getStepEightA() {
+        return stepEightA;
+    }
+
+    public void setStepEightA(String stepEightA) {
+        this.stepEightA = stepEightA == null ? null : stepEightA.trim();
+    }
+
+    public String getStepEightB() {
+        return stepEightB;
+    }
+
+    public void setStepEightB(String stepEightB) {
+        this.stepEightB = stepEightB == null ? null : stepEightB.trim();
+    }
+
+    public String getStepEightC() {
+        return stepEightC;
+    }
+
+    public void setStepEightC(String stepEightC) {
+        this.stepEightC = stepEightC == null ? null : stepEightC.trim();
+    }
+
+    public String getStepEightD() {
+        return stepEightD;
+    }
+
+    public void setStepEightD(String stepEightD) {
+        this.stepEightD = stepEightD == null ? null : stepEightD.trim();
+    }
+
+    public String getStepNineA() {
+        return stepNineA;
+    }
+
+    public void setStepNineA(String stepNineA) {
+        this.stepNineA = stepNineA == null ? null : stepNineA.trim();
+    }
+
+    public String getStepNineB() {
+        return stepNineB;
+    }
+
+    public void setStepNineB(String stepNineB) {
+        this.stepNineB = stepNineB == null ? null : stepNineB.trim();
+    }
+
+    public String getStepNineC() {
+        return stepNineC;
+    }
+
+    public void setStepNineC(String stepNineC) {
+        this.stepNineC = stepNineC == null ? null : stepNineC.trim();
+    }
+
+    public String getStepNineD() {
+        return stepNineD;
+    }
+
+    public void setStepNineD(String stepNineD) {
+        this.stepNineD = stepNineD == null ? null : stepNineD.trim();
+    }
+
+    public String getUserId() {
+        return userId;
+    }
+
+    public void setUserId(String userId) {
+        this.userId = userId == null ? null : userId.trim();
+    }
+
+    public Integer getSubState() {
+        return subState;
+    }
+
+    public void setSubState(Integer subState) {
+        this.subState = subState;
+    }
+
+    public String getModule() {
+        return module;
+    }
+
+    public void setModule(String module) {
+        this.module = module == null ? null : module.trim();
+    }
+}
\ No newline at end of file
diff --git a/src/main/java/com/sztzjy/digital_credit/entity/StuUserPortraitExample.java b/src/main/java/com/sztzjy/digital_credit/entity/StuUserPortraitExample.java
new file mode 100644
index 0000000..1767095
--- /dev/null
+++ b/src/main/java/com/sztzjy/digital_credit/entity/StuUserPortraitExample.java
@@ -0,0 +1,2909 @@
+package com.sztzjy.digital_credit.entity;
+
+import java.util.ArrayList;
+import java.util.List;
+
+public class StuUserPortraitExample {
+    protected String orderByClause;
+
+    protected boolean distinct;
+
+    protected List<Criteria> oredCriteria;
+
+    public StuUserPortraitExample() {
+        oredCriteria = new ArrayList<>();
+    }
+
+    public void setOrderByClause(String orderByClause) {
+        this.orderByClause = orderByClause;
+    }
+
+    public String getOrderByClause() {
+        return orderByClause;
+    }
+
+    public void setDistinct(boolean distinct) {
+        this.distinct = distinct;
+    }
+
+    public boolean isDistinct() {
+        return distinct;
+    }
+
+    public List<Criteria> getOredCriteria() {
+        return oredCriteria;
+    }
+
+    public void or(Criteria criteria) {
+        oredCriteria.add(criteria);
+    }
+
+    public Criteria or() {
+        Criteria criteria = createCriteriaInternal();
+        oredCriteria.add(criteria);
+        return criteria;
+    }
+
+    public Criteria createCriteria() {
+        Criteria criteria = createCriteriaInternal();
+        if (oredCriteria.size() == 0) {
+            oredCriteria.add(criteria);
+        }
+        return criteria;
+    }
+
+    protected Criteria createCriteriaInternal() {
+        Criteria criteria = new Criteria();
+        return criteria;
+    }
+
+    public void clear() {
+        oredCriteria.clear();
+        orderByClause = null;
+        distinct = false;
+    }
+
+    protected abstract static class GeneratedCriteria {
+        protected List<Criterion> criteria;
+
+        protected GeneratedCriteria() {
+            super();
+            criteria = new ArrayList<>();
+        }
+
+        public boolean isValid() {
+            return criteria.size() > 0;
+        }
+
+        public List<Criterion> getAllCriteria() {
+            return criteria;
+        }
+
+        public List<Criterion> getCriteria() {
+            return criteria;
+        }
+
+        protected void addCriterion(String condition) {
+            if (condition == null) {
+                throw new RuntimeException("Value for condition cannot be null");
+            }
+            criteria.add(new Criterion(condition));
+        }
+
+        protected void addCriterion(String condition, Object value, String property) {
+            if (value == null) {
+                throw new RuntimeException("Value for " + property + " cannot be null");
+            }
+            criteria.add(new Criterion(condition, value));
+        }
+
+        protected void addCriterion(String condition, Object value1, Object value2, String property) {
+            if (value1 == null || value2 == null) {
+                throw new RuntimeException("Between values for " + property + " cannot be null");
+            }
+            criteria.add(new Criterion(condition, value1, value2));
+        }
+
+        public Criteria andIdIsNull() {
+            addCriterion("id is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdIsNotNull() {
+            addCriterion("id is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdEqualTo(Integer value) {
+            addCriterion("id =", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdNotEqualTo(Integer value) {
+            addCriterion("id <>", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdGreaterThan(Integer value) {
+            addCriterion("id >", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdGreaterThanOrEqualTo(Integer value) {
+            addCriterion("id >=", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdLessThan(Integer value) {
+            addCriterion("id <", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdLessThanOrEqualTo(Integer value) {
+            addCriterion("id <=", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdIn(List<Integer> values) {
+            addCriterion("id in", values, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdNotIn(List<Integer> values) {
+            addCriterion("id not in", values, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdBetween(Integer value1, Integer value2) {
+            addCriterion("id between", value1, value2, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdNotBetween(Integer value1, Integer value2) {
+            addCriterion("id not between", value1, value2, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneAIsNull() {
+            addCriterion("step_one_a is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneAIsNotNull() {
+            addCriterion("step_one_a is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneAEqualTo(String value) {
+            addCriterion("step_one_a =", value, "stepOneA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneANotEqualTo(String value) {
+            addCriterion("step_one_a <>", value, "stepOneA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneAGreaterThan(String value) {
+            addCriterion("step_one_a >", value, "stepOneA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneAGreaterThanOrEqualTo(String value) {
+            addCriterion("step_one_a >=", value, "stepOneA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneALessThan(String value) {
+            addCriterion("step_one_a <", value, "stepOneA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneALessThanOrEqualTo(String value) {
+            addCriterion("step_one_a <=", value, "stepOneA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneALike(String value) {
+            addCriterion("step_one_a like", value, "stepOneA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneANotLike(String value) {
+            addCriterion("step_one_a not like", value, "stepOneA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneAIn(List<String> values) {
+            addCriterion("step_one_a in", values, "stepOneA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneANotIn(List<String> values) {
+            addCriterion("step_one_a not in", values, "stepOneA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneABetween(String value1, String value2) {
+            addCriterion("step_one_a between", value1, value2, "stepOneA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneANotBetween(String value1, String value2) {
+            addCriterion("step_one_a not between", value1, value2, "stepOneA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneBIsNull() {
+            addCriterion("step_one_b is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneBIsNotNull() {
+            addCriterion("step_one_b is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneBEqualTo(String value) {
+            addCriterion("step_one_b =", value, "stepOneB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneBNotEqualTo(String value) {
+            addCriterion("step_one_b <>", value, "stepOneB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneBGreaterThan(String value) {
+            addCriterion("step_one_b >", value, "stepOneB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneBGreaterThanOrEqualTo(String value) {
+            addCriterion("step_one_b >=", value, "stepOneB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneBLessThan(String value) {
+            addCriterion("step_one_b <", value, "stepOneB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneBLessThanOrEqualTo(String value) {
+            addCriterion("step_one_b <=", value, "stepOneB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneBLike(String value) {
+            addCriterion("step_one_b like", value, "stepOneB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneBNotLike(String value) {
+            addCriterion("step_one_b not like", value, "stepOneB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneBIn(List<String> values) {
+            addCriterion("step_one_b in", values, "stepOneB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneBNotIn(List<String> values) {
+            addCriterion("step_one_b not in", values, "stepOneB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneBBetween(String value1, String value2) {
+            addCriterion("step_one_b between", value1, value2, "stepOneB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneBNotBetween(String value1, String value2) {
+            addCriterion("step_one_b not between", value1, value2, "stepOneB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneCIsNull() {
+            addCriterion("step_one_c is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneCIsNotNull() {
+            addCriterion("step_one_c is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneCEqualTo(String value) {
+            addCriterion("step_one_c =", value, "stepOneC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneCNotEqualTo(String value) {
+            addCriterion("step_one_c <>", value, "stepOneC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneCGreaterThan(String value) {
+            addCriterion("step_one_c >", value, "stepOneC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneCGreaterThanOrEqualTo(String value) {
+            addCriterion("step_one_c >=", value, "stepOneC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneCLessThan(String value) {
+            addCriterion("step_one_c <", value, "stepOneC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneCLessThanOrEqualTo(String value) {
+            addCriterion("step_one_c <=", value, "stepOneC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneCLike(String value) {
+            addCriterion("step_one_c like", value, "stepOneC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneCNotLike(String value) {
+            addCriterion("step_one_c not like", value, "stepOneC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneCIn(List<String> values) {
+            addCriterion("step_one_c in", values, "stepOneC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneCNotIn(List<String> values) {
+            addCriterion("step_one_c not in", values, "stepOneC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneCBetween(String value1, String value2) {
+            addCriterion("step_one_c between", value1, value2, "stepOneC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneCNotBetween(String value1, String value2) {
+            addCriterion("step_one_c not between", value1, value2, "stepOneC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneDIsNull() {
+            addCriterion("step_one_d is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneDIsNotNull() {
+            addCriterion("step_one_d is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneDEqualTo(String value) {
+            addCriterion("step_one_d =", value, "stepOneD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneDNotEqualTo(String value) {
+            addCriterion("step_one_d <>", value, "stepOneD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneDGreaterThan(String value) {
+            addCriterion("step_one_d >", value, "stepOneD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneDGreaterThanOrEqualTo(String value) {
+            addCriterion("step_one_d >=", value, "stepOneD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneDLessThan(String value) {
+            addCriterion("step_one_d <", value, "stepOneD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneDLessThanOrEqualTo(String value) {
+            addCriterion("step_one_d <=", value, "stepOneD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneDLike(String value) {
+            addCriterion("step_one_d like", value, "stepOneD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneDNotLike(String value) {
+            addCriterion("step_one_d not like", value, "stepOneD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneDIn(List<String> values) {
+            addCriterion("step_one_d in", values, "stepOneD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneDNotIn(List<String> values) {
+            addCriterion("step_one_d not in", values, "stepOneD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneDBetween(String value1, String value2) {
+            addCriterion("step_one_d between", value1, value2, "stepOneD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepOneDNotBetween(String value1, String value2) {
+            addCriterion("step_one_d not between", value1, value2, "stepOneD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoAIsNull() {
+            addCriterion("step_two_a is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoAIsNotNull() {
+            addCriterion("step_two_a is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoAEqualTo(String value) {
+            addCriterion("step_two_a =", value, "stepTwoA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoANotEqualTo(String value) {
+            addCriterion("step_two_a <>", value, "stepTwoA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoAGreaterThan(String value) {
+            addCriterion("step_two_a >", value, "stepTwoA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoAGreaterThanOrEqualTo(String value) {
+            addCriterion("step_two_a >=", value, "stepTwoA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoALessThan(String value) {
+            addCriterion("step_two_a <", value, "stepTwoA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoALessThanOrEqualTo(String value) {
+            addCriterion("step_two_a <=", value, "stepTwoA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoALike(String value) {
+            addCriterion("step_two_a like", value, "stepTwoA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoANotLike(String value) {
+            addCriterion("step_two_a not like", value, "stepTwoA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoAIn(List<String> values) {
+            addCriterion("step_two_a in", values, "stepTwoA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoANotIn(List<String> values) {
+            addCriterion("step_two_a not in", values, "stepTwoA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoABetween(String value1, String value2) {
+            addCriterion("step_two_a between", value1, value2, "stepTwoA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoANotBetween(String value1, String value2) {
+            addCriterion("step_two_a not between", value1, value2, "stepTwoA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoBIsNull() {
+            addCriterion("step_two_b is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoBIsNotNull() {
+            addCriterion("step_two_b is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoBEqualTo(String value) {
+            addCriterion("step_two_b =", value, "stepTwoB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoBNotEqualTo(String value) {
+            addCriterion("step_two_b <>", value, "stepTwoB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoBGreaterThan(String value) {
+            addCriterion("step_two_b >", value, "stepTwoB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoBGreaterThanOrEqualTo(String value) {
+            addCriterion("step_two_b >=", value, "stepTwoB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoBLessThan(String value) {
+            addCriterion("step_two_b <", value, "stepTwoB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoBLessThanOrEqualTo(String value) {
+            addCriterion("step_two_b <=", value, "stepTwoB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoBLike(String value) {
+            addCriterion("step_two_b like", value, "stepTwoB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoBNotLike(String value) {
+            addCriterion("step_two_b not like", value, "stepTwoB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoBIn(List<String> values) {
+            addCriterion("step_two_b in", values, "stepTwoB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoBNotIn(List<String> values) {
+            addCriterion("step_two_b not in", values, "stepTwoB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoBBetween(String value1, String value2) {
+            addCriterion("step_two_b between", value1, value2, "stepTwoB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoBNotBetween(String value1, String value2) {
+            addCriterion("step_two_b not between", value1, value2, "stepTwoB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoCIsNull() {
+            addCriterion("step_two_c is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoCIsNotNull() {
+            addCriterion("step_two_c is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoCEqualTo(String value) {
+            addCriterion("step_two_c =", value, "stepTwoC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoCNotEqualTo(String value) {
+            addCriterion("step_two_c <>", value, "stepTwoC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoCGreaterThan(String value) {
+            addCriterion("step_two_c >", value, "stepTwoC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoCGreaterThanOrEqualTo(String value) {
+            addCriterion("step_two_c >=", value, "stepTwoC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoCLessThan(String value) {
+            addCriterion("step_two_c <", value, "stepTwoC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoCLessThanOrEqualTo(String value) {
+            addCriterion("step_two_c <=", value, "stepTwoC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoCLike(String value) {
+            addCriterion("step_two_c like", value, "stepTwoC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoCNotLike(String value) {
+            addCriterion("step_two_c not like", value, "stepTwoC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoCIn(List<String> values) {
+            addCriterion("step_two_c in", values, "stepTwoC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoCNotIn(List<String> values) {
+            addCriterion("step_two_c not in", values, "stepTwoC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoCBetween(String value1, String value2) {
+            addCriterion("step_two_c between", value1, value2, "stepTwoC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepTwoCNotBetween(String value1, String value2) {
+            addCriterion("step_two_c not between", value1, value2, "stepTwoC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeAIsNull() {
+            addCriterion("step_three_a is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeAIsNotNull() {
+            addCriterion("step_three_a is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeAEqualTo(String value) {
+            addCriterion("step_three_a =", value, "stepThreeA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeANotEqualTo(String value) {
+            addCriterion("step_three_a <>", value, "stepThreeA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeAGreaterThan(String value) {
+            addCriterion("step_three_a >", value, "stepThreeA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeAGreaterThanOrEqualTo(String value) {
+            addCriterion("step_three_a >=", value, "stepThreeA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeALessThan(String value) {
+            addCriterion("step_three_a <", value, "stepThreeA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeALessThanOrEqualTo(String value) {
+            addCriterion("step_three_a <=", value, "stepThreeA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeALike(String value) {
+            addCriterion("step_three_a like", value, "stepThreeA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeANotLike(String value) {
+            addCriterion("step_three_a not like", value, "stepThreeA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeAIn(List<String> values) {
+            addCriterion("step_three_a in", values, "stepThreeA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeANotIn(List<String> values) {
+            addCriterion("step_three_a not in", values, "stepThreeA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeABetween(String value1, String value2) {
+            addCriterion("step_three_a between", value1, value2, "stepThreeA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeANotBetween(String value1, String value2) {
+            addCriterion("step_three_a not between", value1, value2, "stepThreeA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeBIsNull() {
+            addCriterion("step_three_b is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeBIsNotNull() {
+            addCriterion("step_three_b is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeBEqualTo(String value) {
+            addCriterion("step_three_b =", value, "stepThreeB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeBNotEqualTo(String value) {
+            addCriterion("step_three_b <>", value, "stepThreeB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeBGreaterThan(String value) {
+            addCriterion("step_three_b >", value, "stepThreeB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeBGreaterThanOrEqualTo(String value) {
+            addCriterion("step_three_b >=", value, "stepThreeB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeBLessThan(String value) {
+            addCriterion("step_three_b <", value, "stepThreeB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeBLessThanOrEqualTo(String value) {
+            addCriterion("step_three_b <=", value, "stepThreeB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeBLike(String value) {
+            addCriterion("step_three_b like", value, "stepThreeB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeBNotLike(String value) {
+            addCriterion("step_three_b not like", value, "stepThreeB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeBIn(List<String> values) {
+            addCriterion("step_three_b in", values, "stepThreeB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeBNotIn(List<String> values) {
+            addCriterion("step_three_b not in", values, "stepThreeB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeBBetween(String value1, String value2) {
+            addCriterion("step_three_b between", value1, value2, "stepThreeB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeBNotBetween(String value1, String value2) {
+            addCriterion("step_three_b not between", value1, value2, "stepThreeB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeCIsNull() {
+            addCriterion("step_three_c is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeCIsNotNull() {
+            addCriterion("step_three_c is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeCEqualTo(String value) {
+            addCriterion("step_three_c =", value, "stepThreeC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeCNotEqualTo(String value) {
+            addCriterion("step_three_c <>", value, "stepThreeC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeCGreaterThan(String value) {
+            addCriterion("step_three_c >", value, "stepThreeC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeCGreaterThanOrEqualTo(String value) {
+            addCriterion("step_three_c >=", value, "stepThreeC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeCLessThan(String value) {
+            addCriterion("step_three_c <", value, "stepThreeC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeCLessThanOrEqualTo(String value) {
+            addCriterion("step_three_c <=", value, "stepThreeC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeCLike(String value) {
+            addCriterion("step_three_c like", value, "stepThreeC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeCNotLike(String value) {
+            addCriterion("step_three_c not like", value, "stepThreeC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeCIn(List<String> values) {
+            addCriterion("step_three_c in", values, "stepThreeC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeCNotIn(List<String> values) {
+            addCriterion("step_three_c not in", values, "stepThreeC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeCBetween(String value1, String value2) {
+            addCriterion("step_three_c between", value1, value2, "stepThreeC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeCNotBetween(String value1, String value2) {
+            addCriterion("step_three_c not between", value1, value2, "stepThreeC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeDIsNull() {
+            addCriterion("step_three_d is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeDIsNotNull() {
+            addCriterion("step_three_d is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeDEqualTo(String value) {
+            addCriterion("step_three_d =", value, "stepThreeD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeDNotEqualTo(String value) {
+            addCriterion("step_three_d <>", value, "stepThreeD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeDGreaterThan(String value) {
+            addCriterion("step_three_d >", value, "stepThreeD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeDGreaterThanOrEqualTo(String value) {
+            addCriterion("step_three_d >=", value, "stepThreeD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeDLessThan(String value) {
+            addCriterion("step_three_d <", value, "stepThreeD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeDLessThanOrEqualTo(String value) {
+            addCriterion("step_three_d <=", value, "stepThreeD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeDLike(String value) {
+            addCriterion("step_three_d like", value, "stepThreeD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeDNotLike(String value) {
+            addCriterion("step_three_d not like", value, "stepThreeD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeDIn(List<String> values) {
+            addCriterion("step_three_d in", values, "stepThreeD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeDNotIn(List<String> values) {
+            addCriterion("step_three_d not in", values, "stepThreeD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeDBetween(String value1, String value2) {
+            addCriterion("step_three_d between", value1, value2, "stepThreeD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepThreeDNotBetween(String value1, String value2) {
+            addCriterion("step_three_d not between", value1, value2, "stepThreeD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourAIsNull() {
+            addCriterion("step_four_a is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourAIsNotNull() {
+            addCriterion("step_four_a is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourAEqualTo(String value) {
+            addCriterion("step_four_a =", value, "stepFourA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourANotEqualTo(String value) {
+            addCriterion("step_four_a <>", value, "stepFourA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourAGreaterThan(String value) {
+            addCriterion("step_four_a >", value, "stepFourA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourAGreaterThanOrEqualTo(String value) {
+            addCriterion("step_four_a >=", value, "stepFourA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourALessThan(String value) {
+            addCriterion("step_four_a <", value, "stepFourA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourALessThanOrEqualTo(String value) {
+            addCriterion("step_four_a <=", value, "stepFourA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourALike(String value) {
+            addCriterion("step_four_a like", value, "stepFourA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourANotLike(String value) {
+            addCriterion("step_four_a not like", value, "stepFourA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourAIn(List<String> values) {
+            addCriterion("step_four_a in", values, "stepFourA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourANotIn(List<String> values) {
+            addCriterion("step_four_a not in", values, "stepFourA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourABetween(String value1, String value2) {
+            addCriterion("step_four_a between", value1, value2, "stepFourA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourANotBetween(String value1, String value2) {
+            addCriterion("step_four_a not between", value1, value2, "stepFourA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourBIsNull() {
+            addCriterion("step_four_b is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourBIsNotNull() {
+            addCriterion("step_four_b is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourBEqualTo(String value) {
+            addCriterion("step_four_b =", value, "stepFourB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourBNotEqualTo(String value) {
+            addCriterion("step_four_b <>", value, "stepFourB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourBGreaterThan(String value) {
+            addCriterion("step_four_b >", value, "stepFourB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourBGreaterThanOrEqualTo(String value) {
+            addCriterion("step_four_b >=", value, "stepFourB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourBLessThan(String value) {
+            addCriterion("step_four_b <", value, "stepFourB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourBLessThanOrEqualTo(String value) {
+            addCriterion("step_four_b <=", value, "stepFourB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourBLike(String value) {
+            addCriterion("step_four_b like", value, "stepFourB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourBNotLike(String value) {
+            addCriterion("step_four_b not like", value, "stepFourB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourBIn(List<String> values) {
+            addCriterion("step_four_b in", values, "stepFourB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourBNotIn(List<String> values) {
+            addCriterion("step_four_b not in", values, "stepFourB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourBBetween(String value1, String value2) {
+            addCriterion("step_four_b between", value1, value2, "stepFourB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourBNotBetween(String value1, String value2) {
+            addCriterion("step_four_b not between", value1, value2, "stepFourB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourCIsNull() {
+            addCriterion("step_four_c is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourCIsNotNull() {
+            addCriterion("step_four_c is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourCEqualTo(String value) {
+            addCriterion("step_four_c =", value, "stepFourC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourCNotEqualTo(String value) {
+            addCriterion("step_four_c <>", value, "stepFourC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourCGreaterThan(String value) {
+            addCriterion("step_four_c >", value, "stepFourC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourCGreaterThanOrEqualTo(String value) {
+            addCriterion("step_four_c >=", value, "stepFourC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourCLessThan(String value) {
+            addCriterion("step_four_c <", value, "stepFourC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourCLessThanOrEqualTo(String value) {
+            addCriterion("step_four_c <=", value, "stepFourC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourCLike(String value) {
+            addCriterion("step_four_c like", value, "stepFourC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourCNotLike(String value) {
+            addCriterion("step_four_c not like", value, "stepFourC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourCIn(List<String> values) {
+            addCriterion("step_four_c in", values, "stepFourC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourCNotIn(List<String> values) {
+            addCriterion("step_four_c not in", values, "stepFourC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourCBetween(String value1, String value2) {
+            addCriterion("step_four_c between", value1, value2, "stepFourC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourCNotBetween(String value1, String value2) {
+            addCriterion("step_four_c not between", value1, value2, "stepFourC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourDIsNull() {
+            addCriterion("step_four_d is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourDIsNotNull() {
+            addCriterion("step_four_d is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourDEqualTo(String value) {
+            addCriterion("step_four_d =", value, "stepFourD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourDNotEqualTo(String value) {
+            addCriterion("step_four_d <>", value, "stepFourD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourDGreaterThan(String value) {
+            addCriterion("step_four_d >", value, "stepFourD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourDGreaterThanOrEqualTo(String value) {
+            addCriterion("step_four_d >=", value, "stepFourD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourDLessThan(String value) {
+            addCriterion("step_four_d <", value, "stepFourD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourDLessThanOrEqualTo(String value) {
+            addCriterion("step_four_d <=", value, "stepFourD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourDLike(String value) {
+            addCriterion("step_four_d like", value, "stepFourD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourDNotLike(String value) {
+            addCriterion("step_four_d not like", value, "stepFourD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourDIn(List<String> values) {
+            addCriterion("step_four_d in", values, "stepFourD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourDNotIn(List<String> values) {
+            addCriterion("step_four_d not in", values, "stepFourD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourDBetween(String value1, String value2) {
+            addCriterion("step_four_d between", value1, value2, "stepFourD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFourDNotBetween(String value1, String value2) {
+            addCriterion("step_four_d not between", value1, value2, "stepFourD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveAIsNull() {
+            addCriterion("step_five_a is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveAIsNotNull() {
+            addCriterion("step_five_a is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveAEqualTo(String value) {
+            addCriterion("step_five_a =", value, "stepFiveA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveANotEqualTo(String value) {
+            addCriterion("step_five_a <>", value, "stepFiveA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveAGreaterThan(String value) {
+            addCriterion("step_five_a >", value, "stepFiveA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveAGreaterThanOrEqualTo(String value) {
+            addCriterion("step_five_a >=", value, "stepFiveA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveALessThan(String value) {
+            addCriterion("step_five_a <", value, "stepFiveA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveALessThanOrEqualTo(String value) {
+            addCriterion("step_five_a <=", value, "stepFiveA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveALike(String value) {
+            addCriterion("step_five_a like", value, "stepFiveA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveANotLike(String value) {
+            addCriterion("step_five_a not like", value, "stepFiveA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveAIn(List<String> values) {
+            addCriterion("step_five_a in", values, "stepFiveA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveANotIn(List<String> values) {
+            addCriterion("step_five_a not in", values, "stepFiveA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveABetween(String value1, String value2) {
+            addCriterion("step_five_a between", value1, value2, "stepFiveA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveANotBetween(String value1, String value2) {
+            addCriterion("step_five_a not between", value1, value2, "stepFiveA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveBIsNull() {
+            addCriterion("step_five_b is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveBIsNotNull() {
+            addCriterion("step_five_b is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveBEqualTo(String value) {
+            addCriterion("step_five_b =", value, "stepFiveB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveBNotEqualTo(String value) {
+            addCriterion("step_five_b <>", value, "stepFiveB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveBGreaterThan(String value) {
+            addCriterion("step_five_b >", value, "stepFiveB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveBGreaterThanOrEqualTo(String value) {
+            addCriterion("step_five_b >=", value, "stepFiveB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveBLessThan(String value) {
+            addCriterion("step_five_b <", value, "stepFiveB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveBLessThanOrEqualTo(String value) {
+            addCriterion("step_five_b <=", value, "stepFiveB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveBLike(String value) {
+            addCriterion("step_five_b like", value, "stepFiveB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveBNotLike(String value) {
+            addCriterion("step_five_b not like", value, "stepFiveB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveBIn(List<String> values) {
+            addCriterion("step_five_b in", values, "stepFiveB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveBNotIn(List<String> values) {
+            addCriterion("step_five_b not in", values, "stepFiveB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveBBetween(String value1, String value2) {
+            addCriterion("step_five_b between", value1, value2, "stepFiveB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveBNotBetween(String value1, String value2) {
+            addCriterion("step_five_b not between", value1, value2, "stepFiveB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveCIsNull() {
+            addCriterion("step_five_c is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveCIsNotNull() {
+            addCriterion("step_five_c is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveCEqualTo(String value) {
+            addCriterion("step_five_c =", value, "stepFiveC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveCNotEqualTo(String value) {
+            addCriterion("step_five_c <>", value, "stepFiveC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveCGreaterThan(String value) {
+            addCriterion("step_five_c >", value, "stepFiveC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveCGreaterThanOrEqualTo(String value) {
+            addCriterion("step_five_c >=", value, "stepFiveC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveCLessThan(String value) {
+            addCriterion("step_five_c <", value, "stepFiveC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveCLessThanOrEqualTo(String value) {
+            addCriterion("step_five_c <=", value, "stepFiveC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveCLike(String value) {
+            addCriterion("step_five_c like", value, "stepFiveC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveCNotLike(String value) {
+            addCriterion("step_five_c not like", value, "stepFiveC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveCIn(List<String> values) {
+            addCriterion("step_five_c in", values, "stepFiveC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveCNotIn(List<String> values) {
+            addCriterion("step_five_c not in", values, "stepFiveC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveCBetween(String value1, String value2) {
+            addCriterion("step_five_c between", value1, value2, "stepFiveC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveCNotBetween(String value1, String value2) {
+            addCriterion("step_five_c not between", value1, value2, "stepFiveC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveDIsNull() {
+            addCriterion("step_five_d is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveDIsNotNull() {
+            addCriterion("step_five_d is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveDEqualTo(String value) {
+            addCriterion("step_five_d =", value, "stepFiveD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveDNotEqualTo(String value) {
+            addCriterion("step_five_d <>", value, "stepFiveD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveDGreaterThan(String value) {
+            addCriterion("step_five_d >", value, "stepFiveD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveDGreaterThanOrEqualTo(String value) {
+            addCriterion("step_five_d >=", value, "stepFiveD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveDLessThan(String value) {
+            addCriterion("step_five_d <", value, "stepFiveD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveDLessThanOrEqualTo(String value) {
+            addCriterion("step_five_d <=", value, "stepFiveD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveDLike(String value) {
+            addCriterion("step_five_d like", value, "stepFiveD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveDNotLike(String value) {
+            addCriterion("step_five_d not like", value, "stepFiveD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveDIn(List<String> values) {
+            addCriterion("step_five_d in", values, "stepFiveD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveDNotIn(List<String> values) {
+            addCriterion("step_five_d not in", values, "stepFiveD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveDBetween(String value1, String value2) {
+            addCriterion("step_five_d between", value1, value2, "stepFiveD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepFiveDNotBetween(String value1, String value2) {
+            addCriterion("step_five_d not between", value1, value2, "stepFiveD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixAIsNull() {
+            addCriterion("step_six_a is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixAIsNotNull() {
+            addCriterion("step_six_a is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixAEqualTo(String value) {
+            addCriterion("step_six_a =", value, "stepSixA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixANotEqualTo(String value) {
+            addCriterion("step_six_a <>", value, "stepSixA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixAGreaterThan(String value) {
+            addCriterion("step_six_a >", value, "stepSixA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixAGreaterThanOrEqualTo(String value) {
+            addCriterion("step_six_a >=", value, "stepSixA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixALessThan(String value) {
+            addCriterion("step_six_a <", value, "stepSixA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixALessThanOrEqualTo(String value) {
+            addCriterion("step_six_a <=", value, "stepSixA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixALike(String value) {
+            addCriterion("step_six_a like", value, "stepSixA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixANotLike(String value) {
+            addCriterion("step_six_a not like", value, "stepSixA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixAIn(List<String> values) {
+            addCriterion("step_six_a in", values, "stepSixA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixANotIn(List<String> values) {
+            addCriterion("step_six_a not in", values, "stepSixA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixABetween(String value1, String value2) {
+            addCriterion("step_six_a between", value1, value2, "stepSixA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixANotBetween(String value1, String value2) {
+            addCriterion("step_six_a not between", value1, value2, "stepSixA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixBIsNull() {
+            addCriterion("step_six_b is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixBIsNotNull() {
+            addCriterion("step_six_b is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixBEqualTo(String value) {
+            addCriterion("step_six_b =", value, "stepSixB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixBNotEqualTo(String value) {
+            addCriterion("step_six_b <>", value, "stepSixB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixBGreaterThan(String value) {
+            addCriterion("step_six_b >", value, "stepSixB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixBGreaterThanOrEqualTo(String value) {
+            addCriterion("step_six_b >=", value, "stepSixB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixBLessThan(String value) {
+            addCriterion("step_six_b <", value, "stepSixB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixBLessThanOrEqualTo(String value) {
+            addCriterion("step_six_b <=", value, "stepSixB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixBLike(String value) {
+            addCriterion("step_six_b like", value, "stepSixB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixBNotLike(String value) {
+            addCriterion("step_six_b not like", value, "stepSixB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixBIn(List<String> values) {
+            addCriterion("step_six_b in", values, "stepSixB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixBNotIn(List<String> values) {
+            addCriterion("step_six_b not in", values, "stepSixB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixBBetween(String value1, String value2) {
+            addCriterion("step_six_b between", value1, value2, "stepSixB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixBNotBetween(String value1, String value2) {
+            addCriterion("step_six_b not between", value1, value2, "stepSixB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixCIsNull() {
+            addCriterion("step_six_c is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixCIsNotNull() {
+            addCriterion("step_six_c is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixCEqualTo(String value) {
+            addCriterion("step_six_c =", value, "stepSixC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixCNotEqualTo(String value) {
+            addCriterion("step_six_c <>", value, "stepSixC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixCGreaterThan(String value) {
+            addCriterion("step_six_c >", value, "stepSixC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixCGreaterThanOrEqualTo(String value) {
+            addCriterion("step_six_c >=", value, "stepSixC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixCLessThan(String value) {
+            addCriterion("step_six_c <", value, "stepSixC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixCLessThanOrEqualTo(String value) {
+            addCriterion("step_six_c <=", value, "stepSixC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixCLike(String value) {
+            addCriterion("step_six_c like", value, "stepSixC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixCNotLike(String value) {
+            addCriterion("step_six_c not like", value, "stepSixC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixCIn(List<String> values) {
+            addCriterion("step_six_c in", values, "stepSixC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixCNotIn(List<String> values) {
+            addCriterion("step_six_c not in", values, "stepSixC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixCBetween(String value1, String value2) {
+            addCriterion("step_six_c between", value1, value2, "stepSixC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixCNotBetween(String value1, String value2) {
+            addCriterion("step_six_c not between", value1, value2, "stepSixC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixDIsNull() {
+            addCriterion("step_six_d is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixDIsNotNull() {
+            addCriterion("step_six_d is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixDEqualTo(String value) {
+            addCriterion("step_six_d =", value, "stepSixD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixDNotEqualTo(String value) {
+            addCriterion("step_six_d <>", value, "stepSixD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixDGreaterThan(String value) {
+            addCriterion("step_six_d >", value, "stepSixD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixDGreaterThanOrEqualTo(String value) {
+            addCriterion("step_six_d >=", value, "stepSixD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixDLessThan(String value) {
+            addCriterion("step_six_d <", value, "stepSixD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixDLessThanOrEqualTo(String value) {
+            addCriterion("step_six_d <=", value, "stepSixD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixDLike(String value) {
+            addCriterion("step_six_d like", value, "stepSixD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixDNotLike(String value) {
+            addCriterion("step_six_d not like", value, "stepSixD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixDIn(List<String> values) {
+            addCriterion("step_six_d in", values, "stepSixD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixDNotIn(List<String> values) {
+            addCriterion("step_six_d not in", values, "stepSixD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixDBetween(String value1, String value2) {
+            addCriterion("step_six_d between", value1, value2, "stepSixD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSixDNotBetween(String value1, String value2) {
+            addCriterion("step_six_d not between", value1, value2, "stepSixD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenAIsNull() {
+            addCriterion("step_seven_a is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenAIsNotNull() {
+            addCriterion("step_seven_a is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenAEqualTo(String value) {
+            addCriterion("step_seven_a =", value, "stepSevenA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenANotEqualTo(String value) {
+            addCriterion("step_seven_a <>", value, "stepSevenA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenAGreaterThan(String value) {
+            addCriterion("step_seven_a >", value, "stepSevenA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenAGreaterThanOrEqualTo(String value) {
+            addCriterion("step_seven_a >=", value, "stepSevenA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenALessThan(String value) {
+            addCriterion("step_seven_a <", value, "stepSevenA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenALessThanOrEqualTo(String value) {
+            addCriterion("step_seven_a <=", value, "stepSevenA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenALike(String value) {
+            addCriterion("step_seven_a like", value, "stepSevenA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenANotLike(String value) {
+            addCriterion("step_seven_a not like", value, "stepSevenA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenAIn(List<String> values) {
+            addCriterion("step_seven_a in", values, "stepSevenA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenANotIn(List<String> values) {
+            addCriterion("step_seven_a not in", values, "stepSevenA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenABetween(String value1, String value2) {
+            addCriterion("step_seven_a between", value1, value2, "stepSevenA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenANotBetween(String value1, String value2) {
+            addCriterion("step_seven_a not between", value1, value2, "stepSevenA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenBIsNull() {
+            addCriterion("step_seven_b is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenBIsNotNull() {
+            addCriterion("step_seven_b is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenBEqualTo(String value) {
+            addCriterion("step_seven_b =", value, "stepSevenB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenBNotEqualTo(String value) {
+            addCriterion("step_seven_b <>", value, "stepSevenB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenBGreaterThan(String value) {
+            addCriterion("step_seven_b >", value, "stepSevenB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenBGreaterThanOrEqualTo(String value) {
+            addCriterion("step_seven_b >=", value, "stepSevenB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenBLessThan(String value) {
+            addCriterion("step_seven_b <", value, "stepSevenB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenBLessThanOrEqualTo(String value) {
+            addCriterion("step_seven_b <=", value, "stepSevenB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenBLike(String value) {
+            addCriterion("step_seven_b like", value, "stepSevenB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenBNotLike(String value) {
+            addCriterion("step_seven_b not like", value, "stepSevenB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenBIn(List<String> values) {
+            addCriterion("step_seven_b in", values, "stepSevenB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenBNotIn(List<String> values) {
+            addCriterion("step_seven_b not in", values, "stepSevenB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenBBetween(String value1, String value2) {
+            addCriterion("step_seven_b between", value1, value2, "stepSevenB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenBNotBetween(String value1, String value2) {
+            addCriterion("step_seven_b not between", value1, value2, "stepSevenB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenCIsNull() {
+            addCriterion("step_seven_c is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenCIsNotNull() {
+            addCriterion("step_seven_c is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenCEqualTo(String value) {
+            addCriterion("step_seven_c =", value, "stepSevenC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenCNotEqualTo(String value) {
+            addCriterion("step_seven_c <>", value, "stepSevenC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenCGreaterThan(String value) {
+            addCriterion("step_seven_c >", value, "stepSevenC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenCGreaterThanOrEqualTo(String value) {
+            addCriterion("step_seven_c >=", value, "stepSevenC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenCLessThan(String value) {
+            addCriterion("step_seven_c <", value, "stepSevenC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenCLessThanOrEqualTo(String value) {
+            addCriterion("step_seven_c <=", value, "stepSevenC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenCLike(String value) {
+            addCriterion("step_seven_c like", value, "stepSevenC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenCNotLike(String value) {
+            addCriterion("step_seven_c not like", value, "stepSevenC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenCIn(List<String> values) {
+            addCriterion("step_seven_c in", values, "stepSevenC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenCNotIn(List<String> values) {
+            addCriterion("step_seven_c not in", values, "stepSevenC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenCBetween(String value1, String value2) {
+            addCriterion("step_seven_c between", value1, value2, "stepSevenC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenCNotBetween(String value1, String value2) {
+            addCriterion("step_seven_c not between", value1, value2, "stepSevenC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenDIsNull() {
+            addCriterion("step_seven_d is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenDIsNotNull() {
+            addCriterion("step_seven_d is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenDEqualTo(String value) {
+            addCriterion("step_seven_d =", value, "stepSevenD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenDNotEqualTo(String value) {
+            addCriterion("step_seven_d <>", value, "stepSevenD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenDGreaterThan(String value) {
+            addCriterion("step_seven_d >", value, "stepSevenD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenDGreaterThanOrEqualTo(String value) {
+            addCriterion("step_seven_d >=", value, "stepSevenD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenDLessThan(String value) {
+            addCriterion("step_seven_d <", value, "stepSevenD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenDLessThanOrEqualTo(String value) {
+            addCriterion("step_seven_d <=", value, "stepSevenD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenDLike(String value) {
+            addCriterion("step_seven_d like", value, "stepSevenD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenDNotLike(String value) {
+            addCriterion("step_seven_d not like", value, "stepSevenD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenDIn(List<String> values) {
+            addCriterion("step_seven_d in", values, "stepSevenD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenDNotIn(List<String> values) {
+            addCriterion("step_seven_d not in", values, "stepSevenD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenDBetween(String value1, String value2) {
+            addCriterion("step_seven_d between", value1, value2, "stepSevenD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepSevenDNotBetween(String value1, String value2) {
+            addCriterion("step_seven_d not between", value1, value2, "stepSevenD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightAIsNull() {
+            addCriterion("step_eight_a is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightAIsNotNull() {
+            addCriterion("step_eight_a is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightAEqualTo(String value) {
+            addCriterion("step_eight_a =", value, "stepEightA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightANotEqualTo(String value) {
+            addCriterion("step_eight_a <>", value, "stepEightA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightAGreaterThan(String value) {
+            addCriterion("step_eight_a >", value, "stepEightA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightAGreaterThanOrEqualTo(String value) {
+            addCriterion("step_eight_a >=", value, "stepEightA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightALessThan(String value) {
+            addCriterion("step_eight_a <", value, "stepEightA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightALessThanOrEqualTo(String value) {
+            addCriterion("step_eight_a <=", value, "stepEightA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightALike(String value) {
+            addCriterion("step_eight_a like", value, "stepEightA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightANotLike(String value) {
+            addCriterion("step_eight_a not like", value, "stepEightA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightAIn(List<String> values) {
+            addCriterion("step_eight_a in", values, "stepEightA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightANotIn(List<String> values) {
+            addCriterion("step_eight_a not in", values, "stepEightA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightABetween(String value1, String value2) {
+            addCriterion("step_eight_a between", value1, value2, "stepEightA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightANotBetween(String value1, String value2) {
+            addCriterion("step_eight_a not between", value1, value2, "stepEightA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightBIsNull() {
+            addCriterion("step_eight_b is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightBIsNotNull() {
+            addCriterion("step_eight_b is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightBEqualTo(String value) {
+            addCriterion("step_eight_b =", value, "stepEightB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightBNotEqualTo(String value) {
+            addCriterion("step_eight_b <>", value, "stepEightB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightBGreaterThan(String value) {
+            addCriterion("step_eight_b >", value, "stepEightB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightBGreaterThanOrEqualTo(String value) {
+            addCriterion("step_eight_b >=", value, "stepEightB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightBLessThan(String value) {
+            addCriterion("step_eight_b <", value, "stepEightB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightBLessThanOrEqualTo(String value) {
+            addCriterion("step_eight_b <=", value, "stepEightB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightBLike(String value) {
+            addCriterion("step_eight_b like", value, "stepEightB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightBNotLike(String value) {
+            addCriterion("step_eight_b not like", value, "stepEightB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightBIn(List<String> values) {
+            addCriterion("step_eight_b in", values, "stepEightB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightBNotIn(List<String> values) {
+            addCriterion("step_eight_b not in", values, "stepEightB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightBBetween(String value1, String value2) {
+            addCriterion("step_eight_b between", value1, value2, "stepEightB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightBNotBetween(String value1, String value2) {
+            addCriterion("step_eight_b not between", value1, value2, "stepEightB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightCIsNull() {
+            addCriterion("step_eight_c is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightCIsNotNull() {
+            addCriterion("step_eight_c is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightCEqualTo(String value) {
+            addCriterion("step_eight_c =", value, "stepEightC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightCNotEqualTo(String value) {
+            addCriterion("step_eight_c <>", value, "stepEightC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightCGreaterThan(String value) {
+            addCriterion("step_eight_c >", value, "stepEightC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightCGreaterThanOrEqualTo(String value) {
+            addCriterion("step_eight_c >=", value, "stepEightC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightCLessThan(String value) {
+            addCriterion("step_eight_c <", value, "stepEightC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightCLessThanOrEqualTo(String value) {
+            addCriterion("step_eight_c <=", value, "stepEightC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightCLike(String value) {
+            addCriterion("step_eight_c like", value, "stepEightC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightCNotLike(String value) {
+            addCriterion("step_eight_c not like", value, "stepEightC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightCIn(List<String> values) {
+            addCriterion("step_eight_c in", values, "stepEightC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightCNotIn(List<String> values) {
+            addCriterion("step_eight_c not in", values, "stepEightC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightCBetween(String value1, String value2) {
+            addCriterion("step_eight_c between", value1, value2, "stepEightC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightCNotBetween(String value1, String value2) {
+            addCriterion("step_eight_c not between", value1, value2, "stepEightC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightDIsNull() {
+            addCriterion("step_eight_d is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightDIsNotNull() {
+            addCriterion("step_eight_d is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightDEqualTo(String value) {
+            addCriterion("step_eight_d =", value, "stepEightD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightDNotEqualTo(String value) {
+            addCriterion("step_eight_d <>", value, "stepEightD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightDGreaterThan(String value) {
+            addCriterion("step_eight_d >", value, "stepEightD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightDGreaterThanOrEqualTo(String value) {
+            addCriterion("step_eight_d >=", value, "stepEightD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightDLessThan(String value) {
+            addCriterion("step_eight_d <", value, "stepEightD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightDLessThanOrEqualTo(String value) {
+            addCriterion("step_eight_d <=", value, "stepEightD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightDLike(String value) {
+            addCriterion("step_eight_d like", value, "stepEightD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightDNotLike(String value) {
+            addCriterion("step_eight_d not like", value, "stepEightD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightDIn(List<String> values) {
+            addCriterion("step_eight_d in", values, "stepEightD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightDNotIn(List<String> values) {
+            addCriterion("step_eight_d not in", values, "stepEightD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightDBetween(String value1, String value2) {
+            addCriterion("step_eight_d between", value1, value2, "stepEightD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepEightDNotBetween(String value1, String value2) {
+            addCriterion("step_eight_d not between", value1, value2, "stepEightD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineAIsNull() {
+            addCriterion("step_nine_a is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineAIsNotNull() {
+            addCriterion("step_nine_a is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineAEqualTo(String value) {
+            addCriterion("step_nine_a =", value, "stepNineA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineANotEqualTo(String value) {
+            addCriterion("step_nine_a <>", value, "stepNineA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineAGreaterThan(String value) {
+            addCriterion("step_nine_a >", value, "stepNineA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineAGreaterThanOrEqualTo(String value) {
+            addCriterion("step_nine_a >=", value, "stepNineA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineALessThan(String value) {
+            addCriterion("step_nine_a <", value, "stepNineA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineALessThanOrEqualTo(String value) {
+            addCriterion("step_nine_a <=", value, "stepNineA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineALike(String value) {
+            addCriterion("step_nine_a like", value, "stepNineA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineANotLike(String value) {
+            addCriterion("step_nine_a not like", value, "stepNineA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineAIn(List<String> values) {
+            addCriterion("step_nine_a in", values, "stepNineA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineANotIn(List<String> values) {
+            addCriterion("step_nine_a not in", values, "stepNineA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineABetween(String value1, String value2) {
+            addCriterion("step_nine_a between", value1, value2, "stepNineA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineANotBetween(String value1, String value2) {
+            addCriterion("step_nine_a not between", value1, value2, "stepNineA");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineBIsNull() {
+            addCriterion("step_nine_b is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineBIsNotNull() {
+            addCriterion("step_nine_b is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineBEqualTo(String value) {
+            addCriterion("step_nine_b =", value, "stepNineB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineBNotEqualTo(String value) {
+            addCriterion("step_nine_b <>", value, "stepNineB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineBGreaterThan(String value) {
+            addCriterion("step_nine_b >", value, "stepNineB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineBGreaterThanOrEqualTo(String value) {
+            addCriterion("step_nine_b >=", value, "stepNineB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineBLessThan(String value) {
+            addCriterion("step_nine_b <", value, "stepNineB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineBLessThanOrEqualTo(String value) {
+            addCriterion("step_nine_b <=", value, "stepNineB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineBLike(String value) {
+            addCriterion("step_nine_b like", value, "stepNineB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineBNotLike(String value) {
+            addCriterion("step_nine_b not like", value, "stepNineB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineBIn(List<String> values) {
+            addCriterion("step_nine_b in", values, "stepNineB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineBNotIn(List<String> values) {
+            addCriterion("step_nine_b not in", values, "stepNineB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineBBetween(String value1, String value2) {
+            addCriterion("step_nine_b between", value1, value2, "stepNineB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineBNotBetween(String value1, String value2) {
+            addCriterion("step_nine_b not between", value1, value2, "stepNineB");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineCIsNull() {
+            addCriterion("step_nine_c is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineCIsNotNull() {
+            addCriterion("step_nine_c is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineCEqualTo(String value) {
+            addCriterion("step_nine_c =", value, "stepNineC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineCNotEqualTo(String value) {
+            addCriterion("step_nine_c <>", value, "stepNineC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineCGreaterThan(String value) {
+            addCriterion("step_nine_c >", value, "stepNineC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineCGreaterThanOrEqualTo(String value) {
+            addCriterion("step_nine_c >=", value, "stepNineC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineCLessThan(String value) {
+            addCriterion("step_nine_c <", value, "stepNineC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineCLessThanOrEqualTo(String value) {
+            addCriterion("step_nine_c <=", value, "stepNineC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineCLike(String value) {
+            addCriterion("step_nine_c like", value, "stepNineC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineCNotLike(String value) {
+            addCriterion("step_nine_c not like", value, "stepNineC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineCIn(List<String> values) {
+            addCriterion("step_nine_c in", values, "stepNineC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineCNotIn(List<String> values) {
+            addCriterion("step_nine_c not in", values, "stepNineC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineCBetween(String value1, String value2) {
+            addCriterion("step_nine_c between", value1, value2, "stepNineC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineCNotBetween(String value1, String value2) {
+            addCriterion("step_nine_c not between", value1, value2, "stepNineC");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineDIsNull() {
+            addCriterion("step_nine_d is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineDIsNotNull() {
+            addCriterion("step_nine_d is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineDEqualTo(String value) {
+            addCriterion("step_nine_d =", value, "stepNineD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineDNotEqualTo(String value) {
+            addCriterion("step_nine_d <>", value, "stepNineD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineDGreaterThan(String value) {
+            addCriterion("step_nine_d >", value, "stepNineD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineDGreaterThanOrEqualTo(String value) {
+            addCriterion("step_nine_d >=", value, "stepNineD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineDLessThan(String value) {
+            addCriterion("step_nine_d <", value, "stepNineD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineDLessThanOrEqualTo(String value) {
+            addCriterion("step_nine_d <=", value, "stepNineD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineDLike(String value) {
+            addCriterion("step_nine_d like", value, "stepNineD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineDNotLike(String value) {
+            addCriterion("step_nine_d not like", value, "stepNineD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineDIn(List<String> values) {
+            addCriterion("step_nine_d in", values, "stepNineD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineDNotIn(List<String> values) {
+            addCriterion("step_nine_d not in", values, "stepNineD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineDBetween(String value1, String value2) {
+            addCriterion("step_nine_d between", value1, value2, "stepNineD");
+            return (Criteria) this;
+        }
+
+        public Criteria andStepNineDNotBetween(String value1, String value2) {
+            addCriterion("step_nine_d not between", value1, value2, "stepNineD");
+            return (Criteria) this;
+        }
+
+        public Criteria andUserIdIsNull() {
+            addCriterion("user_id is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andUserIdIsNotNull() {
+            addCriterion("user_id is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andUserIdEqualTo(String value) {
+            addCriterion("user_id =", value, "userId");
+            return (Criteria) this;
+        }
+
+        public Criteria andUserIdNotEqualTo(String value) {
+            addCriterion("user_id <>", value, "userId");
+            return (Criteria) this;
+        }
+
+        public Criteria andUserIdGreaterThan(String value) {
+            addCriterion("user_id >", value, "userId");
+            return (Criteria) this;
+        }
+
+        public Criteria andUserIdGreaterThanOrEqualTo(String value) {
+            addCriterion("user_id >=", value, "userId");
+            return (Criteria) this;
+        }
+
+        public Criteria andUserIdLessThan(String value) {
+            addCriterion("user_id <", value, "userId");
+            return (Criteria) this;
+        }
+
+        public Criteria andUserIdLessThanOrEqualTo(String value) {
+            addCriterion("user_id <=", value, "userId");
+            return (Criteria) this;
+        }
+
+        public Criteria andUserIdLike(String value) {
+            addCriterion("user_id like", value, "userId");
+            return (Criteria) this;
+        }
+
+        public Criteria andUserIdNotLike(String value) {
+            addCriterion("user_id not like", value, "userId");
+            return (Criteria) this;
+        }
+
+        public Criteria andUserIdIn(List<String> values) {
+            addCriterion("user_id in", values, "userId");
+            return (Criteria) this;
+        }
+
+        public Criteria andUserIdNotIn(List<String> values) {
+            addCriterion("user_id not in", values, "userId");
+            return (Criteria) this;
+        }
+
+        public Criteria andUserIdBetween(String value1, String value2) {
+            addCriterion("user_id between", value1, value2, "userId");
+            return (Criteria) this;
+        }
+
+        public Criteria andUserIdNotBetween(String value1, String value2) {
+            addCriterion("user_id not between", value1, value2, "userId");
+            return (Criteria) this;
+        }
+
+        public Criteria andSubStateIsNull() {
+            addCriterion("sub_state is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andSubStateIsNotNull() {
+            addCriterion("sub_state is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andSubStateEqualTo(Integer value) {
+            addCriterion("sub_state =", value, "subState");
+            return (Criteria) this;
+        }
+
+        public Criteria andSubStateNotEqualTo(Integer value) {
+            addCriterion("sub_state <>", value, "subState");
+            return (Criteria) this;
+        }
+
+        public Criteria andSubStateGreaterThan(Integer value) {
+            addCriterion("sub_state >", value, "subState");
+            return (Criteria) this;
+        }
+
+        public Criteria andSubStateGreaterThanOrEqualTo(Integer value) {
+            addCriterion("sub_state >=", value, "subState");
+            return (Criteria) this;
+        }
+
+        public Criteria andSubStateLessThan(Integer value) {
+            addCriterion("sub_state <", value, "subState");
+            return (Criteria) this;
+        }
+
+        public Criteria andSubStateLessThanOrEqualTo(Integer value) {
+            addCriterion("sub_state <=", value, "subState");
+            return (Criteria) this;
+        }
+
+        public Criteria andSubStateIn(List<Integer> values) {
+            addCriterion("sub_state in", values, "subState");
+            return (Criteria) this;
+        }
+
+        public Criteria andSubStateNotIn(List<Integer> values) {
+            addCriterion("sub_state not in", values, "subState");
+            return (Criteria) this;
+        }
+
+        public Criteria andSubStateBetween(Integer value1, Integer value2) {
+            addCriterion("sub_state between", value1, value2, "subState");
+            return (Criteria) this;
+        }
+
+        public Criteria andSubStateNotBetween(Integer value1, Integer value2) {
+            addCriterion("sub_state not between", value1, value2, "subState");
+            return (Criteria) this;
+        }
+
+        public Criteria andModuleIsNull() {
+            addCriterion("module is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andModuleIsNotNull() {
+            addCriterion("module is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andModuleEqualTo(String value) {
+            addCriterion("module =", value, "module");
+            return (Criteria) this;
+        }
+
+        public Criteria andModuleNotEqualTo(String value) {
+            addCriterion("module <>", value, "module");
+            return (Criteria) this;
+        }
+
+        public Criteria andModuleGreaterThan(String value) {
+            addCriterion("module >", value, "module");
+            return (Criteria) this;
+        }
+
+        public Criteria andModuleGreaterThanOrEqualTo(String value) {
+            addCriterion("module >=", value, "module");
+            return (Criteria) this;
+        }
+
+        public Criteria andModuleLessThan(String value) {
+            addCriterion("module <", value, "module");
+            return (Criteria) this;
+        }
+
+        public Criteria andModuleLessThanOrEqualTo(String value) {
+            addCriterion("module <=", value, "module");
+            return (Criteria) this;
+        }
+
+        public Criteria andModuleLike(String value) {
+            addCriterion("module like", value, "module");
+            return (Criteria) this;
+        }
+
+        public Criteria andModuleNotLike(String value) {
+            addCriterion("module not like", value, "module");
+            return (Criteria) this;
+        }
+
+        public Criteria andModuleIn(List<String> values) {
+            addCriterion("module in", values, "module");
+            return (Criteria) this;
+        }
+
+        public Criteria andModuleNotIn(List<String> values) {
+            addCriterion("module not in", values, "module");
+            return (Criteria) this;
+        }
+
+        public Criteria andModuleBetween(String value1, String value2) {
+            addCriterion("module between", value1, value2, "module");
+            return (Criteria) this;
+        }
+
+        public Criteria andModuleNotBetween(String value1, String value2) {
+            addCriterion("module not between", value1, value2, "module");
+            return (Criteria) this;
+        }
+    }
+
+    public static class Criteria extends GeneratedCriteria {
+        protected Criteria() {
+            super();
+        }
+    }
+
+    public static class Criterion {
+        private String condition;
+
+        private Object value;
+
+        private Object secondValue;
+
+        private boolean noValue;
+
+        private boolean singleValue;
+
+        private boolean betweenValue;
+
+        private boolean listValue;
+
+        private String typeHandler;
+
+        public String getCondition() {
+            return condition;
+        }
+
+        public Object getValue() {
+            return value;
+        }
+
+        public Object getSecondValue() {
+            return secondValue;
+        }
+
+        public boolean isNoValue() {
+            return noValue;
+        }
+
+        public boolean isSingleValue() {
+            return singleValue;
+        }
+
+        public boolean isBetweenValue() {
+            return betweenValue;
+        }
+
+        public boolean isListValue() {
+            return listValue;
+        }
+
+        public String getTypeHandler() {
+            return typeHandler;
+        }
+
+        protected Criterion(String condition) {
+            super();
+            this.condition = condition;
+            this.typeHandler = null;
+            this.noValue = true;
+        }
+
+        protected Criterion(String condition, Object value, String typeHandler) {
+            super();
+            this.condition = condition;
+            this.value = value;
+            this.typeHandler = typeHandler;
+            if (value instanceof List<?>) {
+                this.listValue = true;
+            } else {
+                this.singleValue = true;
+            }
+        }
+
+        protected Criterion(String condition, Object value) {
+            this(condition, value, null);
+        }
+
+        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
+            super();
+            this.condition = condition;
+            this.value = value;
+            this.secondValue = secondValue;
+            this.typeHandler = typeHandler;
+            this.betweenValue = true;
+        }
+
+        protected Criterion(String condition, Object value, Object secondValue) {
+            this(condition, value, secondValue, null);
+        }
+    }
+}
\ No newline at end of file
diff --git a/src/main/java/com/sztzjy/digital_credit/mapper/StuMachineLearningMapper.java b/src/main/java/com/sztzjy/digital_credit/mapper/StuMachineLearningMapper.java
new file mode 100644
index 0000000..f558702
--- /dev/null
+++ b/src/main/java/com/sztzjy/digital_credit/mapper/StuMachineLearningMapper.java
@@ -0,0 +1,30 @@
+package com.sztzjy.digital_credit.mapper;
+
+import com.sztzjy.digital_credit.entity.StuMachineLearning;
+import com.sztzjy.digital_credit.entity.StuMachineLearningExample;
+import java.util.List;
+import org.apache.ibatis.annotations.Param;
+
+public interface StuMachineLearningMapper {
+    long countByExample(StuMachineLearningExample example);
+
+    int deleteByExample(StuMachineLearningExample example);
+
+    int deleteByPrimaryKey(Integer id);
+
+    int insert(StuMachineLearning record);
+
+    int insertSelective(StuMachineLearning record);
+
+    List<StuMachineLearning> selectByExample(StuMachineLearningExample example);
+
+    StuMachineLearning selectByPrimaryKey(Integer id);
+
+    int updateByExampleSelective(@Param("record") StuMachineLearning record, @Param("example") StuMachineLearningExample example);
+
+    int updateByExample(@Param("record") StuMachineLearning record, @Param("example") StuMachineLearningExample example);
+
+    int updateByPrimaryKeySelective(StuMachineLearning record);
+
+    int updateByPrimaryKey(StuMachineLearning record);
+}
\ No newline at end of file
diff --git a/src/main/java/com/sztzjy/digital_credit/mapper/StuUserPortraitMapper.java b/src/main/java/com/sztzjy/digital_credit/mapper/StuUserPortraitMapper.java
new file mode 100644
index 0000000..bc0ce33
--- /dev/null
+++ b/src/main/java/com/sztzjy/digital_credit/mapper/StuUserPortraitMapper.java
@@ -0,0 +1,30 @@
+package com.sztzjy.digital_credit.mapper;
+
+import com.sztzjy.digital_credit.entity.StuUserPortrait;
+import com.sztzjy.digital_credit.entity.StuUserPortraitExample;
+import java.util.List;
+import org.apache.ibatis.annotations.Param;
+
+public interface StuUserPortraitMapper {
+    long countByExample(StuUserPortraitExample example);
+
+    int deleteByExample(StuUserPortraitExample example);
+
+    int deleteByPrimaryKey(Integer id);
+
+    int insert(StuUserPortrait record);
+
+    int insertSelective(StuUserPortrait record);
+
+    List<StuUserPortrait> selectByExample(StuUserPortraitExample example);
+
+    StuUserPortrait selectByPrimaryKey(Integer id);
+
+    int updateByExampleSelective(@Param("record") StuUserPortrait record, @Param("example") StuUserPortraitExample example);
+
+    int updateByExample(@Param("record") StuUserPortrait record, @Param("example") StuUserPortraitExample example);
+
+    int updateByPrimaryKeySelective(StuUserPortrait record);
+
+    int updateByPrimaryKey(StuUserPortrait record);
+}
\ No newline at end of file
diff --git a/src/main/java/com/sztzjy/digital_credit/service/StuExperimentTrainByCreditService.java b/src/main/java/com/sztzjy/digital_credit/service/StuExperimentTrainByCreditService.java
new file mode 100644
index 0000000..e696164
--- /dev/null
+++ b/src/main/java/com/sztzjy/digital_credit/service/StuExperimentTrainByCreditService.java
@@ -0,0 +1,18 @@
+package com.sztzjy.digital_credit.service;
+
+import com.sztzjy.digital_credit.entity.StuMachineLearning;
+import com.sztzjy.digital_credit.util.ResultEntity;
+
+/**
+ * @author 17803
+ * @date 2024-04-23 9:44
+ */
+public interface StuExperimentTrainByCreditService {
+    /**
+        * 前端校验数据(自动保存接口)
+        * @param learning
+        * @return
+    */
+
+    ResultEntity trainByPublicSave(StuMachineLearning learning);
+}
diff --git a/src/main/java/com/sztzjy/digital_credit/service/impl/StuExperimentTrainByCreditServiceImpl.java b/src/main/java/com/sztzjy/digital_credit/service/impl/StuExperimentTrainByCreditServiceImpl.java
new file mode 100644
index 0000000..8b3d436
--- /dev/null
+++ b/src/main/java/com/sztzjy/digital_credit/service/impl/StuExperimentTrainByCreditServiceImpl.java
@@ -0,0 +1,66 @@
+package com.sztzjy.digital_credit.service.impl;/**
+ * @author 17803
+ * @date 2024-04-23 9:44
+ */
+
+import cn.hutool.core.util.IdUtil;
+import com.sztzjy.digital_credit.entity.StuMachineLearning;
+import com.sztzjy.digital_credit.entity.StuMachineLearningExample;
+import com.sztzjy.digital_credit.mapper.StuMachineLearningMapper;
+import com.sztzjy.digital_credit.service.StuExperimentTrainByCreditService;
+import com.sztzjy.digital_credit.util.ResultEntity;
+import org.springframework.beans.BeanUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.http.HttpStatus;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+@Service
+public class StuExperimentTrainByCreditServiceImpl implements StuExperimentTrainByCreditService {
+
+
+    @Autowired
+    private StuMachineLearningMapper machineLearningMapper;
+
+
+    /**
+        * 前端校验数据(自动保存接口)
+        * @param learning
+        * @return
+    */
+
+    @Override
+    public ResultEntity trainByPublicSave(StuMachineLearning learning) {
+
+        StuMachineLearningExample machineLearningExample = new StuMachineLearningExample();
+        machineLearningExample.createCriteria().andUserIdEqualTo(learning.getUserId()).andModuleEqualTo(learning.getModule());
+        List<StuMachineLearning> machineLearningList = machineLearningMapper.selectByExample(machineLearningExample);
+
+        if (!machineLearningList.isEmpty()) {
+                //已经有数据
+            StuMachineLearning machineLearning = machineLearningList.get(0);
+
+            Integer id = machineLearning.getId();
+
+            BeanUtils.copyProperties(learning,machineLearning);
+            machineLearning.setId(id);
+
+            machineLearningMapper.updateByPrimaryKeySelective(machineLearning);
+
+            return new ResultEntity<>(HttpStatus.OK,"保存成功!");
+
+        }else {
+
+            //第一次保存
+            learning.setId((int) IdUtil.getSnowflakeNextId());
+
+            machineLearningMapper.insertSelective(learning);
+
+            return new ResultEntity<>(HttpStatus.OK,"保存成功!");
+
+
+        }
+
+    }
+}
diff --git a/src/main/resources/mappers/StuMachineLearningMapper.xml b/src/main/resources/mappers/StuMachineLearningMapper.xml
new file mode 100644
index 0000000..38e466c
--- /dev/null
+++ b/src/main/resources/mappers/StuMachineLearningMapper.xml
@@ -0,0 +1,750 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.sztzjy.digital_credit.mapper.StuMachineLearningMapper">
+  <resultMap id="BaseResultMap" type="com.sztzjy.digital_credit.entity.StuMachineLearning">
+    <id column="id" jdbcType="INTEGER" property="id" />
+    <result column="step_one_a" jdbcType="VARCHAR" property="stepOneA" />
+    <result column="step_one_b" jdbcType="VARCHAR" property="stepOneB" />
+    <result column="step_one_c" jdbcType="VARCHAR" property="stepOneC" />
+    <result column="step_one_d" jdbcType="VARCHAR" property="stepOneD" />
+    <result column="step_two_a" jdbcType="VARCHAR" property="stepTwoA" />
+    <result column="step_two_b" jdbcType="VARCHAR" property="stepTwoB" />
+    <result column="step_two_c" jdbcType="VARCHAR" property="stepTwoC" />
+    <result column="step_three_a" jdbcType="VARCHAR" property="stepThreeA" />
+    <result column="step_three_b" jdbcType="VARCHAR" property="stepThreeB" />
+    <result column="step_three_c" jdbcType="VARCHAR" property="stepThreeC" />
+    <result column="step_three_d" jdbcType="VARCHAR" property="stepThreeD" />
+    <result column="step_four_a" jdbcType="VARCHAR" property="stepFourA" />
+    <result column="step_four_b" jdbcType="VARCHAR" property="stepFourB" />
+    <result column="step_four_c" jdbcType="VARCHAR" property="stepFourC" />
+    <result column="step_four_d" jdbcType="VARCHAR" property="stepFourD" />
+    <result column="step_five_a" jdbcType="VARCHAR" property="stepFiveA" />
+    <result column="step_five_b" jdbcType="VARCHAR" property="stepFiveB" />
+    <result column="step_five_c" jdbcType="VARCHAR" property="stepFiveC" />
+    <result column="step_five_d" jdbcType="VARCHAR" property="stepFiveD" />
+    <result column="step_six_a" jdbcType="VARCHAR" property="stepSixA" />
+    <result column="step_six_b" jdbcType="VARCHAR" property="stepSixB" />
+    <result column="step_six_c" jdbcType="VARCHAR" property="stepSixC" />
+    <result column="step_six_d" jdbcType="VARCHAR" property="stepSixD" />
+    <result column="step_seven_a" jdbcType="VARCHAR" property="stepSevenA" />
+    <result column="step_seven_b" jdbcType="VARCHAR" property="stepSevenB" />
+    <result column="step_seven_c" jdbcType="VARCHAR" property="stepSevenC" />
+    <result column="step_seven_d" jdbcType="VARCHAR" property="stepSevenD" />
+    <result column="step_eight_a" jdbcType="VARCHAR" property="stepEightA" />
+    <result column="step_eight_b" jdbcType="VARCHAR" property="stepEightB" />
+    <result column="step_eight_c" jdbcType="VARCHAR" property="stepEightC" />
+    <result column="step_eight_d" jdbcType="VARCHAR" property="stepEightD" />
+    <result column="step_nine_a" jdbcType="VARCHAR" property="stepNineA" />
+    <result column="step_nine_b" jdbcType="VARCHAR" property="stepNineB" />
+    <result column="step_nine_c" jdbcType="VARCHAR" property="stepNineC" />
+    <result column="step_nine_d" jdbcType="VARCHAR" property="stepNineD" />
+    <result column="user_id" jdbcType="VARCHAR" property="userId" />
+    <result column="sub_state" jdbcType="INTEGER" property="subState" />
+    <result column="module" jdbcType="VARCHAR" property="module" />
+  </resultMap>
+  <sql id="Example_Where_Clause">
+    <where>
+      <foreach collection="oredCriteria" item="criteria" separator="or">
+        <if test="criteria.valid">
+          <trim prefix="(" prefixOverrides="and" suffix=")">
+            <foreach collection="criteria.criteria" item="criterion">
+              <choose>
+                <when test="criterion.noValue">
+                  and ${criterion.condition}
+                </when>
+                <when test="criterion.singleValue">
+                  and ${criterion.condition} #{criterion.value}
+                </when>
+                <when test="criterion.betweenValue">
+                  and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}
+                </when>
+                <when test="criterion.listValue">
+                  and ${criterion.condition}
+                  <foreach close=")" collection="criterion.value" item="listItem" open="(" separator=",">
+                    #{listItem}
+                  </foreach>
+                </when>
+              </choose>
+            </foreach>
+          </trim>
+        </if>
+      </foreach>
+    </where>
+  </sql>
+  <sql id="Update_By_Example_Where_Clause">
+    <where>
+      <foreach collection="example.oredCriteria" item="criteria" separator="or">
+        <if test="criteria.valid">
+          <trim prefix="(" prefixOverrides="and" suffix=")">
+            <foreach collection="criteria.criteria" item="criterion">
+              <choose>
+                <when test="criterion.noValue">
+                  and ${criterion.condition}
+                </when>
+                <when test="criterion.singleValue">
+                  and ${criterion.condition} #{criterion.value}
+                </when>
+                <when test="criterion.betweenValue">
+                  and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}
+                </when>
+                <when test="criterion.listValue">
+                  and ${criterion.condition}
+                  <foreach close=")" collection="criterion.value" item="listItem" open="(" separator=",">
+                    #{listItem}
+                  </foreach>
+                </when>
+              </choose>
+            </foreach>
+          </trim>
+        </if>
+      </foreach>
+    </where>
+  </sql>
+  <sql id="Base_Column_List">
+    id, step_one_a, step_one_b, step_one_c, step_one_d, step_two_a, step_two_b, step_two_c, 
+    step_three_a, step_three_b, step_three_c, step_three_d, step_four_a, step_four_b, 
+    step_four_c, step_four_d, step_five_a, step_five_b, step_five_c, step_five_d, step_six_a, 
+    step_six_b, step_six_c, step_six_d, step_seven_a, step_seven_b, step_seven_c, step_seven_d, 
+    step_eight_a, step_eight_b, step_eight_c, step_eight_d, step_nine_a, step_nine_b, 
+    step_nine_c, step_nine_d, user_id, sub_state, module
+  </sql>
+  <select id="selectByExample" parameterType="com.sztzjy.digital_credit.entity.StuMachineLearningExample" resultMap="BaseResultMap">
+    select
+    <if test="distinct">
+      distinct
+    </if>
+    <include refid="Base_Column_List" />
+    from stu_machine_learning
+    <if test="_parameter != null">
+      <include refid="Example_Where_Clause" />
+    </if>
+    <if test="orderByClause != null">
+      order by ${orderByClause}
+    </if>
+  </select>
+  <select id="selectByPrimaryKey" parameterType="java.lang.Integer" resultMap="BaseResultMap">
+    select 
+    <include refid="Base_Column_List" />
+    from stu_machine_learning
+    where id = #{id,jdbcType=INTEGER}
+  </select>
+  <delete id="deleteByPrimaryKey" parameterType="java.lang.Integer">
+    delete from stu_machine_learning
+    where id = #{id,jdbcType=INTEGER}
+  </delete>
+  <delete id="deleteByExample" parameterType="com.sztzjy.digital_credit.entity.StuMachineLearningExample">
+    delete from stu_machine_learning
+    <if test="_parameter != null">
+      <include refid="Example_Where_Clause" />
+    </if>
+  </delete>
+  <insert id="insert" parameterType="com.sztzjy.digital_credit.entity.StuMachineLearning">
+    insert into stu_machine_learning (id, step_one_a, step_one_b, 
+      step_one_c, step_one_d, step_two_a, 
+      step_two_b, step_two_c, step_three_a, 
+      step_three_b, step_three_c, step_three_d, 
+      step_four_a, step_four_b, step_four_c, 
+      step_four_d, step_five_a, step_five_b, 
+      step_five_c, step_five_d, step_six_a, 
+      step_six_b, step_six_c, step_six_d, 
+      step_seven_a, step_seven_b, step_seven_c, 
+      step_seven_d, step_eight_a, step_eight_b, 
+      step_eight_c, step_eight_d, step_nine_a, 
+      step_nine_b, step_nine_c, step_nine_d, 
+      user_id, sub_state, module
+      )
+    values (#{id,jdbcType=INTEGER}, #{stepOneA,jdbcType=VARCHAR}, #{stepOneB,jdbcType=VARCHAR}, 
+      #{stepOneC,jdbcType=VARCHAR}, #{stepOneD,jdbcType=VARCHAR}, #{stepTwoA,jdbcType=VARCHAR}, 
+      #{stepTwoB,jdbcType=VARCHAR}, #{stepTwoC,jdbcType=VARCHAR}, #{stepThreeA,jdbcType=VARCHAR}, 
+      #{stepThreeB,jdbcType=VARCHAR}, #{stepThreeC,jdbcType=VARCHAR}, #{stepThreeD,jdbcType=VARCHAR}, 
+      #{stepFourA,jdbcType=VARCHAR}, #{stepFourB,jdbcType=VARCHAR}, #{stepFourC,jdbcType=VARCHAR}, 
+      #{stepFourD,jdbcType=VARCHAR}, #{stepFiveA,jdbcType=VARCHAR}, #{stepFiveB,jdbcType=VARCHAR}, 
+      #{stepFiveC,jdbcType=VARCHAR}, #{stepFiveD,jdbcType=VARCHAR}, #{stepSixA,jdbcType=VARCHAR}, 
+      #{stepSixB,jdbcType=VARCHAR}, #{stepSixC,jdbcType=VARCHAR}, #{stepSixD,jdbcType=VARCHAR}, 
+      #{stepSevenA,jdbcType=VARCHAR}, #{stepSevenB,jdbcType=VARCHAR}, #{stepSevenC,jdbcType=VARCHAR}, 
+      #{stepSevenD,jdbcType=VARCHAR}, #{stepEightA,jdbcType=VARCHAR}, #{stepEightB,jdbcType=VARCHAR}, 
+      #{stepEightC,jdbcType=VARCHAR}, #{stepEightD,jdbcType=VARCHAR}, #{stepNineA,jdbcType=VARCHAR}, 
+      #{stepNineB,jdbcType=VARCHAR}, #{stepNineC,jdbcType=VARCHAR}, #{stepNineD,jdbcType=VARCHAR}, 
+      #{userId,jdbcType=VARCHAR}, #{subState,jdbcType=INTEGER}, #{module,jdbcType=VARCHAR}
+      )
+  </insert>
+  <insert id="insertSelective" parameterType="com.sztzjy.digital_credit.entity.StuMachineLearning">
+    insert into stu_machine_learning
+    <trim prefix="(" suffix=")" suffixOverrides=",">
+      <if test="id != null">
+        id,
+      </if>
+      <if test="stepOneA != null">
+        step_one_a,
+      </if>
+      <if test="stepOneB != null">
+        step_one_b,
+      </if>
+      <if test="stepOneC != null">
+        step_one_c,
+      </if>
+      <if test="stepOneD != null">
+        step_one_d,
+      </if>
+      <if test="stepTwoA != null">
+        step_two_a,
+      </if>
+      <if test="stepTwoB != null">
+        step_two_b,
+      </if>
+      <if test="stepTwoC != null">
+        step_two_c,
+      </if>
+      <if test="stepThreeA != null">
+        step_three_a,
+      </if>
+      <if test="stepThreeB != null">
+        step_three_b,
+      </if>
+      <if test="stepThreeC != null">
+        step_three_c,
+      </if>
+      <if test="stepThreeD != null">
+        step_three_d,
+      </if>
+      <if test="stepFourA != null">
+        step_four_a,
+      </if>
+      <if test="stepFourB != null">
+        step_four_b,
+      </if>
+      <if test="stepFourC != null">
+        step_four_c,
+      </if>
+      <if test="stepFourD != null">
+        step_four_d,
+      </if>
+      <if test="stepFiveA != null">
+        step_five_a,
+      </if>
+      <if test="stepFiveB != null">
+        step_five_b,
+      </if>
+      <if test="stepFiveC != null">
+        step_five_c,
+      </if>
+      <if test="stepFiveD != null">
+        step_five_d,
+      </if>
+      <if test="stepSixA != null">
+        step_six_a,
+      </if>
+      <if test="stepSixB != null">
+        step_six_b,
+      </if>
+      <if test="stepSixC != null">
+        step_six_c,
+      </if>
+      <if test="stepSixD != null">
+        step_six_d,
+      </if>
+      <if test="stepSevenA != null">
+        step_seven_a,
+      </if>
+      <if test="stepSevenB != null">
+        step_seven_b,
+      </if>
+      <if test="stepSevenC != null">
+        step_seven_c,
+      </if>
+      <if test="stepSevenD != null">
+        step_seven_d,
+      </if>
+      <if test="stepEightA != null">
+        step_eight_a,
+      </if>
+      <if test="stepEightB != null">
+        step_eight_b,
+      </if>
+      <if test="stepEightC != null">
+        step_eight_c,
+      </if>
+      <if test="stepEightD != null">
+        step_eight_d,
+      </if>
+      <if test="stepNineA != null">
+        step_nine_a,
+      </if>
+      <if test="stepNineB != null">
+        step_nine_b,
+      </if>
+      <if test="stepNineC != null">
+        step_nine_c,
+      </if>
+      <if test="stepNineD != null">
+        step_nine_d,
+      </if>
+      <if test="userId != null">
+        user_id,
+      </if>
+      <if test="subState != null">
+        sub_state,
+      </if>
+      <if test="module != null">
+        module,
+      </if>
+    </trim>
+    <trim prefix="values (" suffix=")" suffixOverrides=",">
+      <if test="id != null">
+        #{id,jdbcType=INTEGER},
+      </if>
+      <if test="stepOneA != null">
+        #{stepOneA,jdbcType=VARCHAR},
+      </if>
+      <if test="stepOneB != null">
+        #{stepOneB,jdbcType=VARCHAR},
+      </if>
+      <if test="stepOneC != null">
+        #{stepOneC,jdbcType=VARCHAR},
+      </if>
+      <if test="stepOneD != null">
+        #{stepOneD,jdbcType=VARCHAR},
+      </if>
+      <if test="stepTwoA != null">
+        #{stepTwoA,jdbcType=VARCHAR},
+      </if>
+      <if test="stepTwoB != null">
+        #{stepTwoB,jdbcType=VARCHAR},
+      </if>
+      <if test="stepTwoC != null">
+        #{stepTwoC,jdbcType=VARCHAR},
+      </if>
+      <if test="stepThreeA != null">
+        #{stepThreeA,jdbcType=VARCHAR},
+      </if>
+      <if test="stepThreeB != null">
+        #{stepThreeB,jdbcType=VARCHAR},
+      </if>
+      <if test="stepThreeC != null">
+        #{stepThreeC,jdbcType=VARCHAR},
+      </if>
+      <if test="stepThreeD != null">
+        #{stepThreeD,jdbcType=VARCHAR},
+      </if>
+      <if test="stepFourA != null">
+        #{stepFourA,jdbcType=VARCHAR},
+      </if>
+      <if test="stepFourB != null">
+        #{stepFourB,jdbcType=VARCHAR},
+      </if>
+      <if test="stepFourC != null">
+        #{stepFourC,jdbcType=VARCHAR},
+      </if>
+      <if test="stepFourD != null">
+        #{stepFourD,jdbcType=VARCHAR},
+      </if>
+      <if test="stepFiveA != null">
+        #{stepFiveA,jdbcType=VARCHAR},
+      </if>
+      <if test="stepFiveB != null">
+        #{stepFiveB,jdbcType=VARCHAR},
+      </if>
+      <if test="stepFiveC != null">
+        #{stepFiveC,jdbcType=VARCHAR},
+      </if>
+      <if test="stepFiveD != null">
+        #{stepFiveD,jdbcType=VARCHAR},
+      </if>
+      <if test="stepSixA != null">
+        #{stepSixA,jdbcType=VARCHAR},
+      </if>
+      <if test="stepSixB != null">
+        #{stepSixB,jdbcType=VARCHAR},
+      </if>
+      <if test="stepSixC != null">
+        #{stepSixC,jdbcType=VARCHAR},
+      </if>
+      <if test="stepSixD != null">
+        #{stepSixD,jdbcType=VARCHAR},
+      </if>
+      <if test="stepSevenA != null">
+        #{stepSevenA,jdbcType=VARCHAR},
+      </if>
+      <if test="stepSevenB != null">
+        #{stepSevenB,jdbcType=VARCHAR},
+      </if>
+      <if test="stepSevenC != null">
+        #{stepSevenC,jdbcType=VARCHAR},
+      </if>
+      <if test="stepSevenD != null">
+        #{stepSevenD,jdbcType=VARCHAR},
+      </if>
+      <if test="stepEightA != null">
+        #{stepEightA,jdbcType=VARCHAR},
+      </if>
+      <if test="stepEightB != null">
+        #{stepEightB,jdbcType=VARCHAR},
+      </if>
+      <if test="stepEightC != null">
+        #{stepEightC,jdbcType=VARCHAR},
+      </if>
+      <if test="stepEightD != null">
+        #{stepEightD,jdbcType=VARCHAR},
+      </if>
+      <if test="stepNineA != null">
+        #{stepNineA,jdbcType=VARCHAR},
+      </if>
+      <if test="stepNineB != null">
+        #{stepNineB,jdbcType=VARCHAR},
+      </if>
+      <if test="stepNineC != null">
+        #{stepNineC,jdbcType=VARCHAR},
+      </if>
+      <if test="stepNineD != null">
+        #{stepNineD,jdbcType=VARCHAR},
+      </if>
+      <if test="userId != null">
+        #{userId,jdbcType=VARCHAR},
+      </if>
+      <if test="subState != null">
+        #{subState,jdbcType=INTEGER},
+      </if>
+      <if test="module != null">
+        #{module,jdbcType=VARCHAR},
+      </if>
+    </trim>
+  </insert>
+  <select id="countByExample" parameterType="com.sztzjy.digital_credit.entity.StuMachineLearningExample" resultType="java.lang.Long">
+    select count(*) from stu_machine_learning
+    <if test="_parameter != null">
+      <include refid="Example_Where_Clause" />
+    </if>
+  </select>
+  <update id="updateByExampleSelective" parameterType="map">
+    update stu_machine_learning
+    <set>
+      <if test="record.id != null">
+        id = #{record.id,jdbcType=INTEGER},
+      </if>
+      <if test="record.stepOneA != null">
+        step_one_a = #{record.stepOneA,jdbcType=VARCHAR},
+      </if>
+      <if test="record.stepOneB != null">
+        step_one_b = #{record.stepOneB,jdbcType=VARCHAR},
+      </if>
+      <if test="record.stepOneC != null">
+        step_one_c = #{record.stepOneC,jdbcType=VARCHAR},
+      </if>
+      <if test="record.stepOneD != null">
+        step_one_d = #{record.stepOneD,jdbcType=VARCHAR},
+      </if>
+      <if test="record.stepTwoA != null">
+        step_two_a = #{record.stepTwoA,jdbcType=VARCHAR},
+      </if>
+      <if test="record.stepTwoB != null">
+        step_two_b = #{record.stepTwoB,jdbcType=VARCHAR},
+      </if>
+      <if test="record.stepTwoC != null">
+        step_two_c = #{record.stepTwoC,jdbcType=VARCHAR},
+      </if>
+      <if test="record.stepThreeA != null">
+        step_three_a = #{record.stepThreeA,jdbcType=VARCHAR},
+      </if>
+      <if test="record.stepThreeB != null">
+        step_three_b = #{record.stepThreeB,jdbcType=VARCHAR},
+      </if>
+      <if test="record.stepThreeC != null">
+        step_three_c = #{record.stepThreeC,jdbcType=VARCHAR},
+      </if>
+      <if test="record.stepThreeD != null">
+        step_three_d = #{record.stepThreeD,jdbcType=VARCHAR},
+      </if>
+      <if test="record.stepFourA != null">
+        step_four_a = #{record.stepFourA,jdbcType=VARCHAR},
+      </if>
+      <if test="record.stepFourB != null">
+        step_four_b = #{record.stepFourB,jdbcType=VARCHAR},
+      </if>
+      <if test="record.stepFourC != null">
+        step_four_c = #{record.stepFourC,jdbcType=VARCHAR},
+      </if>
+      <if test="record.stepFourD != null">
+        step_four_d = #{record.stepFourD,jdbcType=VARCHAR},
+      </if>
+      <if test="record.stepFiveA != null">
+        step_five_a = #{record.stepFiveA,jdbcType=VARCHAR},
+      </if>
+      <if test="record.stepFiveB != null">
+        step_five_b = #{record.stepFiveB,jdbcType=VARCHAR},
+      </if>
+      <if test="record.stepFiveC != null">
+        step_five_c = #{record.stepFiveC,jdbcType=VARCHAR},
+      </if>
+      <if test="record.stepFiveD != null">
+        step_five_d = #{record.stepFiveD,jdbcType=VARCHAR},
+      </if>
+      <if test="record.stepSixA != null">
+        step_six_a = #{record.stepSixA,jdbcType=VARCHAR},
+      </if>
+      <if test="record.stepSixB != null">
+        step_six_b = #{record.stepSixB,jdbcType=VARCHAR},
+      </if>
+      <if test="record.stepSixC != null">
+        step_six_c = #{record.stepSixC,jdbcType=VARCHAR},
+      </if>
+      <if test="record.stepSixD != null">
+        step_six_d = #{record.stepSixD,jdbcType=VARCHAR},
+      </if>
+      <if test="record.stepSevenA != null">
+        step_seven_a = #{record.stepSevenA,jdbcType=VARCHAR},
+      </if>
+      <if test="record.stepSevenB != null">
+        step_seven_b = #{record.stepSevenB,jdbcType=VARCHAR},
+      </if>
+      <if test="record.stepSevenC != null">
+        step_seven_c = #{record.stepSevenC,jdbcType=VARCHAR},
+      </if>
+      <if test="record.stepSevenD != null">
+        step_seven_d = #{record.stepSevenD,jdbcType=VARCHAR},
+      </if>
+      <if test="record.stepEightA != null">
+        step_eight_a = #{record.stepEightA,jdbcType=VARCHAR},
+      </if>
+      <if test="record.stepEightB != null">
+        step_eight_b = #{record.stepEightB,jdbcType=VARCHAR},
+      </if>
+      <if test="record.stepEightC != null">
+        step_eight_c = #{record.stepEightC,jdbcType=VARCHAR},
+      </if>
+      <if test="record.stepEightD != null">
+        step_eight_d = #{record.stepEightD,jdbcType=VARCHAR},
+      </if>
+      <if test="record.stepNineA != null">
+        step_nine_a = #{record.stepNineA,jdbcType=VARCHAR},
+      </if>
+      <if test="record.stepNineB != null">
+        step_nine_b = #{record.stepNineB,jdbcType=VARCHAR},
+      </if>
+      <if test="record.stepNineC != null">
+        step_nine_c = #{record.stepNineC,jdbcType=VARCHAR},
+      </if>
+      <if test="record.stepNineD != null">
+        step_nine_d = #{record.stepNineD,jdbcType=VARCHAR},
+      </if>
+      <if test="record.userId != null">
+        user_id = #{record.userId,jdbcType=VARCHAR},
+      </if>
+      <if test="record.subState != null">
+        sub_state = #{record.subState,jdbcType=INTEGER},
+      </if>
+      <if test="record.module != null">
+        module = #{record.module,jdbcType=VARCHAR},
+      </if>
+    </set>
+    <if test="_parameter != null">
+      <include refid="Update_By_Example_Where_Clause" />
+    </if>
+  </update>
+  <update id="updateByExample" parameterType="map">
+    update stu_machine_learning
+    set id = #{record.id,jdbcType=INTEGER},
+      step_one_a = #{record.stepOneA,jdbcType=VARCHAR},
+      step_one_b = #{record.stepOneB,jdbcType=VARCHAR},
+      step_one_c = #{record.stepOneC,jdbcType=VARCHAR},
+      step_one_d = #{record.stepOneD,jdbcType=VARCHAR},
+      step_two_a = #{record.stepTwoA,jdbcType=VARCHAR},
+      step_two_b = #{record.stepTwoB,jdbcType=VARCHAR},
+      step_two_c = #{record.stepTwoC,jdbcType=VARCHAR},
+      step_three_a = #{record.stepThreeA,jdbcType=VARCHAR},
+      step_three_b = #{record.stepThreeB,jdbcType=VARCHAR},
+      step_three_c = #{record.stepThreeC,jdbcType=VARCHAR},
+      step_three_d = #{record.stepThreeD,jdbcType=VARCHAR},
+      step_four_a = #{record.stepFourA,jdbcType=VARCHAR},
+      step_four_b = #{record.stepFourB,jdbcType=VARCHAR},
+      step_four_c = #{record.stepFourC,jdbcType=VARCHAR},
+      step_four_d = #{record.stepFourD,jdbcType=VARCHAR},
+      step_five_a = #{record.stepFiveA,jdbcType=VARCHAR},
+      step_five_b = #{record.stepFiveB,jdbcType=VARCHAR},
+      step_five_c = #{record.stepFiveC,jdbcType=VARCHAR},
+      step_five_d = #{record.stepFiveD,jdbcType=VARCHAR},
+      step_six_a = #{record.stepSixA,jdbcType=VARCHAR},
+      step_six_b = #{record.stepSixB,jdbcType=VARCHAR},
+      step_six_c = #{record.stepSixC,jdbcType=VARCHAR},
+      step_six_d = #{record.stepSixD,jdbcType=VARCHAR},
+      step_seven_a = #{record.stepSevenA,jdbcType=VARCHAR},
+      step_seven_b = #{record.stepSevenB,jdbcType=VARCHAR},
+      step_seven_c = #{record.stepSevenC,jdbcType=VARCHAR},
+      step_seven_d = #{record.stepSevenD,jdbcType=VARCHAR},
+      step_eight_a = #{record.stepEightA,jdbcType=VARCHAR},
+      step_eight_b = #{record.stepEightB,jdbcType=VARCHAR},
+      step_eight_c = #{record.stepEightC,jdbcType=VARCHAR},
+      step_eight_d = #{record.stepEightD,jdbcType=VARCHAR},
+      step_nine_a = #{record.stepNineA,jdbcType=VARCHAR},
+      step_nine_b = #{record.stepNineB,jdbcType=VARCHAR},
+      step_nine_c = #{record.stepNineC,jdbcType=VARCHAR},
+      step_nine_d = #{record.stepNineD,jdbcType=VARCHAR},
+      user_id = #{record.userId,jdbcType=VARCHAR},
+      sub_state = #{record.subState,jdbcType=INTEGER},
+      module = #{record.module,jdbcType=VARCHAR}
+    <if test="_parameter != null">
+      <include refid="Update_By_Example_Where_Clause" />
+    </if>
+  </update>
+  <update id="updateByPrimaryKeySelective" parameterType="com.sztzjy.digital_credit.entity.StuMachineLearning">
+    update stu_machine_learning
+    <set>
+      <if test="stepOneA != null">
+        step_one_a = #{stepOneA,jdbcType=VARCHAR},
+      </if>
+      <if test="stepOneB != null">
+        step_one_b = #{stepOneB,jdbcType=VARCHAR},
+      </if>
+      <if test="stepOneC != null">
+        step_one_c = #{stepOneC,jdbcType=VARCHAR},
+      </if>
+      <if test="stepOneD != null">
+        step_one_d = #{stepOneD,jdbcType=VARCHAR},
+      </if>
+      <if test="stepTwoA != null">
+        step_two_a = #{stepTwoA,jdbcType=VARCHAR},
+      </if>
+      <if test="stepTwoB != null">
+        step_two_b = #{stepTwoB,jdbcType=VARCHAR},
+      </if>
+      <if test="stepTwoC != null">
+        step_two_c = #{stepTwoC,jdbcType=VARCHAR},
+      </if>
+      <if test="stepThreeA != null">
+        step_three_a = #{stepThreeA,jdbcType=VARCHAR},
+      </if>
+      <if test="stepThreeB != null">
+        step_three_b = #{stepThreeB,jdbcType=VARCHAR},
+      </if>
+      <if test="stepThreeC != null">
+        step_three_c = #{stepThreeC,jdbcType=VARCHAR},
+      </if>
+      <if test="stepThreeD != null">
+        step_three_d = #{stepThreeD,jdbcType=VARCHAR},
+      </if>
+      <if test="stepFourA != null">
+        step_four_a = #{stepFourA,jdbcType=VARCHAR},
+      </if>
+      <if test="stepFourB != null">
+        step_four_b = #{stepFourB,jdbcType=VARCHAR},
+      </if>
+      <if test="stepFourC != null">
+        step_four_c = #{stepFourC,jdbcType=VARCHAR},
+      </if>
+      <if test="stepFourD != null">
+        step_four_d = #{stepFourD,jdbcType=VARCHAR},
+      </if>
+      <if test="stepFiveA != null">
+        step_five_a = #{stepFiveA,jdbcType=VARCHAR},
+      </if>
+      <if test="stepFiveB != null">
+        step_five_b = #{stepFiveB,jdbcType=VARCHAR},
+      </if>
+      <if test="stepFiveC != null">
+        step_five_c = #{stepFiveC,jdbcType=VARCHAR},
+      </if>
+      <if test="stepFiveD != null">
+        step_five_d = #{stepFiveD,jdbcType=VARCHAR},
+      </if>
+      <if test="stepSixA != null">
+        step_six_a = #{stepSixA,jdbcType=VARCHAR},
+      </if>
+      <if test="stepSixB != null">
+        step_six_b = #{stepSixB,jdbcType=VARCHAR},
+      </if>
+      <if test="stepSixC != null">
+        step_six_c = #{stepSixC,jdbcType=VARCHAR},
+      </if>
+      <if test="stepSixD != null">
+        step_six_d = #{stepSixD,jdbcType=VARCHAR},
+      </if>
+      <if test="stepSevenA != null">
+        step_seven_a = #{stepSevenA,jdbcType=VARCHAR},
+      </if>
+      <if test="stepSevenB != null">
+        step_seven_b = #{stepSevenB,jdbcType=VARCHAR},
+      </if>
+      <if test="stepSevenC != null">
+        step_seven_c = #{stepSevenC,jdbcType=VARCHAR},
+      </if>
+      <if test="stepSevenD != null">
+        step_seven_d = #{stepSevenD,jdbcType=VARCHAR},
+      </if>
+      <if test="stepEightA != null">
+        step_eight_a = #{stepEightA,jdbcType=VARCHAR},
+      </if>
+      <if test="stepEightB != null">
+        step_eight_b = #{stepEightB,jdbcType=VARCHAR},
+      </if>
+      <if test="stepEightC != null">
+        step_eight_c = #{stepEightC,jdbcType=VARCHAR},
+      </if>
+      <if test="stepEightD != null">
+        step_eight_d = #{stepEightD,jdbcType=VARCHAR},
+      </if>
+      <if test="stepNineA != null">
+        step_nine_a = #{stepNineA,jdbcType=VARCHAR},
+      </if>
+      <if test="stepNineB != null">
+        step_nine_b = #{stepNineB,jdbcType=VARCHAR},
+      </if>
+      <if test="stepNineC != null">
+        step_nine_c = #{stepNineC,jdbcType=VARCHAR},
+      </if>
+      <if test="stepNineD != null">
+        step_nine_d = #{stepNineD,jdbcType=VARCHAR},
+      </if>
+      <if test="userId != null">
+        user_id = #{userId,jdbcType=VARCHAR},
+      </if>
+      <if test="subState != null">
+        sub_state = #{subState,jdbcType=INTEGER},
+      </if>
+      <if test="module != null">
+        module = #{module,jdbcType=VARCHAR},
+      </if>
+    </set>
+    where id = #{id,jdbcType=INTEGER}
+  </update>
+  <update id="updateByPrimaryKey" parameterType="com.sztzjy.digital_credit.entity.StuMachineLearning">
+    update stu_machine_learning
+    set step_one_a = #{stepOneA,jdbcType=VARCHAR},
+      step_one_b = #{stepOneB,jdbcType=VARCHAR},
+      step_one_c = #{stepOneC,jdbcType=VARCHAR},
+      step_one_d = #{stepOneD,jdbcType=VARCHAR},
+      step_two_a = #{stepTwoA,jdbcType=VARCHAR},
+      step_two_b = #{stepTwoB,jdbcType=VARCHAR},
+      step_two_c = #{stepTwoC,jdbcType=VARCHAR},
+      step_three_a = #{stepThreeA,jdbcType=VARCHAR},
+      step_three_b = #{stepThreeB,jdbcType=VARCHAR},
+      step_three_c = #{stepThreeC,jdbcType=VARCHAR},
+      step_three_d = #{stepThreeD,jdbcType=VARCHAR},
+      step_four_a = #{stepFourA,jdbcType=VARCHAR},
+      step_four_b = #{stepFourB,jdbcType=VARCHAR},
+      step_four_c = #{stepFourC,jdbcType=VARCHAR},
+      step_four_d = #{stepFourD,jdbcType=VARCHAR},
+      step_five_a = #{stepFiveA,jdbcType=VARCHAR},
+      step_five_b = #{stepFiveB,jdbcType=VARCHAR},
+      step_five_c = #{stepFiveC,jdbcType=VARCHAR},
+      step_five_d = #{stepFiveD,jdbcType=VARCHAR},
+      step_six_a = #{stepSixA,jdbcType=VARCHAR},
+      step_six_b = #{stepSixB,jdbcType=VARCHAR},
+      step_six_c = #{stepSixC,jdbcType=VARCHAR},
+      step_six_d = #{stepSixD,jdbcType=VARCHAR},
+      step_seven_a = #{stepSevenA,jdbcType=VARCHAR},
+      step_seven_b = #{stepSevenB,jdbcType=VARCHAR},
+      step_seven_c = #{stepSevenC,jdbcType=VARCHAR},
+      step_seven_d = #{stepSevenD,jdbcType=VARCHAR},
+      step_eight_a = #{stepEightA,jdbcType=VARCHAR},
+      step_eight_b = #{stepEightB,jdbcType=VARCHAR},
+      step_eight_c = #{stepEightC,jdbcType=VARCHAR},
+      step_eight_d = #{stepEightD,jdbcType=VARCHAR},
+      step_nine_a = #{stepNineA,jdbcType=VARCHAR},
+      step_nine_b = #{stepNineB,jdbcType=VARCHAR},
+      step_nine_c = #{stepNineC,jdbcType=VARCHAR},
+      step_nine_d = #{stepNineD,jdbcType=VARCHAR},
+      user_id = #{userId,jdbcType=VARCHAR},
+      sub_state = #{subState,jdbcType=INTEGER},
+      module = #{module,jdbcType=VARCHAR}
+    where id = #{id,jdbcType=INTEGER}
+  </update>
+</mapper>
\ No newline at end of file
diff --git a/src/main/resources/mappers/StuUserPortraitMapper.xml b/src/main/resources/mappers/StuUserPortraitMapper.xml
new file mode 100644
index 0000000..4ace260
--- /dev/null
+++ b/src/main/resources/mappers/StuUserPortraitMapper.xml
@@ -0,0 +1,750 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.sztzjy.digital_credit.mapper.StuUserPortraitMapper">
+  <resultMap id="BaseResultMap" type="com.sztzjy.digital_credit.entity.StuUserPortrait">
+    <id column="id" jdbcType="INTEGER" property="id" />
+    <result column="step_one_a" jdbcType="VARCHAR" property="stepOneA" />
+    <result column="step_one_b" jdbcType="VARCHAR" property="stepOneB" />
+    <result column="step_one_c" jdbcType="VARCHAR" property="stepOneC" />
+    <result column="step_one_d" jdbcType="VARCHAR" property="stepOneD" />
+    <result column="step_two_a" jdbcType="VARCHAR" property="stepTwoA" />
+    <result column="step_two_b" jdbcType="VARCHAR" property="stepTwoB" />
+    <result column="step_two_c" jdbcType="VARCHAR" property="stepTwoC" />
+    <result column="step_three_a" jdbcType="VARCHAR" property="stepThreeA" />
+    <result column="step_three_b" jdbcType="VARCHAR" property="stepThreeB" />
+    <result column="step_three_c" jdbcType="VARCHAR" property="stepThreeC" />
+    <result column="step_three_d" jdbcType="VARCHAR" property="stepThreeD" />
+    <result column="step_four_a" jdbcType="VARCHAR" property="stepFourA" />
+    <result column="step_four_b" jdbcType="VARCHAR" property="stepFourB" />
+    <result column="step_four_c" jdbcType="VARCHAR" property="stepFourC" />
+    <result column="step_four_d" jdbcType="VARCHAR" property="stepFourD" />
+    <result column="step_five_a" jdbcType="VARCHAR" property="stepFiveA" />
+    <result column="step_five_b" jdbcType="VARCHAR" property="stepFiveB" />
+    <result column="step_five_c" jdbcType="VARCHAR" property="stepFiveC" />
+    <result column="step_five_d" jdbcType="VARCHAR" property="stepFiveD" />
+    <result column="step_six_a" jdbcType="VARCHAR" property="stepSixA" />
+    <result column="step_six_b" jdbcType="VARCHAR" property="stepSixB" />
+    <result column="step_six_c" jdbcType="VARCHAR" property="stepSixC" />
+    <result column="step_six_d" jdbcType="VARCHAR" property="stepSixD" />
+    <result column="step_seven_a" jdbcType="VARCHAR" property="stepSevenA" />
+    <result column="step_seven_b" jdbcType="VARCHAR" property="stepSevenB" />
+    <result column="step_seven_c" jdbcType="VARCHAR" property="stepSevenC" />
+    <result column="step_seven_d" jdbcType="VARCHAR" property="stepSevenD" />
+    <result column="step_eight_a" jdbcType="VARCHAR" property="stepEightA" />
+    <result column="step_eight_b" jdbcType="VARCHAR" property="stepEightB" />
+    <result column="step_eight_c" jdbcType="VARCHAR" property="stepEightC" />
+    <result column="step_eight_d" jdbcType="VARCHAR" property="stepEightD" />
+    <result column="step_nine_a" jdbcType="VARCHAR" property="stepNineA" />
+    <result column="step_nine_b" jdbcType="VARCHAR" property="stepNineB" />
+    <result column="step_nine_c" jdbcType="VARCHAR" property="stepNineC" />
+    <result column="step_nine_d" jdbcType="VARCHAR" property="stepNineD" />
+    <result column="user_id" jdbcType="VARCHAR" property="userId" />
+    <result column="sub_state" jdbcType="INTEGER" property="subState" />
+    <result column="module" jdbcType="VARCHAR" property="module" />
+  </resultMap>
+  <sql id="Example_Where_Clause">
+    <where>
+      <foreach collection="oredCriteria" item="criteria" separator="or">
+        <if test="criteria.valid">
+          <trim prefix="(" prefixOverrides="and" suffix=")">
+            <foreach collection="criteria.criteria" item="criterion">
+              <choose>
+                <when test="criterion.noValue">
+                  and ${criterion.condition}
+                </when>
+                <when test="criterion.singleValue">
+                  and ${criterion.condition} #{criterion.value}
+                </when>
+                <when test="criterion.betweenValue">
+                  and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}
+                </when>
+                <when test="criterion.listValue">
+                  and ${criterion.condition}
+                  <foreach close=")" collection="criterion.value" item="listItem" open="(" separator=",">
+                    #{listItem}
+                  </foreach>
+                </when>
+              </choose>
+            </foreach>
+          </trim>
+        </if>
+      </foreach>
+    </where>
+  </sql>
+  <sql id="Update_By_Example_Where_Clause">
+    <where>
+      <foreach collection="example.oredCriteria" item="criteria" separator="or">
+        <if test="criteria.valid">
+          <trim prefix="(" prefixOverrides="and" suffix=")">
+            <foreach collection="criteria.criteria" item="criterion">
+              <choose>
+                <when test="criterion.noValue">
+                  and ${criterion.condition}
+                </when>
+                <when test="criterion.singleValue">
+                  and ${criterion.condition} #{criterion.value}
+                </when>
+                <when test="criterion.betweenValue">
+                  and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}
+                </when>
+                <when test="criterion.listValue">
+                  and ${criterion.condition}
+                  <foreach close=")" collection="criterion.value" item="listItem" open="(" separator=",">
+                    #{listItem}
+                  </foreach>
+                </when>
+              </choose>
+            </foreach>
+          </trim>
+        </if>
+      </foreach>
+    </where>
+  </sql>
+  <sql id="Base_Column_List">
+    id, step_one_a, step_one_b, step_one_c, step_one_d, step_two_a, step_two_b, step_two_c, 
+    step_three_a, step_three_b, step_three_c, step_three_d, step_four_a, step_four_b, 
+    step_four_c, step_four_d, step_five_a, step_five_b, step_five_c, step_five_d, step_six_a, 
+    step_six_b, step_six_c, step_six_d, step_seven_a, step_seven_b, step_seven_c, step_seven_d, 
+    step_eight_a, step_eight_b, step_eight_c, step_eight_d, step_nine_a, step_nine_b, 
+    step_nine_c, step_nine_d, user_id, sub_state, module
+  </sql>
+  <select id="selectByExample" parameterType="com.sztzjy.digital_credit.entity.StuUserPortraitExample" resultMap="BaseResultMap">
+    select
+    <if test="distinct">
+      distinct
+    </if>
+    <include refid="Base_Column_List" />
+    from stu_user_portrait
+    <if test="_parameter != null">
+      <include refid="Example_Where_Clause" />
+    </if>
+    <if test="orderByClause != null">
+      order by ${orderByClause}
+    </if>
+  </select>
+  <select id="selectByPrimaryKey" parameterType="java.lang.Integer" resultMap="BaseResultMap">
+    select 
+    <include refid="Base_Column_List" />
+    from stu_user_portrait
+    where id = #{id,jdbcType=INTEGER}
+  </select>
+  <delete id="deleteByPrimaryKey" parameterType="java.lang.Integer">
+    delete from stu_user_portrait
+    where id = #{id,jdbcType=INTEGER}
+  </delete>
+  <delete id="deleteByExample" parameterType="com.sztzjy.digital_credit.entity.StuUserPortraitExample">
+    delete from stu_user_portrait
+    <if test="_parameter != null">
+      <include refid="Example_Where_Clause" />
+    </if>
+  </delete>
+  <insert id="insert" parameterType="com.sztzjy.digital_credit.entity.StuUserPortrait">
+    insert into stu_user_portrait (id, step_one_a, step_one_b, 
+      step_one_c, step_one_d, step_two_a, 
+      step_two_b, step_two_c, step_three_a, 
+      step_three_b, step_three_c, step_three_d, 
+      step_four_a, step_four_b, step_four_c, 
+      step_four_d, step_five_a, step_five_b, 
+      step_five_c, step_five_d, step_six_a, 
+      step_six_b, step_six_c, step_six_d, 
+      step_seven_a, step_seven_b, step_seven_c, 
+      step_seven_d, step_eight_a, step_eight_b, 
+      step_eight_c, step_eight_d, step_nine_a, 
+      step_nine_b, step_nine_c, step_nine_d, 
+      user_id, sub_state, module
+      )
+    values (#{id,jdbcType=INTEGER}, #{stepOneA,jdbcType=VARCHAR}, #{stepOneB,jdbcType=VARCHAR}, 
+      #{stepOneC,jdbcType=VARCHAR}, #{stepOneD,jdbcType=VARCHAR}, #{stepTwoA,jdbcType=VARCHAR}, 
+      #{stepTwoB,jdbcType=VARCHAR}, #{stepTwoC,jdbcType=VARCHAR}, #{stepThreeA,jdbcType=VARCHAR}, 
+      #{stepThreeB,jdbcType=VARCHAR}, #{stepThreeC,jdbcType=VARCHAR}, #{stepThreeD,jdbcType=VARCHAR}, 
+      #{stepFourA,jdbcType=VARCHAR}, #{stepFourB,jdbcType=VARCHAR}, #{stepFourC,jdbcType=VARCHAR}, 
+      #{stepFourD,jdbcType=VARCHAR}, #{stepFiveA,jdbcType=VARCHAR}, #{stepFiveB,jdbcType=VARCHAR}, 
+      #{stepFiveC,jdbcType=VARCHAR}, #{stepFiveD,jdbcType=VARCHAR}, #{stepSixA,jdbcType=VARCHAR}, 
+      #{stepSixB,jdbcType=VARCHAR}, #{stepSixC,jdbcType=VARCHAR}, #{stepSixD,jdbcType=VARCHAR}, 
+      #{stepSevenA,jdbcType=VARCHAR}, #{stepSevenB,jdbcType=VARCHAR}, #{stepSevenC,jdbcType=VARCHAR}, 
+      #{stepSevenD,jdbcType=VARCHAR}, #{stepEightA,jdbcType=VARCHAR}, #{stepEightB,jdbcType=VARCHAR}, 
+      #{stepEightC,jdbcType=VARCHAR}, #{stepEightD,jdbcType=VARCHAR}, #{stepNineA,jdbcType=VARCHAR}, 
+      #{stepNineB,jdbcType=VARCHAR}, #{stepNineC,jdbcType=VARCHAR}, #{stepNineD,jdbcType=VARCHAR}, 
+      #{userId,jdbcType=VARCHAR}, #{subState,jdbcType=INTEGER}, #{module,jdbcType=VARCHAR}
+      )
+  </insert>
+  <insert id="insertSelective" parameterType="com.sztzjy.digital_credit.entity.StuUserPortrait">
+    insert into stu_user_portrait
+    <trim prefix="(" suffix=")" suffixOverrides=",">
+      <if test="id != null">
+        id,
+      </if>
+      <if test="stepOneA != null">
+        step_one_a,
+      </if>
+      <if test="stepOneB != null">
+        step_one_b,
+      </if>
+      <if test="stepOneC != null">
+        step_one_c,
+      </if>
+      <if test="stepOneD != null">
+        step_one_d,
+      </if>
+      <if test="stepTwoA != null">
+        step_two_a,
+      </if>
+      <if test="stepTwoB != null">
+        step_two_b,
+      </if>
+      <if test="stepTwoC != null">
+        step_two_c,
+      </if>
+      <if test="stepThreeA != null">
+        step_three_a,
+      </if>
+      <if test="stepThreeB != null">
+        step_three_b,
+      </if>
+      <if test="stepThreeC != null">
+        step_three_c,
+      </if>
+      <if test="stepThreeD != null">
+        step_three_d,
+      </if>
+      <if test="stepFourA != null">
+        step_four_a,
+      </if>
+      <if test="stepFourB != null">
+        step_four_b,
+      </if>
+      <if test="stepFourC != null">
+        step_four_c,
+      </if>
+      <if test="stepFourD != null">
+        step_four_d,
+      </if>
+      <if test="stepFiveA != null">
+        step_five_a,
+      </if>
+      <if test="stepFiveB != null">
+        step_five_b,
+      </if>
+      <if test="stepFiveC != null">
+        step_five_c,
+      </if>
+      <if test="stepFiveD != null">
+        step_five_d,
+      </if>
+      <if test="stepSixA != null">
+        step_six_a,
+      </if>
+      <if test="stepSixB != null">
+        step_six_b,
+      </if>
+      <if test="stepSixC != null">
+        step_six_c,
+      </if>
+      <if test="stepSixD != null">
+        step_six_d,
+      </if>
+      <if test="stepSevenA != null">
+        step_seven_a,
+      </if>
+      <if test="stepSevenB != null">
+        step_seven_b,
+      </if>
+      <if test="stepSevenC != null">
+        step_seven_c,
+      </if>
+      <if test="stepSevenD != null">
+        step_seven_d,
+      </if>
+      <if test="stepEightA != null">
+        step_eight_a,
+      </if>
+      <if test="stepEightB != null">
+        step_eight_b,
+      </if>
+      <if test="stepEightC != null">
+        step_eight_c,
+      </if>
+      <if test="stepEightD != null">
+        step_eight_d,
+      </if>
+      <if test="stepNineA != null">
+        step_nine_a,
+      </if>
+      <if test="stepNineB != null">
+        step_nine_b,
+      </if>
+      <if test="stepNineC != null">
+        step_nine_c,
+      </if>
+      <if test="stepNineD != null">
+        step_nine_d,
+      </if>
+      <if test="userId != null">
+        user_id,
+      </if>
+      <if test="subState != null">
+        sub_state,
+      </if>
+      <if test="module != null">
+        module,
+      </if>
+    </trim>
+    <trim prefix="values (" suffix=")" suffixOverrides=",">
+      <if test="id != null">
+        #{id,jdbcType=INTEGER},
+      </if>
+      <if test="stepOneA != null">
+        #{stepOneA,jdbcType=VARCHAR},
+      </if>
+      <if test="stepOneB != null">
+        #{stepOneB,jdbcType=VARCHAR},
+      </if>
+      <if test="stepOneC != null">
+        #{stepOneC,jdbcType=VARCHAR},
+      </if>
+      <if test="stepOneD != null">
+        #{stepOneD,jdbcType=VARCHAR},
+      </if>
+      <if test="stepTwoA != null">
+        #{stepTwoA,jdbcType=VARCHAR},
+      </if>
+      <if test="stepTwoB != null">
+        #{stepTwoB,jdbcType=VARCHAR},
+      </if>
+      <if test="stepTwoC != null">
+        #{stepTwoC,jdbcType=VARCHAR},
+      </if>
+      <if test="stepThreeA != null">
+        #{stepThreeA,jdbcType=VARCHAR},
+      </if>
+      <if test="stepThreeB != null">
+        #{stepThreeB,jdbcType=VARCHAR},
+      </if>
+      <if test="stepThreeC != null">
+        #{stepThreeC,jdbcType=VARCHAR},
+      </if>
+      <if test="stepThreeD != null">
+        #{stepThreeD,jdbcType=VARCHAR},
+      </if>
+      <if test="stepFourA != null">
+        #{stepFourA,jdbcType=VARCHAR},
+      </if>
+      <if test="stepFourB != null">
+        #{stepFourB,jdbcType=VARCHAR},
+      </if>
+      <if test="stepFourC != null">
+        #{stepFourC,jdbcType=VARCHAR},
+      </if>
+      <if test="stepFourD != null">
+        #{stepFourD,jdbcType=VARCHAR},
+      </if>
+      <if test="stepFiveA != null">
+        #{stepFiveA,jdbcType=VARCHAR},
+      </if>
+      <if test="stepFiveB != null">
+        #{stepFiveB,jdbcType=VARCHAR},
+      </if>
+      <if test="stepFiveC != null">
+        #{stepFiveC,jdbcType=VARCHAR},
+      </if>
+      <if test="stepFiveD != null">
+        #{stepFiveD,jdbcType=VARCHAR},
+      </if>
+      <if test="stepSixA != null">
+        #{stepSixA,jdbcType=VARCHAR},
+      </if>
+      <if test="stepSixB != null">
+        #{stepSixB,jdbcType=VARCHAR},
+      </if>
+      <if test="stepSixC != null">
+        #{stepSixC,jdbcType=VARCHAR},
+      </if>
+      <if test="stepSixD != null">
+        #{stepSixD,jdbcType=VARCHAR},
+      </if>
+      <if test="stepSevenA != null">
+        #{stepSevenA,jdbcType=VARCHAR},
+      </if>
+      <if test="stepSevenB != null">
+        #{stepSevenB,jdbcType=VARCHAR},
+      </if>
+      <if test="stepSevenC != null">
+        #{stepSevenC,jdbcType=VARCHAR},
+      </if>
+      <if test="stepSevenD != null">
+        #{stepSevenD,jdbcType=VARCHAR},
+      </if>
+      <if test="stepEightA != null">
+        #{stepEightA,jdbcType=VARCHAR},
+      </if>
+      <if test="stepEightB != null">
+        #{stepEightB,jdbcType=VARCHAR},
+      </if>
+      <if test="stepEightC != null">
+        #{stepEightC,jdbcType=VARCHAR},
+      </if>
+      <if test="stepEightD != null">
+        #{stepEightD,jdbcType=VARCHAR},
+      </if>
+      <if test="stepNineA != null">
+        #{stepNineA,jdbcType=VARCHAR},
+      </if>
+      <if test="stepNineB != null">
+        #{stepNineB,jdbcType=VARCHAR},
+      </if>
+      <if test="stepNineC != null">
+        #{stepNineC,jdbcType=VARCHAR},
+      </if>
+      <if test="stepNineD != null">
+        #{stepNineD,jdbcType=VARCHAR},
+      </if>
+      <if test="userId != null">
+        #{userId,jdbcType=VARCHAR},
+      </if>
+      <if test="subState != null">
+        #{subState,jdbcType=INTEGER},
+      </if>
+      <if test="module != null">
+        #{module,jdbcType=VARCHAR},
+      </if>
+    </trim>
+  </insert>
+  <select id="countByExample" parameterType="com.sztzjy.digital_credit.entity.StuUserPortraitExample" resultType="java.lang.Long">
+    select count(*) from stu_user_portrait
+    <if test="_parameter != null">
+      <include refid="Example_Where_Clause" />
+    </if>
+  </select>
+  <update id="updateByExampleSelective" parameterType="map">
+    update stu_user_portrait
+    <set>
+      <if test="record.id != null">
+        id = #{record.id,jdbcType=INTEGER},
+      </if>
+      <if test="record.stepOneA != null">
+        step_one_a = #{record.stepOneA,jdbcType=VARCHAR},
+      </if>
+      <if test="record.stepOneB != null">
+        step_one_b = #{record.stepOneB,jdbcType=VARCHAR},
+      </if>
+      <if test="record.stepOneC != null">
+        step_one_c = #{record.stepOneC,jdbcType=VARCHAR},
+      </if>
+      <if test="record.stepOneD != null">
+        step_one_d = #{record.stepOneD,jdbcType=VARCHAR},
+      </if>
+      <if test="record.stepTwoA != null">
+        step_two_a = #{record.stepTwoA,jdbcType=VARCHAR},
+      </if>
+      <if test="record.stepTwoB != null">
+        step_two_b = #{record.stepTwoB,jdbcType=VARCHAR},
+      </if>
+      <if test="record.stepTwoC != null">
+        step_two_c = #{record.stepTwoC,jdbcType=VARCHAR},
+      </if>
+      <if test="record.stepThreeA != null">
+        step_three_a = #{record.stepThreeA,jdbcType=VARCHAR},
+      </if>
+      <if test="record.stepThreeB != null">
+        step_three_b = #{record.stepThreeB,jdbcType=VARCHAR},
+      </if>
+      <if test="record.stepThreeC != null">
+        step_three_c = #{record.stepThreeC,jdbcType=VARCHAR},
+      </if>
+      <if test="record.stepThreeD != null">
+        step_three_d = #{record.stepThreeD,jdbcType=VARCHAR},
+      </if>
+      <if test="record.stepFourA != null">
+        step_four_a = #{record.stepFourA,jdbcType=VARCHAR},
+      </if>
+      <if test="record.stepFourB != null">
+        step_four_b = #{record.stepFourB,jdbcType=VARCHAR},
+      </if>
+      <if test="record.stepFourC != null">
+        step_four_c = #{record.stepFourC,jdbcType=VARCHAR},
+      </if>
+      <if test="record.stepFourD != null">
+        step_four_d = #{record.stepFourD,jdbcType=VARCHAR},
+      </if>
+      <if test="record.stepFiveA != null">
+        step_five_a = #{record.stepFiveA,jdbcType=VARCHAR},
+      </if>
+      <if test="record.stepFiveB != null">
+        step_five_b = #{record.stepFiveB,jdbcType=VARCHAR},
+      </if>
+      <if test="record.stepFiveC != null">
+        step_five_c = #{record.stepFiveC,jdbcType=VARCHAR},
+      </if>
+      <if test="record.stepFiveD != null">
+        step_five_d = #{record.stepFiveD,jdbcType=VARCHAR},
+      </if>
+      <if test="record.stepSixA != null">
+        step_six_a = #{record.stepSixA,jdbcType=VARCHAR},
+      </if>
+      <if test="record.stepSixB != null">
+        step_six_b = #{record.stepSixB,jdbcType=VARCHAR},
+      </if>
+      <if test="record.stepSixC != null">
+        step_six_c = #{record.stepSixC,jdbcType=VARCHAR},
+      </if>
+      <if test="record.stepSixD != null">
+        step_six_d = #{record.stepSixD,jdbcType=VARCHAR},
+      </if>
+      <if test="record.stepSevenA != null">
+        step_seven_a = #{record.stepSevenA,jdbcType=VARCHAR},
+      </if>
+      <if test="record.stepSevenB != null">
+        step_seven_b = #{record.stepSevenB,jdbcType=VARCHAR},
+      </if>
+      <if test="record.stepSevenC != null">
+        step_seven_c = #{record.stepSevenC,jdbcType=VARCHAR},
+      </if>
+      <if test="record.stepSevenD != null">
+        step_seven_d = #{record.stepSevenD,jdbcType=VARCHAR},
+      </if>
+      <if test="record.stepEightA != null">
+        step_eight_a = #{record.stepEightA,jdbcType=VARCHAR},
+      </if>
+      <if test="record.stepEightB != null">
+        step_eight_b = #{record.stepEightB,jdbcType=VARCHAR},
+      </if>
+      <if test="record.stepEightC != null">
+        step_eight_c = #{record.stepEightC,jdbcType=VARCHAR},
+      </if>
+      <if test="record.stepEightD != null">
+        step_eight_d = #{record.stepEightD,jdbcType=VARCHAR},
+      </if>
+      <if test="record.stepNineA != null">
+        step_nine_a = #{record.stepNineA,jdbcType=VARCHAR},
+      </if>
+      <if test="record.stepNineB != null">
+        step_nine_b = #{record.stepNineB,jdbcType=VARCHAR},
+      </if>
+      <if test="record.stepNineC != null">
+        step_nine_c = #{record.stepNineC,jdbcType=VARCHAR},
+      </if>
+      <if test="record.stepNineD != null">
+        step_nine_d = #{record.stepNineD,jdbcType=VARCHAR},
+      </if>
+      <if test="record.userId != null">
+        user_id = #{record.userId,jdbcType=VARCHAR},
+      </if>
+      <if test="record.subState != null">
+        sub_state = #{record.subState,jdbcType=INTEGER},
+      </if>
+      <if test="record.module != null">
+        module = #{record.module,jdbcType=VARCHAR},
+      </if>
+    </set>
+    <if test="_parameter != null">
+      <include refid="Update_By_Example_Where_Clause" />
+    </if>
+  </update>
+  <update id="updateByExample" parameterType="map">
+    update stu_user_portrait
+    set id = #{record.id,jdbcType=INTEGER},
+      step_one_a = #{record.stepOneA,jdbcType=VARCHAR},
+      step_one_b = #{record.stepOneB,jdbcType=VARCHAR},
+      step_one_c = #{record.stepOneC,jdbcType=VARCHAR},
+      step_one_d = #{record.stepOneD,jdbcType=VARCHAR},
+      step_two_a = #{record.stepTwoA,jdbcType=VARCHAR},
+      step_two_b = #{record.stepTwoB,jdbcType=VARCHAR},
+      step_two_c = #{record.stepTwoC,jdbcType=VARCHAR},
+      step_three_a = #{record.stepThreeA,jdbcType=VARCHAR},
+      step_three_b = #{record.stepThreeB,jdbcType=VARCHAR},
+      step_three_c = #{record.stepThreeC,jdbcType=VARCHAR},
+      step_three_d = #{record.stepThreeD,jdbcType=VARCHAR},
+      step_four_a = #{record.stepFourA,jdbcType=VARCHAR},
+      step_four_b = #{record.stepFourB,jdbcType=VARCHAR},
+      step_four_c = #{record.stepFourC,jdbcType=VARCHAR},
+      step_four_d = #{record.stepFourD,jdbcType=VARCHAR},
+      step_five_a = #{record.stepFiveA,jdbcType=VARCHAR},
+      step_five_b = #{record.stepFiveB,jdbcType=VARCHAR},
+      step_five_c = #{record.stepFiveC,jdbcType=VARCHAR},
+      step_five_d = #{record.stepFiveD,jdbcType=VARCHAR},
+      step_six_a = #{record.stepSixA,jdbcType=VARCHAR},
+      step_six_b = #{record.stepSixB,jdbcType=VARCHAR},
+      step_six_c = #{record.stepSixC,jdbcType=VARCHAR},
+      step_six_d = #{record.stepSixD,jdbcType=VARCHAR},
+      step_seven_a = #{record.stepSevenA,jdbcType=VARCHAR},
+      step_seven_b = #{record.stepSevenB,jdbcType=VARCHAR},
+      step_seven_c = #{record.stepSevenC,jdbcType=VARCHAR},
+      step_seven_d = #{record.stepSevenD,jdbcType=VARCHAR},
+      step_eight_a = #{record.stepEightA,jdbcType=VARCHAR},
+      step_eight_b = #{record.stepEightB,jdbcType=VARCHAR},
+      step_eight_c = #{record.stepEightC,jdbcType=VARCHAR},
+      step_eight_d = #{record.stepEightD,jdbcType=VARCHAR},
+      step_nine_a = #{record.stepNineA,jdbcType=VARCHAR},
+      step_nine_b = #{record.stepNineB,jdbcType=VARCHAR},
+      step_nine_c = #{record.stepNineC,jdbcType=VARCHAR},
+      step_nine_d = #{record.stepNineD,jdbcType=VARCHAR},
+      user_id = #{record.userId,jdbcType=VARCHAR},
+      sub_state = #{record.subState,jdbcType=INTEGER},
+      module = #{record.module,jdbcType=VARCHAR}
+    <if test="_parameter != null">
+      <include refid="Update_By_Example_Where_Clause" />
+    </if>
+  </update>
+  <update id="updateByPrimaryKeySelective" parameterType="com.sztzjy.digital_credit.entity.StuUserPortrait">
+    update stu_user_portrait
+    <set>
+      <if test="stepOneA != null">
+        step_one_a = #{stepOneA,jdbcType=VARCHAR},
+      </if>
+      <if test="stepOneB != null">
+        step_one_b = #{stepOneB,jdbcType=VARCHAR},
+      </if>
+      <if test="stepOneC != null">
+        step_one_c = #{stepOneC,jdbcType=VARCHAR},
+      </if>
+      <if test="stepOneD != null">
+        step_one_d = #{stepOneD,jdbcType=VARCHAR},
+      </if>
+      <if test="stepTwoA != null">
+        step_two_a = #{stepTwoA,jdbcType=VARCHAR},
+      </if>
+      <if test="stepTwoB != null">
+        step_two_b = #{stepTwoB,jdbcType=VARCHAR},
+      </if>
+      <if test="stepTwoC != null">
+        step_two_c = #{stepTwoC,jdbcType=VARCHAR},
+      </if>
+      <if test="stepThreeA != null">
+        step_three_a = #{stepThreeA,jdbcType=VARCHAR},
+      </if>
+      <if test="stepThreeB != null">
+        step_three_b = #{stepThreeB,jdbcType=VARCHAR},
+      </if>
+      <if test="stepThreeC != null">
+        step_three_c = #{stepThreeC,jdbcType=VARCHAR},
+      </if>
+      <if test="stepThreeD != null">
+        step_three_d = #{stepThreeD,jdbcType=VARCHAR},
+      </if>
+      <if test="stepFourA != null">
+        step_four_a = #{stepFourA,jdbcType=VARCHAR},
+      </if>
+      <if test="stepFourB != null">
+        step_four_b = #{stepFourB,jdbcType=VARCHAR},
+      </if>
+      <if test="stepFourC != null">
+        step_four_c = #{stepFourC,jdbcType=VARCHAR},
+      </if>
+      <if test="stepFourD != null">
+        step_four_d = #{stepFourD,jdbcType=VARCHAR},
+      </if>
+      <if test="stepFiveA != null">
+        step_five_a = #{stepFiveA,jdbcType=VARCHAR},
+      </if>
+      <if test="stepFiveB != null">
+        step_five_b = #{stepFiveB,jdbcType=VARCHAR},
+      </if>
+      <if test="stepFiveC != null">
+        step_five_c = #{stepFiveC,jdbcType=VARCHAR},
+      </if>
+      <if test="stepFiveD != null">
+        step_five_d = #{stepFiveD,jdbcType=VARCHAR},
+      </if>
+      <if test="stepSixA != null">
+        step_six_a = #{stepSixA,jdbcType=VARCHAR},
+      </if>
+      <if test="stepSixB != null">
+        step_six_b = #{stepSixB,jdbcType=VARCHAR},
+      </if>
+      <if test="stepSixC != null">
+        step_six_c = #{stepSixC,jdbcType=VARCHAR},
+      </if>
+      <if test="stepSixD != null">
+        step_six_d = #{stepSixD,jdbcType=VARCHAR},
+      </if>
+      <if test="stepSevenA != null">
+        step_seven_a = #{stepSevenA,jdbcType=VARCHAR},
+      </if>
+      <if test="stepSevenB != null">
+        step_seven_b = #{stepSevenB,jdbcType=VARCHAR},
+      </if>
+      <if test="stepSevenC != null">
+        step_seven_c = #{stepSevenC,jdbcType=VARCHAR},
+      </if>
+      <if test="stepSevenD != null">
+        step_seven_d = #{stepSevenD,jdbcType=VARCHAR},
+      </if>
+      <if test="stepEightA != null">
+        step_eight_a = #{stepEightA,jdbcType=VARCHAR},
+      </if>
+      <if test="stepEightB != null">
+        step_eight_b = #{stepEightB,jdbcType=VARCHAR},
+      </if>
+      <if test="stepEightC != null">
+        step_eight_c = #{stepEightC,jdbcType=VARCHAR},
+      </if>
+      <if test="stepEightD != null">
+        step_eight_d = #{stepEightD,jdbcType=VARCHAR},
+      </if>
+      <if test="stepNineA != null">
+        step_nine_a = #{stepNineA,jdbcType=VARCHAR},
+      </if>
+      <if test="stepNineB != null">
+        step_nine_b = #{stepNineB,jdbcType=VARCHAR},
+      </if>
+      <if test="stepNineC != null">
+        step_nine_c = #{stepNineC,jdbcType=VARCHAR},
+      </if>
+      <if test="stepNineD != null">
+        step_nine_d = #{stepNineD,jdbcType=VARCHAR},
+      </if>
+      <if test="userId != null">
+        user_id = #{userId,jdbcType=VARCHAR},
+      </if>
+      <if test="subState != null">
+        sub_state = #{subState,jdbcType=INTEGER},
+      </if>
+      <if test="module != null">
+        module = #{module,jdbcType=VARCHAR},
+      </if>
+    </set>
+    where id = #{id,jdbcType=INTEGER}
+  </update>
+  <update id="updateByPrimaryKey" parameterType="com.sztzjy.digital_credit.entity.StuUserPortrait">
+    update stu_user_portrait
+    set step_one_a = #{stepOneA,jdbcType=VARCHAR},
+      step_one_b = #{stepOneB,jdbcType=VARCHAR},
+      step_one_c = #{stepOneC,jdbcType=VARCHAR},
+      step_one_d = #{stepOneD,jdbcType=VARCHAR},
+      step_two_a = #{stepTwoA,jdbcType=VARCHAR},
+      step_two_b = #{stepTwoB,jdbcType=VARCHAR},
+      step_two_c = #{stepTwoC,jdbcType=VARCHAR},
+      step_three_a = #{stepThreeA,jdbcType=VARCHAR},
+      step_three_b = #{stepThreeB,jdbcType=VARCHAR},
+      step_three_c = #{stepThreeC,jdbcType=VARCHAR},
+      step_three_d = #{stepThreeD,jdbcType=VARCHAR},
+      step_four_a = #{stepFourA,jdbcType=VARCHAR},
+      step_four_b = #{stepFourB,jdbcType=VARCHAR},
+      step_four_c = #{stepFourC,jdbcType=VARCHAR},
+      step_four_d = #{stepFourD,jdbcType=VARCHAR},
+      step_five_a = #{stepFiveA,jdbcType=VARCHAR},
+      step_five_b = #{stepFiveB,jdbcType=VARCHAR},
+      step_five_c = #{stepFiveC,jdbcType=VARCHAR},
+      step_five_d = #{stepFiveD,jdbcType=VARCHAR},
+      step_six_a = #{stepSixA,jdbcType=VARCHAR},
+      step_six_b = #{stepSixB,jdbcType=VARCHAR},
+      step_six_c = #{stepSixC,jdbcType=VARCHAR},
+      step_six_d = #{stepSixD,jdbcType=VARCHAR},
+      step_seven_a = #{stepSevenA,jdbcType=VARCHAR},
+      step_seven_b = #{stepSevenB,jdbcType=VARCHAR},
+      step_seven_c = #{stepSevenC,jdbcType=VARCHAR},
+      step_seven_d = #{stepSevenD,jdbcType=VARCHAR},
+      step_eight_a = #{stepEightA,jdbcType=VARCHAR},
+      step_eight_b = #{stepEightB,jdbcType=VARCHAR},
+      step_eight_c = #{stepEightC,jdbcType=VARCHAR},
+      step_eight_d = #{stepEightD,jdbcType=VARCHAR},
+      step_nine_a = #{stepNineA,jdbcType=VARCHAR},
+      step_nine_b = #{stepNineB,jdbcType=VARCHAR},
+      step_nine_c = #{stepNineC,jdbcType=VARCHAR},
+      step_nine_d = #{stepNineD,jdbcType=VARCHAR},
+      user_id = #{userId,jdbcType=VARCHAR},
+      sub_state = #{subState,jdbcType=INTEGER},
+      module = #{module,jdbcType=VARCHAR}
+    where id = #{id,jdbcType=INTEGER}
+  </update>
+</mapper>
\ No newline at end of file

From 1cef10aa0d810760fce5f94c2338be50f8ee091f Mon Sep 17 00:00:00 2001
From: whb <17803890193@163.com>
Date: Wed, 24 Apr 2024 13:42:30 +0800
Subject: [PATCH 3/3] =?UTF-8?q?=E5=AE=8C=E6=88=90=E7=94=A8=E6=88=B7?=
 =?UTF-8?q?=E7=94=BB=E5=83=8F=E8=BF=9D=E7=BA=A6=E6=83=85=E5=86=B5=EF=BC=8C?=
 =?UTF-8?q?=E6=80=A7=E5=88=AB=E4=B8=8E=E8=BF=9D=E7=BA=A6=E5=88=86=E6=9E=90?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 .../controller/StuUserPortraitController.java | 46 ++++++++++++++
 .../entity/StuMachineLearning.java            | 14 ++---
 .../entity/StuMachineLearningExample.java     | 58 ++++++++----------
 .../entity/StuUserPortrait.java               | 18 +++++-
 .../entity/StuUserPortraitExample.java        | 60 ++++++++++++++++++
 .../StuUserPortraitControllerService.java     | 20 ++++++
 .../StuUserPortraitControllerServiceImpl.java | 61 +++++++++++++++++++
 .../mappers/StuMachineLearningMapper.xml      | 28 ++++-----
 .../mappers/StuUserPortraitMapper.xml         | 25 ++++++--
 9 files changed, 269 insertions(+), 61 deletions(-)
 create mode 100644 src/main/java/com/sztzjy/digital_credit/controller/StuUserPortraitController.java
 create mode 100644 src/main/java/com/sztzjy/digital_credit/service/StuUserPortraitControllerService.java
 create mode 100644 src/main/java/com/sztzjy/digital_credit/service/impl/StuUserPortraitControllerServiceImpl.java

diff --git a/src/main/java/com/sztzjy/digital_credit/controller/StuUserPortraitController.java b/src/main/java/com/sztzjy/digital_credit/controller/StuUserPortraitController.java
new file mode 100644
index 0000000..0937414
--- /dev/null
+++ b/src/main/java/com/sztzjy/digital_credit/controller/StuUserPortraitController.java
@@ -0,0 +1,46 @@
+package com.sztzjy.digital_credit.controller;
+
+import com.sztzjy.digital_credit.annotation.AnonymousAccess;
+import com.sztzjy.digital_credit.entity.StuMachineLearning;
+import com.sztzjy.digital_credit.entity.StuUserPortrait;
+import com.sztzjy.digital_credit.service.StuExperimentTrainByCreditService;
+import com.sztzjy.digital_credit.service.StuUserPortraitControllerService;
+import com.sztzjy.digital_credit.util.ResultEntity;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * @author 17803
+ * @date 2024-04-23 9:38
+ */
+
+@RestController
+@RequestMapping("api/stu/userPortrait")
+@Api(tags = "用户画像:用户画像")
+public class StuUserPortraitController {
+
+
+
+    @Autowired
+    private StuUserPortraitControllerService userPortraitControllerService;
+
+
+    @ApiOperation("自动保存接口(根据module分类,传参包括错误次数)")
+    @AnonymousAccess
+    @PostMapping("/userPortraitByModuleSave")
+    public ResultEntity userPortraitByModuleSave(@RequestBody StuUserPortrait userPortrait){
+
+        return  userPortraitControllerService.userPortraitByModuleSave(userPortrait);
+
+    }
+
+
+
+
+
+}
diff --git a/src/main/java/com/sztzjy/digital_credit/entity/StuMachineLearning.java b/src/main/java/com/sztzjy/digital_credit/entity/StuMachineLearning.java
index 3212dff..7ce2473 100644
--- a/src/main/java/com/sztzjy/digital_credit/entity/StuMachineLearning.java
+++ b/src/main/java/com/sztzjy/digital_credit/entity/StuMachineLearning.java
@@ -113,10 +113,10 @@ public class StuMachineLearning {
     @ApiModelProperty("33")
     private String stepNineC;
 
-    @ApiModelProperty("34")
-    private String stepNineD;
+    @ApiModelProperty("错误次数")
+    private Integer errorNumber;
 
-    @ApiModelProperty("用户ID")
+    @ApiModelProperty("用户ID(-1 未提交     1已提交)")
     private String userId;
 
     @ApiModelProperty("提交状态")
@@ -405,12 +405,12 @@ public class StuMachineLearning {
         this.stepNineC = stepNineC == null ? null : stepNineC.trim();
     }
 
-    public String getStepNineD() {
-        return stepNineD;
+    public Integer getErrorNumber() {
+        return errorNumber;
     }
 
-    public void setStepNineD(String stepNineD) {
-        this.stepNineD = stepNineD == null ? null : stepNineD.trim();
+    public void setErrorNumber(Integer errorNumber) {
+        this.errorNumber = errorNumber;
     }
 
     public String getUserId() {
diff --git a/src/main/java/com/sztzjy/digital_credit/entity/StuMachineLearningExample.java b/src/main/java/com/sztzjy/digital_credit/entity/StuMachineLearningExample.java
index e47f8ed..93f5043 100644
--- a/src/main/java/com/sztzjy/digital_credit/entity/StuMachineLearningExample.java
+++ b/src/main/java/com/sztzjy/digital_credit/entity/StuMachineLearningExample.java
@@ -2544,73 +2544,63 @@ public class StuMachineLearningExample {
             return (Criteria) this;
         }
 
-        public Criteria andStepNineDIsNull() {
-            addCriterion("step_nine_d is null");
+        public Criteria andErrorNumberIsNull() {
+            addCriterion("error_number is null");
             return (Criteria) this;
         }
 
-        public Criteria andStepNineDIsNotNull() {
-            addCriterion("step_nine_d is not null");
+        public Criteria andErrorNumberIsNotNull() {
+            addCriterion("error_number is not null");
             return (Criteria) this;
         }
 
-        public Criteria andStepNineDEqualTo(String value) {
-            addCriterion("step_nine_d =", value, "stepNineD");
+        public Criteria andErrorNumberEqualTo(Integer value) {
+            addCriterion("error_number =", value, "errorNumber");
             return (Criteria) this;
         }
 
-        public Criteria andStepNineDNotEqualTo(String value) {
-            addCriterion("step_nine_d <>", value, "stepNineD");
+        public Criteria andErrorNumberNotEqualTo(Integer value) {
+            addCriterion("error_number <>", value, "errorNumber");
             return (Criteria) this;
         }
 
-        public Criteria andStepNineDGreaterThan(String value) {
-            addCriterion("step_nine_d >", value, "stepNineD");
+        public Criteria andErrorNumberGreaterThan(Integer value) {
+            addCriterion("error_number >", value, "errorNumber");
             return (Criteria) this;
         }
 
-        public Criteria andStepNineDGreaterThanOrEqualTo(String value) {
-            addCriterion("step_nine_d >=", value, "stepNineD");
+        public Criteria andErrorNumberGreaterThanOrEqualTo(Integer value) {
+            addCriterion("error_number >=", value, "errorNumber");
             return (Criteria) this;
         }
 
-        public Criteria andStepNineDLessThan(String value) {
-            addCriterion("step_nine_d <", value, "stepNineD");
+        public Criteria andErrorNumberLessThan(Integer value) {
+            addCriterion("error_number <", value, "errorNumber");
             return (Criteria) this;
         }
 
-        public Criteria andStepNineDLessThanOrEqualTo(String value) {
-            addCriterion("step_nine_d <=", value, "stepNineD");
+        public Criteria andErrorNumberLessThanOrEqualTo(Integer value) {
+            addCriterion("error_number <=", value, "errorNumber");
             return (Criteria) this;
         }
 
-        public Criteria andStepNineDLike(String value) {
-            addCriterion("step_nine_d like", value, "stepNineD");
+        public Criteria andErrorNumberIn(List<Integer> values) {
+            addCriterion("error_number in", values, "errorNumber");
             return (Criteria) this;
         }
 
-        public Criteria andStepNineDNotLike(String value) {
-            addCriterion("step_nine_d not like", value, "stepNineD");
+        public Criteria andErrorNumberNotIn(List<Integer> values) {
+            addCriterion("error_number not in", values, "errorNumber");
             return (Criteria) this;
         }
 
-        public Criteria andStepNineDIn(List<String> values) {
-            addCriterion("step_nine_d in", values, "stepNineD");
+        public Criteria andErrorNumberBetween(Integer value1, Integer value2) {
+            addCriterion("error_number between", value1, value2, "errorNumber");
             return (Criteria) this;
         }
 
-        public Criteria andStepNineDNotIn(List<String> values) {
-            addCriterion("step_nine_d not in", values, "stepNineD");
-            return (Criteria) this;
-        }
-
-        public Criteria andStepNineDBetween(String value1, String value2) {
-            addCriterion("step_nine_d between", value1, value2, "stepNineD");
-            return (Criteria) this;
-        }
-
-        public Criteria andStepNineDNotBetween(String value1, String value2) {
-            addCriterion("step_nine_d not between", value1, value2, "stepNineD");
+        public Criteria andErrorNumberNotBetween(Integer value1, Integer value2) {
+            addCriterion("error_number not between", value1, value2, "errorNumber");
             return (Criteria) this;
         }
 
diff --git a/src/main/java/com/sztzjy/digital_credit/entity/StuUserPortrait.java b/src/main/java/com/sztzjy/digital_credit/entity/StuUserPortrait.java
index eb00b13..4767df9 100644
--- a/src/main/java/com/sztzjy/digital_credit/entity/StuUserPortrait.java
+++ b/src/main/java/com/sztzjy/digital_credit/entity/StuUserPortrait.java
@@ -1,6 +1,9 @@
 package com.sztzjy.digital_credit.entity;
 
 import io.swagger.annotations.ApiModelProperty;
+
+import javax.validation.constraints.NotBlank;
+
 /**
  * 综合案例:用户画像
  *
@@ -116,13 +119,18 @@ public class StuUserPortrait {
     @ApiModelProperty("34")
     private String stepNineD;
 
-    @ApiModelProperty("用户ID")
+    @ApiModelProperty("错误次数")
+    private Integer errorNumber;
+
+    @ApiModelProperty("用户ID(-1 未提交     1已提交)")
+    @NotBlank
     private String userId;
 
     @ApiModelProperty("提交状态")
     private Integer subState;
 
     @ApiModelProperty("归属模块(小模块)")
+    @NotBlank
     private String module;
 
     public Integer getId() {
@@ -413,6 +421,14 @@ public class StuUserPortrait {
         this.stepNineD = stepNineD == null ? null : stepNineD.trim();
     }
 
+    public Integer getErrorNumber() {
+        return errorNumber;
+    }
+
+    public void setErrorNumber(Integer errorNumber) {
+        this.errorNumber = errorNumber;
+    }
+
     public String getUserId() {
         return userId;
     }
diff --git a/src/main/java/com/sztzjy/digital_credit/entity/StuUserPortraitExample.java b/src/main/java/com/sztzjy/digital_credit/entity/StuUserPortraitExample.java
index 1767095..f97a580 100644
--- a/src/main/java/com/sztzjy/digital_credit/entity/StuUserPortraitExample.java
+++ b/src/main/java/com/sztzjy/digital_credit/entity/StuUserPortraitExample.java
@@ -2614,6 +2614,66 @@ public class StuUserPortraitExample {
             return (Criteria) this;
         }
 
+        public Criteria andErrorNumberIsNull() {
+            addCriterion("error_number is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andErrorNumberIsNotNull() {
+            addCriterion("error_number is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andErrorNumberEqualTo(Integer value) {
+            addCriterion("error_number =", value, "errorNumber");
+            return (Criteria) this;
+        }
+
+        public Criteria andErrorNumberNotEqualTo(Integer value) {
+            addCriterion("error_number <>", value, "errorNumber");
+            return (Criteria) this;
+        }
+
+        public Criteria andErrorNumberGreaterThan(Integer value) {
+            addCriterion("error_number >", value, "errorNumber");
+            return (Criteria) this;
+        }
+
+        public Criteria andErrorNumberGreaterThanOrEqualTo(Integer value) {
+            addCriterion("error_number >=", value, "errorNumber");
+            return (Criteria) this;
+        }
+
+        public Criteria andErrorNumberLessThan(Integer value) {
+            addCriterion("error_number <", value, "errorNumber");
+            return (Criteria) this;
+        }
+
+        public Criteria andErrorNumberLessThanOrEqualTo(Integer value) {
+            addCriterion("error_number <=", value, "errorNumber");
+            return (Criteria) this;
+        }
+
+        public Criteria andErrorNumberIn(List<Integer> values) {
+            addCriterion("error_number in", values, "errorNumber");
+            return (Criteria) this;
+        }
+
+        public Criteria andErrorNumberNotIn(List<Integer> values) {
+            addCriterion("error_number not in", values, "errorNumber");
+            return (Criteria) this;
+        }
+
+        public Criteria andErrorNumberBetween(Integer value1, Integer value2) {
+            addCriterion("error_number between", value1, value2, "errorNumber");
+            return (Criteria) this;
+        }
+
+        public Criteria andErrorNumberNotBetween(Integer value1, Integer value2) {
+            addCriterion("error_number not between", value1, value2, "errorNumber");
+            return (Criteria) this;
+        }
+
         public Criteria andUserIdIsNull() {
             addCriterion("user_id is null");
             return (Criteria) this;
diff --git a/src/main/java/com/sztzjy/digital_credit/service/StuUserPortraitControllerService.java b/src/main/java/com/sztzjy/digital_credit/service/StuUserPortraitControllerService.java
new file mode 100644
index 0000000..d75ba31
--- /dev/null
+++ b/src/main/java/com/sztzjy/digital_credit/service/StuUserPortraitControllerService.java
@@ -0,0 +1,20 @@
+package com.sztzjy.digital_credit.service;
+
+import com.sztzjy.digital_credit.entity.StuUserPortrait;
+import com.sztzjy.digital_credit.util.ResultEntity;
+
+/**
+ * @author 17803
+ * @date 2024-04-23 14:11
+ */
+public interface StuUserPortraitControllerService {
+    /**
+        * 自动保存接口(根据module分类)
+        * @param userPortrait
+        * @return
+    */
+
+    ResultEntity userPortraitByModuleSave(StuUserPortrait userPortrait);
+
+
+}
diff --git a/src/main/java/com/sztzjy/digital_credit/service/impl/StuUserPortraitControllerServiceImpl.java b/src/main/java/com/sztzjy/digital_credit/service/impl/StuUserPortraitControllerServiceImpl.java
new file mode 100644
index 0000000..c974f47
--- /dev/null
+++ b/src/main/java/com/sztzjy/digital_credit/service/impl/StuUserPortraitControllerServiceImpl.java
@@ -0,0 +1,61 @@
+package com.sztzjy.digital_credit.service.impl;/**
+ * @author 17803
+ * @date 2024-04-23 14:11
+ */
+
+import cn.hutool.core.util.IdUtil;
+import com.sztzjy.digital_credit.entity.StuUserPortrait;
+import com.sztzjy.digital_credit.entity.StuUserPortraitExample;
+import com.sztzjy.digital_credit.mapper.StuUserPortraitMapper;
+import com.sztzjy.digital_credit.service.StuUserPortraitControllerService;
+import com.sztzjy.digital_credit.util.ResultEntity;
+import org.springframework.beans.BeanUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.http.HttpStatus;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+@Service
+public class StuUserPortraitControllerServiceImpl implements StuUserPortraitControllerService {
+
+
+    @Autowired
+    private StuUserPortraitMapper userPortraitMapper;
+
+    /**
+        * 自动保存接口(根据module分类)
+        * @param userPortrait
+        * @return
+    */
+
+    @Override
+    public ResultEntity userPortraitByModuleSave(StuUserPortrait userPortrait) {
+
+        StuUserPortraitExample portraitExample = new StuUserPortraitExample();
+        portraitExample.createCriteria().andUserIdEqualTo(userPortrait.getUserId()).andModuleEqualTo(userPortrait.getModule());
+        List<StuUserPortrait> userPortraitList = userPortraitMapper.selectByExample(portraitExample);
+        if (!userPortraitList.isEmpty()) {
+
+            if (userPortraitList.get(0).getSubState() == 1)
+            {
+                return new ResultEntity<>(HttpStatus.OK,"保存成功!");
+            }
+            //更新
+            StuUserPortrait portrait = userPortraitList.get(0);
+            Integer id = portrait.getId();
+            BeanUtils.copyProperties(userPortrait,portrait);
+            portrait.setId(id);
+            userPortraitMapper.updateByPrimaryKeySelective(portrait);
+            return new ResultEntity<>(HttpStatus.OK,"保存成功!");
+
+        }else {
+            //插入
+            userPortrait.setId((int) IdUtil.getSnowflakeNextId());
+            userPortraitMapper.insertSelective(userPortrait);
+            return new ResultEntity<>(HttpStatus.OK,"保存成功!");
+        }
+    }
+
+
+}
diff --git a/src/main/resources/mappers/StuMachineLearningMapper.xml b/src/main/resources/mappers/StuMachineLearningMapper.xml
index 38e466c..c8a4149 100644
--- a/src/main/resources/mappers/StuMachineLearningMapper.xml
+++ b/src/main/resources/mappers/StuMachineLearningMapper.xml
@@ -37,7 +37,7 @@
     <result column="step_nine_a" jdbcType="VARCHAR" property="stepNineA" />
     <result column="step_nine_b" jdbcType="VARCHAR" property="stepNineB" />
     <result column="step_nine_c" jdbcType="VARCHAR" property="stepNineC" />
-    <result column="step_nine_d" jdbcType="VARCHAR" property="stepNineD" />
+    <result column="error_number" jdbcType="INTEGER" property="errorNumber" />
     <result column="user_id" jdbcType="VARCHAR" property="userId" />
     <result column="sub_state" jdbcType="INTEGER" property="subState" />
     <result column="module" jdbcType="VARCHAR" property="module" />
@@ -106,7 +106,7 @@
     step_four_c, step_four_d, step_five_a, step_five_b, step_five_c, step_five_d, step_six_a, 
     step_six_b, step_six_c, step_six_d, step_seven_a, step_seven_b, step_seven_c, step_seven_d, 
     step_eight_a, step_eight_b, step_eight_c, step_eight_d, step_nine_a, step_nine_b, 
-    step_nine_c, step_nine_d, user_id, sub_state, module
+    step_nine_c, error_number, user_id, sub_state, module
   </sql>
   <select id="selectByExample" parameterType="com.sztzjy.digital_credit.entity.StuMachineLearningExample" resultMap="BaseResultMap">
     select
@@ -150,7 +150,7 @@
       step_seven_a, step_seven_b, step_seven_c, 
       step_seven_d, step_eight_a, step_eight_b, 
       step_eight_c, step_eight_d, step_nine_a, 
-      step_nine_b, step_nine_c, step_nine_d, 
+      step_nine_b, step_nine_c, error_number, 
       user_id, sub_state, module
       )
     values (#{id,jdbcType=INTEGER}, #{stepOneA,jdbcType=VARCHAR}, #{stepOneB,jdbcType=VARCHAR}, 
@@ -164,7 +164,7 @@
       #{stepSevenA,jdbcType=VARCHAR}, #{stepSevenB,jdbcType=VARCHAR}, #{stepSevenC,jdbcType=VARCHAR}, 
       #{stepSevenD,jdbcType=VARCHAR}, #{stepEightA,jdbcType=VARCHAR}, #{stepEightB,jdbcType=VARCHAR}, 
       #{stepEightC,jdbcType=VARCHAR}, #{stepEightD,jdbcType=VARCHAR}, #{stepNineA,jdbcType=VARCHAR}, 
-      #{stepNineB,jdbcType=VARCHAR}, #{stepNineC,jdbcType=VARCHAR}, #{stepNineD,jdbcType=VARCHAR}, 
+      #{stepNineB,jdbcType=VARCHAR}, #{stepNineC,jdbcType=VARCHAR}, #{errorNumber,jdbcType=INTEGER}, 
       #{userId,jdbcType=VARCHAR}, #{subState,jdbcType=INTEGER}, #{module,jdbcType=VARCHAR}
       )
   </insert>
@@ -276,8 +276,8 @@
       <if test="stepNineC != null">
         step_nine_c,
       </if>
-      <if test="stepNineD != null">
-        step_nine_d,
+      <if test="errorNumber != null">
+        error_number,
       </if>
       <if test="userId != null">
         user_id,
@@ -395,8 +395,8 @@
       <if test="stepNineC != null">
         #{stepNineC,jdbcType=VARCHAR},
       </if>
-      <if test="stepNineD != null">
-        #{stepNineD,jdbcType=VARCHAR},
+      <if test="errorNumber != null">
+        #{errorNumber,jdbcType=INTEGER},
       </if>
       <if test="userId != null">
         #{userId,jdbcType=VARCHAR},
@@ -523,8 +523,8 @@
       <if test="record.stepNineC != null">
         step_nine_c = #{record.stepNineC,jdbcType=VARCHAR},
       </if>
-      <if test="record.stepNineD != null">
-        step_nine_d = #{record.stepNineD,jdbcType=VARCHAR},
+      <if test="record.errorNumber != null">
+        error_number = #{record.errorNumber,jdbcType=INTEGER},
       </if>
       <if test="record.userId != null">
         user_id = #{record.userId,jdbcType=VARCHAR},
@@ -577,7 +577,7 @@
       step_nine_a = #{record.stepNineA,jdbcType=VARCHAR},
       step_nine_b = #{record.stepNineB,jdbcType=VARCHAR},
       step_nine_c = #{record.stepNineC,jdbcType=VARCHAR},
-      step_nine_d = #{record.stepNineD,jdbcType=VARCHAR},
+      error_number = #{record.errorNumber,jdbcType=INTEGER},
       user_id = #{record.userId,jdbcType=VARCHAR},
       sub_state = #{record.subState,jdbcType=INTEGER},
       module = #{record.module,jdbcType=VARCHAR}
@@ -690,8 +690,8 @@
       <if test="stepNineC != null">
         step_nine_c = #{stepNineC,jdbcType=VARCHAR},
       </if>
-      <if test="stepNineD != null">
-        step_nine_d = #{stepNineD,jdbcType=VARCHAR},
+      <if test="errorNumber != null">
+        error_number = #{errorNumber,jdbcType=INTEGER},
       </if>
       <if test="userId != null">
         user_id = #{userId,jdbcType=VARCHAR},
@@ -741,7 +741,7 @@
       step_nine_a = #{stepNineA,jdbcType=VARCHAR},
       step_nine_b = #{stepNineB,jdbcType=VARCHAR},
       step_nine_c = #{stepNineC,jdbcType=VARCHAR},
-      step_nine_d = #{stepNineD,jdbcType=VARCHAR},
+      error_number = #{errorNumber,jdbcType=INTEGER},
       user_id = #{userId,jdbcType=VARCHAR},
       sub_state = #{subState,jdbcType=INTEGER},
       module = #{module,jdbcType=VARCHAR}
diff --git a/src/main/resources/mappers/StuUserPortraitMapper.xml b/src/main/resources/mappers/StuUserPortraitMapper.xml
index 4ace260..650bf15 100644
--- a/src/main/resources/mappers/StuUserPortraitMapper.xml
+++ b/src/main/resources/mappers/StuUserPortraitMapper.xml
@@ -38,6 +38,7 @@
     <result column="step_nine_b" jdbcType="VARCHAR" property="stepNineB" />
     <result column="step_nine_c" jdbcType="VARCHAR" property="stepNineC" />
     <result column="step_nine_d" jdbcType="VARCHAR" property="stepNineD" />
+    <result column="error_number" jdbcType="INTEGER" property="errorNumber" />
     <result column="user_id" jdbcType="VARCHAR" property="userId" />
     <result column="sub_state" jdbcType="INTEGER" property="subState" />
     <result column="module" jdbcType="VARCHAR" property="module" />
@@ -106,7 +107,7 @@
     step_four_c, step_four_d, step_five_a, step_five_b, step_five_c, step_five_d, step_six_a, 
     step_six_b, step_six_c, step_six_d, step_seven_a, step_seven_b, step_seven_c, step_seven_d, 
     step_eight_a, step_eight_b, step_eight_c, step_eight_d, step_nine_a, step_nine_b, 
-    step_nine_c, step_nine_d, user_id, sub_state, module
+    step_nine_c, step_nine_d, error_number, user_id, sub_state, module
   </sql>
   <select id="selectByExample" parameterType="com.sztzjy.digital_credit.entity.StuUserPortraitExample" resultMap="BaseResultMap">
     select
@@ -151,8 +152,8 @@
       step_seven_d, step_eight_a, step_eight_b, 
       step_eight_c, step_eight_d, step_nine_a, 
       step_nine_b, step_nine_c, step_nine_d, 
-      user_id, sub_state, module
-      )
+      error_number, user_id, sub_state, 
+      module)
     values (#{id,jdbcType=INTEGER}, #{stepOneA,jdbcType=VARCHAR}, #{stepOneB,jdbcType=VARCHAR}, 
       #{stepOneC,jdbcType=VARCHAR}, #{stepOneD,jdbcType=VARCHAR}, #{stepTwoA,jdbcType=VARCHAR}, 
       #{stepTwoB,jdbcType=VARCHAR}, #{stepTwoC,jdbcType=VARCHAR}, #{stepThreeA,jdbcType=VARCHAR}, 
@@ -165,8 +166,8 @@
       #{stepSevenD,jdbcType=VARCHAR}, #{stepEightA,jdbcType=VARCHAR}, #{stepEightB,jdbcType=VARCHAR}, 
       #{stepEightC,jdbcType=VARCHAR}, #{stepEightD,jdbcType=VARCHAR}, #{stepNineA,jdbcType=VARCHAR}, 
       #{stepNineB,jdbcType=VARCHAR}, #{stepNineC,jdbcType=VARCHAR}, #{stepNineD,jdbcType=VARCHAR}, 
-      #{userId,jdbcType=VARCHAR}, #{subState,jdbcType=INTEGER}, #{module,jdbcType=VARCHAR}
-      )
+      #{errorNumber,jdbcType=INTEGER}, #{userId,jdbcType=VARCHAR}, #{subState,jdbcType=INTEGER}, 
+      #{module,jdbcType=VARCHAR})
   </insert>
   <insert id="insertSelective" parameterType="com.sztzjy.digital_credit.entity.StuUserPortrait">
     insert into stu_user_portrait
@@ -279,6 +280,9 @@
       <if test="stepNineD != null">
         step_nine_d,
       </if>
+      <if test="errorNumber != null">
+        error_number,
+      </if>
       <if test="userId != null">
         user_id,
       </if>
@@ -398,6 +402,9 @@
       <if test="stepNineD != null">
         #{stepNineD,jdbcType=VARCHAR},
       </if>
+      <if test="errorNumber != null">
+        #{errorNumber,jdbcType=INTEGER},
+      </if>
       <if test="userId != null">
         #{userId,jdbcType=VARCHAR},
       </if>
@@ -526,6 +533,9 @@
       <if test="record.stepNineD != null">
         step_nine_d = #{record.stepNineD,jdbcType=VARCHAR},
       </if>
+      <if test="record.errorNumber != null">
+        error_number = #{record.errorNumber,jdbcType=INTEGER},
+      </if>
       <if test="record.userId != null">
         user_id = #{record.userId,jdbcType=VARCHAR},
       </if>
@@ -578,6 +588,7 @@
       step_nine_b = #{record.stepNineB,jdbcType=VARCHAR},
       step_nine_c = #{record.stepNineC,jdbcType=VARCHAR},
       step_nine_d = #{record.stepNineD,jdbcType=VARCHAR},
+      error_number = #{record.errorNumber,jdbcType=INTEGER},
       user_id = #{record.userId,jdbcType=VARCHAR},
       sub_state = #{record.subState,jdbcType=INTEGER},
       module = #{record.module,jdbcType=VARCHAR}
@@ -693,6 +704,9 @@
       <if test="stepNineD != null">
         step_nine_d = #{stepNineD,jdbcType=VARCHAR},
       </if>
+      <if test="errorNumber != null">
+        error_number = #{errorNumber,jdbcType=INTEGER},
+      </if>
       <if test="userId != null">
         user_id = #{userId,jdbcType=VARCHAR},
       </if>
@@ -742,6 +756,7 @@
       step_nine_b = #{stepNineB,jdbcType=VARCHAR},
       step_nine_c = #{stepNineC,jdbcType=VARCHAR},
       step_nine_d = #{stepNineD,jdbcType=VARCHAR},
+      error_number = #{errorNumber,jdbcType=INTEGER},
       user_id = #{userId,jdbcType=VARCHAR},
       sub_state = #{subState,jdbcType=INTEGER},
       module = #{module,jdbcType=VARCHAR}