Commit d5b8abd1 authored by yangyang's avatar yangyang

Merge remote-tracking branch 'origin/developer' into developer

parents ecfa886e 77e1f451
......@@ -26,29 +26,30 @@ public class MyBatisPlusCodeGenerator {
/**
* 项目名称缩写
*/
static String projectShortName = "tzs";
static String projectShortName = "jxiop";
static String projectShortName1 = "hygf";
/**
* 项目api目录
*/
static String apiAddress = "/amos-boot-module/amos-boot-module-api/" + "amos-boot-module-" + projectShortName +
static String apiAddress = "/amos-boot-system-" + projectShortName + "/amos-boot-module-" + projectShortName1 +
"-api/";
/**
* 项目biz目录
*/
static String bizAddress = "/amos-boot-module/amos-boot-module-biz/" + "amos-boot-module-" + projectShortName +
static String bizAddress = "/amos-boot-system-" + projectShortName + "/amos-boot-module-" + projectShortName1 +
"-biz/";
/**
* 项目api路径
*/
static String apiPath = apiAddress + "src/main/java/com/yeejoin/amos/boot/module/" + projectShortName + "/api";
static String apiPath = apiAddress + "src/main/java/com/yeejoin/amos/boot/module/" + projectShortName1 + "/api";
/**
* 项目biz路径
*/
static String bizPath = bizAddress + "src/main/java/com/yeejoin/amos/boot/module/" + projectShortName + "/biz";
static String bizPath = bizAddress + "src/main/java/com/yeejoin/amos/boot/module/" + projectShortName1 + "/biz";
/**
* 接口及实体等代码生成路径
......@@ -102,12 +103,12 @@ public class MyBatisPlusCodeGenerator {
gc.setActiveRecord(false);
// 数据源配置
DataSourceConfig dsc = new DataSourceConfig();
dsc.setUrl("jdbc:mysql://172.16.6.60:3306/amos-tzs-biz?serverTimezone=GMT%2B8");
dsc.setUrl("jdbc:mysql://47.92.234.253:3306/amos_project?serverTimezone=GMT%2B8");
// dsc.setSchemaName("public");
// dsc.setDriverName("com.mysql.jdbc.Driver");
dsc.setDriverName("com.mysql.cj.jdbc.Driver");
dsc.setUsername("root");
dsc.setPassword("root_123");
dsc.setPassword("Yeejoin@2020");
dsc.setTypeConvert(new ITypeConvert() {
@Override
......@@ -292,7 +293,8 @@ public class MyBatisPlusCodeGenerator {
strategy.setControllerMappingHyphenStyle(true);
strategy.setTablePrefix();
//去除表名前缀
strategy.setTablePrefix("t_", "tb_", "sys_", "other_", "rpm_", "s_", "tcb_", "cb_", "tz_", "jc_", "jcb_");
strategy.setTablePrefix("tz_" + projectShortName1 + "_", "t_", "tb_", "sys_", "other_", "rpm_", "s_", "tcb_",
"cb_", "tz_", "jc_", "jcb_", "flc_");
// 设置父级Controller
strategy.setSuperControllerClass("com.yeejoin.amos.boot.biz.common.controller.BaseController");
autoGenerator.setStrategy(strategy);
......
......@@ -15,6 +15,7 @@ public enum ArrivalStateeEnum {
待收货("待收货", "待收货"),
已收货("已收货", "已收货"),
补货申请("补货申请", "补货申请"),
已作废("已作废", "已作废"),
......@@ -30,7 +31,8 @@ public enum ArrivalStateeEnum {
并网完成("并网完成", "并网完成"),
线上验收("线上验收", "线上验收"),
线下验收("线下验收", "线下验收"),
验收完成("验收完成", "验收完成");
验收完成("验收完成", "验收完成"),
待发货("待发货", "待发货");
......
......@@ -15,6 +15,15 @@ public enum DeliveryStateeEnum {
待发货("待发货", "待发货"),
暂存发货("暂存发货", "暂存发货"),
待提交("待提交", "待提交"),
待确认("待确认", "待确认"),
待补货("待补货", "待补货"),
待审核("待审核", "待审核"),
已完成("已完成", "已完成"),
已发货("已发货", "已发货"),
已作废("已作废", "已作废");
......
package com.yeejoin.amos.boot.module.hygf.api.dto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import com.yeejoin.amos.boot.biz.common.dto.BaseDto;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
/**
* 投融审核表
*
* @author system_generator
* @date 2024-06-18
*/
@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel(value="HygfPreparationMoneyAuditingDto", description="投融审核表")
public class HygfPreparationMoneyAuditingDto extends BaseDto {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "工作流实例ID")
private String instanceId;
@ApiModelProperty(value = "下一个节点角色权限id")
private String nextExecutorIds;
@ApiModelProperty(value = "任务发起人id")
private String promoter;
@ApiModelProperty(value = "流程下一节点id")
private String nextTaskId;
@ApiModelProperty(value = "下一节点可执行人逗号分割")
private String nextExecuteUserIds;
@ApiModelProperty(value = "工作流发起人id")
private String createUserId;
@ApiModelProperty(value = "下个节点名称")
private String nextNodeName;
@ApiModelProperty(value = "下个节点key")
private String nextNodeKey;
@ApiModelProperty(value = "状态")
private String status;
@ApiModelProperty(value = "农户id")
private Long preparationMoneyId;
@ApiModelProperty(value = " 待执行节点小程序路由")
private String nodeRouting;
}
package com.yeejoin.amos.boot.module.hygf.api.dto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import com.yeejoin.amos.boot.biz.common.dto.BaseDto;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
/**
*
*
* @author system_generator
* @date 2024-07-02
*/
@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel(value="HygfReplenishmentDto", description="")
public class HygfReplenishmentDto extends BaseDto {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "发货单id")
private Long preparationMoneyId;
@ApiModelProperty(value = "补货描述")
private String desc;
@ApiModelProperty(value = "补货文件")
private String file;
}
package com.yeejoin.amos.boot.module.hygf.api.dto;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import lombok.Data;
@Data
public class PeasantHouseholdPageDto extends Page<PeasantHouseholdPageDto> {
private String nhUserId;
private String peasantHouseholdNo;
}
package com.yeejoin.amos.boot.module.hygf.api.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.yeejoin.amos.boot.biz.common.entity.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import java.util.Date;
/**
* 投融审核表
*
* @author system_generator
* @date 2024-06-18
*/
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName("hygf_preparation_money_auditing")
public class HygfPreparationMoneyAuditing extends BaseEntity {
private static final long serialVersionUID = 1L;
/**
* 工作流实例ID
*/
@TableField("instance_id")
private String instanceId;
/**
* 下一个节点角色权限id
*/
@TableField("next_executor_ids")
private String nextExecutorIds;
/**
* 任务发起人id
*/
@TableField("promoter")
private String promoter;
/**
* 流程下一节点id
*/
@TableField("next_task_id")
private String nextTaskId;
/**
* 下一节点可执行人逗号分割
*/
@TableField("next_execute_user_ids")
private String nextExecuteUserIds;
/**
* 工作流发起人id
*/
@TableField("create_user_id")
private String createUserId;
/**
* 下个节点名称
*/
@TableField("next_node_name")
private String nextNodeName;
/**
* 下个节点key
*/
@TableField("next_node_key")
private String nextNodeKey;
/**
* 状态
*/
@TableField("status")
private String status;
/**
* 农户id
*/
@TableField("preparation_money_id")
private Long preparationMoneyId;
/**
* 待执行节点小程序路由
*/
@TableField("node_routing")
private String nodeRouting;
}
package com.yeejoin.amos.boot.module.hygf.api.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.handlers.FastjsonTypeHandler;
import com.yeejoin.amos.boot.biz.common.entity.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.Value;
import lombok.experimental.Accessors;
import java.util.Date;
import java.util.List;
/**
*
*
* @author system_generator
* @date 2024-07-02
*/
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName("hygf_replenishment")
public class HygfReplenishment extends BaseEntity {
private static final long serialVersionUID = 1L;
/**
* 发货单id
*/
@TableField("preparation_money_id")
private Long preparationMoneyId;
/**
* 补货描述
*/
@TableField("desc")
private String desc;
/**
* 补货文件
*/
@TableField(value = "file" , typeHandler = FastjsonTypeHandler.class)
private List<Object> file;
}
......@@ -192,6 +192,12 @@ public class PeasantHousehold extends BaseEntity {
/**
* 已发货,已收货,
*/
@TableField("preparation_money_state")
private String preparationMoneyState;
/**
* 备货状态
*/
@TableField("construction_state")
private String constructionState;
......
......@@ -180,4 +180,10 @@ public class PowerStationConstructionData extends BaseEntity {
@TableField("work_order_power_station_id")
private Long workOrderPowerStationId;
/**
* 是否提交流程
*/
@TableField(exist = false)
private boolean commitFlow;
}
......@@ -149,6 +149,10 @@ public class PreparationMoney extends BaseEntity {
@TableField(exist = false)
private List<PreparationMoneyLog> preparationMoneyLog; //发货单流水
@TableField(exist = false)
private String instance_id; //发货单流水
//订单状态
@TableField("order_status")
private String orderStatus;
}
package com.yeejoin.amos.boot.module.hygf.api.mapper;
import com.yeejoin.amos.boot.module.hygf.api.entity.HygfPreparationMoneyAuditing;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
* 投融审核表 Mapper 接口
*
* @author system_generator
* @date 2024-06-18
*/
public interface HygfPreparationMoneyAuditingMapper extends BaseMapper<HygfPreparationMoneyAuditing> {
}
package com.yeejoin.amos.boot.module.hygf.api.mapper;
import com.yeejoin.amos.boot.module.hygf.api.entity.HygfReplenishment;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
* Mapper 接口
*
* @author system_generator
* @date 2024-07-02
*/
public interface HygfReplenishmentMapper extends BaseMapper<HygfReplenishment> {
}
......@@ -31,7 +31,7 @@ public interface PeasantHouseholdMapper extends BaseMapper<PeasantHousehold> {
);
@UserEmpower(field={},dealerField={"developer_code","regional_companies_code","developer_user_id"} ,fieldConditions ={"eq","in","eq"} ,relationship="and")
List<PeasantHousehold> queryForPage( String developerCode,String ownersName,Long developerId,Integer isCertified);
List<PeasantHousehold> queryForPage( String developerCode,String ownersName,Long developerId,Integer isCertified,String preparationMoneyState);
List<Map<String,Object>> selectUserIsHouse(String telephone);
......
......@@ -13,6 +13,7 @@ import com.yeejoin.amos.boot.module.hygf.api.entity.PreparationMoney;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;
/**
* 发货单 Mapper 接口
......@@ -28,4 +29,11 @@ public interface PreparationMoneyMapper extends BaseMapper<PreparationMoney> {
@UserEmpower(field ={"regional_companies_code"} ,dealerField={"amos_unit_org_code","regional_companies_code"} ,fieldConditions ={"eq","in"} ,relationship="and")
List<PreparationMoney> selectPageList(@Param(value = "dto") PreparationDto preparationDto);
@UserEmpower(field ={"regional_companies_code"} ,dealerField={"amos_unit_org_code","regional_companies_code"} ,fieldConditions ={"eq","in"} ,relationship="and")
List<Map<String,Object>> preparationStation (@Param(value = "preparationMoneyState") String preparationMoneyState,
@Param(value = "ownersName") String ownersName,
@Param(value = "regionalcompaniesSeq") String regionalcompaniesSeq,
@Param(value = "developerId") String developerId,
@Param(value = "state") String state);
}
package com.yeejoin.amos.boot.module.hygf.api.service;
/**
* 投融审核表接口类
*
* @author system_generator
* @date 2024-06-18
*/
public interface IHygfPreparationMoneyAuditingService {
}
package com.yeejoin.amos.boot.module.hygf.api.service;
/**
* 接口类
*
* @author system_generator
* @date 2024-07-02
*/
public interface IHygfReplenishmentService {
}
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yeejoin.amos.boot.module.hygf.api.mapper.HygfPreparationMoneyAuditingMapper">
</mapper>
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yeejoin.amos.boot.module.hygf.api.mapper.HygfReplenishmentMapper">
</mapper>
......@@ -58,6 +58,12 @@ and hygf_document_station.station_id is not null
<if test="ownersName!=null and ownersName !=''">
and owners_name like concat ('%',#{ownersName},'%')
</if>
<if test="preparationMoneyState!=null and preparationMoneyState !='' and preparationMoneyState == '0' ">
and preparation_money_state in ('待发货','待补货','暂存发货')
</if>
<if test="preparationMoneyState!=null and preparationMoneyState !='' and preparationMoneyState == '1' ">
and preparation_money_state not in ('待发货','待补货','暂存发货')
</if>
<if test="developerId!=null and developerId !=''">
and developer_id = #{developerId}
</if>
......
......@@ -13,7 +13,7 @@ LEFT JOIN hygf_document_station on hygf_document_station.station_id=hygf_peasan
</select>
<select id="selectPageList" resultType="com.yeejoin.amos.boot.module.hygf.api.entity.PreparationMoney">
SELECT * FROM hygf_preparation_money
SELECT hygf_preparation_money.*,(select instance_id from hygf_preparation_money_auditing where preparation_money_id = hygf_preparation_money.sequence_nbr limit 1 ) as instanceId FROM hygf_preparation_money
<where>
<if test="dto.consigneeRegion != null and dto.consigneeRegion != ''">
and hygf_preparation_money.consignee_region like concat ('%',#{dto.consigneeRegion},'%')
......@@ -39,4 +39,46 @@ LEFT JOIN hygf_document_station on hygf_document_station.station_id=hygf_peasan
</where>
ORDER BY order_time DESC
</select>
<select id="preparationStation" resultType="java.util.Map">
select
hygf_peasant_household.peasant_household_no as peasantHouseholdNo,
hygf_peasant_household.owners_name as ownersName,
hygf_peasant_household.regional_companies_name as regionalCompaniesName,
hygf_peasant_household.developer_name as developerName,
hygf_peasant_household.sequence_nbr as sequenceNbr,
concat_ws('/',project_address_name,project_address_detail) as address,
hygf_peasant_household.project_address_name as sequenceNbr,
hygf_peasant_household.preparation_money_state preparationMoneyState,
hygf_document_station.preparation_money_id as preparationMoneyId,
hygf_power_station.process_instance_id as instanceId
from
hygf_peasant_household
LEFT JOIN hygf_document_station on hygf_peasant_household.sequence_nbr = hygf_document_station.station_id
LEFT JOIN hygf_power_station on hygf_peasant_household.sequence_nbr = hygf_power_station.peasant_household_id
<where>
<if test="preparationMoneyState!=null and preparationMoneyState !='' and preparationMoneyState == '0' ">
and hygf_peasant_household.preparation_money_state in ('待发货','待补货','暂存发货')
</if>
<if test="regionalCompaniesSeq!=null and regionalCompaniesSeq !='' ">
and hygf_peasant_household.regional_companies_seq = #{regionalCompaniesSeq}
</if>
<if test="developerId!=null and developerId !=''">
and hygf_peasant_household.developer_id = #{developerId}
</if>
<if test="state!=null and state !=''">
and hygf_peasant_household.preparation_money_state = #{state}
</if>
<if test="ownersName!=null and ownersName !=''">
and hygf_peasant_household.owners_name like concat ('%',#{ownersName},'%')
</if>
<if test="preparationMoneyState!=null and preparationMoneyState !='' and preparationMoneyState == '1' ">
and hygf_peasant_household.preparation_money_state not in ('待发货','待补货','暂存发货') and preparation_money_state is not and preparation_money_state != ''
</if>
</where>
</select>
</mapper>
......@@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yeejoin.amos.boot.biz.common.controller.BaseController;
import com.yeejoin.amos.boot.module.hygf.api.Enum.ArrivalStateeEnum;
import com.yeejoin.amos.boot.module.hygf.api.Enum.HouseholdContractEnum;
import com.yeejoin.amos.boot.module.hygf.api.Enum.TaskTypeStationEnum;
import com.yeejoin.amos.boot.module.hygf.api.config.UserLimits;
......@@ -229,7 +230,14 @@ public class HouseholdContractController extends BaseController {
wrapper.eq(ToDoTasks::getState, "待办");
wrapper.eq(ToDoTasks::getBusinessId, householdContrac.getSequenceNbr());
ToDoTasks doTasks= toDoTasksMapper.selectOne(wrapper);
if(doTasks!=null){
PeasantHousehold peasantHousehold = peasantHouseholdServiceImpl.getDataByState(householdContrac.getPeasantHouseholdId());
if (peasantHousehold != null){
peasantHousehold.setPreparationMoneyState(ArrivalStateeEnum.待发货.getCode());
peasantHouseholdServiceImpl.getBaseMapper().updateById(peasantHousehold);
}
if(doTasks!=null){
doTasks.setState("已办");
doTasks.setCompleteTime(new Date());
toDoTasksMapper.updateById(doTasks);
......
package com.yeejoin.amos.boot.module.hygf.biz.controller;
import org.springframework.web.bind.annotation.RequestMapping;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.Api;
import org.springframework.web.bind.annotation.RestController;
import com.yeejoin.amos.boot.biz.common.controller.BaseController;
import java.util.List;
import com.yeejoin.amos.boot.module.hygf.biz.service.impl.HygfPreparationMoneyAuditingServiceImpl;
import org.typroject.tyboot.core.restful.utils.ResponseHelper;
import org.typroject.tyboot.core.restful.utils.ResponseModel;
import org.springframework.beans.factory.annotation.Autowired;
import javax.servlet.http.HttpServletRequest;
import org.springframework.web.bind.annotation.*;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.module.hygf.api.dto.HygfPreparationMoneyAuditingDto;
import org.typroject.tyboot.core.restful.doc.TycloudOperation;
import org.typroject.tyboot.core.foundation.enumeration.UserType;
/**
* 投融审核表
*
* @author system_generator
* @date 2024-06-18
*/
@RestController
@Api(tags = "投融审核表Api")
@RequestMapping(value = "/hygf-preparation-money-auditing")
public class HygfPreparationMoneyAuditingController extends BaseController {
@Autowired
HygfPreparationMoneyAuditingServiceImpl hygfPreparationMoneyAuditingServiceImpl;
/**
* 新增投融审核表
*
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PostMapping(value = "/save")
@ApiOperation(httpMethod = "POST", value = "新增投融审核表", notes = "新增投融审核表")
public ResponseModel<HygfPreparationMoneyAuditingDto> save(@RequestBody HygfPreparationMoneyAuditingDto model) {
model = hygfPreparationMoneyAuditingServiceImpl.createWithModel(model);
return ResponseHelper.buildResponse(model);
}
/**
* 根据sequenceNbr更新
*
* @param sequenceNbr 主键
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PutMapping(value = "/{sequenceNbr}")
@ApiOperation(httpMethod = "PUT", value = "根据sequenceNbr更新投融审核表", notes = "根据sequenceNbr更新投融审核表")
public ResponseModel<HygfPreparationMoneyAuditingDto> updateBySequenceNbrHygfPreparationMoneyAuditing(@RequestBody HygfPreparationMoneyAuditingDto model,@PathVariable(value = "sequenceNbr") Long sequenceNbr) {
model.setSequenceNbr(sequenceNbr);
return ResponseHelper.buildResponse(hygfPreparationMoneyAuditingServiceImpl.updateWithModel(model));
}
/**
* 根据sequenceNbr删除
*
* @param sequenceNbr 主键
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@DeleteMapping(value = "/{sequenceNbr}")
@ApiOperation(httpMethod = "DELETE", value = "根据sequenceNbr删除投融审核表", notes = "根据sequenceNbr删除投融审核表")
public ResponseModel<Boolean> deleteBySequenceNbr(HttpServletRequest request, @PathVariable(value = "sequenceNbr") Long sequenceNbr){
return ResponseHelper.buildResponse(hygfPreparationMoneyAuditingServiceImpl.removeById(sequenceNbr));
}
/**
* 根据sequenceNbr查询
*
* @param sequenceNbr 主键
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/{sequenceNbr}")
@ApiOperation(httpMethod = "GET",value = "根据sequenceNbr查询单个投融审核表", notes = "根据sequenceNbr查询单个投融审核表")
public ResponseModel<HygfPreparationMoneyAuditingDto> selectOne(@PathVariable Long sequenceNbr) {
return ResponseHelper.buildResponse(hygfPreparationMoneyAuditingServiceImpl.queryBySeq(sequenceNbr));
}
/**
* 列表分页查询
*
* @param current 当前页
* @param current 每页大小
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/page")
@ApiOperation(httpMethod = "GET",value = "投融审核表分页查询", notes = "投融审核表分页查询")
public ResponseModel<Page<HygfPreparationMoneyAuditingDto>> queryForPage(@RequestParam(value = "current") int current,@RequestParam
(value = "size") int size) {
Page<HygfPreparationMoneyAuditingDto> page = new Page<HygfPreparationMoneyAuditingDto>();
page.setCurrent(current);
page.setSize(size);
return ResponseHelper.buildResponse(hygfPreparationMoneyAuditingServiceImpl.queryForHygfPreparationMoneyAuditingPage(page));
}
/**
* 列表全部数据查询
*
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@ApiOperation(httpMethod = "GET",value = "投融审核表列表全部数据查询", notes = "投融审核表列表全部数据查询")
@GetMapping(value = "/list")
public ResponseModel<List<HygfPreparationMoneyAuditingDto>> selectForList() {
return ResponseHelper.buildResponse(hygfPreparationMoneyAuditingServiceImpl.queryForHygfPreparationMoneyAuditingList());
}
}
package com.yeejoin.amos.boot.module.hygf.biz.controller;
import org.springframework.web.bind.annotation.RequestMapping;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.Api;
import org.springframework.web.bind.annotation.RestController;
import com.yeejoin.amos.boot.biz.common.controller.BaseController;
import java.util.List;
import com.yeejoin.amos.boot.module.hygf.biz.service.impl.HygfReplenishmentServiceImpl;
import org.typroject.tyboot.core.restful.utils.ResponseHelper;
import org.typroject.tyboot.core.restful.utils.ResponseModel;
import org.springframework.beans.factory.annotation.Autowired;
import javax.servlet.http.HttpServletRequest;
import org.springframework.web.bind.annotation.*;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.module.hygf.api.dto.HygfReplenishmentDto;
import org.typroject.tyboot.core.restful.doc.TycloudOperation;
import org.typroject.tyboot.core.foundation.enumeration.UserType;
/**
*
*
* @author system_generator
* @date 2024-07-02
*/
@RestController
@Api(tags = "Api")
@RequestMapping(value = "/hygf-replenishment")
public class HygfReplenishmentController extends BaseController {
@Autowired
HygfReplenishmentServiceImpl hygfReplenishmentServiceImpl;
/**
* 新增
*
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PostMapping(value = "/save")
@ApiOperation(httpMethod = "POST", value = "新增", notes = "新增")
public ResponseModel<HygfReplenishmentDto> save(@RequestBody HygfReplenishmentDto model) {
model = hygfReplenishmentServiceImpl.createWithModel(model);
return ResponseHelper.buildResponse(model);
}
/**
* 根据sequenceNbr更新
*
* @param sequenceNbr 主键
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PutMapping(value = "/{sequenceNbr}")
@ApiOperation(httpMethod = "PUT", value = "根据sequenceNbr更新", notes = "根据sequenceNbr更新")
public ResponseModel<HygfReplenishmentDto> updateBySequenceNbrHygfReplenishment(@RequestBody HygfReplenishmentDto model,@PathVariable(value = "sequenceNbr") Long sequenceNbr) {
model.setSequenceNbr(sequenceNbr);
return ResponseHelper.buildResponse(hygfReplenishmentServiceImpl.updateWithModel(model));
}
/**
* 根据sequenceNbr删除
*
* @param sequenceNbr 主键
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@DeleteMapping(value = "/{sequenceNbr}")
@ApiOperation(httpMethod = "DELETE", value = "根据sequenceNbr删除", notes = "根据sequenceNbr删除")
public ResponseModel<Boolean> deleteBySequenceNbr(HttpServletRequest request, @PathVariable(value = "sequenceNbr") Long sequenceNbr){
return ResponseHelper.buildResponse(hygfReplenishmentServiceImpl.removeById(sequenceNbr));
}
/**
* 根据sequenceNbr查询
*
* @param sequenceNbr 主键
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/{sequenceNbr}")
@ApiOperation(httpMethod = "GET",value = "根据sequenceNbr查询单个", notes = "根据sequenceNbr查询单个")
public ResponseModel<HygfReplenishmentDto> selectOne(@PathVariable Long sequenceNbr) {
return ResponseHelper.buildResponse(hygfReplenishmentServiceImpl.queryBySeq(sequenceNbr));
}
/**
* 列表分页查询
*
* @param current 当前页
* @param current 每页大小
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/page")
@ApiOperation(httpMethod = "GET",value = "分页查询", notes = "分页查询")
public ResponseModel<Page<HygfReplenishmentDto>> queryForPage(@RequestParam(value = "current") int current,@RequestParam
(value = "size") int size) {
Page<HygfReplenishmentDto> page = new Page<HygfReplenishmentDto>();
page.setCurrent(current);
page.setSize(size);
return ResponseHelper.buildResponse(hygfReplenishmentServiceImpl.queryForHygfReplenishmentPage(page));
}
/**
* 列表全部数据查询
*
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@ApiOperation(httpMethod = "GET",value = "列表全部数据查询", notes = "列表全部数据查询")
@GetMapping(value = "/list")
public ResponseModel<List<HygfReplenishmentDto>> selectForList() {
return ResponseHelper.buildResponse(hygfReplenishmentServiceImpl.queryForHygfReplenishmentList());
}
}
......@@ -208,6 +208,7 @@ public class PeasantHouseholdController extends BaseController {
public ResponseModel<Page<PeasantHousehold>> queryForPage(@RequestParam(value = "current") int current,
@RequestParam(value = "size") int size,
@RequestParam(value = "ownersName",required = false)String ownersName,
@RequestParam(value = "preparationMoneyState",required = false)String preparationMoneyState,
@RequestParam(value = "developerId",required = false)Long developerId) {
Page<PeasantHousehold> page = new Page<PeasantHousehold>();
page.setCurrent(current);
......@@ -221,7 +222,7 @@ public class PeasantHouseholdController extends BaseController {
// String orgCode = userUnitInformationDto.getAmosDealerOrgCode();
Integer isCertified = PeasantHouseholdEnum.已认证.getCode();
return ResponseHelper.buildResponse(peasantHouseholdServiceImpl.queryForPeasantHouseholdPage(page, null,ownersName,developerId,isCertified));
return ResponseHelper.buildResponse(peasantHouseholdServiceImpl.queryForPeasantHouseholdPage(page, null,ownersName,developerId,isCertified,preparationMoneyState));
}
/**
......
package com.yeejoin.amos.boot.module.hygf.biz.controller;
import cn.hutool.core.collection.CollectionUtil;
import com.alibaba.fastjson.JSONArray;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.biz.common.controller.BaseController;
import com.yeejoin.amos.boot.biz.common.utils.RedisUtils;
import com.yeejoin.amos.boot.module.hygf.api.dto.MobileLoginParamDto;
import com.yeejoin.amos.boot.module.hygf.api.dto.PeasantHouseholdDto;
import com.yeejoin.amos.boot.module.hygf.api.dto.PeasantHouseholdPageDto;
import com.yeejoin.amos.boot.module.hygf.api.dto.PeasantHouseholdWxDto;
import com.yeejoin.amos.boot.module.hygf.api.entity.PeasantHousehold;
import com.yeejoin.amos.boot.module.hygf.api.service.IWxService;
......@@ -24,7 +28,6 @@ import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.*;
......@@ -45,37 +48,29 @@ import java.util.*;
* @date 2023-07-07
*/
@RestController
@Api (tags = "农户信息Api for mobile端")
@RequestMapping (value = "/peasant-household/mobile")
@Api(tags = "农户信息Api for mobile端")
@RequestMapping(value = "/peasant-household/mobile")
@Slf4j
public class PeasantHouseholdWxController extends BaseController {
private static final String regionRedis = "app_region_redis";
@Autowired
RedisUtils redisUtil;
@Autowired
SurveyInformationServiceImpl surveyInformationServiceImpl;
@Autowired
PeasantHouseholdServiceImpl peasantHouseholdServiceImpl;
@Autowired
HouseholdContractServiceImpl householdContractServiceImpl;
@Autowired
private IWxService wxService;
@Value("${dealer.userId}")
private String defaultUserId;
@Value("${hygfProgram.loginPage:view/mine/minepage/LoginPhone}")
private String miniprogramLoginPage;
@Autowired
private AmosRequestContext requestContext;
private static final String regionRedis = "app_region_redis";
/*@TycloudOperation (ApiLevel = UserType.AGENCY, needAuth = false)
@RequestMapping (value = "/authenticate", method = RequestMethod.POST)
@ApiOperation (httpMethod = "POST", value = "微信农户认证", notes = "微信农户认证")
......@@ -83,7 +78,7 @@ public class PeasantHouseholdWxController extends BaseController {
return ResponseHelper.buildResponse(peasantHouseholdServiceImpl.doAuthenticate(sequenceNbr));
}*/
@TycloudOperation (ApiLevel = UserType.AGENCY, needAuth = false)
@TycloudOperation(ApiLevel = UserType.AGENCY, needAuth = false)
@ApiOperation("获取验证码")
@GetMapping("/getAuthCode")
public ResponseModel<Boolean> getAuthCode(@RequestParam String phoneNo) {
......@@ -100,9 +95,9 @@ public class PeasantHouseholdWxController extends BaseController {
return ResponseHelper.buildResponse(true);
}
@TycloudOperation (ApiLevel = UserType.AGENCY, needAuth = false)
@RequestMapping (value = "/login", method = RequestMethod.POST)
@ApiOperation (httpMethod = "POST", value = "微信授权登陆", notes = "微信授权登陆")
@TycloudOperation(ApiLevel = UserType.AGENCY, needAuth = false)
@RequestMapping(value = "/login", method = RequestMethod.POST)
@ApiOperation(httpMethod = "POST", value = "微信授权登陆", notes = "微信授权登陆")
public ResponseModel<PeasantHouseholdWxDto> wxUserLogin(@ApiParam @RequestBody MobileLoginParamDto mobileLoginParam) {
log.info("微信授权登录入参 => {}", mobileLoginParam);
if (StringUtils.isBlank(mobileLoginParam.getAmosUserId())) {
......@@ -113,11 +108,10 @@ public class PeasantHouseholdWxController extends BaseController {
}
@TycloudOperation (ApiLevel = UserType.AGENCY, needAuth = false)
@RequestMapping (value = "/getRegisterPhone", method = RequestMethod.POST)
@ApiOperation (httpMethod = "POST", value = "获取手机号及回填信息", notes = "获取手机号及回填信息")
public ResponseModel<Map<String,Object>> getRegisterPhone(@ApiParam @RequestBody MobileLoginParamDto mobileLoginParam) {
@TycloudOperation(ApiLevel = UserType.AGENCY, needAuth = false)
@RequestMapping(value = "/getRegisterPhone", method = RequestMethod.POST)
@ApiOperation(httpMethod = "POST", value = "获取手机号及回填信息", notes = "获取手机号及回填信息")
public ResponseModel<Map<String, Object>> getRegisterPhone(@ApiParam @RequestBody MobileLoginParamDto mobileLoginParam) {
log.info("微信授权注册入参 => {}", mobileLoginParam);
if (StringUtils.isBlank(mobileLoginParam.getAmosUserId())) {
// 扫码的userId为空, 则取默认值
......@@ -126,19 +120,84 @@ public class PeasantHouseholdWxController extends BaseController {
return ResponseHelper.buildResponse(peasantHouseholdServiceImpl.getRegisterPhone(mobileLoginParam));
}
@TycloudOperation (ApiLevel = UserType.AGENCY, needAuth = false)
@RequestMapping (value = "/register", method = RequestMethod.POST)
@ApiOperation (httpMethod = "POST", value = "微信农户注册", notes = "微信农户注册")
@TycloudOperation(ApiLevel = UserType.AGENCY, needAuth = false)
@RequestMapping(value = "/getJxsAndNhData", method = RequestMethod.GET)
@ApiOperation(httpMethod = "GET", value = "获取经销商农户信息", notes = "获取经销商农户信息")
public ResponseModel<Map<String, Object>> getJxsAndNhData(@ApiParam(value = "农户Id") @RequestParam(value = "nhUserId") String nhUserId,
@ApiParam(value = "经销商Id") @RequestParam(value = "jxsUserId") String jxsUserId,
@ApiParam(value = "二维码类型") @RequestParam(value = "qrCodeType") String qrCodeType) {
return ResponseHelper.buildResponse(peasantHouseholdServiceImpl.getJxsAndNhData(nhUserId, jxsUserId, qrCodeType));
}
@TycloudOperation(ApiLevel = UserType.AGENCY, needAuth = false)
@RequestMapping(value = "/getPeasantHouseByUserId", method = RequestMethod.POST)
@ApiOperation(httpMethod = "POST", value = "分页获取农户", notes = "分页获取农户信息")
public ResponseModel<IPage<PeasantHousehold>> getPeasantHouseByUserId(@RequestBody PeasantHouseholdPageDto peasantHouseholdPageDto) {
return ResponseHelper.buildResponse(peasantHouseholdServiceImpl.getPeasantHousePage(peasantHouseholdPageDto));
}
@TycloudOperation(ApiLevel = UserType.AGENCY, needAuth = false)
@RequestMapping(value = "/addPeasantHousehold", method = RequestMethod.POST)
@ApiOperation(httpMethod = "POST", value = "新增农户", notes = "新增农户")
public ResponseModel<String> addPeasantHousehold(@ApiParam @RequestBody PeasantHouseholdDto peasantHouseholdDto) {
//此处是新增农户,根据用户id查询必须要有一个农户,否则直接抛错
List<PeasantHousehold> peasantHouseList = peasantHouseholdServiceImpl.getPeasantHouseByUserId(peasantHouseholdDto.getAmosUserId());
if (CollectionUtil.isEmpty(peasantHouseList)) {
throw new BadRequest("没有查询到注册的农户,请注册后在进行新增");
}
validatedPeasantHouseholdDto(peasantHouseholdDto);
peasantHouseholdDto.setPeasantHouseholdNo(peasantHouseholdServiceImpl.getPeasantHouseholdNo(peasantHouseholdDto.getRegionalCompaniesSeq()));
peasantHouseholdDto.setIsCertified(1);// 这里就实名认证
peasantHouseholdDto.setSurveyOrNot(0);
peasantHouseholdDto.setReview(0);
JSONArray regionName = getRegionName();
List<RegionModel> list = JSONArray.parseArray(regionName.toJSONString(), RegionModel.class);
// 处理项目地址
String area = "";
if (peasantHouseholdDto.getProjectAddress() != null && peasantHouseholdDto.getProjectAddress().size() != 0) {
for (Integer reg : peasantHouseholdDto.getProjectAddress())
for (RegionModel re : list) {
if (re.getRegionCode().equals(Integer.valueOf(reg))) {
area = area + re.getRegionName() + "/";
}
}
peasantHouseholdDto.setProjectAddressName(area.length() > 2 ? area.substring(0, area.length() - 1) : area);
if ("1".equals(peasantHouseholdDto.getIsPermanent()) || "true".equals(peasantHouseholdDto.getIsPermanent())) {
peasantHouseholdDto.setPermanentAddress(peasantHouseholdDto.getProjectAddress());
peasantHouseholdDto.setPermanentAddressDetail(peasantHouseholdDto.getProjectAddressDetail());
peasantHouseholdDto.setPermanentAddressName(area.length() > 2 ? area.substring(0, area.length() - 1) : area);
} else {
// 处理常住地址
String permanent = "";
if (peasantHouseholdDto.getPermanentAddress() != null && peasantHouseholdDto.getPermanentAddress().size() != 0) {
for (Integer reg : peasantHouseholdDto.getPermanentAddress())
for (RegionModel re : list) {
if (re.getRegionCode().equals(Integer.valueOf(reg))) {
permanent = permanent + re.getRegionName() + "/";
}
}
peasantHouseholdDto.setPermanentAddressName(permanent.length() > 2 ? permanent.substring(0, permanent.length() - 1) : permanent);
}
}
}
PeasantHouseholdDto result = peasantHouseholdServiceImpl.addNewPeasantHousehold(peasantHouseholdDto);
return ResponseHelper.buildResponse("success");
}
@TycloudOperation(ApiLevel = UserType.AGENCY, needAuth = false)
@RequestMapping(value = "/register", method = RequestMethod.POST)
@ApiOperation(httpMethod = "POST", value = "微信农户注册", notes = "微信农户注册")
public ResponseModel<PeasantHouseholdWxDto> wxUserRegister(@ApiParam @RequestBody MobileLoginParamDto mobileLoginParam) {
PeasantHousehold peasantHousehold = new PeasantHousehold();
PeasantHousehold peasantHousehold = new PeasantHousehold();
try {
//注册并登录 生成农户信息表数据
PeasantHouseholdWxDto peasantHouseholdWxDto = peasantHouseholdServiceImpl.registerAndLogin(mobileLoginParam);
peasantHousehold = peasantHouseholdWxDto.getPeasantHousehold();
peasantHousehold = peasantHouseholdWxDto.getPeasantHousehold();
log.info("微信农户注册, 入参 => {}", mobileLoginParam);
PeasantHouseholdDto model = mobileLoginParam.getPeasantHouseholdDto();
validatedPeasantHouseholdDto(model);
BeanDtoUtils.copyPropertiesAllNonNull(peasantHousehold,model);
BeanDtoUtils.copyPropertiesAllNonNull(peasantHousehold, model);
model.setPeasantHouseholdNo(peasantHouseholdServiceImpl.getPeasantHouseholdNo(model.getRegionalCompaniesSeq()));
model.setIsCertified(1);// 这里就实名认证
model.setSurveyOrNot(0);
......@@ -173,11 +232,11 @@ public class PeasantHouseholdWxController extends BaseController {
}
}
}
BeanDtoUtils.copyPropertiesAllNonNull(model,peasantHousehold);
BeanDtoUtils.copyPropertiesAllNonNull(model, peasantHousehold);
PeasantHouseholdDto result = peasantHouseholdServiceImpl.savePeasantHousehold(model, null);
peasantHouseholdWxDto.setPeasantHousehold(peasantHousehold);
return ResponseHelper.buildResponse(peasantHouseholdWxDto);
}catch (Exception e) {
} catch (Exception e) {
log.error(e.getMessage());
if (null != peasantHousehold) {
log.error("调用平台接口回滚注册的用户 => {}", e, peasantHousehold.getAmosUserId());
......@@ -227,12 +286,12 @@ public class PeasantHouseholdWxController extends BaseController {
}
@TycloudOperation (ApiLevel = UserType.AGENCY, needAuth = false)
@TycloudOperation(ApiLevel = UserType.AGENCY, needAuth = false)
@GetMapping("/getRegionQrCode")
@ApiOperation (httpMethod = "GET", value = " 获取区域经销商二维码", notes = " 获取区域经销商二维码")
@ApiOperation(httpMethod = "GET", value = " 获取区域经销商二维码", notes = " 获取区域经销商二维码")
public ResponseModel<Map<String, Object>> getRegionQrCode(
@RequestParam (value = "fileType", required = false, defaultValue = "png") String fileType,
@RequestParam (value = "width", required = false, defaultValue = "350") String width,
@RequestParam(value = "fileType", required = false, defaultValue = "png") String fileType,
@RequestParam(value = "width", required = false, defaultValue = "350") String width,
HttpServletResponse response) {
AgencyUserModel userInfo = getUserInfo();
log.info("获取区域经销商二维码, userId:{}", userInfo.getUserId());
......
......@@ -10,14 +10,18 @@ import com.yeejoin.amos.boot.module.hygf.api.dto.PreparationMoneyDto;
import com.yeejoin.amos.boot.module.hygf.api.dto.PreparationPageDto;
import com.yeejoin.amos.boot.module.hygf.api.dto.UserUnitInformationDto;
import com.yeejoin.amos.boot.module.hygf.api.entity.DesignInformation;
import com.yeejoin.amos.boot.module.hygf.api.entity.HygfReplenishment;
import com.yeejoin.amos.boot.module.hygf.api.entity.PeasantHousehold;
import com.yeejoin.amos.boot.module.hygf.api.entity.PreparationMoney;
import com.yeejoin.amos.boot.module.hygf.api.mapper.DocumentStationMapper;
import com.yeejoin.amos.boot.module.hygf.api.mapper.PersonnelBusinessMapper;
import com.yeejoin.amos.boot.module.hygf.api.mapper.PreparationMoneyMapper;
import com.yeejoin.amos.boot.module.hygf.api.util.CommonResponseNewUtil;
import com.yeejoin.amos.boot.module.hygf.biz.service.impl.DesignInformationServiceImpl;
import com.yeejoin.amos.boot.module.hygf.biz.service.impl.HygfReplenishmentServiceImpl;
import com.yeejoin.amos.boot.module.hygf.biz.service.impl.PreparationMoneyServiceImpl;
import com.yeejoin.amos.feign.privilege.model.AgencyUserModel;
import io.seata.spring.annotation.GlobalTransactional;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
......@@ -54,6 +58,8 @@ public class PreparationMoneyController extends BaseController {
PersonnelBusinessMapper personnelBusinessMapper;
@Autowired
DocumentStationMapper documentStationMapper;
@Autowired
HygfReplenishmentServiceImpl hygfReplenishmentService;
/**
* 新增发货单
*
......@@ -62,9 +68,11 @@ public class PreparationMoneyController extends BaseController {
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PostMapping(value = "/save")
@ApiOperation(httpMethod = "POST", value = "新增发货单", notes = "新增发货单")
public ResponseModel<PreparationMoney> save( @RequestBody PreparationMoney model) {
@GlobalTransactional
public ResponseModel<PreparationMoney> save( @RequestParam("isSubmit") String isSubmit, @RequestBody PreparationMoney model) {
AgencyUserModel agencyUserModel= getUserInfo();
model = preparationMoneyServiceImpl.saveOrUpdateObject(model,agencyUserModel);
model = preparationMoneyServiceImpl.saveOrUpdateObjectNew(model,agencyUserModel, isSubmit);
// model = preparationMoneyServiceImpl.saveOrUpdateObject(model,agencyUserModel);
return ResponseHelper.buildResponse(model);
}
......@@ -216,7 +224,7 @@ public class PreparationMoneyController extends BaseController {
) {
List<PeasantHousehold> list=preparationMoneyMapper.getPeasantHouseholdData(sequenceNbr,ownersName);
Page<PeasantHousehold> pagenew = new Page<PeasantHousehold>();
Page<PeasantHousehold> pagenew = new Page<>();
pagenew.setRecords(list);
pagenew.setTotal(list.size());
return ResponseHelper.buildResponse(pagenew);
......@@ -242,4 +250,84 @@ public class PreparationMoneyController extends BaseController {
return ResponseHelper.buildResponse(preparationMoneyServiceImpl.selectOnePreparationMoney(sequenceNbr));
}
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PostMapping(value = "/uploadVoucher")
@ApiOperation(httpMethod = "POST",value = "上传收获凭证", notes = "上传收获凭证")
@GlobalTransactional
public ResponseModel uploadVoucher(@RequestParam(value = "instanceId") String instanceId,PreparationMoney model, String isSubmit) {
preparationMoneyServiceImpl.uploadVoucher(model,instanceId,isSubmit);
return CommonResponseNewUtil.failure();
}
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PostMapping(value = "/excuteFlow")
@ApiOperation(httpMethod = "POST",value = "收货审核", notes = "收货审核")
@GlobalTransactional
public ResponseModel excuteFlow(@RequestParam(value = "instanceId" ,required = false) String instanceId,
@RequestParam(value = "sequenceNbr") Long sequenceNbr,@RequestBody Map<String, Object> kv) {
preparationMoneyServiceImpl.excuteFlow(instanceId,kv,sequenceNbr);
return CommonResponseNewUtil.failure();
}
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PostMapping(value = "/replenishmentSubmit")
@ApiOperation(httpMethod = "POST",value = "补货申请", notes = "补货申请")
@GlobalTransactional
public ResponseModel replenishmentSubmit( @RequestBody HygfReplenishment hygfReplenishment) {
hygfReplenishmentService.save(hygfReplenishment);
preparationMoneyServiceImpl.replenishmentSubmit(hygfReplenishment.getPreparationMoneyId());
return CommonResponseNewUtil.failure();
}
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PutMapping(value = "/replenishmentRollback")
@ApiOperation(httpMethod = "PUT",value = "补货撤回", notes = "补货撤回")
public ResponseModel replenishmentRollback(@RequestParam(value = "sequenceNbr") Long sequenceNbr) {
preparationMoneyServiceImpl.replenishmentRollback(sequenceNbr);
return CommonResponseNewUtil.failure();
}
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PostMapping(value = "/replenishmentAudit")
@ApiOperation(httpMethod = "POST",value = "补货审核", notes = "补货审核")
@GlobalTransactional
public ResponseModel replenishmentAudit(@RequestParam(value = "sequenceNbr") Long sequenceNbr,@RequestBody Map<String,Object> kv) {
preparationMoneyServiceImpl.replenishmentAudit(sequenceNbr,kv);
return CommonResponseNewUtil.failure();
}
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PostMapping(value = "/submitOrder")
@ApiOperation(httpMethod = "POST",value = "补货审核", notes = "补货审核")
@GlobalTransactional
public ResponseModel submitOrder(@RequestParam(value = "instanceId") String instanceId,
@RequestParam(value = "isSubmit") String isSubmit,
@RequestBody PreparationMoney model) {
preparationMoneyServiceImpl.submitOrder( model, instanceId, isSubmit);
return CommonResponseNewUtil.failure();
}
@TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/preparationStation")
@ApiOperation(httpMethod = "GET",value = "发货电站", notes = "发货电站")
@GlobalTransactional
public ResponseModel<IPage<Map<String,Object>>> preparationStation(
@RequestParam(value = "current") Integer current,
@RequestParam(value = "size") Integer size,
@RequestParam(value = "ownersName",required = false) String ownersName,
@RequestParam(value = "regionalcompaniesSeq",required = false) String regionalcompaniesSeq,
@RequestParam(value = "developerId",required = false) String developerId,
@RequestParam(value = "state",required = false) String state,
@RequestParam(value = "preparationMoneyState") String preparationMoneyState){
return ResponseHelper.buildResponse(preparationMoneyServiceImpl.preparationStation(current,size,preparationMoneyState,ownersName,regionalcompaniesSeq,developerId,state)) ;
}
}
......@@ -202,7 +202,7 @@ public class WorkOrderController extends BaseController {
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PostMapping (value = "/getPowerStationConstructionData")
@ApiOperation(httpMethod = "GET",value = "无分页查询", notes = "无分页查询")
public ResponseModel<Map<String,Object>> getPowerStationConstructionData(
public ResponseModel<PowerStationConstructionData> getPowerStationConstructionData(
@RequestBody PowerStationConstructionData powerStationConstructionData
) {
//查询施工信息
......@@ -210,10 +210,7 @@ public class WorkOrderController extends BaseController {
up.eq(PowerStationConstructionData::getWorkOrderId,powerStationConstructionData.getWorkOrderId());
up.eq(PowerStationConstructionData::getWorkOrderPowerStationId,powerStationConstructionData.getWorkOrderPowerStationId());
PowerStationConstructionData da= powerStationConstructionDataMapper.selectOne(up);
Map<String,Object> map =new HashMap<>();
map.put("powerStationConstructionData",da!=null?da:new PowerStationConstructionData());
map.put("powerStationConstructionDatafj",da!=null?da:new PowerStationConstructionData());
return ResponseHelper.buildResponse(map);
return ResponseHelper.buildResponse(da!=null?da:new PowerStationConstructionData());
}
......@@ -221,7 +218,7 @@ public class WorkOrderController extends BaseController {
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PostMapping (value = "/addOrUpdate")
@ApiOperation(httpMethod = "GET",value = "无分页查询", notes = "无分页查询")
@ApiOperation(httpMethod = "POST",value = "施工信息添加或者修改", notes = "施工信息添加或者修改")
public ResponseModel<PowerStationConstructionData> addOrUpdate(
@RequestBody PowerStationConstructionData powerStationConstructionData
) {
......
package com.yeejoin.amos.boot.module.hygf.biz.service.impl;
import com.yeejoin.amos.boot.module.hygf.api.entity.HygfPreparationMoneyAuditing;
import com.yeejoin.amos.boot.module.hygf.api.mapper.HygfPreparationMoneyAuditingMapper;
import com.yeejoin.amos.boot.module.hygf.api.service.IHygfPreparationMoneyAuditingService;
import com.yeejoin.amos.boot.module.hygf.api.dto.HygfPreparationMoneyAuditingDto;
import org.typroject.tyboot.core.rdbms.service.BaseService;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import java.util.List;
/**
* 投融审核表服务实现类
*
* @author system_generator
* @date 2024-06-18
*/
@Service
public class HygfPreparationMoneyAuditingServiceImpl extends BaseService<HygfPreparationMoneyAuditingDto,HygfPreparationMoneyAuditing,HygfPreparationMoneyAuditingMapper> implements IHygfPreparationMoneyAuditingService {
/**
* 分页查询
*/
public Page<HygfPreparationMoneyAuditingDto> queryForHygfPreparationMoneyAuditingPage(Page<HygfPreparationMoneyAuditingDto> page) {
return this.queryForPage(page, null, false);
}
/**
* 列表查询 示例
*/
public List<HygfPreparationMoneyAuditingDto> queryForHygfPreparationMoneyAuditingList() {
return this.queryForList("" , false);
}
}
\ No newline at end of file
package com.yeejoin.amos.boot.module.hygf.biz.service.impl;
import com.yeejoin.amos.boot.module.hygf.api.entity.HygfReplenishment;
import com.yeejoin.amos.boot.module.hygf.api.mapper.HygfReplenishmentMapper;
import com.yeejoin.amos.boot.module.hygf.api.service.IHygfReplenishmentService;
import com.yeejoin.amos.boot.module.hygf.api.dto.HygfReplenishmentDto;
import org.typroject.tyboot.core.rdbms.service.BaseService;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import java.util.List;
/**
* 服务实现类
*
* @author system_generator
* @date 2024-07-02
*/
@Service
public class HygfReplenishmentServiceImpl extends BaseService<HygfReplenishmentDto,HygfReplenishment,HygfReplenishmentMapper> implements IHygfReplenishmentService {
/**
* 分页查询
*/
public Page<HygfReplenishmentDto> queryForHygfReplenishmentPage(Page<HygfReplenishmentDto> page) {
return this.queryForPage(page, null, false);
}
/**
* 列表查询 示例
*/
public List<HygfReplenishmentDto> queryForHygfReplenishmentList() {
return this.queryForList("" , false);
}
}
\ No newline at end of file
......@@ -2,9 +2,11 @@ package com.yeejoin.amos.boot.module.hygf.biz.service.impl;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.util.StrUtil;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
......@@ -59,6 +61,33 @@ import java.util.stream.Collectors;
@Slf4j
public class PeasantHouseholdServiceImpl extends BaseService<PeasantHouseholdDto,PeasantHousehold,PeasantHouseholdMapper> implements IPeasantHouseholdService {
public static final String SECRETKEY = "qaz";
@Autowired
SurveyInformationServiceImpl surveyInformationService;
@Autowired
SurveyDetailsServiceImpl surveyDetailsService;
@Autowired
InformationServiceImpl informationService;
@Autowired
ExtendedInformationServiceImpl extendedInformationService;
@Autowired
CommercialServiceImpl commercialService;
@Autowired
PeasantHouseholdMapper peasantHouseholdMapper;
@Autowired
SurveyInformationServiceImpl surveyInformationServiceImpl;
@Autowired
HouseholdContractServiceImpl householdContractServiceImpl;
@Autowired
PersonnelBusinessMapper personnelBusinessMapper;
@Autowired
UnitInfoServiceImpl unitInfoServiceImpl;
@Autowired
AmosRequestContext requestContext;
@Autowired
ToDoTasksServiceImpl toDoTasksServiceImpl;
@Autowired
RegionalCompaniesMapper regionalCompaniesMapper;
private Long TOKEN_TIME = 1209600l;
@Value("${amos.system.user.product}")
......@@ -100,43 +129,7 @@ public class PeasantHouseholdServiceImpl extends BaseService<PeasantHouseholdDto
@Autowired
private IWxService wxService;
@Autowired
SurveyInformationServiceImpl surveyInformationService;
@Autowired
SurveyDetailsServiceImpl surveyDetailsService;
@Autowired
InformationServiceImpl informationService;
@Autowired
ExtendedInformationServiceImpl extendedInformationService;
@Autowired
CommercialServiceImpl commercialService;
@Autowired
PeasantHouseholdMapper peasantHouseholdMapper;
@Autowired
SurveyInformationServiceImpl surveyInformationServiceImpl;
@Autowired
HouseholdContractServiceImpl householdContractServiceImpl;
@Autowired
PersonnelBusinessMapper personnelBusinessMapper;
@Autowired
UnitInfoServiceImpl unitInfoServiceImpl;
@Autowired
AmosRequestContext requestContext;
@Autowired
ToDoTasksServiceImpl toDoTasksServiceImpl;
@Autowired
RegionalCompaniesMapper regionalCompaniesMapper;
public static final String SECRETKEY = "qaz";
@Transactional (rollbackFor = Exception.class)
@Transactional(rollbackFor = Exception.class)
public PeasantHouseholdDto savePeasantHousehold(PeasantHouseholdDto model, AgencyUserModel userInfo) {
SurveyInformationDto surveyInformationDto = new SurveyInformationDto();
surveyInformationDto.setSurveyNumber(this.getkcNo(model.getRegionalCompaniesSeq()));
......@@ -234,12 +227,12 @@ public class PeasantHouseholdServiceImpl extends BaseService<PeasantHouseholdDto
* 分页查询
*/
public Page<PeasantHousehold> queryForPeasantHouseholdPage(Page<PeasantHousehold> page,String developerCode, String ownersName,Long developerId, Integer isCertified) {
public Page<PeasantHousehold> queryForPeasantHouseholdPage(Page<PeasantHousehold> page,String developerCode, String ownersName,Long developerId, Integer isCertified,String preparationMoneyState) {
int current = (int)page.getCurrent();
int size = (int)page.getSize();
PageHelper.startPage(current,size);
List<PeasantHousehold> records = peasantHouseholdMapper.queryForPage( developerCode,ownersName,developerId, isCertified);
List<PeasantHousehold> records = peasantHouseholdMapper.queryForPage( developerCode,ownersName,developerId, isCertified,preparationMoneyState);
PageInfo<PeasantHousehold> objectPageInfo = new PageInfo<PeasantHousehold>(records);
......@@ -830,4 +823,81 @@ public class PeasantHouseholdServiceImpl extends BaseService<PeasantHouseholdDto
}
public PeasantHousehold getDataByState(Long peasantHouseholdId) {
LambdaQueryWrapper<PeasantHousehold> wrapper = new LambdaQueryWrapper<>();
wrapper.eq(PeasantHousehold::getConstructionState,"勘察完成");
wrapper.eq(BaseEntity::getSequenceNbr,peasantHouseholdId);
return this.getBaseMapper().selectOne(wrapper);
}
public Map<String, Object> getJxsAndNhData(String nhUserId, String jxsUserId, String qrCodeType) {
QueryWrapper<PeasantHousehold> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("amos_user_id", nhUserId);
Map<String, Object> result = new HashMap<>();
List<PeasantHousehold> peasantHouseholds = this.getBaseMapper().selectList(queryWrapper);
result.put("nh", peasantHouseholds);
result.put("jxs", buildDefaultPeasantHouseholdDto(jxsUserId, qrCodeType, null));
return result;
}
public List<PeasantHousehold> getPeasantHouseByUserId(String nhUserId) {
QueryWrapper<PeasantHousehold> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("amos_user_id", nhUserId);
return this.getBaseMapper().selectList(queryWrapper);
}
public PeasantHouseholdDto addNewPeasantHousehold(PeasantHouseholdDto model) {
SurveyInformationDto surveyInformationDto = new SurveyInformationDto();
surveyInformationDto.setSurveyNumber(this.getkcNo(model.getRegionalCompaniesSeq()));
surveyInformationServiceImpl.createWithModel(surveyInformationDto);
model.setSurveyInformationId(surveyInformationDto.getSequenceNbr());
model.setSurveyOrNot(0);
model.setReview(0);
if (model.getCreationTime() == null) {
model.setCreationTime(new Date());
}
model.setPeasantHouseholdNo(this.getPeasantHouseholdNo(model.getRegionalCompaniesSeq()));
model.setIsCertified(model.getIsCertified() == null ? 0 : model.getIsCertified());// 未认证
PeasantHousehold peasantHousehold = new PeasantHousehold();
BeanUtils.copyProperties(model, peasantHousehold);
peasantHousehold.setSequenceNbr(null);
peasantHousehold.setConstructionState(ArrivalStateeEnum.待勘察.getCode());
this.save(peasantHousehold);
//生成合同
HouseholdContract householdContract = new HouseholdContract();
householdContract.setPartyA(peasantHousehold.getOwnersName());
householdContract.setPeasantHouseholdNumber(peasantHousehold.getPeasantHouseholdNo());
householdContract.setPeasantHouseholdCard(peasantHousehold.getIdCard());
householdContract.setDealerId(peasantHousehold.getDeveloperId());
householdContract.setDealerCode(peasantHousehold.getDeveloperCode());
householdContract.setDealerName(peasantHousehold.getDeveloperName());
householdContract.setPeasantHouseholdId(peasantHousehold.getSequenceNbr());
householdContract.setRegionalCompaniesCode(peasantHousehold.getRegionalCompaniesCode());
householdContract.setRegionalCompaniesName(peasantHousehold.getRegionalCompaniesName());
householdContract.setRegionalCompaniesSeq(peasantHousehold.getRegionalCompaniesSeq());
householdContract.setPeasantHouseholdPhone(peasantHousehold.getTelephone());
householdContract.setProjectAddressDetail(peasantHousehold.getProjectAddressDetail());
householdContract.setProjectAddressName(peasantHousehold.getProjectAddressName());
householdContract.setPermanentAddressDetail(peasantHousehold.getPermanentAddressDetail());
householdContract.setPermanentAddressName(peasantHousehold.getPermanentAddressName());
householdContract.setProjectUserId(peasantHousehold.getAmosUserId());
householdContractServiceImpl.addHouseholdContract(householdContract);
//生成待办任务
ToDoTasks toDoTasks = new ToDoTasks(TaskTypeStationEnum.电站勘察.getCode(), peasantHousehold.getSequenceNbr(), "用户" + householdContract.getPartyA() + "电站信息勘察", householdContract.getDealerCode());
toDoTasksServiceImpl.addToDoTasksByUserId(peasantHousehold.getDeveloperUserId(), toDoTasks, "");
ToDoTasks toDoTasks1 = new ToDoTasks(TaskTypeStationEnum.合同填报.getCode(), householdContract.getSequenceNbr(), "用户" + householdContract.getPartyA() + "的合同待发起", householdContract.getDealerCode());
toDoTasksServiceImpl.addToDoTasksByUserId(peasantHousehold.getDeveloperUserId(), toDoTasks1, "");
return model;
}
public IPage<PeasantHousehold> getPeasantHousePage(PeasantHouseholdPageDto peasantHouseholdPageDto) {
QueryWrapper<PeasantHousehold> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("amos_user_id", peasantHouseholdPageDto.getNhUserId());
queryWrapper.like(StrUtil.isNotEmpty(peasantHouseholdPageDto.getPeasantHouseholdNo()),"peasant_household_no", "%"+peasantHouseholdPageDto.getPeasantHouseholdNo()+"%");
return this.baseMapper.selectPage(new Page<>(peasantHouseholdPageDto.getCurrent(),peasantHouseholdPageDto.getSize()),queryWrapper);
}
}
\ No newline at end of file
package com.yeejoin.amos.boot.module.hygf.biz.service.impl;
import cn.hutool.core.collection.CollectionUtil;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
......@@ -85,6 +86,8 @@ public class PowerStationServiceImpl extends BaseService<PowerStationDto, PowerS
AmosRequestContext requestContext;
@Autowired
WorkflowImpl workflow;
@Autowired
HouseholdContractMapper householdContractMapper;
public Page<PowerStationDto> queryForPowerStationUserRoles(Page<PowerStationDto> page, String powerStationCode,
String ownersName, AgencyUserModel userInfo, String serviceAgent, String regionalCompaniesName, String processStatus) {
......@@ -256,6 +259,7 @@ public class PowerStationServiceImpl extends BaseService<PowerStationDto, PowerS
switch (nodeByCode) {
case 设计审核:
powerStation.setTechnologyStatus(resultObj.getName());
break;
case 投融审核:
powerStation.setDesignStatus(resultObj.getName());
......@@ -347,6 +351,16 @@ public class PowerStationServiceImpl extends BaseService<PowerStationDto, PowerS
.selectById(Long.valueOf(peasantHouseholdId));
peasantHousehold.setSurveyOrNot(3);
peasantHousehold.setConstructionState(ArrivalStateeEnum.勘察完成.getCode());
//当勘察完成并且合同双方已盖章 则为待发货
LambdaQueryWrapper<HouseholdContract> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(HouseholdContract::getStatus,"双方已签署");
queryWrapper.eq(HouseholdContract::getPeasantHouseholdId,peasantHousehold.getSequenceNbr());
List<HouseholdContract> householdContracts = householdContractMapper.selectList(queryWrapper);
if (CollectionUtil.isNotEmpty(householdContracts) && householdContracts.size()>0 ){
peasantHousehold.setPreparationMoneyState(ArrivalStateeEnum.待发货.getCode());
}
peasantHouseholdService.saveOrUpdate(peasantHousehold);
}
// }
......
package com.yeejoin.amos.boot.module.hygf.biz.service.impl;
import cn.hutool.core.collection.CollectionUtil;
import com.alibaba.fastjson.JSONArray;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.yeejoin.amos.boot.biz.common.entity.BaseEntity;
import com.yeejoin.amos.boot.biz.common.utils.RedisUtils;
import com.yeejoin.amos.boot.module.hygf.api.Enum.ArrivalStateeEnum;
import com.yeejoin.amos.boot.module.hygf.api.Enum.CodeEnum;
import com.yeejoin.amos.boot.module.hygf.api.Enum.DeliveryStateeEnum;
import com.yeejoin.amos.boot.module.hygf.api.Enum.PreparationEnum;
import com.yeejoin.amos.boot.module.hygf.api.Enum.*;
import com.yeejoin.amos.boot.module.hygf.api.config.UserEmpower;
import com.yeejoin.amos.boot.module.hygf.api.config.UserLimits;
import com.yeejoin.amos.boot.module.hygf.api.dto.*;
import com.yeejoin.amos.boot.module.hygf.api.entity.*;
import com.yeejoin.amos.boot.module.hygf.api.mapper.*;
import com.yeejoin.amos.boot.module.hygf.api.service.IHygfPreparationMoneyAuditingService;
import com.yeejoin.amos.boot.module.hygf.api.service.IPreparationMoneyService;
import com.yeejoin.amos.boot.module.hygf.api.util.NumberUtil;
import com.yeejoin.amos.component.feign.model.FeignClientResult;
......@@ -26,11 +27,19 @@ import com.yeejoin.amos.component.robot.AmosRequestContext;
import com.yeejoin.amos.feign.privilege.model.AgencyUserModel;
import com.yeejoin.amos.feign.systemctl.Systemctl;
import com.yeejoin.amos.feign.systemctl.model.RegionModel;
import com.yeejoin.amos.feign.workflow.model.ActWorkflowBatchDTO;
import com.yeejoin.amos.feign.workflow.model.ActWorkflowStartDTO;
import com.yeejoin.amos.feign.workflow.model.ProcessTaskDTO;
import com.yeejoin.amos.feign.workflow.model.TaskResultDTO;
import io.seata.spring.annotation.GlobalTransactional;
import org.apache.commons.lang.StringUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.RequestParam;
import org.typroject.tyboot.core.foundation.context.RequestContext;
import org.typroject.tyboot.core.foundation.utils.Bean;
import org.typroject.tyboot.core.rdbms.service.BaseService;
import java.time.format.DateTimeFormatter;
......@@ -75,13 +84,21 @@ public class PreparationMoneyServiceImpl extends BaseService<PreparationMoneyDto
PreparationMoneyLogMapper preparationMoneyLogMapper;
@Autowired
PeasantHouseholdMapper peasantHouseholdMapper;
@Autowired
private WorkFlowService workFlowService;
@Autowired
private HygfPreparationMoneyAuditingServiceImpl hygfPreparationMoneyAuditingService;
@Autowired
private HygfReplenishmentMapper hygfReplenishmentMapper;
private static final String regionRedis = "app_region_redis";
private static final String PROCESSKEY = "DeliveryManagement";
private static final String regionRedis="app_region_redis";
/**
* 分页查询
*/
public IPage<PreparationMoney> queryForPreparationMoneyPage(PreparationPageDto dto) {
public IPage<PreparationMoney> queryForPreparationMoneyPage(PreparationPageDto dto) {
//列表数据组装
// LambdaQueryWrapper<PreparationMoney> qw = new LambdaQueryWrapper<>();
......@@ -94,15 +111,15 @@ public class PreparationMoneyServiceImpl extends BaseService<PreparationMoneyDto
// qw.eq(StringUtils.isNotEmpty(dto.getAmosUnitId()), PreparationMoney::getAmosUnitId, dto.getAmosUnitId());
// qw.ne(StringUtils.isNotEmpty(dto.getFlag()),PreparationMoney::getDeliveryState,DeliveryStateeEnum.已作废.getCode());
if(dto.getDeliveryTime()!=null&&!dto.getDeliveryTime().get(0).equals("")){
if (dto.getDeliveryTime() != null && !dto.getDeliveryTime().get(0).equals("")) {
// qw.between(dto.getDeliveryTime()!=null, PreparationMoney::getDeliveryTime, dto.getDeliveryTime().get(0), dto.getDeliveryTime().get(1));
dto.setDeliveryTimeStart(dto.getDeliveryTime().get(0));
dto.setDeliveryTimeEnd(dto.getDeliveryTime().get(1));
}
dto.setDeliveryTimeStart(dto.getDeliveryTime().get(0));
dto.setDeliveryTimeEnd(dto.getDeliveryTime().get(1));
}
// qw.orderBy(Boolean.TRUE, Boolean.FALSE, PreparationMoney::getOrderTime);
PreparationDto preparationDto = new PreparationDto();
BeanUtils.copyProperties(dto,preparationDto);
PageHelper.startPage((int)dto.getCurrent(),(int)dto.getSize());
BeanUtils.copyProperties(dto, preparationDto);
PageHelper.startPage((int) dto.getCurrent(), (int) dto.getSize());
List<PreparationMoney> list = preparationMoneyMapper.selectPageList(preparationDto);
PageInfo<PreparationMoney> page = new PageInfo(list);
Page<PreparationMoney> pagenew = new Page<PreparationMoney>();
......@@ -116,18 +133,16 @@ public class PreparationMoneyServiceImpl extends BaseService<PreparationMoneyDto
/**
* 列表查询 示例
*/
public List<PreparationMoneyDto> queryForPreparationMoneyList() {
return this.queryForList("" , false);
public List<PreparationMoneyDto> queryForPreparationMoneyList() {
return this.queryForList("", false);
}
/**
* 获取发货单详情 by sequenceNbr
*
*
* @param sequenceNbr sequenceNbr
* @return {@link PreparationMoneyDto}
* @author Provence
* @throws
* @author Provence
*/
// public PreparationMoneyDto getObjectBySequenceNbr(Long sequenceNbr) {
// PreparationMoneyDto preparationMoneyDto = this.queryBySeq(sequenceNbr);
......@@ -145,7 +160,6 @@ public class PreparationMoneyServiceImpl extends BaseService<PreparationMoneyDto
// preparationMoneyDto.setPreparationMoneyLogs(preparationMoneyLogDtos.stream().map(o -> entityToDto(o)).collect(Collectors.toList()));
// return preparationMoneyDto;
// }
private PeasantHouseholdDto entityToDto(PeasantHousehold o) {
PeasantHouseholdDto dto = new PeasantHouseholdDto();
BeanUtils.copyProperties(o, dto);
......@@ -159,14 +173,14 @@ public class PreparationMoneyServiceImpl extends BaseService<PreparationMoneyDto
}
public PreparationMoney selectOnebyId(Long sequenceNbr){
public PreparationMoney selectOnebyId(Long sequenceNbr) {
LambdaUpdateWrapper<PreparationMoney> qu=new LambdaUpdateWrapper<>();
qu.eq(PreparationMoney::getSequenceNbr,sequenceNbr);
PreparationMoney preparationMoney= preparationMoneyMapper.selectOne(qu);
LambdaUpdateWrapper<DocumentStation> q=new LambdaUpdateWrapper<>();
q.eq(DocumentStation::getPreparationMoneyId,sequenceNbr);
List<DocumentStation> li=documentStationMapper.selectList(q);
LambdaUpdateWrapper<PreparationMoney> qu = new LambdaUpdateWrapper<>();
qu.eq(PreparationMoney::getSequenceNbr, sequenceNbr);
PreparationMoney preparationMoney = preparationMoneyMapper.selectOne(qu);
LambdaUpdateWrapper<DocumentStation> q = new LambdaUpdateWrapper<>();
q.eq(DocumentStation::getPreparationMoneyId, sequenceNbr);
List<DocumentStation> li = documentStationMapper.selectList(q);
preparationMoney.setPeasantHouseholdId(li);
return preparationMoney;
......@@ -174,10 +188,8 @@ public class PreparationMoneyServiceImpl extends BaseService<PreparationMoneyDto
}
@Transactional
public boolean zfPreparationMoney(Long sequenceNbr, AgencyUserModel agencyUserModel) {
public boolean zfPreparationMoney(Long sequenceNbr, AgencyUserModel agencyUserModel) {
// 记录操作日志
PreparationMoneyLog preparationMoneyLog = new PreparationMoneyLog();
......@@ -186,32 +198,38 @@ public class PreparationMoneyServiceImpl extends BaseService<PreparationMoneyDto
preparationMoneyLog.setExecutionTime(new Date());
preparationMoneyLog.setExecutor(agencyUserModel.getRealName());
preparationMoneyLogService.save(preparationMoneyLog);
LambdaUpdateWrapper<PreparationMoney> qu=new LambdaUpdateWrapper();
LambdaUpdateWrapper<PreparationMoney> qu = new LambdaUpdateWrapper();
qu.set(PreparationMoney::getDeliveryState, DeliveryStateeEnum.已作废.getCode());
qu.eq(PreparationMoney::getSequenceNbr,sequenceNbr);
return this.update(qu);
qu.eq(PreparationMoney::getSequenceNbr, sequenceNbr);
return this.update(qu);
}
public Map<String,Object> selectOnePreparationMoney(String sequenceNbr){
Map<String,Object> map =new HashMap<>();
LambdaUpdateWrapper<PreparationMoney> qu=new LambdaUpdateWrapper<>();
qu.eq(PreparationMoney::getSequenceNbr,sequenceNbr);
PreparationMoney preparationMoney= preparationMoneyMapper.selectOne(qu);
public Map<String, Object> selectOnePreparationMoney(String sequenceNbr) {
Map<String, Object> map = new HashMap<>();
LambdaUpdateWrapper<PreparationMoney> qu = new LambdaUpdateWrapper<>();
qu.eq(PreparationMoney::getSequenceNbr, sequenceNbr);
PreparationMoney preparationMoney = preparationMoneyMapper.selectOne(qu);
LambdaUpdateWrapper<HygfReplenishment> h = new LambdaUpdateWrapper<>();
h.eq(HygfReplenishment::getPreparationMoneyId,sequenceNbr);
List<HygfReplenishment> hygfReplenishments = hygfReplenishmentMapper.selectList(h);
if (CollectionUtil.isNotEmpty(hygfReplenishments) && hygfReplenishments.size()>0 ){
map.put("files",hygfReplenishments);
}
LambdaUpdateWrapper<DocumentStation> q=new LambdaUpdateWrapper<>();
q.eq(DocumentStation::getPreparationMoneyId,sequenceNbr);
List<DocumentStation> lih=documentStationMapper.selectList(q);
LambdaUpdateWrapper<DocumentStation> q = new LambdaUpdateWrapper<>();
q.eq(DocumentStation::getPreparationMoneyId, sequenceNbr);
List<DocumentStation> lih = documentStationMapper.selectList(q);
preparationMoney.setPeasantHouseholdId(lih);
LambdaUpdateWrapper<PreparationMoneyLog> q1=new LambdaUpdateWrapper<>();
q1.eq(PreparationMoneyLog::getPreparationMoneyId,sequenceNbr);
LambdaUpdateWrapper<PreparationMoneyLog> q1 = new LambdaUpdateWrapper<>();
q1.eq(PreparationMoneyLog::getPreparationMoneyId, sequenceNbr);
q1.orderByAsc(PreparationMoneyLog::getExecutionTime);
List<PreparationMoneyLog> liD=preparationMoneyLogMapper.selectList(q1);
List<PreparationMoneyLog> liD = preparationMoneyLogMapper.selectList(q1);
preparationMoney.setPreparationMoneyLog(liD);
List<Long> ids=new ArrayList<>();
List<Long> ids = new ArrayList<>();
for (DocumentStation documentStation : lih) {
ids.add(documentStation.getStationId());
}
......@@ -220,26 +238,26 @@ public class PreparationMoneyServiceImpl extends BaseService<PreparationMoneyDto
QueryWrapper<DesignInformation> designInformationQueryWrapper = new QueryWrapper<>();
designInformationQueryWrapper.in("peasant_household_id", ids);
List<DesignInformation> li = designInformationMapper.selectList(designInformationQueryWrapper);
DesignInformation designInformation=new DesignInformation();
//组件
List<Object> assembly=new ArrayList<>();
//逆变器
List<Object> inverter=new ArrayList<>();
//电表箱
List<Object> electricityMeter=new ArrayList<>();
//电缆
List<Object> cable=new ArrayList<>();
DesignInformation designInformation = new DesignInformation();
//组件
List<Object> assembly = new ArrayList<>();
//逆变器
List<Object> inverter = new ArrayList<>();
//电表箱
List<Object> electricityMeter = new ArrayList<>();
//电缆
List<Object> cable = new ArrayList<>();
for (DesignInformation des : li) {
if(des.getAssembly()!=null&&!des.getAssembly().isEmpty()){
if (des.getAssembly() != null && !des.getAssembly().isEmpty()) {
assembly.addAll(des.getAssembly());
}
if(des.getInverter()!=null&&!des.getInverter().isEmpty()){
if (des.getInverter() != null && !des.getInverter().isEmpty()) {
inverter.addAll(des.getInverter());
}
if(des.getElectricityMeter()!=null&&!des.getElectricityMeter().isEmpty()){
if (des.getElectricityMeter() != null && !des.getElectricityMeter().isEmpty()) {
electricityMeter.addAll(des.getElectricityMeter());
}
if(des.getCable()!=null&&!des.getCable().isEmpty()){
if (des.getCable() != null && !des.getCable().isEmpty()) {
cable.addAll(des.getCable());
}
}
......@@ -247,136 +265,132 @@ public class PreparationMoneyServiceImpl extends BaseService<PreparationMoneyDto
designInformation.setInverter(inverter);
designInformation.setElectricityMeter(electricityMeter);
designInformation.setCable(cable);
map.put("preparationMoney",preparationMoney);
map.put("designInformation",designInformation);
Map<String,Object> map1 =new HashMap<>();
map1.put("preparationMoneyLog",liD);
map.put("preparationMoneyLog",map1);
map.put("preparationMoney", preparationMoney);
map.put("designInformation", designInformation);
Map<String, Object> map1 = new HashMap<>();
map1.put("preparationMoneyLog", liD);
map.put("preparationMoneyLog", map1);
return map;
}
/**
* 保存或更新发货单
*
*
* @param model model
* @return {@link PreparationMoneyDto}
* @author Provence
* @throws
* @author Provence
*/
@Transactional
@Override
public PreparationMoney saveOrUpdateObject(PreparationMoney model, AgencyUserModel agencyUserModel) {
if(model.getSequenceNbr()==null){
//获取经销商单位信息
UnitInfo unitInfo= unitInfoService.getById(model.getAmosUnitId());
model.setAmosUnitName(unitInfo!=null?unitInfo.getName():null);
model.setAmosUnitOrgCode(unitInfo!=null?unitInfo.getAmosCompanyCode():null);
RegionalCompanies regionalCompanies= regionalCompaniesMapper.selectRegionName(model.getRegionalCompaniesSeq());
model.setRegionalCompaniesCode(regionalCompanies!=null?regionalCompanies.getRegionalCompaniesCode():null);
model.setRegionalCompaniesName(regionalCompanies!=null?regionalCompanies.getRegionalCompaniesName():null);
//收货区域信息
JSONArray regionName = getRegionName();
List<RegionModel> list = JSONArray.parseArray(regionName.toJSONString(), RegionModel.class);
String ConsigneeRegion="";
List<Integer> da=model.getConsigneeRegionCode();
if(da!=null&&!da.isEmpty()){
for (int i = 0; i < da.size(); i++) {
for (RegionModel re : list) {
if (re.getRegionCode().equals(Integer.valueOf(da.get(i)))) {
if(da.size()-1==i){
ConsigneeRegion = ConsigneeRegion + re.getRegionName();
}else{
ConsigneeRegion = ConsigneeRegion + re.getRegionName() + "-";
if (model.getSequenceNbr() == null) {
//获取经销商单位信息
UnitInfo unitInfo = unitInfoService.getById(model.getAmosUnitId());
model.setAmosUnitName(unitInfo != null ? unitInfo.getName() : null);
model.setAmosUnitOrgCode(unitInfo != null ? unitInfo.getAmosCompanyCode() : null);
RegionalCompanies regionalCompanies = regionalCompaniesMapper.selectRegionName(model.getRegionalCompaniesSeq());
model.setRegionalCompaniesCode(regionalCompanies != null ? regionalCompanies.getRegionalCompaniesCode() : null);
model.setRegionalCompaniesName(regionalCompanies != null ? regionalCompanies.getRegionalCompaniesName() : null);
//收货区域信息
JSONArray regionName = getRegionName();
List<RegionModel> list = JSONArray.parseArray(regionName.toJSONString(), RegionModel.class);
String ConsigneeRegion = "";
List<Integer> da = model.getConsigneeRegionCode();
if (da != null && !da.isEmpty()) {
for (int i = 0; i < da.size(); i++) {
for (RegionModel re : list) {
if (re.getRegionCode().equals(Integer.valueOf(da.get(i)))) {
if (da.size() - 1 == i) {
ConsigneeRegion = ConsigneeRegion + re.getRegionName();
} else {
ConsigneeRegion = ConsigneeRegion + re.getRegionName() + "-";
}
break;
}
break;
}
}
}
model.setConsigneeRegion(ConsigneeRegion);
}
//发货单号
String code= NumberUtil.getCode(CodeEnum.货单.getCode(),regionalCompanies.getCompanyCode(),regionalCompanies.getRegionalAddress());
model.setOddNumbers(code);
model.setConsigneeRegion(ConsigneeRegion);
}
//发货单号
if(model.getDeliveryFile()!=null&&!model.getDeliveryFile().isEmpty()){
model.setDeliveryState(DeliveryStateeEnum.已发货.getCode());
String code = NumberUtil.getCode(CodeEnum.货单.getCode(), regionalCompanies.getCompanyCode(), regionalCompanies.getRegionalAddress());
model.setOddNumbers(code);
if (model.getDeliveryFile() != null && !model.getDeliveryFile().isEmpty()) {
model.setDeliveryState(DeliveryStateeEnum.已发货.getCode());
model.setArrivalState(ArrivalStateeEnum.待收货.getCode());
model.setDeliveryTime(new Date());
}else{
model.setDeliveryState(DeliveryStateeEnum.待发货.getCode());
model.setArrivalState(DeliveryStateeEnum.待发货.getCode());
}
model.setArrivalState(ArrivalStateeEnum.待收货.getCode());
model.setDeliveryTime(new Date());
} else {
model.setDeliveryState(DeliveryStateeEnum.待发货.getCode());
model.setArrivalState(DeliveryStateeEnum.待发货.getCode());
}
//更新电站施工状态
LambdaUpdateWrapper<PeasantHousehold> up =new LambdaUpdateWrapper<>();
up.set(PeasantHousehold::getConstructionState,ArrivalStateeEnum.备货中.getCode());
List<DocumentStation> idsk= model.getPeasantHouseholdId();
List<Long> idsH=new ArrayList<>();
LambdaUpdateWrapper<PeasantHousehold> up = new LambdaUpdateWrapper<>();
up.set(PeasantHousehold::getConstructionState, ArrivalStateeEnum.备货中.getCode());
List<DocumentStation> idsk = model.getPeasantHouseholdId();
List<Long> idsH = new ArrayList<>();
for (DocumentStation documentStation : idsk) {
idsH.add(documentStation.getStationId());
}
up.in(PeasantHousehold::getSequenceNbr,idsH);
peasantHouseholdMapper.update(null,up);
up.in(PeasantHousehold::getSequenceNbr, idsH);
peasantHouseholdMapper.update(null, up);
preparationMoneyMapper.insert(model);
//电站信息存储
List<DocumentStation> ids= model.getPeasantHouseholdId();
List<DocumentStation> listDocumentStation= new ArrayList<>();
for (DocumentStation documentStation : ids) {
documentStation.setPreparationMoneyId(model.getSequenceNbr());
listDocumentStation.add(documentStation);
}
documentStationService.saveBatch(listDocumentStation);
preparationMoneyMapper.insert(model);
//电站信息存储
List<DocumentStation> ids = model.getPeasantHouseholdId();
List<DocumentStation> listDocumentStation = new ArrayList<>();
for (DocumentStation documentStation : ids) {
documentStation.setPreparationMoneyId(model.getSequenceNbr());
listDocumentStation.add(documentStation);
}
documentStationService.saveBatch(listDocumentStation);
// 记录操作日志
PreparationMoneyLog preparationMoneyLog = new PreparationMoneyLog();
preparationMoneyLog.setPreparationMoneyId(model.getSequenceNbr());
preparationMoneyLog.setOperationContent(PreparationEnum.创建发货单.getCode());
preparationMoneyLog.setExecutionTime(new Date());
preparationMoneyLog.setExecutor(agencyUserModel.getRealName());
preparationMoneyLogService.save(preparationMoneyLog);
if(model.getArrivalFile()!=null&&!model.getArrivalFile().isEmpty()){
PreparationMoneyLog preparationMoneyLog1 = new PreparationMoneyLog();
preparationMoneyLog1.setPreparationMoneyId(model.getSequenceNbr());
preparationMoneyLog1.setOperationContent(PreparationEnum.确认发货.getCode());
preparationMoneyLog1.setExecutionTime(new Date());
preparationMoneyLog1.setExecutor(agencyUserModel.getRealName());
preparationMoneyLogService.save(preparationMoneyLog1);
// 记录操作日志
PreparationMoneyLog preparationMoneyLog = new PreparationMoneyLog();
preparationMoneyLog.setPreparationMoneyId(model.getSequenceNbr());
preparationMoneyLog.setOperationContent(PreparationEnum.创建发货单.getCode());
preparationMoneyLog.setExecutionTime(new Date());
preparationMoneyLog.setExecutor(agencyUserModel.getRealName());
preparationMoneyLogService.save(preparationMoneyLog);
if (model.getArrivalFile() != null && !model.getArrivalFile().isEmpty()) {
PreparationMoneyLog preparationMoneyLog1 = new PreparationMoneyLog();
preparationMoneyLog1.setPreparationMoneyId(model.getSequenceNbr());
preparationMoneyLog1.setOperationContent(PreparationEnum.确认发货.getCode());
preparationMoneyLog1.setExecutionTime(new Date());
preparationMoneyLog1.setExecutor(agencyUserModel.getRealName());
preparationMoneyLogService.save(preparationMoneyLog1);
}
}else{
}
} else {
//获取经销商单位信息
UnitInfo unitInfo= unitInfoService.getById(model.getAmosUnitId());
model.setAmosUnitName(unitInfo!=null?unitInfo.getName():null);
model.setAmosUnitOrgCode(unitInfo!=null?unitInfo.getAmosCompanyCode():null);
RegionalCompanies regionalCompanies= regionalCompaniesMapper.selectRegionName(model.getRegionalCompaniesSeq());
model.setRegionalCompaniesCode(regionalCompanies!=null?regionalCompanies.getRegionalCompaniesCode():null);
model.setRegionalCompaniesName(regionalCompanies!=null?regionalCompanies.getRegionalCompaniesName():null);
UnitInfo unitInfo = unitInfoService.getById(model.getAmosUnitId());
model.setAmosUnitName(unitInfo != null ? unitInfo.getName() : null);
model.setAmosUnitOrgCode(unitInfo != null ? unitInfo.getAmosCompanyCode() : null);
RegionalCompanies regionalCompanies = regionalCompaniesMapper.selectRegionName(model.getRegionalCompaniesSeq());
model.setRegionalCompaniesCode(regionalCompanies != null ? regionalCompanies.getRegionalCompaniesCode() : null);
model.setRegionalCompaniesName(regionalCompanies != null ? regionalCompanies.getRegionalCompaniesName() : null);
//收货区域信息
JSONArray regionName = getRegionName();
List<RegionModel> list = JSONArray.parseArray(regionName.toJSONString(), RegionModel.class);
String ConsigneeRegion="";
List<Integer> da=model.getConsigneeRegionCode();
if(da!=null&&!da.isEmpty()){
String ConsigneeRegion = "";
List<Integer> da = model.getConsigneeRegionCode();
if (da != null && !da.isEmpty()) {
for (int i = 0; i < da.size(); i++) {
for (RegionModel re : list) {
if (re.getRegionCode().equals(Integer.valueOf(da.get(i)))) {
if(da.size()-1==i){
if (da.size() - 1 == i) {
ConsigneeRegion = ConsigneeRegion + re.getRegionName();
}else{
} else {
ConsigneeRegion = ConsigneeRegion + re.getRegionName() + "-";
}
break;
......@@ -387,81 +401,81 @@ public class PreparationMoneyServiceImpl extends BaseService<PreparationMoneyDto
model.setConsigneeRegion(ConsigneeRegion);
}
if(model.getArrivalFile()!=null&&!model.getArrivalFile().isEmpty()){
if (model.getArrivalFile() != null && !model.getArrivalFile().isEmpty()) {
model.setDeliveryState(ArrivalStateeEnum.已收货.getCode());
//更新电站施工状态
LambdaUpdateWrapper<PeasantHousehold> up =new LambdaUpdateWrapper<>();
up.set(PeasantHousehold::getConstructionState,ArrivalStateeEnum.备货完成.getCode());
List<DocumentStation> idsk= model.getPeasantHouseholdId();
List<Long> idsH=new ArrayList<>();
LambdaUpdateWrapper<PeasantHousehold> up = new LambdaUpdateWrapper<>();
up.set(PeasantHousehold::getConstructionState, ArrivalStateeEnum.备货完成.getCode());
List<DocumentStation> idsk = model.getPeasantHouseholdId();
List<Long> idsH = new ArrayList<>();
for (DocumentStation documentStation : idsk) {
idsH.add(documentStation.getStationId());
}
up.in(PeasantHousehold::getSequenceNbr,idsH);
peasantHouseholdMapper.update(null,up);
up.in(PeasantHousehold::getSequenceNbr, idsH);
peasantHouseholdMapper.update(null, up);
}else{
} else {
if(model.getDeliveryFile()!=null&&!model.getDeliveryFile().isEmpty()){
if (model.getDeliveryFile() != null && !model.getDeliveryFile().isEmpty()) {
model.setDeliveryState(DeliveryStateeEnum.已发货.getCode());
//更新电站施工状态
LambdaUpdateWrapper<PeasantHousehold> up =new LambdaUpdateWrapper<>();
up.set(PeasantHousehold::getConstructionState,ArrivalStateeEnum.备货中.getCode());
List<DocumentStation> idsk= model.getPeasantHouseholdId();
List<Long> idsH=new ArrayList<>();
LambdaUpdateWrapper<PeasantHousehold> up = new LambdaUpdateWrapper<>();
up.set(PeasantHousehold::getConstructionState, ArrivalStateeEnum.备货中.getCode());
List<DocumentStation> idsk = model.getPeasantHouseholdId();
List<Long> idsH = new ArrayList<>();
for (DocumentStation documentStation : idsk) {
idsH.add(documentStation.getStationId());
}
up.in(PeasantHousehold::getSequenceNbr,idsH);
peasantHouseholdMapper.update(null,up);
up.in(PeasantHousehold::getSequenceNbr, idsH);
peasantHouseholdMapper.update(null, up);
model.setArrivalState(ArrivalStateeEnum.待收货.getCode());
model.setDeliveryTime(new Date());
}else{
} else {
model.setDeliveryState(DeliveryStateeEnum.待发货.getCode());
model.setArrivalState(DeliveryStateeEnum.待发货.getCode());
//历史电站
LambdaQueryWrapper<DocumentStation> up=new LambdaQueryWrapper();
up.eq(DocumentStation::getPreparationMoneyId,model.getSequenceNbr());
List<DocumentStation> idsk= documentStationMapper.selectList(up);
LambdaQueryWrapper<DocumentStation> up = new LambdaQueryWrapper();
up.eq(DocumentStation::getPreparationMoneyId, model.getSequenceNbr());
List<DocumentStation> idsk = documentStationMapper.selectList(up);
//更新电站施工状态
LambdaUpdateWrapper<PeasantHousehold> up1 =new LambdaUpdateWrapper<>();
up1.set(PeasantHousehold::getConstructionState,ArrivalStateeEnum.勘察完成.getCode());
List<Long> idsH=new ArrayList<>();
LambdaUpdateWrapper<PeasantHousehold> up1 = new LambdaUpdateWrapper<>();
up1.set(PeasantHousehold::getConstructionState, ArrivalStateeEnum.勘察完成.getCode());
List<Long> idsH = new ArrayList<>();
for (DocumentStation documentStation : idsk) {
idsH.add(documentStation.getStationId());
}
up1.in(PeasantHousehold::getSequenceNbr,idsH);
peasantHouseholdMapper.update(null,up1);
up1.in(PeasantHousehold::getSequenceNbr, idsH);
peasantHouseholdMapper.update(null, up1);
//更新 //新选电站状态
LambdaUpdateWrapper<PeasantHousehold> up2 =new LambdaUpdateWrapper<>();
up2.set(PeasantHousehold::getConstructionState,ArrivalStateeEnum.备货中.getCode());
List<DocumentStation> idsk2= model.getPeasantHouseholdId();
List<Long> idsH2=new ArrayList<>();
LambdaUpdateWrapper<PeasantHousehold> up2 = new LambdaUpdateWrapper<>();
up2.set(PeasantHousehold::getConstructionState, ArrivalStateeEnum.备货中.getCode());
List<DocumentStation> idsk2 = model.getPeasantHouseholdId();
List<Long> idsH2 = new ArrayList<>();
for (DocumentStation documentStation : idsk2) {
idsH2.add(documentStation.getStationId());
}
up2.in(PeasantHousehold::getSequenceNbr,idsH2);
peasantHouseholdMapper.update(null,up2);
up2.in(PeasantHousehold::getSequenceNbr, idsH2);
peasantHouseholdMapper.update(null, up2);
}
}
preparationMoneyMapper.updateById(model);
//电站信息存储
LambdaUpdateWrapper<DocumentStation> up=new LambdaUpdateWrapper();
up.eq(DocumentStation::getPreparationMoneyId,model.getSequenceNbr());
LambdaUpdateWrapper<DocumentStation> up = new LambdaUpdateWrapper();
up.eq(DocumentStation::getPreparationMoneyId, model.getSequenceNbr());
documentStationMapper.delete(up);
List<DocumentStation> ids= model.getPeasantHouseholdId();
List<DocumentStation> listDocumentStation= new ArrayList<>();
List<DocumentStation> ids = model.getPeasantHouseholdId();
List<DocumentStation> listDocumentStation = new ArrayList<>();
for (DocumentStation documentStation : ids) {
documentStation.setPreparationMoneyId(model.getSequenceNbr());
listDocumentStation.add(documentStation);
......@@ -470,19 +484,19 @@ public class PreparationMoneyServiceImpl extends BaseService<PreparationMoneyDto
documentStationService.saveBatch(listDocumentStation);
// 记录操作日志
if(model.getArrivalFile()!=null&&!model.getArrivalFile().isEmpty()){
if (model.getArrivalFile() != null && !model.getArrivalFile().isEmpty()) {
PreparationMoneyLog preparationMoneyLog1 = new PreparationMoneyLog();
preparationMoneyLog1.setPreparationMoneyId(model.getSequenceNbr());
preparationMoneyLog1.setOperationContent(PreparationEnum.确认收货.getCode());
preparationMoneyLog1.setExecutionTime(new Date());
preparationMoneyLog1.setExecutor(agencyUserModel.getRealName());
preparationMoneyLogService.save(preparationMoneyLog1);
}else{
} else {
PreparationMoneyLog preparationMoneyLog2 = new PreparationMoneyLog();
preparationMoneyLog2.setPreparationMoneyId(model.getSequenceNbr());
if(model.getDeliveryFile()!=null&&!model.getDeliveryFile().isEmpty()){
if (model.getDeliveryFile() != null && !model.getDeliveryFile().isEmpty()) {
preparationMoneyLog2.setOperationContent(PreparationEnum.确认发货.getCode());
}else{
} else {
preparationMoneyLog2.setOperationContent(PreparationEnum.编辑货单.getCode());
}
......@@ -496,6 +510,188 @@ public class PreparationMoneyServiceImpl extends BaseService<PreparationMoneyDto
return model;
}
public PreparationMoney saveOrUpdateObjectNew(PreparationMoney model, AgencyUserModel agencyUserModel, String isSubmit) {
if (model.getSequenceNbr() == null) {
//获取经销商单位信息
UnitInfo unitInfo = unitInfoService.getById(model.getAmosUnitId());
model.setAmosUnitName(unitInfo != null ? unitInfo.getName() : null);
model.setAmosUnitOrgCode(unitInfo != null ? unitInfo.getAmosCompanyCode() : null);
RegionalCompanies regionalCompanies = regionalCompaniesMapper.selectRegionName(model.getRegionalCompaniesSeq());
model.setRegionalCompaniesCode(regionalCompanies != null ? regionalCompanies.getRegionalCompaniesCode() : null);
model.setRegionalCompaniesName(regionalCompanies != null ? regionalCompanies.getRegionalCompaniesName() : null);
//收货区域信息
JSONArray regionName = getRegionName();
List<RegionModel> list = JSONArray.parseArray(regionName.toJSONString(), RegionModel.class);
String ConsigneeRegion = "";
List<Integer> da = model.getConsigneeRegionCode();
if (da != null && !da.isEmpty()) {
for (int i = 0; i < da.size(); i++) {
for (RegionModel re : list) {
if (re.getRegionCode().equals(Integer.valueOf(da.get(i)))) {
if (da.size() - 1 == i) {
ConsigneeRegion = ConsigneeRegion + re.getRegionName();
} else {
ConsigneeRegion = ConsigneeRegion + re.getRegionName() + "-";
}
break;
}
}
}
model.setConsigneeRegion(ConsigneeRegion);
}
//发货单号
String code = NumberUtil.getCode(CodeEnum.货单.getCode(), regionalCompanies.getCompanyCode(), regionalCompanies.getRegionalAddress());
model.setOddNumbers(code);
// if(model.getDeliveryFile()!=null&&!model.getDeliveryFile().isEmpty() && isSubmit.equals("0")){
//
// model.setDeliveryState(DeliveryStateeEnum.已发货.getCode());
// model.setArrivalState(ArrivalStateeEnum.待收货.getCode());
// model.setDeliveryTime(new Date());
// }else{
// model.setDeliveryState(DeliveryStateeEnum.待提交.getCode());
// model.setArrivalState(DeliveryStateeEnum.待发货.getCode());
// }
//更新电站施工状态
LambdaUpdateWrapper<PeasantHousehold> up = new LambdaUpdateWrapper<>();
up.set(PeasantHousehold::getConstructionState, ArrivalStateeEnum.备货中.getCode());
List<DocumentStation> idsk = model.getPeasantHouseholdId();
List<Long> idsH = new ArrayList<>();
for (DocumentStation documentStation : idsk) {
idsH.add(documentStation.getStationId());
}
up.in(PeasantHousehold::getSequenceNbr, idsH);
preparationMoneyMapper.insert(model);
if (isSubmit.equals("0")) {
up.set(PeasantHousehold::getPreparationMoneyState, DeliveryStateeEnum.已发货.getCode());
//开启工作流 并执行一步
ActWorkflowBatchDTO actWorkflowBatchDTO = new ActWorkflowBatchDTO();
List<ActWorkflowStartDTO> params = new ArrayList<>();
ActWorkflowStartDTO dto = new ActWorkflowStartDTO();
dto.setProcessDefinitionKey(PROCESSKEY);
dto.setBusinessKey(String.valueOf(new Date().getTime()));
dto.setCompleteFirstTask(true);
HashMap<String, Object> map = new HashMap<>();
map.put("approvalStatus", "0");
dto.setVariables(map);
params.add(dto);
actWorkflowBatchDTO.setProcess(params);
List<ProcessTaskDTO> processTaskDTOS = workFlowService.startBatch(actWorkflowBatchDTO);
List<WorkflowResultDto> workflowResultDtos = workFlowService.buildWorkFlowInfo(processTaskDTOS);
WorkflowResultDto workflowResultDto = workflowResultDtos.get(0);
HygfPreparationMoneyAuditingDto hygfPreparationMoneyAuditingDto = new HygfPreparationMoneyAuditingDto();
BeanUtils.copyProperties(workflowResultDto, hygfPreparationMoneyAuditingDto);
hygfPreparationMoneyAuditingDto.setPreparationMoneyId(model.getSequenceNbr());
hygfPreparationMoneyAuditingDto.setPromoter(RequestContext.getExeUserId());
hygfPreparationMoneyAuditingService.createWithModel(hygfPreparationMoneyAuditingDto);
//提交时 赋值发货时间及订单状态
model.setDeliveryTime(new Date());
model.setOrderStatus(DeliveryStateeEnum.待确认.getName());
} else {
up.set(PeasantHousehold::getPreparationMoneyState, DeliveryStateeEnum.暂存发货.getCode());
model.setOrderStatus(DeliveryStateeEnum.待提交.getName());
}
peasantHouseholdMapper.update(null, up);
preparationMoneyMapper.updateById(model);
//电站信息存储
List<DocumentStation> ids = model.getPeasantHouseholdId();
List<DocumentStation> listDocumentStation = new ArrayList<>();
for (DocumentStation documentStation : ids) {
documentStation.setPreparationMoneyId(model.getSequenceNbr());
listDocumentStation.add(documentStation);
}
documentStationService.saveBatch(listDocumentStation);
} else {
//获取经销商单位信息
UnitInfo unitInfo = unitInfoService.getById(model.getAmosUnitId());
model.setAmosUnitName(unitInfo != null ? unitInfo.getName() : null);
model.setAmosUnitOrgCode(unitInfo != null ? unitInfo.getAmosCompanyCode() : null);
RegionalCompanies regionalCompanies = regionalCompaniesMapper.selectRegionName(model.getRegionalCompaniesSeq());
model.setRegionalCompaniesCode(regionalCompanies != null ? regionalCompanies.getRegionalCompaniesCode() : null);
model.setRegionalCompaniesName(regionalCompanies != null ? regionalCompanies.getRegionalCompaniesName() : null);
//收货区域信息
JSONArray regionName = getRegionName();
List<RegionModel> list = JSONArray.parseArray(regionName.toJSONString(), RegionModel.class);
String ConsigneeRegion = "";
List<Integer> da = model.getConsigneeRegionCode();
if (da != null && !da.isEmpty()) {
for (int i = 0; i < da.size(); i++) {
for (RegionModel re : list) {
if (re.getRegionCode().equals(Integer.valueOf(da.get(i)))) {
if (da.size() - 1 == i) {
ConsigneeRegion = ConsigneeRegion + re.getRegionName();
} else {
ConsigneeRegion = ConsigneeRegion + re.getRegionName() + "-";
}
break;
}
}
}
model.setConsigneeRegion(ConsigneeRegion);
}
LambdaUpdateWrapper<PeasantHousehold> up = new LambdaUpdateWrapper<>();
if (isSubmit.equals("0")) {
//更新电站施工状态
up.set(PeasantHousehold::getPreparationMoneyState, DeliveryStateeEnum.已发货.getCode());
up.set(PeasantHousehold::getConstructionState, DeliveryStateeEnum.已发货.getCode());
//提交时 赋值发货时间及订单状态
model.setDeliveryTime(new Date());
model.setOrderStatus(DeliveryStateeEnum.待确认.getName());
model.setDeliveryState(DeliveryStateeEnum.已发货.getCode());
//开启工作流 并执行一步
ActWorkflowBatchDTO actWorkflowBatchDTO = new ActWorkflowBatchDTO();
List<ActWorkflowStartDTO> params = new ArrayList<>();
ActWorkflowStartDTO dto = new ActWorkflowStartDTO();
dto.setProcessDefinitionKey(PROCESSKEY);
dto.setBusinessKey(String.valueOf(new Date().getTime()));
dto.setCompleteFirstTask(true);
HashMap<String, Object> map = new HashMap<>();
map.put("approvalStatus", "0");
dto.setVariables(map);
params.add(dto);
actWorkflowBatchDTO.setProcess(params);
List<ProcessTaskDTO> processTaskDTOS = workFlowService.startBatch(actWorkflowBatchDTO);
List<WorkflowResultDto> workflowResultDtos = workFlowService.buildWorkFlowInfo(processTaskDTOS);
WorkflowResultDto workflowResultDto = workflowResultDtos.get(0);
HygfPreparationMoneyAuditingDto hygfPreparationMoneyAuditingDto = new HygfPreparationMoneyAuditingDto();
BeanUtils.copyProperties(workflowResultDto, hygfPreparationMoneyAuditingDto);
hygfPreparationMoneyAuditingDto.setPreparationMoneyId(model.getSequenceNbr());
hygfPreparationMoneyAuditingDto.setPromoter(RequestContext.getExeUserId());
hygfPreparationMoneyAuditingService.createWithModel(hygfPreparationMoneyAuditingDto);
}
preparationMoneyMapper.updateById(model);
//电站信息存储
LambdaUpdateWrapper<DocumentStation> up3 = new LambdaUpdateWrapper();
up3.eq(DocumentStation::getPreparationMoneyId, model.getSequenceNbr());
documentStationMapper.delete(up3);
List<DocumentStation> ids = model.getPeasantHouseholdId();
List<DocumentStation> listDocumentStation = new ArrayList<>();
for (DocumentStation documentStation : ids) {
documentStation.setPreparationMoneyId(model.getSequenceNbr());
listDocumentStation.add(documentStation);
}
documentStationService.saveBatch(listDocumentStation);
}
return model;
}
private DocumentStation buildDocumentStations(Long sequenceNbr, PeasantHouseholdDto dto) {
String recUserId = amosRequestContext.getUserId();
String recUserName = amosRequestContext.getUserName();
......@@ -506,6 +702,7 @@ public class PreparationMoneyServiceImpl extends BaseService<PreparationMoneyDto
documentStation.setRecUserName(recUserName);
return documentStation;
}
public JSONArray getRegionName() {
JSONArray jsonArray = new JSONArray();
if (redisUtil.hasKey(regionRedis)) {
......@@ -536,15 +733,15 @@ public class PreparationMoneyServiceImpl extends BaseService<PreparationMoneyDto
}
return jsonArray;
}
/**
* 更新发货单状态
*
*
* @param sequenceNbr 发货单ID
* @param sequenceNbr 发货单ID
* @param operationType 操作类型(RECEIPT-确认收货, DELIVERY-发货, DISCARD-废弃)
* @return {@link Boolean}
* @author Provence
* @throws
* @author Provence
*/
@Override
public Boolean updatePreparationMoneyStatus(Long sequenceNbr, String operationType) {
......@@ -590,11 +787,10 @@ public class PreparationMoneyServiceImpl extends BaseService<PreparationMoneyDto
/**
* 根据前端选择的发货电站ID列表计算BOM清单价格
*
*
* @param powerHouseholdIds 发货电站ID
* @return {@link PreparationMoneyDto}
* @author Provence
* @throws
* @author Provence
*/
public PreparationMoneyDto caculateShippingPriceByPowerHouseHoldIds(List<Long> powerHouseholdIds) {
List<DocumentBom> documentBoms = documentBomService.assembleDocumentBom(powerHouseholdIds);
......@@ -604,11 +800,10 @@ public class PreparationMoneyServiceImpl extends BaseService<PreparationMoneyDto
/**
* 根据前端选择的发货电站ID列表计算BOM清单价格
*
*
* @param documentBoms BOM清单
* @return {@link PreparationMoneyDto}
* @author Provence
* @throws
* @author Provence
*/
public PreparationMoneyDto caculateShippingPrice(List<DocumentBom> documentBoms) {
// 获取BOM清单数据
......@@ -627,7 +822,215 @@ public class PreparationMoneyServiceImpl extends BaseService<PreparationMoneyDto
// preparationMoneyDto.setPromotion(0D);//促销
// preparationMoneyDto.setContractPrice(0D);//合同价格 == 确认
// preparationMoneyDto.setTotalPrice(totalPrice.doubleValue());
// return preparationMoneyDto;
// return preparationMoneyDto;
return null;
}
@GlobalTransactional
public void uploadVoucher(PreparationMoney model, String instanceId, String isSubmit) {
//经销商暂存则只更新发货单属性 不进行业务推动
if ("1".equals(isSubmit)) {
preparationMoneyMapper.updateById(model);
} else {
model.setDeliveryState(ArrivalStateeEnum.已收货.getCode());
model.setOrderStatus(DeliveryStateeEnum.待审核.getName());
//更新电站施工状态
LambdaUpdateWrapper<PeasantHousehold> up = new LambdaUpdateWrapper<>();
up.set(PeasantHousehold::getPreparationMoneyState, ArrivalStateeEnum.已收货.getName());
up.set(PeasantHousehold::getConstructionState, ArrivalStateeEnum.已收货.getName());
List<DocumentStation> idsk = model.getPeasantHouseholdId();
List<Long> idsH = new ArrayList<>();
for (DocumentStation documentStation : idsk) {
idsH.add(documentStation.getStationId());
}
up.in(PeasantHousehold::getSequenceNbr, idsH);
peasantHouseholdMapper.update(null, up);
preparationMoneyMapper.updateById(model);
//执行工作流并保存记录 上传收货走入下一节点 表达式=0
this.wofkflowExcute(instanceId, "0","");
}
}
public void excuteFlow( String instanceId, Map<String, Object> kv,Long sequenceNbr) {
PreparationMoney model = preparationMoneyMapper.selectById(sequenceNbr);
model.setDeliveryState(ArrivalStateeEnum.已收货.getCode());
//更新电站施工状态
LambdaUpdateWrapper<PeasantHousehold> up = new LambdaUpdateWrapper<>();
List<DocumentStation> idsk = model.getPeasantHouseholdId();
List<Long> idsH = new ArrayList<>();
for (DocumentStation documentStation : idsk) {
idsH.add(documentStation.getStationId());
}
if (kv.getOrDefault("approvalStatus", "").equals("0")) {
up.set(PeasantHousehold::getPreparationMoneyState, ArrivalStateeEnum.备货完成.getName());
up.set(PeasantHousehold::getConstructionState, ArrivalStateeEnum.备货完成.getName());
model.setOrderStatus(DeliveryStateeEnum.已完成.getName());
} else if (kv.getOrDefault("approvalStatus", "").equals("1")) {
up.set(PeasantHousehold::getPreparationMoneyState, ArrivalStateeEnum.待收货.getName());
up.set(PeasantHousehold::getConstructionState, ArrivalStateeEnum.待收货.getName());
model.setArrivalState(ArrivalStateeEnum.待收货.getName());
model.setDeliveryState(DeliveryStateeEnum.已发货.getName());
model.setOrderStatus(DeliveryStateeEnum.待确认.getName());
}
up.in(PeasantHousehold::getSequenceNbr, idsH);
peasantHouseholdMapper.update(null, up);
//更新发货单信息
preparationMoneyMapper.updateById(model);
//执行工作流并保存记录
this.wofkflowExcute(instanceId, kv.getOrDefault("approvalStatus", "").toString(),kv.getOrDefault("comment","").toString());
}
public void wofkflowExcute(String instanceId, String approvalStatus,String comment) {
LambdaQueryWrapper<HygfPreparationMoneyAuditing> query = new LambdaQueryWrapper<>();
query.eq(HygfPreparationMoneyAuditing::getInstanceId, instanceId);
query.orderByDesc(BaseEntity::getRecDate);
query.last("limit 1");
HygfPreparationMoneyAuditing hygfPreparationMoneyAuditing = hygfPreparationMoneyAuditingService.getBaseMapper().selectOne(query);
//组装信息
TaskResultDTO task = new TaskResultDTO();
task.setTaskId(hygfPreparationMoneyAuditing.getNextTaskId());
HashMap<String, Object> map = new HashMap<>();
HygfPreparationMoneyAuditingDto preparationMoneyAuditpDto = new HygfPreparationMoneyAuditingDto();
task.setResultCode("approvalStatus");
map.put("approvalStatus", approvalStatus);
task.setComment(comment == null?"":comment);
task.setVariable(map);
//执行流程
ProcessTaskDTO processTaskDTO = workFlowService.complete(hygfPreparationMoneyAuditing.getNextTaskId(), task);
List<WorkflowResultDto> workflowResultDtos = workFlowService.buildWorkFlowInfo(CollectionUtil.newArrayList(processTaskDTO));
WorkflowResultDto workflowResultDto = workflowResultDtos.get(0);
BeanUtils.copyProperties(workflowResultDto, preparationMoneyAuditpDto);
preparationMoneyAuditpDto.setPreparationMoneyId(hygfPreparationMoneyAuditing.getPreparationMoneyId());
preparationMoneyAuditpDto.setPromoter(hygfPreparationMoneyAuditing.getPromoter());
if (null == preparationMoneyAuditpDto.getInstanceId()) {
preparationMoneyAuditpDto.setInstanceId(hygfPreparationMoneyAuditing.getInstanceId());
}
hygfPreparationMoneyAuditingService.createWithModel(preparationMoneyAuditpDto);
}
public void replenishmentSubmit(Long preparationMoneyId) {
LambdaQueryWrapper<HygfPreparationMoneyAuditing> lambda = new LambdaQueryWrapper();
lambda.eq(HygfPreparationMoneyAuditing::getPreparationMoneyId, preparationMoneyId);
lambda.orderByDesc(BaseEntity::getRecDate);
lambda.last("Limit 1");
HygfPreparationMoneyAuditing auditing = hygfPreparationMoneyAuditingService.getBaseMapper().selectOne(lambda);
PreparationMoney preparationMoney = preparationMoneyMapper.selectById(preparationMoneyId);
preparationMoney.setOrderStatus("申请补货");
preparationMoneyMapper.updateById(preparationMoney);
this.wofkflowExcute(auditing.getInstanceId(), "1","");
}
@GlobalTransactional
public void replenishmentRollback(Long sequenceNbr) {
LambdaQueryWrapper<HygfPreparationMoneyAuditing> lambda = new LambdaQueryWrapper();
lambda.eq(HygfPreparationMoneyAuditing::getPreparationMoneyId, sequenceNbr);
lambda.orderByDesc(BaseEntity::getRecDate);
lambda.last("Limit 1");
HygfPreparationMoneyAuditing hygfPreparationMoneyAuditing = hygfPreparationMoneyAuditingService.getBaseMapper().selectOne(lambda);
//将发货单状态修改
PreparationMoney preparationMoney = preparationMoneyMapper.selectById(sequenceNbr);
preparationMoney.setOrderStatus(DeliveryStateeEnum.待确认.getName());
preparationMoneyMapper.updateById(preparationMoney);
//撤回工作流并创建记录
ProcessTaskDTO processTaskDTO = workFlowService.rollBackTask(hygfPreparationMoneyAuditing.getInstanceId());
List<WorkflowResultDto> workflowResultDtos = workFlowService.buildWorkFlowInfo(CollectionUtil.newArrayList(processTaskDTO));
WorkflowResultDto workflowResultDto = workflowResultDtos.get(0);
HygfPreparationMoneyAuditingDto preparationMoneyAuditpDto = new HygfPreparationMoneyAuditingDto();
BeanUtils.copyProperties(workflowResultDto, preparationMoneyAuditpDto);
preparationMoneyAuditpDto.setPreparationMoneyId(sequenceNbr);
preparationMoneyAuditpDto.setPromoter(preparationMoney.getRecUserId());
if (null == preparationMoneyAuditpDto.getInstanceId()) {
preparationMoneyAuditpDto.setInstanceId(hygfPreparationMoneyAuditing.getInstanceId());
}
hygfPreparationMoneyAuditingService.createWithModel(preparationMoneyAuditpDto);
//删除最新的补货单
QueryWrapper<HygfReplenishment> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("preparation_money_id", sequenceNbr);
queryWrapper.orderByDesc("rec_date");
queryWrapper.last("Limit 1");
HygfReplenishment hygfReplenishment = hygfReplenishmentMapper.selectOne(queryWrapper);
QueryWrapper<HygfReplenishment> deleteWapper = new QueryWrapper<>();
deleteWapper.eq("sequence_nbr", hygfReplenishment.getSequenceNbr());
hygfReplenishmentMapper.delete(deleteWapper);
}
//补货审核
public void replenishmentAudit(Long sequenceNbr,Map<String, Object> kv) {
PreparationMoney preparationMoney = preparationMoneyMapper.selectById(sequenceNbr);
LambdaUpdateWrapper<PeasantHousehold> up = new LambdaUpdateWrapper<>();
if (kv.get("approvalStatus").toString().equals("0")){
preparationMoney.setOrderStatus(DeliveryStateeEnum.待补货.getName());
up.set(PeasantHousehold::getPreparationMoneyState, DeliveryStateeEnum.待补货.getName());
up.set(PeasantHousehold::getConstructionState, DeliveryStateeEnum.待补货.getName());
}else {
preparationMoney.setOrderStatus(DeliveryStateeEnum.待确认.getName());
}
this.wofkflowExcute(kv.get("instanceId").toString(), kv.get("approvalStatus").toString(),kv.getOrDefault("comment","").toString());
}
public PreparationMoney submitOrder(PreparationMoney model, String instanceId, String isSubmit){
if ("1".equals(isSubmit)){
preparationMoneyMapper.updateById(model);
}else {
//isSubmit = 0 表示提交 也对应工作流表达式 可直接使用
model.setOrderStatus(DeliveryStateeEnum.待确认.getCode());
preparationMoneyMapper.updateById(model);
LambdaUpdateWrapper<PeasantHousehold> up = new LambdaUpdateWrapper<>();
up.set(PeasantHousehold::getPreparationMoneyState, ArrivalStateeEnum.待收货.getName());
up.set(PeasantHousehold::getConstructionState, ArrivalStateeEnum.待收货.getName());
this.wofkflowExcute(instanceId,isSubmit,"");
}
//电站信息存储
LambdaUpdateWrapper<DocumentStation> up3 = new LambdaUpdateWrapper();
up3.eq(DocumentStation::getPreparationMoneyId, model.getSequenceNbr());
documentStationMapper.delete(up3);
List<DocumentStation> ids = model.getPeasantHouseholdId();
List<DocumentStation> listDocumentStation = new ArrayList<>();
for (DocumentStation documentStation : ids) {
documentStation.setPreparationMoneyId(model.getSequenceNbr());
listDocumentStation.add(documentStation);
}
documentStationService.saveBatch(listDocumentStation);
return model;
}
public IPage<Map<String,Object>> preparationStation(Integer current, Integer size, String preparationMoneyState,String ownersName,String regionalcompaniesSeq,String developerId,String state){
PageHelper.startPage(current, size);
List<Map<String, Object>> resultPage = preparationMoneyMapper.preparationStation(preparationMoneyState,ownersName,regionalcompaniesSeq,developerId,state);
PageInfo<Map<String, Object>> page = new PageInfo(resultPage);
Page<Map<String, Object>> pagenew = new Page<>();
pagenew.setTotal(page.getTotal());
pagenew.setSize(size);
pagenew.setRecords(page.getList());
pagenew.setCurrent(current);
return pagenew;
}
}
\ No newline at end of file
......@@ -57,6 +57,23 @@ public class WorkFlowService {
* 执行
*
* */
public ProcessTaskDTO rollBackTask(String processInstanceId) {
ProcessTaskDTO processTaskDTO;
try {
log.info("工作流撤回任务接口:/rollBackTask},请求参数:{}", processInstanceId);
processTaskDTO = workFlowFeignService.rollBackTask(processInstanceId).getResult();
} catch (Exception e) {
log.error("调用工作流撤回任务接口失败", e);
throw new RuntimeException("调用工作流撤回任务接口失败");
}
return processTaskDTO;
}
/***
* 执行
*
* */
public ProcessTaskDTO complete(String taskId, TaskResultDTO data) {
ProcessTaskDTO processTaskDTO;
try {
......@@ -70,7 +87,6 @@ public class WorkFlowService {
}
public List<WorkflowResultDto> buildWorkFlowInfo(List<ProcessTaskDTO> processTaskDTOS) {
List<WorkflowResultDto> workflowResultDtoList = new ArrayList<>();
processTaskDTOS.forEach(item -> {
......
......@@ -254,67 +254,70 @@ public class WorkOrderServiceImpl extends BaseService<WorkOrderDto, WorkOrder, W
@Transactional
public PowerStationConstructionData addOrUpdate(PowerStationConstructionData powerStationConstructionData) {
//如果不是提交进行单独保存
if(powerStationConstructionData.isCommitFlow()){
// if(powerStationConstructionData.getSequenceNbr()!=null){
// 修改施工电站状态
LambdaUpdateWrapper<WorkOrderPowerStation> up = new LambdaUpdateWrapper();
up.eq(WorkOrderPowerStation::getSequenceNbr, powerStationConstructionData.getWorkOrderPowerStationId());
if (powerStationConstructionData.getConstructionStatus().equals("未完成")) {
up.set(WorkOrderPowerStation::getPowerStationConstructionStatus, WorkOrderEnum.施工中.getCode());
} else {
up.set(WorkOrderPowerStation::getPowerStationConstructionStatus, WorkOrderEnum.待登记.getCode());
// 修改施工电站状态
LambdaUpdateWrapper<WorkOrderPowerStation> up = new LambdaUpdateWrapper();
up.eq(WorkOrderPowerStation::getSequenceNbr, powerStationConstructionData.getWorkOrderPowerStationId());
if (powerStationConstructionData.getConstructionStatus().equals("未完成")) {
up.set(WorkOrderPowerStation::getPowerStationConstructionStatus, WorkOrderEnum.施工中.getCode());
} else {
up.set(WorkOrderPowerStation::getPowerStationConstructionStatus, WorkOrderEnum.待登记.getCode());
WorkOrderPowerStation basicGridAcceptanc = workOrderPowerStationMapper
.selectById(powerStationConstructionData.getWorkOrderPowerStationId());
// 施工完成
LambdaUpdateWrapper<PeasantHousehold> up1 = new LambdaUpdateWrapper<>();
up1.set(PeasantHousehold::getConstructionState, ArrivalStateeEnum.并网完成.getCode());
long idsk = basicGridAcceptanc.getPeasantHouseholdId();
up1.eq(PeasantHousehold::getSequenceNbr, idsk);
peasantHouseholdMapper.update(null, up1);
WorkOrderPowerStation basicGridAcceptanc = workOrderPowerStationMapper
.selectById(powerStationConstructionData.getWorkOrderPowerStationId());
// 施工完成
LambdaUpdateWrapper<PeasantHousehold> up1 = new LambdaUpdateWrapper<>();
up1.set(PeasantHousehold::getConstructionState, ArrivalStateeEnum.并网完成.getCode());
long idsk = basicGridAcceptanc.getPeasantHouseholdId();
up1.eq(PeasantHousehold::getSequenceNbr, idsk);
peasantHouseholdMapper.update(null, up1);
}
workOrderPowerStationMapper.update(null, up);
// 修改派工单状态
LambdaQueryWrapper<WorkOrderPowerStation> qu = new LambdaQueryWrapper();
qu.eq(WorkOrderPowerStation::getWorkOrderId, powerStationConstructionData.getWorkOrderId());
List<String> d = new ArrayList<>();
d.add(WorkOrderEnum.施工中.getCode());
d.add(WorkOrderEnum.待施工.getCode());
qu.in(WorkOrderPowerStation::getPowerStationConstructionStatus, d);
List<WorkOrderPowerStation> list = workOrderPowerStationMapper.selectList(qu);
}
workOrderPowerStationMapper.update(null, up);
// 修改派工单状态
LambdaQueryWrapper<WorkOrderPowerStation> qu = new LambdaQueryWrapper();
qu.eq(WorkOrderPowerStation::getWorkOrderId, powerStationConstructionData.getWorkOrderId());
List<String> d = new ArrayList<>();
d.add(WorkOrderEnum.施工中.getCode());
d.add(WorkOrderEnum.待施工.getCode());
qu.in(WorkOrderPowerStation::getPowerStationConstructionStatus, d);
List<WorkOrderPowerStation> list = workOrderPowerStationMapper.selectList(qu);
LambdaUpdateWrapper<WorkOrder> upq = new LambdaUpdateWrapper();
upq.eq(WorkOrder::getSequenceNbr, powerStationConstructionData.getWorkOrderId());
if (list != null && !list.isEmpty()) {
upq.set(WorkOrder::getWorkOrderStatus, WorkOrderEnum.施工中.getCode());
} else {
upq.set(WorkOrder::getWorkOrderStatus, WorkOrderEnum.登记中.getCode());
}
workOrderMapper.update(null, upq);
LambdaUpdateWrapper<WorkOrder> upq = new LambdaUpdateWrapper();
upq.eq(WorkOrder::getSequenceNbr, powerStationConstructionData.getWorkOrderId());
if (list != null && !list.isEmpty()) {
upq.set(WorkOrder::getWorkOrderStatus, WorkOrderEnum.施工中.getCode());
} else {
upq.set(WorkOrder::getWorkOrderStatus, WorkOrderEnum.登记中.getCode());
}
workOrderMapper.update(null, upq);
// 新增施工信息
// 防止重复添加
LambdaUpdateWrapper<PowerStationConstructionData> psc = new LambdaUpdateWrapper();
psc.eq(PowerStationConstructionData::getWorkOrderPowerStationId,
powerStationConstructionData.getWorkOrderPowerStationId());
psc.eq(PowerStationConstructionData::getWorkOrderId, powerStationConstructionData.getWorkOrderId());
powerStationConstructionDataService.saveOrUpdate(powerStationConstructionData, psc);
// powerStationConstructionDataService.saveOrUpdate(powerStationConstructionData);
// 增加操作日志
if (powerStationConstructionData.getSequenceNbr() != null) {
ConstructionRecords da = new ConstructionRecords(powerStationConstructionData.getRecUserName(), "编辑施工资料",
new Date(), "", powerStationConstructionData.getWorkOrderId(),
powerStationConstructionData.getWorkOrderPowerStationId(), null, "");
constructionRecordsServiceImpl.save(da);
} else {
ConstructionRecords da = new ConstructionRecords(powerStationConstructionData.getRecUserName(), "新增施工资料",
new Date(), "", powerStationConstructionData.getWorkOrderId(),
powerStationConstructionData.getWorkOrderPowerStationId(), null, "");
constructionRecordsServiceImpl.save(da);
}
// 新增施工信息
// 防止重复添加
LambdaUpdateWrapper<PowerStationConstructionData> psc = new LambdaUpdateWrapper();
psc.eq(PowerStationConstructionData::getWorkOrderPowerStationId,
powerStationConstructionData.getWorkOrderPowerStationId());
psc.eq(PowerStationConstructionData::getWorkOrderId, powerStationConstructionData.getWorkOrderId());
powerStationConstructionDataService.saveOrUpdate(powerStationConstructionData, psc);
// powerStationConstructionDataService.saveOrUpdate(powerStationConstructionData);
// 增加操作日志
if (powerStationConstructionData.getSequenceNbr() != null) {
ConstructionRecords da = new ConstructionRecords(powerStationConstructionData.getRecUserName(), "编辑施工资料",
new Date(), "", powerStationConstructionData.getWorkOrderId(),
powerStationConstructionData.getWorkOrderPowerStationId(), null, "");
constructionRecordsServiceImpl.save(da);
} else {
ConstructionRecords da = new ConstructionRecords(powerStationConstructionData.getRecUserName(), "新增施工资料",
new Date(), "", powerStationConstructionData.getWorkOrderId(),
powerStationConstructionData.getWorkOrderPowerStationId(), null, "");
constructionRecordsServiceImpl.save(da);
}
// }else{
// //修改施工电站状态
......
## DB properties:
## db1-production database
spring.db1.datasource.type: com.alibaba.druid.pool.DruidDataSource
spring.db1.datasource.url=jdbc:mysql://10.20.1.157:54321/production?allowMultiQueries=true&serverTimezone=GMT%2B8&characterEncoding=utf8
spring.db1.datasource.username=root
spring.db1.datasource.password=Yeejoin@2020
spring.db1.datasource.driver-class-name: com.mysql.cj.jdbc.Driver
## db2-sync_data
spring.db2.datasource.type: com.alibaba.druid.pool.DruidDataSource
spring.db2.datasource.url=jdbc:mysql://10.20.1.157:3306/amos_idx_biz?allowMultiQueries=true&serverTimezone=GMT%2B8&characterEncoding=utf8
spring.db2.datasource.username=root
spring.db2.datasource.password=Yeejoin@2020
spring.db2.datasource.driver-class-name: com.mysql.cj.jdbc.Driver
## db5-sync_data
spring.db5.datasource.type: com.alibaba.druid.pool.DruidDataSource
spring.db5.datasource.url=jdbc:mysql://10.20.1.157:3306/jxiop_sync_data?allowMultiQueries=true&serverTimezone=GMT%2B8&characterEncoding=utf8
spring.db5.datasource.username=root
spring.db5.datasource.password=Yeejoin@2020
spring.db5.datasource.driver-class-name: com.mysql.cj.jdbc.Driver
## amos-project
spring.db6.datasource.type: com.alibaba.druid.pool.DruidDataSource
spring.db6.datasource.url=jdbc:mysql://10.20.1.157:3306/amos_project?allowMultiQueries=true&serverTimezone=GMT%2B8&characterEncoding=utf8
spring.db6.datasource.username=root
spring.db6.datasource.password=Yeejoin@2020
spring.db6.datasource.driver-class-name: com.mysql.cj.jdbc.Driver
## eureka properties:
eureka.instance.hostname=10.20.1.160
eureka.client.serviceUrl.defaultZone=http://admin:a1234560@${eureka.instance.hostname}:10001/eureka/
## redis properties:
spring.redis.database=1
spring.redis.host=10.20.1.210
spring.redis.port=6379
spring.redis.password=yeejoin@2020
openHealth=false
spring.cache.type=GENERIC
j2cache.open-spring-cache=true
j2cache.cache-clean-mode=passive
j2cache.allow-null-values=true
j2cache.redis-client=lettuce
j2cache.l2-cache-open=true
j2cache.broadcast=net.oschina.j2cache.cache.support.redis.SpringRedisPubSubPolicy
j2cache.L1.provider_class=caffeine
j2cache.L2.provider_class=net.oschina.j2cache.cache.support.redis.SpringRedisProvider
j2cache.L2.config_section=lettuce
j2cache.sync_ttl_to_redis=true
j2cache.default_cache_null_object=false
j2cache.serialization=fst
caffeine.properties=/caffeine.properties
lettuce.mode=single
lettuce.namespace=
lettuce.storage=generic
lettuce.channel=j2cache
lettuce.scheme=redis
lettuce.hosts=${spring.redis.host}:${spring.redis.port}
lettuce.password=${spring.redis.password}
lettuce.database=${spring.redis.database}
lettuce.sentinelMasterId=
lettuce.maxTotal=100
lettuce.maxIdle=10
lettuce.minIdle=10
lettuce.timeout=10000
emqx.clean-session=true
emqx.client-id=${spring.application.name}-${random.int[1024,65536]}
emqx.broker=tcp://10.20.1.210:2883
emqx.user-name=admin
emqx.password=public
mqtt.scene.host=mqtt://10.20.1.210:8083/mqtt
mqtt.client.product.id=mqtt
mqtt.topic=topic_mqtt
spring.mqtt.completionTimeout=3000
emqx.max-inflight=1000
emqx.client-user-name=admin
emqx.client-password=public
tdengine-server:
driver-class-name: com.taosdata.jdbc.rs.RestfulDriver
jdbc-url: jdbc:TAOS-RS://10.20.0.203:6041/iot_data_1?user=root&password=taosdata&timezone=GMT%2b8&allowMultiQueries=true
username: root
password: taosdata
#spring.db3.datasource.type: com.alibaba.druid.pool.DruidDataSource
spring.db3.datasource.url=jdbc:TAOS-RS://10.20.0.203:6041/iot_data?user=root&password=taosdata&timezone=GMT%2b8&allowMultiQueries=true
spring.db3.datasource.username=root
spring.db3.datasource.password=taosdata
spring.db3.datasource.driver-class-name: com.taosdata.jdbc.rs.RestfulDriver
# ����ר��td���ݿ� analyse_data
#spring.db4.datasource.type: com.alibaba.druid.pool.DruidDataSource
spring.db4.datasource.url=jdbc:TAOS-RS://10.20.0.203:6041/analysis_data?user=root&password=taosdata&timezone=GMT%2b8&allowMultiQueries=true
spring.db4.datasource.username=root
spring.db4.datasource.password=taosdata
spring.db4.datasource.driver-class-name: com.taosdata.jdbc.rs.RestfulDriver
## influxDB
#spring.influx.url= http://172.16.3.155:18186
#spring.influx.password=Yeejoin@2020
#spring.influx.user=root
#spring.influx.database=iot_platform
#spring.influx.retention_policy=default
#spring.influx.retention_policy_time=30d
#spring.influx.actions=10000
#spring.influx.bufferLimit=20000
## influxDB
#spring.influx.url= http://139.9.171.247:8086
#spring.influx.password=Yeejoin@2023
#spring.influx.user=admin
#spring.influx.database=iot_platform
#spring.influx.retention_policy=default
#spring.influx.retention_policy_time=30d
#spring.influx.actions=10000
#spring.influx.bufferLimit=20000
spring.influx.url=http://139.9.173.44:8086
spring.influx.password=Yeejoin@2020
spring.influx.user=root
spring.influx.database=iot_platform
spring.influx.retention_policy=default
spring.influx.retention_policy_time=30d
spring.influx.actions=10000
spring.influx.bufferLimit=20000
knife4j.production=false
knife4j.enable=true
knife4j.basic.enable=true
knife4j.basic.username=admin
knife4j.basic.password=a1234560
management.security.enabled=true
spring.security.user.name=admin
spring.security.user.password=a1234560
fire-rescue=123
mybatis-plus.global-config.db-config.update-strategy=ignored
# user-amos setting : This value is the secretkey for person manage moudle accout password encryption.please don't change it!!!
amos.secret.key=qaz
# if your service can't be access ,you can use this setting , you need change ip as your.
#eureka.instance.prefer-ip-address=true
#eureka.instance.ip-address=172.16.3.122
spring.activemq.broker-url=tcp://10.20.1.210:61616
spring.activemq.user=admin
spring.activemq.password=admin
spring.jms.pub-sub-domain=false
myqueue=amos.privilege.v1.JXIOP.AQSC_FDGL.userBusiness
# ?????????
fan.statuts.stattuspath=upload/jxiop/device_status
pictureUrl=upload/jxiop/syz/
#kafka
spring.kafka.bootstrap-servers=10.20.0.223:9092,10.20.0.133:9200
spring.kafka.producer.retries=1
spring.kafka.producer.bootstrap-servers=10.20.0.223:9092,10.20.0.133:9200
spring.kafka.producer.batch-size=16384
spring.kafka.producer.buffer-memory=33554432
spring.kafka.producer.acks=1
spring.kafka.producer.key-serializer=org.apache.kafka.common.serialization.StringSerializer
spring.kafka.producer.value-serializer=org.apache.kafka.common.serialization.StringSerializer
spring.kafka.consumer.group-id=consumerGroup
spring.kafka.consumer.bootstrap-servers=10.20.0.223:9092,10.20.0.133:9200
spring.kafka.consumer.enable-auto-commit=false
spring.kafka.consumer.auto-offset-reset=earliest
spring.kafka.consumer.key-deserializer=org.apache.kafka.common.serialization.StringDeserializer
spring.kafka.consumer.value-deserializer=org.apache.kafka.common.serialization.StringDeserializer
spring.kafka.listener.ack-mode=manual_immediate
spring.kafka.listener.type=batch
#һ����ȡ���� && �߳�����
spring.kafka.consumer.max-poll-records=30
#spring.kafka.consumer.fetch-max-wait= 10000
#��ǰʱ����ǰƫ������ ����ʷƫ������
last.month.num = 12
#����� �㷨����
base.url.XGX=http://139.9.171.247:8052/intelligent-analysis/correlation
#�������� �㷨���õ�ַ
base.url.GKHF=http://139.9.171.247:8052/intelligent-analysis/working-condition-division
#����� �㷨����
base.url.ZXZ=http://139.9.171.247:8052/intelligent-analysis/central-value
#ָ���������㷨����
base.url.zsfx:http://139.9.171.247:8052/intelligent-analysis/index-analysis
\ No newline at end of file
......@@ -2,9 +2,7 @@ package com.yeejoin.amos.boot.module.jxiop.api.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.yeejoin.amos.boot.biz.common.entity.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import java.util.Date;
......@@ -36,8 +34,8 @@ public class Region {
/**
* 等级
*/
@TableField("LEVEL")
private String level;
@TableField("LEVEL_")
private String level_;
/**
* 上级编码
......
......@@ -7,7 +7,7 @@
hp.sequence_nbr as id,
hp.platform_company_id AS platformCompanyId,
hp.number,
hp.`name`,
hp.name,
hp.sex,
hp.ID_number AS idNumber,
hp.expiry_time AS expiryTime,
......@@ -106,7 +106,7 @@
resultType="com.yeejoin.amos.boot.module.jxiop.api.dto.EquipMessageExport">
SELECT
(@i:= @i+1) as numSort,
hp.`name`,
hp.name,
hp.ID_number AS idNumber,
hpd.type,
hpd.name as equipName,
......
......@@ -20,12 +20,12 @@
<select id="getBoosterStationInfo" resultType="java.util.Map">
select
`sequence_nbr` as id,
`gateway_id` as gatewayId,
`booster_name` as text,
sequence_nbr as id,
gateway_id as gatewayId,
booster_name as text,
booster_name as boosterName,
`booster_code` as boosterCode,
`sort` as value
booster_code as boosterCode,
sort as value
from booster_station_info
<where>
<if test="gatewayId != null and gatewayId != ''">
......@@ -44,12 +44,12 @@
<select id="getBoosterStationInfo2" resultType="java.util.Map">
select * from
((select
`sequence_nbr` as id,
`gateway_id` as gatewayId,
`booster_name` as text,
sequence_nbr as id,
gateway_id as gatewayId,
booster_name as text,
booster_name as boosterName,
`booster_code` as boosterCode,
`sort` as value
booster_code as boosterCode,
sort as value
from booster_station_info
<where>
sort != 2
......@@ -66,7 +66,7 @@
union all
(select
'99999' as id,
`gateway_id` as gatewayId,
gateway_id as gatewayId,
'1主变' as text,
'1主变' as boosterName,
'2' as boosterCode,
......@@ -84,12 +84,12 @@
<select id="getMajorBoosterStationInfo" resultType="java.util.Map">
select
`sequence_nbr` as id,
`gateway_id` as gatewayId,
`booster_name` as text,
sequence_nbr as id,
gateway_id as gatewayId,
booster_name as text,
booster_name as boosterName,
`booster_code` as boosterCode,
`sort` as value
booster_code as boosterCode,
sort as value
from booster_station_info
<where>
<if test="gatewayId != null and gatewayId != ''">
......@@ -103,12 +103,12 @@
<select id="getMajorBoosterStationInfoBySort" resultType="java.util.Map">
select
`sequence_nbr` as id,
`gateway_id` as gatewayId,
`booster_name` as text,
sequence_nbr as id,
gateway_id as gatewayId,
booster_name as text,
booster_name as boosterName,
`booster_code` as boosterCode,
`sort` as value
booster_code as boosterCode,
sort as value
from booster_station_info
where
sort = #{sort}
......@@ -119,12 +119,12 @@
<select id="getBoosterStationInfoNormal" resultType="java.util.Map">
select
`sequence_nbr` as id,
`gateway_id` as gatewayId,
`booster_name` as text,
sequence_nbr as id,
gateway_id as gatewayId,
booster_name as text,
booster_name as boosterName,
`booster_code` as boosterCode,
`sort` as value
booster_code as boosterCode,
sort as value
from booster_station_info
<where>
<if test="gatewayId != null and gatewayId != ''">
......
......@@ -9,7 +9,7 @@
select
person_basic.sequence_nbr sequenceNbr,
person_basic.head_photo headphoto,
person_account.`name` name,
person_account.name name,
person_basic.sex,
person_basic.phone phone,
person_account.project_name projectName,
......@@ -83,7 +83,7 @@
<select id="getEXPersonUser" resultType="com.yeejoin.amos.boot.module.jxiop.api.dto.EXPersonUser">
select
person_account.`name` name,
person_account.name name,
person_account.job_number jobNumber,
person_account.project_name projectName,
person_account.project_department_name departmentName,
......@@ -116,7 +116,7 @@
<select id="getEXPersonUserAll" resultType="com.yeejoin.amos.boot.module.jxiop.api.dto.EXPersonUser">
select
person_account.`name` name,
person_account.name name,
person_account.job_number jobNumber,
person_account.project_name projectName,
person_account.project_department_name departmentName,
......@@ -296,7 +296,7 @@
<select id="getPersonStatistics" resultType="com.yeejoin.amos.boot.module.jxiop.api.entity.StationQrCodeStatistics">
SELECT
project_org_code AS `code`,
project_org_code AS code,
count( qrcode_color = 'red' OR NULL ) AS redNum,
count( qrcode_color = 'yellow' OR NULL ) AS yellowNum,
count( qrcode_color = 'green' OR NULL ) AS greenNum,
......@@ -310,7 +310,7 @@
<select id="getPersonDetailInfoByObjectId" resultType="java.util.Map">
SELECT
IFNULL(b.`name`, '') as `name`,
IFNULL(b.name, '') as name,
IFNULL(a.phone, '') as phone,
IFNULL(a.post_name, '') as postName,
IFNULL(b.project_name, '') as stationName,
......
......@@ -173,9 +173,9 @@
<update id="updateYardByProjectOrgCode">
<foreach collection="list" item="item" separator=";">
update
`station_basic`
station_basic
set
`qrcode_color` = #{item.qrcodeColor},
qrcode_color = #{item.qrcodeColor},
<if test="item.level != null and item.level != ''">
risk_Level = #{item.level},
</if>
......
......@@ -14,7 +14,7 @@
AND privilege_company.COMPANY_TYPE=#{companyType}
</if>
<if test="level != null and level != ''">
AND privilege_company.`LEVEL`=#{level}
AND privilege_company.LEVEL_=#{level}
</if>
<if test="companyOrgCode != null ">
AND privilege_company.ORG_CODE IN
......
......@@ -359,8 +359,8 @@
)
SELECT
a.SEQUENCE_NBR AS sequenceNbr,
COALESCE(a.NAME, '') AS `name`,
COALESCE(a.CODE, '') AS `code`,
COALESCE(a.NAME, '') AS name,
COALESCE(a.CODE, '') AS code,
COALESCE(a.PARENT_ID, '') AS parentId,
COALESCE(a.LONGITUDE, '') AS longitude,
COALESCE(a.LATITUDE, '') AS latitude,
......@@ -391,7 +391,7 @@
count( 1 ) AS yearNum
FROM
amos_mcb.mcb_warning_warning_info
Left join mcb_warning_base_source_attribution mwbsa on mwbsa.`CODE` = mcb_warning_warning_info.SOURCE_ATTRIBUTION
Left join mcb_warning_base_source_attribution mwbsa on mwbsa.CODE = mcb_warning_warning_info.SOURCE_ATTRIBUTION
WHERE
YEAR(CREATE_DATE) = YEAR(CURDATE())
<if test="province != null and province != '' ">
......@@ -408,7 +408,7 @@
count( 1 ) AS monNum
FROM
amos_mcb.mcb_warning_warning_info
Left join mcb_warning_base_source_attribution mwbsa on mwbsa.`CODE` = mcb_warning_warning_info.SOURCE_ATTRIBUTION
Left join mcb_warning_base_source_attribution mwbsa on mwbsa.CODE = mcb_warning_warning_info.SOURCE_ATTRIBUTION
WHERE
MONTH(CREATE_DATE) = MONTH(CURDATE())
<if test="province != null and province != '' ">
......@@ -425,7 +425,7 @@
mwbsa.PROVINCE
FROM
amos_mcb.mcb_warning_warning_info
Left join mcb_warning_base_source_attribution mwbsa on mwbsa.`CODE` = mcb_warning_warning_info.SOURCE_ATTRIBUTION
Left join mcb_warning_base_source_attribution mwbsa on mwbsa.CODE = mcb_warning_warning_info.SOURCE_ATTRIBUTION
WHERE
DATE_FORMAT(CREATE_DATE,'%Y-%m-%d') = CURDATE()
<if test="province != null and province != '' ">
......
package com.yeejoin.amos.boot.module.jxiop.biz.controller;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.biz.common.controller.BaseController;
import com.yeejoin.amos.boot.biz.common.interceptors.PermissionInterceptor;
import com.yeejoin.amos.boot.module.jxiop.biz.service.impl.EnergyAccessServiceImpl;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.typroject.tyboot.core.foundation.enumeration.UserType;
import org.typroject.tyboot.core.restful.doc.TycloudOperation;
import java.util.Map;
@RestController
@Api(tags = "能源接入相关接口")
@RequestMapping(value = "/energyAccess")
public class EnergyAccessController extends BaseController {
@Autowired
EnergyAccessServiceImpl energyAccessServiceImpl;
private final Logger logger = LoggerFactory.getLogger(EnergyAccessController.class);
@RequestMapping(value = "/getInstalledCapacity", method = RequestMethod.GET)
@TycloudOperation(ApiLevel = UserType.AGENCY)
@ApiOperation(httpMethod = "GET", value = "获取并网容量", notes = "获取并网容量")
public Page<Map<String, Object>> getInstalledCapacity(String current, String pageSize, String code,String sourceStationId,String tp) {
logger.info("获取并网容量接口入参:current ={},pageSize ={},code = {},sourceStationId = {},tp = {}",current,pageSize,code,sourceStationId,tp);
return energyAccessServiceImpl.getInstalledCapacity(current, pageSize, code,sourceStationId,tp);
}
@RequestMapping(value = "/getQuotaCompleteInfo", method = RequestMethod.GET)
@TycloudOperation(ApiLevel = UserType.AGENCY)
@ApiOperation(httpMethod = "GET", value = "获取片区指标完成情况", notes = "获取片区指标完成情况")
public Page<Map<String, Object>> getQuotaCompleteInfo(String current, String pageSize, String code,String sourceStationId,String tp) {
logger.info("获取片区指标完成情况入参:current ={},pageSize ={},code = {},sourceStationId = {},tp = {}",current,pageSize,code,sourceStationId,tp);
return energyAccessServiceImpl.getQuotaCompleteInfo(current, pageSize, code,sourceStationId,tp);
}
}
package com.yeejoin.amos.boot.module.jxiop.biz.dto;
import lombok.Data;
@Data
public class InstalledCapacity {
//片区名
String areaName;
//场站名
String stationName;
//场站数量
String stationCount;
//装机容量
String actualInstalledCapacity;
}
package com.yeejoin.amos.boot.module.jxiop.biz.initdata;
import java.util.ArrayList;
import java.util.List;
import java.util.stream.Collectors;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.CommandLineRunner;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Component;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.yeejoin.amos.boot.module.jxiop.api.entity.MapRegion;
import com.yeejoin.amos.boot.module.jxiop.api.entity.Region;
......@@ -12,16 +24,6 @@ import com.yeejoin.amos.boot.module.jxiop.biz.dto.QueryDto;
import com.yeejoin.amos.boot.module.jxiop.biz.dto.StationCacheInfoDto;
import com.yeejoin.amos.boot.module.jxiop.biz.mapper2.SjglZsjZsbtzMapper;
import com.yeejoin.amos.boot.module.jxiop.biz.service.impl.CommonServiceImpl;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.CommandLineRunner;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Component;
import java.util.ArrayList;
import java.util.List;
import java.util.stream.Collectors;
@Component
public class StationCacheDataInit implements CommandLineRunner {
......@@ -42,7 +44,7 @@ public class StationCacheDataInit implements CommandLineRunner {
public void run(String... args) throws Exception {
redisTemplate.delete("station_info_cache_bigscreen");
List<StationCacheInfoDto> stationCacheInfoDtos = new ArrayList<>();
List<Region> regionList = regionMapper.selectList(new QueryWrapper<Region>().eq("LEVEL", 1));
List<Region> regionList = regionMapper.selectList(new LambdaQueryWrapper<Region>().eq(Region::getLevel_, 1));
List<MapRegion> mapRegionList = mapRegionMapper.selectList(new QueryWrapper<MapRegion>().isNotNull("name"));
List<StationBasic> stationBasicList = stationBasicMapper.selectList(new QueryWrapper<StationBasic>().isNotNull("belong_area").isNotNull("fan_gateway_id"));
stationBasicList.forEach(stationBasic -> {
......
package com.yeejoin.amos.boot.module.jxiop.biz.service;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import java.util.Map;
public interface EnergyAccessService {
Page<Map<String, Object>> getInstalledCapacity(String current, String pageSize, String code, String sourceStationId, String tp);
Page<Map<String, Object>> getQuotaCompleteInfo(String current, String pageSize, String code, String sourceStationId, String tp);
}
package com.yeejoin.amos.boot.module.jxiop.biz.service.impl;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.module.jxiop.api.entity.MapRegion;
......@@ -18,13 +18,10 @@ import com.yeejoin.amos.boot.module.jxiop.biz.initdata.StationCacheDataInit;
import com.yeejoin.amos.boot.module.jxiop.biz.mapper2.SjglZsjZsbtzMapper;
import lombok.extern.slf4j.Slf4j;
import org.elasticsearch.action.search.SearchRequestBuilder;
import org.elasticsearch.action.search.SearchResponse;
import org.elasticsearch.index.query.BoolQueryBuilder;
import org.elasticsearch.index.query.MatchPhraseQueryBuilder;
import org.elasticsearch.index.query.QueryBuilders;
import org.elasticsearch.search.aggregations.Aggregation;
import org.elasticsearch.search.aggregations.AggregationBuilder;
import org.elasticsearch.search.aggregations.AggregationBuilders;
import org.elasticsearch.search.aggregations.Aggregations;
import org.elasticsearch.search.aggregations.bucket.terms.ParsedStringTerms;
......@@ -228,7 +225,7 @@ public class CommonServiceImpl {
public List<StationCacheInfoDto> getListStationCacheInfoDto() {
List<StationCacheInfoDto> stationCacheInfoDtos = new ArrayList<>();
List<Region> regionList = regionMapper.selectList(new QueryWrapper<Region>().eq("LEVEL", 1));
List<Region> regionList = regionMapper.selectList(new LambdaQueryWrapper<Region>().eq(Region::getLevel_, 1));
List<MapRegion> mapRegionList = mapRegionMapper.selectList(new QueryWrapper<MapRegion>().isNotNull("name"));
List<StationBasic> stationBasicList = stationBasicMapper.selectList(new QueryWrapper<StationBasic>().isNotNull("belong_area").isNotNull("fan_gateway_id"));
for (int i = 0; i < stationBasicList.size(); i++) {
......
package com.yeejoin.amos.boot.module.jxiop.biz.service.impl;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.module.jxiop.api.util.Constants;
import com.yeejoin.amos.boot.module.jxiop.api.util.HttpRequestUtil;
import com.yeejoin.amos.boot.module.jxiop.biz.service.EnergyAccessService;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
import java.util.List;
import java.util.Map;
@Service
public class EnergyAccessServiceImpl implements EnergyAccessService {
@Autowired
private HttpRequestUtil httpRequestUtil;
private final Logger logger = LoggerFactory.getLogger(EnergyAccessServiceImpl.class);
@Override
public Page<Map<String, Object>> getInstalledCapacity(String current, String pageSize, String code, String sourceStationId, String tp) {
//改为部盾接口
StringBuilder requestUrl = new StringBuilder(Constants.BASE_URL).append("?").append(Constants.get_station_actual_installed_capacity);
if (StringUtils.isNotEmpty(code)) {
requestUrl.append("&code=").append(code);
}
if (StringUtils.isNotEmpty(sourceStationId)) {
requestUrl.append("&source_station_id=").append(sourceStationId);
}
if (StringUtils.isNotEmpty(tp)) {
requestUrl.append("&tp=").append(tp);
}
JSONObject data = httpRequestUtil.getResPonse(requestUrl.toString(), Constants.REQUEST_GET, "",
Constants.resovleRule_data);
List returnList = data.getJSONArray("data");
logger.info("获取并网容量接口调用对端返回结果:{}",returnList.toString());
Page<Map<String, Object>> pageIPage;
int newCurrent = Integer.parseInt(current);
int newPageSize = Integer.parseInt(pageSize);
if (StringUtils.isBlank(pageSize) || StringUtils.isBlank(pageSize)) {
pageIPage = new Page<>(0, Long.MAX_VALUE);
} else {
pageIPage = new Page<>(newCurrent, newPageSize);
}
if (CollectionUtils.isEmpty(returnList)) {
return pageIPage;
}
pageIPage.setTotal(returnList.size());
int endIndex = newCurrent * newPageSize;
if (returnList.size() > endIndex) {
pageIPage.setRecords(returnList.subList(((newCurrent - 1) * newPageSize), endIndex));
} else {
pageIPage.setRecords(returnList.subList(((newCurrent - 1) * newPageSize), returnList.size()));
}
logger.info("获取并网容量接口最终返回结果:{}",pageIPage.getRecords());
return pageIPage;
}
@Override
public Page<Map<String, Object>> getQuotaCompleteInfo(String current, String pageSize, String code, String sourceStationId, String tp) {
//改为部盾接口
StringBuilder requestUrl = new StringBuilder(Constants.BASE_URL).append("?").append(Constants.get_quota_complate_info);
LocalDate currentDate = LocalDate.now();
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");
String formattedDate = currentDate.format(formatter);
requestUrl.append("&reporting_data=").append(formattedDate);
if (StringUtils.isNotEmpty(code)) {
requestUrl.append("&code=").append(code);
}
if (StringUtils.isNotEmpty(sourceStationId)) {
requestUrl.append("&source_station_id=").append(sourceStationId);
}
if (StringUtils.isNotEmpty(tp)) {
requestUrl.append("&tp=").append(tp);
}
JSONObject data = httpRequestUtil.getResPonse(requestUrl.toString(), Constants.REQUEST_GET, "",
Constants.resovleRule_data);
List returnList = data.getJSONArray("data");
logger.info("获取片区指标完成情况调用对端返回结果:{}",returnList.toString());
//rate的值去掉百分号,名称字段名统一用name代替
Page<Map<String, Object>> pageIPage;
int newCurrent = Integer.parseInt(current);
int newPageSize = Integer.parseInt(pageSize);
if (StringUtils.isBlank(pageSize) || StringUtils.isBlank(pageSize)) {
pageIPage = new Page<>(0, Long.MAX_VALUE);
} else {
pageIPage = new Page<>(newCurrent, newPageSize);
}
if (CollectionUtils.isEmpty(returnList)) {
return pageIPage;
}
returnList.forEach(result -> {
String oldName = "";
JSONObject jsonObject = (JSONObject) result;
String rate = jsonObject.getString("rate");
if (StringUtils.isNotEmpty(rate)) {
jsonObject.put("rate", rate.replace("%", ""));
}
if ("1".equals(tp)) {
oldName = jsonObject.getString("station_name");
jsonObject.remove("station_name");
} else {
oldName = jsonObject.getString("area_name");
jsonObject.remove("area_name");
}
jsonObject.put("name", oldName);
});
pageIPage.setTotal(returnList.size());
int endIndex = newCurrent * newPageSize;
if (returnList.size() > endIndex) {
pageIPage.setRecords(returnList.subList(((newCurrent - 1) * newPageSize), endIndex));
} else {
pageIPage.setRecords(returnList.subList(((newCurrent - 1) * newPageSize), returnList.size()));
}
logger.info("获取片区指标完成情况最终返回结果:{}",pageIPage.getRecords());
return pageIPage;
}
}
......@@ -87,7 +87,7 @@ public class LargeScreenImpl {
* 全国
*/
@Scheduled(cron = "0/10 * * * * ?")
@PostConstruct
//@PostConstruct
public Map<String, Double> getqg() {
Map<String, Double> mapdta = new HashMap<>();
mapdta.put("SS", 0d);
......@@ -131,25 +131,26 @@ public class LargeScreenImpl {
// }
// }
//改为部盾接口
// 改为部盾接口
String requestUrl = Constants.BASE_URL + "?" + Constants.get_quota_info;
LocalDate currentDate = LocalDate.now();
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");
String formattedDate = currentDate.format(formatter);
JSONObject data = httpRequestUtil.getResPonse(requestUrl+"&reporting_data="+formattedDate, Constants.REQUEST_GET, "",
Constants.resovleRule_data);
//部盾每天十二点才填报,如果十二点前没有数据则获取前一天的数据
if(data.getDouble("sum_irradiance")==0)
{
// 计算昨天日期
LocalDate yesterday = currentDate.minusDays(1);
formattedDate = yesterday.format(formatter);
data = httpRequestUtil.getResPonse(requestUrl+"&reporting_data="+formattedDate, Constants.REQUEST_GET, "",
Constants.resovleRule_data);
}
mapdta.put("SS", data.getDouble("average_wind_speed"));
mapdta.put("ZFS", data.getDouble("avg_irradiance"));
mapdta.put("ZFSLJ", data.getDouble("sum_irradiance"));
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");
String formattedDate = currentDate.format(formatter);
JSONObject data = httpRequestUtil.getResPonse(requestUrl + "&reporting_data=" + formattedDate,
Constants.REQUEST_GET, "", Constants.resovleRule_data);
if (data != null) {
// 部盾每天十二点才填报,如果十二点前没有数据则获取前一天的数据
if (data.getDouble("sum_irradiance") != null && data.getDouble("sum_irradiance") == 0) {
// 计算昨天日期
LocalDate yesterday = currentDate.minusDays(1);
formattedDate = yesterday.format(formatter);
data = httpRequestUtil.getResPonse(requestUrl + "&reporting_data=" + formattedDate,
Constants.REQUEST_GET, "", Constants.resovleRule_data);
}
mapdta.put("SS", data.getDouble("average_wind_speed"));
mapdta.put("ZFS", data.getDouble("avg_irradiance"));
mapdta.put("ZFSLJ", data.getDouble("sum_irradiance"));
}
// //日发电量
// AtomicReference<Double> dailyPower = new AtomicReference<>(0.0);
......@@ -242,7 +243,7 @@ public class LargeScreenImpl {
}
@Scheduled(cron = "0/10 * * * * ?")
@PostConstruct
//@PostConstruct
private void sendQYYXZBMqtt() {
List<StationCacheInfoDto> listStationCacheInfoDto = commonServiceImpl.getListStationCacheInfoDto();
Map<String, List<StationCacheInfoDto>> belongAreaList = listStationCacheInfoDto.stream()
......@@ -257,16 +258,16 @@ public class LargeScreenImpl {
/**
* 区域
**/
public Map<String, Double> getqy(List<StationCacheInfoDto> gatewayId, String s) {
Map<String, Double> mapdta = new HashMap<>();
mapdta.put("SS", 0d);
mapdta.put("ZFS", 0d);
mapdta.put("ZFSLJ", 0d);
mapdta.put("RSD", 0d);
mapdta.put("YFD", 0d);
mapdta.put("NFD", 0d);
mapdta.put("YJHWC", 0d);
mapdta.put("NJHWC", 0d);
public Map<String, String> getqy(List<StationCacheInfoDto> gatewayId, String s) {
Map<String, String> mapdta = new HashMap<>();
mapdta.put("SS", "0");
mapdta.put("ZFS", "0");
mapdta.put("ZFSLJ", "0");
mapdta.put("RSD", "0");
mapdta.put("YFD", "0");
mapdta.put("NFD", "0");
mapdta.put("YJHWC", "0");
mapdta.put("NJHWC", "0");
// // 平均数
// List<String> value = new ArrayList<>();
// List<String> ids = new ArrayList<>();
......@@ -400,35 +401,46 @@ public class LargeScreenImpl {
// Double ybfbn = sumValuen > 0 ? mapdta.get("NFD") / sumValuen * 100 : 0;
// ybfbn = new BigDecimal(ybfbn).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
// mapdta.put("NJHWC", ybfbn);
//改为部盾接口
// 改为部盾接口
String requestUrl = Constants.BASE_URL + "?" + Constants.get_quota_info;
LocalDate currentDate = LocalDate.now();
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");
String formattedDate = currentDate.format(formatter);
JSONObject data = httpRequestUtil.getResPonse(requestUrl+"&reporting_data="+formattedDate, Constants.REQUEST_GET, "",
Constants.resovleRule_data);
mapdta.put("Day", data.getDouble("day_generating_capacity"));
mapdta.put("Moon", data.getDouble("month_generating_capacity"));
mapdta.put("Year", data.getDouble("year_generating_capacity"));
mapdta.put("YJHWC", Double.valueOf(data.getString("month_quota_rate").replace("%", "")));
mapdta.put("NJHWC", Double.valueOf(data.getString("year_quota_rate").replace("%", "")));
//部盾每天十二点才填报,如果十二点前没有数据则获取前一天的数据
if(data.getDouble("sum_irradiance")==0)
{
// 计算昨天日期
LocalDate yesterday = currentDate.minusDays(1);
formattedDate = yesterday.format(formatter);
data = httpRequestUtil.getResPonse(requestUrl+"&reporting_data="+formattedDate, Constants.REQUEST_GET, "",
Constants.resovleRule_data);
}
mapdta.put("SS", data.getDouble("average_wind_speed"));
mapdta.put("ZFS", data.getDouble("avg_irradiance"));
mapdta.put("ZFSLJ", data.getDouble("sum_irradiance"));
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");
String formattedDate = currentDate.format(formatter);
JSONObject data = httpRequestUtil.getResPonse(requestUrl + "&reporting_data=" + formattedDate + "&code=" + s,
Constants.REQUEST_GET, "", Constants.resovleRule_data);
DecimalFormat df = new DecimalFormat("#.0000");
if (data.getDouble("day_generating_capacity") != null) {
mapdta.put("Day", df.format(Double.valueOf(data.getDouble("day_generating_capacity"))));
mapdta.put("RSD", df.format(Double.valueOf(data.getDouble("day_generating_capacity"))));
}
if (data.getDouble("month_generating_capacity") != null) {
mapdta.put("Moon", df.format(Double.valueOf(data.getDouble("month_generating_capacity"))));
mapdta.put("YFD", df.format(Double.valueOf(data.getDouble("day_generating_capacity"))));
}
if (data.getDouble("year_generating_capacity") != null) {
mapdta.put("Year", df.format(Double.valueOf(data.getDouble("year_generating_capacity"))));
mapdta.put("NFD", df.format(Double.valueOf(data.getDouble("day_generating_capacity"))));
}
if (data.getString("month_quota_rate") != null) {
mapdta.put("YJHWC", data.getString("month_quota_rate").replace("%", ""));
}
if (data.getString("year_quota_rate") != null) {
mapdta.put("NJHWC", data.getString("year_quota_rate").replace("%", ""));
}
// 部盾每天十二点才填报,如果十二点前没有数据则获取前一天的数据
if (data.getDouble("sum_irradiance") != null && data.getDouble("sum_irradiance") == 0) {
// 计算昨天日期
LocalDate yesterday = currentDate.minusDays(1);
formattedDate = yesterday.format(formatter);
data = httpRequestUtil.getResPonse(requestUrl + "&reporting_data=" + formattedDate, Constants.REQUEST_GET,
"", Constants.resovleRule_data);
}
mapdta.put("SS", data.getString("average_wind_speed"));
mapdta.put("ZFS", data.getString("avg_irradiance"));
mapdta.put("ZFSLJ", data.getString("sum_irradiance"));
try {
System.out.println(JSON.toJSONString(mapdta));
emqKeeper.getMqttClient().publish("qyyxzb/" + s, JSON.toJSONString(mapdta).getBytes(), 1, true);
......
......@@ -28,6 +28,7 @@ import org.springframework.util.ObjectUtils;
import org.typroject.tyboot.component.emq.EmqKeeper;
import com.yeejoin.amos.boot.biz.common.utils.DateUtils;
import java.math.BigDecimal;
import java.text.DecimalFormat;
import java.text.SimpleDateFormat;
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
......@@ -1112,11 +1113,23 @@ public class MonitoringServiceImpl {
String formattedDate = currentDate.format(formatter);
JSONObject data = httpRequestUtil.getResPonse(requestUrl+"&reporting_data="+formattedDate, Constants.REQUEST_GET, "",
Constants.resovleRule_data);
resultMap.put("Day", data.getString("day_generating_capacity"));
resultMap.put("Moon", data.getString("month_generating_capacity"));
resultMap.put("Year", data.getString("year_generating_capacity"));
resultMap.put("YJHWC", data.getString("month_quota_rate").replace("%", ""));
resultMap.put("NJHWC", data.getString("year_quota_rate").replace("%", ""));
DecimalFormat df = new DecimalFormat("#.0000");
if (data.getDouble("day_generating_capacity") != null) {
resultMap.put("Day", df.format(Double.valueOf(data.getDouble("day_generating_capacity"))));
}
if (data.getDouble("month_generating_capacity") != null) {
resultMap.put("Moon", df.format(Double.valueOf(data.getDouble("month_generating_capacity"))));
}
if (data.getDouble("year_generating_capacity") != null) {
resultMap.put("Year", df.format(Double.valueOf(data.getDouble("year_generating_capacity"))));
}
if (data.getString("month_quota_rate") != null) {
resultMap.put("YJHWC", data.getString("month_quota_rate").replace("%", ""));
}
if (data.getString("year_quota_rate") != null) {
resultMap.put("NJHWC", data.getString("year_quota_rate").replace("%", ""));
}
try {
emqKeeper.getMqttClient().publish("bigscreen_zjrl_topic", JSON.toJSON(page).toString().getBytes("UTF-8"), 1,
true);
......
......@@ -148,4 +148,5 @@ pictureUrl=upload/jxiop/syz/
# Ԥ
idx.predict.serviceUrl=http://10.20.1.157:8095/jxdj/predict-data
forecast.url=
\ No newline at end of file
forecast.url=
logic=
\ No newline at end of file
## DB properties:
## db1-production database
spring.db1.datasource.type: com.alibaba.druid.pool.DruidDataSource
spring.db1.datasource.url=jdbc:kingbase8://10.20.1.176:54321/production?allowMultiQueries=true&serverTimezone=GMT%2B8&characterEncoding=utf8&currentSchema=root
spring.db1.datasource.username=root
spring.db1.datasource.password=Yeejoin@2020
spring.db1.datasource.driver-class-name: com.kingbase8.Driver
## db2-sync_data
spring.db2.datasource.type: com.alibaba.druid.pool.DruidDataSource
spring.db2.datasource.url=jdbc:kingbase8://10.20.1.176:54321/jxiop_sync_data?allowMultiQueries=true&serverTimezone=GMT%2B8&characterEncoding=utf8&currentSchema=root
spring.db2.datasource.username=root
spring.db2.datasource.password=Yeejoin@2020
spring.db2.datasource.driver-class-name: com.kingbase8.Driver
##db3
spring.db3.datasource.url=jdbc:TAOS-RS://10.20.1.157:6041/iot_data?user=root&password=taosdata&timezone=GMT%2b8&allowMultiQueries=true
spring.db3.datasource.username=root
spring.db3.datasource.password=taosdata
spring.db3.datasource.driver-class-name: com.taosdata.jdbc.rs.RestfulDriver
##db4
spring.db4.datasource.url=jdbc:TAOS-RS://10.20.1.157:6041/iot_data?user=root&password=taosdata&timezone=GMT%2b8&allowMultiQueries=true
spring.db4.datasource.username=root
spring.db4.datasource.password=taosdata
spring.db4.datasource.driver-class-name: com.taosdata.jdbc.rs.RestfulDriver
# kingbase8 backquote not support
mybatis-plus.global-config.db-config.table-field-strategy=ignore
## eureka properties:
eureka.instance.hostname=10.20.1.160
eureka.client.serviceUrl.defaultZone=http://admin:a1234560@${eureka.instance.hostname}:10001/eureka/
## redis properties:
spring.redis.database=1
spring.redis.host=10.20.1.210
spring.redis.port=6379
spring.redis.password=yeejoin@2020
spring.cache.type=GENERIC
j2cache.open-spring-cache=true
j2cache.cache-clean-mode=passive
j2cache.allow-null-values=true
j2cache.redis-client=lettuce
j2cache.l2-cache-open=true
j2cache.broadcast=net.oschina.j2cache.cache.support.redis.SpringRedisPubSubPolicy
j2cache.L1.provider_class=caffeine
j2cache.L2.provider_class=net.oschina.j2cache.cache.support.redis.SpringRedisProvider
j2cache.L2.config_section=lettuce
j2cache.sync_ttl_to_redis=true
j2cache.default_cache_null_object=false
j2cache.serialization=fst
caffeine.properties=/caffeine.properties
lettuce.mode=single
lettuce.namespace=
lettuce.storage=generic
lettuce.channel=j2cache
lettuce.scheme=redis
lettuce.hosts=${spring.redis.host}:${spring.redis.port}
lettuce.password=${spring.redis.password}
lettuce.database=${spring.redis.database}
lettuce.sentinelMasterId=
lettuce.maxTotal=100
lettuce.maxIdle=10
lettuce.minIdle=10
lettuce.timeout=10000
emqx.clean-session=true
emqx.client-id=${spring.application.name}-${random.int[1024,65536]}
emqx.broker=tcp://10.20.1.210:2883
emqx.user-name=admin
emqx.password=public
mqtt.scene.host=mqtt://10.20.1.210:8083/mqtt
mqtt.client.product.id=mqtt
mqtt.topic=topic_mqtt
spring.mqtt.completionTimeout=3000
emqx.max-inflight=1000
emqx.client-user-name=admin
emqx.client-password=public
## influxDB
#spring.influx.url= http://172.16.3.155:18186
#spring.influx.password=Yeejoin@2020
#spring.influx.user=root
#spring.influx.database=iot_platform
#spring.influx.retention_policy=default
#spring.influx.retention_policy_time=30d
#spring.influx.actions=10000
#spring.influx.bufferLimit=20000
## influxDB
#spring.influx.url= http://139.9.171.247:8086
#spring.influx.password=Yeejoin@2023
#spring.influx.user=admin
#spring.influx.database=iot_platform
#spring.influx.retention_policy=default
#spring.influx.retention_policy_time=30d
#spring.influx.actions=10000
#spring.influx.bufferLimit=20000
#spring.influx.url=http://10.20.1.157:18086
#spring.influx.password=Yeejoin@2020
#spring.influx.user=root
#spring.influx.database=iot_platform
#spring.influx.retention_policy=default
#spring.influx.retention_policy_time=30d
#spring.influx.actions=10000
#spring.influx.bufferLimit=20000
knife4j.production=false
knife4j.enable=true
knife4j.basic.enable=true
knife4j.basic.username=admin
knife4j.basic.password=a1234560
management.security.enabled=true
spring.security.user.name=admin
spring.security.user.password=a1234560
fire-rescue=123
mybatis-plus.global-config.db-config.update-strategy=ignored
# user-amos setting : This value is the secretkey for person manage moudle accout password encryption.please don't change it!!!
amos.secret.key=qaz
# if your service can't be access ,you can use this setting , you need change ip as your.
#eureka.instance.prefer-ip-address=true
#eureka.instance.ip-address=172.16.3.122
spring.activemq.broker-url=tcp://10.20.1.210:61616
spring.activemq.user=admin
spring.activemq.password=admin
spring.jms.pub-sub-domain=false
myqueue=amos.privilege.v1.JXIOP.AQSC_FDGL.userBusiness
spring.elasticsearch.rest.uris=http://10.20.0.223:9200
spring.elasticsearch.rest.connection-timeout=30000
spring.elasticsearch.rest.username=elastic
spring.elasticsearch.rest.password=Yeejoin@2020
spring.elasticsearch.rest.read-timeout=30000
# ?????????
fan.statuts.stattuspath=upload/jxiop/device_status
pictureUrl=upload/jxiop/syz/
# Ԥ
idx.predict.serviceUrl=http://10.20.1.157:8095/jxdj/predict-data
forecast.url=
logic=
\ No newline at end of file
......@@ -2,7 +2,7 @@ spring.application.name=AMOS-JXIOP-BIGSCREEN-WJ
server.servlet.context-path=/jxiop-bigscreen
server.port=33300
server.uri-encoding=UTF-8
spring.profiles.active=dev1
spring.profiles.active=kingbase8
spring.jackson.time-zone=GMT+8
spring.jackson.date-format=yyyy-MM-dd HH:mm:ss
logging.config=classpath:logback-${spring.profiles.active}.xml
......
<?xml version="1.0" encoding="UTF-8"?>
<configuration debug="false">
<!--定义日志文件的存储地址 勿在 LogBack 的配置中使用相对路径-->
<property name="LOG_HOME" value="log" />
<property name="LOG_PATTERN" value="%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %-50.50logger{50} - %msg [%file:%line] %n" />
<!-- 按照每天生成日志文件 -->
<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!--日志文件输出的文件名-->
<FileNamePattern>${LOG_HOME}/ccs.log.%d{yyyy-MM-dd}.log</FileNamePattern>
<!--日志文件保留天数-->
<MaxHistory>7</MaxHistory>
</rollingPolicy>
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
<!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符-->
<pattern>${LOG_PATTERN}</pattern>
</encoder>
<!--日志文件最大的大小-->
<triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
<MaxFileSize>30mb</MaxFileSize>
</triggeringPolicy>
</appender>
<!-- 控制台输出 -->
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
<!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符-->
<pattern>${LOG_PATTERN}</pattern>
</encoder>
</appender>
<!--myibatis log configure-->
<logger name="com.apache.ibatis" level="DEBUG"/>
<logger name="java.sql.Connection" level="DEBUG"/>
<logger name="java.sql.Statement" level="DEBUG"/>
<logger name="java.sql.PreparedStatement" level="DEBUG"/>
<logger name="com.baomidou.mybatisplus" level="DEBUG"/>
<logger name="org.springframework" level="DEBUG"/>
<logger name="org.typroject" level="DEBUG"/>
<logger name="com.yeejoin" level="DEBUG"/>
<!-- 日志输出级别 -->
<root level="INFO">
<appender-ref ref="FILE" />
<appender-ref ref="STDOUT" />
</root>
</configuration>
......@@ -2,7 +2,7 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yeejoin.amos.boot.module.jxiop.biz.mapper2.SjglZsjZsbtzMapper">
<select id="getStationCapactityByStationWerks" resultType="Double">
select SUM(CAPACITYL) from sjgl_zsj_zsbtz where WERKS = #{WERKS}
select SUM(IFNULL(trim(CAPACITYL),0)) from sjgl_zsj_zsbtz where WERKS = #{WERKS}
</select>
<select id="getStationInfoMapByStationWerks" resultType="map">
......
......@@ -10,7 +10,7 @@ import java.util.Map;
public interface PrivilegeCompanyMapper extends BaseMapper<PrivilegeCompany> {
@Select("select SEQUENCE_NBR as sequenceNbr,ORG_CODE as orgCode,COMPANY_NAME as companyName ,LEVEL as level from privilege_company where COMPANY_TYPE = 'region' and IS_DELETED = 0 ")
@Select("select SEQUENCE_NBR as sequenceNbr,ORG_CODE as orgCode,COMPANY_NAME as companyName ,LEVEL_ as level_ from privilege_company where COMPANY_TYPE = 'region' and IS_DELETED = 0 ")
public List<PrivilegeCompany> getAreaCompany();
......
......@@ -17,7 +17,7 @@ import java.util.Map;
* @createDate: 2023/11/9
*/
public interface UserEmpowerMapper extends BaseMapper<StdUserEmpower> {
@Select("select company_name as companyName , level from privilege_company where org_code = #{orgCode}")
@Select("select company_name as companyName , level_ from privilege_company where org_code = #{orgCode}")
Map<String,String> getCompanyInfoByOrgCode(String orgCode);
List<CompanyModel> getCompanyBoList(@Param("companyType") String companyType,
......
......@@ -7,8 +7,6 @@ import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import java.util.List;
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
......@@ -24,8 +22,8 @@ public class PrivilegeCompany extends BaseEntity {
private Long parentId;
@TableField("REGION_SEQ")
private String regionSeq;
@TableField("LEVEL")
private String level;
@TableField("LEVEL_")
private String level_;
@TableField("EMAIL")
private String email;
@TableField("LONGITUDE")
......
......@@ -191,9 +191,9 @@ public class IPermissionServiceImpl implements IPermissionService {
//outer_company 外部公司 当前特殊区域公司标记为 级别为 外部公司来区分
if (type.equals("outer_company")){
areaCompany= areaCompany.stream().filter(e -> e.getLevel().equals("outer_company")).collect(Collectors.toList());
areaCompany= areaCompany.stream().filter(e -> e.getLevel_().equals("outer_company")).collect(Collectors.toList());
}else {
areaCompany= areaCompany.stream().filter(e -> !e.getLevel().equals("outer_company")).collect(Collectors.toList());
areaCompany= areaCompany.stream().filter(e -> !e.getLevel_().equals("outer_company")).collect(Collectors.toList());
// PrivilegeCompany all = new PrivilegeCompany();
// all.setCompanyName("全部");
// all.setOrgCode("all");
......
......@@ -185,6 +185,7 @@ public class PersonBasicServiceImpl extends BaseService<PersonBasicDto, PersonBa
// 人员基础信息
PersonBasic personBasic = new PersonBasic();
BeanUtils.copyProperties(personUser, personBasic);
personBasic.setRecDate(new Date());
// 默认红码
personBasic.setQrcodeColor(QrcodeColorEnum.RED.getCode());
personBasic.setQrcodeDesc("证书不全");
......@@ -442,6 +443,7 @@ public class PersonBasicServiceImpl extends BaseService<PersonBasicDto, PersonBa
// 人员基础信息
PersonBasic personBasic = personBasicMapper.selectById(sequenceNbr);
personBasic.setRecDate(new Date());
personBasic.setSequenceNbr(sequenceNbr);
personAccount.setPassword(DesUtil.encode(personAccount.getPassword(), secretKey));
personAccount.setSecondaryPassword(DesUtil.encode(personAccount.getSecondaryPassword(), secretKey));
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment