diff --git a/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/controller/admin/DlDriveSchoolCoachController.java b/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/controller/admin/DlDriveSchoolCoachController.java index 8fec8ff9..ba9fcef4 100644 --- a/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/controller/admin/DlDriveSchoolCoachController.java +++ b/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/controller/admin/DlDriveSchoolCoachController.java @@ -270,4 +270,15 @@ public class DlDriveSchoolCoachController { ExcelUtils.write(response, "员工数据.xls", "数据", SchoolStaffImportExcelVO.class, list); } + + /** + * 业务经理招生信息 + */ + @GetMapping("/getBusinessManager") + public CommonResult> getBusinessManager(BusinessRecordVO businessRecordVO, + @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo, + @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize) { + Page page = new Page<>(pageNo, pageSize); + return success(dlDriveSchoolCoachService.getBusinessManager(businessRecordVO, page)); + } } diff --git a/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/controller/admin/DlDriveSchoolStudentController.java b/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/controller/admin/DlDriveSchoolStudentController.java index 1dd1e8f4..de9028d1 100644 --- a/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/controller/admin/DlDriveSchoolStudentController.java +++ b/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/controller/admin/DlDriveSchoolStudentController.java @@ -256,4 +256,13 @@ public class DlDriveSchoolStudentController { list); } + + /** + * 修改学员来源 + */ + @PostMapping("/updateChannel") + public CommonResult updateChannel(@RequestBody DlDriveSchoolStudent student) { + return success(schoolStudentService.updateChannel(student)); + } + } diff --git a/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/entity/DlDriveSchoolCoach.java b/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/entity/DlDriveSchoolCoach.java index 5354b389..7fdb6e2d 100644 --- a/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/entity/DlDriveSchoolCoach.java +++ b/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/entity/DlDriveSchoolCoach.java @@ -101,15 +101,6 @@ public class DlDriveSchoolCoach extends TenantBaseDO { */ private Long folderId; - /** - * 提成 - */ - private Decimal commission; - - /** - * 银行卡号 - */ - private String bankCardId; } diff --git a/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/entity/DlDriveSchoolStudent.java b/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/entity/DlDriveSchoolStudent.java index cfc3a326..89f116b9 100644 --- a/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/entity/DlDriveSchoolStudent.java +++ b/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/entity/DlDriveSchoolStudent.java @@ -49,13 +49,17 @@ public class DlDriveSchoolStudent extends TenantBaseDO { */ private String phone; /** - * 来源(01驾校统招,02教练自招,03自来客户) + * 渠道(来源)(01驾校统招,02教练自招,03自来客户,04业务经理统招) */ private String source; /** - * 来源id + * 渠道id(来源id) */ private Long sourceUserId; + /** + * 来源(手动填写) + */ + private String channel; /** * 身份证号 */ diff --git a/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/mapper/DlDriveSchoolCoachMapper.java b/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/mapper/DlDriveSchoolCoachMapper.java index 25d3f080..21497080 100644 --- a/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/mapper/DlDriveSchoolCoachMapper.java +++ b/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/mapper/DlDriveSchoolCoachMapper.java @@ -50,4 +50,6 @@ public interface DlDriveSchoolCoachMapper extends BaseMapper CoachStaffSaveVo getOnInternal(Long id); List getAll(@Param("entity") SchoolStaffImportExcelVO query); + + IPage getBusinessManager(@Param("entity") BusinessRecordVO businessRecordVO, Page page); } diff --git a/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/service/DlDriveSchoolCoachService.java b/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/service/DlDriveSchoolCoachService.java index fc465d13..42a8095c 100644 --- a/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/service/DlDriveSchoolCoachService.java +++ b/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/service/DlDriveSchoolCoachService.java @@ -152,5 +152,7 @@ public interface DlDriveSchoolCoachService extends IService */ List getAll(SchoolStaffImportExcelVO query); + IPage getBusinessManager(BusinessRecordVO businessRecordVO, Page page); + } diff --git a/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/service/DlDriveSchoolStudentService.java b/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/service/DlDriveSchoolStudentService.java index d4d81079..e50f6e6e 100644 --- a/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/service/DlDriveSchoolStudentService.java +++ b/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/service/DlDriveSchoolStudentService.java @@ -1,5 +1,6 @@ package cn.iocoder.yudao.module.base.service; +import cn.iocoder.yudao.framework.common.pojo.CommonResult; import cn.iocoder.yudao.module.base.entity.DlDriveSchoolStudent; import cn.iocoder.yudao.module.base.vo.DlDriveSchoolStaffVO; import cn.iocoder.yudao.module.base.vo.DlDriveSchoolStudentVO; @@ -10,11 +11,15 @@ import cn.iocoder.yudao.module.inspection.vo.InspectionStaffExportVo; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; import javax.validation.Valid; import java.util.Date; import java.util.List; +import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success; + /** * 驾校学员 Service 接口 * @@ -182,4 +187,9 @@ public interface DlDriveSchoolStudentService extends IService getAll(DlDriveSchoolStudent query); + + /** + * 修改学员来源 + */ + public boolean updateChannel(DlDriveSchoolStudent student); } diff --git a/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/service/impl/DlDriveSchoolCoachServiceImpl.java b/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/service/impl/DlDriveSchoolCoachServiceImpl.java index 3b7087df..44909993 100644 --- a/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/service/impl/DlDriveSchoolCoachServiceImpl.java +++ b/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/service/impl/DlDriveSchoolCoachServiceImpl.java @@ -860,4 +860,9 @@ public class DlDriveSchoolCoachServiceImpl extends ServiceImpl getAll(SchoolStaffImportExcelVO query) { return baseMapper.getAll(query); } + + @Override + public IPage getBusinessManager(BusinessRecordVO businessRecordVO, Page page) { + return dlDriveSchoolCoachMapper.getBusinessManager(businessRecordVO, page); + } } diff --git a/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/service/impl/DlDriveSchoolStudentServiceImpl.java b/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/service/impl/DlDriveSchoolStudentServiceImpl.java index ca3ce21e..880e80b4 100644 --- a/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/service/impl/DlDriveSchoolStudentServiceImpl.java +++ b/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/service/impl/DlDriveSchoolStudentServiceImpl.java @@ -341,7 +341,7 @@ public class DlDriveSchoolStudentServiceImpl extends ServiceImpl pageResult = dlDriveSchoolStudentMapper.selectByCoachId(pageReqVO, page); pageResult.getRecords().forEach(item -> { //查每个学生的当前所处的科目 @@ -407,7 +407,7 @@ public class DlDriveSchoolStudentServiceImpl extends ServiceImpl pageResult = dlDriveSchoolStudentMapper.selectByBusinessId(pageReqVO, page); /*pageResult.getRecords().forEach(item -> { //查每个学生的当前所处的科目 @@ -671,4 +671,17 @@ public class DlDriveSchoolStudentServiceImpl extends ServiceImpl 0; + } + } diff --git a/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/vo/BusinessRecordVO.java b/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/vo/BusinessRecordVO.java new file mode 100644 index 00000000..fbe3c2a9 --- /dev/null +++ b/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/vo/BusinessRecordVO.java @@ -0,0 +1,29 @@ +package cn.iocoder.yudao.module.base.vo; + +import cn.iocoder.yudao.framework.tenant.core.db.TenantBaseDO; +import lombok.Data; +import org.apache.poi.hpsf.Decimal; + +import java.math.BigDecimal; +import java.time.LocalDateTime; + +@Data +public class BusinessRecordVO extends TenantBaseDO { + private String name; + private String phone; + private String idCard; + private Integer age; + private String sex; + private String channel; + private String courseName; + private String coachUserName; + private BigDecimal reserveMoney; + private BigDecimal restMoney; + private String paymentStatus; + private String payType; + private Integer isSign; + private String businessName; + private String businessPhone; + private LocalDateTime createTime; + +} diff --git a/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/vo/DlDriveSchoolStudentVO.java b/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/vo/DlDriveSchoolStudentVO.java index 50f3dfdf..4a549277 100644 --- a/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/vo/DlDriveSchoolStudentVO.java +++ b/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/vo/DlDriveSchoolStudentVO.java @@ -31,6 +31,8 @@ public class DlDriveSchoolStudentVO extends DlDriveSchoolStudent { private String startTime; /**查询时间范围--结束*/ private String endTime; + /**是否毕业*/ + private String isGrad; /**订单表中的毕业时间*/ private String orderGradTime; /**课程名称*/ diff --git a/dl-module-jx/src/main/resources/mapper/base/DlDriveSchoolCoachMapper.xml b/dl-module-jx/src/main/resources/mapper/base/DlDriveSchoolCoachMapper.xml index 07c7f3cf..4870433f 100644 --- a/dl-module-jx/src/main/resources/mapper/base/DlDriveSchoolCoachMapper.xml +++ b/dl-module-jx/src/main/resources/mapper/base/DlDriveSchoolCoachMapper.xml @@ -122,4 +122,45 @@ group by su.id order by su.nickname + + + diff --git a/dl-module-jx/src/main/resources/mapper/base/DlDriveSchoolStudentMapper.xml b/dl-module-jx/src/main/resources/mapper/base/DlDriveSchoolStudentMapper.xml index 26923777..c9789861 100644 --- a/dl-module-jx/src/main/resources/mapper/base/DlDriveSchoolStudentMapper.xml +++ b/dl-module-jx/src/main/resources/mapper/base/DlDriveSchoolStudentMapper.xml @@ -21,6 +21,7 @@ and main.name like concat('%', #{entity.name}, '%') and main.phone = #{entity.phone} and main.id_card like concat('%', #{entity.idCard}, '%') + and main.source = #{entity.source} GROUP BY main.user_id order by main.create_time desc @@ -135,6 +136,12 @@ AND dss.create_time <= #{entity.endTime} + + AND dsco.grad_time IS NOT NULL + + + AND dsco.grad_time IS NULL + AND dss.id IS NOT NULL ORDER BY dss.create_time DESC diff --git a/dl-module-jx/src/main/resources/mapper/course/ProcessMapper.xml b/dl-module-jx/src/main/resources/mapper/course/ProcessMapper.xml index ef204d0d..ff2a942a 100644 --- a/dl-module-jx/src/main/resources/mapper/course/ProcessMapper.xml +++ b/dl-module-jx/src/main/resources/mapper/course/ProcessMapper.xml @@ -58,7 +58,23 @@ and dsp.name like concat('%', #{entity.courseName}, '%') and dsp.user_id = #{entity.userId} and dsp.course_id = #{entity.courseId} - AND RIGHT(dss.id_card, 4) = RIGHT(#{entity.studentIdCard}, 4) + + + + + + AND dss.id_card = #{entity.studentIdCard} + + + + AND RIGHT(dss.id_card, 4) = #{entity.studentIdCard} + + + + AND dss.id_card LIKE concat('%', #{entity.studentIdCard}, '%') + + + ORDER BY (CASE