Commit 106688fe by 翁国栋 Committed by 284718418@qq.com

运营后台--

保单列表
parent a552b912
...@@ -86,6 +86,8 @@ public class InsureLog extends Model<InsurePolicy> { ...@@ -86,6 +86,8 @@ public class InsureLog extends Model<InsurePolicy> {
*/ */
private Integer requestType; private Integer requestType;
private Integer policyId;
/** /**
* 设置: * 设置:
*/ */
...@@ -218,4 +220,5 @@ public class InsureLog extends Model<InsurePolicy> { ...@@ -218,4 +220,5 @@ public class InsureLog extends Model<InsurePolicy> {
public Integer getType() { public Integer getType() {
return type; return type;
} }
} }
...@@ -151,4 +151,9 @@ public class InsureUser extends Model<InsureUser> { ...@@ -151,4 +151,9 @@ public class InsureUser extends Model<InsureUser> {
@ApiModelProperty(value = "替换流水号,使用trans_id,RP_开头") @ApiModelProperty(value = "替换流水号,使用trans_id,RP_开头")
private String replaceTransId; private String replaceTransId;
@ApiModelProperty(value = "申请类型:1新增 3批增")
private Integer applyType;
} }
...@@ -39,7 +39,7 @@ import org.springframework.web.multipart.MultipartFile; ...@@ -39,7 +39,7 @@ import org.springframework.web.multipart.MultipartFile;
* @email 862422848@qq.com * @email 862422848@qq.com
* @date 2022-03-07 17:02:46 * @date 2022-03-07 17:02:46
*/ */
@Api(tags = "23.0保险列表") @Api(tags = "投保人")
@RestController @RestController
@Transactional @Transactional
@RequestMapping(value = "/insureApplicant", produces = {"application/json"}) @RequestMapping(value = "/insureApplicant", produces = {"application/json"})
......
...@@ -2,18 +2,21 @@ package cn.timer.api.controller.insure; ...@@ -2,18 +2,21 @@ package cn.timer.api.controller.insure;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.Optional;
import cn.timer.api.bean.insure.InsureUser;
import cn.timer.api.dao.insure.InsureUserMapper;
import cn.timer.api.dto.insure.PolicyDto;
import cn.timer.api.utils.Result;
import cn.timer.api.utils.ResultUtil;
import com.beust.jcommander.internal.Lists;
import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
import com.google.common.collect.Maps;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PathVariable; import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.*;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController;
/** /**
...@@ -23,9 +26,30 @@ import org.springframework.web.bind.annotation.RestController; ...@@ -23,9 +26,30 @@ import org.springframework.web.bind.annotation.RestController;
* @email 862422848@qq.com * @email 862422848@qq.com
* @date 2022-03-11 09:06:53 * @date 2022-03-11 09:06:53
*/ */
@Api(tags = "8.0保险列表")
@RestController @RestController
@RequestMapping("insureuser") @Transactional
@RequestMapping(value ="/insureUser", produces = {"application/json"})
public class InsureUserController{ public class InsureUserController{
@Autowired
private InsureUserMapper insureUserMapper;
@PostMapping(value = "/policyList")
@ApiOperation(value = "3.保单列表", httpMethod = "Post", notes = "保单列表")
@ApiOperationSupport(order = 2)
public Result<Object> policyList(@RequestBody PolicyDto policyDto) {
Map map = Maps.newHashMap();
List<PolicyDto> list = insureUserMapper.selectPolicyList(policyDto.getPage(), String.valueOf(policyDto.getId()));
map.put("list", Optional.ofNullable(list).orElse(Lists.newArrayList()));
map.put("total", insureUserMapper.totalUser(String.valueOf(policyDto.getId())));
return ResultUtil.data(map);
}
@GetMapping(value = "/userDetial")
@ApiOperation(value = "3.被保人详情", httpMethod = "Post", notes = "保单列表")
@ApiOperationSupport(order = 2)
public Result<Object> userDetial(@RequestParam("userId") String userId) {
InsureUser user = InsureUser.builder().id(Integer.parseInt(userId)).build().selectById();
return ResultUtil.data(user);
}
} }
...@@ -19,8 +19,9 @@ import java.util.List; ...@@ -19,8 +19,9 @@ import java.util.List;
*/ */
@Repository @Repository
public interface InsurePolicyMapper extends BaseMapper<InsurePolicy> { public interface InsurePolicyMapper extends BaseMapper<InsurePolicy> {
public List<PolicyDto> policyList(@Param("page") Page page); List<PolicyDto> policyList(@Param("policy") PolicyDto policyDto);
PolicyDto getPolicyDetail(@Param("id")Integer id); PolicyDto getPolicyDetail(@Param("id")Integer id);
Integer totalPolicy(); Integer totalPolicy(@Param("policy")PolicyDto policyDto);
List<PolicyDto> policyTotalList();
} }
...@@ -16,6 +16,8 @@ ...@@ -16,6 +16,8 @@
<result property="returnMsg" column="return_msg"/> <result property="returnMsg" column="return_msg"/>
<result property="transId" column="trans_id"/> <result property="transId" column="trans_id"/>
<result property="type" column="type"/> <result property="type" column="type"/>
<result property="requestType" column="request_type"/>
<result property="policyId" column="policy_id"/>
</resultMap> </resultMap>
<select id="queryObject" resultType="cn.timer.api.bean.insure.InsureLog"> <select id="queryObject" resultType="cn.timer.api.bean.insure.InsureLog">
......
...@@ -232,21 +232,58 @@ ...@@ -232,21 +232,58 @@
</delete> </delete>
<select id="policyList" resultType="cn.timer.api.dto.insure.PolicyDto"> <select id="policyList" resultType="cn.timer.api.dto.insure.PolicyDto">
select ip.id AS id, ip.scheme_name AS schemeName, ip.type AS type, count(iu.id) AS totaPolicy, SELECT
count(iu.org_code) AS totalCompany, count(iu.id) AS totalUser, ip.total_premium AS totalPremium, ip.id AS id,
ip.update_time AS updateTime,ip.policy_file AS policyFile ip.policy_no AS policyNo,
from insure_policy ip ip.create_time as createTime,
LEFT JOIN insure_user iu on iu.policy_id = ip.id ip.scheme_name AS schemeName,
where iu.insure_status=1 qy.`name` as `name`,
GROUP BY ip.id count( iu.id ) AS totalUser,
<if test="page.offset != null and page.totalPage !=null"> ip.policy_date_start as policyDateStart,
limit #{page.offset},#{page.totalPage} ip.policy_date_end as policyDateEnd,
ip.total_premium AS totalPremium,
ip.update_time AS updateTime,
ip.`status` as `status`
FROM
insure_policy ip
LEFT JOIN insure_user iu ON iu.policy_id = ip.id
LEFT JOIN qyzx_ent_info_m qy on qy.id=iu.org_code
<where>
iu.insure_status = 1
<if test="policy.status!=null and policy.status!=''">
and ip.status = #{policy.status}
</if>
<if test="policy.orgCode!=null and policy.orgCode!=''">
and ip.org_code = #{policy.orgCode}
</if>
<if test="policy.benefitBasicPlan!=null and policy.benefitBasicPlan!=''">
and iu.benefit_basic_plan = #{policy.benefitBasicPlan}
</if>
<if test="policy.policyDateStart!=null and policy.policyDateStart!=''">
and ip.policy_date_start <![CDATA[ >= ]]> #{policy.policyDateStart}
</if>
</where>
GROUP BY
ip.id
<if test="policy.page.offset != null and policy.page.totalPage !=null">
limit #{policy.page.offset},#{policy.page.totalPage}
</if> </if>
</select> </select>
<select id="totalPolicy" resultType="java.lang.Integer"> <select id="totalPolicy" resultType="java.lang.Integer">
select count(ip.id) select count(ip.id)
from insure_policy ip from insure_policy ip
<where>
<if test="policy.status!=null and policy.status!=''">
and ip.status = #{policy.status}
</if>
<if test="policy.orgCode!=null and policy.orgCode!=''">
and ip.org_code = #{policy.orgCode}
</if>
<if test="policy.policyDateStart!=null and policy.policyDateStart!=''">
and ip.policy_date_start <![CDATA[ >= ]]> #{policy.policyDateStart}
</if>
</where>
</select> </select>
<select id="getPolicyDetail" resultType="cn.timer.api.dto.insure.PolicyDto"> <select id="getPolicyDetail" resultType="cn.timer.api.dto.insure.PolicyDto">
...@@ -268,4 +305,22 @@ ...@@ -268,4 +305,22 @@
LIMIT 1 LIMIT 1
</select> </select>
<select id="policyTotalList" resultType="cn.timer.api.dto.insure.PolicyDto">
SELECT
ip.id AS id,
ip.scheme_name AS schemeName,
ip.type AS type,
(select count(id) from insure_policy) AS totaPolicy,
(select count(org_code) from insure_policy) AS totalCompany,
count( iu.id ) AS totalUser,
(select sum(total_premium) from insure_policy) as totalPremium,
ip.update_time AS updateTime
FROM
insure_policy ip
LEFT JOIN insure_user iu ON iu.policy_id = ip.id
WHERE
iu.insure_status = 1
GROUP BY
ip.type
</select>
</mapper> </mapper>
...@@ -29,6 +29,7 @@ ...@@ -29,6 +29,7 @@
<result property="insureStatus" column="insure_status"/> <result property="insureStatus" column="insure_status"/>
<result property="policyId" column="policy_id"/> <result property="policyId" column="policy_id"/>
<result property="replaceTransId" column="replace_trans_id"/> <result property="replaceTransId" column="replace_trans_id"/>
<result property="applyType" column="apply_type"/>
</resultMap> </resultMap>
<select id="queryObject" resultType="cn.timer.api.bean.insure.InsureUser"> <select id="queryObject" resultType="cn.timer.api.bean.insure.InsureUser">
...@@ -311,4 +312,5 @@ ...@@ -311,4 +312,5 @@
#{id} #{id}
</foreach> </foreach>
</select> </select>
</mapper> </mapper>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment