Forráskód Böngészése

Merge remote-tracking branch 'origin/master'

周箭河 5 éve
szülő
commit
e6f71d6c3f
14 módosított fájl, 402 hozzáadás és 3 törlés
  1. 54 0
      edu-user/edu-user-server/src/main/java/com/keao/edu/user/controller/ExamManualLedgerController.java
  2. 7 1
      edu-user/edu-user-server/src/main/java/com/keao/edu/user/controller/ExamOrganizationRelationController.java
  3. 9 0
      edu-user/edu-user-server/src/main/java/com/keao/edu/user/dao/ExamManualLedgerDao.java
  4. 8 0
      edu-user/edu-user-server/src/main/java/com/keao/edu/user/dao/OrganizationDao.java
  5. 113 0
      edu-user/edu-user-server/src/main/java/com/keao/edu/user/entity/ExamManualLedger.java
  6. 10 0
      edu-user/edu-user-server/src/main/java/com/keao/edu/user/entity/ExaminationBasic.java
  7. 20 0
      edu-user/edu-user-server/src/main/java/com/keao/edu/user/page/ExamManualLedgerQueryInfo.java
  8. 9 0
      edu-user/edu-user-server/src/main/java/com/keao/edu/user/service/ExamManualLedgerService.java
  9. 10 0
      edu-user/edu-user-server/src/main/java/com/keao/edu/user/service/ExamOrganizationRelationService.java
  10. 23 0
      edu-user/edu-user-server/src/main/java/com/keao/edu/user/service/impl/ExamManualLedgerServiceImpl.java
  11. 39 0
      edu-user/edu-user-server/src/main/java/com/keao/edu/user/service/impl/ExamOrganizationRelationServiceImpl.java
  12. 85 0
      edu-user/edu-user-server/src/main/resources/config/mybatis/ExamManualLedgerMapper.xml
  13. 9 2
      edu-user/edu-user-server/src/main/resources/config/mybatis/ExaminationBasicMapper.xml
  14. 6 0
      edu-user/edu-user-server/src/main/resources/config/mybatis/OrganizationMapper.xml

+ 54 - 0
edu-user/edu-user-server/src/main/java/com/keao/edu/user/controller/ExamManualLedgerController.java

@@ -0,0 +1,54 @@
+package com.keao.edu.user.controller;
+
+import com.keao.edu.common.controller.BaseController;
+import com.keao.edu.common.entity.HttpResponseResult;
+import com.keao.edu.common.page.PageInfo;
+import com.keao.edu.common.tenant.TenantContextHolder;
+import com.keao.edu.user.entity.ExamManualLedger;
+import com.keao.edu.user.page.ExamManualLedgerQueryInfo;
+import com.keao.edu.user.service.ExamManualLedgerService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+/**
+ * @Author Joburgess
+ * @Date 2020.07.07
+ */
+@RestController
+@RequestMapping("examManualLedger")
+@Api(tags = "指出记录服务")
+public class ExamManualLedgerController extends BaseController {
+
+    @Autowired
+    private ExamManualLedgerService examManualLedgerService;
+
+    @ApiOperation("分页查询")
+    @GetMapping(value = "/list")
+    public HttpResponseResult<PageInfo<ExamManualLedger>> getList(ExamManualLedgerQueryInfo queryInfo) {
+        return succeed(examManualLedgerService.queryPage(queryInfo));
+    }
+
+    @ApiOperation("新增考点")
+    @PostMapping(value = "/add")
+    public HttpResponseResult add(@RequestBody ExamManualLedger examManualLedger) {
+        examManualLedger.setTenantId(TenantContextHolder.getTenantId().toString());
+        examManualLedgerService.insert(examManualLedger);
+        return succeed();
+    }
+
+    @ApiOperation("更新考点")
+    @PostMapping(value = "/update")
+    public HttpResponseResult update(@RequestBody ExamManualLedger examManualLedger) {
+        examManualLedgerService.update(examManualLedger);
+        return succeed();
+    }
+
+    @ApiOperation("删除考点")
+    @PostMapping(value = "/del")
+    public HttpResponseResult add(Long id) {
+        return succeed(examManualLedgerService.delete(id));
+    }
+
+}

+ 7 - 1
edu-user/edu-user-server/src/main/java/com/keao/edu/user/controller/ExamOrganizationRelationController.java

@@ -5,7 +5,6 @@ import com.keao.edu.auth.api.entity.SysUser;
 import com.keao.edu.common.controller.BaseController;
 import com.keao.edu.common.entity.HttpResponseResult;
 import com.keao.edu.common.page.PageInfo;
-import com.keao.edu.user.dao.EmployeeDao;
 import com.keao.edu.user.entity.Employee;
 import com.keao.edu.user.entity.ExamOrganizationRelation;
 import com.keao.edu.user.entity.Organization;
@@ -52,6 +51,13 @@ public class ExamOrganizationRelationController extends BaseController {
         return succeed(examOrganizationRelationService.queryExamOrgans(queryInfo));
     }
 
+    @ApiOperation("添加合作单位")
+    @PostMapping(value = "/addExamOrganizations")
+    public HttpResponseResult addExamOrganizations(Integer examId, String organIds){
+        examOrganizationRelationService.addExamOrganizations(examId, organIds);
+        return succeed();
+    }
+
     @ApiOperation("更新考级项目与合作单位关联信息")
     @PostMapping(value = "/updateExamOrganizationRelation")
     public HttpResponseResult updateExamOrganizationRelation(@RequestBody ExamOrganizationRelation examOrganizationRelation){

+ 9 - 0
edu-user/edu-user-server/src/main/java/com/keao/edu/user/dao/ExamManualLedgerDao.java

@@ -0,0 +1,9 @@
+package com.keao.edu.user.dao;
+
+import com.keao.edu.common.dal.BaseDAO;
+import com.keao.edu.user.entity.ExamManualLedger;
+
+public interface ExamManualLedgerDao extends BaseDAO<Long, ExamManualLedger> {
+
+	
+}

+ 8 - 0
edu-user/edu-user-server/src/main/java/com/keao/edu/user/dao/OrganizationDao.java

@@ -45,4 +45,12 @@ public interface OrganizationDao extends BaseDAO<Integer, Organization> {
      */
     List<Integer> getNextLevelOrganIds(@Param("organId") Integer organId);
 
+    /**
+     * @describe 获取指定的合作单位
+     * @author Joburgess
+     * @date 2020.07.07
+     * @param organIds:
+     * @return java.util.List<com.keao.edu.user.entity.Organization>
+     */
+    List<Organization> getOrgans(@Param("organIds") List<Integer> organIds);
 }

+ 113 - 0
edu-user/edu-user-server/src/main/java/com/keao/edu/user/entity/ExamManualLedger.java

@@ -0,0 +1,113 @@
+package com.keao.edu.user.entity;
+
+import org.apache.commons.lang3.builder.ToStringBuilder;
+
+/**
+ * 对应数据库表(exam_manual_ledger):
+ */
+public class ExamManualLedger {
+
+	/**  */
+	private Long id;
+	
+	/**  */
+	private Integer examinationBasicId;
+	
+	/** 转账方向(收/支) */
+	private String transDirection;
+	
+	/** 交易金额 */
+	private java.math.BigDecimal amount;
+	
+	/** 交易时间 */
+	private java.util.Date transTime;
+	
+	/**  */
+	private String memo;
+	
+	/** 操作人编号 */
+	private Integer operatorUserId;
+
+	private String tenantId;
+	
+	/**  */
+	private java.util.Date createTime;
+	
+	public void setId(Long id){
+		this.id = id;
+	}
+	
+	public Long getId(){
+		return this.id;
+	}
+			
+	public void setExaminationBasicId(Integer examinationBasicId){
+		this.examinationBasicId = examinationBasicId;
+	}
+	
+	public Integer getExaminationBasicId(){
+		return this.examinationBasicId;
+	}
+			
+	public void setTransDirection(String transDirection){
+		this.transDirection = transDirection;
+	}
+	
+	public String getTransDirection(){
+		return this.transDirection;
+	}
+			
+	public void setAmount(java.math.BigDecimal amount){
+		this.amount = amount;
+	}
+	
+	public java.math.BigDecimal getAmount(){
+		return this.amount;
+	}
+			
+	public void setTransTime(java.util.Date transTime){
+		this.transTime = transTime;
+	}
+	
+	public java.util.Date getTransTime(){
+		return this.transTime;
+	}
+			
+	public void setMemo(String memo){
+		this.memo = memo;
+	}
+	
+	public String getMemo(){
+		return this.memo;
+	}
+			
+	public void setOperatorUserId(Integer operatorUserId){
+		this.operatorUserId = operatorUserId;
+	}
+	
+	public Integer getOperatorUserId(){
+		return this.operatorUserId;
+	}
+
+	public String getTenantId() {
+		return tenantId;
+	}
+
+	public void setTenantId(String tenantId) {
+		this.tenantId = tenantId;
+	}
+
+	public void setCreateTime(java.util.Date createTime){
+		this.createTime = createTime;
+	}
+	
+	public java.util.Date getCreateTime(){
+		return this.createTime;
+	}
+			
+	@Override
+	public String toString() {
+		return ToStringBuilder.reflectionToString(this);
+	}
+
+}

+ 10 - 0
edu-user/edu-user-server/src/main/java/com/keao/edu/user/entity/ExaminationBasic.java

@@ -54,6 +54,8 @@ public class ExaminationBasic {
 	@ApiModelProperty(value = "考试地址")
 	private List<ExamLocation> examLocations;
 
+	private Integer creatorId;
+
 	private java.util.Date createTime;
 
 	private java.util.Date updateTime;
@@ -196,6 +198,14 @@ public class ExaminationBasic {
 		return this.tenantId;
 	}
 
+	public Integer getCreatorId() {
+		return creatorId;
+	}
+
+	public void setCreatorId(Integer creatorId) {
+		this.creatorId = creatorId;
+	}
+
 	public List<ExamLocation> getExamLocations() {
 		return examLocations;
 	}

+ 20 - 0
edu-user/edu-user-server/src/main/java/com/keao/edu/user/page/ExamManualLedgerQueryInfo.java

@@ -0,0 +1,20 @@
+package com.keao.edu.user.page;
+
+import com.keao.edu.common.page.QueryInfo;
+
+/**
+ * @Author Joburgess
+ * @Date 2020.07.07
+ */
+public class ExamManualLedgerQueryInfo extends QueryInfo {
+
+    private Integer examId;
+
+    public Integer getExamId() {
+        return examId;
+    }
+
+    public void setExamId(Integer examId) {
+        this.examId = examId;
+    }
+}

+ 9 - 0
edu-user/edu-user-server/src/main/java/com/keao/edu/user/service/ExamManualLedgerService.java

@@ -0,0 +1,9 @@
+package com.keao.edu.user.service;
+
+
+import com.keao.edu.common.service.BaseService;
+import com.keao.edu.user.entity.ExamManualLedger;
+
+public interface ExamManualLedgerService extends BaseService<Long, ExamManualLedger> {
+
+}

+ 10 - 0
edu-user/edu-user-server/src/main/java/com/keao/edu/user/service/ExamOrganizationRelationService.java

@@ -20,6 +20,16 @@ public interface ExamOrganizationRelationService extends BaseService<Long, ExamO
     PageInfo<ExamOrganizationRelation> queryExamOrgans(ExamOrganizationRelationQueryInfo queryInfo);
 
     /**
+     * @describe 添加单位
+     * @author Joburgess
+     * @date 2020.07.07
+     * @param examId:
+     * @param orgainIdsStr:
+     * @return void
+     */
+    void addExamOrganizations(Integer examId, String orgainIdsStr);
+
+    /**
      * @describe 更新考级项目与合作单位关联信息
      * @author Joburgess
      * @date 2020.06.18

+ 23 - 0
edu-user/edu-user-server/src/main/java/com/keao/edu/user/service/impl/ExamManualLedgerServiceImpl.java

@@ -0,0 +1,23 @@
+package com.keao.edu.user.service.impl;
+
+
+import com.keao.edu.common.dal.BaseDAO;
+import com.keao.edu.common.service.impl.BaseServiceImpl;
+import com.keao.edu.user.dao.ExamManualLedgerDao;
+import com.keao.edu.user.entity.ExamManualLedger;
+import com.keao.edu.user.service.ExamManualLedgerService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+@Service
+public class ExamManualLedgerServiceImpl extends BaseServiceImpl<Long, ExamManualLedger> implements ExamManualLedgerService {
+	
+	@Autowired
+	private ExamManualLedgerDao examManualLedgerDao;
+
+	@Override
+	public BaseDAO<Long, ExamManualLedger> getDAO() {
+		return examManualLedgerDao;
+	}
+	
+}

+ 39 - 0
edu-user/edu-user-server/src/main/java/com/keao/edu/user/service/impl/ExamOrganizationRelationServiceImpl.java

@@ -15,6 +15,7 @@ import com.keao.edu.common.tenant.TenantContextHolder;
 import com.keao.edu.thirdparty.message.MessageSenderPluginContext;
 import com.keao.edu.user.dao.ExamOrganizationRelationDao;
 import com.keao.edu.user.dao.ExaminationBasicDao;
+import com.keao.edu.user.dao.OrganizationDao;
 import com.keao.edu.user.dao.TeacherDao;
 import com.keao.edu.user.entity.ExamOrganizationRelation;
 import com.keao.edu.user.entity.ExaminationBasic;
@@ -50,6 +51,8 @@ public class ExamOrganizationRelationServiceImpl extends BaseServiceImpl<Long, E
 	@Autowired
 	private OrganizationService organizationService;
 	@Autowired
+	private OrganizationDao organizationDao;
+	@Autowired
 	private ShortUrlService shortUrlService;
 	@Autowired
 	private SysUserFeignService sysUserFeignService;
@@ -94,6 +97,42 @@ public class ExamOrganizationRelationServiceImpl extends BaseServiceImpl<Long, E
 	}
 
 	@Override
+	public void addExamOrganizations(Integer examId, String orgainIdsStr) {
+		if(Objects.isNull(examId)){
+			throw new BizException("请指定考级项目");
+		}
+		if(StringUtils.isBlank(orgainIdsStr)){
+			throw new BizException("请指定合作单位");
+		}
+		Set<Integer> organIdsWithExam = examOrganizationRelationDao.getOrganIdsWithExam(examId);
+		List<Integer> organIds = Arrays.stream(orgainIdsStr.split(",")).map(e -> Integer.valueOf(e)).collect(Collectors.toList());
+		List<Organization> organs = organizationDao.getOrgans(organIds);
+		if(organs.size()!=organIds.size()){
+			throw new BizException("合作单位信息错误");
+		}
+		Map<Integer, Organization> idOrganMap = organs.stream().collect(Collectors.toMap(Organization::getId, o -> o));
+		List<ExamOrganizationRelation> organizationRelations=new ArrayList<>();
+		for (Integer organId : organIds) {
+			if(organIdsWithExam.contains(organId)){
+				throw new BizException("合作单位冲突");
+			}
+			ExamOrganizationRelation og = new ExamOrganizationRelation();
+			og.setTenantId(TenantContextHolder.getTenantId().toString());
+			og.setExaminationBasicId(examId);
+			Organization organization = idOrganMap.get(og.getOrganId());
+			if(Objects.isNull(organization)){
+				throw new BizException("合作单位不存在");
+			}
+			og.setSettlementType(organization.getSettlementType());
+			og.setShareProfitAmount(organization.getShareProfitAmount());
+			og.setTotalRegistrationStudentNum(BigDecimal.ZERO.intValue());
+			og.setTotalPaymentAmount(BigDecimal.ZERO);
+			organizationRelations.add(og);
+		}
+		examOrganizationRelationDao.batchInsert(organizationRelations);
+	}
+
+	@Override
 	@Transactional(rollbackFor = Exception.class, isolation = Isolation.READ_COMMITTED)
 	public void updateExamOrganizationRelation(ExamOrganizationRelation examOrganizationRelation) {
 		if(Objects.isNull(examOrganizationRelation.getExaminationBasicId())){

+ 85 - 0
edu-user/edu-user-server/src/main/resources/config/mybatis/ExamManualLedgerMapper.xml

@@ -0,0 +1,85 @@
+<?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.keao.edu.user.dao.ExamManualLedgerDao">
+	
+	<resultMap type="com.keao.edu.user.entity.ExamManualLedger" id="ExamManualLedger">
+		<result column="id_" property="id" />
+		<result column="examination_basic_id_" property="examinationBasicId" />
+		<result column="trans_direction_" property="transDirection" />
+		<result column="amount_" property="amount" />
+		<result column="trans_time_" property="transTime" />
+		<result column="memo_" property="memo" />
+		<result column="operator_user_id_" property="operatorUserId" />
+		<result column="tenant_id_" property="tenantId" />
+		<result column="create_time_" property="createTime" />
+	</resultMap>
+	
+	<!-- 根据主键查询一条记录 -->
+	<select id="get" resultMap="ExamManualLedger" >
+		SELECT * FROM exam_manual_ledger WHERE id_ = #{id} 
+	</select>
+	
+	<!-- 全查询 -->
+	<select id="findAll" resultMap="ExamManualLedger">
+		SELECT * FROM exam_manual_ledger ORDER BY id_
+	</select>
+	
+	<!-- 向数据库增加一条记录 -->
+	<insert id="insert" parameterType="com.keao.edu.user.entity.ExamManualLedger" useGeneratedKeys="true" keyColumn="id" keyProperty="id">
+		<!--
+		<selectKey resultClass="int" keyProperty="id" > 
+		SELECT SEQ_WSDEFINITION_ID.nextval AS ID FROM DUAL 
+		</selectKey>
+		-->
+		INSERT INTO exam_manual_ledger (examination_basic_id_,trans_direction_,amount_,trans_time_,memo_,operator_user_id_,tenant_id_,create_time_)
+		VALUES(#{examinationBasicId},#{transDirection},#{amount},#{transTime},#{memo},#{operatorUserId},#{tenantId},NOW())
+	</insert>
+	
+	<!-- 根据主键查询一条记录 -->
+	<update id="update" parameterType="com.keao.edu.user.entity.ExamManualLedger">
+		UPDATE exam_manual_ledger
+		<set>
+			<if test="examinationBasicId != null">
+				examination_basic_id_ = #{examinationBasicId},
+			</if>
+			<if test="transDirection != null">
+				trans_direction_ = #{transDirection},
+			</if>
+			<if test="amount != null">
+				amount_ = #{amount},
+			</if>
+			<if test="transTime != null">
+				trans_time_ = #{transTime},
+			</if>
+			<if test="memo != null">
+				memo_ = #{memo},
+			</if>
+			<if test="operatorUserId != null">
+				operator_user_id_ = #{operatorUserId},
+			</if>
+		</set> WHERE id_ = #{id}
+	</update>
+	
+	<!-- 根据主键删除一条记录 -->
+	<delete id="delete" >
+		DELETE FROM exam_manual_ledger WHERE id_ = #{id} 
+	</delete>
+	
+	<!-- 分页查询 -->
+	<select id="queryPage" resultMap="ExamManualLedger" parameterType="map">
+		SELECT * FROM exam_manual_ledger
+		WHERE examination_basic_id_=#{examId}
+		ORDER BY id_
+		<include refid="global.limit"/>
+	</select>
+	
+	<!-- 查询当前表的总记录数 -->
+	<select id="queryCount" resultType="int">
+		SELECT COUNT(*) FROM exam_manual_ledger
+		WHERE examination_basic_id_=#{examId}
+	</select>
+</mapper>

+ 9 - 2
edu-user/edu-user-server/src/main/resources/config/mybatis/ExaminationBasicMapper.xml

@@ -23,6 +23,7 @@
 		<result column="update_time_" property="updateTime" />
 		<result column="tenant_id_" property="tenantId" />
 		<result column="memo_" property="memo" />
+		<result column="creator_id_" property="creatorId"/>
 	</resultMap>
 
 	<resultMap id="ExaminationBasicDto" type="com.keao.edu.user.dto.ExaminationBasicDto" extends="ExaminationBasic">
@@ -44,8 +45,8 @@
 	
 	<!-- 向数据库增加一条记录 -->
 	<insert id="insert" parameterType="com.keao.edu.user.entity.ExaminationBasic" useGeneratedKeys="true" keyColumn="id" keyProperty="id">
-		INSERT INTO examination_basic (id_,name_,exam_mode_,exam_location_id_list_,status_,enroll_start_time_,enroll_end_time_,expect_exam_start_time_,expect_exam_end_time_,poster_title_,poster_profile_,poster_background_img_,create_time_,update_time_,tenant_id_,memo_)
-		VALUES(#{id},#{name},#{examMode,typeHandler=com.keao.edu.common.dal.CustomEnumTypeHandler},#{examLocationIdList},#{status,typeHandler=com.keao.edu.common.dal.CustomEnumTypeHandler},#{enrollStartTime},#{enrollEndTime},#{expectExamStartTime},#{expectExamEndTime},#{posterTitle},#{posterProfile},#{posterBackgroundImg},NOW(),NOW(),#{tenantId},#{memo})
+		INSERT INTO examination_basic (id_,name_,exam_mode_,exam_location_id_list_,status_,enroll_start_time_,enroll_end_time_,expect_exam_start_time_,expect_exam_end_time_,poster_title_,poster_profile_,poster_background_img_,creator_id_,create_time_,update_time_,tenant_id_,memo_)
+		VALUES(#{id},#{name},#{examMode,typeHandler=com.keao.edu.common.dal.CustomEnumTypeHandler},#{examLocationIdList},#{status,typeHandler=com.keao.edu.common.dal.CustomEnumTypeHandler},#{enrollStartTime},#{enrollEndTime},#{expectExamStartTime},#{expectExamEndTime},#{posterTitle},#{posterProfile},#{posterBackgroundImg},#{creatorId},NOW(),NOW(),#{tenantId},#{memo})
 	</insert>
 
 	<update id="update" parameterType="com.keao.edu.user.entity.ExamOrganizationRelation">
@@ -90,6 +91,9 @@
 			<if test="memo!=null">
 				memo_=#{memo},
 			</if>
+			<if test="creatorId!=null">
+				creator_id_=#{creatorId},
+			</if>
 			update_time_ = NOW()
 		</set> WHERE id_ = #{id}
 	</update>
@@ -137,6 +141,9 @@
 				<if test="memo!=null">
 					memo_=#{memo},
 				</if>
+				<if test="creatorId!=null">
+					creator_id_=#{creatorId},
+				</if>
 				update_time_ = NOW()
 			</set> WHERE id_ = #{exam.id}
 		</foreach>

+ 6 - 0
edu-user/edu-user-server/src/main/resources/config/mybatis/OrganizationMapper.xml

@@ -136,4 +136,10 @@
 	<select id="getNextLevelOrganIds" resultType="int">
 		SELECT id_ FROM organization WHERE parent_organ_id_ =#{organId};
 	</select>
+    <select id="getOrgans" resultMap="Organization">
+		SELECT * FROM organization WHERE id_ IN
+		<foreach collection="organIds" item="organId" separator="," open="(" close=")">
+			#{organId}
+		</foreach>
+	</select>
 </mapper>