工地直转
This commit is contained in:
parent
fe713e0e3a
commit
d0d13039d6
|
|
@ -58,6 +58,9 @@ public class TokenController {
|
|||
LoginUser userInfo = sysLoginService.login(form.getUsername(), form.getPassword());
|
||||
String uuid = form.getUuid();
|
||||
String captcha = redisService.getCacheObject(CacheConstants.CAPTCHA_CODE_KEY + uuid).toString();
|
||||
if (StringUtils.isBlank(captcha)){
|
||||
return R.fail("验证码超时,请重新刷新");
|
||||
}
|
||||
if (form.getCode() != null && form.getCode().equals(captcha)) {
|
||||
// 获取登录token
|
||||
return R.ok(tokenService.createToken(userInfo));
|
||||
|
|
|
|||
|
|
@ -96,6 +96,16 @@ public class RedisService
|
|||
return redisTemplate.hasKey(key);
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除单个对象
|
||||
*
|
||||
* @param key
|
||||
*/
|
||||
public boolean deleteObject(final String key)
|
||||
{
|
||||
return redisTemplate.delete(key);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获得缓存的基本对象。
|
||||
*
|
||||
|
|
@ -108,16 +118,6 @@ public class RedisService
|
|||
return operation.get(key);
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除单个对象
|
||||
*
|
||||
* @param key
|
||||
*/
|
||||
public boolean deleteObject(final String key)
|
||||
{
|
||||
return redisTemplate.delete(key);
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除集合对象
|
||||
*
|
||||
|
|
|
|||
|
|
@ -105,90 +105,45 @@ public class WorkSiteDirectManageController extends BaseController {
|
|||
return AjaxResult.success("保存成功");
|
||||
}
|
||||
|
||||
/* @ApiOperation(value = "通过")
|
||||
@ApiOperation(value = "通过")
|
||||
@PostMapping("/pass")
|
||||
public AjaxResult pass(@RequestBody DirectApplyInfoDetails directApplyInfoDetails) {
|
||||
if (directApplyInfoDetails.getDirectApplyInfo() != null) {
|
||||
DirectApplyInfo directApplyInfos = directApplyInfoDetails.getDirectApplyInfo();
|
||||
// 修改direct_apply_info 状态
|
||||
if (StringUtils.isNotBlank(directApplyInfoDetails.getDirectApplyInfoId())) {
|
||||
DirectApplyInfo directApplyInfos = workSiteDirectManageService.getDirectApplyInfoById(directApplyInfoDetails.getDirectApplyInfoId());
|
||||
directApplyInfos.setStatus("1");
|
||||
workSiteDirectManageService.refuseDirectApplyInfo(directApplyInfos);
|
||||
} else {
|
||||
return AjaxResult.error("直转信息为空,未通过");
|
||||
}
|
||||
//创建领料任务
|
||||
try {
|
||||
|
||||
TmTask task = directApplyInfoDetails.getTask();
|
||||
if (StringUtils.isNull(task)) {
|
||||
return AjaxResult.error("参数错误");
|
||||
}
|
||||
if (task == null) {
|
||||
return AjaxResult.error("任务新建失败");
|
||||
} else {
|
||||
String code = tmTaskService.genderLeaseCode();
|
||||
if (StringUtils.isEmpty(code)) {
|
||||
return AjaxResult.error("后台生成CODE编号异常,请重试!");
|
||||
return AjaxResult.error("领料单号生成失败");
|
||||
}
|
||||
task.setCode(code);
|
||||
// 创建任务
|
||||
boolean addTaskResult = tmTaskService.insertSelective(task) > 0;
|
||||
//任务与协议建立关联关系
|
||||
boolean i = tmTaskService.insertAgreement(task) > 0;
|
||||
|
||||
if (addTaskResult && task.getLeaseApplyInfo() != null) {
|
||||
if (CollUtil.isEmpty(task.getLeaseApplyDetails())) {
|
||||
return AjaxResult.error("领料设备明细为空,请重新选择后上传!");
|
||||
}
|
||||
if (StringUtils.isNull(task.getLeaseApplyInfo())) {
|
||||
return AjaxResult.error("领料任务信息为空,请重新选择后上传!");
|
||||
// 创建领料任务(tm_task)
|
||||
int res1 = workSiteDirectManageService.insertLeaseApplyInfo(task);
|
||||
if (res1 == 0) {
|
||||
return AjaxResult.error("任务新建失败");
|
||||
}
|
||||
|
||||
// 获取任务编号
|
||||
String taskId = task.getId();
|
||||
List<List<LeaseApplyDetails>> deviceByCompanyList = CollUtil.groupByField(task.getLeaseApplyDetails(), "companyId");
|
||||
// 对拆分后的集合进行each遍历
|
||||
for (List<LeaseApplyDetails> leaseApplyDetailsList : deviceByCompanyList) {
|
||||
// 判断拆分后的集合内是否有数据
|
||||
if (CollUtil.isNotEmpty(leaseApplyDetailsList)) {
|
||||
// 对领料任务表的对象做数据处理
|
||||
LeaseApplyInfo leaseApplyInfo = task.getLeaseApplyInfo();
|
||||
leaseApplyInfo.setCode(code); // 创建领料单号
|
||||
leaseApplyInfo.setTaskId(Integer.valueOf(taskId)); // 设置任务ID
|
||||
leaseApplyInfo.setCompanyId(leaseApplyDetailsList.get(0).getCompanyId()); // 设置设备所属分公司,用于交给哪家审核
|
||||
leaseApplyInfo.setType("2"); // 设置审批层级,先固定2层,后期根据接口传入Type区分来源设定
|
||||
//任务与协议建立关联关系 (tm_task_agreement)
|
||||
int res2 = workSiteDirectManageService.insertAgreement(task);
|
||||
if (res2 == 0) {
|
||||
return AjaxResult.error("协议建立失败");
|
||||
}
|
||||
|
||||
// 创建领料任务,返回领料任务编号
|
||||
boolean addLeaseTaskResult = leaseApplyInfoService.genderLeaseCode(leaseApplyInfo) > 0;
|
||||
// 领料任务创建完成,进行领料任务明细插入
|
||||
if (addLeaseTaskResult) {
|
||||
// 领料任务编号
|
||||
Integer leaseTaskId = leaseApplyInfo.getId();
|
||||
ArrayList<Integer> ids = new ArrayList();
|
||||
if (StringUtils.isNotNull(leaseTaskId)) {
|
||||
for (LeaseApplyDetails leaseApplyDetails : leaseApplyDetailsList) {
|
||||
leaseApplyDetails.setParenntId(leaseTaskId); // 设置领料任务ID
|
||||
ids.add(leaseApplyDetails.getId());
|
||||
//新增领料信息和详情(lease_apply_info、lease_apply_details)
|
||||
int res3 = workSiteDirectManageService.insertApplyInfoAndDetails(task);
|
||||
if (res3 == 0) {
|
||||
return AjaxResult.error("领料信息和详情新增失败");
|
||||
}
|
||||
// 插入领料任务明细
|
||||
boolean addLeaseTaskDetailsResult = leaseApplyDetailsService.batchInsert(leaseApplyDetailsList) > 0;
|
||||
if (addLeaseTaskDetailsResult) {
|
||||
System.out.println("领料任务创建成功");
|
||||
leaseUserBookService.batchDel(ids);
|
||||
} else {
|
||||
System.out.println("领料任务创建成功,但领料任务明细插入失败");
|
||||
}
|
||||
} else {
|
||||
return AjaxResult.error("领料任务编号为空");
|
||||
}
|
||||
} else {
|
||||
return AjaxResult.error("创建领料任务失败,或领料明细为空");
|
||||
}
|
||||
}
|
||||
}
|
||||
if (StringUtils.isEmpty(taskId)) {
|
||||
return AjaxResult.error("任务编号为空,创建失败");
|
||||
}
|
||||
} else {
|
||||
return AjaxResult.error("创建任务失败");
|
||||
}
|
||||
} catch (Exception e) {
|
||||
return AjaxResult.error("创建任务失败," + e.getCause().toString() + "," + e.getMessage());
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
|
@ -196,7 +151,7 @@ public class WorkSiteDirectManageController extends BaseController {
|
|||
//创建退料任务
|
||||
|
||||
return AjaxResult.success();
|
||||
}*/
|
||||
}
|
||||
|
||||
/**
|
||||
* 不通过
|
||||
|
|
|
|||
|
|
@ -15,10 +15,10 @@ import java.util.List;
|
|||
public class DirectApplyInfoDetails extends BaseEntity {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
private String directApplyInfoId;
|
||||
private DirectApplyInfo directApplyInfo;
|
||||
|
||||
private List<DirectApplyDetails> directApplyInfoDetails;
|
||||
|
||||
|
||||
private TmTask task;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -4,8 +4,12 @@ import com.bonus.sgzb.base.api.domain.DirectApplyDetails;
|
|||
import com.bonus.sgzb.base.api.domain.DirectApplyInfo;
|
||||
import com.bonus.sgzb.base.api.domain.SltAgreementInfo;
|
||||
import com.bonus.sgzb.base.api.domain.SltAgreementRelation;
|
||||
import com.bonus.sgzb.material.domain.LeaseApplyDetails;
|
||||
import com.bonus.sgzb.material.domain.LeaseApplyInfo;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
|
|
@ -33,4 +37,11 @@ public interface WorkSiteDirectManageMapper {
|
|||
|
||||
List<DirectApplyInfo> getList();
|
||||
|
||||
DirectApplyInfo getDirectApplyInfoById(String directApplyInfoDetails);
|
||||
|
||||
int insertSelective(LeaseApplyInfo leaseApplyInfo);
|
||||
|
||||
int batchInsert(List<LeaseApplyDetails> leaseApplyDetailsList);
|
||||
|
||||
int batchDel(@Param("ids") ArrayList<Integer> ids);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -4,6 +4,8 @@ import com.bonus.sgzb.base.api.domain.DirectApplyDetails;
|
|||
import com.bonus.sgzb.base.api.domain.DirectApplyInfo;
|
||||
import com.bonus.sgzb.base.api.domain.SltAgreementInfo;
|
||||
import com.bonus.sgzb.base.api.domain.SltAgreementRelation;
|
||||
import com.bonus.sgzb.common.core.web.domain.AjaxResult;
|
||||
import com.bonus.sgzb.material.domain.TmTask;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
|
|
@ -22,4 +24,12 @@ public interface WorkSiteDirectManageService {
|
|||
List<DirectApplyInfo> getList();
|
||||
|
||||
String genderLeaseCode();
|
||||
|
||||
DirectApplyInfo getDirectApplyInfoById(String directApplyInfoDetails);
|
||||
|
||||
int insertLeaseApplyInfo(TmTask task);
|
||||
|
||||
int insertAgreement(TmTask task);
|
||||
|
||||
int insertApplyInfoAndDetails(TmTask task);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,10 +1,17 @@
|
|||
package com.bonus.sgzb.material.service.impl;
|
||||
|
||||
import cn.hutool.core.collection.CollUtil;
|
||||
import com.bonus.sgzb.base.api.domain.DirectApplyDetails;
|
||||
import com.bonus.sgzb.base.api.domain.DirectApplyInfo;
|
||||
import com.bonus.sgzb.base.api.domain.SltAgreementInfo;
|
||||
import com.bonus.sgzb.common.core.utils.DateUtils;
|
||||
import com.bonus.sgzb.common.core.utils.StringUtils;
|
||||
import com.bonus.sgzb.common.core.web.domain.AjaxResult;
|
||||
import com.bonus.sgzb.material.domain.LeaseApplyDetails;
|
||||
import com.bonus.sgzb.material.domain.LeaseApplyInfo;
|
||||
import com.bonus.sgzb.material.domain.TmTask;
|
||||
import com.bonus.sgzb.material.mapper.WorkSiteDirectManageMapper;
|
||||
import com.bonus.sgzb.material.service.TaskService;
|
||||
import com.bonus.sgzb.material.service.WorkSiteDirectManageService;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
|
|
@ -14,6 +21,7 @@ import org.springframework.transaction.annotation.Transactional;
|
|||
import javax.annotation.Resource;
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.time.LocalDate;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
|
|
@ -27,6 +35,8 @@ public class WorkSiteDirectManageImpl implements WorkSiteDirectManageService {
|
|||
|
||||
@Resource
|
||||
private WorkSiteDirectManageMapper workSiteDirectManageMapper;
|
||||
@Resource
|
||||
private TaskService tmTaskService;
|
||||
|
||||
@Override
|
||||
public List<SltAgreementInfo> getUseringData(String agreementId) {
|
||||
|
|
@ -65,4 +75,95 @@ public class WorkSiteDirectManageImpl implements WorkSiteDirectManageService {
|
|||
String code = "ZZ" + format + "-" + list.size() + i;
|
||||
return code;
|
||||
}
|
||||
|
||||
@Override
|
||||
public DirectApplyInfo getDirectApplyInfoById(String directApplyInfoDetails) {
|
||||
return workSiteDirectManageMapper.getDirectApplyInfoById(directApplyInfoDetails);
|
||||
}
|
||||
|
||||
@Override
|
||||
public int insertLeaseApplyInfo(TmTask task) {
|
||||
int res = 0;
|
||||
if (StringUtils.isNull(task)) {
|
||||
return res;
|
||||
}
|
||||
// 创建任务
|
||||
int i = tmTaskService.insertSelective(task);
|
||||
if (i < 1) {
|
||||
return res;
|
||||
} else {
|
||||
res = 1;
|
||||
return res;
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public int insertAgreement(TmTask task) {
|
||||
int res = 0;
|
||||
boolean b = tmTaskService.insertAgreement(task) > 0;
|
||||
if (b) {
|
||||
res = 1;
|
||||
}
|
||||
return res;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int insertApplyInfoAndDetails(TmTask task) {
|
||||
int res = 0;
|
||||
if (task.getLeaseApplyInfo() != null) {
|
||||
if (CollUtil.isEmpty(task.getLeaseApplyDetails())) {
|
||||
return res;
|
||||
}
|
||||
if (StringUtils.isNull(task.getLeaseApplyInfo())) {
|
||||
return res;
|
||||
}
|
||||
|
||||
// 获取任务编号
|
||||
String taskId = task.getId();
|
||||
List<List<LeaseApplyDetails>> deviceByCompanyList = CollUtil.groupByField(task.getLeaseApplyDetails(), "companyId");
|
||||
// 对拆分后的集合进行each遍历
|
||||
for (List<LeaseApplyDetails> leaseApplyDetailsList : deviceByCompanyList) {
|
||||
// 判断拆分后的集合内是否有数据
|
||||
if (CollUtil.isNotEmpty(leaseApplyDetailsList)) {
|
||||
// 对领料任务表的对象做数据处理
|
||||
LeaseApplyInfo leaseApplyInfo = task.getLeaseApplyInfo();
|
||||
leaseApplyInfo.setCode(task.getCode()); // 创建领料单号
|
||||
leaseApplyInfo.setTaskId(Integer.valueOf(taskId)); // 设置任务ID
|
||||
leaseApplyInfo.setCompanyId(leaseApplyDetailsList.get(0).getCompanyId()); // 设置设备所属分公司,用于交给哪家审核
|
||||
leaseApplyInfo.setType("2"); // 设置审批层级,先固定2层,后期根据接口传入Type区分来源设定
|
||||
|
||||
// 创建领料任务,返回领料任务编号
|
||||
boolean addLeaseTaskResult = workSiteDirectManageMapper.insertSelective(leaseApplyInfo) > 0;
|
||||
// 领料任务创建完成,进行领料任务明细插入
|
||||
if (addLeaseTaskResult) {
|
||||
// 领料任务编号
|
||||
Integer leaseTaskId = leaseApplyInfo.getId();
|
||||
ArrayList<Integer> ids = new ArrayList();
|
||||
if (StringUtils.isNotNull(leaseTaskId)) {
|
||||
for (LeaseApplyDetails leaseApplyDetails : leaseApplyDetailsList) {
|
||||
leaseApplyDetails.setParenntId(leaseTaskId); // 设置领料任务ID
|
||||
ids.add(leaseApplyDetails.getId());
|
||||
}
|
||||
// 插入领料任务明细
|
||||
boolean addLeaseTaskDetailsResult = workSiteDirectManageMapper.batchInsert(leaseApplyDetailsList) > 0;
|
||||
if (addLeaseTaskDetailsResult) {
|
||||
System.out.println("领料任务创建成功");
|
||||
workSiteDirectManageMapper.batchDel(ids);
|
||||
} else {
|
||||
return res;
|
||||
}
|
||||
} else {
|
||||
return res;
|
||||
}
|
||||
} else {
|
||||
return res;
|
||||
}
|
||||
}
|
||||
}
|
||||
res = 1;
|
||||
return res;
|
||||
} else {
|
||||
return res;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -93,9 +93,140 @@
|
|||
insert into direct_apply_info(direct_id,type_id,ma_id,direct_num)
|
||||
values (#{directId},#{typeId},#{maId}, #{directNum})
|
||||
</insert>
|
||||
<insert id="insertSelective" keyColumn="id" keyProperty="id" parameterType="com.bonus.sgzb.material.domain.LeaseApplyInfo" useGeneratedKeys="true">
|
||||
<!--@mbg.generated-->
|
||||
insert into lease_apply_info
|
||||
<trim prefix="(" suffix=")" suffixOverrides=",">
|
||||
<if test="code != null">
|
||||
code,
|
||||
</if>
|
||||
<if test="taskId != null">
|
||||
task_id,
|
||||
</if>
|
||||
<if test="leasePerson != null and leasePerson != ''">
|
||||
lease_person,
|
||||
</if>
|
||||
<if test="phone != null and phone != ''">
|
||||
phone,
|
||||
</if>
|
||||
<if test="type != null and type != ''">
|
||||
`type`,
|
||||
</if>
|
||||
<if test="companyAuditBy != null">
|
||||
company_audit_by,
|
||||
</if>
|
||||
<if test="companyAuditTime != null and companyAuditTime != ''">
|
||||
company_audit_time,
|
||||
</if>
|
||||
<if test="companyAuditRemark != null and companyAuditRemark != ''">
|
||||
company_audit_remark,
|
||||
</if>
|
||||
<if test="deptAuditBy != null">
|
||||
dept_audit_by,
|
||||
</if>
|
||||
<if test="deptAuditTime != null and deptAuditTime != ''">
|
||||
dept_audit_time,
|
||||
</if>
|
||||
<if test="deptAuditRemark != null and deptAuditRemark != ''">
|
||||
dept_audit_remark,
|
||||
</if>
|
||||
<if test="createBy != null and createBy != ''">
|
||||
create_by,
|
||||
</if>
|
||||
<if test="createTime != null">
|
||||
create_time,
|
||||
</if>
|
||||
<if test="updateBy != null and updateBy != ''">
|
||||
update_by,
|
||||
</if>
|
||||
<if test="updateTime != null">
|
||||
update_time,
|
||||
</if>
|
||||
<if test="remark != null and remark != ''">
|
||||
remark,
|
||||
</if>
|
||||
<if test="companyId != null">
|
||||
company_id,
|
||||
</if>
|
||||
</trim>
|
||||
<trim prefix="values (" suffix=")" suffixOverrides=",">
|
||||
<if test="code != null">
|
||||
#{code,jdbcType=VARCHAR},
|
||||
</if>
|
||||
<if test="taskId != null">
|
||||
#{taskId,jdbcType=INTEGER},
|
||||
</if>
|
||||
<if test="leasePerson != null and leasePerson != ''">
|
||||
#{leasePerson,jdbcType=VARCHAR},
|
||||
</if>
|
||||
<if test="phone != null and phone != ''">
|
||||
#{phone,jdbcType=VARCHAR},
|
||||
</if>
|
||||
<if test="type != null and type != ''">
|
||||
#{type,jdbcType=VARCHAR},
|
||||
</if>
|
||||
<if test="companyAuditBy != null">
|
||||
#{companyAuditBy,jdbcType=INTEGER},
|
||||
</if>
|
||||
<if test="companyAuditTime != null and companyAuditTime != ''">
|
||||
#{companyAuditTime,jdbcType=VARCHAR},
|
||||
</if>
|
||||
<if test="companyAuditRemark != null and companyAuditRemark != ''">
|
||||
#{companyAuditRemark,jdbcType=VARCHAR},
|
||||
</if>
|
||||
<if test="deptAuditBy != null">
|
||||
#{deptAuditBy,jdbcType=INTEGER},
|
||||
</if>
|
||||
<if test="deptAuditTime != null and deptAuditTime != ''">
|
||||
#{deptAuditTime,jdbcType=VARCHAR},
|
||||
</if>
|
||||
<if test="deptAuditRemark != null and deptAuditRemark != ''">
|
||||
#{deptAuditRemark,jdbcType=VARCHAR},
|
||||
</if>
|
||||
<if test="createBy != null and createBy != ''">
|
||||
#{createBy,jdbcType=VARCHAR},
|
||||
</if>
|
||||
<if test="createTime != null">
|
||||
#{createTime,jdbcType=TIMESTAMP},
|
||||
</if>
|
||||
<if test="updateBy != null and updateBy != ''">
|
||||
#{updateBy,jdbcType=VARCHAR},
|
||||
</if>
|
||||
<if test="updateTime != null">
|
||||
#{updateTime,jdbcType=TIMESTAMP},
|
||||
</if>
|
||||
<if test="remark != null and remark != ''">
|
||||
#{remark,jdbcType=VARCHAR},
|
||||
</if>
|
||||
<if test="companyId != null">
|
||||
#{companyId,jdbcType=INTEGER},
|
||||
</if>
|
||||
</trim>
|
||||
</insert>
|
||||
<insert id="batchInsert" keyColumn="id" keyProperty="id" parameterType="map" useGeneratedKeys="true">
|
||||
<!--@mbg.generated-->
|
||||
insert into lease_apply_details
|
||||
(parennt_id, type_id, pre_num, al_num, `status`, create_by, create_time, update_by,
|
||||
update_time, remark, company_id)
|
||||
values
|
||||
<foreach collection="list" item="item" separator=",">
|
||||
(#{item.parenntId,jdbcType=INTEGER}, #{item.typeId,jdbcType=INTEGER}, #{item.preNum,jdbcType=FLOAT},
|
||||
#{item.alNum,jdbcType=FLOAT}, #{item.status,jdbcType=VARCHAR}, #{item.createBy,jdbcType=VARCHAR},
|
||||
NOW(), #{item.updateBy,jdbcType=VARCHAR}, NOW(),
|
||||
#{item.remark,jdbcType=VARCHAR}, #{item.companyId,jdbcType=INTEGER})
|
||||
</foreach>
|
||||
</insert>
|
||||
<update id="refuseDirectApplyInfo">
|
||||
update direct_apply_info set status = #{status} where id = #{id}
|
||||
</update>
|
||||
<delete id="batchDel">
|
||||
delete
|
||||
from lease_user_book
|
||||
where id in
|
||||
<foreach close=")" collection="ids" item="id" open="(" separator=", ">
|
||||
#{id}
|
||||
</foreach>
|
||||
</delete>
|
||||
|
||||
<select id="getUseringData" resultType="com.bonus.sgzb.base.api.domain.SltAgreementInfo">
|
||||
SELECT
|
||||
|
|
@ -116,4 +247,7 @@
|
|||
<select id="getList" resultType="com.bonus.sgzb.base.api.domain.DirectApplyInfo">
|
||||
select * from direct_apply_info
|
||||
</select>
|
||||
<select id="getDirectApplyInfoById" resultType="com.bonus.sgzb.base.api.domain.DirectApplyInfo">
|
||||
select * from direct_apply_info where id = #{id}
|
||||
</select>
|
||||
</mapper>
|
||||
Loading…
Reference in New Issue