Browse Source

央美本科准考证

haogh 7 tháng trước cách đây
mục cha
commit
04dee21eec

+ 22 - 0
sql/fz_update.sql

@@ -110,3 +110,25 @@ INSERT INTO `frame_report_detail`(`REPORT_NAME`, `FIELD_ORDER`, `FIELD_NAME`, `F
 INSERT INTO `frame_report_detail`(`REPORT_NAME`, `FIELD_ORDER`, `FIELD_NAME`, `FIELD_LENGTH`, `FIELD_TEXT`, `FIELD_DATE_TYPE`, `FIELD_STATUS`, `DICT_NAME`) VALUES ('TicketStdNotDownloadReport', 3, 'exam_id', 20, '高考报名号', 'java.lang.String', 'Active', NULL);
 INSERT INTO `frame_report_detail`(`REPORT_NAME`, `FIELD_ORDER`, `FIELD_NAME`, `FIELD_LENGTH`, `FIELD_TEXT`, `FIELD_DATE_TYPE`, `FIELD_STATUS`, `DICT_NAME`) VALUES ('TicketStdNotDownloadReport', 4, 'std_sex', 10, '性别', 'java.lang.String', 'Active', NULL);
 INSERT INTO `frame_report_detail`(`REPORT_NAME`, `FIELD_ORDER`, `FIELD_NAME`, `FIELD_LENGTH`, `FIELD_TEXT`, `FIELD_DATE_TYPE`, `FIELD_STATUS`, `DICT_NAME`) VALUES ('TicketStdNotDownloadReport', 5, 'std_mobile', 20, '联系电话', 'java.lang.String', 'Active', NULL);
+
+
+-- 2024-11-01
+CREATE TABLE `ly_std_ticket_result`
+(
+    `LY_TICKET_ID`     int(0)                                                        NOT NULL AUTO_INCREMENT COMMENT '内部流水号',
+    `LY_AGENT_ID`      int(0)                                                        NULL DEFAULT NULL COMMENT '考点编号',
+    `STD_ID`           int(0)                                                        NULL DEFAULT NULL COMMENT '考生编号',
+    `CATEGORY_ID`      int(0)                                                        NULL DEFAULT NULL COMMENT '大类:本系统根据大类来生成准考证,如果无大类,就为空或者0',
+    `TICKET_BATCH`     int(0)                                                        NULL DEFAULT NULL COMMENT '考试批次,某些学校复试需要生成新的准考证',
+    `TICKET_SEQ`       int(0)                                                        NULL DEFAULT NULL COMMENT '准考证排序',
+    `TICKET_NO`        varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci  NULL DEFAULT NULL COMMENT '准考证号',
+    `TICKET_FILE_NAME` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '准考证文件路径',
+    PRIMARY KEY (`LY_TICKET_ID`) USING BTREE,
+    INDEX `PK_LY_STD_TICKET` (`LY_AGENT_ID`, `STD_ID`, `CATEGORY_ID`) USING BTREE,
+    UNIQUE INDEX `IDX_01` (`STD_ID`, `TICKET_BATCH`, `TICKET_NO`) USING BTREE
+) ENGINE = InnoDB
+  CHARACTER SET = utf8mb4
+  COLLATE = utf8mb4_general_ci COMMENT = '考生准考证'
+  ROW_FORMAT = Dynamic;
+
+INSERT INTO `frame_res`(`RES_ID`, `RES_NAME`, `RES_ALIAS`, `RES_URL`, `RES_PID`, `RES_LEVEL`, `RES_TYPE`, `RES_CSS`, `RES_STATUS`, `RES_ORDER`, `RES_DESC`) VALUES (304060, '准考证查询', '准考证查询', '/art/layout/material/ticketResult', 304000, 4, 'Page', 'fas fa-cart-plus text-danger', 'Active', 304060, NULL);

+ 20 - 0
sql/update.sql

@@ -51,3 +51,23 @@ CREATE TABLE `tx_std_material_log`
 update cf_enrol_param set param_value='InActive' where param_name='EnrolVerifyNoCrownWithPayed';
 
 
+-- 2024-11-01
+CREATE TABLE `ly_std_ticket_result`
+(
+    `LY_TICKET_ID`     int(0)                                                        NOT NULL AUTO_INCREMENT COMMENT '内部流水号',
+    `LY_AGENT_ID`      int(0)                                                        NULL DEFAULT NULL COMMENT '考点编号',
+    `STD_ID`           int(0)                                                        NULL DEFAULT NULL COMMENT '考生编号',
+    `CATEGORY_ID`      int(0)                                                        NULL DEFAULT NULL COMMENT '大类:本系统根据大类来生成准考证,如果无大类,就为空或者0',
+    `TICKET_BATCH`     int(0)                                                        NULL DEFAULT NULL COMMENT '考试批次,某些学校复试需要生成新的准考证',
+    `TICKET_SEQ`       int(0)                                                        NULL DEFAULT NULL COMMENT '准考证排序',
+    `TICKET_NO`        varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci  NULL DEFAULT NULL COMMENT '准考证号',
+    `TICKET_FILE_NAME` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '准考证文件路径',
+    PRIMARY KEY (`LY_TICKET_ID`) USING BTREE,
+    INDEX `PK_LY_STD_TICKET` (`LY_AGENT_ID`, `STD_ID`, `CATEGORY_ID`) USING BTREE,
+    UNIQUE INDEX `IDX_01` (`STD_ID`, `TICKET_BATCH`, `TICKET_NO`) USING BTREE
+) ENGINE = InnoDB
+  CHARACTER SET = utf8mb4
+  COLLATE = utf8mb4_general_ci COMMENT = '考生准考证'
+  ROW_FORMAT = Dynamic;
+
+INSERT INTO `frame_res`(`RES_ID`, `RES_NAME`, `RES_ALIAS`, `RES_URL`, `RES_PID`, `RES_LEVEL`, `RES_TYPE`, `RES_CSS`, `RES_STATUS`, `RES_ORDER`, `RES_DESC`) VALUES (304060, '准考证查询', '准考证查询', '/art/layout/material/ticketResult', 304000, 4, 'Page', 'fas fa-cart-plus text-danger', 'Active', 304060, NULL);

+ 41 - 0
src/cn/hmsoft/art/control/layout/material/LyStdTicketResultControl.java

@@ -0,0 +1,41 @@
+package cn.hmsoft.art.control.layout.material;
+
+import cn.hmsoft.application.web.Ajax;
+import cn.hmsoft.art.control.ArtControl;
+import cn.hmsoft.art.service.ly.LyStdTicketResultService;
+import cn.hmsoft.frame.data.model.FrameOptr;
+import cn.hmsoft.frame.exception.BusinessException;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * @Description 考生准考证
+ */
+@RestController
+public class LyStdTicketResultControl extends ArtControl {
+
+    @Autowired
+    private LyStdTicketResultService lyStdTicketResultService;
+
+    @RequestMapping("ly/std/ticket/result/page")
+    public Ajax pageTicket(Integer start, Integer limit, int ly_agent_id, Integer batch_id, String query) {
+        return new Ajax(lyStdTicketResultService.pageTicket(ly_agent_id, batch_id, start, limit, query));
+    }
+
+    /**
+     * 拉取准考证数据
+     *
+     * @param batch_id 批次ID
+     * @return ajax
+     */
+    @RequestMapping("ly/std/ticket/result/pull")
+    public Ajax pullTicket(Integer batch_id) {
+        FrameOptr frameOptr = this.getFrameOptr();
+        if (frameOptr != null && frameOptr.getOptr_id() != 0) {
+            throw new BusinessException("无权限");
+        }
+        lyStdTicketResultService.pullTicket(batch_id);
+        return new Ajax();
+    }
+}

+ 46 - 0
src/cn/hmsoft/art/data/dao/ly/LyStdTicketResultDao.java

@@ -0,0 +1,46 @@
+package cn.hmsoft.art.data.dao.ly;
+
+import cn.hmsoft.art.data.model.ly.LyStdTicketResult;
+import cn.hmsoft.helper.StringHelper;
+import cn.hmsoft.jdbc.core.PlatformDaoSupport;
+import cn.hmsoft.jdbc.entity.Pager;
+import org.springframework.stereotype.Repository;
+
+@Repository
+public class LyStdTicketResultDao extends PlatformDaoSupport<LyStdTicketResult> {
+
+    public Pager pageTicket(int lyAgentId, Integer batch_id, Integer start, Integer limit, String query) {
+        StringBuilder sql = new StringBuilder("select s.std_name,s.cert_id,s.std_sex,s.std_mobile,p.province_name,ly_agent_id,t.ticket_batch,");
+        sql.append(" category_id,ticket_seq,t.ticket_no,t.ticket_file_name,s.std_verify_flag ");
+        sql.append(" from std_reg s,frame_region_province p,ly_std_ticket_result t ");
+        sql.append("  where s.std_id=t.std_id and s.std_province=p.province_id and t.ly_agent_id=? ");
+
+        // 批次
+        if(batch_id != null) {
+            sql.append(" and t.ticket_batch= ").append(batch_id);
+        }
+
+        // 查询条件为空
+        if (StringHelper.isEmpty(query)) {
+            sql.append(" order by category_id,ticket_seq ");
+            return this.pageMapBySql(start, limit, sql.toString(), lyAgentId);
+        }
+
+        //查询条件不为空
+        String likeParam = this.generateLikeParamter(query);
+        sql.append(" and (ticket_no=? or std_name like ? or cert_id like ?)  ");
+        sql.append(" order by category_id,ticket_seq ");
+        return this.pageMapBySql(start, limit, sql.toString(), lyAgentId, query, likeParam, likeParam);
+    }
+
+    public void pullTicket(Integer batchId) {
+        StringBuilder sql = new StringBuilder(" INSERT INTO ly_std_ticket_result  ");
+        sql.append(" SELECT * FROM ly_std_ticket t WHERE NOT EXISTS  ");
+        sql.append(" ( SELECT 1 FROM ly_std_ticket_result tr WHERE tr.std_id = t.std_id AND tr.category_id = t.category_id  ");
+        sql.append(" AND tr.ticket_no = t.ticket_no AND tr.ticket_batch=t.ticket_batch) ");
+        if (batchId != null) {
+            sql.append(" and t.ticket_batch= ").append(batchId);
+        }
+        this.updateBySql(sql.toString());
+    }
+}

+ 143 - 0
src/cn/hmsoft/art/data/model/ly/LyStdTicketResult.java

@@ -0,0 +1,143 @@
+package cn.hmsoft.art.data.model.ly;
+
+import cn.hmsoft.jdbc.entity.Table;
+
+import java.io.Serializable;
+
+/**********************************************
+ * 考生准考证 结果表
+ */
+@Table(tableName = "LY_STD_TICKET_RESULT", keyColumn = "LY_TICKET_ID", sequenceName = "")
+public class LyStdTicketResult implements Serializable {
+	private static final long serialVersionUID = 1L;
+
+	// 内部流水号
+	private Integer ly_ticket_id;
+	// 考点编号
+	private Integer ly_agent_id;
+	// 考生编号
+	private Integer std_id;
+	// 大类:本系统根据大类来生成准考证,如果无大类,就为空或者0
+	private Integer category_id;
+	// 考试批次,某些学校复试需要生成新的准考证
+	private Integer ticket_batch;
+	// 准考证排序
+	private Integer ticket_seq;
+	// 准考证号
+	private String ticket_no;
+	// 准考证文件路径
+	private String ticket_file_name;
+
+	/****
+	 * 内部流水号
+	 */
+	public Integer getLy_ticket_id() {
+		return this.ly_ticket_id;
+	}
+
+	/****
+	 * 内部流水号
+	 */
+	public void setLy_ticket_id(Integer ly_ticket_id) {
+		this.ly_ticket_id = ly_ticket_id;
+	}
+
+	/****
+	 * 考点编号
+	 */
+	public Integer getLy_agent_id() {
+		return this.ly_agent_id;
+	}
+
+	/****
+	 * 考点编号
+	 */
+	public void setLy_agent_id(Integer ly_agent_id) {
+		this.ly_agent_id = ly_agent_id;
+	}
+
+	/****
+	 * 考生编号
+	 */
+	public Integer getStd_id() {
+		return this.std_id;
+	}
+
+	/****
+	 * 考生编号
+	 */
+	public void setStd_id(Integer std_id) {
+		this.std_id = std_id;
+	}
+
+	/****
+	 * 大类:本系统根据大类来生成准考证,如果无大类,就为空或者0
+	 */
+	public Integer getCategory_id() {
+		return this.category_id;
+	}
+
+	/****
+	 * 大类:本系统根据大类来生成准考证,如果无大类,就为空或者0
+	 */
+	public void setCategory_id(Integer category_id) {
+		this.category_id = category_id;
+	}
+
+	/****
+	 * 考试批次,某些学校复试需要生成新的准考证
+	 */
+	public Integer getTicket_batch() {
+		return this.ticket_batch;
+	}
+
+	/****
+	 * 考试批次,某些学校复试需要生成新的准考证
+	 */
+	public void setTicket_batch(Integer ticket_batch) {
+		this.ticket_batch = ticket_batch;
+	}
+
+	/****
+	 * 准考证排序
+	 */
+	public Integer getTicket_seq() {
+		return this.ticket_seq;
+	}
+
+	/****
+	 * 准考证排序
+	 */
+	public void setTicket_seq(Integer ticket_seq) {
+		this.ticket_seq = ticket_seq;
+	}
+
+	/****
+	 * 准考证号
+	 */
+	public String getTicket_no() {
+		return this.ticket_no;
+	}
+
+	/****
+	 * 准考证号
+	 */
+	public void setTicket_no(String ticket_no) {
+		this.ticket_no = ticket_no;
+	}
+
+	/****
+	 * 准考证文件路径
+	 */
+	public String getTicket_file_name() {
+		return this.ticket_file_name;
+	}
+
+	/****
+	 * 准考证文件路径
+	 */
+	public void setTicket_file_name(String ticket_file_name) {
+		this.ticket_file_name = ticket_file_name;
+	}
+
+}

+ 24 - 0
src/cn/hmsoft/art/service/ly/LyStdTicketResultService.java

@@ -0,0 +1,24 @@
+package cn.hmsoft.art.service.ly;
+
+import cn.hmsoft.art.data.dao.ly.LyStdTicketResultDao;
+import cn.hmsoft.art.service.ArtService;
+import cn.hmsoft.jdbc.entity.Pager;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+@Service
+public class LyStdTicketResultService extends ArtService {
+
+    @Autowired
+    private LyStdTicketResultDao lyStdTicketResultDao;
+
+    public Pager pageTicket(int lyAgentId, Integer batchId, Integer start, Integer limit, String query) {
+        return lyStdTicketResultDao.pageTicket(lyAgentId, batchId, start, limit, query);
+    }
+
+    @Transactional
+    public void pullTicket(Integer batchId) {
+        lyStdTicketResultDao.pullTicket(batchId);
+    }
+}