Browse Source

添加学校和班级信息

xiao547607 5 năm trước cách đây
mục cha
commit
e3bb95cb07

+ 138 - 0
picc-admin-server/src/main/java/com/jpsoft/picc/modules/business/controller/StudentApplicationController.java

@@ -2,13 +2,23 @@ package com.jpsoft.picc.modules.business.controller;
 
 import com.github.pagehelper.Page;
 import com.jpsoft.picc.modules.base.entity.InsuranceDefinition;
+import com.jpsoft.picc.modules.base.entity.InsuranceDefinitionLimit;
+import com.jpsoft.picc.modules.base.entity.InsuranceJobs;
+import com.jpsoft.picc.modules.base.service.InsuranceDefinitionLimitService;
 import com.jpsoft.picc.modules.base.service.InsuranceDefinitionService;
+import com.jpsoft.picc.modules.base.service.InsuranceJobsService;
+import com.jpsoft.picc.modules.business.entity.InsuranceApplication;
+import com.jpsoft.picc.modules.business.entity.InsurancePolicy;
 import com.jpsoft.picc.modules.business.entity.StudentApplication;
 import com.jpsoft.picc.modules.business.service.StudentApplicationService;
 import com.jpsoft.picc.modules.common.dto.Sort;
 import com.jpsoft.picc.modules.common.dto.MessageResult;
+import com.jpsoft.picc.modules.common.utils.NumberToCN;
 import com.jpsoft.picc.modules.common.utils.PojoUtils;
+import com.jpsoft.picc.modules.common.utils.VelocityHelper;
 import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiImplicitParam;
+import io.swagger.annotations.ApiImplicitParams;
 import io.swagger.annotations.ApiOperation;
 import org.apache.commons.lang3.StringUtils;
 import org.slf4j.Logger;
@@ -35,6 +45,12 @@ public class StudentApplicationController {
     @Autowired
     private InsuranceDefinitionService insuranceDefinitionService;
 
+    @Autowired
+    private InsuranceDefinitionLimitService insuranceDefinitionLimitService;
+
+    @Autowired
+    private InsuranceJobsService insuranceJobsService;
+
     @ApiOperation(value="创建空记录")
     @GetMapping("create")
     public MessageResult<StudentApplication> create(){
@@ -329,4 +345,126 @@ public class StudentApplicationController {
 
         return msgResult;
     }
+
+    @ApiOperation(value="获取投保信息")
+    @PostMapping("detail")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name="id",value = "投保信息ID",required = true,paramType = "query")
+    })
+    public MessageResult<StudentApplication> detail(String id){
+        MessageResult<StudentApplication> msgResult = new MessageResult<>();
+
+        try {
+            StudentApplication studentApplication = studentApplicationService.get(id);
+
+            if (studentApplication != null) {
+                msgResult.setResult(true);
+                msgResult.setData(studentApplication);
+            } 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="获取承保信息")
+    @RequestMapping(value = "acceptDetail",method = RequestMethod.POST)
+    @ApiImplicitParams({
+            @ApiImplicitParam(name="applicationId",value = "投保单ID",required = true,paramType = "query")
+    })
+    public MessageResult<Map> acceptDetail(String applicationId){
+
+        MessageResult<Map> msgResult = new MessageResult<>();
+
+        Map<String,Object> map = new HashMap<String,Object>();
+
+        //投保单
+        StudentApplication studentApplication = studentApplicationService.get(applicationId);
+
+        //险种
+        InsuranceDefinition insuranceDefinition = insuranceDefinitionService.get(studentApplication.getDefinitionId());
+
+        String definitionId = insuranceDefinition.getId();
+
+        map.put("id",insuranceDefinition.getId());
+        map.put("name",insuranceDefinition.getName());
+
+        List<InsuranceDefinitionLimit> insuranceDefinitionLimitList = insuranceDefinitionLimitService.findByDefinitionId(definitionId);
+
+        List<Map<String,Object>> mapList = new ArrayList<Map<String,Object>>();
+
+
+        Map<String,Object> varsMap = new HashMap<>();
+        varsMap.put("num",1);
+
+        for(InsuranceDefinitionLimit  insuranceDefinitionLimit:insuranceDefinitionLimitList){
+            Map<String,Object> map1 = new HashMap<String,Object>();
+            map1.put("id",insuranceDefinitionLimit.getId());
+            map1.put("name",insuranceDefinitionLimit.getName());
+
+            //限额这里可能是公式,需要带入人数
+            String limit = VelocityHelper.format(insuranceDefinitionLimit.getLimit(),varsMap);
+            map1.put("limit",limit);
+
+            String unit = VelocityHelper.format(insuranceDefinitionLimit.getUnit(),varsMap);
+            map1.put("unit",unit);
+
+            mapList.add(map1);
+        }
+
+        map.put("insuranceDefinitionLimitList",mapList);
+
+        List<InsuranceJobs> InsuranceJobsList = insuranceJobsService.findByDefinitionId(studentApplication.getDefinitionId());
+
+        List<Map<String,Object>> mapList1 = new ArrayList<Map<String,Object>>();
+
+        DateTime startTime = new DateTime(studentApplication.getStartTime());
+        map.put("startTime",startTime.toString("yyyy-MM-dd"));
+
+        DateTime endTime = new DateTime(studentApplication.getEndTime());
+        map.put("endTime",endTime.toString("yyyy-MM-dd"));
+
+        //月份
+        int months = 1;
+
+        BigDecimal totalAmount = new BigDecimal(0);
+
+        for (InsuranceJobs insuranceJobs:InsuranceJobsList) {
+            Map<String,Object> map1 = new HashMap<String,Object>();
+            String jobId = insuranceJobs.getJobsId();
+            map1.put("id",jobId);
+            map1.put("name",insuranceJobs.getJobs().getName());
+            map1.put("content",insuranceJobs.getJobs().getContent());
+            map1.put("charges",insuranceJobs.getCharges());
+            map1.put("chargesY",insuranceJobs.getCharges().multiply(new BigDecimal(12)));
+            long memberCount = 1;
+            long number = Long.valueOf(memberCount).intValue();
+            map1.put("number",number);
+            BigDecimal money = insuranceJobs.getCharges().multiply(new BigDecimal(months)).multiply(new BigDecimal(number));
+            map1.put("money",money);
+
+            totalAmount = totalAmount.add(money);
+            mapList1.add(map1);
+        }
+
+        map.put("totalAmount",totalAmount);
+
+        String cnMontrayUnit = NumberToCN.number2CNMontrayUnit(totalAmount);
+        map.put("cnMontrayUnit",cnMontrayUnit);
+
+        map.put("jobsList",mapList1);
+
+        msgResult.setResult(true);
+        msgResult.setData(map);
+
+        return msgResult;
+    }
 }

+ 5 - 5
picc-admin-server/src/main/java/com/jpsoft/picc/modules/business/controller/StudentApplicationRecordController.java

@@ -196,7 +196,7 @@ public class StudentApplicationRecordController {
     @ApiOperation(value="列表")
     @RequestMapping(value = "pageList",method = RequestMethod.POST)
     public MessageResult<Map> pageList(
-            String id,
+            String applicationId,
             @RequestParam(value="pageIndex",defaultValue="1") int pageIndex,
             @RequestParam(value="pageSize",defaultValue="20") int pageSize,
             @RequestAttribute String subject){
@@ -209,12 +209,12 @@ public class StudentApplicationRecordController {
         Map<String,Object> searchParams = new HashMap<>();
 
         List<Sort> sortList = new ArrayList<>();
-        sortList.add(new Sort("id_","asc"));
+        sortList.add(new Sort("create_time","asc"));
 
-        if (StringUtils.isNotEmpty(id)) {
-            searchParams.put("id","%" + id + "%");
+        if (StringUtils.isNotEmpty(applicationId)) {
+            searchParams.put("applicationId",applicationId);
         }
-
+        searchParams.put("delFlag",false);
         Page<StudentApplicationRecord> page = studentApplicationRecordService.pageSearch(searchParams,pageIndex,pageSize,true,sortList);
 
         msgResult.setResult(true);

+ 22 - 0
picc-common/src/main/java/com/jpsoft/picc/modules/business/entity/StudentApplication.java

@@ -174,6 +174,28 @@ public class StudentApplication {
 	@ApiModelProperty(value = "支付订单号")
 	private String paymentOrder;
 
+	/**
+	 *学校ID
+	 */
+	@ApiModelProperty(value = "学校ID")
+	private String schoolId;
+	/**
+	 *学校名称
+	 */
+	@ApiModelProperty(value = "学校名称")
+	private String schoolName;
+	/**
+	 *班级ID
+	 */
+	@ApiModelProperty(value = "班级ID")
+	private String companyId;
+	/**
+	 *班级名称
+	 */
+	@ApiModelProperty(value = "班级名称")
+	private String companyName;
+
+
 	/**
 	 * 状态翻译
 	 * @return

+ 23 - 1
picc-common/src/main/resources/mapper/business/StudentApplication.xml

@@ -33,6 +33,10 @@
 			<result property="signature2" column="signature_2" />
 			<result property="signature3" column="signature_3" />
 			<result property="paymentOrder" column="payment_order" />
+			<result property="schoolId" column="school_id" />
+			<result property="schoolName" column="school_name" />
+			<result property="companyId" column="company_id" />
+			<result property="companyName" column="company_name" />
 			</resultMap>
 	<insert id="insert" parameterType="com.jpsoft.picc.modules.business.entity.StudentApplication">
 	<!--
@@ -42,7 +46,9 @@
 	-->
 	<![CDATA[
 		insert into business_student_application
-	    (id_,create_by,create_time,update_by,update_time,del_flag,definition_id,policy_no,insured_id,insured_name,insured_card,insured_tel,have_attach,attach_id,attach_name,attach_card,attach_tel,have_medicare,start_time,end_time,insurance_fee,status_,process_status,finish_time,signature_,signature_2,signature_3,payment_order)
+	    (id_,create_by,create_time,update_by,update_time,del_flag,definition_id,policy_no,insured_id,insured_name,insured_card,insured_tel,have_attach,attach_id,attach_name,attach_card,attach_tel,have_medicare,start_time,end_time,
+	    insurance_fee,status_,process_status,finish_time,signature_,signature_2,signature_3,payment_order,
+	    school_id,school_name,company_id,company_name)
 		values
 		(
 			#{id,jdbcType=VARCHAR}
@@ -73,6 +79,10 @@
 			,#{signature2,jdbcType=VARCHAR}
 			,#{signature3,jdbcType=VARCHAR}
 			,#{paymentOrder,jdbcType=VARCHAR}
+			,#{schoolId,jdbcType=VARCHAR}
+			,#{schoolName,jdbcType=VARCHAR}
+			,#{companyId,jdbcType=VARCHAR}
+			,#{companyName,jdbcType=VARCHAR}
 		)
 	]]>
 	</insert>
@@ -163,6 +173,18 @@
 				<if test="paymentOrder!=null">
 		payment_order=#{paymentOrder,jdbcType=VARCHAR},
 		</if>
+			<if test="schoolId!=null">
+				school_id=#{schoolId,jdbcType=VARCHAR},
+			</if>
+			<if test="schoolName!=null">
+				school_name=#{schoolName,jdbcType=VARCHAR},
+			</if>
+			<if test="companyId!=null">
+				company_id=#{companyId,jdbcType=VARCHAR},
+			</if>
+			<if test="companyName!=null">
+				company_name=#{companyName,jdbcType=VARCHAR},
+			</if>
 		</set>
 	where id_=#{id}
 	</update>

+ 5 - 2
picc-common/src/main/resources/mapper/business/StudentApplicationRecord.xml

@@ -89,8 +89,11 @@
 			select * from business_student_application_record
 		]]>
 		<where>
-			<if test="searchParams.id != null">
-				and ID_ like #{searchParams.id}
+			<if test="searchParams.delFlag != null">
+				and del_flag = #{searchParams.delFlag}
+			</if>
+			<if test="searchParams.applicationId != null">
+				and application_id = #{searchParams.applicationId}
 			</if>
 		</where>
 		<foreach item="sort" collection="sortList"  open="order by" separator=",">