LAPTOP-FO2T5SIU\35838 1 год назад
Родитель
Сommit
3ce3250c78
23 измененных файлов с 1423 добавлено и 132 удалено
  1. 12 23
      pro-base/src/main/java/com/idea/buildManage/controller/MnpBuildingController.java
  2. 39 38
      pro-base/src/main/java/com/idea/buildManage/controller/ParkRoomController.java
  3. 235 3
      pro-base/src/main/java/com/idea/buildManage/model/MnpBuilding.java
  4. 140 0
      pro-base/src/main/java/com/idea/buildManage/model/MnpBuildingExample.java
  5. 253 5
      pro-base/src/main/java/com/idea/buildManage/model/ParkRoom.java
  6. 140 0
      pro-base/src/main/java/com/idea/buildManage/model/ParkRoomExample.java
  7. 75 0
      pro-base/src/main/java/com/idea/buildManage/service/MnpBuildingService.java
  8. 79 4
      pro-base/src/main/java/com/idea/buildManage/service/ParkRoomService.java
  9. 4 0
      pro-base/src/main/java/com/idea/customerManagement/model/CustomerManagement.java
  10. 140 0
      pro-base/src/main/java/com/idea/customerManagement/model/CustomerManagementExample.java
  11. 44 0
      pro-base/src/main/java/com/idea/customerManagement/service/CustomerManagementService.java
  12. 2 1
      pro-base/src/main/java/com/idea/customerManagement/service/RoomSelectionInfoService.java
  13. 1 1
      pro-base/src/main/java/com/idea/invoice/mapper/InvoiceManageExtendMapper.java
  14. 8 0
      pro-base/src/main/java/com/idea/invoice/service/InvoiceManageService.java
  15. 47 0
      pro-base/src/main/java/com/idea/invoice/task/InvoiceTask.java
  16. 60 36
      pro-base/src/main/java/com/idea/invoice/util/InvoiceUtil.java
  17. 7 0
      pro-base/src/main/java/com/idea/paymentManagement/model/PayLog.java
  18. 8 1
      pro-base/src/main/java/com/idea/paymentManagement/service/PayLogService.java
  19. 41 7
      pro-base/src/main/resources/mybatis/buildManage/MnpBuildingMapper.xml
  20. 1 0
      pro-base/src/main/resources/mybatis/buildManage/ParkRoomExtendMapper.xml
  21. 41 5
      pro-base/src/main/resources/mybatis/buildManage/ParkRoomMapper.xml
  22. 43 7
      pro-base/src/main/resources/mybatis/customerManagement/CustomerManagementMapper.xml
  23. 3 1
      pro-base/src/main/resources/mybatis/invoice/InvoiceManageExtendMapper.xml

+ 12 - 23
pro-base/src/main/java/com/idea/buildManage/controller/MnpBuildingController.java

@@ -1,5 +1,6 @@
 package com.idea.buildManage.controller;
 
+import cn.hutool.core.util.IdUtil;
 import com.alibaba.excel.EasyExcel;
 import com.alibaba.fastjson.JSONObject;
 import com.github.pagehelper.PageInfo;
@@ -13,6 +14,7 @@ import com.idea.buildManage.service.ParkRoomService;
 import com.idea.buildManage.model.MnpBuilding;
 import com.idea.buildManage.model.MnpBuildingExample;
 import com.idea.buildManage.service.MnpBuildingService;
+import com.idea.invoice.util.InvoiceUtil;
 import com.idea.util.ExcelUtils;
 import com.rockstar.common.base.BaseController;
 import com.rockstar.common.domain.AjaxResult;
@@ -22,6 +24,7 @@ import com.rockstar.frame.model.extend.Tablepar;
 import com.rockstar.shiro.util.ShiroUtils;
 import com.rockstar.system.service.SysDictService;
 import io.swagger.annotations.Api;
+import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Controller;
 import org.springframework.web.bind.annotation.*;
@@ -72,23 +75,9 @@ public class MnpBuildingController extends BaseController {
     @PostMapping(value = "add", produces = {"application/json;charset=UTF-8"})
     @ResponseBody
     public AjaxResult add(MnpBuilding record) {
-        try {
-            // 同一楼盘下 载体名称不能重复
-            MnpBuildingExample mnpBuildingExample = new MnpBuildingExample();
-            mnpBuildingExample.createCriteria().andBuildNumEqualTo(record.getBuildNum()).andDiscIdEqualTo(record.getDiscId());
-            long count = modelService.countByExample(mnpBuildingExample);
-            if (count > 0) {
-                throw new RuntimeException(record.getBuildNum() + "已存在,请调整后重新添加!!!");
-            }
-            record.setCreatedId(ShiroUtils.getUser().getId());
-            record.setCreatedAt(new Date());
-            String orderNum = modelService.getOrderNum(record);
-            record.setOrderNum(orderNum);
-            int result = modelService.insertSelective(record);
-            return result(result);
-        } catch (Exception e) {
-            return error(e.getMessage());
-        }
+
+        int result = modelService.add(record);
+        return result(result);
     }
 
     @PostMapping(value = "remove/{id}", produces = {"application/json;charset=UTF-8"})
@@ -101,7 +90,7 @@ public class MnpBuildingController extends BaseController {
     @PostMapping(value = "edit", produces = {"application/json;charset=UTF-8"})
     @ResponseBody
     public AjaxResult editSave(MnpBuilding model) {
-        int result = modelService.updateByPrimaryKeySelective(model);
+        int result = modelService.edit(model);
         return result(result);
     }
 
@@ -121,6 +110,7 @@ public class MnpBuildingController extends BaseController {
 
     /**
      * 楼栋导入
+     *
      * @param file
      * @return
      */
@@ -128,7 +118,7 @@ public class MnpBuildingController extends BaseController {
     @ResponseBody
     public AjaxResult handleImport(@RequestParam("file") MultipartFile file) {
         JSONObject jsonObject = new JSONObject();
-        MnpBuildingListener listener = new MnpBuildingListener(modelService,floorDiscService,parkInfoService,sysDictService,
+        MnpBuildingListener listener = new MnpBuildingListener(modelService, floorDiscService, parkInfoService, sysDictService,
                 jsonObject);
         try {
             ExcelUtils excelUtils = new ExcelUtils();
@@ -147,6 +137,7 @@ public class MnpBuildingController extends BaseController {
 
     /**
      * 楼栋删除
+     *
      * @param id
      * @return
      */
@@ -159,6 +150,7 @@ public class MnpBuildingController extends BaseController {
 
     /**
      * 导出
+     *
      * @param list
      * @param response
      * @throws IOException
@@ -166,11 +158,8 @@ public class MnpBuildingController extends BaseController {
     @PostMapping(value = "errorListExport")
     @ResponseBody
     public void errorListExport(@RequestBody List<MnpBuildingExcel> list, HttpServletResponse response) throws IOException {
-        modelService.errorListExport(list,response);
+        modelService.errorListExport(list, response);
     }
 
 
-
-
-
 }

+ 39 - 38
pro-base/src/main/java/com/idea/buildManage/controller/ParkRoomController.java

@@ -4,12 +4,16 @@ import com.alibaba.excel.EasyExcel;
 import com.alibaba.fastjson.JSONObject;
 import com.github.pagehelper.PageInfo;
 import com.idea.buildManage.excel.*;
+import com.idea.buildManage.model.MnpBuilding;
+import com.idea.buildManage.model.ParkFloorDisc;
+import com.idea.buildManage.model.ParkInfo;
 import com.idea.buildManage.model.ParkRoom;
 import com.idea.buildManage.response.ParkRoomResponse;
 import com.idea.buildManage.service.MnpBuildingService;
 import com.idea.buildManage.service.ParkFloorDiscService;
 import com.idea.buildManage.service.ParkInfoService;
 import com.idea.buildManage.service.ParkRoomService;
+import com.idea.invoice.util.InvoiceUtil;
 import com.idea.util.ExcelUtils;
 import com.rockstar.common.base.BaseController;
 import com.rockstar.common.domain.AjaxResult;
@@ -18,8 +22,10 @@ import com.rockstar.frame.model.extend.TableSplitResult;
 import com.rockstar.frame.model.extend.Tablepar;
 import com.rockstar.shiro.util.ShiroUtils;
 import com.rockstar.system.service.SysDictService;
+import com.rockstar.util.SnowflakeIdWorker;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Controller;
 import org.springframework.web.bind.annotation.*;
@@ -34,9 +40,10 @@ import java.util.List;
 /**
  * Created by pengyq on 2020.
  */
+@Slf4j
 @Controller
 @RequestMapping(value = "ParkRoomController")
-@Api(value="房间管理")
+@Api(value = "房间管理")
 public class ParkRoomController extends BaseController {
 
     //主表
@@ -52,93 +59,86 @@ public class ParkRoomController extends BaseController {
     private SysDictService sysDictService;
 
 
-    @PostMapping(value = "list",produces = {"application/json;charset=UTF-8"})
+    @PostMapping(value = "list", produces = {"application/json;charset=UTF-8"})
     @ResponseBody
-    public Object list(Tablepar tablepar, ParkRoom model, DateTrans dt){
-        PageInfo<ParkRoom> page= modelService.list(tablepar,model,dt);
+    public Object list(Tablepar tablepar, ParkRoom model, DateTrans dt) {
+        PageInfo<ParkRoom> page = modelService.list(tablepar, model, dt);
         TableSplitResult<ParkRoom> result = new TableSplitResult<ParkRoom>(page.getPageNum(), page.getTotal(), page.getList());
-        return  result;
+        return result;
     }
 
     @ApiOperation(value = "房间列表")
-    @PostMapping(value = "listAll",produces = {"application/json;charset=UTF-8"})
+    @PostMapping(value = "listAll", produces = {"application/json;charset=UTF-8"})
     @ResponseBody
-    public Object listAll(ParkRoom model, DateTrans dt){
-        return  modelService.listAll(model,dt);
+    public Object listAll(ParkRoom model, DateTrans dt) {
+        return modelService.listAll(model, dt);
     }
 
     @ApiOperation(value = "新增房间")
-    @PostMapping(value = "add",produces = {"application/json;charset=UTF-8"})
+    @PostMapping(value = "add", produces = {"application/json;charset=UTF-8"})
     @ResponseBody
-    public AjaxResult add(ParkRoom record){
-        record.setCreatedAt(new Date());
-        record.setCreatedId(ShiroUtils.getUserId());
-        // 默认待售
-        record.setSoldStatus(1);
-        // 选房状态
-        record.setIsChoose(0);
-        String orderNum = modelService.getOrderNum(record);
-        record.setOrderNum(orderNum);
-        int result = modelService.insert(record);
+    public AjaxResult add(ParkRoom record) {
+
+        int result = modelService.add(record);
         return result(result);
     }
 
     @ApiOperation(value = "删除房间")
-    @PostMapping(value = "remove/{id}",produces = {"application/json;charset=UTF-8"})
+    @PostMapping(value = "remove/{id}", produces = {"application/json;charset=UTF-8"})
     @ResponseBody
-    public AjaxResult remove(@PathVariable("id") String id){
+    public AjaxResult remove(@PathVariable("id") String id) {
         int result = modelService.deleteByPrimaryKey(id);
         return result(result);
     }
 
     @ApiOperation(value = "编辑房间")
-    @PostMapping(value = "edit",produces = {"application/json;charset=UTF-8"})
+    @PostMapping(value = "edit", produces = {"application/json;charset=UTF-8"})
     @ResponseBody
-    public AjaxResult editSave(ParkRoom model){
-        model.setUpdatedAt(new Date());
-        model.setUpdatedId(ShiroUtils.getUserId());
+    public AjaxResult editSave(ParkRoom model) {
         int result = modelService.edit(model);
         return result(result);
     }
 
     @ApiOperation(value = "查询房间")
-    @PostMapping(value = "getById",produces = {"application/json;charset=UTF-8"})
+    @PostMapping(value = "getById", produces = {"application/json;charset=UTF-8"})
     @ResponseBody
     public ParkRoom getById(String id) {
         return modelService.selectByPrimaryKey(id);
     }
 
     @ApiOperation(value = "房间列表分页")
-    @PostMapping(value = "listByModel",produces = {"application/json;charset=UTF-8"})
+    @PostMapping(value = "listByModel", produces = {"application/json;charset=UTF-8"})
     @ResponseBody
-    public Object listByModel(Tablepar tablepar, ParkRoomResponse model, DateTrans dt){
-        PageInfo<ParkRoomResponse> page= modelService.listByModel(tablepar,model,dt);
+    public Object listByModel(Tablepar tablepar, ParkRoomResponse model, DateTrans dt) {
+        PageInfo<ParkRoomResponse> page = modelService.listByModel(tablepar, model, dt);
         TableSplitResult<ParkRoomResponse> result = new TableSplitResult<ParkRoomResponse>(page.getPageNum(), page.getTotal(), page.getList());
-        return  result;
+        return result;
     }
 
     @ApiOperation(value = "全房间列表")
-    @PostMapping(value = "excelList",produces = {"application/json;charset=UTF-8"})
+    @PostMapping(value = "excelList", produces = {"application/json;charset=UTF-8"})
     @ResponseBody
-    public Object excelList(ParkRoomResponse model){
-        return success(modelService.excelList(model,null));
+    public Object excelList(ParkRoomResponse model) {
+        return success(modelService.excelList(model, null));
     }
 
 
     /**
      * 获取房屋面积
+     *
      * @param ids
      * @return
      */
-    @PostMapping(value = "getAreaByIds",produces = {"application/json;charset=UTF-8"})
+    @PostMapping(value = "getAreaByIds", produces = {"application/json;charset=UTF-8"})
     @ResponseBody
-    public Double getAreaByIds(String ids){
+    public Double getAreaByIds(String ids) {
 
         return modelService.getAreaByIds(ids);
     }
 
     /**
      * 房间导入
+     *
      * @param file
      * @return
      */
@@ -146,7 +146,7 @@ public class ParkRoomController extends BaseController {
     @ResponseBody
     public AjaxResult handleImport(@RequestParam("file") MultipartFile file) {
         JSONObject jsonObject = new JSONObject();
-        ParkRoomListener listener = new ParkRoomListener(modelService,buildingService,floorDiscService,parkInfoService,sysDictService,jsonObject);
+        ParkRoomListener listener = new ParkRoomListener(modelService, buildingService, floorDiscService, parkInfoService, sysDictService, jsonObject);
         try {
             ExcelUtils excelUtils = new ExcelUtils();
             File excel = excelUtils.multipartFileToFile(file);
@@ -163,7 +163,7 @@ public class ParkRoomController extends BaseController {
     }
 
     @ApiOperation(value = "房间删除")
-    @PostMapping(value = "delete",produces = {"application/json;charset=UTF-8"})
+    @PostMapping(value = "delete", produces = {"application/json;charset=UTF-8"})
     @ResponseBody
     public AjaxResult delete(String id) {
         int result = modelService.delete(id);
@@ -172,6 +172,7 @@ public class ParkRoomController extends BaseController {
 
     /**
      * 导出
+     *
      * @param list
      * @param response
      * @throws IOException
@@ -179,7 +180,7 @@ public class ParkRoomController extends BaseController {
     @PostMapping(value = "errorListExport")
     @ResponseBody
     public void errorListExport(@RequestBody List<ParkRoomExcel> list, HttpServletResponse response) throws IOException {
-        modelService.errorListExport(list,response);
+        modelService.errorListExport(list, response);
     }
 
 }

+ 235 - 3
pro-base/src/main/java/com/idea/buildManage/model/MnpBuilding.java

@@ -1,11 +1,8 @@
 package com.idea.buildManage.model;
 
-import lombok.Data;
-
 import java.io.Serializable;
 import java.util.Date;
 
-@Data
 public class MnpBuilding implements Serializable {
     private String id;
 
@@ -57,10 +54,245 @@ public class MnpBuilding implements Serializable {
 
     private String updatedId;
 
+    private String ncid;
+
+    private String ncCode;
+
     private String remark;
 
     private String priceRemark;
 
     private static final long serialVersionUID = 1L;
 
+    public String getId() {
+        return id;
+    }
+
+    public void setId(String id) {
+        this.id = id == null ? null : id.trim();
+    }
+
+    public String getGroupId() {
+        return groupId;
+    }
+
+    public void setGroupId(String groupId) {
+        this.groupId = groupId == null ? null : groupId.trim();
+    }
+
+    public String getGroupName() {
+        return groupName;
+    }
+
+    public void setGroupName(String groupName) {
+        this.groupName = groupName == null ? null : groupName.trim();
+    }
+
+    public String getDiscId() {
+        return discId;
+    }
+
+    public void setDiscId(String discId) {
+        this.discId = discId == null ? null : discId.trim();
+    }
+
+    public String getDiscName() {
+        return discName;
+    }
+
+    public void setDiscName(String discName) {
+        this.discName = discName == null ? null : discName.trim();
+    }
+
+    public String getOrderNum() {
+        return orderNum;
+    }
+
+    public void setOrderNum(String orderNum) {
+        this.orderNum = orderNum == null ? null : orderNum.trim();
+    }
+
+    public String getBuildNum() {
+        return buildNum;
+    }
+
+    public void setBuildNum(String buildNum) {
+        this.buildNum = buildNum == null ? null : buildNum.trim();
+    }
+
+    public String getConstructionNum() {
+        return constructionNum;
+    }
+
+    public void setConstructionNum(String constructionNum) {
+        this.constructionNum = constructionNum == null ? null : constructionNum.trim();
+    }
+
+    public Double getArea() {
+        return area;
+    }
+
+    public void setArea(Double area) {
+        this.area = area;
+    }
+
+    public Double getResidentialArea() {
+        return residentialArea;
+    }
+
+    public void setResidentialArea(Double residentialArea) {
+        this.residentialArea = residentialArea;
+    }
+
+    public Double getUnResidentialArea() {
+        return unResidentialArea;
+    }
+
+    public void setUnResidentialArea(Double unResidentialArea) {
+        this.unResidentialArea = unResidentialArea;
+    }
+
+    public Double getCoverAnArea() {
+        return coverAnArea;
+    }
+
+    public void setCoverAnArea(Double coverAnArea) {
+        this.coverAnArea = coverAnArea;
+    }
+
+    public Double getUndergroundArea() {
+        return undergroundArea;
+    }
+
+    public void setUndergroundArea(Double undergroundArea) {
+        this.undergroundArea = undergroundArea;
+    }
+
+    public String getRoomNum() {
+        return roomNum;
+    }
+
+    public void setRoomNum(String roomNum) {
+        this.roomNum = roomNum == null ? null : roomNum.trim();
+    }
+
+    public String getNumberInfo() {
+        return numberInfo;
+    }
+
+    public void setNumberInfo(String numberInfo) {
+        this.numberInfo = numberInfo == null ? null : numberInfo.trim();
+    }
+
+    public Integer getFloors() {
+        return floors;
+    }
+
+    public void setFloors(Integer floors) {
+        this.floors = floors;
+    }
+
+    public Integer getOvergroundFloors() {
+        return overgroundFloors;
+    }
+
+    public void setOvergroundFloors(Integer overgroundFloors) {
+        this.overgroundFloors = overgroundFloors;
+    }
+
+    public Integer getUndergroundFloors() {
+        return undergroundFloors;
+    }
+
+    public void setUndergroundFloors(Integer undergroundFloors) {
+        this.undergroundFloors = undergroundFloors;
+    }
+
+    public String getStructure() {
+        return structure;
+    }
+
+    public void setStructure(String structure) {
+        this.structure = structure == null ? null : structure.trim();
+    }
+
+    public String getRegionalismCode() {
+        return regionalismCode;
+    }
+
+    public void setRegionalismCode(String regionalismCode) {
+        this.regionalismCode = regionalismCode == null ? null : regionalismCode.trim();
+    }
+
+    public String getLandCode() {
+        return landCode;
+    }
+
+    public void setLandCode(String landCode) {
+        this.landCode = landCode == null ? null : landCode.trim();
+    }
+
+    public String getCreatedId() {
+        return createdId;
+    }
+
+    public void setCreatedId(String createdId) {
+        this.createdId = createdId == null ? null : createdId.trim();
+    }
+
+    public Date getCreatedAt() {
+        return createdAt;
+    }
+
+    public void setCreatedAt(Date createdAt) {
+        this.createdAt = createdAt;
+    }
+
+    public Date getUpdatedAt() {
+        return updatedAt;
+    }
+
+    public void setUpdatedAt(Date updatedAt) {
+        this.updatedAt = updatedAt;
+    }
+
+    public String getUpdatedId() {
+        return updatedId;
+    }
+
+    public void setUpdatedId(String updatedId) {
+        this.updatedId = updatedId == null ? null : updatedId.trim();
+    }
+
+    public String getNcid() {
+        return ncid;
+    }
+
+    public void setNcid(String ncid) {
+        this.ncid = ncid == null ? null : ncid.trim();
+    }
+
+    public String getNcCode() {
+        return ncCode;
+    }
+
+    public void setNcCode(String ncCode) {
+        this.ncCode = ncCode == null ? null : ncCode.trim();
+    }
+
+    public String getRemark() {
+        return remark;
+    }
+
+    public void setRemark(String remark) {
+        this.remark = remark == null ? null : remark.trim();
+    }
+
+    public String getPriceRemark() {
+        return priceRemark;
+    }
+
+    public void setPriceRemark(String priceRemark) {
+        this.priceRemark = priceRemark == null ? null : priceRemark.trim();
+    }
 }

+ 140 - 0
pro-base/src/main/java/com/idea/buildManage/model/MnpBuildingExample.java

@@ -1754,6 +1754,146 @@ public class MnpBuildingExample {
             addCriterion("updated_id not between", value1, value2, "updatedId");
             return (Criteria) this;
         }
+
+        public Criteria andNcidIsNull() {
+            addCriterion("ncid is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcidIsNotNull() {
+            addCriterion("ncid is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcidEqualTo(String value) {
+            addCriterion("ncid =", value, "ncid");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcidNotEqualTo(String value) {
+            addCriterion("ncid <>", value, "ncid");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcidGreaterThan(String value) {
+            addCriterion("ncid >", value, "ncid");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcidGreaterThanOrEqualTo(String value) {
+            addCriterion("ncid >=", value, "ncid");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcidLessThan(String value) {
+            addCriterion("ncid <", value, "ncid");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcidLessThanOrEqualTo(String value) {
+            addCriterion("ncid <=", value, "ncid");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcidLike(String value) {
+            addCriterion("ncid like", value, "ncid");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcidNotLike(String value) {
+            addCriterion("ncid not like", value, "ncid");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcidIn(List<String> values) {
+            addCriterion("ncid in", values, "ncid");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcidNotIn(List<String> values) {
+            addCriterion("ncid not in", values, "ncid");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcidBetween(String value1, String value2) {
+            addCriterion("ncid between", value1, value2, "ncid");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcidNotBetween(String value1, String value2) {
+            addCriterion("ncid not between", value1, value2, "ncid");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcCodeIsNull() {
+            addCriterion("nc_code is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcCodeIsNotNull() {
+            addCriterion("nc_code is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcCodeEqualTo(String value) {
+            addCriterion("nc_code =", value, "ncCode");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcCodeNotEqualTo(String value) {
+            addCriterion("nc_code <>", value, "ncCode");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcCodeGreaterThan(String value) {
+            addCriterion("nc_code >", value, "ncCode");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcCodeGreaterThanOrEqualTo(String value) {
+            addCriterion("nc_code >=", value, "ncCode");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcCodeLessThan(String value) {
+            addCriterion("nc_code <", value, "ncCode");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcCodeLessThanOrEqualTo(String value) {
+            addCriterion("nc_code <=", value, "ncCode");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcCodeLike(String value) {
+            addCriterion("nc_code like", value, "ncCode");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcCodeNotLike(String value) {
+            addCriterion("nc_code not like", value, "ncCode");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcCodeIn(List<String> values) {
+            addCriterion("nc_code in", values, "ncCode");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcCodeNotIn(List<String> values) {
+            addCriterion("nc_code not in", values, "ncCode");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcCodeBetween(String value1, String value2) {
+            addCriterion("nc_code between", value1, value2, "ncCode");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcCodeNotBetween(String value1, String value2) {
+            addCriterion("nc_code not between", value1, value2, "ncCode");
+            return (Criteria) this;
+        }
     }
 
     public static class Criteria extends GeneratedCriteria {

+ 253 - 5
pro-base/src/main/java/com/idea/buildManage/model/ParkRoom.java

@@ -1,11 +1,8 @@
 package com.idea.buildManage.model;
 
-import lombok.Data;
-
 import java.io.Serializable;
 import java.util.Date;
 
-@Data
 public class ParkRoom implements Serializable {
     private String id;
 
@@ -59,12 +56,263 @@ public class ParkRoom implements Serializable {
 
     private String twoPointTwo;
 
-    private String remark;
-
     private String orderNum;
 
     private Integer isChoose;
 
+    private String ncid;
+
+    private String ncCode;
+
+    private String remark;
+
     private static final long serialVersionUID = 1L;
 
+    public String getId() {
+        return id;
+    }
+
+    public void setId(String id) {
+        this.id = id == null ? null : id.trim();
+    }
+
+    public String getBuildId() {
+        return buildId;
+    }
+
+    public void setBuildId(String buildId) {
+        this.buildId = buildId == null ? null : buildId.trim();
+    }
+
+    public String getDiscId() {
+        return discId;
+    }
+
+    public void setDiscId(String discId) {
+        this.discId = discId == null ? null : discId.trim();
+    }
+
+    public String getGroupId() {
+        return groupId;
+    }
+
+    public void setGroupId(String groupId) {
+        this.groupId = groupId == null ? null : groupId.trim();
+    }
+
+    public String getRoomNo() {
+        return roomNo;
+    }
+
+    public void setRoomNo(String roomNo) {
+        this.roomNo = roomNo == null ? null : roomNo.trim();
+    }
+
+    public String getFloor() {
+        return floor;
+    }
+
+    public void setFloor(String floor) {
+        this.floor = floor == null ? null : floor.trim();
+    }
+
+    public Double getPredictionInternalArea() {
+        return predictionInternalArea;
+    }
+
+    public void setPredictionInternalArea(Double predictionInternalArea) {
+        this.predictionInternalArea = predictionInternalArea;
+    }
+
+    public Double getPredictionShareArea() {
+        return predictionShareArea;
+    }
+
+    public void setPredictionShareArea(Double predictionShareArea) {
+        this.predictionShareArea = predictionShareArea;
+    }
+
+    public Double getPredictionBuildArea() {
+        return predictionBuildArea;
+    }
+
+    public void setPredictionBuildArea(Double predictionBuildArea) {
+        this.predictionBuildArea = predictionBuildArea;
+    }
+
+    public Double getPredictionLandArea() {
+        return predictionLandArea;
+    }
+
+    public void setPredictionLandArea(Double predictionLandArea) {
+        this.predictionLandArea = predictionLandArea;
+    }
+
+    public Double getActualInternalArea() {
+        return actualInternalArea;
+    }
+
+    public void setActualInternalArea(Double actualInternalArea) {
+        this.actualInternalArea = actualInternalArea;
+    }
+
+    public Double getActualShareArea() {
+        return actualShareArea;
+    }
+
+    public void setActualShareArea(Double actualShareArea) {
+        this.actualShareArea = actualShareArea;
+    }
+
+    public Double getActualBuildArea() {
+        return actualBuildArea;
+    }
+
+    public void setActualBuildArea(Double actualBuildArea) {
+        this.actualBuildArea = actualBuildArea;
+    }
+
+    public Double getActualLandArea() {
+        return actualLandArea;
+    }
+
+    public void setActualLandArea(Double actualLandArea) {
+        this.actualLandArea = actualLandArea;
+    }
+
+    public Integer getRoomUse() {
+        return roomUse;
+    }
+
+    public void setRoomUse(Integer roomUse) {
+        this.roomUse = roomUse;
+    }
+
+    public String getRoomNumber() {
+        return roomNumber;
+    }
+
+    public void setRoomNumber(String roomNumber) {
+        this.roomNumber = roomNumber == null ? null : roomNumber.trim();
+    }
+
+    public Integer getDecorationSituation() {
+        return decorationSituation;
+    }
+
+    public void setDecorationSituation(Integer decorationSituation) {
+        this.decorationSituation = decorationSituation;
+    }
+
+    public String getHouseTypeId() {
+        return houseTypeId;
+    }
+
+    public void setHouseTypeId(String houseTypeId) {
+        this.houseTypeId = houseTypeId == null ? null : houseTypeId.trim();
+    }
+
+    public String getHouseTypePicture() {
+        return houseTypePicture;
+    }
+
+    public void setHouseTypePicture(String houseTypePicture) {
+        this.houseTypePicture = houseTypePicture == null ? null : houseTypePicture.trim();
+    }
+
+    public String getCreatedId() {
+        return createdId;
+    }
+
+    public void setCreatedId(String createdId) {
+        this.createdId = createdId == null ? null : createdId.trim();
+    }
+
+    public Date getCreatedAt() {
+        return createdAt;
+    }
+
+    public void setCreatedAt(Date createdAt) {
+        this.createdAt = createdAt;
+    }
+
+    public Date getUpdatedAt() {
+        return updatedAt;
+    }
+
+    public void setUpdatedAt(Date updatedAt) {
+        this.updatedAt = updatedAt;
+    }
+
+    public String getUpdatedId() {
+        return updatedId;
+    }
+
+    public void setUpdatedId(String updatedId) {
+        this.updatedId = updatedId == null ? null : updatedId.trim();
+    }
+
+    public Integer getSaleStatus() {
+        return saleStatus;
+    }
+
+    public void setSaleStatus(Integer saleStatus) {
+        this.saleStatus = saleStatus;
+    }
+
+    public Integer getSoldStatus() {
+        return soldStatus;
+    }
+
+    public void setSoldStatus(Integer soldStatus) {
+        this.soldStatus = soldStatus;
+    }
+
+    public String getTwoPointTwo() {
+        return twoPointTwo;
+    }
+
+    public void setTwoPointTwo(String twoPointTwo) {
+        this.twoPointTwo = twoPointTwo == null ? null : twoPointTwo.trim();
+    }
+
+    public String getOrderNum() {
+        return orderNum;
+    }
+
+    public void setOrderNum(String orderNum) {
+        this.orderNum = orderNum == null ? null : orderNum.trim();
+    }
+
+    public Integer getIsChoose() {
+        return isChoose;
+    }
+
+    public void setIsChoose(Integer isChoose) {
+        this.isChoose = isChoose;
+    }
+
+    public String getNcid() {
+        return ncid;
+    }
+
+    public void setNcid(String ncid) {
+        this.ncid = ncid == null ? null : ncid.trim();
+    }
+
+    public String getNcCode() {
+        return ncCode;
+    }
+
+    public void setNcCode(String ncCode) {
+        this.ncCode = ncCode == null ? null : ncCode.trim();
+    }
+
+    public String getRemark() {
+        return remark;
+    }
+
+    public void setRemark(String remark) {
+        this.remark = remark == null ? null : remark.trim();
+    }
 }

+ 140 - 0
pro-base/src/main/java/com/idea/buildManage/model/ParkRoomExample.java

@@ -1914,6 +1914,146 @@ public class ParkRoomExample {
             addCriterion("is_choose not between", value1, value2, "isChoose");
             return (Criteria) this;
         }
+
+        public Criteria andNcidIsNull() {
+            addCriterion("ncid is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcidIsNotNull() {
+            addCriterion("ncid is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcidEqualTo(String value) {
+            addCriterion("ncid =", value, "ncid");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcidNotEqualTo(String value) {
+            addCriterion("ncid <>", value, "ncid");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcidGreaterThan(String value) {
+            addCriterion("ncid >", value, "ncid");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcidGreaterThanOrEqualTo(String value) {
+            addCriterion("ncid >=", value, "ncid");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcidLessThan(String value) {
+            addCriterion("ncid <", value, "ncid");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcidLessThanOrEqualTo(String value) {
+            addCriterion("ncid <=", value, "ncid");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcidLike(String value) {
+            addCriterion("ncid like", value, "ncid");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcidNotLike(String value) {
+            addCriterion("ncid not like", value, "ncid");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcidIn(List<String> values) {
+            addCriterion("ncid in", values, "ncid");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcidNotIn(List<String> values) {
+            addCriterion("ncid not in", values, "ncid");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcidBetween(String value1, String value2) {
+            addCriterion("ncid between", value1, value2, "ncid");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcidNotBetween(String value1, String value2) {
+            addCriterion("ncid not between", value1, value2, "ncid");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcCodeIsNull() {
+            addCriterion("nc_code is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcCodeIsNotNull() {
+            addCriterion("nc_code is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcCodeEqualTo(String value) {
+            addCriterion("nc_code =", value, "ncCode");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcCodeNotEqualTo(String value) {
+            addCriterion("nc_code <>", value, "ncCode");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcCodeGreaterThan(String value) {
+            addCriterion("nc_code >", value, "ncCode");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcCodeGreaterThanOrEqualTo(String value) {
+            addCriterion("nc_code >=", value, "ncCode");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcCodeLessThan(String value) {
+            addCriterion("nc_code <", value, "ncCode");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcCodeLessThanOrEqualTo(String value) {
+            addCriterion("nc_code <=", value, "ncCode");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcCodeLike(String value) {
+            addCriterion("nc_code like", value, "ncCode");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcCodeNotLike(String value) {
+            addCriterion("nc_code not like", value, "ncCode");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcCodeIn(List<String> values) {
+            addCriterion("nc_code in", values, "ncCode");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcCodeNotIn(List<String> values) {
+            addCriterion("nc_code not in", values, "ncCode");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcCodeBetween(String value1, String value2) {
+            addCriterion("nc_code between", value1, value2, "ncCode");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcCodeNotBetween(String value1, String value2) {
+            addCriterion("nc_code not between", value1, value2, "ncCode");
+            return (Criteria) this;
+        }
     }
 
     public static class Criteria extends GeneratedCriteria {

+ 75 - 0
pro-base/src/main/java/com/idea/buildManage/service/MnpBuildingService.java

@@ -2,6 +2,7 @@ package com.idea.buildManage.service;
 
 import cn.hutool.core.util.IdUtil;
 import com.alibaba.excel.EasyExcel;
+import com.alibaba.fastjson.JSONObject;
 import com.github.pagehelper.PageHelper;
 import com.github.pagehelper.PageInfo;
 import com.idea.buildManage.dto.MnpBuildingDto;
@@ -11,10 +12,14 @@ import com.idea.buildManage.excel.WriteHandlerStrategy;
 import com.idea.buildManage.mapper.MnpBuildingExtendMapper;
 import com.idea.buildManage.mapper.MnpBuildingMapper;
 import com.idea.buildManage.model.*;
+import com.idea.invoice.util.InvoiceUtil;
 import com.rockstar.common.base.BaseService;
+import com.rockstar.common.domain.AjaxResult;
 import com.rockstar.frame.mapper.FrameDataMapper;
 import com.rockstar.frame.model.extend.DateTrans;
 import com.rockstar.frame.model.extend.Tablepar;
+import com.rockstar.shiro.util.ShiroUtils;
+import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.collections.CollectionUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -31,6 +36,7 @@ import java.util.List;
 import java.util.Map;
 import java.util.stream.Collectors;
 
+@Slf4j
 @Service
 public class MnpBuildingService implements BaseService<MnpBuilding, MnpBuildingExample> {
 
@@ -219,5 +225,74 @@ public class MnpBuildingService implements BaseService<MnpBuilding, MnpBuildingE
 
     }
 
+    /**
+     * 新增载体
+     * @param record
+     * @return
+     */
+    public int add(MnpBuilding record){
+
+        // 同一楼盘下 载体名称不能重复
+        MnpBuildingExample mnpBuildingExample = new MnpBuildingExample();
+        mnpBuildingExample.createCriteria().andBuildNumEqualTo(record.getBuildNum()).andDiscIdEqualTo(record.getDiscId());
+        long count = countByExample(mnpBuildingExample);
+        if (count > 0) {
+            throw new RuntimeException(record.getBuildNum() + "已存在,请调整后重新添加!!!");
+        }
+        String id = IdUtil.simpleUUID();
+        record.setCreatedId(ShiroUtils.getUser().getId());
+        record.setCreatedAt(new Date());
+        String orderNum = getOrderNum(record);
+        record.setOrderNum(orderNum);
+        record.setId(id);
+        int result = insertWithoutId(record);
+
+        try {
+            JSONObject json = new JSONObject();
+            json.put("srcsystemid", id);
+            json.put("code", id);
+            json.put("name", record.getBuildNum());
+            json.put("pk_org", InvoiceUtil.pk_org);
+            json.put("pk_defdoclist", InvoiceUtil.pk_defdoclist_build);
+            // 给nc推送载体数据
+            String resultJson = InvoiceUtil.defdocAdd(json);
+            JSONObject jsonObject = JSONObject.parseObject(resultJson);
+            String success = jsonObject.getString("success");
+            if (success.equals("true")) {
+                JSONObject data = jsonObject.getJSONObject("data");
+                String code = data.getString("code");
+                String ncid = data.getString("ncid");
+                MnpBuilding model = new MnpBuilding();
+                model.setId(id);
+                model.setNcid(ncid);
+                model.setNcCode(code);
+                updateByPrimaryKeySelective(model);
+            }
+        } catch (Exception e) {
+            log.error("推送载体失败:{}", e);
+        }
+
+        return result;
+    }
+
+    public int edit(MnpBuilding model){
+
+        int result = updateByPrimaryKeySelective(model);
+
+        try {
+            MnpBuilding building = selectByPrimaryKey(model.getId());
+            JSONObject json = new JSONObject();
+            json.put("ncid", building.getNcid());
+            json.put("code", building.getNcCode());
+            json.put("name", building.getBuildNum());
+            // 给nc推送修改载体数据
+            InvoiceUtil.defdocUpdate(json);
+        }catch (Exception e){
+            log.error("推送修改载体失败:{}",e);
+        }
+
+        return result;
+    }
+
 
 }

+ 79 - 4
pro-base/src/main/java/com/idea/buildManage/service/ParkRoomService.java

@@ -5,6 +5,7 @@ import cn.hutool.core.util.RandomUtil;
 import cn.hutool.poi.excel.ExcelUtil;
 import cn.hutool.poi.excel.ExcelWriter;
 import com.alibaba.excel.EasyExcel;
+import com.alibaba.fastjson.JSONObject;
 import com.github.pagehelper.PageHelper;
 import com.github.pagehelper.PageInfo;
 import com.idea.buildManage.excel.MnpBuildingExcel;
@@ -12,13 +13,12 @@ import com.idea.buildManage.excel.ParkRoomExcel;
 import com.idea.buildManage.excel.WriteHandlerStrategy;
 import com.idea.buildManage.mapper.ParkRoomExtendMapper;
 import com.idea.buildManage.mapper.ParkRoomMapper;
-import com.idea.buildManage.model.MnpBuilding;
-import com.idea.buildManage.model.ParkRoom;
-import com.idea.buildManage.model.ParkRoomExample;
+import com.idea.buildManage.model.*;
 import com.idea.buildManage.response.ParkRoomResponse;
 import com.idea.customerManagement.mapper.RoomSelectionInfoMapper;
 import com.idea.customerManagement.model.RoomSelectionInfo;
 import com.idea.customerManagement.model.RoomSelectionInfoExample;
+import com.idea.invoice.util.InvoiceUtil;
 import com.rockstar.common.base.BaseService;
 import com.rockstar.common.conf.V2Config;
 import com.rockstar.common.support.Convert;
@@ -26,9 +26,11 @@ import com.rockstar.frame.mapper.FrameDataMapper;
 import com.rockstar.frame.model.FrameData;
 import com.rockstar.frame.model.extend.DateTrans;
 import com.rockstar.frame.model.extend.Tablepar;
+import com.rockstar.shiro.util.ShiroUtils;
 import com.rockstar.system.service.SysDictService;
 import com.rockstar.util.SnowflakeIdWorker;
 import com.rockstar.util.StringUtils;
+import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.collections.CollectionUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -44,6 +46,7 @@ import java.util.Arrays;
 import java.util.Date;
 import java.util.List;
 
+@Slf4j
 @Service
 public class ParkRoomService implements BaseService<ParkRoom, ParkRoomExample> {
 
@@ -58,6 +61,12 @@ public class ParkRoomService implements BaseService<ParkRoom, ParkRoomExample> {
     private ParkRoomExtendMapper extendMapper;
     @Autowired
     private RoomSelectionInfoMapper roomSelectionInfoMapper;
+    @Autowired
+    private MnpBuildingService buildingService;
+    @Autowired
+    private ParkFloorDiscService floorDiscService;
+    @Autowired
+    private ParkInfoService parkInfoService;
 
     /**
      * 分页查询
@@ -148,7 +157,19 @@ public class ParkRoomService implements BaseService<ParkRoom, ParkRoomExample> {
 
     public int edit(ParkRoom model) {
 
-        ParkRoom room = selectByPrimaryKey(model.getId());
+        model.setUpdatedAt(new Date());
+        model.setUpdatedId(ShiroUtils.getUserId());
+        try {
+            ParkRoom parkRoom = selectByPrimaryKey(model.getId());
+            JSONObject json = new JSONObject();
+            json.put("ncid", parkRoom.getNcid());
+            json.put("code", parkRoom.getNcCode());
+            json.put("name", parkRoom.getRoomNo());
+            // 给nc推送修改载体数据
+            InvoiceUtil.defdocUpdate(json);
+        }catch (Exception e){
+            log.error("推送修改房间失败:{}",e);
+        }
         return updateByPrimaryKeySelective(model);
     }
 
@@ -260,4 +281,58 @@ public class ParkRoomService implements BaseService<ParkRoom, ParkRoomExample> {
 
     }
 
+    /**
+     * 新增房间
+     * @param record
+     * @return
+     */
+    public int add(ParkRoom record){
+
+        String id = SnowflakeIdWorker.getUUID();
+        record.setId(id);
+        record.setCreatedAt(new Date());
+        record.setCreatedId(ShiroUtils.getUserId());
+        // 默认待售
+        record.setSoldStatus(1);
+        // 选房状态
+        record.setIsChoose(0);
+        String orderNum = getOrderNum(record);
+        record.setOrderNum(orderNum);
+        int result = insertWithoutId(record);
+
+        try {
+            ParkInfo parkInfo = parkInfoService.selectByPrimaryKey(record.getGroupId());
+            ParkFloorDisc parkFloorDisc = floorDiscService.selectByPrimaryKey(record.getDiscId());
+            MnpBuilding mnpBuilding = buildingService.selectByPrimaryKey(record.getBuildId());
+            String name = parkInfo.getGroupName() + "-" + parkFloorDisc.getName() + "-" + mnpBuilding.getBuildNum()
+                    + "-" + record.getRoomNo();
+            JSONObject json = new JSONObject();
+            json.put("srcsystemid", id);
+            json.put("code", id);
+            json.put("name", name);
+            json.put("pk_org", InvoiceUtil.pk_org);
+            json.put("pk_defdoclist", InvoiceUtil.pk_defdoclist_room);
+            // 给nc推送房间数据
+            String resultJson = InvoiceUtil.defdocAdd(json);
+            JSONObject jsonObject = JSONObject.parseObject(resultJson);
+            String success = jsonObject.getString("success");
+            if (success.equals("true")) {
+                JSONObject data = jsonObject.getJSONObject("data");
+                String code = data.getString("code");
+                String ncid = data.getString("ncid");
+                ParkRoom model = new ParkRoom();
+                model.setId(id);
+                model.setNcid(ncid);
+                model.setNcCode(code);
+                updateByPrimaryKeySelective(model);
+            }
+        } catch (Exception e) {
+            log.error("推送房间失败:{}", e);
+        }
+        return result;
+
+    }
+
+
+
 }

+ 4 - 0
pro-base/src/main/java/com/idea/customerManagement/model/CustomerManagement.java

@@ -59,6 +59,10 @@ public class CustomerManagement implements Serializable {
 
     private String abandonmentId;
 
+    private String ncid;
+
+    private String ncCode;
+
     private static final long serialVersionUID = 1L;
 
 }

+ 140 - 0
pro-base/src/main/java/com/idea/customerManagement/model/CustomerManagementExample.java

@@ -1234,6 +1234,146 @@ public class CustomerManagementExample {
             addCriterion("abandonment_id not between", value1, value2, "abandonmentId");
             return (Criteria) this;
         }
+
+        public Criteria andNcidIsNull() {
+            addCriterion("ncid is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcidIsNotNull() {
+            addCriterion("ncid is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcidEqualTo(String value) {
+            addCriterion("ncid =", value, "ncid");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcidNotEqualTo(String value) {
+            addCriterion("ncid <>", value, "ncid");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcidGreaterThan(String value) {
+            addCriterion("ncid >", value, "ncid");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcidGreaterThanOrEqualTo(String value) {
+            addCriterion("ncid >=", value, "ncid");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcidLessThan(String value) {
+            addCriterion("ncid <", value, "ncid");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcidLessThanOrEqualTo(String value) {
+            addCriterion("ncid <=", value, "ncid");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcidLike(String value) {
+            addCriterion("ncid like", value, "ncid");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcidNotLike(String value) {
+            addCriterion("ncid not like", value, "ncid");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcidIn(List<String> values) {
+            addCriterion("ncid in", values, "ncid");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcidNotIn(List<String> values) {
+            addCriterion("ncid not in", values, "ncid");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcidBetween(String value1, String value2) {
+            addCriterion("ncid between", value1, value2, "ncid");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcidNotBetween(String value1, String value2) {
+            addCriterion("ncid not between", value1, value2, "ncid");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcCodeIsNull() {
+            addCriterion("nc_code is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcCodeIsNotNull() {
+            addCriterion("nc_code is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcCodeEqualTo(String value) {
+            addCriterion("nc_code =", value, "ncCode");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcCodeNotEqualTo(String value) {
+            addCriterion("nc_code <>", value, "ncCode");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcCodeGreaterThan(String value) {
+            addCriterion("nc_code >", value, "ncCode");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcCodeGreaterThanOrEqualTo(String value) {
+            addCriterion("nc_code >=", value, "ncCode");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcCodeLessThan(String value) {
+            addCriterion("nc_code <", value, "ncCode");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcCodeLessThanOrEqualTo(String value) {
+            addCriterion("nc_code <=", value, "ncCode");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcCodeLike(String value) {
+            addCriterion("nc_code like", value, "ncCode");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcCodeNotLike(String value) {
+            addCriterion("nc_code not like", value, "ncCode");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcCodeIn(List<String> values) {
+            addCriterion("nc_code in", values, "ncCode");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcCodeNotIn(List<String> values) {
+            addCriterion("nc_code not in", values, "ncCode");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcCodeBetween(String value1, String value2) {
+            addCriterion("nc_code between", value1, value2, "ncCode");
+            return (Criteria) this;
+        }
+
+        public Criteria andNcCodeNotBetween(String value1, String value2) {
+            addCriterion("nc_code not between", value1, value2, "ncCode");
+            return (Criteria) this;
+        }
     }
 
     public static class Criteria extends GeneratedCriteria {

+ 44 - 0
pro-base/src/main/java/com/idea/customerManagement/service/CustomerManagementService.java

@@ -24,6 +24,7 @@ import com.idea.customerManagement.mapper.CustomerManagementExtendMapper;
 import com.idea.customerManagement.mapper.CustomerManagementMapper;
 import com.idea.customerManagement.mapper.RoomSelectionInfoMapper;
 import com.idea.customerManagement.model.*;
+import com.idea.invoice.util.InvoiceUtil;
 import com.idea.util.DateUtils;
 import com.idea.util.ExcelUtils;
 import com.idea.util.ReplaceWord;
@@ -191,6 +192,32 @@ public class CustomerManagementService implements BaseService<CustomerManagement
         model.setStatus(1);
         model.setCreatedAt(date);
         model.setCreatedId(userId);
+
+        try {
+            Buyer buyer = buyers.get(0);
+            // 给nc推送客户数据
+            JSONObject json = new JSONObject();
+            json.put("srcsystemid", id);
+            json.put("name", buyer.getName());
+            json.put("pk_custclass", "02"); //客户基本分类 ,,(默认是02),必选,01内部客户,02外部客户
+            json.put("custprop", "0");//财务组织客户类型,必选,默认0
+            json.put("taxpayerid", buyer.getIdentityCard()); //统一社会信用代码,必选
+            InvoiceUtil.customerAdd(json);
+        }catch (Exception e){
+            log.error("推送客户失败:{}",e);
+        }
+
+        try {
+            Buyer buyer = buyers.get(0);
+            // 客户分配
+            JSONObject json = new JSONObject();
+            json.put("pk_org", InvoiceUtil.pk_org);
+            json.put("ncid", buyer.getIdentityCard());
+            InvoiceUtil.customerAssign(json);
+        }catch (Exception e){
+            log.error("客户分配失败:{}",e);
+        }
+
         return insertWithOutId(model);
 
     }
@@ -210,6 +237,7 @@ public class CustomerManagementService implements BaseService<CustomerManagement
 
         // 先删除
         BuyerExample buyerExample = new BuyerExample();
+        buyerExample.setOrderByClause("order_num asc");
         buyerExample.createCriteria().andCustomerManagementIdEqualTo(id);
         List<Buyer> oldBuyers = buyerService.selectByExample(buyerExample);
         for(Buyer buyer : oldBuyers){
@@ -243,6 +271,22 @@ public class CustomerManagementService implements BaseService<CustomerManagement
         model.setBuyerName(builder.toString());
         model.setUpdatedAt(date);
         model.setUpdatedId(userId);
+
+        try {
+            Buyer oldBuyer = oldBuyers.get(0);
+            Buyer newBuyer = buyers.get(0);
+            // 修改客户数据
+            JSONObject json = new JSONObject();
+            json.put("ncid", oldBuyer.getIdentityCard());// 客户统一信用代码,必选
+            json.put("name", newBuyer.getName());
+            json.put("pk_custclass", "02"); //客户基本分类 ,,(默认是02),必选,01内部客户,02外部客户
+            json.put("custprop", "0");//财务组织客户类型,必选,默认0
+            json.put("taxpayerid", newBuyer.getIdentityCard()); //统一社会信用代码,必选
+            InvoiceUtil.customerUpdate(json);
+        }catch (Exception e){
+            log.error("修改客户失败:{}",e);
+        }
+
         return updateByPrimaryKeySelective(model);
 
     }

+ 2 - 1
pro-base/src/main/java/com/idea/customerManagement/service/RoomSelectionInfoService.java

@@ -247,6 +247,7 @@ public class RoomSelectionInfoService implements BaseService<RoomSelectionInfo,
         payLog.setStatus(0);
         payLog.setCreatedAt(new Date());
         payLog.setCreatedBy(ShiroUtils.getUserId());
+        payLog.setSerialNumber(model.getSerialNumber());
         payLogMapper.insertSelective(payLog);
         // 票据管理 新增一条记录
         CustomerManagement customerManagement = customerManagementMapper.selectByPrimaryKey(model.getCustomerManagementId());
@@ -320,7 +321,7 @@ public class RoomSelectionInfoService implements BaseService<RoomSelectionInfo,
             data.put("${name}", buyer.getName());
             data.put("${identityCard}", buyer.getIdentityCard());
             data.put("${address}", fullName);
-            data.put("${area}", roomResponse.getPredictionBuildArea());
+            data.put("${area}", roomResponse.getPredictionBuildArea() == null ? "" : roomResponse.getPredictionBuildArea());
             data.put("${roomNumber}", roomResponse.getRoomNumber() == null ? "" : roomResponse.getRoomNumber());
             data.put("${roomChooseDate}", roomChooseDate);
             data.put("${username}", loginName);

+ 1 - 1
pro-base/src/main/java/com/idea/invoice/mapper/InvoiceManageExtendMapper.java

@@ -11,6 +11,6 @@ public interface InvoiceManageExtendMapper {
 
     List<InvoiceManageDto> listByModel(InvoiceManageDto model);
 
-
+    List<InvoiceManage> selectNeedRefreshStatusList();
 
 }

+ 8 - 0
pro-base/src/main/java/com/idea/invoice/service/InvoiceManageService.java

@@ -525,4 +525,12 @@ public class InvoiceManageService implements BaseService<InvoiceManage, InvoiceM
         return result;
     }
 
+    /**
+     * 查询需要更新状态的发票
+     * @return
+     */
+    public List<InvoiceManage> selectNeedRefreshStatusList() {
+        return extendMapper.selectNeedRefreshStatusList();
+    }
+
 }

+ 47 - 0
pro-base/src/main/java/com/idea/invoice/task/InvoiceTask.java

@@ -1,20 +1,67 @@
 package com.idea.invoice.task;
 
+import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson.JSONObject;
+import com.idea.invoice.model.InvoiceManage;
+import com.idea.invoice.service.InvoiceManageService;
+import com.idea.invoice.util.InvoiceConstant;
+import com.idea.invoice.util.InvoiceUtil;
+import com.idea.util.DateUtils;
+import com.rockstar.util.StringUtils;
 import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.scheduling.annotation.Scheduled;
 import org.springframework.stereotype.Component;
 
+import java.util.Date;
+import java.util.List;
+import java.util.stream.Collectors;
+
 @Slf4j
 @Component
 public class InvoiceTask {
 
+    @Autowired
+    private InvoiceManageService invoiceManageService;
 
     @Scheduled(cron = "0 0/10 * * * ?")
     public void refreshStatus() {
 
+        List<InvoiceManage> invoiceManages = invoiceManageService.selectNeedRefreshStatusList();
+        String ncCodes = invoiceManages.stream().map(InvoiceManage::getNcCode).collect(Collectors.joining());
+        JSONObject json = new JSONObject();
+        json.put("billno",ncCodes);
+        json.put("pk_org", InvoiceUtil.pk_org);
+        try {
+            String result = InvoiceUtil.invoiceQuery(json);
+            JSONObject jsonObject = JSONObject.parseObject(result);
+            if(jsonObject.getString("success").equals("true")){
+                JSONArray data = jsonObject.getJSONArray("data");
+                for (int i = 0; i < data.size(); i++) {
+                    JSONObject object = data.getJSONObject(i);
+                    String srcsystemid = object.getString("srcsystemid");
+                    String invoiceno = object.getString("invoiceno");
+                    String settledate = object.getString("settledate");
+                    if(StringUtils.isNotEmpty(invoiceno)){
+
+                        Date date = DateUtils.parseDate(settledate, DateUtils.YYYY_MM_DD_HH_MM_SS);
+                        InvoiceManage invoiceManage = invoiceManageService.selectByPrimaryKey(srcsystemid);
+                        invoiceManage.setInvoiceNo(invoiceno);
+                        invoiceManage.setInvoiceStatus("1");
+                        invoiceManage.setInvoiceDate(date);
+                        invoiceManageService.updateByPrimaryKeySelective(invoiceManage);
+                    }
+                }
+            }
+        }catch (Exception e){
+            log.error("查询发票状态异常:{}",e);
+        }
+
     }
 
+    public void refreshBuild() {
 
+    }
 
 
 

+ 60 - 36
pro-base/src/main/java/com/idea/invoice/util/InvoiceUtil.java

@@ -53,11 +53,22 @@ public class InvoiceUtil {
 
     public static void main(String[] args) throws Exception {
 
-        String nature = "F2-Cxx-08";
-        String pk_informer = "1001I91000000003V3RZ";
-        String roomNumber = "";
-        String name = "";
-        String def13 = "222";
+//        JSONObject json = new JSONObject();
+//        json.put("ncid", "1001211000000003WHWX");
+//        json.put("code", "d12eba8719d14f40b260f70e9393614c");
+//        json.put("name", "1号楼改");
+//        InvoiceUtil.defdocUpdate(json);
+
+//        JSONObject json = new JSONObject();
+//        String id = IdUtil.simpleUUID();
+//        json.put("srcsystemid", id);
+//        json.put("code", id);
+//        json.put("name", "1号楼");
+//        json.put("pk_org", InvoiceUtil.pk_org);
+//        json.put("pk_defdoclist", InvoiceUtil.pk_defdoclist_build);
+//        // 给nc推送载体数据
+//        InvoiceUtil.defdocAdd(json);
+
         // 收款单接口-新增提交
 //        InvoiceUtil.gatheringbillAdd("F2-Cxx-09","1001I91000000003V3S3");
         // 收款单接口-转账单
@@ -73,20 +84,11 @@ public class InvoiceUtil {
         // 应收接口-收入结转单 新增
 //        InvoiceUtil.recbillAdd();
         // 楼栋或房间查询
-//        InvoiceUtil.defdocView("CJ19");
+        InvoiceUtil.defdocView("CJ19");
         // 楼栋或房间新增
 //        InvoiceUtil.defdocAdd("41号楼",pk_defdoclist_build);
         // 到账通知认领查询
 //        InvoiceUtil.informerQuery();
-        BigDecimal one = new BigDecimal("14475.20");
-        BigDecimal two = new BigDecimal("19670.88");
-        BigDecimal three = new BigDecimal("18304.08");
-        List<BigDecimal> list = Arrays.asList(one, two, three);
-        BigDecimal zero = BigDecimal.ZERO;
-        for (BigDecimal bigDecimal : list){
-            zero= zero.add(bigDecimal).setScale(2, BigDecimal.ROUND_HALF_UP);
-        }
-        System.out.println(zero);
     }
 
     /**
@@ -107,18 +109,13 @@ public class InvoiceUtil {
      *
      * @throws Exception
      */
-    public static void defdocAdd(String name,String pk_defdoclist) throws Exception {
+    public static String defdocAdd(JSONObject json) throws Exception {
         APICurUtils util = new APICurUtils();
         String token = InvoiceUtil.getToken(util);
         util.setApiUrl("nccloud/api/wxyy/uapbd/defdoc/add");
-        JSONObject json = new JSONObject();
-        json.put("srcsystemid", "7b5a4022df7e4ae0a0a9bd4d77409920");
-        json.put("code", "7b5a4022df7e4ae0a0a9bd4d77409920");
-        json.put("name", name);
-        json.put("pk_org", pk_org);
-        json.put("pk_defdoclist", pk_defdoclist);
         String result = util.getAPIRetrun(token, json.toJSONString());
         log.info("楼栋或房间新增:{}", result);
+        return result;
     }
 
     /**
@@ -134,7 +131,16 @@ public class InvoiceUtil {
         json.put("pk_org", pk_org);
         json.put("code", pk_defdoclist);
         String result = util.getAPIRetrun(token, json.toJSONString());
-        log.info("房间查看:{}", result);
+        log.info("楼栋或房间查看:{}", result);
+    }
+
+    public static String defdocUpdate(JSONObject json) throws Exception {
+        APICurUtils util = new APICurUtils();
+        String token = InvoiceUtil.getToken(util);
+        util.setApiUrl("nccloud/api/wxyy/uapbd/defdoc/update");
+        String result = util.getAPIRetrun(token, json.toJSONString());
+        log.info("楼栋或房间更新:{}", result);
+        return result;
     }
 
 
@@ -143,18 +149,11 @@ public class InvoiceUtil {
      *
      * @throws Exception
      */
-    public static void customerAdd() throws Exception {
+    public static void customerAdd(JSONObject json) throws Exception {
         APICurUtils util = new APICurUtils();
         String token = InvoiceUtil.getToken(util);
         util.setApiUrl("nccloud/api/wxyy/uapbd/customer/add");
-        JSONObject json = new JSONObject();
-        json.put("srcsystemid", "a9eb2c6f3e1f4b36a93f06fdba1a7177");
-        json.put("name", "客户测试");
-        json.put("pk_custclass", "02"); //客户基本分类 ,,(默认是02),必选,01内部客户,02外部客户
-        json.put("custprop", "0");//财务组织客户类型,必选,默认0
-        json.put("taxpayerid", "tyxydm00002"); //统一社会信用代码,必选
         String result = util.getAPIRetrun(token, json.toJSONString());
-
         log.info("客户新增:{}", result);
     }
 
@@ -163,18 +162,27 @@ public class InvoiceUtil {
      *
      * @throws Exception
      */
-    public static void customerAssign() throws Exception {
+    public static void customerAssign(JSONObject json) throws Exception {
         APICurUtils util = new APICurUtils();
         String token = InvoiceUtil.getToken(util);
         util.setApiUrl("nccloud/api/wxyy/uapbd/customer/assign");
-        JSONObject json = new JSONObject();
-        json.put("pk_org", pk_org);
-        json.put("ncid", "tyxydm00002");
         String result = util.getAPIRetrun(token, json.toJSONString());
-
         log.info("客户分配:{}", result);
     }
 
+    /**
+     * 客户修改
+     *
+     * @throws Exception
+     */
+    public static void customerUpdate(JSONObject json) throws Exception {
+        APICurUtils util = new APICurUtils();
+        String token = InvoiceUtil.getToken(util);
+        util.setApiUrl("nccloud/api/wxyy/uapbd/customer/update");
+        String result = util.getAPIRetrun(token, json.toJSONString());
+        log.info("客户修改:{}", result);
+    }
+
     /**
      * 付款单接口_退款单
      *
@@ -484,4 +492,20 @@ public class InvoiceUtil {
         log.info("单据提交-划拨单:{}", result);
     }
 
+    /**
+     * 发票查询
+     * @param json
+     * @return
+     * @throws Exception
+     */
+    public static String invoiceQuery(JSONObject json) throws Exception {
+
+        APICurUtils util = new APICurUtils();
+        String token = InvoiceUtil.getToken(util);
+        util.setApiUrl("nccloud/api/wxyy/arap/billstatus/arapQuery");
+        String result = util.getAPIRetrun(token, json.toJSONString());
+        return result;
+    }
+
+
 }

+ 7 - 0
pro-base/src/main/java/com/idea/paymentManagement/model/PayLog.java

@@ -1,5 +1,8 @@
 package com.idea.paymentManagement.model;
 
+import com.fasterxml.jackson.annotation.JsonFormat;
+import org.springframework.format.annotation.DateTimeFormat;
+
 import java.io.Serializable;
 import java.math.BigDecimal;
 import java.util.Date;
@@ -25,6 +28,8 @@ public class PayLog implements Serializable {
 
     private BigDecimal payMoney;
 
+    @DateTimeFormat(pattern = "yyyy-MM-dd")
+    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
     private Date payTime;
 
     private Integer paymentMethod;
@@ -39,6 +44,8 @@ public class PayLog implements Serializable {
 
     private String createdBy;
 
+    @DateTimeFormat(pattern = "yyyy-MM-dd")
+    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
     private Date createdAt;
 
     private String updatedBy;

+ 8 - 1
pro-base/src/main/java/com/idea/paymentManagement/service/PayLogService.java

@@ -40,6 +40,7 @@ import com.rockstar.frame.service.FrameUserService;
 import com.rockstar.shiro.util.ShiroUtils;
 import com.rockstar.system.service.SysDictService;
 import com.rockstar.util.StringUtils;
+import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.collections.CollectionUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -52,6 +53,7 @@ import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 
+@Slf4j
 @Service
 public class PayLogService implements BaseService<PayLog, PayLogExample> {
 
@@ -389,7 +391,12 @@ public class PayLogService implements BaseService<PayLog, PayLogExample> {
                 + roomResponse.getBuildName()
                 + roomResponse.getRoomNo();
 
-        String collectionTime = DateUtils.parseDateToStr(DateUtils.DATE_CH, payLog.getPayTime());
+        String collectionTime = "";
+        try {
+            collectionTime = DateUtils.parseDateToStr(DateUtils.DATE_CH, payLog.getPayTime());
+        }catch (Exception e){
+            log.error("日期转换异常:{}",e.getMessage());
+        }
         String content = "";
         String paymentMethod = "";
         String contentTypeLabel = sysDictService.getDictLabel("CONTENT_TYPE", payLog.getContentType().toString());

+ 41 - 7
pro-base/src/main/resources/mybatis/buildManage/MnpBuildingMapper.xml

@@ -27,6 +27,8 @@
     <result column="created_at" jdbcType="TIMESTAMP" property="createdAt" />
     <result column="updated_at" jdbcType="TIMESTAMP" property="updatedAt" />
     <result column="updated_id" jdbcType="VARCHAR" property="updatedId" />
+    <result column="ncid" jdbcType="VARCHAR" property="ncid" />
+    <result column="nc_code" jdbcType="VARCHAR" property="ncCode" />
   </resultMap>
   <resultMap extends="BaseResultMap" id="ResultMapWithBLOBs" type="com.idea.buildManage.model.MnpBuilding">
     <result column="remark" jdbcType="LONGVARCHAR" property="remark" />
@@ -94,7 +96,7 @@
     id, group_id, group_name, disc_id, disc_name, order_num, build_num, construction_num,
     area, residential_area, un_residential_area, cover_an_area, underground_area, room_num,
     number_info, floors, overground_floors, underground_floors, structure, regionalism_code,
-    land_code, created_id, created_at, updated_at, updated_id
+    land_code, created_id, created_at, updated_at, updated_id, ncid, nc_code
   </sql>
   <sql id="Blob_Column_List">
     remark, price_remark
@@ -156,8 +158,8 @@
                               floors, overground_floors, underground_floors,
                               structure, regionalism_code, land_code,
                               created_id, created_at, updated_at,
-                              updated_id, remark, price_remark
-    )
+                              updated_id, ncid, nc_code,
+                              remark, price_remark)
     values (#{id,jdbcType=VARCHAR}, #{groupId,jdbcType=VARCHAR}, #{groupName,jdbcType=VARCHAR},
             #{discId,jdbcType=VARCHAR}, #{discName,jdbcType=VARCHAR}, #{orderNum,jdbcType=VARCHAR},
             #{buildNum,jdbcType=VARCHAR}, #{constructionNum,jdbcType=VARCHAR}, #{area,jdbcType=DOUBLE},
@@ -166,8 +168,8 @@
             #{floors,jdbcType=INTEGER}, #{overgroundFloors,jdbcType=INTEGER}, #{undergroundFloors,jdbcType=INTEGER},
             #{structure,jdbcType=VARCHAR}, #{regionalismCode,jdbcType=VARCHAR}, #{landCode,jdbcType=VARCHAR},
             #{createdId,jdbcType=VARCHAR}, #{createdAt,jdbcType=TIMESTAMP}, #{updatedAt,jdbcType=TIMESTAMP},
-            #{updatedId,jdbcType=VARCHAR}, #{remark,jdbcType=LONGVARCHAR}, #{priceRemark,jdbcType=LONGVARCHAR}
-           )
+            #{updatedId,jdbcType=VARCHAR}, #{ncid,jdbcType=VARCHAR}, #{ncCode,jdbcType=VARCHAR},
+            #{remark,jdbcType=LONGVARCHAR}, #{priceRemark,jdbcType=LONGVARCHAR})
   </insert>
   <insert id="insertSelective" parameterType="com.idea.buildManage.model.MnpBuilding">
     insert into mnp_building
@@ -247,6 +249,12 @@
       <if test="updatedId != null">
         updated_id,
       </if>
+      <if test="ncid != null">
+        ncid,
+      </if>
+      <if test="ncCode != null">
+        nc_code,
+      </if>
       <if test="remark != null">
         remark,
       </if>
@@ -330,6 +338,12 @@
       <if test="updatedId != null">
         #{updatedId,jdbcType=VARCHAR},
       </if>
+      <if test="ncid != null">
+        #{ncid,jdbcType=VARCHAR},
+      </if>
+      <if test="ncCode != null">
+        #{ncCode,jdbcType=VARCHAR},
+      </if>
       <if test="remark != null">
         #{remark,jdbcType=LONGVARCHAR},
       </if>
@@ -422,6 +436,12 @@
       <if test="record.updatedId != null">
         updated_id = #{record.updatedId,jdbcType=VARCHAR},
       </if>
+      <if test="record.ncid != null">
+        ncid = #{record.ncid,jdbcType=VARCHAR},
+      </if>
+      <if test="record.ncCode != null">
+        nc_code = #{record.ncCode,jdbcType=VARCHAR},
+      </if>
       <if test="record.remark != null">
         remark = #{record.remark,jdbcType=LONGVARCHAR},
       </if>
@@ -460,6 +480,8 @@
     created_at = #{record.createdAt,jdbcType=TIMESTAMP},
     updated_at = #{record.updatedAt,jdbcType=TIMESTAMP},
     updated_id = #{record.updatedId,jdbcType=VARCHAR},
+    ncid = #{record.ncid,jdbcType=VARCHAR},
+    nc_code = #{record.ncCode,jdbcType=VARCHAR},
     remark = #{record.remark,jdbcType=LONGVARCHAR},
     price_remark = #{record.priceRemark,jdbcType=LONGVARCHAR}
     <if test="_parameter != null">
@@ -492,7 +514,9 @@
     created_id = #{record.createdId,jdbcType=VARCHAR},
     created_at = #{record.createdAt,jdbcType=TIMESTAMP},
     updated_at = #{record.updatedAt,jdbcType=TIMESTAMP},
-    updated_id = #{record.updatedId,jdbcType=VARCHAR}
+    updated_id = #{record.updatedId,jdbcType=VARCHAR},
+    ncid = #{record.ncid,jdbcType=VARCHAR},
+    nc_code = #{record.ncCode,jdbcType=VARCHAR}
     <if test="_parameter != null">
       <include refid="Update_By_Example_Where_Clause" />
     </if>
@@ -572,6 +596,12 @@
       <if test="updatedId != null">
         updated_id = #{updatedId,jdbcType=VARCHAR},
       </if>
+      <if test="ncid != null">
+        ncid = #{ncid,jdbcType=VARCHAR},
+      </if>
+      <if test="ncCode != null">
+        nc_code = #{ncCode,jdbcType=VARCHAR},
+      </if>
       <if test="remark != null">
         remark = #{remark,jdbcType=LONGVARCHAR},
       </if>
@@ -607,6 +637,8 @@
         created_at = #{createdAt,jdbcType=TIMESTAMP},
         updated_at = #{updatedAt,jdbcType=TIMESTAMP},
         updated_id = #{updatedId,jdbcType=VARCHAR},
+        ncid = #{ncid,jdbcType=VARCHAR},
+        nc_code = #{ncCode,jdbcType=VARCHAR},
         remark = #{remark,jdbcType=LONGVARCHAR},
         price_remark = #{priceRemark,jdbcType=LONGVARCHAR}
     where id = #{id,jdbcType=VARCHAR}
@@ -636,7 +668,9 @@
         created_id = #{createdId,jdbcType=VARCHAR},
         created_at = #{createdAt,jdbcType=TIMESTAMP},
         updated_at = #{updatedAt,jdbcType=TIMESTAMP},
-        updated_id = #{updatedId,jdbcType=VARCHAR}
+        updated_id = #{updatedId,jdbcType=VARCHAR},
+        ncid = #{ncid,jdbcType=VARCHAR},
+        nc_code = #{ncCode,jdbcType=VARCHAR}
     where id = #{id,jdbcType=VARCHAR}
   </update>
 </mapper>

+ 1 - 0
pro-base/src/main/resources/mybatis/buildManage/ParkRoomExtendMapper.xml

@@ -95,6 +95,7 @@
       park_room.room_no,
       park_room.room_number,
       park_room.prediction_build_area,
+      park_room.actual_build_area,
       park_floor_disc.subscription_funds
     FROM
       park_room

+ 41 - 5
pro-base/src/main/resources/mybatis/buildManage/ParkRoomMapper.xml

@@ -30,6 +30,8 @@
     <result column="two_point_two" jdbcType="VARCHAR" property="twoPointTwo" />
     <result column="order_num" jdbcType="VARCHAR" property="orderNum" />
     <result column="is_choose" jdbcType="INTEGER" property="isChoose" />
+    <result column="ncid" jdbcType="VARCHAR" property="ncid" />
+    <result column="nc_code" jdbcType="VARCHAR" property="ncCode" />
   </resultMap>
   <resultMap extends="BaseResultMap" id="ResultMapWithBLOBs" type="com.idea.buildManage.model.ParkRoom">
     <result column="remark" jdbcType="LONGVARCHAR" property="remark" />
@@ -97,7 +99,7 @@
     prediction_build_area, prediction_land_area, actual_internal_area, actual_share_area,
     actual_build_area, actual_land_area, room_use, room_number, decoration_situation,
     house_type_id, house_type_picture, created_id, created_at, updated_at, updated_id,
-    sale_status, sold_status, two_point_two, order_num, is_choose
+    sale_status, sold_status, two_point_two, order_num, is_choose, ncid, nc_code
   </sql>
   <sql id="Blob_Column_List">
     remark
@@ -161,7 +163,8 @@
                            created_id, created_at, updated_at,
                            updated_id, sale_status, sold_status,
                            two_point_two, order_num, is_choose,
-                           remark)
+                           ncid, nc_code, remark
+    )
     values (#{id,jdbcType=VARCHAR}, #{buildId,jdbcType=VARCHAR}, #{discId,jdbcType=VARCHAR},
             #{groupId,jdbcType=VARCHAR}, #{roomNo,jdbcType=VARCHAR}, #{floor,jdbcType=VARCHAR},
             #{predictionInternalArea,jdbcType=DOUBLE}, #{predictionShareArea,jdbcType=DOUBLE},
@@ -172,7 +175,8 @@
             #{createdId,jdbcType=VARCHAR}, #{createdAt,jdbcType=TIMESTAMP}, #{updatedAt,jdbcType=TIMESTAMP},
             #{updatedId,jdbcType=VARCHAR}, #{saleStatus,jdbcType=INTEGER}, #{soldStatus,jdbcType=INTEGER},
             #{twoPointTwo,jdbcType=VARCHAR}, #{orderNum,jdbcType=VARCHAR}, #{isChoose,jdbcType=INTEGER},
-            #{remark,jdbcType=LONGVARCHAR})
+            #{ncid,jdbcType=VARCHAR}, #{ncCode,jdbcType=VARCHAR}, #{remark,jdbcType=LONGVARCHAR}
+           )
   </insert>
   <insert id="insertSelective" parameterType="com.idea.buildManage.model.ParkRoom">
     insert into park_room
@@ -261,6 +265,12 @@
       <if test="isChoose != null">
         is_choose,
       </if>
+      <if test="ncid != null">
+        ncid,
+      </if>
+      <if test="ncCode != null">
+        nc_code,
+      </if>
       <if test="remark != null">
         remark,
       </if>
@@ -350,6 +360,12 @@
       <if test="isChoose != null">
         #{isChoose,jdbcType=INTEGER},
       </if>
+      <if test="ncid != null">
+        #{ncid,jdbcType=VARCHAR},
+      </if>
+      <if test="ncCode != null">
+        #{ncCode,jdbcType=VARCHAR},
+      </if>
       <if test="remark != null">
         #{remark,jdbcType=LONGVARCHAR},
       </if>
@@ -448,6 +464,12 @@
       <if test="record.isChoose != null">
         is_choose = #{record.isChoose,jdbcType=INTEGER},
       </if>
+      <if test="record.ncid != null">
+        ncid = #{record.ncid,jdbcType=VARCHAR},
+      </if>
+      <if test="record.ncCode != null">
+        nc_code = #{record.ncCode,jdbcType=VARCHAR},
+      </if>
       <if test="record.remark != null">
         remark = #{record.remark,jdbcType=LONGVARCHAR},
       </if>
@@ -486,6 +508,8 @@
     two_point_two = #{record.twoPointTwo,jdbcType=VARCHAR},
     order_num = #{record.orderNum,jdbcType=VARCHAR},
     is_choose = #{record.isChoose,jdbcType=INTEGER},
+    ncid = #{record.ncid,jdbcType=VARCHAR},
+    nc_code = #{record.ncCode,jdbcType=VARCHAR},
     remark = #{record.remark,jdbcType=LONGVARCHAR}
     <if test="_parameter != null">
       <include refid="Update_By_Example_Where_Clause" />
@@ -520,7 +544,9 @@
     sold_status = #{record.soldStatus,jdbcType=INTEGER},
     two_point_two = #{record.twoPointTwo,jdbcType=VARCHAR},
     order_num = #{record.orderNum,jdbcType=VARCHAR},
-    is_choose = #{record.isChoose,jdbcType=INTEGER}
+    is_choose = #{record.isChoose,jdbcType=INTEGER},
+    ncid = #{record.ncid,jdbcType=VARCHAR},
+    nc_code = #{record.ncCode,jdbcType=VARCHAR}
     <if test="_parameter != null">
       <include refid="Update_By_Example_Where_Clause" />
     </if>
@@ -609,6 +635,12 @@
       <if test="isChoose != null">
         is_choose = #{isChoose,jdbcType=INTEGER},
       </if>
+      <if test="ncid != null">
+        ncid = #{ncid,jdbcType=VARCHAR},
+      </if>
+      <if test="ncCode != null">
+        nc_code = #{ncCode,jdbcType=VARCHAR},
+      </if>
       <if test="remark != null">
         remark = #{remark,jdbcType=LONGVARCHAR},
       </if>
@@ -644,6 +676,8 @@
         two_point_two = #{twoPointTwo,jdbcType=VARCHAR},
         order_num = #{orderNum,jdbcType=VARCHAR},
         is_choose = #{isChoose,jdbcType=INTEGER},
+        ncid = #{ncid,jdbcType=VARCHAR},
+        nc_code = #{ncCode,jdbcType=VARCHAR},
         remark = #{remark,jdbcType=LONGVARCHAR}
     where id = #{id,jdbcType=VARCHAR}
   </update>
@@ -675,7 +709,9 @@
         sold_status = #{soldStatus,jdbcType=INTEGER},
         two_point_two = #{twoPointTwo,jdbcType=VARCHAR},
         order_num = #{orderNum,jdbcType=VARCHAR},
-        is_choose = #{isChoose,jdbcType=INTEGER}
+        is_choose = #{isChoose,jdbcType=INTEGER},
+        ncid = #{ncid,jdbcType=VARCHAR},
+        nc_code = #{ncCode,jdbcType=VARCHAR}
     where id = #{id,jdbcType=VARCHAR}
   </update>
 </mapper>

+ 43 - 7
pro-base/src/main/resources/mybatis/customerManagement/CustomerManagementMapper.xml

@@ -19,6 +19,8 @@
     <result column="abandonment_date" jdbcType="TIMESTAMP" property="abandonmentDate" />
     <result column="abandonment_at" jdbcType="TIMESTAMP" property="abandonmentAt" />
     <result column="abandonment_id" jdbcType="VARCHAR" property="abandonmentId" />
+    <result column="ncid" jdbcType="VARCHAR" property="ncid" />
+    <result column="nc_code" jdbcType="VARCHAR" property="ncCode" />
   </resultMap>
   <resultMap extends="BaseResultMap" id="ResultMapWithBLOBs" type="com.idea.customerManagement.model.CustomerManagement">
     <result column="abandonment_remark" jdbcType="LONGVARCHAR" property="abandonmentRemark" />
@@ -85,7 +87,7 @@
   <sql id="Base_Column_List">
     id, group_id, disc_id, batch_number, room_selection_number, room_selection_date,
     status, house_id, house_name, buyer_name, created_id, created_at, updated_at, updated_id,
-    abandonment_date, abandonment_at, abandonment_id
+    abandonment_date, abandonment_at, abandonment_id, ncid, nc_code
   </sql>
   <sql id="Blob_Column_List">
     abandonment_remark, abandonment_file_list
@@ -144,15 +146,17 @@
                                      status, house_id, house_name,
                                      buyer_name, created_id, created_at,
                                      updated_at, updated_id, abandonment_date,
-                                     abandonment_at, abandonment_id, abandonment_remark,
-                                     abandonment_file_list)
+                                     abandonment_at, abandonment_id, ncid,
+                                     nc_code, abandonment_remark, abandonment_file_list
+    )
     values (#{id,jdbcType=VARCHAR}, #{groupId,jdbcType=VARCHAR}, #{discId,jdbcType=VARCHAR},
             #{batchNumber,jdbcType=VARCHAR}, #{roomSelectionNumber,jdbcType=VARCHAR}, #{roomSelectionDate,jdbcType=TIMESTAMP},
             #{status,jdbcType=INTEGER}, #{houseId,jdbcType=VARCHAR}, #{houseName,jdbcType=VARCHAR},
             #{buyerName,jdbcType=VARCHAR}, #{createdId,jdbcType=VARCHAR}, #{createdAt,jdbcType=TIMESTAMP},
             #{updatedAt,jdbcType=TIMESTAMP}, #{updatedId,jdbcType=VARCHAR}, #{abandonmentDate,jdbcType=TIMESTAMP},
-            #{abandonmentAt,jdbcType=TIMESTAMP}, #{abandonmentId,jdbcType=VARCHAR}, #{abandonmentRemark,jdbcType=LONGVARCHAR},
-            #{abandonmentFileList,jdbcType=LONGVARCHAR})
+            #{abandonmentAt,jdbcType=TIMESTAMP}, #{abandonmentId,jdbcType=VARCHAR}, #{ncid,jdbcType=VARCHAR},
+            #{ncCode,jdbcType=VARCHAR}, #{abandonmentRemark,jdbcType=LONGVARCHAR}, #{abandonmentFileList,jdbcType=LONGVARCHAR}
+           )
   </insert>
   <insert id="insertSelective" parameterType="com.idea.customerManagement.model.CustomerManagement">
     insert into customer_management
@@ -208,6 +212,12 @@
       <if test="abandonmentId != null">
         abandonment_id,
       </if>
+      <if test="ncid != null">
+        ncid,
+      </if>
+      <if test="ncCode != null">
+        nc_code,
+      </if>
       <if test="abandonmentRemark != null">
         abandonment_remark,
       </if>
@@ -267,6 +277,12 @@
       <if test="abandonmentId != null">
         #{abandonmentId,jdbcType=VARCHAR},
       </if>
+      <if test="ncid != null">
+        #{ncid,jdbcType=VARCHAR},
+      </if>
+      <if test="ncCode != null">
+        #{ncCode,jdbcType=VARCHAR},
+      </if>
       <if test="abandonmentRemark != null">
         #{abandonmentRemark,jdbcType=LONGVARCHAR},
       </if>
@@ -335,6 +351,12 @@
       <if test="record.abandonmentId != null">
         abandonment_id = #{record.abandonmentId,jdbcType=VARCHAR},
       </if>
+      <if test="record.ncid != null">
+        ncid = #{record.ncid,jdbcType=VARCHAR},
+      </if>
+      <if test="record.ncCode != null">
+        nc_code = #{record.ncCode,jdbcType=VARCHAR},
+      </if>
       <if test="record.abandonmentRemark != null">
         abandonment_remark = #{record.abandonmentRemark,jdbcType=LONGVARCHAR},
       </if>
@@ -365,6 +387,8 @@
     abandonment_date = #{record.abandonmentDate,jdbcType=TIMESTAMP},
     abandonment_at = #{record.abandonmentAt,jdbcType=TIMESTAMP},
     abandonment_id = #{record.abandonmentId,jdbcType=VARCHAR},
+    ncid = #{record.ncid,jdbcType=VARCHAR},
+    nc_code = #{record.ncCode,jdbcType=VARCHAR},
     abandonment_remark = #{record.abandonmentRemark,jdbcType=LONGVARCHAR},
     abandonment_file_list = #{record.abandonmentFileList,jdbcType=LONGVARCHAR}
     <if test="_parameter != null">
@@ -389,7 +413,9 @@
     updated_id = #{record.updatedId,jdbcType=VARCHAR},
     abandonment_date = #{record.abandonmentDate,jdbcType=TIMESTAMP},
     abandonment_at = #{record.abandonmentAt,jdbcType=TIMESTAMP},
-    abandonment_id = #{record.abandonmentId,jdbcType=VARCHAR}
+    abandonment_id = #{record.abandonmentId,jdbcType=VARCHAR},
+    ncid = #{record.ncid,jdbcType=VARCHAR},
+    nc_code = #{record.ncCode,jdbcType=VARCHAR}
     <if test="_parameter != null">
       <include refid="Update_By_Example_Where_Clause" />
     </if>
@@ -445,6 +471,12 @@
       <if test="abandonmentId != null">
         abandonment_id = #{abandonmentId,jdbcType=VARCHAR},
       </if>
+      <if test="ncid != null">
+        ncid = #{ncid,jdbcType=VARCHAR},
+      </if>
+      <if test="ncCode != null">
+        nc_code = #{ncCode,jdbcType=VARCHAR},
+      </if>
       <if test="abandonmentRemark != null">
         abandonment_remark = #{abandonmentRemark,jdbcType=LONGVARCHAR},
       </if>
@@ -472,6 +504,8 @@
         abandonment_date = #{abandonmentDate,jdbcType=TIMESTAMP},
         abandonment_at = #{abandonmentAt,jdbcType=TIMESTAMP},
         abandonment_id = #{abandonmentId,jdbcType=VARCHAR},
+        ncid = #{ncid,jdbcType=VARCHAR},
+        nc_code = #{ncCode,jdbcType=VARCHAR},
         abandonment_remark = #{abandonmentRemark,jdbcType=LONGVARCHAR},
         abandonment_file_list = #{abandonmentFileList,jdbcType=LONGVARCHAR}
     where id = #{id,jdbcType=VARCHAR}
@@ -493,7 +527,9 @@
         updated_id = #{updatedId,jdbcType=VARCHAR},
         abandonment_date = #{abandonmentDate,jdbcType=TIMESTAMP},
         abandonment_at = #{abandonmentAt,jdbcType=TIMESTAMP},
-        abandonment_id = #{abandonmentId,jdbcType=VARCHAR}
+        abandonment_id = #{abandonmentId,jdbcType=VARCHAR},
+        ncid = #{ncid,jdbcType=VARCHAR},
+        nc_code = #{ncCode,jdbcType=VARCHAR}
     where id = #{id,jdbcType=VARCHAR}
   </update>
 </mapper>

+ 3 - 1
pro-base/src/main/resources/mybatis/invoice/InvoiceManageExtendMapper.xml

@@ -42,7 +42,9 @@
       order by i.create_time desc
   </select>
 
-
+    <select id="selectNeedRefreshStatusList" resultType="com.idea.invoice.model.InvoiceManage">
+        select * from invoice_manage where nc_code is null or nc_code = ''
+    </select>
 
 
 </mapper>