diff --git a/crm/src/main/java/com/kakarote/crm/constant/CrmConst.java b/crm/src/main/java/com/kakarote/crm/constant/CrmConst.java index f773de7..22db897 100644 --- a/crm/src/main/java/com/kakarote/crm/constant/CrmConst.java +++ b/crm/src/main/java/com/kakarote/crm/constant/CrmConst.java @@ -17,4 +17,9 @@ public class CrmConst extends Const { */ public static final String FIELD_SORT_CACHE_NAME = "CRM:FIELD:SORT:"; + + public static final String V3_QYFXXX = "/api/risk/fxFxzbJcjgZbmx/openApi/getFxBynsrsbh"; + + + } diff --git a/crm/src/main/java/com/kakarote/crm/controller/CrmGetV3SysRiskDataController.java b/crm/src/main/java/com/kakarote/crm/controller/CrmGetV3SysRiskDataController.java index 7d9af2e..2407150 100644 --- a/crm/src/main/java/com/kakarote/crm/controller/CrmGetV3SysRiskDataController.java +++ b/crm/src/main/java/com/kakarote/crm/controller/CrmGetV3SysRiskDataController.java @@ -1,22 +1,12 @@ package com.kakarote.crm.controller; - - -import com.google.gson.Gson; -import com.kakarote.crm.entity.PO.CrmQyfxjcjg; -import com.kakarote.crm.entity.PO.CrmQyfxjcjgZbmx; -import com.kakarote.crm.entity.VO.CrmApiResponseVO; -import com.kakarote.crm.entity.VO.CrmV3SystemicRiskVO; -import com.kakarote.crm.entity.VO.CrmRiskCheckResultVO; +import com.kakarote.core.common.Result; +import com.kakarote.crm.entity.VO.CrmV3SysRiskDataExposedVo; import com.kakarote.crm.service.ICrmQyfxjcjgService; -import com.kakarote.crm.service.ICrmQyfxjcjgZbmxService; -import okhttp3.MediaType; -import okhttp3.OkHttpClient; -import okhttp3.Request; -import okhttp3.Response; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import java.io.IOException; + @RestController @RequestMapping("/crmGetData") public class CrmGetV3SysRiskDataController { @@ -24,53 +14,9 @@ public class CrmGetV3SysRiskDataController { @Autowired private ICrmQyfxjcjgService iCrmQyfxjcjgService; - @Autowired - private ICrmQyfxjcjgZbmxService iCrmQyfxjcjgZbmxService; - @PostMapping(value = "/resp") - public void getV3SysRiskData(@RequestBody CrmV3SystemicRiskVO crmV3SystemicRiskVO) { - - OkHttpClient client = new OkHttpClient(); - - MediaType JSON = MediaType.get("application/json; charset=utf-8"); - - Gson gson = new Gson(); - String json = gson.toJson(crmV3SystemicRiskVO); - - okhttp3.RequestBody body = okhttp3.RequestBody.create(JSON, json); - - Request request = new Request.Builder() - .url("https://v3-demo.lqyuns.com/api/risk/fxFxzbJcjgZbmx/openApi/getFxBynsrsbh") - .post(body) - .build(); - - try { - Response response = client.newCall(request).execute(); - String respJson = response.body().string(); - - CrmApiResponseVO crmApiResponseVO = gson.fromJson(respJson, CrmApiResponseVO.class); - - System.out.println(crmApiResponseVO); - - System.out.println("响应消息:"+crmApiResponseVO.getMsg()); - System.out.println("响应代码:"+crmApiResponseVO.getCode()); - System.out.println("响应数据:"+crmApiResponseVO.getData()); - - for (CrmRiskCheckResultVO crmRiskCheckResultVO : crmApiResponseVO.getData()) { - - CrmQyfxjcjg crmQyfxjcjg = crmRiskCheckResultVO.getCrmQyfxjcjg(); - iCrmQyfxjcjgService.insertCrmQyfxjcjg(crmQyfxjcjg); - - for (CrmQyfxjcjgZbmx item : crmRiskCheckResultVO.getCrmQyfxjcjgZbmxList()){ - - iCrmQyfxjcjgZbmxService.insertQyfxjcjgZbmx(item); - } - } - - } catch (IOException e) { - throw new RuntimeException(e); - } + public Result getV3SysRiskData(@RequestBody CrmV3SysRiskDataExposedVo crmV3SysRiskDataExposedVo) throws IOException { + return Result.ok(iCrmQyfxjcjgService.getLocalRiskData(crmV3SysRiskDataExposedVo)); } - - } + diff --git a/crm/src/main/java/com/kakarote/crm/controller/CrmNsrzgController.java b/crm/src/main/java/com/kakarote/crm/controller/CrmNsrzgController.java new file mode 100644 index 0000000..dbad2f7 --- /dev/null +++ b/crm/src/main/java/com/kakarote/crm/controller/CrmNsrzgController.java @@ -0,0 +1,48 @@ +package com.kakarote.crm.controller; + + +import com.kakarote.core.common.ParamAspect; +import com.kakarote.core.common.R; +import com.kakarote.core.common.Result; +import com.kakarote.crm.entity.PO.CrmNsrzg; +import com.kakarote.crm.service.ICrmNsrzgService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import io.swagger.annotations.ApiParam; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +@RestController +@RequestMapping("/nsrzg") +@Api(tags = "纳税人资格信息") +public class CrmNsrzgController { + + @Autowired + private ICrmNsrzgService crmNsrzgService; + + @PostMapping("/queryById/{nsrdjzgId}") + @ApiOperation("根据ID查询") + @ParamAspect + public Result queryById(@PathVariable("nsrdjzgId") @ApiParam(name = "id", value = "纳税人资格ID") Integer nsrdjzgId) { + CrmNsrzg nsrzg = crmNsrzgService.getNsrzg(nsrdjzgId); + return R.ok(nsrzg); + } + + @PostMapping("/add") + @ApiOperation("保存数据") + public Result add(@RequestBody CrmNsrzg crmNsrzg) { + return R.ok(crmNsrzgService.insertNsrzg(crmNsrzg)); + } + + @PostMapping("/deleteById/{nsrdjzgId}") + @ApiOperation("根据ID删除数据") + public Result deleteById(@PathVariable("nsrdjzgId") String nsrdjzgId){ + return R.ok(crmNsrzgService.deleteNsrzg(nsrdjzgId)); + } + + @PostMapping("/update") + @ApiOperation("更新数据") + public Result update(@RequestBody CrmNsrzg crmNsrzg){ + return R.ok(crmNsrzgService.updateNsrzg(crmNsrzg)); + } +} diff --git a/crm/src/main/java/com/kakarote/crm/controller/CrmQycbrsController.java b/crm/src/main/java/com/kakarote/crm/controller/CrmQycbrsController.java new file mode 100644 index 0000000..6ef8363 --- /dev/null +++ b/crm/src/main/java/com/kakarote/crm/controller/CrmQycbrsController.java @@ -0,0 +1,48 @@ +package com.kakarote.crm.controller; + + +import com.kakarote.core.common.ParamAspect; +import com.kakarote.core.common.R; +import com.kakarote.core.common.Result; +import com.kakarote.crm.entity.PO.CrmQycbrs; +import com.kakarote.crm.service.ICrmQycbrsService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import io.swagger.annotations.ApiParam; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +@RestController +@RequestMapping("/qycbrs") +@Api(tags = "企业参保人数信息") +public class CrmQycbrsController { + + @Autowired + private ICrmQycbrsService crmQycbrsService; + + @PostMapping("/queryById/{qycbrsId}") + @ApiOperation("根据ID查询") + @ParamAspect + public Result queryById(@PathVariable("qycbrsId") @ApiParam(name = "id", value = "企业参保人数ID") Integer qycbrsId) { + CrmQycbrs qyjxfp = crmQycbrsService.getQycbrs(qycbrsId); + return R.ok(qyjxfp); + } + + @PostMapping("/add") + @ApiOperation("保存数据") + public Result add(@RequestBody CrmQycbrs crmQycbrs) { + return R.ok(crmQycbrsService.insertQycbrs(crmQycbrs)); + } + + @PostMapping("/deleteById/{qycbrsId}") + @ApiOperation("根据ID删除数据") + public Result deleteById(@PathVariable("qycbrsId") String qycbrsId){ + return R.ok(crmQycbrsService.deleteQycbrs(qycbrsId)); + } + + @PostMapping("/update") + @ApiOperation("更新数据") + public Result update(@RequestBody CrmQycbrs crmQycbrs){ + return R.ok(crmQycbrsService.updateQycbrs(crmQycbrs)); + } +} diff --git a/crm/src/main/java/com/kakarote/crm/controller/CrmQyfxmxController.java b/crm/src/main/java/com/kakarote/crm/controller/CrmQyfxmxController.java new file mode 100644 index 0000000..d8bccdd --- /dev/null +++ b/crm/src/main/java/com/kakarote/crm/controller/CrmQyfxmxController.java @@ -0,0 +1,47 @@ +package com.kakarote.crm.controller; + +import com.kakarote.core.common.ParamAspect; +import com.kakarote.core.common.R; +import com.kakarote.core.common.Result; +import com.kakarote.crm.entity.PO.CrmQyfxmx; +import com.kakarote.crm.service.ICrmQyfxmxService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import io.swagger.annotations.ApiParam; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +@RestController +@RequestMapping("/qyfxmx") +@Api(tags = "企业风险明细信息") +public class CrmQyfxmxController { + + @Autowired + private ICrmQyfxmxService crmQyfxmxService; + + @PostMapping("/queryById/{qyzbmxId}") + @ApiOperation("根据ID查询") + @ParamAspect + public Result queryById(@PathVariable("qyzbmxId") @ApiParam(name = "id", value = "企业指标明细ID") Integer qyzbmxId) { + CrmQyfxmx qyfxmx = crmQyfxmxService.getQyfxmx(qyzbmxId); + return R.ok(qyfxmx); + } + + @PostMapping("/add") + @ApiOperation("保存数据") + public Result add(@RequestBody CrmQyfxmx crmQyfxmx) { + return R.ok(crmQyfxmxService.insertQyfxmx(crmQyfxmx)); + } + + @PostMapping("/deleteById/{qyzbmxId}") + @ApiOperation("根据ID删除数据") + public Result deleteById(@PathVariable("qyzbmxId") String qyzbmxId){ + return R.ok(crmQyfxmxService.deleteQyfxmx(qyzbmxId)); + } + + @PostMapping("/update") + @ApiOperation("更新数据") + public Result update(@RequestBody CrmQyfxmx crmQyfxmx){ + return R.ok(crmQyfxmxService.updateQyfxmx(crmQyfxmx)); + } +} diff --git a/crm/src/main/java/com/kakarote/crm/controller/CrmQyjxfpController.java b/crm/src/main/java/com/kakarote/crm/controller/CrmQyjxfpController.java new file mode 100644 index 0000000..151666b --- /dev/null +++ b/crm/src/main/java/com/kakarote/crm/controller/CrmQyjxfpController.java @@ -0,0 +1,48 @@ +package com.kakarote.crm.controller; + +import com.kakarote.core.common.ParamAspect; +import com.kakarote.core.common.R; +import com.kakarote.core.common.Result; +import com.kakarote.crm.entity.PO.CrmQyjxfp; +import com.kakarote.crm.service.ICrmQyjxfpService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import io.swagger.annotations.ApiParam; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +@RestController +@RequestMapping("/qyjxfp") +@Api(tags = "企业进项发票信息") +public class CrmQyjxfpController { + + @Autowired + private ICrmQyjxfpService crmQyjxfpService; + + @PostMapping("/queryById/{qyjxfpId}") + @ApiOperation("根据ID查询") + @ParamAspect + public Result queryById(@PathVariable("qyjxfpId") @ApiParam(name = "id", value = "企业进项发票ID") Integer qyjxfpId) { + CrmQyjxfp qyjxfp = crmQyjxfpService.getQyjxfp(qyjxfpId); + return R.ok(qyjxfp); + } + + @PostMapping("/add") + @ApiOperation("保存数据") + public Result add(@RequestBody CrmQyjxfp crmQyjxfp) { + return R.ok(crmQyjxfpService.insertQyjxfp(crmQyjxfp)); + } + + @PostMapping("/deleteById/{qyjxfpId}") + @ApiOperation("根据ID删除数据") + public Result deleteById(@PathVariable("qyjxfpId") String qyjxfpId){ + return R.ok(crmQyjxfpService.deleteQyjxfp(qyjxfpId)); + } + + @PostMapping("/update") + @ApiOperation("更新数据") + public Result update(@RequestBody CrmQyjxfp crmQyjxfp){ + return R.ok(crmQyjxfpService.updateQyjxfp(crmQyjxfp)); + } + +} \ No newline at end of file diff --git a/crm/src/main/java/com/kakarote/crm/controller/CrmQynsrdjController.java b/crm/src/main/java/com/kakarote/crm/controller/CrmQynsrdjController.java new file mode 100644 index 0000000..6b78835 --- /dev/null +++ b/crm/src/main/java/com/kakarote/crm/controller/CrmQynsrdjController.java @@ -0,0 +1,48 @@ +package com.kakarote.crm.controller; + + +import com.kakarote.core.common.ParamAspect; +import com.kakarote.core.common.R; +import com.kakarote.core.common.Result; +import com.kakarote.crm.entity.PO.CrmQynsrdj; +import com.kakarote.crm.service.ICrmQynsrdjService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import io.swagger.annotations.ApiParam; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +@RestController +@RequestMapping("/qynsrdj") +@Api(tags = "企业纳税信用登记信息") +public class CrmQynsrdjController { + + @Autowired + private ICrmQynsrdjService crmQynsrdjService; + + @PostMapping("/queryById/{qynsrdjId}") + @ApiOperation("根据ID查询") + @ParamAspect + public Result queryById(@PathVariable("qynsrdjId") @ApiParam(name = "id", value = "企业纳税信用登记ID") Integer qynsrdjId) { + CrmQynsrdj qynsrdj = crmQynsrdjService.getQynsrdj(qynsrdjId); + return R.ok(qynsrdj); + } + + @PostMapping("/add") + @ApiOperation("保存数据") + public Result add(@RequestBody CrmQynsrdj crmQynsrdj) { + return R.ok(crmQynsrdjService.insertQynsrdj(crmQynsrdj)); + } + + @PostMapping("/deleteById/{qynsrdjId}") + @ApiOperation("根据ID删除数据") + public Result deleteById(@PathVariable("qynsrdjId") String qynsrdjId){ + return R.ok(crmQynsrdjService.deleteQynsrdj(qynsrdjId)); + } + + @PostMapping("/update") + @ApiOperation("更新数据") + public Result update(@RequestBody CrmQynsrdj crmQynsrdj){ + return R.ok(crmQynsrdjService.updateQynsrdj(crmQynsrdj)); + } +} diff --git a/crm/src/main/java/com/kakarote/crm/controller/CrmQysdsndsbController.java b/crm/src/main/java/com/kakarote/crm/controller/CrmQysdsndsbController.java new file mode 100644 index 0000000..91f2244 --- /dev/null +++ b/crm/src/main/java/com/kakarote/crm/controller/CrmQysdsndsbController.java @@ -0,0 +1,47 @@ +package com.kakarote.crm.controller; + +import com.kakarote.core.common.ParamAspect; +import com.kakarote.core.common.R; +import com.kakarote.core.common.Result; +import com.kakarote.crm.entity.PO.CrmQysdsndsb; +import com.kakarote.crm.service.ICrmQysdsndsbService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import io.swagger.annotations.ApiParam; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +@RestController +@RequestMapping("/qysdsndsb") +@Api(tags = "企业所得税年度申报信息") +public class CrmQysdsndsbController { + + @Autowired + private ICrmQysdsndsbService crmQysdsndsbService; + + @PostMapping("/queryById/{qysdsndsbId}") + @ApiOperation("根据ID查询") + @ParamAspect + public Result queryById(@PathVariable("qysdsndsbId") @ApiParam(name = "id", value = "企业所得税年度申报ID") Integer qysdsndsbId) { + CrmQysdsndsb qysdsndsb = crmQysdsndsbService.getQysdsndsb(qysdsndsbId); + return R.ok(qysdsndsb); + } + + @PostMapping("/add") + @ApiOperation("保存数据") + public Result add(@RequestBody CrmQysdsndsb crmQysdsndsb) { + return R.ok(crmQysdsndsbService.insertQysdsndsb(crmQysdsndsb)); + } + + @PostMapping("/deleteById/{qysdsndsbId}") + @ApiOperation("根据ID删除数据") + public Result deleteById(@PathVariable("qysdsndsbId") String qysdsndsbId){ + return R.ok(crmQysdsndsbService.deleteQysdsndsb(qysdsndsbId)); + } + + @PostMapping("/update") + @ApiOperation("更新数据") + public Result update(@RequestBody CrmQysdsndsb crmQysdsndsb){ + return R.ok(crmQysdsndsbService.updateQysdsndsb(crmQysdsndsb)); + } +} diff --git a/crm/src/main/java/com/kakarote/crm/controller/CrmQysflController.java b/crm/src/main/java/com/kakarote/crm/controller/CrmQysflController.java new file mode 100644 index 0000000..286d085 --- /dev/null +++ b/crm/src/main/java/com/kakarote/crm/controller/CrmQysflController.java @@ -0,0 +1,49 @@ +package com.kakarote.crm.controller; + + +import com.kakarote.core.common.ParamAspect; +import com.kakarote.core.common.R; +import com.kakarote.core.common.Result; +import com.kakarote.crm.entity.PO.CrmQyjxfp; +import com.kakarote.crm.entity.PO.CrmQysfl; +import com.kakarote.crm.service.ICrmQysflService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import io.swagger.annotations.ApiParam; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +@RestController +@RequestMapping("/qysfl") +@Api(tags = "企业税负率信息") +public class CrmQysflController { + + @Autowired + private ICrmQysflService crmQysflService; + + @PostMapping("/queryById/{qysflId}") + @ApiOperation("根据ID查询") + @ParamAspect + public Result queryById(@PathVariable("qysflId") @ApiParam(name = "id", value = "企业税负率ID") Integer qysflId) { + CrmQysfl qysfl = crmQysflService.getQysfl(qysflId); + return R.ok(qysfl); + } + + @PostMapping("/add") + @ApiOperation("保存数据") + public Result add(@RequestBody CrmQysfl crmQysfl) { + return R.ok(crmQysflService.insertQysfl(crmQysfl)); + } + + @PostMapping("/deleteById/{qysflId}") + @ApiOperation("根据ID删除数据") + public Result deleteById(@PathVariable("qysflId") String qysflId){ + return R.ok(crmQysflService.deleteQysfl(qysflId)); + } + + @PostMapping("/update") + @ApiOperation("更新数据") + public Result update(@RequestBody CrmQysfl crmQysfl){ + return R.ok(crmQysflService.updateQysfl(crmQysfl)); + } +} diff --git a/crm/src/main/java/com/kakarote/crm/controller/CrmQyxxfpController.java b/crm/src/main/java/com/kakarote/crm/controller/CrmQyxxfpController.java new file mode 100644 index 0000000..35c5684 --- /dev/null +++ b/crm/src/main/java/com/kakarote/crm/controller/CrmQyxxfpController.java @@ -0,0 +1,47 @@ +package com.kakarote.crm.controller; + +import com.kakarote.core.common.ParamAspect; +import com.kakarote.core.common.R; +import com.kakarote.core.common.Result; +import com.kakarote.crm.entity.PO.CrmQyxxfp; +import com.kakarote.crm.service.ICrmQyxxfpService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import io.swagger.annotations.ApiParam; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +@RestController +@RequestMapping("/qyxxfp") +@Api(tags = "企业销项发票信息") +public class CrmQyxxfpController { + + @Autowired + private ICrmQyxxfpService crmQyxxfpService; + + @PostMapping("/queryById/{qyxxfpId}") + @ApiOperation("根据ID查询") + @ParamAspect + public Result queryById(@PathVariable("qyxxfpId") @ApiParam(name = "id", value = "企业进项发票ID") Integer qyxxfpId) { + CrmQyxxfp qyxxfp = crmQyxxfpService.getQyxxfp(qyxxfpId); + return R.ok(qyxxfp); + } + + @PostMapping("/add") + @ApiOperation("保存数据") + public Result add(@RequestBody CrmQyxxfp crmQyxxfp) { + return R.ok(crmQyxxfpService.insertQyxxfp(crmQyxxfp)); + } + + @PostMapping("/deleteById/{qyxxfpId}") + @ApiOperation("根据ID删除数据") + public Result deleteById(@PathVariable("qyxxfpId") String qyxxfpId){ + return R.ok(crmQyxxfpService.deleteQyxxfp(qyxxfpId)); + } + + @PostMapping("/update") + @ApiOperation("更新数据") + public Result update(@RequestBody CrmQyxxfp crmQyxxfp){ + return R.ok(crmQyxxfpService.updateQyxxfp(crmQyxxfp)); + } +} diff --git a/crm/src/main/java/com/kakarote/crm/controller/CrmSwjgController.java b/crm/src/main/java/com/kakarote/crm/controller/CrmSwjgController.java new file mode 100644 index 0000000..c20fc46 --- /dev/null +++ b/crm/src/main/java/com/kakarote/crm/controller/CrmSwjgController.java @@ -0,0 +1,47 @@ +package com.kakarote.crm.controller; + +import com.kakarote.core.common.ParamAspect; +import com.kakarote.core.common.R; +import com.kakarote.core.common.Result; +import com.kakarote.crm.entity.PO.CrmSwjg; +import com.kakarote.crm.service.ICrmSwjgService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import io.swagger.annotations.ApiParam; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +@RestController +@RequestMapping("/swjg") +@Api(tags = "税务机关信息") +public class CrmSwjgController { + + @Autowired + private ICrmSwjgService crmSwjgService; + + @PostMapping("/queryById/{swjgId}") + @ApiOperation("根据ID查询") + @ParamAspect + public Result queryById(@PathVariable("swjgId") @ApiParam(name = "id", value = "税务机关ID") Integer swjgId) { + CrmSwjg swjg = crmSwjgService.getSwjg(swjgId); + return R.ok(swjg); + } + + @PostMapping("/add") + @ApiOperation("保存数据") + public Result add(@RequestBody CrmSwjg crmSwjg) { + return R.ok(crmSwjgService.insertSwjg(crmSwjg)); + } + + @PostMapping("/deleteById/{swjgId}") + @ApiOperation("根据ID删除数据") + public Result deleteById(@PathVariable("swjgId") String swjgId){ + return R.ok(crmSwjgService.deleteSwjg(swjgId)); + } + + @PostMapping("/update") + @ApiOperation("更新数据") + public Result update(@RequestBody CrmSwjg crmSwjg){ + return R.ok(crmSwjgService.updateSwjg(crmSwjg)); + } +} diff --git a/crm/src/main/java/com/kakarote/crm/entity/PO/CrmQyfxjcjg.java b/crm/src/main/java/com/kakarote/crm/entity/PO/CrmQyfxjcjg.java index 92d0457..fb58c33 100644 --- a/crm/src/main/java/com/kakarote/crm/entity/PO/CrmQyfxjcjg.java +++ b/crm/src/main/java/com/kakarote/crm/entity/PO/CrmQyfxjcjg.java @@ -2,6 +2,7 @@ package com.kakarote.crm.entity.PO; import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import io.swagger.annotations.ApiModel; @@ -11,6 +12,7 @@ import lombok.experimental.Accessors; import java.io.Serializable; import java.util.Date; +import java.util.List; @Data @Accessors(chain = true) @@ -86,4 +88,7 @@ public class CrmQyfxjcjg implements Serializable { * 批量监测id */ private String pljcId; + + @TableField(exist = false) + private List crmQyfxjcjgZbmxList; } diff --git a/crm/src/main/java/com/kakarote/crm/entity/VO/CrmV3SysRiskDataExposedVo.java b/crm/src/main/java/com/kakarote/crm/entity/VO/CrmV3SysRiskDataExposedVo.java new file mode 100644 index 0000000..d7e48bc --- /dev/null +++ b/crm/src/main/java/com/kakarote/crm/entity/VO/CrmV3SysRiskDataExposedVo.java @@ -0,0 +1,16 @@ +package com.kakarote.crm.entity.VO; + +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; + +import java.util.Date; + + +@Data +public class CrmV3SysRiskDataExposedVo { + + private String nsrsbh; + + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd",timezone = "GMT+8") + private Date ssqQ; +} diff --git a/crm/src/main/java/com/kakarote/crm/entity/VO/CrmV3SystemicRiskVO.java b/crm/src/main/java/com/kakarote/crm/entity/VO/CrmV3SystemicRiskVO.java index 1ad6d87..739759f 100644 --- a/crm/src/main/java/com/kakarote/crm/entity/VO/CrmV3SystemicRiskVO.java +++ b/crm/src/main/java/com/kakarote/crm/entity/VO/CrmV3SystemicRiskVO.java @@ -1,8 +1,13 @@ package com.kakarote.crm.entity.VO; +import com.fasterxml.jackson.annotation.JsonFormat; import lombok.Data; +import lombok.experimental.Accessors; + +import java.util.Date; @Data +@Accessors(chain = true) public class CrmV3SystemicRiskVO { private Integer appId; @@ -11,8 +16,12 @@ public class CrmV3SystemicRiskVO { private String nsrsbh; + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd",timezone = "GMT+8") + private Date ssqQ; + public CrmV3SystemicRiskVO() { this.appId = 101011; this.appSecret = "crmopenapi"; } + } diff --git a/crm/src/main/java/com/kakarote/crm/mapper/xml/CrmQyfxjcjgMapper.xml b/crm/src/main/java/com/kakarote/crm/mapper/xml/CrmQyfxjcjgMapper.xml new file mode 100644 index 0000000..688e228 --- /dev/null +++ b/crm/src/main/java/com/kakarote/crm/mapper/xml/CrmQyfxjcjgMapper.xml @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + + + diff --git a/crm/src/main/java/com/kakarote/crm/mapper/xml/CrmQyfxjcjgmxMapper.xml b/crm/src/main/java/com/kakarote/crm/mapper/xml/CrmQyfxjcjgmxMapper.xml new file mode 100644 index 0000000..ceb7e84 --- /dev/null +++ b/crm/src/main/java/com/kakarote/crm/mapper/xml/CrmQyfxjcjgmxMapper.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/crm/src/main/java/com/kakarote/crm/service/ICrmQyfxjcjgService.java b/crm/src/main/java/com/kakarote/crm/service/ICrmQyfxjcjgService.java index ef5cfbf..d4d3163 100644 --- a/crm/src/main/java/com/kakarote/crm/service/ICrmQyfxjcjgService.java +++ b/crm/src/main/java/com/kakarote/crm/service/ICrmQyfxjcjgService.java @@ -2,7 +2,11 @@ package com.kakarote.crm.service; import com.kakarote.core.servlet.BaseService; import com.kakarote.crm.entity.PO.CrmQyfxjcjg; +import com.kakarote.crm.entity.PO.CrmQyfxjcjgZbmx; +import com.kakarote.crm.entity.VO.CrmV3SysRiskDataExposedVo; +import com.kakarote.crm.entity.VO.CrmV3SystemicRiskVO; +import java.io.IOException; import java.util.List; public interface ICrmQyfxjcjgService extends BaseService { @@ -39,4 +43,8 @@ public interface ICrmQyfxjcjgService extends BaseService { * @return */ List getQyfxjcjgList(CrmQyfxjcjg crmQyfxjcjg); + + List getLocalRiskData(CrmV3SysRiskDataExposedVo crmV3SysRiskDataExposedVo); + + List fetchAndSaveThirdPartyRiskData(CrmV3SysRiskDataExposedVo crmV3SysRiskDataExposedVo) throws IOException; } diff --git a/crm/src/main/java/com/kakarote/crm/service/impl/CrmQyfxjcjgServiceImpl.java b/crm/src/main/java/com/kakarote/crm/service/impl/CrmQyfxjcjgServiceImpl.java index db2fd98..69d7342 100644 --- a/crm/src/main/java/com/kakarote/crm/service/impl/CrmQyfxjcjgServiceImpl.java +++ b/crm/src/main/java/com/kakarote/crm/service/impl/CrmQyfxjcjgServiceImpl.java @@ -2,20 +2,41 @@ package com.kakarote.crm.service.impl; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.google.gson.Gson; +import com.google.gson.GsonBuilder; import com.kakarote.core.servlet.BaseServiceImpl; import com.kakarote.crm.entity.PO.CrmQyfxjcjg; +import com.kakarote.crm.entity.PO.CrmQyfxjcjgZbmx; +import com.kakarote.crm.entity.VO.CrmApiResponseVO; +import com.kakarote.crm.entity.VO.CrmRiskCheckResultVO; +import com.kakarote.crm.entity.VO.CrmV3SysRiskDataExposedVo; +import com.kakarote.crm.entity.VO.CrmV3SystemicRiskVO; import com.kakarote.crm.mapper.CrmQyfxjcjgMapper; import com.kakarote.crm.service.ICrmQyfxjcjgService; +import com.kakarote.crm.service.ICrmQyfxjcjgZbmxService; +import com.kakarote.crm.util.OkHttpClientUtil; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; + +import java.io.IOException; +import java.util.ArrayList; import java.util.List; +import static com.kakarote.crm.constant.CrmConst.V3_QYFXXX; + @Service public class CrmQyfxjcjgServiceImpl extends BaseServiceImpl implements ICrmQyfxjcjgService { @Autowired private CrmQyfxjcjgMapper crmQyfxjcjgMapper; + @Autowired + private ICrmQyfxjcjgZbmxService iCrmQyfxjcjgZbmxService; + + @Value("${app.url}") + private String V3_Url; + @Override public CrmQyfxjcjg getCrmQyfxjcjg(String jcpcUuid) { return crmQyfxjcjgMapper.selectById(jcpcUuid); @@ -39,6 +60,77 @@ public class CrmQyfxjcjgServiceImpl extends BaseServiceImpl getQyfxjcjgList(CrmQyfxjcjg crmQyfxjcjg) { QueryWrapper CrmQyfxjcjgQueryWrapper = new QueryWrapper<>(); + CrmQyfxjcjgQueryWrapper.eq("jc_ssqQ",crmQyfxjcjg.getJcSsqq()); + CrmQyfxjcjgQueryWrapper.eq("qysbh",crmQyfxjcjg.getQysbh()); return crmQyfxjcjgMapper.selectList(CrmQyfxjcjgQueryWrapper); } + + + + + @Override + public List getLocalRiskData(CrmV3SysRiskDataExposedVo vo){ + + CrmQyfxjcjg crmQyfxjcjg = new CrmQyfxjcjg() + .setJcSsqq(vo.getSsqQ()) + .setQysbh(vo.getNsrsbh()); + + QueryWrapper CrmQyfxjcjgQueryWrapper = new QueryWrapper<>(); + CrmQyfxjcjgQueryWrapper.eq("jc_ssqQ",crmQyfxjcjg.getJcSsqq()); + CrmQyfxjcjgQueryWrapper.eq("qysbh",crmQyfxjcjg.getQysbh()); + + List qyfxjcjgList = crmQyfxjcjgMapper.selectList(CrmQyfxjcjgQueryWrapper); + + for (CrmQyfxjcjg qyfxjcjg : qyfxjcjgList) { + CrmQyfxjcjgZbmx crmQyfxjcjgZbmx = new CrmQyfxjcjgZbmx().setJcpcUuid(qyfxjcjg.getJcpcUuid()); + List qyfxjcjgZbmxList = iCrmQyfxjcjgZbmxService.getQyfxjcjgZbmxList(crmQyfxjcjgZbmx); + if (!qyfxjcjgZbmxList.isEmpty()) { + qyfxjcjg.setCrmQyfxjcjgZbmxList(qyfxjcjgZbmxList); + } + } + + if (qyfxjcjgList.isEmpty()) { + //3.如果该集合不存在,则发送http请求,调用第三方接口获得数据,并将其全部插入数据表中 + try { + qyfxjcjgList = fetchAndSaveThirdPartyRiskData(vo); + } catch (IOException e) { + throw new RuntimeException(e); + } + } + return qyfxjcjgList; + } + + @Override + public List fetchAndSaveThirdPartyRiskData(CrmV3SysRiskDataExposedVo vo) throws IOException { + + List qyfxjcjgList = new ArrayList<>(); + + Gson gson = new GsonBuilder() + .setDateFormat("yyyy-MM-dd") // 匹配 @JsonFormat + .create(); + CrmV3SystemicRiskVO crmV3SystemicRiskVO = new CrmV3SystemicRiskVO().setSsqQ(vo.getSsqQ()).setNsrsbh(vo.getNsrsbh()); + + String json = gson.toJson(crmV3SystemicRiskVO); + + String responseJson = OkHttpClientUtil.post(V3_Url+V3_QYFXXX, json); + + CrmApiResponseVO crmApiResponseVO = gson.fromJson(responseJson, CrmApiResponseVO.class); + + for (CrmRiskCheckResultVO crmRiskCheckResultVO : crmApiResponseVO.getData()) { + + CrmQyfxjcjg qyfxjcjg = crmRiskCheckResultVO.getCrmQyfxjcjg(); + + crmQyfxjcjgMapper.insert(qyfxjcjg); + + for (CrmQyfxjcjgZbmx item : crmRiskCheckResultVO.getCrmQyfxjcjgZbmxList()){ + iCrmQyfxjcjgZbmxService.insertQyfxjcjgZbmx(item); + + } + qyfxjcjg.setCrmQyfxjcjgZbmxList(crmRiskCheckResultVO.getCrmQyfxjcjgZbmxList()); + qyfxjcjgList.add(qyfxjcjg); + + } + return qyfxjcjgList; + } + } diff --git a/crm/src/main/java/com/kakarote/crm/service/impl/CrmQyfxjcjgZbmxServiceImpl.java b/crm/src/main/java/com/kakarote/crm/service/impl/CrmQyfxjcjgZbmxServiceImpl.java index 0cbe6f0..8678ffc 100644 --- a/crm/src/main/java/com/kakarote/crm/service/impl/CrmQyfxjcjgZbmxServiceImpl.java +++ b/crm/src/main/java/com/kakarote/crm/service/impl/CrmQyfxjcjgZbmxServiceImpl.java @@ -38,6 +38,7 @@ public class CrmQyfxjcjgZbmxServiceImpl extends BaseServiceImpl getQyfxjcjgZbmxList(CrmQyfxjcjgZbmx crmQyfxjcjgZbmx) { QueryWrapper CrmQyfxjcjgZbmxQueryWrapper = new QueryWrapper<>(); + CrmQyfxjcjgZbmxQueryWrapper.eq("jcpc_uuid",crmQyfxjcjgZbmx.getJcpcUuid()); return crmQyfxjcjgZbmxMapper.selectList(CrmQyfxjcjgZbmxQueryWrapper); } } diff --git a/crm/src/main/java/com/kakarote/crm/util/OkHttpClientUtil.java b/crm/src/main/java/com/kakarote/crm/util/OkHttpClientUtil.java new file mode 100644 index 0000000..bf4b21e --- /dev/null +++ b/crm/src/main/java/com/kakarote/crm/util/OkHttpClientUtil.java @@ -0,0 +1,37 @@ +package com.kakarote.crm.util; + +import okhttp3.*; +import org.springframework.stereotype.Component; + +import java.io.IOException; + +@Component +public class OkHttpClientUtil { + + private static final OkHttpClient client = new OkHttpClient(); + + /** + * 创建一个post请求,并得到响应数据的json形式 + * + * @param url 第三方接口地址 + * @param json 传入请求体的参数转换成json字符串 + * @return + */ + public static String post(String url, String json) throws IOException { + + MediaType JSON = MediaType.get("application/json; charset=utf-8"); + + RequestBody requestBody = RequestBody.create(JSON, json); + + Request request = new Request.Builder() + .url(url) + .post(requestBody) + .build(); + + Response response = client.newCall(request).execute(); + + return response.body().string(); + } + + +}