diff --git a/src/main/java/io/v/nutz/sickHelp/constant/SickHelpCalc.java b/src/main/java/io/v/nutz/sickHelp/constant/SickHelpCalc.java index 40d0c4b..8cebf40 100644 --- a/src/main/java/io/v/nutz/sickHelp/constant/SickHelpCalc.java +++ b/src/main/java/io/v/nutz/sickHelp/constant/SickHelpCalc.java @@ -138,6 +138,7 @@ public enum SickHelpCalc { if (howManyDidNotApplyYears >= 5) { otherSubsidyRatio = Math.min(howManyDidNotApplyYears, 10) * 0.01; sr.setSubsidyDesc("满" + howManyDidNotApplyYears + "年且未补助"); + sr.setNoSubsidyYear(howManyDidNotApplyYears); } // if (howManyDidNotApplyYears >= 15) { diff --git a/src/main/java/io/v/nutz/sickHelp/controller/SickHelpImportController.java b/src/main/java/io/v/nutz/sickHelp/controller/SickHelpImportController.java index 711fdc1..edee048 100644 --- a/src/main/java/io/v/nutz/sickHelp/controller/SickHelpImportController.java +++ b/src/main/java/io/v/nutz/sickHelp/controller/SickHelpImportController.java @@ -41,8 +41,10 @@ public class SickHelpImportController { excelTemplateEntityList.add(new ExcelExportEntity("工号", "loginName", 20)); excelTemplateEntityList.add(new ExcelExportEntity("姓名", "userName", 20)); // excelTemplateEntityList.add(new ExcelExportEntity("单位", "unitName", 20)); - excelTemplateEntityList.add(new ExcelExportEntity("两项自付之和金额(元)", "selfPayTotalMoney", 25)); - excelTemplateEntityList.add(new ExcelExportEntity("个人支付金额(元)", "selfPayMoney", 20)); + excelTemplateEntityList.add(new ExcelExportEntity("医保四项之和金额(元)", "medicalFourTotalMoney", 30)); + excelTemplateEntityList.add(new ExcelExportEntity("两项自付之和金额(元)", "selfPayTotalMoney", 30)); + excelTemplateEntityList.add(new ExcelExportEntity("学校二次报销金额(元)", "schoolSecondSubsidyMoney", 30)); + excelTemplateEntityList.add(new ExcelExportEntity("个人支付金额(元)", "selfPayMoney", 30)); // excelTemplateEntityList.add(new ExcelExportEntity("账号", "hospitalAccount", 20)); // excelTemplateEntityList.add(new ExcelExportEntity("补助金额(元)", "", 20)); // excelTemplateEntityList.add(new ExcelExportEntity("最近年度", "", 20)); diff --git a/src/main/java/io/v/nutz/sickHelp/controller/SickHelpListController.java b/src/main/java/io/v/nutz/sickHelp/controller/SickHelpListController.java index e724308..74d00df 100644 --- a/src/main/java/io/v/nutz/sickHelp/controller/SickHelpListController.java +++ b/src/main/java/io/v/nutz/sickHelp/controller/SickHelpListController.java @@ -4,6 +4,7 @@ import cn.afterturn.easypoi.excel.ExcelExportUtil; import cn.afterturn.easypoi.excel.entity.ExportParams; import cn.afterturn.easypoi.excel.entity.enmus.ExcelType; import cn.afterturn.easypoi.excel.entity.params.ExcelExportEntity; +import cn.hutool.core.util.StrUtil; import cn.wizzer.framework.base.Result; import io.v.nutz.annontation.ViReturn; import io.v.nutz.modules.models.PageForm; @@ -181,13 +182,19 @@ public class SickHelpListController { sick.loginName, sick.userName, sick.unitName, + sick.medicalFourTotalMoney, sick.selfPayMoney, + sick.selfPayTotalMoney, + sick.schoolSecondSubsidyMoney, + sick.noSubsidyYear, sick.subsidyMoney, sick.remarks, - sfm.userState\s + sfm.userState, + u.userState userState2 FROM sick_help sick LEFT JOIN sick_fund_member sfm ON sfm.loginName = sick.loginName + LEFT JOIN user u on u.loginName = sick.loginName $condition """); Cnd cnd = Cnd.NEW(); @@ -196,6 +203,14 @@ public class SickHelpListController { sql.setCondition(cnd); List list = sickHelpListService.listMap(sql); + for (NutMap row : list) { + String userState = row.getString("userState",""); + String userState2 = row.getString("userState2",""); + if(!userState.equals(userState2)){ + row.put("userState",userState2); + } + } + ExportParams exportParams = new ExportParams(); exportParams.setType(ExcelType.XSSF); exportParams.setTitle(year + "教职工大病医疗互助金补助汇总表"); @@ -205,8 +220,12 @@ public class SickHelpListController { excelExportEntities.add(new ExcelExportEntity("姓名", "userName", 20)); excelExportEntities.add(new ExcelExportEntity("单位", "unitName", 20)); excelExportEntities.add(new ExcelExportEntity("状态", "userState", 20)); - excelExportEntities.add(new ExcelExportEntity("自费金额", "selfPayMoney", 20)); - excelExportEntities.add(new ExcelExportEntity("补助金额", "subsidyMoney", 20)); + excelExportEntities.add(new ExcelExportEntity("医保四项之和金额(元)", "medicalFourTotalMoney", 30)); + excelExportEntities.add(new ExcelExportEntity("两项自付之和金额(元)", "selfPayTotalMoney", 30)); + excelExportEntities.add(new ExcelExportEntity("学校二次报销金额(元)", "schoolSecondSubsidyMoney", 30)); + excelExportEntities.add(new ExcelExportEntity("个人支付金额(元)", "selfPayMoney", 20)); + excelExportEntities.add(new ExcelExportEntity("补助金额(元)", "subsidyMoney", 20)); + excelExportEntities.add(new ExcelExportEntity("未补助年份", "noSubsidyYear", 20)); excelExportEntities.add(new ExcelExportEntity("备注", "remarks", 20)); Workbook workbook = ExcelExportUtil.exportExcel(exportParams, excelExportEntities, list); diff --git a/src/main/java/io/v/nutz/sickHelp/model/SickHelp.java b/src/main/java/io/v/nutz/sickHelp/model/SickHelp.java index 1db3636..53a3674 100644 --- a/src/main/java/io/v/nutz/sickHelp/model/SickHelp.java +++ b/src/main/java/io/v/nutz/sickHelp/model/SickHelp.java @@ -66,6 +66,13 @@ public class SickHelp { @Excel(name = "申报年度", width = 20) private Integer year; + @Column + @Comment("医保四项之和金额(元)") + @ColDefine(type = ColType.FLOAT, width = 10, precision = 2) + @Excel(name = "医保四项之和金额(元)", numFormat = "#.##", width = 20) + @JsonField(forceString = true) + private BigDecimal medicalFourTotalMoney; + @Column @Comment("个人支付金额(元)") @ColDefine(type = ColType.FLOAT, width = 10, precision = 2) @@ -73,6 +80,13 @@ public class SickHelp { @JsonField(forceString = true) private BigDecimal selfPayMoney; + @Column + @Comment("学校二次报销金额(元)") + @ColDefine(type = ColType.FLOAT, width = 10, precision = 2) + @Excel(name = "学校二次报销金额(元)", numFormat = "#.##", width = 20) + @JsonField(forceString = true) + private BigDecimal schoolSecondSubsidyMoney; + @Column @Comment("两项自付之和金额(元)") @ColDefine(type = ColType.FLOAT, width = 10, precision = 2) @@ -124,6 +138,11 @@ public class SickHelp { @Excel(name = "入会年限∕是否享受过补助", width = 40) private String subsidyDesc; + @Column + @Comment("未补助年份") + @ColDefine(type = ColType.VARCHAR, width = 20) + private Integer noSubsidyYear; + @Column @Comment("备注") @ColDefine(type = ColType.VARCHAR, width = 50) diff --git a/src/main/java/io/v/nutz/sickHelp/service/impl/SickHelpImportServiceImpl.java b/src/main/java/io/v/nutz/sickHelp/service/impl/SickHelpImportServiceImpl.java index b536516..b90a844 100644 --- a/src/main/java/io/v/nutz/sickHelp/service/impl/SickHelpImportServiceImpl.java +++ b/src/main/java/io/v/nutz/sickHelp/service/impl/SickHelpImportServiceImpl.java @@ -61,6 +61,18 @@ public class SickHelpImportServiceImpl extends ViServiceImpl implement sick.getValidMsg().add("姓名为空"); sick.setValidMsg(sick.getValidMsg()); } + if(Lang.isEmpty(sick.getMedicalFourTotalMoney())){ + sick.getValidMsg().add("医保四项之和金额为空"); + sick.setValidMsg(sick.getValidMsg()); + } + if(Lang.isEmpty(sick.getSelfPayTotalMoney())){ + sick.getValidMsg().add("两项自付之和金额为空"); + sick.setValidMsg(sick.getValidMsg()); + } + if(Lang.isEmpty(sick.getSchoolSecondSubsidyMoney())){ + sick.getValidMsg().add("学校二次报销金额为空"); + sick.setValidMsg(sick.getValidMsg()); + } if (Lang.isEmpty(sick.getSelfPayMoney())) { sick.getValidMsg().add("个人支付金额为空"); sick.setValidMsg(sick.getValidMsg()); diff --git a/src/main/java/io/v/nutz/trainSignUp/controller/manage/TrainSignUpActivityAddController.java b/src/main/java/io/v/nutz/trainSignUp/controller/manage/TrainSignUpActivityAddController.java index df90d78..fb466d6 100644 --- a/src/main/java/io/v/nutz/trainSignUp/controller/manage/TrainSignUpActivityAddController.java +++ b/src/main/java/io/v/nutz/trainSignUp/controller/manage/TrainSignUpActivityAddController.java @@ -20,13 +20,15 @@ import org.nutz.mvc.annotation.Ok; import org.nutz.mvc.annotation.POST; import org.nutz.mvc.annotation.Param; +import java.util.List; + /** * @author zxy * @Description 新建活动 * @createTime 2022年03月07日 10:16:00 */ @IocBean -@At("/platform/trainSingUp/manage/activity") +@At("/platform/trainSingUp/manage/activity/add") @Slf4j public class TrainSignUpActivityAddController { @@ -36,7 +38,7 @@ public class TrainSignUpActivityAddController { @Inject private Dao dao; - @At("/add") + @At("") @RequiresPermissions("trainSingUp.manage.activity.add") @Ok("beetl:/platform/trainSingUp/manage/activity_add.html") public void add() { @@ -86,4 +88,14 @@ public class TrainSignUpActivityAddController { //已报人数 return dao.count(TrainSignUpUser.class, Cnd.where("courseId", "=", courseId)); } + + @At + @ViReturn + @Ok("json:full") + @RequiresPermissions("trainSingUp.manage.activity.add") + public Object getHistoricalActList() { + List query = dao.query(TrainSignUpActivity.class, Cnd.NEW().desc("activityStartTime")); + return query; + } + } diff --git a/src/main/java/io/v/nutz/trainSignUp/models/TrainSignUpActivity.java b/src/main/java/io/v/nutz/trainSignUp/models/TrainSignUpActivity.java index c7c07ff..5684f8a 100644 --- a/src/main/java/io/v/nutz/trainSignUp/models/TrainSignUpActivity.java +++ b/src/main/java/io/v/nutz/trainSignUp/models/TrainSignUpActivity.java @@ -122,4 +122,9 @@ public class TrainSignUpActivity extends BaseModel implements Serializable { @Comment("活动类型") @ColDefine(type = ColType.VARCHAR, width = 20) private String trainType; + + @Column + @Comment("地点显示名称") + @ColDefine(type = ColType.VARCHAR, width = 50) + private String addressName; } diff --git a/src/main/resources/views/mobile/train/trainInfo.html b/src/main/resources/views/mobile/train/trainInfo.html index 6b8e7a9..041ce03 100644 --- a/src/main/resources/views/mobile/train/trainInfo.html +++ b/src/main/resources/views/mobile/train/trainInfo.html @@ -193,7 +193,8 @@ layout("/mobile/platform.html"){ {{o.campus}}
- 地  点: + {{activity.addressName}}: + 地  点: {{o.courseLocation}}
diff --git a/src/main/resources/views/platform/sickHelp/import/excel.html b/src/main/resources/views/platform/sickHelp/import/excel.html index 438f198..bfa25c3 100644 --- a/src/main/resources/views/platform/sickHelp/import/excel.html +++ b/src/main/resources/views/platform/sickHelp/import/excel.html @@ -97,16 +97,12 @@ layout("/layouts/platform.html"){ - - - - - - + - + + + - diff --git a/src/main/resources/views/platform/sickHelp/list/index.html b/src/main/resources/views/platform/sickHelp/list/index.html index 3705519..075bb10 100644 --- a/src/main/resources/views/platform/sickHelp/list/index.html +++ b/src/main/resources/views/platform/sickHelp/list/index.html @@ -107,7 +107,7 @@ layout("/layouts/platform.html"){ - + @@ -119,6 +119,7 @@ layout("/layouts/platform.html"){ :width="column.width" align="center" header-align="center" + :fixed="column.fixed" show-overflow-tooltip v-for="column in tableColumns" > @@ -230,15 +231,19 @@ layout("/layouts/platform.html"){ data() { return { tableColumns: [ - {prop: 'year', label: '年度', sortable: true}, - {prop: 'userName', label: '姓名'}, - {prop: 'loginName', label: '工号'}, + {prop: 'year', label: '年度', sortable: true, fixed: 'left'}, + {prop: 'userName', label: '姓名', fixed: 'left'}, + {prop: 'loginName', label: '工号', fixed: 'left',width: 120}, {prop: 'unionName', label: '分工会', sortable: true, width: 150}, {prop: 'unitName', label: '单位', sortable: true, width: 150}, - {prop: 'selfPayMoney', label: '个人支付金额(元)', sortable: true, width: 150}, + {prop: 'medicalFourTotalMoney', label: '医保四项之和金额(元)', sortable: true, width: 200}, + {prop: 'selfPayTotalMoney', label: '两项自付之和金额(元)', sortable: true, width: 200}, + {prop: 'schoolSecondSubsidyMoney', label: '学校二次报销金额(元)', sortable: true, width: 200}, + {prop: 'selfPayMoney', label: '个人支付金额(元)', sortable: true, width: 170}, {prop: 'noLimitSubsidyMoney', label: '计算金额(元)', sortable: true, width: 150}, {prop: 'subsidyMoney', label: '补助金额(元)', sortable: true, width: 150}, + {prop: 'noSubsidyYear', label: '未补助年份', sortable: true, width: 120}, {prop: 'isMember', label: '是否会员', sortable: true, width: 100}, // {prop: 'selfPaySubsidyRatio', label: '个人支付金额补助比例', sortable: true, width: 160}, @@ -250,7 +255,8 @@ layout("/layouts/platform.html"){ ], pageForm: { year: (new Date().getFullYear() - 1).toString(), - isMember: null + isMember: null, + unitName:'' }, unions: [], units: [], diff --git a/src/main/resources/views/platform/trainSingUp/manage/activity_add.html b/src/main/resources/views/platform/trainSingUp/manage/activity_add.html index 51fe012..027c1d0 100644 --- a/src/main/resources/views/platform/trainSingUp/manage/activity_add.html +++ b/src/main/resources/views/platform/trainSingUp/manage/activity_add.html @@ -46,6 +46,9 @@ layout("/layouts/platform.html"){ data() { const that = this return { + use: false, + historicalActList: [], + historicalAct: "", trainType: '培训班', trainTypeList: [], fromEdit: '', @@ -62,6 +65,7 @@ layout("/layouts/platform.html"){ restrictLimit: 1, limitNum: 1, typeLimits: [], + addressDisplayName: '培训班地点', }, pickerOptions: { disabledDate(time) { @@ -117,6 +121,13 @@ layout("/layouts/platform.html"){ }, }, methods: { + getAddressName() { + if(!this.formData.addressName) { + this.formData.addressDisplayName = this.trainType + '地点' + } else { + this.formData.addressDisplayName = this.formData.addressName + } + }, openUserScope() { this.userScopeDialog = true }, @@ -648,6 +659,34 @@ layout("/layouts/platform.html"){ typeChange(val) { const type = this.trainTypeList.find(o => o.code === val) this.trainType = type ? type.name : '' + this.getAddressName() + }, + async getHistoricalActList() { + const resp = await $.post("/platform/trainSingUp/manage/activity/add/getHistoricalActList", {}) + return resp.data + }, + async historicalActChange(val) { + const resp = await $.get("/platform/trainSingUp/manage/activity/findOne", { id: val }) + if (resp.code === 0) { + /*resp.data.cover = [resp.data.cover] + if (resp.data.wechat) { + resp.data.wechat = [resp.data.wechat] + }*/ + this.formData = resp.data + const type = this.trainTypeList.find(o => o.code === this.formData.trainType) + this.trainType = type ? type.name : "培训班" + this.$nextTick(() => { + $("#introduce").html("") + var editor = new E("#introduce") + editor.config.onchange = (html) => { + this.formData.introduce = html.replace(/<\/p>/g, "") + } + editor.create() + editor.txt.html(resp.data.introduce) + }) + this.getAddressName() + this.formData.id = "" + } } }, async created() { @@ -656,7 +695,9 @@ layout("/layouts/platform.html"){ await this.initData() this.activityGroupList = await getActivityGroup() this.campusList = await getCampus() + this.historicalActList = await this.getHistoricalActList() this.courseTypeList = await this.getAllType() + this.getAddressName() }, watch: { 'formData.restrictLimit'(val) { diff --git a/src/main/resources/views/platform/trainSingUp/manage/include_activity_edit.html b/src/main/resources/views/platform/trainSingUp/manage/include_activity_edit.html index 210e75d..86ae231 100644 --- a/src/main/resources/views/platform/trainSingUp/manage/include_activity_edit.html +++ b/src/main/resources/views/platform/trainSingUp/manage/include_activity_edit.html @@ -1,10 +1,42 @@ - + - + + + + 沿用之前活动 + 不沿用之前活动 + + + + + + + + + + + + + + - + + + + + + + + @@ -181,7 +213,7 @@ - +