jz.kai 5 rokov pred
rodič
commit
20a67de8f7

+ 1 - 0
common/src/main/java/com/jpsoft/campus/modules/base/dao/AdjustDetailDAO.java

@@ -16,4 +16,5 @@ public interface AdjustDetailDAO {
 	int delete(String id);
 	List<AdjustDetail> list();
 	List<AdjustDetail> search(Map<String, Object> searchParams, List<Sort> sortList);
+	List<AdjustDetailDAO> pageSearchDTO(Map<String, Object> searchParams, List<Sort> sortList);
 }

+ 26 - 0
common/src/main/java/com/jpsoft/campus/modules/base/dto/AdjustDetailDTO.java

@@ -0,0 +1,26 @@
+package com.jpsoft.campus.modules.base.dto;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.io.Serializable;
+
+@Data
+public class AdjustDetailDTO implements Serializable {
+    @ApiModelProperty(value = "编号")
+    private String id;
+    @ApiModelProperty(value = "学生姓名")
+    private String studentName;
+    @ApiModelProperty(value = "学生证件类型")
+    private String studentCardType;
+    @ApiModelProperty(value = "学生证件号码")
+    private String studentIdCard;
+    @ApiModelProperty(value = "报名类型")
+    private String typeName;
+    @ApiModelProperty(value = "报名学校")
+    private String schoolName;
+    @ApiModelProperty(value = "报名状态")
+    private String statusName;
+    @ApiModelProperty(value = "预录取学校")
+    private String offerName;
+}

+ 2 - 0
common/src/main/java/com/jpsoft/campus/modules/base/service/AdjustDetailService.java

@@ -3,6 +3,7 @@ package com.jpsoft.campus.modules.base.service;
 import java.util.List;
 import java.util.Map;
 import com.github.pagehelper.Page;
+import com.jpsoft.campus.modules.base.dto.AdjustDetailDTO;
 import com.jpsoft.campus.modules.base.entity.AdjustDetail;
 import com.jpsoft.campus.modules.common.dto.Sort;
 
@@ -14,4 +15,5 @@ public interface AdjustDetailService {
 	int delete(String id);
 	List<AdjustDetail> list();
 	Page<AdjustDetail> pageSearch(Map<String, Object> searchParams, int pageNum, int pageSize, boolean count, List<Sort> sortList);
+	Page<AdjustDetailDTO> pageSearchDTO(Map<String, Object> searchParams, int pageNum, int pageSize, boolean count, List<Sort> sortList);
 }

+ 10 - 0
common/src/main/java/com/jpsoft/campus/modules/base/service/impl/AdjustDetailServiceImpl.java

@@ -6,6 +6,7 @@ import java.util.UUID;
 import javax.annotation.Resource;
 
 import com.jpsoft.campus.modules.base.dao.AdjustDetailDAO;
+import com.jpsoft.campus.modules.base.dto.AdjustDetailDTO;
 import com.jpsoft.campus.modules.base.entity.AdjustDetail;
 import com.jpsoft.campus.modules.base.service.AdjustDetailService;
 import org.springframework.stereotype.Component;
@@ -68,4 +69,13 @@ public class AdjustDetailServiceImpl implements AdjustDetailService {
         
         return page;
 	}
+
+	@Override
+	public Page<AdjustDetailDTO> pageSearchDTO(Map<String, Object> searchParams, int pageNumber, int pageSize, boolean count, List<Sort> sortList) {
+		Page<AdjustDetailDTO> page = PageHelper.startPage(pageNumber,pageSize,count).doSelectPage(()->{
+			adjustDetailDAO.pageSearchDTO(searchParams,sortList);
+		});
+
+		return page;
+	}
 }

+ 33 - 0
common/src/main/resources/mapper/base/AdjustDetail.xml

@@ -98,4 +98,37 @@ id_,application_id,student_id,person_id,school_id,del_flag,create_by,create_time
 	        ${sort.name} ${sort.order}
 	 	</foreach>
 	</select>
+	<resultMap id="AdjustDetailDTOMap" type="com.jpsoft.campus.modules.base.dto.AdjustDetailDTO">
+		<id property="id" column="id_" />
+		<result property="studentName" column="studentName" />
+		<result property="studentCardType" column="studentCardType" />
+		<result property="studentIdCard" column="studentIdCard" />
+		<result property="typeName" column="typeName" />
+		<result property="schoolName" column="schoolName" />
+		<result property="statusName" column="statusName" />
+		<result property="offerName" column="offerName" />
+	</resultMap>
+	<select id="pageSearchDTO" parameterType="hashmap" resultMap="AdjustDetailDTOMap">
+		<![CDATA[
+			SELECT a.id_,b.name_ AS studentName,g.name_ AS studentCardType,b.id_card AS studentIdCard,d.name_ AS typeName,e.name_ AS schoolName,h.name_ AS statusName,f.name_ AS offerName FROM base_adjust_detail a
+			LEFT JOIN base_student_info b ON a.student_id = b.id_
+			LEFT JOIN base_application_primary c ON a.application_id = c.id_
+			LEFT JOIN sys_data_dictionary d ON c.category_id = d.id_
+			LEFT JOIN base_school_info e ON a.school_id = e.id_
+			LEFT JOIN base_school_info f ON c.offer_id = f.id_
+			LEFT JOIN sys_data_dictionary g ON (b.card_type = g.value_ AND g.parent_id = '1f0a58b9-5338-47ef-9233-a4539cc00010')
+			LEFT JOIN sys_data_dictionary h ON (c.status_ = h.value_ AND h.parent_id = '13e5b15f-8d10-44af-99f4-f05c9afd64eb')
+		]]>
+		<where>
+			<if test="searchParams.schoolId != null">
+				and c.school_id = #{searchParams.schoolId}
+			</if>
+			<if test="searchParams.idCardOrName != null">
+				and (b.id_card = #{searchParams.idCardOrName} or b.name_ = #{searchParams.idCardOrName})
+			</if>
+		</where>
+		<foreach item="sort" collection="sortList"  open="order by" separator=",">
+			${sort.name} ${sort.order}
+		</foreach>
+	</select>
 </mapper>

+ 58 - 36
web/src/main/java/com/jpsoft/campus/modules/base/controller/AdjustDetailController.java

@@ -1,8 +1,11 @@
 package com.jpsoft.campus.modules.base.controller;
 
 import com.github.pagehelper.Page;
+import com.jpsoft.campus.modules.base.dto.AdjustDetailDTO;
 import com.jpsoft.campus.modules.base.entity.AdjustDetail;
+import com.jpsoft.campus.modules.base.entity.ApplicationPrimary;
 import com.jpsoft.campus.modules.base.service.AdjustDetailService;
+import com.jpsoft.campus.modules.base.service.ApplicationPrimaryService;
 import com.jpsoft.campus.modules.common.dto.MessageResult;
 import com.jpsoft.campus.modules.common.utils.PojoUtils;
 import io.swagger.annotations.Api;
@@ -26,6 +29,8 @@ public class AdjustDetailController {
 
     @Autowired
     private AdjustDetailService adjustDetailService;
+    @Autowired
+    private ApplicationPrimaryService applicationPrimaryService;
 
     @ApiOperation(value="创建空记录")
     @GetMapping("create")
@@ -39,37 +44,6 @@ public class AdjustDetailController {
 
         return msgResult;
     }
-    
-    @ApiOperation(value="添加信息")
-    @PostMapping("add")
-    public MessageResult<AdjustDetail> add(@RequestBody AdjustDetail adjustDetail,@RequestAttribute String subject){
-        MessageResult<AdjustDetail> msgResult = new MessageResult<>();
-
-        try {
-            adjustDetail.setId(UUID.randomUUID().toString());
-            adjustDetail.setDelFlag(false);
-            adjustDetail.setCreateBy(subject);
-            adjustDetail.setCreateTime(new Date());
-            
-            int affectCount = adjustDetailService.insert(adjustDetail);
-
-            if (affectCount > 0) {
-                msgResult.setResult(true);
-                msgResult.setData(adjustDetail);
-            } else {
-                msgResult.setResult(false);
-                msgResult.setMessage("数据库添加失败");
-            }
-        }
-        catch(Exception ex){
-            logger.error(ex.getMessage(),ex);
-
-            msgResult.setResult(false);
-            msgResult.setMessage(ex.getMessage());
-        }
-
-        return msgResult;
-    }
 
     @ApiOperation(value="获取信息")
     @GetMapping("edit/{id}")
@@ -193,10 +167,10 @@ public class AdjustDetailController {
         return msgResult;
     }
 
-    @ApiOperation(value="列表")
+    @ApiOperation(value="调剂列表")
     @RequestMapping(value = "pageList",method = RequestMethod.POST)
     public MessageResult<Map> pageList(
-            String id,
+            String schoolId,String idCardOrName,
             @RequestParam(value="pageIndex",defaultValue="1") int pageIndex,
             @RequestParam(value="pageSize",defaultValue="20") int pageSize,
             @RequestAttribute String subject){
@@ -211,15 +185,63 @@ public class AdjustDetailController {
         List<Sort> sortList = new ArrayList<>();
         sortList.add(new Sort("id_","asc"));
 
-        if (StringUtils.isNotEmpty(id)) {
-            searchParams.put("id","%" + id + "%");
+        if (StringUtils.isNotEmpty(schoolId)) {
+            searchParams.put("schoolId",schoolId);
+        }
+        if (StringUtils.isNotEmpty(idCardOrName)) {
+            searchParams.put("idCardOrName",idCardOrName);
         }
 
-        Page<AdjustDetail> page = adjustDetailService.pageSearch(searchParams,pageIndex,pageSize,true,sortList);
+        Page<AdjustDetailDTO> page = adjustDetailService.pageSearchDTO(searchParams,pageIndex,pageSize,true,sortList);
 
         msgResult.setResult(true);
         msgResult.setData(PojoUtils.pageWrapper(page));
 
         return msgResult;
     }
+
+    @ApiOperation(value="调剂学校")
+    @PostMapping("add")
+    public MessageResult<AdjustDetail> add(String applicationId,String schoolId,@RequestAttribute String subject){
+        MessageResult<AdjustDetail> msgResult = new MessageResult<>();
+
+        try {
+            ApplicationPrimary applicationPrimary = applicationPrimaryService.get(applicationId);
+            applicationPrimary.setOfferId(schoolId);
+            applicationPrimary.setStatus(String.valueOf(Integer.parseInt(applicationPrimary.getStatus()) + 10));
+            applicationPrimary.setUpdateBy(subject);
+            applicationPrimary.setUpdateTime(new Date());
+            applicationPrimaryService.update(applicationPrimary);
+
+            //写入调剂
+            AdjustDetail adjustDetail = new AdjustDetail();
+            adjustDetail.setId(UUID.randomUUID().toString());
+            adjustDetail.setApplicationId(applicationPrimary.getId());
+            adjustDetail.setStudentId(applicationPrimary.getStudentId());
+            adjustDetail.setPersonId(applicationPrimary.getPersonId());
+            adjustDetail.setSchoolId(schoolId);
+            adjustDetail.setDelFlag(false);
+            adjustDetail.setCreateBy(subject);
+            adjustDetail.setCreateTime(new Date());
+            adjustDetail.setUpdateBy(subject);
+            adjustDetail.setUpdateTime(new Date());
+            int affectCount = adjustDetailService.update(adjustDetail);
+
+            if (affectCount > 0) {
+                msgResult.setResult(true);
+                msgResult.setData(adjustDetail);
+            } else {
+                msgResult.setResult(false);
+                msgResult.setMessage("数据库更新失败");
+            }
+        }
+        catch(Exception ex){
+            logger.error(ex.getMessage(),ex);
+
+            msgResult.setResult(false);
+            msgResult.setMessage(ex.getMessage());
+        }
+
+        return msgResult;
+    }
 }