Commit 784207e7 by HlQ

[chg] 代码优化

1 parent fa845a68
Showing 63 changed files with 259 additions and 380 deletions
......@@ -93,7 +93,7 @@ public class InvoiceController {
*/
@GetMapping("/invoice/calMoney")
@SaCheckPermission(value = "invoice:calMoney", orRole = "admin")
public String calMoney(String[] noList) {
public String calMoney(@RequestParam(required = false) List<String> noList) {
return invoiceService.calMoney(noList);
}
......
......@@ -144,7 +144,7 @@ public class TaskController {
public List<Map<String, Object>> peopleAnalysis(@DateTimeFormat(pattern = "yyyy-MM-dd") Date startDate,
@DateTimeFormat(pattern = "yyyy-MM-dd") Date endDate,
Integer source,
Long[] userIds) {
@RequestParam(required = false) List<Long> userIds) {
return taskService.peopleAnalysis(startDate, endDate, source, userIds);
}
......@@ -153,7 +153,7 @@ public class TaskController {
public List<Map<String, Object>> proAnalysis(@DateTimeFormat(pattern = "yyyy-MM-dd") Date startDate,
@DateTimeFormat(pattern = "yyyy-MM-dd") Date endDate,
Integer source,
Long[] userIds) {
@RequestParam(required = false) List<Long> userIds) {
return taskService.proAnalysis(startDate, endDate, source, userIds);
}
......
......@@ -132,9 +132,8 @@ public class UserController {
@GetMapping("/wechatCallback")
public Object wechatCallback(String code, Integer active, HttpServletResponse res) throws IOException {
Object obj = wechatMod.getOpenid(code);
if (obj instanceof Map) {
Map<String, String> map = (Map<String, String>) obj;
res.sendRedirect(StrUtil.format("https://yunwei.vionyun.com/wap?openid={}&nickname={}&active={}", map.get("openid"), UrlEncoder.encodeAll(map.get("nickname")), active));
if (obj instanceof Map map) {
res.sendRedirect(StrUtil.format("https://yunwei.vionyun.com/wap?openid={}&nickname={}&active={}", map.get("openid"), UrlEncoder.encodeAll((String) map.get("nickname")), active));
} else {
return obj;
}
......
......@@ -52,247 +52,6 @@ public class ContractRunner {
@Value("${xbongbong.corpid}")
private String corpId;
/* @Scheduled(cron = "0 0 * * * *")
@Transactional(rollbackFor = Exception.class)
public void contractSync() {
log.info("【开始】从crm系统同步合同信息");
Map<String, Contract> no2ContactMap = contractService.list().stream().collect(Collectors.toMap(Contract::getContractNo, Function.identity()));
Map<String, Integer> contractTypeMap = dictionaryService.lambdaQuery().eq(Dictionary::getType, "contract_type").list()
.stream().collect(Collectors.toMap(Dictionary::getValue, Dictionary::getKey));
List<Contract> insOrUpdContractList = new ArrayList<>();
String modifyTime = Opt.ofNullable((String) redissonClient.getBucket(RedisKeyEnum.CONTRACT_SYNC_TIME.getVal()).get())
.orElse("1970-01-01 00:00:00");
String url = "jdbc:sqlserver://47.92.144.255:1433;databaseName=UFDATA_001_2020;encrypt=false";
String username = "vion-reader";
String password = "vion-reader";
try (Connection connection = DriverManager.getConnection(url, username, password)) {
String contractTemplate = """
select t5.hetongpingshen_name as name,t1.hetongluru_name as contract_no,t1.hetongluru_char12 as type,t1.hetongluru_date01 as sign_date,t1.hetongluru_char01 as warranty_period,t1.hetongluru_start_date as maintain_sdate,t1.hetongluru_end_date as maintain_edate,t1.hetongluru_dec01 as total_amount,t5.hetongpingshen_dec02 as sign_ratio,t5.hetongpingshen_dec03 as arrive_ratio,t5.hetongpingshen_dec04 as system_check_ratio,t5.hetongpingshen_dec05 as project_check_ratio,t5.hetongpingshen_dec06 as warranty_ratio,t5.hetongpingshen_dec07 as maintain1_ratio,t5.hetongpingshen_dec09 as maintain2_ratio,t5.hetongpingshen_dec10 as maintain3_ratio,t2.cCusAbbName as customer_name,t4.cUser_Name as sale_name,t1.create_time as entry_time,t5.hetongpingshen_date01 as sign_date1,t5.hetongpingshen_date04 as arrive_date,t5.hetongpingshen_date05 as system_check_date,t5.hetongpingshen_date06 as project_check_date,t5.hetongpingshen_date07 as warranty_date,t5.hetongpingshen_date08 as maintain_date1, t6.hetongpingshen_date09 as maintain_date2,t6.hetongpingshen_date10 as maintain_date3,t1.modify_time as original_mod_time
from tcu_hetongluru t1 left join Customer t2 on t1.account_id = t2.cCusCode left join tc_opportunity t3 on t1.hetongluru_char04 = t3.ufcode left join UA_User_Ex t4 on t1.owner_user_id = t4.cUser_Id left join tcu_hetongpingshen t5 on t1.hetongluru_name = t5.hetongpingshen_char05 left join tcu_hetongpingshen_attr t6 on t5.hetongpingshen_id = t6.hetongpingshen_id where t1.modify_time > '{}' order by t1.modify_time desc
""";
String contractSql = StrUtil.format(contractTemplate, modifyTime);
try (Statement statement = connection.createStatement()) {
var rs = statement.executeQuery(contractSql);
while (rs.next()) {
String contractNo = rs.getString("contract_no");
Contract contract = new Contract();
Optional.ofNullable(rs.getString("name"))
.filter(StrUtil::isNotBlank)
.ifPresentOrElse(contract::setName, () -> contract.setName(contractNo));
contract.setContractNo(contractNo);
contract.setType(contractTypeMap.getOrDefault(rs.getString("type"), 0));
contract.setSignDate(rs.getDate("sign_date"));
String warrantyPeriod = rs.getString("warranty_period");
if (StrUtil.isNotBlank(warrantyPeriod) && warrantyPeriod.contains("个月")) {
String substring = warrantyPeriod.substring(0, (warrantyPeriod.length() - 2));
contract.setWarrantyPeriod(Integer.parseInt(substring));
}
contract.setMaintainSdate(rs.getDate("maintain_sdate"));
contract.setMaintainEdate(rs.getDate("maintain_edate"));
contract.setStatus(1);
contract.setTotalAmount(rs.getBigDecimal("total_amount"));
contract.setSignRatio(rs.getBigDecimal("sign_ratio"));
contract.setSignDate1(rs.getDate("sign_date1"));
contract.setArriveRatio(rs.getBigDecimal("arrive_ratio"));
contract.setArriveDate(rs.getDate("arrive_date"));
contract.setSystemCheckRatio(rs.getBigDecimal("system_check_ratio"));
contract.setSystemCheckDate(rs.getDate("system_check_date"));
contract.setProjectCheckRatio(rs.getBigDecimal("project_check_ratio"));
contract.setProjectCheckDate(rs.getDate("project_check_date"));
contract.setWarrantyRatio(rs.getBigDecimal("warranty_ratio"));
contract.setWarrantyDate(rs.getDate("warranty_date"));
contract.setMaintainRatio1(rs.getBigDecimal("maintain1_ratio"));
contract.setMaintainDate1(rs.getDate("maintain_date1"));
contract.setMaintainRatio2(rs.getBigDecimal("maintain2_ratio"));
contract.setMaintainDate2(rs.getDate("maintain_date2"));
contract.setMaintainRatio3(rs.getBigDecimal("maintain3_ratio"));
contract.setMaintainDate3(rs.getDate("maintain_date3"));
contract.setPaidAmount(BigDecimal.ZERO);
contract.setReceivableAmount(BigDecimal.ZERO);
contract.setOutstandingAmount(rs.getBigDecimal("total_amount"));
contract.setSubject("北京文安智能技术股份有限公司");
contract.setCustomerName(rs.getString("customer_name"));
contract.setSaleName(rs.getString("sale_name"));
contract.setCreateUser(-1L);
contract.setModifyUser(-1L);
contract.setEntryTime(rs.getTimestamp("entry_time"));
contract.setOriginalModTime(rs.getTimestamp("original_mod_time"));
insOrUpdContractList.add(contract);
}
if (CollUtil.isNotEmpty(insOrUpdContractList)) {
var noList = insOrUpdContractList.stream().map(Contract::getContractNo).toList();
var noStr = insOrUpdContractList.stream().map(Contract::getContractNo).distinct().collect(Collectors.joining("','", "'", "'"));
String productTemplate = """
SELECT c.cInvName as product_name,c.cInvCode as product_code,c.cInvStd as product_model,a.hetongluru_name as contract_no,b.hetongluru_d_dec01 as num,b.hetongluru_d_dec02 as tax_price,b.hetongluru_d_dec03 as tax_rate,b.hetongluru_d_dec04 as no_tax_price,b.hetongluru_d_dec05 as discount_rate,b.hetongluru_d_dec06 as actual_price,b.hetongluru_d_dec07 as total_price,b.hetongluru_d_dec08 as erase from tcu_hetongluru a left join tcu_hetongluru_d b on a.hetongluru_id=b.m_id LEFT JOIN Inventory c on b.ref_obj_id=c.cInvCode where a.hetongluru_name in ({})
""";
var productSql = StrUtil.format(productTemplate, noStr);
var rs1 = statement.executeQuery(productSql);
var productList = new ArrayList<RContractProduct>();
while (rs1.next()) {
var contractProduct = new RContractProduct();
contractProduct.setContractNo(rs1.getString("contract_no"));
contractProduct.setProductName(rs1.getString("product_name"));
contractProduct.setProductCode(rs1.getString("product_code"));
contractProduct.setProductModel(rs1.getString("product_model"));
contractProduct.setNum(rs1.getInt("num"));
contractProduct.setTaxPrice(rs1.getBigDecimal("tax_price"));
contractProduct.setTaxRate(rs1.getBigDecimal("tax_rate"));
contractProduct.setNoTaxPrice(rs1.getBigDecimal("no_tax_price"));
contractProduct.setDiscountRate(rs1.getBigDecimal("discount_rate"));
contractProduct.setActualPrice(rs1.getBigDecimal("actual_price"));
contractProduct.setErase(rs1.getBigDecimal("erase"));
contractProduct.setTotalPrice(rs1.getBigDecimal("total_price"));
productList.add(contractProduct);
}
contractProductService.lambdaUpdate().in(RContractProduct::getContractNo, noList).remove();
contractProductService.saveBatch(productList);
}
}
} catch (SQLException e) {
log.error("合同信息同步失败:", e);
return;
}
if (CollUtil.isEmpty(insOrUpdContractList)) {
log.info("没有需要插入或更新的合同");
return;
}
List<Long> updContractIdList = new ArrayList<>();
insOrUpdContractList.forEach(v -> {
if (no2ContactMap.containsKey(v.getContractNo())) {
Long contractId = no2ContactMap.get(v.getContractNo()).getId();
v.setId(contractId);
// 已有合同不更新状态
v.setStatus(null);
updContractIdList.add(contractId);
}
});
// 合同更新,同步调用一下更新项目的维保状态
Opt.ofEmptyAble(updContractIdList)
.map(contractIdList -> contractStoreService.lambdaQuery().in(RContractStore::getContractId, contractIdList).list())
.map(csList -> csList.stream().map(RContractStore::getStoreId).collect(Collectors.toList()))
.filter(CollUtil::isNotEmpty)
.ifPresent(storeService::calMaintainStatus);
contractService.saveOrUpdateBatch(insOrUpdContractList, 500);
insOrUpdContractList.forEach(v -> {
// 合同状态不为空,代表此条记录为新增,需要同步销售人信息到 r_contract_user 表中
if (ObjUtil.isNotNull(v.getStatus())) {
RContractUser contractUser = new RContractUser();
String userId = Opt.ofNullable(redissonClient.getBucket(RedisKeyEnum.DING_PREFIX.getVal() + RedisKeyEnum.USER_NAME.getVal() + v.getSaleName()).get())
.map(u -> (User) u)
.map(User::getUserid)
.orElse(null);
contractUser.setUserId(userId);
contractUser.setUsername(v.getSaleName());
contractUser.setEnterDate(v.getSignDate());
contractUser.setContractId(v.getId());
contractUser.setContractNo(v.getContractNo());
contractUserService.save(contractUser);
}
});
List<ContractPayment> existContractPaymentList = contractPaymentService.list();
Map<Long, Map<Integer, Long>> contractId2PaymentMap = existContractPaymentList.stream().collect(Collectors.groupingBy(ContractPayment::getContractId, Collectors.toMap(ContractPayment::getPaymentType, ContractPayment::getId)));
// 合同付款比例
List<ContractPayment> contractPaymentList = new ArrayList<>();
for (Contract contract : insOrUpdContractList) {
// 签订
ContractPayment contractSignPayment = new ContractPayment();
contractSignPayment.setId(contractId2PaymentMap.getOrDefault(contract.getId(), new HashMap<>()).get(1));
contractSignPayment.setContractId(contract.getId());
contractSignPayment.setPaymentType(1);
contractSignPayment.setPaymentRatio(Opt.ofNullable(contract.getSignRatio()).orElse(BigDecimal.ZERO));
contractSignPayment.setPaymentDate(contract.getSignDate1());
contractSignPayment.setNodeDate(contract.getSignDate());
contractPaymentList.add(contractSignPayment);
// 到货
ContractPayment contractArrivePayment = new ContractPayment();
contractArrivePayment.setId(contractId2PaymentMap.getOrDefault(contract.getId(), new HashMap<>()).get(2));
contractArrivePayment.setContractId(contract.getId());
contractArrivePayment.setPaymentType(2);
contractArrivePayment.setPaymentRatio(Opt.ofNullable(contract.getArriveRatio()).orElse(BigDecimal.ZERO));
contractArrivePayment.setPaymentDate(contract.getArriveDate());
contractPaymentList.add(contractArrivePayment);
// 系统验收
ContractPayment contractSystemCheckPayment = new ContractPayment();
contractSystemCheckPayment.setId(contractId2PaymentMap.getOrDefault(contract.getId(), new HashMap<>()).get(3));
contractSystemCheckPayment.setContractId(contract.getId());
contractSystemCheckPayment.setPaymentType(3);
contractSystemCheckPayment.setPaymentRatio(Opt.ofNullable(contract.getSystemCheckRatio()).orElse(BigDecimal.ZERO));
contractSystemCheckPayment.setPaymentDate(contract.getSystemCheckDate());
contractPaymentList.add(contractSystemCheckPayment);
// 项目验收
ContractPayment contractProjectCheckPayment = new ContractPayment();
contractProjectCheckPayment.setId(contractId2PaymentMap.getOrDefault(contract.getId(), new HashMap<>()).get(4));
contractProjectCheckPayment.setContractId(contract.getId());
contractProjectCheckPayment.setPaymentType(4);
contractProjectCheckPayment.setPaymentRatio(Opt.ofNullable(contract.getProjectCheckRatio()).orElse(BigDecimal.ZERO));
contractProjectCheckPayment.setPaymentDate(contract.getProjectCheckDate());
contractPaymentList.add(contractProjectCheckPayment);
// 质保
ContractPayment contractWarrantyPayment = new ContractPayment();
contractWarrantyPayment.setId(contractId2PaymentMap.getOrDefault(contract.getId(), new HashMap<>()).get(5));
contractWarrantyPayment.setContractId(contract.getId());
contractWarrantyPayment.setPaymentType(5);
contractWarrantyPayment.setPaymentRatio(Opt.ofNullable(contract.getWarrantyRatio()).orElse(BigDecimal.ZERO));
contractWarrantyPayment.setPaymentDate(contract.getWarrantyDate());
contractPaymentList.add(contractWarrantyPayment);
// 第一笔维保款
ContractPayment contractMaintainPayment1 = new ContractPayment();
contractMaintainPayment1.setId(contractId2PaymentMap.getOrDefault(contract.getId(), new HashMap<>()).get(6));
contractMaintainPayment1.setContractId(contract.getId());
contractMaintainPayment1.setPaymentType(6);
contractMaintainPayment1.setPaymentRatio(Opt.ofNullable(contract.getMaintainRatio1()).orElse(BigDecimal.ZERO));
contractMaintainPayment1.setPaymentDate(contract.getMaintainDate1());
contractPaymentList.add(contractMaintainPayment1);
// 第二笔维保款
ContractPayment contractMaintainPayment2 = new ContractPayment();
contractMaintainPayment2.setId(contractId2PaymentMap.getOrDefault(contract.getId(), new HashMap<>()).get(7));
contractMaintainPayment2.setContractId(contract.getId());
contractMaintainPayment2.setPaymentType(7);
contractMaintainPayment2.setPaymentRatio(Opt.ofNullable(contract.getMaintainRatio2()).orElse(BigDecimal.ZERO));
contractMaintainPayment2.setPaymentDate(contract.getMaintainDate2());
contractPaymentList.add(contractMaintainPayment2);
// 第三笔维保款
ContractPayment contractMaintainPayment3 = new ContractPayment();
contractMaintainPayment3.setId(contractId2PaymentMap.getOrDefault(contract.getId(), new HashMap<>()).get(8));
contractMaintainPayment3.setContractId(contract.getId());
contractMaintainPayment3.setPaymentType(8);
contractMaintainPayment3.setPaymentRatio(Opt.ofNullable(contract.getMaintainRatio3()).orElse(BigDecimal.ZERO));
contractMaintainPayment3.setPaymentDate(contract.getMaintainDate3());
contractPaymentList.add(contractMaintainPayment3);
}
contractPaymentService.saveOrUpdateBatch(contractPaymentList);
List<Payment> paymentList = paymentService.list();
Map<String, BigDecimal> no2PaymentMap = paymentList.stream().collect(Collectors.groupingBy(Payment::getContractNo, Collectors.reducing(BigDecimal.ZERO, Payment::getPaymentAmount, BigDecimal::add)));
insOrUpdContractList.forEach(c -> {
String contractNo = c.getContractNo();
Contract exist = contractService.lambdaQuery().eq(Contract::getContractNo, contractNo).one();
Contract updDto = new Contract();
updDto.setId(exist.getId());
updDto.setPaidAmount(no2PaymentMap.getOrDefault(contractNo, BigDecimal.ZERO));
contractPaymentService.calMoney(exist, updDto);
contractService.updateById(updDto);
});
redissonClient.getBucket(RedisKeyEnum.CONTRACT_SYNC_TIME.getVal()).set(DateUtil.formatDateTime(insOrUpdContractList.get(0).getOriginalModTime()));
log.info("【结束】从crm系统同步合同信息");
}*/
@Scheduled(cron = "0 0 8-20 * * *")
@Transactional(rollbackFor = Exception.class)
public void contractSync1() {
......@@ -530,7 +289,27 @@ public class ContractRunner {
List<ContractPayment> existContractPaymentList = contractPaymentService.list();
Map<Long, Map<Integer, Long>> contractId2PaymentMap = existContractPaymentList.stream().collect(Collectors.groupingBy(ContractPayment::getContractId, Collectors.toMap(ContractPayment::getPaymentType, ContractPayment::getId)));
// 合同付款比例
// 合同付款比例处理
contractPaymentHandler(insOrUpdContractList, contractId2PaymentMap);
List<Payment> paymentList = paymentService.list();
Map<String, BigDecimal> no2PaymentMap = paymentList.stream().collect(Collectors.groupingBy(Payment::getContractNo, Collectors.reducing(BigDecimal.ZERO, Payment::getPaymentAmount, BigDecimal::add)));
insOrUpdContractList.forEach(c -> {
String contractNo = c.getContractNo();
Contract exist = contractService.lambdaQuery().eq(Contract::getContractNo, contractNo).one();
Contract updDto = new Contract();
updDto.setId(exist.getId());
updDto.setPaidAmount(no2PaymentMap.getOrDefault(contractNo, BigDecimal.ZERO));
contractPaymentService.calMoney(exist, updDto);
contractService.updateById(updDto);
});
redissonClient.getBucket(RedisKeyEnum.CONTRACT_SYNC_NEW_TIME.getVal()).set(insOrUpdContractList.getFirst().getOriginalModTime().getTime());
log.info("【结束】从crm系统同步合同信息");
}
private void contractPaymentHandler(List<Contract> insOrUpdContractList, Map<Long, Map<Integer, Long>> contractId2PaymentMap) {
List<ContractPayment> contractPaymentList = new ArrayList<>();
for (Contract contract : insOrUpdContractList) {
// 签订
......@@ -607,22 +386,6 @@ public class ContractRunner {
contractPaymentList.add(contractMaintainPayment3);
}
contractPaymentService.saveOrUpdateBatch(contractPaymentList);
List<Payment> paymentList = paymentService.list();
Map<String, BigDecimal> no2PaymentMap = paymentList.stream().collect(Collectors.groupingBy(Payment::getContractNo, Collectors.reducing(BigDecimal.ZERO, Payment::getPaymentAmount, BigDecimal::add)));
insOrUpdContractList.forEach(c -> {
String contractNo = c.getContractNo();
Contract exist = contractService.lambdaQuery().eq(Contract::getContractNo, contractNo).one();
Contract updDto = new Contract();
updDto.setId(exist.getId());
updDto.setPaidAmount(no2PaymentMap.getOrDefault(contractNo, BigDecimal.ZERO));
contractPaymentService.calMoney(exist, updDto);
contractService.updateById(updDto);
});
redissonClient.getBucket(RedisKeyEnum.CONTRACT_SYNC_NEW_TIME.getVal()).set(insOrUpdContractList.get(0).getOriginalModTime().getTime());
log.info("【结束】从crm系统同步合同信息");
}
/**
......
package vion.dto;
import lombok.Data;
import lombok.Getter;
import lombok.Setter;
@Data
@Getter
@Setter
public class ConstructionTeamDTO extends BaseDTO {
private Long id;
......
......@@ -6,6 +6,7 @@ import lombok.Setter;
import org.springframework.format.annotation.DateTimeFormat;
import java.util.Date;
import java.util.List;
@Getter
@Setter
......@@ -31,7 +32,7 @@ public class DeliverLogDTO extends BaseDTO {
* 日志人
*/
private Long userId;
private Long[] userIds;
private List<Long> userIds;
/**
* 日志日期
......
package vion.dto;
import lombok.Data;
import lombok.Getter;
import lombok.Setter;
import org.springframework.web.multipart.MultipartFile;
@Data
@Getter
@Setter
public class StatusDTO {
/** 门店id */
private Long storeId;
......
......@@ -6,6 +6,7 @@ import lombok.Setter;
import org.springframework.format.annotation.DateTimeFormat;
import java.util.Date;
import java.util.List;
/**
* 门店信息
......@@ -14,7 +15,7 @@ import java.util.Date;
@Setter
public class StoreDTO extends BaseDTO {
private Long id;
private Long[] ids;
private List<Long> ids;
/** 门店名称 */
private String name ;
/** 销售人 */
......
......@@ -7,6 +7,7 @@ import org.springframework.format.annotation.DateTimeFormat;
import org.springframework.web.multipart.MultipartFile;
import java.util.Date;
import java.util.List;
@Getter
@Setter
......@@ -68,7 +69,7 @@ public class TaskDTO extends BaseDTO {
* 当前处理人
*/
private Long activeUser;
private Long[] activeUsers;
private List<Long> activeUsers;
/**
* 截止日期
*/
......
......@@ -2,12 +2,14 @@ package vion.model;
import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.Getter;
import lombok.Setter;
import vion.dto.BaseDTO;
import java.util.Date;
@Data
@Getter
@Setter
@TableName(value = "tbl_account_info")
public class Account extends BaseDTO {
/**
......
......@@ -3,7 +3,8 @@ package vion.model;
import com.baomidou.mybatisplus.annotation.*;
import io.github.linpeilie.annotations.AutoMapper;
import io.github.linpeilie.annotations.AutoMappers;
import lombok.Data;
import lombok.Getter;
import lombok.Setter;
import vion.dto.ConstructionTeamDTO;
import vion.vo.ConstructionTeamVO;
......@@ -12,7 +13,8 @@ import java.util.Date;
/**
* 施工队信息表
*/
@Data
@Getter
@Setter
@TableName(value = "tbl_construction_team")
@AutoMappers({
@AutoMapper(target = ConstructionTeamVO.class),
......
package vion.model;
import com.baomidou.mybatisplus.annotation.*;
import io.github.linpeilie.annotations.*;
import lombok.Data;
import io.github.linpeilie.annotations.AutoMapper;
import io.github.linpeilie.annotations.AutoMappers;
import io.github.linpeilie.annotations.ReverseAutoMapping;
import lombok.Getter;
import lombok.Setter;
import vion.dto.ContractDTO;
import vion.vo.ContractVO;
......@@ -13,7 +16,8 @@ import java.util.Date;
/**
* 合同
*/
@Data
@Getter
@Setter
@TableName(value = "tbl_contract_info")
@AutoMappers({
@AutoMapper(target = ContractVO.class),
......
......@@ -2,7 +2,8 @@ package vion.model;
import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.Getter;
import lombok.Setter;
import java.util.Date;
......@@ -10,7 +11,8 @@ import java.util.Date;
* @author HlQ
* @date 2023/12/6
*/
@Data
@Getter
@Setter
@TableName(value = "tbl_contract_log")
public class ContractLog {
@TableId(value = "id", type = IdType.AUTO)
......
......@@ -3,7 +3,8 @@ package vion.model;
import com.baomidou.mybatisplus.annotation.*;
import io.github.linpeilie.annotations.AutoMapper;
import io.github.linpeilie.annotations.AutoMappers;
import lombok.Data;
import lombok.Getter;
import lombok.Setter;
import vion.dto.ContractPaymentDTO;
import vion.vo.ContractPaymentVO;
......@@ -13,7 +14,8 @@ import java.util.Date;
/**
* 合同收款方式
*/
@Data
@Getter
@Setter
@TableName(value = "tbl_contract_payment_info")
@AutoMappers({
@AutoMapper(target = ContractPaymentVO.class),
......
......@@ -3,7 +3,8 @@ package vion.model;
import com.baomidou.mybatisplus.annotation.*;
import io.github.linpeilie.annotations.AutoMapper;
import io.github.linpeilie.annotations.AutoMappers;
import lombok.Data;
import lombok.Getter;
import lombok.Setter;
import vion.dto.DeliverLogDTO;
import vion.vo.DeliverLogVO;
......@@ -12,7 +13,8 @@ import java.util.Date;
/**
* 项目交付人员日志
*/
@Data
@Getter
@Setter
@TableName(value = "tbl_deliver_log")
@AutoMappers({
@AutoMapper(target = DeliverLogVO.class),
......
......@@ -3,7 +3,8 @@ package vion.model;
import com.baomidou.mybatisplus.annotation.*;
import io.github.linpeilie.annotations.AutoMapper;
import io.github.linpeilie.annotations.AutoMappers;
import lombok.Data;
import lombok.Getter;
import lombok.Setter;
import vion.dto.DeliveryRecordDTO;
import vion.vo.DeliveryRecordVO;
......@@ -12,7 +13,8 @@ import java.util.Date;
/**
* 发货记录表
*/
@Data
@Getter
@Setter
@TableName(value = "tbl_delivery_record")
@AutoMappers({
@AutoMapper(target = DeliveryRecordVO.class),
......
......@@ -2,11 +2,13 @@ package vion.model;
import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.Getter;
import lombok.Setter;
import java.util.Date;
@Data
@Getter
@Setter
@TableName(value="tbl_dept_info")
public class Dept {
@TableId(value = "id", type = IdType.AUTO)
......
......@@ -4,12 +4,14 @@ import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.github.linpeilie.annotations.AutoMapper;
import io.github.linpeilie.annotations.AutoMappers;
import lombok.Data;
import lombok.Getter;
import lombok.Setter;
import vion.dto.DictionaryDTO;
import java.util.Date;
@Data
@Getter
@Setter
@TableName(value="tbl_dictionary_info")
@AutoMappers({
@AutoMapper(target = DictionaryDTO.class),
......
......@@ -4,12 +4,14 @@ import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.github.linpeilie.annotations.AutoMapper;
import io.github.linpeilie.annotations.AutoMappers;
import lombok.Data;
import lombok.Getter;
import lombok.Setter;
import vion.dto.DictionaryTypeDTO;
import java.util.Date;
@Data
@Getter
@Setter
@TableName(value="tbl_dictionary_type")
@AutoMappers({
@AutoMapper(target = DictionaryTypeDTO.class),
......
......@@ -2,14 +2,16 @@ package vion.model;
import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.Getter;
import lombok.Setter;
import java.util.Date;
/**
* 工单操作记录
*/
@Data
@Getter
@Setter
@TableName(value="tbl_fault_log")
public class FaultLog {
/** 自增列 */
......
......@@ -3,7 +3,8 @@ package vion.model;
import com.baomidou.mybatisplus.annotation.*;
import io.github.linpeilie.annotations.AutoMapper;
import io.github.linpeilie.annotations.AutoMappers;
import lombok.Data;
import lombok.Getter;
import lombok.Setter;
import vion.dto.FileInfoDTO;
import vion.vo.FileInfoVO;
......@@ -12,7 +13,8 @@ import java.util.Date;
/**
* 文件信息
*/
@Data
@Getter
@Setter
@TableName(value="tbl_file_info")
@AutoMappers({
@AutoMapper(target = FileInfoDTO.class),
......
......@@ -3,7 +3,8 @@ package vion.model;
import com.baomidou.mybatisplus.annotation.*;
import io.github.linpeilie.annotations.AutoMapper;
import io.github.linpeilie.annotations.AutoMappers;
import lombok.Data;
import lombok.Getter;
import lombok.Setter;
import vion.config.JsonbTypeHandler;
import vion.dto.FormDTO;
import vion.vo.FormVO;
......@@ -14,7 +15,8 @@ import java.util.Date;
/**
* 表单集合表
*/
@Data
@Getter
@Setter
@TableName(value = "tbl_form", autoResultMap = true)
@AutoMappers({
@AutoMapper(target = FormVO.class),
......
......@@ -3,7 +3,8 @@ package vion.model;
import com.baomidou.mybatisplus.annotation.*;
import io.github.linpeilie.annotations.AutoMapper;
import io.github.linpeilie.annotations.AutoMappers;
import lombok.Data;
import lombok.Getter;
import lombok.Setter;
import vion.dto.InspectDTO;
import vion.vo.InspectVO;
......@@ -12,7 +13,8 @@ import java.util.Date;
/**
* 巡检信息
*/
@Data
@Getter
@Setter
@TableName(value = "tbl_inspect_info")
@AutoMappers({
@AutoMapper(target = InspectVO.class),
......
......@@ -3,7 +3,8 @@ package vion.model;
import com.baomidou.mybatisplus.annotation.*;
import io.github.linpeilie.annotations.AutoMapper;
import io.github.linpeilie.annotations.AutoMappers;
import lombok.Data;
import lombok.Getter;
import lombok.Setter;
import vion.dto.InvoiceDTO;
import vion.vo.InvoiceVO;
......@@ -14,7 +15,8 @@ import java.util.Date;
/**
* 发票记录表
*/
@Data
@Getter
@Setter
@TableName(value = "tbl_invoice")
@AutoMappers({
@AutoMapper(target = InvoiceVO.class),
......
......@@ -3,7 +3,8 @@ package vion.model;
import com.baomidou.mybatisplus.annotation.*;
import io.github.linpeilie.annotations.AutoMapper;
import io.github.linpeilie.annotations.AutoMappers;
import lombok.Data;
import lombok.Getter;
import lombok.Setter;
import vion.dto.PaymentDTO;
import vion.vo.PaymentVO;
......@@ -13,7 +14,8 @@ import java.util.Date;
/**
* 收款记录表
*/
@Data
@Getter
@Setter
@TableName(value = "tbl_payment")
@AutoMappers({
@AutoMapper(target = PaymentVO.class),
......
......@@ -3,7 +3,8 @@ package vion.model;
import com.baomidou.mybatisplus.annotation.*;
import io.github.linpeilie.annotations.AutoMapper;
import io.github.linpeilie.annotations.AutoMappers;
import lombok.Data;
import lombok.Getter;
import lombok.Setter;
import vion.dto.PointInfoDTO;
import vion.vo.PointInfoVO;
......@@ -13,7 +14,8 @@ import java.util.Date;
* @author HlQ
* @date 2024/1/8
*/
@Data
@Getter
@Setter
@TableName(value = "tbl_point_info")
@AutoMappers({
@AutoMapper(target = PointInfoVO.class),
......
......@@ -2,7 +2,8 @@ package vion.model;
import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.Getter;
import lombok.Setter;
import java.math.BigDecimal;
import java.util.Date;
......@@ -11,7 +12,8 @@ import java.util.Date;
* @author HlQ
* @date 2024/3/26
*/
@Data
@Getter
@Setter
@TableName(value = "r_contract_product")
public class RContractProduct {
@TableId(value = "id", type = IdType.AUTO)
......
......@@ -4,7 +4,8 @@ import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.github.linpeilie.annotations.AutoMapper;
import io.github.linpeilie.annotations.AutoMappers;
import lombok.Data;
import lombok.Getter;
import lombok.Setter;
import vion.dto.RContractStoreDTO;
import java.util.Date;
......@@ -13,7 +14,8 @@ import java.util.Date;
/**
* 合同项目关联
*/
@Data
@Getter
@Setter
@TableName(value = "r_contract_store")
@AutoMappers({
@AutoMapper(target = RContractStoreDTO.class),
......
......@@ -6,7 +6,8 @@ import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.github.linpeilie.annotations.AutoMapper;
import io.github.linpeilie.annotations.AutoMappers;
import lombok.Data;
import lombok.Getter;
import lombok.Setter;
import vion.dto.RContractTeamDTO;
import vion.vo.RContractTeamVO;
......@@ -15,7 +16,8 @@ import java.util.Date;
/**
* 合同与施工队关联表
*/
@Data
@Getter
@Setter
@TableName(value = "r_contract_team")
@AutoMappers({
@AutoMapper(target = RContractTeamVO.class),
......
......@@ -2,7 +2,8 @@ package vion.model;
import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.Getter;
import lombok.Setter;
import vion.dto.BaseDTO;
import java.util.Date;
......@@ -11,7 +12,8 @@ import java.util.Date;
* @author HlQ
* @date 2023/12/28
*/
@Data
@Getter
@Setter
@TableName(value = "r_contract_user")
public class RContractUser extends BaseDTO {
@TableId(value = "id", type = IdType.AUTO)
......
......@@ -2,7 +2,8 @@ package vion.model;
import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.Getter;
import lombok.Setter;
import java.util.Date;
......@@ -10,7 +11,8 @@ import java.util.Date;
* @author HlQ
* @date 2024/1/12
*/
@Data
@Getter
@Setter
@TableName(value = "r_point_device")
public class RPointDevice {
@TableId(value = "id", type = IdType.AUTO)
......
......@@ -2,7 +2,8 @@ package vion.model;
import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.Getter;
import lombok.Setter;
import java.util.Date;
......@@ -10,7 +11,8 @@ import java.util.Date;
* @author HlQ
* @date 2024/1/12
*/
@Data
@Getter
@Setter
@TableName(value = "r_point_wx")
public class RPointWx {
@TableId(value = "id", type = IdType.AUTO)
......
......@@ -6,7 +6,8 @@ import com.fasterxml.jackson.annotation.JsonProperty;
import com.github.liaochong.myexcel.core.annotation.ExcelColumn;
import com.github.liaochong.myexcel.core.annotation.ExcelModel;
import com.github.liaochong.myexcel.core.annotation.MultiColumn;
import lombok.Data;
import lombok.Getter;
import lombok.Setter;
import vion.dto.BaseDTO;
import java.util.Date;
......@@ -16,7 +17,8 @@ import java.util.List;
* @author HlQ
* @date 2024/1/25
*/
@Data
@Getter
@Setter
@TableName(value = "r_repair_device")
@ExcelModel(includeAllField = false)
public class RRepairDevice extends BaseDTO {
......
......@@ -4,7 +4,8 @@ import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.github.linpeilie.annotations.AutoMapper;
import io.github.linpeilie.annotations.AutoMappers;
import lombok.Data;
import lombok.Getter;
import lombok.Setter;
import vion.dto.RRoleResourceDTO;
import java.util.Date;
......@@ -13,7 +14,8 @@ import java.util.Date;
* @author HlQ
* @date 2023/11/28
*/
@Data
@Getter
@Setter
@TableName(value = "r_role_resource")
@AutoMappers({
@AutoMapper(target = RRoleResourceDTO.class),
......
......@@ -2,7 +2,8 @@ package vion.model;
import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.Getter;
import lombok.Setter;
import vion.dto.BaseDTO;
import java.util.Date;
......@@ -10,7 +11,8 @@ import java.util.Date;
/**
* 项目干系人
*/
@Data
@Getter
@Setter
@TableName(value = "r_store_confederate")
public class RStoreConfederate extends BaseDTO {
@TableId(value = "id", type = IdType.AUTO)
......
......@@ -2,7 +2,8 @@ package vion.model;
import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.Getter;
import lombok.Setter;
import java.util.Date;
......@@ -10,7 +11,8 @@ import java.util.Date;
* @author HlQ
* @date 2024/1/30
*/
@Data
@Getter
@Setter
@TableName(value = "r_store_tag")
public class RStoreTag {
@TableId(value = "id", type = IdType.AUTO)
......
......@@ -2,7 +2,8 @@ package vion.model;
import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.Getter;
import lombok.Setter;
import java.util.Date;
......@@ -13,7 +14,8 @@ import java.util.Date;
/**
* 项目与用户关联表
*/
@Data
@Getter
@Setter
@TableName(value = "r_store_user")
public class RStoreUser {
@TableId(value = "id", type = IdType.AUTO)
......
......@@ -4,7 +4,8 @@ import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.github.linpeilie.annotations.AutoMapper;
import io.github.linpeilie.annotations.AutoMappers;
import lombok.Data;
import lombok.Getter;
import lombok.Setter;
import vion.dto.RUserRoleDTO;
import java.util.Date;
......@@ -13,7 +14,8 @@ import java.util.Date;
* @author HlQ
* @date 2023/11/28
*/
@Data
@Getter
@Setter
@TableName(value = "r_user_role")
@AutoMappers({
@AutoMapper(target = RUserRoleDTO.class),
......
......@@ -2,7 +2,8 @@ package vion.model;
import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.Getter;
import lombok.Setter;
import vion.dto.BaseDTO;
import java.util.Date;
......@@ -11,7 +12,8 @@ import java.util.Date;
* @author HlQ
* @date 2024/1/8
*/
@Data
@Getter
@Setter
@TableName(value = "tbl_reject_info")
public class RejectInfo extends BaseDTO {
@TableId(value = "id", type = IdType.AUTO)
......
......@@ -3,7 +3,8 @@ package vion.model;
import com.baomidou.mybatisplus.annotation.*;
import io.github.linpeilie.annotations.AutoMapper;
import io.github.linpeilie.annotations.AutoMappers;
import lombok.Data;
import lombok.Getter;
import lombok.Setter;
import vion.dto.RepairRecDTO;
import vion.vo.RepairRecVO;
......@@ -13,7 +14,8 @@ import java.util.Date;
* @author HlQ
* @date 2024/1/24
*/
@Data
@Getter
@Setter
@TableName(value = "tbl_repair_rec")
@AutoMappers({
@AutoMapper(target = RepairRecVO.class),
......
......@@ -4,7 +4,8 @@ import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.github.linpeilie.annotations.AutoMapper;
import io.github.linpeilie.annotations.AutoMappers;
import lombok.Data;
import lombok.Getter;
import lombok.Setter;
import vion.dto.ResourceDTO;
import vion.vo.ResourceVO;
......@@ -14,7 +15,8 @@ import java.util.Date;
* @author HlQ
* @date 2023/11/28
*/
@Data
@Getter
@Setter
@TableName(value = "tbl_resource")
@AutoMappers({
@AutoMapper(target = ResourceVO.class),
......
......@@ -4,7 +4,8 @@ import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.github.linpeilie.annotations.AutoMapper;
import io.github.linpeilie.annotations.AutoMappers;
import lombok.Data;
import lombok.Getter;
import lombok.Setter;
import vion.dto.RoleDTO;
import vion.vo.RoleVO;
......@@ -13,7 +14,8 @@ import java.util.Date;
/**
* 角色表
*/
@Data
@Getter
@Setter
@TableName(value = "tbl_role")
@AutoMappers({
@AutoMapper(target = RoleVO.class),
......
......@@ -4,13 +4,15 @@ import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.github.linpeilie.annotations.AutoMapper;
import io.github.linpeilie.annotations.AutoMappers;
import lombok.Data;
import lombok.Getter;
import lombok.Setter;
import vion.dto.ServiceOrderDTO;
import vion.vo.ServiceOrderVO;
import java.util.Date;
@Data
@Getter
@Setter
@TableName("tbl_service_order")
@AutoMappers({
@AutoMapper(target = ServiceOrderVO.class),
......
......@@ -3,7 +3,8 @@ package vion.model;
import com.baomidou.mybatisplus.annotation.*;
import io.github.linpeilie.annotations.AutoMapper;
import io.github.linpeilie.annotations.AutoMappers;
import lombok.Data;
import lombok.Getter;
import lombok.Setter;
import vion.dto.SettlementDiffDTO;
import vion.vo.SettlementDiffVO;
......@@ -14,7 +15,8 @@ import java.util.Date;
* @author HlQ
* @date 2023/12/26
*/
@Data
@Getter
@Setter
@TableName(value = "tbl_settlement_diff")
@AutoMappers({
@AutoMapper(target = SettlementDiffVO.class),
......
......@@ -3,7 +3,8 @@ package vion.model;
import com.baomidou.mybatisplus.annotation.*;
import io.github.linpeilie.annotations.AutoMapper;
import io.github.linpeilie.annotations.AutoMappers;
import lombok.Data;
import lombok.Getter;
import lombok.Setter;
import vion.dto.SparePartDTO;
import vion.vo.SparePartVO;
......@@ -13,7 +14,8 @@ import java.util.Date;
* @author HlQ
* @date 2024/1/19
*/
@Data
@Getter
@Setter
@TableName(value = "tbl_spare_part")
@AutoMappers({
@AutoMapper(target = SparePartVO.class),
......
......@@ -4,7 +4,8 @@ import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.github.linpeilie.annotations.AutoMapper;
import io.github.linpeilie.annotations.AutoMappers;
import lombok.Data;
import lombok.Getter;
import lombok.Setter;
import vion.dto.StoreDTO;
import vion.vo.StoreVO;
......@@ -13,7 +14,8 @@ import java.util.Date;
/**
* 门店信息
*/
@Data
@Getter
@Setter
@TableName(value = "tbl_store_info")
@AutoMappers({
@AutoMapper(target = StoreVO.class),
......
......@@ -2,7 +2,8 @@ package vion.model;
import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.Getter;
import lombok.Setter;
import org.springframework.format.annotation.DateTimeFormat;
import vion.dto.BaseDTO;
......@@ -11,7 +12,8 @@ import java.util.Date;
/**
* 项目日志表
*/
@Data
@Getter
@Setter
@TableName(value = "tbl_store_log")
public class StoreLog extends BaseDTO {
@TableId(value = "id", type = IdType.AUTO)
......
......@@ -2,7 +2,8 @@ package vion.model;
import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.Getter;
import lombok.Setter;
import vion.dto.BaseDTO;
import java.util.Date;
......@@ -11,7 +12,8 @@ import java.util.Date;
* @author HlQ
* @date 2024/1/30
*/
@Data
@Getter
@Setter
@TableName(value = "tbl_tag")
public class Tag extends BaseDTO {
@TableId(value = "id", type = IdType.AUTO)
......
......@@ -4,14 +4,16 @@ import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.github.linpeilie.annotations.AutoMapper;
import io.github.linpeilie.annotations.AutoMappers;
import lombok.Data;
import lombok.Getter;
import lombok.Setter;
import org.springframework.format.annotation.DateTimeFormat;
import vion.dto.TaskDTO;
import vion.vo.TaskVO;
import java.util.Date;
@Data
@Getter
@Setter
@TableName(value="tbl_task_info")
@AutoMappers({
@AutoMapper(target = TaskVO.class),
......
......@@ -4,14 +4,16 @@ import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.github.linpeilie.annotations.AutoMapper;
import io.github.linpeilie.annotations.AutoMappers;
import lombok.Data;
import lombok.Getter;
import lombok.Setter;
import org.springframework.format.annotation.DateTimeFormat;
import vion.dto.TaskTempDTO;
import vion.vo.TaskTempVO;
import java.util.Date;
@Data
@Getter
@Setter
@TableName(value="tbl_task_temp")
@AutoMappers({
@AutoMapper(target = TaskTempVO.class),
......
......@@ -4,7 +4,8 @@ import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.github.linpeilie.annotations.AutoMapper;
import io.github.linpeilie.annotations.AutoMappers;
import lombok.Data;
import lombok.Getter;
import lombok.Setter;
import vion.dto.UserDTO;
import vion.vo.UserVO;
......@@ -13,7 +14,8 @@ import java.util.Date;
/**
* 用户信息
*/
@Data
@Getter
@Setter
@TableName(value="tbl_user_info")
@AutoMappers({
@AutoMapper(target = UserDTO.class),
......
......@@ -18,6 +18,6 @@ public interface IInvoiceService extends MPJBaseService<Invoice> {
String delById(Long id);
String calMoney(String[] noList);
String calMoney(List<String> noList);
}
......@@ -26,9 +26,9 @@ public interface ITaskService extends MPJBaseService<Task> {
String urgeTask(Long taskId, String remark);
List<Map<String, Object>> peopleAnalysis(Date startDate, Date endDate, Integer source, Long[] userIds);
List<Map<String, Object>> peopleAnalysis(Date startDate, Date endDate, Integer source, List<Long> userIds);
List<Map<String, Object>> proAnalysis(Date startDate, Date endDate, Integer source, Long[] userIds);
List<Map<String, Object>> proAnalysis(Date startDate, Date endDate, Integer source, List<Long> userIds);
Map<String, Map<String, List<Task>>> summaryAnalysis(Date startDate, Date endDate, Integer source);
}
......@@ -293,7 +293,7 @@ public class ContractServiceImpl extends MPJBaseServiceImpl<ContractMapper, Cont
Contract contract = converter.convert(dto, Contract.class);
// 如果当前合同进度在要修改的进度前,此时不能修改合同进度。e.g 当前合同进度是项目验收,此时传参过来到货,那么不能修改
if (contract.getStatus() < existContract.getStatus()) {
if (ObjUtil.isNotNull(contract.getStatus()) && contract.getStatus() < existContract.getStatus()) {
contract.setStatus(null);
}
Long contractId = existContract.getId();
......@@ -915,7 +915,8 @@ public class ContractServiceImpl extends MPJBaseServiceImpl<ContractMapper, Cont
// 两平台共存的合同
log.info("合同编号验证:{}", JSONUtil.ofObj().set("unsynced", unsyncedList).set("extra", extraList));
var sameList = CollUtil.intersectionDistinct(dataIdSet, contractNoList);
contractDiff(sameList);
// 只比对合同编号SC开头的合同
contractDiff(sameList.stream().filter(no -> StrUtil.startWith(no, "SC")).collect(Collectors.toSet()));
}
/**
......@@ -1088,7 +1089,7 @@ public class ContractServiceImpl extends MPJBaseServiceImpl<ContractMapper, Cont
var bongMap = BeanUtil.beanToMap(xbongContract, new HashMap<>(), copyOptions);
if (!mapEqual(platMap, bongMap)) {
log.info("不一致的合同:{}", contractNo);
//
// SC 合同全部对比, CS 合同只对比金额
}
}
}
......
......@@ -153,7 +153,7 @@ public class InvoiceServiceImpl extends MPJBaseServiceImpl<InvoiceMapper, Invoic
}
@Override
public String calMoney(String[] noList) {
public String calMoney(List<String> noList) {
Map<String, BigDecimal> no2SumMap = this.lambdaQuery()
.in(ArrayUtil.isNotEmpty(noList), Invoice::getContractNo, noList)
.list()
......
......@@ -424,7 +424,7 @@ public class TaskServiceImpl extends MPJBaseServiceImpl<TaskMapper, Task> implem
}
@Override
public List<Map<String, Object>> peopleAnalysis(Date startDate, Date endDate, Integer source, Long[] userIds) {
public List<Map<String, Object>> peopleAnalysis(Date startDate, Date endDate, Integer source, List<Long> userIds) {
List<Task> taskList = this.lambdaQuery()
.between(ArrayUtil.isAllNotNull(startDate, endDate), Task::getRepairTime, startDate, endDate)
.isNotNull(ObjUtil.equals(source, 1), Task::getTaskTempId)
......@@ -470,7 +470,7 @@ public class TaskServiceImpl extends MPJBaseServiceImpl<TaskMapper, Task> implem
}
@Override
public List<Map<String, Object>> proAnalysis(Date startDate, Date endDate, Integer source, Long[] userIds) {
public List<Map<String, Object>> proAnalysis(Date startDate, Date endDate, Integer source, List<Long> userIds) {
List<Task> taskList = this.lambdaQuery()
.between(ArrayUtil.isAllNotNull(startDate, endDate), Task::getRepairTime, startDate, endDate)
.isNotNull(ObjUtil.equals(source, 1), Task::getTaskTempId)
......
package vion.third;
import cn.dev33.satoken.stp.StpUtil;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import io.github.linpeilie.Converter;
import jakarta.servlet.http.HttpServletResponse;
import lombok.RequiredArgsConstructor;
......@@ -147,7 +146,13 @@ public class DingMod {
user.setEmployeeStatus(tmpObj.getJSONArray("field_value_list").getByPath("[0].value", Integer.class));
}
}
userService.saveOrUpdate(user, Wrappers.<User>lambdaUpdate().eq(User::getUserid, userid));
userService.lambdaQuery()
.eq(User::getUserid, userid)
.oneOpt()
.ifPresentOrElse(u -> {
user.setId(u.getId());
userService.updateById(user);
}, () -> userService.save(user));
User one = userService.lambdaQuery().eq(User::getUserid, userid).one();
redissonClient.getBucket(RedisKeyEnum.DING_PREFIX.getVal() + RedisKeyEnum.USER_ID.getVal() + one.getId()).set(user);
redissonClient.getBucket(RedisKeyEnum.DING_PREFIX.getVal() + RedisKeyEnum.USER_NAME.getVal() + one.getUsername()).set(user);
......@@ -179,7 +184,13 @@ public class DingMod {
dept.setDeptId(deptId);
dept.setParentId(jsonObj.getLong("parent_id"));
dept.setDeptName(jsonObj.getStr("name"));
deptService.saveOrUpdate(dept, Wrappers.<Dept>lambdaUpdate().eq(Dept::getDeptId, deptId));
deptService.lambdaQuery()
.eq(Dept::getDeptId, deptId)
.oneOpt()
.ifPresentOrElse(d -> {
dept.setId(d.getId());
deptService.updateById(dept);
}, () -> deptService.save(dept));
deptIdList.add(deptId);
}
}
......
package vion.vo;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.Getter;
import lombok.Setter;
import java.math.BigDecimal;
import java.util.Date;
......@@ -10,7 +11,8 @@ import java.util.Date;
* @author HlQ
* @date 2023/12/20
*/
@Data
@Getter
@Setter
public class FinancialAgeVO {
private String contractNo;
private String contractName;
......
package vion.vo;
import lombok.Data;
import lombok.Getter;
import lombok.Setter;
import org.springframework.stereotype.Component;
@Component
@Data
@Getter
@Setter
public class ResultVO<T> {
private Integer code;
private String msg;
......
package vion.vo;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.Getter;
import lombok.Setter;
import java.util.Date;
......@@ -9,7 +10,8 @@ import java.util.Date;
* @author HlQ
* @date 2023/11/23
*/
@Data
@Getter
@Setter
public class ServiceOrderVO {
private String projectName;
......
package vion.vo;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.Getter;
import lombok.Setter;
import vion.model.StoreLog;
import java.util.Date;
import java.util.List;
@Data
@Getter
@Setter
public class StoreVO {
private Long id;
/**
......
package vion.vo;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.Getter;
import lombok.Setter;
import vion.model.FileInfo;
import vion.model.Task;
import java.util.Date;
import java.util.List;
@Data
@Getter
@Setter
public class TaskTempVO {
private Long id;
/**
......
......@@ -3,7 +3,8 @@ package vion.vo;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.github.liaochong.myexcel.core.annotation.ExcelColumn;
import com.github.liaochong.myexcel.core.annotation.ExcelModel;
import lombok.Data;
import lombok.Getter;
import lombok.Setter;
import vion.config.FaultTypeConverter;
import vion.config.UserNameConverter;
import vion.model.FaultLog;
......@@ -13,7 +14,8 @@ import vion.model.ServiceOrder;
import java.util.Date;
import java.util.List;
@Data
@Getter
@Setter
@ExcelModel(sheetName = "任务", includeAllField = false)
public class TaskVO {
private Long id;
......
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!