Browse Source

1、积分签到

master
Aug 2 months ago
parent
commit
75fe04608c
19 changed files with 333 additions and 188 deletions
  1. +1
    -1
      jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employJob/controller/EmployJobController.java
  2. +5
    -4
      jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employJob/entity/EmployJob.java
  3. +1
    -1
      jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employJob/mapper/EmployJobMapper.java
  4. +1
    -1
      jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employJob/service/IEmployJobService.java
  5. +1
    -1
      jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employJob/service/impl/EmployJobServiceImpl.java
  6. +52
    -37
      jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employJob/vue/EmployJobList.vue
  7. +2
    -17
      jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employJob/vue/modules/EmployJobForm.vue
  8. +60
    -52
      jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employJob/vue3/EmployJob.data.ts
  9. +1
    -1
      jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employScoreRecord/entity/EmployScoreRecord.java
  10. +8
    -1
      jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employScoreRecord/vue/EmployScoreRecordList.vue
  11. +6
    -0
      jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employScoreRecord/vue3/EmployScoreRecord.data.ts
  12. +2
    -1
      jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/controller2/ExchangeController.java
  13. +7
    -0
      jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/controller2/ScoreController.java
  14. +5
    -1
      jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/ScoreService.java
  15. +2
    -1
      jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/impl/CommonApiServiceImpl.java
  16. +3
    -3
      jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/impl/ExchangeServiceImpl.java
  17. +91
    -28
      jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/impl/JobServiceImpl.java
  18. +51
    -38
      jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/impl/ScoreServiceImpl.java
  19. +34
    -0
      jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/impl/UserInfoServiceImpl.java

+ 1
- 1
jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employJob/controller/EmployJobController.java View File

@ -39,7 +39,7 @@ import org.jeecg.common.aspect.annotation.AutoLog;
/**
* @Description: 工作信息表
* @Author: jeecg-boot
* @Date: 2024-12-20
* @Date: 2024-12-21
* @Version: V1.0
*/
@Api(tags="工作信息表")


+ 5
- 4
jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employJob/entity/EmployJob.java View File

@ -20,7 +20,7 @@ import lombok.experimental.Accessors;
/**
* @Description: 工作信息表
* @Author: jeecg-boot
* @Date: 2024-12-20
* @Date: 2024-12-21
* @Version: V1.0
*/
@Data
@ -92,7 +92,8 @@ public class EmployJob implements Serializable {
@ApiModelProperty(value = "职位详情")
private java.lang.String workDetail;
/**招聘公司名称*/
@Excel(name = "招聘公司名称", width = 15)
@Excel(name = "招聘公司名称", width = 15, dictTable = "employ_company", dicText = "company_name", dicCode = "id")
@Dict(dictTable = "employ_company", dicText = "company_name", dicCode = "id")
@ApiModelProperty(value = "招聘公司名称")
private java.lang.String company;
/**标签*/
@ -115,8 +116,8 @@ public class EmployJob implements Serializable {
@ApiModelProperty(value = "关联用户id")
private java.lang.String userId;
/**关联区域id*/
@Excel(name = "关联区域id", width = 15, dictTable = "employ_address", dicText = "adress", dicCode = "id")
@Dict(dictTable = "employ_address", dicText = "adress", dicCode = "id")
@Excel(name = "关联区域id", width = 15, dictTable = "employ_address", dicText = "address", dicCode = "id")
@Dict(dictTable = "employ_address", dicText = "address", dicCode = "id")
@ApiModelProperty(value = "关联区域id")
private java.lang.String areaId;
/**经度*/


+ 1
- 1
jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employJob/mapper/EmployJobMapper.java View File

@ -9,7 +9,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
* @Description: 工作信息表
* @Author: jeecg-boot
* @Date: 2024-12-20
* @Date: 2024-12-21
* @Version: V1.0
*/
public interface EmployJobMapper extends BaseMapper<EmployJob> {


+ 1
- 1
jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employJob/service/IEmployJobService.java View File

@ -6,7 +6,7 @@ import com.baomidou.mybatisplus.extension.service.IService;
/**
* @Description: 工作信息表
* @Author: jeecg-boot
* @Date: 2024-12-20
* @Date: 2024-12-21
* @Version: V1.0
*/
public interface IEmployJobService extends IService<EmployJob> {


+ 1
- 1
jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employJob/service/impl/EmployJobServiceImpl.java View File

@ -10,7 +10,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
/**
* @Description: 工作信息表
* @Author: jeecg-boot
* @Date: 2024-12-20
* @Date: 2024-12-21
* @Version: V1.0
*/
@Service


+ 52
- 37
jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employJob/vue/EmployJobList.vue View File

@ -4,6 +4,48 @@
<div class="table-page-search-wrapper">
<a-form layout="inline" @keyup.enter.native="searchQuery">
<a-row :gutter="24">
<a-col :xl="6" :lg="7" :md="8" :sm="24">
<a-form-item label="工作标题">
<a-input placeholder="请输入工作标题" v-model="queryParam.title"></a-input>
</a-form-item>
</a-col>
<a-col :xl="6" :lg="7" :md="8" :sm="24">
<a-form-item label="招聘者姓名">
<a-input placeholder="请输入招聘者姓名" v-model="queryParam.name"></a-input>
</a-form-item>
</a-col>
<template v-if="toggleSearchStatus">
<a-col :xl="6" :lg="7" :md="8" :sm="24">
<a-form-item label="招聘公司名称">
<j-dict-select-tag placeholder="请选择招聘公司名称" v-model="queryParam.company" dictCode="employ_company,company_name,id"/>
</a-form-item>
</a-col>
<a-col :xl="6" :lg="7" :md="8" :sm="24">
<a-form-item label="工种类型">
<j-dict-select-tag placeholder="请选择工种类型" v-model="queryParam.typeId" dictCode="employ_job_type,name,id"/>
</a-form-item>
</a-col>
<a-col :xl="6" :lg="7" :md="8" :sm="24">
<a-form-item label="工作性质">
<j-dict-select-tag placeholder="请选择工作性质" v-model="queryParam.natureId" dictCode="employ_nature,name,id"/>
</a-form-item>
</a-col>
<a-col :xl="6" :lg="7" :md="8" :sm="24">
<a-form-item label="关联区域id">
<j-dict-select-tag placeholder="请选择关联区域id" v-model="queryParam.areaId" dictCode="employ_address,address,id"/>
</a-form-item>
</a-col>
</template>
<a-col :xl="6" :lg="7" :md="8" :sm="24">
<span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">
<a-button type="primary" @click="searchQuery" icon="search">查询</a-button>
<a-button type="primary" @click="searchReset" icon="reload" style="margin-left: 8px">重置</a-button>
<a @click="handleToggleSearch" style="margin-left: 8px">
{{ toggleSearchStatus ? '收起' : '展开' }}
<a-icon :type="toggleSearchStatus ? 'up' : 'down'"/>
</a>
</span>
</a-col>
</a-row>
</a-form>
</div>
@ -122,6 +164,12 @@
return parseInt(index)+1;
}
},
{
title:'创建日期',
align:"center",
sorter: true,
dataIndex: 'createTime'
},
{
title:'工作标题',
align:"center",
@ -152,37 +200,15 @@
align:"center",
dataIndex: 'salaryUp'
},
{
title:'招聘者头像',
align:"center",
dataIndex: 'headImage',
scopedSlots: {customRender: 'imgSlot'}
},
{
title:'招聘者姓名',
align:"center",
dataIndex: 'name'
},
{
title:'招聘者职位',
align:"center",
dataIndex: 'career'
},
{
title:'招聘者电话',
align:"center",
dataIndex: 'phone'
},
{
title:'职位详情',
align:"center",
dataIndex: 'workDetail',
scopedSlots: {customRender: 'htmlSlot'}
},
{
title:'招聘公司名称',
align:"center",
dataIndex: 'company'
dataIndex: 'company_dictText'
},
{
title:'标签',
@ -209,16 +235,6 @@
align:"center",
dataIndex: 'areaId_dictText'
},
{
title:'经度',
align:"center",
dataIndex: 'longitude'
},
{
title:'纬度',
align:"center",
dataIndex: 'latitude'
},
{
title: '操作',
dataIndex: 'action',
@ -253,23 +269,22 @@
},
getSuperFieldList(){
let fieldList=[];
fieldList.push({type:'datetime',value:'createTime',text:'创建日期'})
fieldList.push({type:'string',value:'title',text:'工作标题',dictCode:''})
fieldList.push({type:'string',value:'workAddress',text:'工作地址',dictCode:''})
fieldList.push({type:'string',value:'workAge',text:'工龄要求',dictCode:''})
fieldList.push({type:'string',value:'qulification',text:'学历要求',dictCode:''})
fieldList.push({type:'BigDecimal',value:'salaryLow',text:'薪资下限',dictCode:''})
fieldList.push({type:'BigDecimal',value:'salaryUp',text:'薪资上限',dictCode:''})
fieldList.push({type:'string',value:'headImage',text:'招聘者头像',dictCode:''})
fieldList.push({type:'string',value:'name',text:'招聘者姓名',dictCode:''})
fieldList.push({type:'string',value:'career',text:'招聘者职位',dictCode:''})
fieldList.push({type:'string',value:'phone',text:'招聘者电话',dictCode:''})
fieldList.push({type:'string',value:'workDetail',text:'职位详情',dictCode:''})
fieldList.push({type:'string',value:'company',text:'招聘公司名称',dictCode:''})
fieldList.push({type:'string',value:'company',text:'招聘公司名称',dictCode:"employ_company,company_name,id"})
fieldList.push({type:'string',value:'tab',text:'标签',dictCode:''})
fieldList.push({type:'string',value:'typeId',text:'工种类型',dictCode:"employ_job_type,name,id"})
fieldList.push({type:'string',value:'natureId',text:'工作性质',dictCode:"employ_nature,name,id"})
fieldList.push({type:'string',value:'userId',text:'关联用户id',dictCode:"han_hai_member,nick_name,id"})
fieldList.push({type:'string',value:'areaId',text:'关联区域id',dictCode:"employ_address,adress,id"})
fieldList.push({type:'string',value:'areaId',text:'关联区域id',dictCode:"employ_address,address,id"})
fieldList.push({type:'BigDecimal',value:'longitude',text:'经度',dictCode:''})
fieldList.push({type:'BigDecimal',value:'latitude',text:'纬度',dictCode:''})
this.superFieldList = fieldList


+ 2
- 17
jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employJob/vue/modules/EmployJobForm.vue View File

@ -33,26 +33,11 @@
<a-input-number v-model="model.salaryUp" placeholder="请输入薪资上限" style="width: 100%" />
</a-form-model-item>
</a-col>
<a-col :span="24">
<a-form-model-item label="招聘者头像" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="headImage">
<j-image-upload isMultiple v-model="model.headImage" ></j-image-upload>
</a-form-model-item>
</a-col>
<a-col :span="24">
<a-form-model-item label="招聘者姓名" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="name">
<a-input v-model="model.name" placeholder="请输入招聘者姓名" ></a-input>
</a-form-model-item>
</a-col>
<a-col :span="24">
<a-form-model-item label="招聘者职位" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="career">
<a-input v-model="model.career" placeholder="请输入招聘者职位" ></a-input>
</a-form-model-item>
</a-col>
<a-col :span="24">
<a-form-model-item label="招聘者电话" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="phone">
<a-input v-model="model.phone" placeholder="请输入招聘者电话" ></a-input>
</a-form-model-item>
</a-col>
<a-col :span="24">
<a-form-model-item label="职位详情" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="workDetail">
<j-editor v-model="model.workDetail" />
@ -60,7 +45,7 @@
</a-col>
<a-col :span="24">
<a-form-model-item label="招聘公司名称" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="company">
<a-input v-model="model.company" placeholder="请输入招聘公司名称" ></a-input>
<j-dict-select-tag type="list" v-model="model.company" dictCode="employ_company,company_name,id" placeholder="请选择招聘公司名称" />
</a-form-model-item>
</a-col>
<a-col :span="24">
@ -85,7 +70,7 @@
</a-col>
<a-col :span="24">
<a-form-model-item label="关联区域id" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="areaId">
<j-dict-select-tag type="list" v-model="model.areaId" dictCode="employ_address,adress,id" placeholder="请选择关联区域id" />
<j-dict-select-tag type="list" v-model="model.areaId" dictCode="employ_address,address,id" placeholder="请选择关联区域id" />
</a-form-model-item>
</a-col>
<a-col :span="24">


+ 60
- 52
jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employJob/vue3/EmployJob.data.ts View File

@ -5,6 +5,12 @@ import { render } from '/@/utils/common/renderUtils';
//列表数据
export const columns: BasicColumn[] = [
{
title: '创建日期',
align:"center",
sorter: true,
dataIndex: 'createTime'
},
{
title: '工作标题',
align:"center",
dataIndex: 'title'
@ -34,37 +40,15 @@ export const columns: BasicColumn[] = [
align:"center",
dataIndex: 'salaryUp'
},
{
title: '招聘者头像',
align:"center",
dataIndex: 'headImage',
customRender:render.renderAvatar,
},
{
title: '招聘者姓名',
align:"center",
dataIndex: 'name'
},
{
title: '招聘者职位',
align:"center",
dataIndex: 'career'
},
{
title: '招聘者电话',
align:"center",
dataIndex: 'phone'
},
{
title: '职位详情',
align:"center",
dataIndex: 'workDetail',
slots: { customRender: 'htmlSlot' },
},
{
title: '招聘公司名称',
align:"center",
dataIndex: 'company'
dataIndex: 'company_dictText'
},
{
title: '标签',
@ -91,19 +75,57 @@ export const columns: BasicColumn[] = [
align:"center",
dataIndex: 'areaId_dictText'
},
{
title: '经度',
align:"center",
dataIndex: 'longitude'
},
{
title: '纬度',
align:"center",
dataIndex: 'latitude'
},
];
//查询数据
export const searchFormSchema: FormSchema[] = [
{
label: "工作标题",
field: "title",
component: 'Input',
colProps: {span: 6},
},
{
label: "招聘者姓名",
field: "name",
component: 'Input',
colProps: {span: 6},
},
{
label: "招聘公司名称",
field: "company",
component: 'JDictSelectTag',
componentProps:{
dictCode:"employ_company,company_name,id"
},
colProps: {span: 6},
},
{
label: "工种类型",
field: "typeId",
component: 'JDictSelectTag',
componentProps:{
dictCode:"employ_job_type,name,id"
},
colProps: {span: 6},
},
{
label: "工作性质",
field: "natureId",
component: 'JDictSelectTag',
componentProps:{
dictCode:"employ_nature,name,id"
},
colProps: {span: 6},
},
{
label: "关联区域id",
field: "areaId",
component: 'JDictSelectTag',
componentProps:{
dictCode:"employ_address,address,id"
},
colProps: {span: 6},
},
];
//表单数据
export const formSchema: FormSchema[] = [
@ -137,28 +159,11 @@ export const formSchema: FormSchema[] = [
field: 'salaryUp',
component: 'InputNumber',
},
{
label: '招聘者头像',
field: 'headImage',
component: 'JImageUpload',
componentProps:{
},
},
{
label: '招聘者姓名',
field: 'name',
component: 'Input',
},
{
label: '招聘者职位',
field: 'career',
component: 'Input',
},
{
label: '招聘者电话',
field: 'phone',
component: 'Input',
},
{
label: '职位详情',
field: 'workDetail',
@ -167,7 +172,10 @@ export const formSchema: FormSchema[] = [
{
label: '招聘公司名称',
field: 'company',
component: 'Input',
component: 'JDictSelectTag',
componentProps:{
dictCode:"employ_company,company_name,id"
},
},
{
label: '标签',
@ -203,7 +211,7 @@ export const formSchema: FormSchema[] = [
field: 'areaId',
component: 'JDictSelectTag',
componentProps:{
dictCode:"employ_address,adress,id"
dictCode:"employ_address,address,id"
},
},
{


+ 1
- 1
jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employScoreRecord/entity/EmployScoreRecord.java View File

@ -54,7 +54,7 @@ public class EmployScoreRecord implements Serializable {
/**积分*/
@Excel(name = "积分", width = 15)
@ApiModelProperty(value = "积分")
private java.lang.Double score;
private java.math.BigDecimal score;
/**积分类型*/
@Excel(name = "积分类型", width = 15, dicCode = "employ_bill")
@Dict(dicCode = "employ_bill")


+ 8
- 1
jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employScoreRecord/vue/EmployScoreRecordList.vue View File

@ -137,6 +137,12 @@
return parseInt(index)+1;
}
},
{
title:'创建日期',
align:"center",
sorter: true,
dataIndex: 'createTime'
},
{
title:'积分标题',
align:"center",
@ -191,8 +197,9 @@
},
getSuperFieldList(){
let fieldList=[];
fieldList.push({type:'datetime',value:'createTime',text:'创建日期'})
fieldList.push({type:'string',value:'title',text:'积分标题',dictCode:''})
fieldList.push({type:'double',value:'score',text:'积分',dictCode:''})
fieldList.push({type:'BigDecimal',value:'score',text:'积分',dictCode:''})
fieldList.push({type:'string',value:'type',text:'积分类型',dictCode:'employ_bill'})
fieldList.push({type:'string',value:'userId',text:'关联用户id',dictCode:"han_hai_member,nick_name,id"})
this.superFieldList = fieldList


+ 6
- 0
jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/modules/employScoreRecord/vue3/EmployScoreRecord.data.ts View File

@ -5,6 +5,12 @@ import { render } from '/@/utils/common/renderUtils';
//列表数据
export const columns: BasicColumn[] = [
{
title: '创建日期',
align:"center",
sorter: true,
dataIndex: 'createTime'
},
{
title: '积分标题',
align:"center",
dataIndex: 'title'


+ 2
- 1
jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/controller2/ExchangeController.java View File

@ -6,6 +6,7 @@ import lombok.extern.slf4j.Slf4j;
import org.jeecg.common.api.vo.Result;
import org.jeecg.modules.apiService.ExaminationService;
import org.jeecg.modules.apiService.ExchangeService;
import org.jeecg.modules.employExchange.entity.EmployExchange;
import org.springframework.web.bind.annotation.RequestHeader;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
@ -33,7 +34,7 @@ public class ExchangeController {
@ApiOperation(value="我的服务-生成兑换码", notes="我的服务-生成兑换码")
@RequestMapping(value = "/addExchange", method = {RequestMethod.POST})
public Result<?> addExchange(){
public Result<?> addExchange(EmployExchange employExchange){
return exchangeService.addExchange();
}


+ 7
- 0
jeecg-boot-module-system/src/main/java/org/jeecg/modules/api/controller2/ScoreController.java View File

@ -53,4 +53,11 @@ public class ScoreController {
return scoreService.addScoreBySign(token);
}
//我的服务-获取积分-每日签到获取积分
@ApiOperation(value="是否已签到-已签(true)/未签(false)", notes="是否已签到-已签(true)/未签(false)")
@RequestMapping(value = "/judgeSign", method = {RequestMethod.GET})
public Boolean judgeSign(@RequestHeader("X-Access-Token") String token){
return scoreService.judgeSign(token);
}
}

+ 5
- 1
jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/ScoreService.java View File

@ -2,6 +2,7 @@ package org.jeecg.modules.apiService;
import org.jeecg.common.api.vo.Result;
import org.jeecg.modules.apiBean.PageBean;
import org.springframework.web.bind.annotation.RequestHeader;
public interface ScoreService {
@ -14,7 +15,10 @@ public interface ScoreService {
//会员中心-邀请工友获取积分
public Result<?> addScoreByShare(String token, String score);
//会员中心-addScoreBySign
//会员中心-签到领取积分
public Result<?> addScoreBySign(String token);
//判断当日是否已签到
public Boolean judgeSign(String token);
}

+ 2
- 1
jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/impl/CommonApiServiceImpl.java View File

@ -41,6 +41,7 @@ import org.jeecg.modules.hanHaiMember.service.IHanHaiMemberService;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.math.BigDecimal;
import java.util.List;
@Service
@ -484,7 +485,7 @@ public class CommonApiServiceImpl implements CommonApiService {
//积分记录添加
EmployScoreRecord record = new EmployScoreRecord();
record.setScore(score);
record.setScore(BigDecimal.valueOf(score));
record.setUserId(hanHaiMember.getId());
record.setTitle("每日签到获取积分");
record.setType("0");


+ 3
- 3
jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/impl/ExchangeServiceImpl.java View File

@ -17,6 +17,7 @@ import org.jeecg.modules.hanHaiMember.service.IHanHaiMemberService;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.math.BigDecimal;
@Service
public class ExchangeServiceImpl implements ExchangeService {
@ -52,8 +53,7 @@ public class ExchangeServiceImpl implements ExchangeService {
public Result<?> useExchange(String token, String code) {
try{
//权限验证
//HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token);
HanHaiMember hanHaiMember = hanHaiMemberService.getById("1869964550926602242");
HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token);
//1查询兑换码信息
EmployExchange exchange = employExchangeService
@ -111,7 +111,7 @@ public class ExchangeServiceImpl implements ExchangeService {
//5添加用户积分记录
EmployScoreRecord scoreRecord = new EmployScoreRecord();
scoreRecord.setScore(score);
scoreRecord.setScore(BigDecimal.valueOf(score));
scoreRecord.setUserId(hanHaiMember.getId());
scoreRecord.setTitle("兑换码获取积分");
scoreRecord.setType("0");


+ 91
- 28
jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/impl/JobServiceImpl.java View File

@ -7,16 +7,22 @@ import org.jeecg.config.shiro.ShiroRealm;
import org.jeecg.modules.apiBean.CollectionBean;
import org.jeecg.modules.apiBean.PageBean;
import org.jeecg.modules.apiService.JobService;
import org.jeecg.modules.employAuthenticationPerson.entity.EmployAuthenticationPerson;
import org.jeecg.modules.employAuthenticationPerson.service.IEmployAuthenticationPersonService;
import org.jeecg.modules.employCheckJob.entity.EmployCheckJob;
import org.jeecg.modules.employCheckJob.service.IEmployCheckJobService;
import org.jeecg.modules.employCollectionJob.entity.EmployCollectionJob;
import org.jeecg.modules.employCollectionJob.service.IEmployCollectionJobService;
import org.jeecg.modules.employCompany.entity.EmployCompany;
import org.jeecg.modules.employCompany.service.IEmployCompanyService;
import org.jeecg.modules.employJob.entity.EmployJob;
import org.jeecg.modules.employJob.service.IEmployJobService;
import org.jeecg.modules.hanHaiMember.entity.HanHaiMember;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.HashMap;
import java.util.Map;
@Service
public class JobServiceImpl implements JobService {
@ -38,6 +44,14 @@ public class JobServiceImpl implements JobService {
@Resource
private IEmployCheckJobService employCheckJobService;
//个人实名认证表
@Resource
private IEmployAuthenticationPersonService employAuthenticationPersonService;
//企业信息表
@Resource
private IEmployCompanyService employCompanyService;
/******************************************************************************************************************/
@ -88,44 +102,93 @@ public class JobServiceImpl implements JobService {
}
//根据id查询工作详情
// @Override
// public Result<?> queryJobById(String token, String jobId) {
// CollectionBean collectionBean = new CollectionBean();
// Boolean collectionFlag = false;
//
// //获取工作详情
// EmployJob one = employJobService
// .lambdaQuery()
// .eq(EmployJob::getId, jobId)
// .one();
//
// collectionBean.setEmployJob(one);
//
// //添加工作被查看记录
// if(null != token){
// //权限验证
// HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token);
//
// EmployCheckJob employCheckJob = new EmployCheckJob();
// employCheckJob.setJobId(one.getId());
// employCheckJob.setUserId(hanHaiMember.getId());
// employCheckJobService.saveOrUpdate(employCheckJob);
//
// //添加是否被收藏标识
// EmployCollectionJob collection = employCollectionJobService
// .lambdaQuery()
// .eq(EmployCollectionJob::getJobId, one.getId())
// .eq(EmployCollectionJob::getUserId, hanHaiMember.getId())
// .one();
//
// if(null != collection){
// collectionFlag = true;
// }
// }
//
// collectionBean.setCollectionFlag(collectionFlag);
//
// return Result.OK("工作详情", collectionBean);
// }
@Override
public Result<?> queryJobById(String token, String jobId) {
CollectionBean collectionBean = new CollectionBean();
Boolean collectionFlag = false;
//获取工作详情
EmployJob one = employJobService
//权限验证
HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token);
//返回信息
Map<String, Object> map = new HashMap<>();
//查看工作详情信息
EmployJob job = employJobService.getById(jobId);
map.put("jobInfo", job);
//根据工作关联用户id查询出用户实名认证信息
EmployAuthenticationPerson person = employAuthenticationPersonService
.lambdaQuery()
.eq(EmployJob::getId, jobId)
.eq(EmployAuthenticationPerson::getUserId, job.getUserId())
.one();
map.put("personInfo", person);
collectionBean.setEmployJob(one);
//根据关联公司id查询出公司信息
EmployCompany company = employCompanyService
.lambdaQuery()
.eq(EmployCompany::getCompanyName, job.getCompany())
.one();
map.put("companyInfo", company);
//添加工作被查看记录
if(null != token){
//权限验证
HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token);
EmployCheckJob employCheckJob = new EmployCheckJob();
employCheckJob.setJobId(one.getId());
employCheckJob.setUserId(hanHaiMember.getId());
employCheckJobService.saveOrUpdate(employCheckJob);
//添加是否被收藏标识
EmployCollectionJob collection = employCollectionJobService
.lambdaQuery()
.eq(EmployCollectionJob::getJobId, one.getId())
.eq(EmployCollectionJob::getUserId, hanHaiMember.getId())
.one();
if(null != collection){
collectionFlag = true;
}
//添加工作是否被收藏标识
EmployCollectionJob collection = employCollectionJobService
.lambdaQuery()
.eq(EmployCollectionJob::getJobId, job.getId())
.eq(EmployCollectionJob::getUserId, hanHaiMember.getId())
.one();
if(null != collection){
map.put("CollectionFlage", true);
}else {
map.put("CollectionFlage", false);
}
collectionBean.setCollectionFlag(collectionFlag);
//添加工作被查看记录
EmployCheckJob employCheckJob = new EmployCheckJob();
employCheckJob.setJobId(job.getId());
employCheckJob.setUserId(hanHaiMember.getId());
employCheckJobService.saveOrUpdate(employCheckJob);
return Result.OK("工作详情", collectionBean);
return Result.OK("工作详情", null);
}
//我的招工


+ 51
- 38
jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/impl/ScoreServiceImpl.java View File

@ -11,9 +11,12 @@ import org.jeecg.modules.employScore.service.IEmployScoreService;
import org.jeecg.modules.employScoreRecord.entity.EmployScoreRecord;
import org.jeecg.modules.employScoreRecord.service.IEmployScoreRecordService;
import org.jeecg.modules.hanHaiMember.entity.HanHaiMember;
import org.jeecg.modules.hanHaiMember.service.IHanHaiMemberService;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.math.BigDecimal;
import java.time.LocalDate;
@Service
public class ScoreServiceImpl implements ScoreService {
@ -22,6 +25,10 @@ public class ScoreServiceImpl implements ScoreService {
@Resource
private ShiroRealm shiroRealm;
//积分记录表
@Resource
private IHanHaiMemberService hanHaiMemberService;
//积分表
@Resource
private IEmployScoreService employScoreService;
@ -86,46 +93,23 @@ public class ScoreServiceImpl implements ScoreService {
//权限验证
HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token);
//查询该用户是否有积分信息
EmployScore one = employScoreService
.lambdaQuery()
.eq(EmployScore::getUserId, hanHaiMember.getId())
.one();
//判断今日是否已签到
boolean flag = judgeSign(token);
if(flag){
return Result.error("已签到,不可重复签到");
}
BigDecimal score = BigDecimal.valueOf(2);//签到积分
BigDecimal newScore = hanHaiMember.getIntegerPrice().add(score);
hanHaiMember.setIntegerPrice(newScore);
double score = 2;
//如果有积分信息就在该基础上增加积分
EmployScore employScore = new EmployScore();
employScore.setUserId(hanHaiMember.getId());
if(null != one){
double newScore;
if(null != one.getScore()){
newScore = one.getScore() + score;
}else {
newScore = score;
}
employScore.setId(one.getId());
employScore.setScore(newScore);
//添加/修改积分信息
boolean result = employScoreService.updateById(employScore);
if(result){
message = "积分添加成功!";
}else {
message = "积分添加失败!";
}
//修改积分
boolean result = hanHaiMemberService.updateById(hanHaiMember);
if(result){
message = "积分添加成功!";
}else {
//如果没有积分信息就在新建积分
employScore.setScore(score);
boolean result = employScoreService.save(employScore);
if(result){
message = "积分添加成功!";
}else {
message = "积分添加失败!";
}
message = "积分添加失败!";
}
//积分记录添加
@ -139,4 +123,33 @@ public class ScoreServiceImpl implements ScoreService {
return Result.OK(message);
}
//判断当日是否已签到
@Override
public Boolean judgeSign(String token) {
Boolean result = true;
//权限验证
HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token);
//获取当天日期
LocalDate date = LocalDate.now();
//查询当日签到记录
EmployScoreRecord record = employScoreRecordService
.lambdaQuery()
.eq(EmployScoreRecord::getUserId, hanHaiMember.getId())
.like(EmployScoreRecord::getCreateTime, date)
.eq(EmployScoreRecord::getTitle, "每日签到获取积分")
.one();
if(null != record){
result = true;
} else {
result = false;
}
return result;
}
}

+ 34
- 0
jeecg-boot-module-system/src/main/java/org/jeecg/modules/apiService/impl/UserInfoServiceImpl.java View File

@ -5,11 +5,16 @@ import org.apache.commons.lang.StringUtils;
import org.jeecg.common.api.vo.Result;
import org.jeecg.config.shiro.ShiroRealm;
import org.jeecg.modules.apiService.UserInfoService;
import org.jeecg.modules.employAuthenticationPerson.entity.EmployAuthenticationPerson;
import org.jeecg.modules.employAuthenticationPerson.service.IEmployAuthenticationPersonService;
import org.jeecg.modules.employScoreRecord.entity.EmployScoreRecord;
import org.jeecg.modules.employScoreRecord.service.IEmployScoreRecordService;
import org.jeecg.modules.hanHaiMember.entity.HanHaiMember;
import org.jeecg.modules.hanHaiMember.service.IHanHaiMemberService;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.time.LocalDate;
import java.util.HashMap;
import java.util.Map;
@ -24,6 +29,17 @@ public class UserInfoServiceImpl implements UserInfoService {
@Resource
private IHanHaiMemberService hanHaiMemberService;
//个人实名信息
@Resource
private IEmployAuthenticationPersonService employAuthenticationPersonService;
@Resource
private IEmployScoreRecordService employScoreRecordService;
@Resource
private ScoreServiceImpl scoreService;
@ -60,12 +76,30 @@ public class UserInfoServiceImpl implements UserInfoService {
//lzx获取个人中心基础数据信息
@Override
public Result<?> getUserCenterData(String token){
//权限验证
HanHaiMember hanHaiMember = shiroRealm.checkUserTokenIsEffectHanHaiOpenId(token);
//获取个人实名信息
EmployAuthenticationPerson person = employAuthenticationPersonService
.lambdaQuery()
.eq(EmployAuthenticationPerson::getUserId, hanHaiMember.getId())
.one();
//获取是否签到
boolean signFlag = scoreService.judgeSign(token);
//组装个人基础数据
Map map = new HashMap();
map.put("integerNum",hanHaiMember.getIntegerPrice());
map.put("scNum",0);
map.put("lxNum",0);
if(null != person){
map.put("status",person.getStatus());//实名状态
}else {
map.put("status","0");//实名状态
}
map.put("signFlag",signFlag);
return Result.OK("获取个人中心基础数据信息",map);
}
}

Loading…
Cancel
Save