|
|
@@ -1,19 +1,106 @@
|
|
|
package org.jeecg.modules.hlwinvoice.service.impl;
|
|
|
|
|
|
+import com.alibaba.fastjson.JSONObject;
|
|
|
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
+import lombok.extern.slf4j.Slf4j;
|
|
|
+import org.apache.shiro.SecurityUtils;
|
|
|
+import org.jeecg.common.exception.JeecgBootException;
|
|
|
+import org.jeecg.common.system.vo.LoginUser;
|
|
|
+import org.jeecg.common.utils.CryptTool;
|
|
|
+import org.jeecg.common.utils.HttpsContants;
|
|
|
+import org.jeecg.common.utils.OauthApi;
|
|
|
+import org.jeecg.common.utils.OauthTokenUtils;
|
|
|
import org.jeecg.modules.hlwinvoice.entity.HlwDutyApply;
|
|
|
import org.jeecg.modules.hlwinvoice.mapper.HlwDutyApplyMapper;
|
|
|
import org.jeecg.modules.hlwinvoice.service.IHlwDutyApplyService;
|
|
|
+import org.jeecg.modules.util.RoleDataUtils;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
|
+import javax.servlet.http.HttpServletRequest;
|
|
|
+import java.util.HashMap;
|
|
|
+import java.util.List;
|
|
|
+import java.util.Map;
|
|
|
+
|
|
|
/**
|
|
|
* @Description: hlw_duty_apply
|
|
|
* @Author: jeecg-boot
|
|
|
* @Date: 2020-07-24
|
|
|
* @Version: V1.0
|
|
|
*/
|
|
|
+@Slf4j
|
|
|
@Service
|
|
|
public class HlwDutyApplyServiceImpl extends ServiceImpl<HlwDutyApplyMapper, HlwDutyApply> implements IHlwDutyApplyService {
|
|
|
|
|
|
+ @Override
|
|
|
+ public Page<HlwDutyApply> pageApplyList(Page<HlwDutyApply> page, HlwDutyApply hlwDutyApply, HttpServletRequest request) {
|
|
|
+ //获取请求路由路径
|
|
|
+ String routeUrl = request.getServletPath();
|
|
|
+ //获取当前登录用户
|
|
|
+ LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
|
|
+ List<String> companyCodeList = RoleDataUtils.findCompanyCodeList(sysUser.getUsername(), routeUrl, sysUser.getOrgCode());
|
|
|
+ //完税证明列表信息
|
|
|
+ String accessToken = OauthTokenUtils.getDayAccessToken();
|
|
|
+ String requestUrl = OauthApi.DUTY_LIST;
|
|
|
+ Map<String, Object> parameters = new HashMap<>();
|
|
|
+ parameters.put("pageNo", page.getCurrent());
|
|
|
+ parameters.put("pageSize", page.getSize());
|
|
|
+ parameters.put("companyCodeList", companyCodeList);
|
|
|
+ parameters.put("applyMonth", hlwDutyApply.getApplyMonth());
|
|
|
+ parameters.put("subcontractorName", hlwDutyApply.getSubcontractorName());
|
|
|
+ parameters.put("dutyStatus", hlwDutyApply.getDutyStatus());
|
|
|
+ //数据加密
|
|
|
+ String biz_content = CryptTool.encode(JSONObject.toJSONString(parameters));
|
|
|
+ JSONObject jsonObject = OauthTokenUtils.doRequest(requestUrl, HttpsContants.POST, biz_content, accessToken);
|
|
|
+ log.info("完税证明列表===={}", jsonObject);
|
|
|
+ if (jsonObject != null) {
|
|
|
+ if (jsonObject.getBoolean(HttpsContants.SUCCESS_FLAG)) {
|
|
|
+ log.info("完税证明列表成功===={}", jsonObject);
|
|
|
+ JSONObject jsonObject1 = jsonObject.getJSONObject("result");
|
|
|
+ List<HlwDutyApply> list = (List<HlwDutyApply>) jsonObject1.get("records");
|
|
|
+ log.info("完税证明列表数组==={}", list);
|
|
|
+ page.setRecords(list);
|
|
|
+ page.setTotal(jsonObject1.getLong("total"));
|
|
|
+ } else {
|
|
|
+ throw new JeecgBootException("查询数据异常");
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ throw new JeecgBootException("查询数据异常");
|
|
|
+ }
|
|
|
+ return page;
|
|
|
+ }
|
|
|
|
|
|
+ @Override
|
|
|
+ public Page<Map<String, Object>> queryDutyApplyUser(Page<Map<String, Object>> page, HlwDutyApply hlwDutyApply, HttpServletRequest request) {
|
|
|
+ //完税人员明细列表信息
|
|
|
+ String accessToken = OauthTokenUtils.getDayAccessToken();
|
|
|
+ String requestUrl = OauthApi.DUTY_USER_LIST;
|
|
|
+ Map<String, Object> parameters = new HashMap<>();
|
|
|
+ parameters.put("pageNo", page.getCurrent());
|
|
|
+ parameters.put("pageSize", page.getSize());
|
|
|
+ parameters.put("applyMonth", hlwDutyApply.getApplyMonth());
|
|
|
+ parameters.put("companyId", hlwDutyApply.getCompanyId());
|
|
|
+ parameters.put("subcontractorId", hlwDutyApply.getSubcontractorId());
|
|
|
+ parameters.put("applicationId", hlwDutyApply.getApplicationId());
|
|
|
+ parameters.put("cpId", hlwDutyApply.getCpId());
|
|
|
+ //数据加密
|
|
|
+ String biz_content = CryptTool.encode(JSONObject.toJSONString(parameters));
|
|
|
+ JSONObject jsonObject = OauthTokenUtils.doRequest(requestUrl, HttpsContants.POST, biz_content, accessToken);
|
|
|
+ log.info("完税人员明细列表===={}", jsonObject);
|
|
|
+ if (jsonObject != null) {
|
|
|
+ if (jsonObject.getBoolean(HttpsContants.SUCCESS_FLAG)) {
|
|
|
+ log.info("完税人员明细列表成功===={}", jsonObject);
|
|
|
+ JSONObject jsonObject1 = jsonObject.getJSONObject("result");
|
|
|
+ List<Map<String, Object>> list = (List<Map<String, Object>>) jsonObject1.get("records");
|
|
|
+ log.info("完税人员明细列表数组==={}", list);
|
|
|
+ page.setRecords(list);
|
|
|
+ page.setTotal(jsonObject1.getLong("total"));
|
|
|
+ } else {
|
|
|
+ throw new JeecgBootException("查询数据异常");
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ throw new JeecgBootException("查询数据异常");
|
|
|
+ }
|
|
|
+ return page;
|
|
|
+ }
|
|
|
}
|