| | |
| | | */ |
| | | package org.springblade.modules.permit.controller; |
| | | |
| | | import com.alibaba.fastjson.JSON; |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | import com.baomidou.mybatisplus.extension.toolkit.SqlHelper; |
| | | import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport; |
| | |
| | | import org.apache.http.message.BasicNameValuePair; |
| | | import org.apache.http.util.EntityUtils; |
| | | import org.json.JSONObject; |
| | | import org.springblade.common.cache.DictCache; |
| | | import org.springblade.common.cache.ParamCache; |
| | | import org.springblade.common.config.FtpConfig; |
| | | import org.springblade.common.enums.DictEnum; |
| | | import org.springblade.core.boot.ctrl.BladeController; |
| | | import org.springblade.core.cache.utils.CacheUtil; |
| | | import org.springblade.core.mp.support.Condition; |
| | | import org.springblade.core.mp.support.Query; |
| | | import org.springblade.core.secure.BladeUser; |
| | | import org.springblade.core.secure.utils.AuthUtil; |
| | | import org.springblade.core.tool.api.R; |
| | | import org.springblade.core.tool.support.Kv; |
| | | import org.springblade.core.tool.utils.DigestUtil; |
| | | import org.springblade.core.tool.utils.Func; |
| | | import org.springblade.modules.FTP.FtpUtil; |
| | | import org.springblade.modules.FTP.OutJson; |
| | | import org.springblade.modules.information.entity.Information; |
| | | import org.springblade.modules.information.service.IInformationService; |
| | | import org.springblade.modules.permit.dto.PermitDTO; |
| | | import org.springblade.modules.permit.dto.PermitRecordDTO; |
| | | import org.springblade.modules.permit.entity.Permit; |
| | | import org.springblade.modules.permit.service.IPermitService; |
| | | import org.springblade.modules.permit.vo.PermitVO; |
| | | import org.springblade.modules.record.dto.RecordDTO; |
| | | import org.springblade.modules.recordLegalperson.dto.RecordLegalpersonDTO; |
| | | import org.springblade.modules.resource.service.IAttachService; |
| | | import org.springblade.modules.system.entity.Dept; |
| | | import org.springblade.modules.system.entity.User; |
| | | import org.springblade.modules.system.service.IDeptService; |
| | | import org.springblade.modules.system.service.IUserService; |
| | | import org.springblade.modules.system.service.MyAsyncService; |
| | | import org.springframework.web.bind.annotation.*; |
| | | import sun.net.www.http.HttpClient; |
| | | |
| | | import javax.servlet.http.HttpServletRequest; |
| | | import javax.validation.Valid; |
| | | import java.io.*; |
| | | import java.net.HttpURLConnection; |
| | | import java.net.URI; |
| | | import java.net.URL; |
| | | import java.text.SimpleDateFormat; |
| | | import java.util.ArrayList; |
| | | import java.util.Date; |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | |
| | | import static org.springblade.common.constant.CommonConstant.DEFAULT_PARAM_PASSWORD; |
| | | import static org.springblade.core.cache.constant.CacheConstant.SYS_CACHE; |
| | | |
| | | /** |
| | | * 控制器 |
| | | * 控制器 |
| | | * |
| | | * @author BladeX |
| | | * @since 2021-07-12 |
| | |
| | | @RequestMapping("/permit") |
| | | @Api(value = "", tags = "接口") |
| | | public class PermitController extends BladeController { |
| | | |
| | | private final IPermitService permitService; |
| | | private final IDeptService iDeptService; |
| | | private final IInformationService informationService; |
| | | private final IUserService userService; |
| | | private final IAttachService attachService; |
| | | private final MyAsyncService myAsyncService; |
| | | |
| | | /** |
| | | * 详情 |
| | |
| | | @ApiOperationSupport(order = 3) |
| | | @ApiOperation(value = "分页", notes = "传入permit") |
| | | public R<IPage<PermitVO>> page(PermitVO permit, Query query) { |
| | | IPage<PermitVO> pages = permitService.selectPermitPage(Condition.getPage(query), permit); |
| | | IPage<PermitVO> pages; |
| | | pages = permitService.selectPermitPage(Condition.getPage(query), permit, permit.getJurisdiction()); |
| | | // if (permit.getUsetype().equals("0")) { |
| | | // pages = permitService.selectPermitPage(Condition.getPage(query), permit, null); |
| | | // } else if (permit.getUsetype().equals("1")) { |
| | | // String childer = informationService.selJurchilder(permit.getJurisdiction()); |
| | | // String[] split = childer.split(","); |
| | | // String strArrays = ""; |
| | | // for (int j = 0; j < split.length; j++) { |
| | | // strArrays += "'" + split[j] + "',"; |
| | | // } |
| | | // String jurisdiction = strArrays.substring(0, strArrays.length() - 1); |
| | | // pages = permitService.selectPermitPage(Condition.getPage(query), permit, jurisdiction); |
| | | // } else { |
| | | // pages = permitService.selectPermitPage(Condition.getPage(query), permit, null); |
| | | // } |
| | | return R.data(pages); |
| | | } |
| | | |
| | |
| | | @ApiOperation(value = "新增", notes = "传入permit") |
| | | public R save(@Valid @RequestBody Permit permit) { |
| | | String cardid = permit.getCardid(); |
| | | Map map = permitService.selectIn(cardid); |
| | | if (map!=null){ |
| | | String type = permit.getPtype(); |
| | | Map map = permitService.selectIn(cardid, type); |
| | | if (map != null) { |
| | | String id = map.get("id").toString(); |
| | | permitService.removeByIds(Func.toLongList(id)); |
| | | } |
| | | permit.setType("2"); |
| | | permit.setStorage("1"); |
| | | permit.setPermitime(new Date()); |
| | | return R.status(permitService.save(permit)); |
| | | permitService.save(permit); |
| | | //String pertime = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(permit.getPermitime()); |
| | | String overtime = new SimpleDateFormat("yyyy-MM-dd").format(permit.getOvertime()); |
| | | String s = "insert into sys_permit(id,creditCode,enterpriseName,representative," + |
| | | "registeredCapital,organizationCode,registrationNumber,identificationNumber,enterprises," + |
| | | "address,business,region,registration,industry,type,deptid,ptype,representativecell,contacts,contactscell,jurisdiction,cardid,overtime)" + |
| | | "values(" + "'" + permit.getId() + "'" + "," + "'" + permit.getCreditcode() + "'" + "," + "'" + permit.getEnterprisename() + "'" + "," + "'" |
| | | + permit.getRepresentative() + "'" + "," + "'" + permit.getRegisteredcapital() + "'" + "," + "'" |
| | | + permit.getOrganizationcode() + "'" + "," + "'" + permit.getRegistrationnumber() + "'" + "," + |
| | | "'" + permit.getIdentificationnumber() + "'" + "," + "'" + permit.getEnterprises() + "'" + "," + "'" + |
| | | permit.getAddress() + "'" + "," + "'" + permit.getBusiness() + "'" + "," + "'" + |
| | | permit.getRegion() + "'" + "," + "'" + permit.getRegistration() + "'" + "," + "'" + permit.getIndustry() + "'" + "," + "'" |
| | | + permit.getType() + "'" + "," + "'" + permit.getDeptid() + "'" + "," + "'" + permit.getPtype() + "'" + "," + |
| | | "'" + permit.getRepresentativecell() + "'" + "," + "'" + permit.getContacts() + "'" + "," + "'" |
| | | + permit.getContactscell() + "'" + "," + "'" + permit.getJurisdiction() + "'" + |
| | | "," + "'" + permit.getCardid() + "'" + "," + "'" + overtime + "'" + ")"; |
| | | //FtpUtil.sqlFileUpload(s); |
| | | myAsyncService.dataSync(s); |
| | | return R.success("许可提交成功"); |
| | | } |
| | | |
| | | /** |
| | | *暂存 |
| | | * 新增 |
| | | */ |
| | | @PostMapping("/saves") |
| | | public R saves(@Valid @RequestBody Permit permit, HttpServletRequest request) { |
| | | String fieldNames = request.getHeader("_fieldNames"); |
| | | String cardid = permit.getCardid(); |
| | | String type = permit.getPtype(); |
| | | Map map = permitService.selectIn(cardid, type); |
| | | if (map != null) { |
| | | String id = map.get("id").toString(); |
| | | permitService.removeByIds(Func.toLongList(id)); |
| | | } |
| | | permit.setType("2"); |
| | | permit.setStorage("1"); |
| | | permit.setPermitime(new Date()); |
| | | boolean save = permitService.save(permit); |
| | | String overtime = new SimpleDateFormat("yyyy-MM-dd").format(permit.getOvertime()); |
| | | //返回 |
| | | return R.data(permit); |
| | | } |
| | | |
| | | /** |
| | | * 暂存 |
| | | */ |
| | | @PostMapping("/storage") |
| | | @ApiOperation(value = "新增", notes = "传入permit") |
| | | public R storage(@Valid @RequestBody Permit permit) { |
| | | String cardid = permit.getCardid(); |
| | | Map map = permitService.selectIn(cardid); |
| | | if (map!=null){ |
| | | String type = permit.getPtype(); |
| | | Map map = permitService.selectIn(cardid, type); |
| | | if (map != null) { |
| | | permit.setStorage("0"); |
| | | permitService.updateById(permit); |
| | | } |
| | | else { |
| | | } else { |
| | | permit.setStorage("0"); |
| | | permit.setPermitime(new Date()); |
| | | permitService.save(permit); |
| | |
| | | |
| | | |
| | | @PostMapping("/selectIn") |
| | | public R selectIn(String cardid) { |
| | | Map map = permitService.selectIn(cardid); |
| | | public R selectIn(String cardid, String type) { |
| | | Map map = permitService.selectIn(cardid, type); |
| | | return R.data(map); |
| | | } |
| | | |
| | |
| | | @ApiOperationSupport(order = 5) |
| | | @ApiOperation(value = "修改", notes = "传入permit") |
| | | public R update(@Valid @RequestBody Permit permit) { |
| | | return R.status(permitService.updateById(permit)); |
| | | //审核通过 |
| | | if (permit.getType().equals("0")) { |
| | | //新增组织机构和单位信息 |
| | | Information information = new Information(); |
| | | information.setCreditcode(permit.getCreditcode()); |
| | | information.setEnterprisename(permit.getEnterprisename()); |
| | | information.setRepresentative(permit.getRepresentative()); |
| | | information.setEstablishtime(permit.getEstablishtime()); |
| | | information.setRegisteredcapital(permit.getRegisteredcapital()); |
| | | information.setOrganizationcode(permit.getOrganizationcode()); |
| | | information.setRegistrationnumber(permit.getRegistrationnumber()); |
| | | information.setEnterprises(permit.getEnterprises()); |
| | | information.setAddress(permit.getAddress()); |
| | | information.setBusiness(permit.getBusiness()); |
| | | information.setRegion(permit.getRegion()); |
| | | information.setRegistration(permit.getRegistration()); |
| | | information.setIndustry(permit.getIndustry()); |
| | | information.setRepresentativecell(permit.getRepresentativecell()); |
| | | information.setContacts(permit.getContacts()); |
| | | information.setJurisdiction(permit.getJurisdiction()); |
| | | information.setContactscell(permit.getContactscell()); |
| | | Dept dept = new Dept(); |
| | | boolean b = permitService.updateById(permit); |
| | | //本市公司 |
| | | if (permit.getPtype().equals("0")) { |
| | | Long i = 1413470343230877697L; |
| | | dept.setParentId(i); |
| | | dept.setAncestors("0,1413470343230877697"); |
| | | information.setStats("2"); |
| | | } |
| | | //培训公司 |
| | | else if (permit.getPtype().equals("1")) { |
| | | Long i = 1418458374477549569L; |
| | | dept.setParentId(i); |
| | | dept.setAncestors("0,1418458374477549569"); |
| | | information.setStats("1"); |
| | | } else { |
| | | Long i = 1420222961377357825L; |
| | | dept.setParentId(i); |
| | | dept.setAncestors("0,1420222961377357825"); |
| | | } |
| | | dept.setTenantId("000000"); |
| | | dept.setDeptName(information.getEnterprisename()); |
| | | dept.setDeptCategory(1); |
| | | if (iDeptService.submit(dept)) { |
| | | CacheUtil.clear(SYS_CACHE); |
| | | // 返回懒加载树更新节点所需字段 |
| | | Kv kv = Kv.create().set("id", String.valueOf(dept.getId())).set("tenantId", dept.getTenantId()) |
| | | .set("deptCategoryName", DictCache.getValue(DictEnum.ORG_CATEGORY, dept.getDeptCategory())); |
| | | String id = kv.get("id").toString(); |
| | | information.setDepartmentid(id); |
| | | } |
| | | informationService.save(information); |
| | | Integer isDeleted = 0; |
| | | //注册用户 |
| | | User user = new User(); |
| | | user.setDeptId(information.getDepartmentid()); |
| | | user.setTenantId("000000"); |
| | | user.setAccount(permit.getEnterprisename()); |
| | | String initPassword = ParamCache.getValue(DEFAULT_PARAM_PASSWORD); |
| | | user.setPassword(DigestUtil.encrypt(initPassword)); |
| | | //user.setPassword(initPassword); |
| | | user.setCreateTime(new Date()); |
| | | user.setUpdateTime(new Date()); |
| | | user.setRoleId("1414575196264300546"); |
| | | user.setStatus(1); |
| | | user.setIsDeleted(0); |
| | | boolean save = userService.save(user); |
| | | } |
| | | return R.success("成功"); |
| | | } |
| | | |
| | | /** |
| | |
| | | public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) { |
| | | return R.status(permitService.removeByIds(Func.toLongList(ids))); |
| | | } |
| | | |
| | | /** |
| | | * 保安公司/培训学校许可设立详情(基本信息和附件列表信息) |
| | | * |
| | | * @param record |
| | | * @return |
| | | */ |
| | | @GetMapping("/details") |
| | | public R details(PermitDTO record) { |
| | | PermitDTO detail = permitService.getDetails(record); |
| | | return R.data(detail); |
| | | } |
| | | |
| | | /** |
| | | * 许可备案集合信息 |
| | | * |
| | | * @param record |
| | | * @return |
| | | */ |
| | | @GetMapping("/permitRecordList") |
| | | public R permitRecordList(PermitDTO record) { |
| | | List<PermitRecordDTO> permitRecordList = permitService.permitRecordList(record); |
| | | //返回 |
| | | return R.data(permitRecordList); |
| | | } |
| | | } |