Compare commits
10 Commits
8880308998
...
5d2770f4de
Author | SHA1 | Date | |
---|---|---|---|
![]() |
5d2770f4de | ||
![]() |
179a14f26b | ||
![]() |
cf954a0a43 | ||
![]() |
62fb1dc3ce | ||
![]() |
080a5480b7 | ||
![]() |
1ac7bbfe4d | ||
![]() |
26f02dfa80 | ||
![]() |
659bb50ad1 | ||
![]() |
8b2c6db242 | ||
![]() |
04e6021156 |
41
.gitea/.m2/settings.xml
Normal file
41
.gitea/.m2/settings.xml
Normal file
@@ -0,0 +1,41 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" ?>
|
||||||
|
|
||||||
|
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
|
||||||
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||||
|
xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
|
||||||
|
<localRepository>.m2/repository</localRepository>
|
||||||
|
<pluginGroups>
|
||||||
|
</pluginGroups>
|
||||||
|
|
||||||
|
<proxies>
|
||||||
|
</proxies>
|
||||||
|
|
||||||
|
<mirrors>
|
||||||
|
<mirror>
|
||||||
|
<id>maven-public</id>
|
||||||
|
<mirrorOf>*</mirrorOf>
|
||||||
|
<name>maven-public</name>
|
||||||
|
<url>https://maven.aliyun.com/repository/public</url>
|
||||||
|
</mirror>
|
||||||
|
</mirrors>
|
||||||
|
|
||||||
|
<profiles>
|
||||||
|
<profile>
|
||||||
|
<id>jdk-8</id>
|
||||||
|
<activation>
|
||||||
|
<activeByDefault>true</activeByDefault>
|
||||||
|
<jdk>8</jdk>
|
||||||
|
</activation>
|
||||||
|
<properties>
|
||||||
|
<maven.compiler.source>8</maven.compiler.source>
|
||||||
|
<maven.compiler.target>8</maven.compiler.target>
|
||||||
|
<maven.compiler.compilerVersion>8</maven.compiler.compilerVersion>
|
||||||
|
</properties>
|
||||||
|
</profile>
|
||||||
|
</profiles>
|
||||||
|
|
||||||
|
<activeProfiles>
|
||||||
|
<activeProfile>jdk-8</activeProfile>
|
||||||
|
</activeProfiles>
|
||||||
|
|
||||||
|
</settings>
|
51
.gitea/workflows/ci.yaml
Normal file
51
.gitea/workflows/ci.yaml
Normal file
@@ -0,0 +1,51 @@
|
|||||||
|
name: ci
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches:
|
||||||
|
- test
|
||||||
|
|
||||||
|
env:
|
||||||
|
MAVEN_OPTS: >-
|
||||||
|
-Dhttps.protocols=TLSv1.2
|
||||||
|
-Dmaven.repo.local=${{ github.workspace }}/.m2/repository
|
||||||
|
-Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=WARN
|
||||||
|
-Dorg.slf4j.simpleLogger.showDateTime=true
|
||||||
|
-Djava.awt.headless=true
|
||||||
|
MAVEN_CLI_OPTS: >-
|
||||||
|
--batch-mode --errors --fail-at-end --show-version
|
||||||
|
--settings ${{ github.workspace }}/.gitea/.m2/settings.xml
|
||||||
|
-DinstallAtEnd=true -DdeployAtEnd=true
|
||||||
|
DEPLOY_PATH: /home/opt/app/material-manage-service
|
||||||
|
DEPLOY_TEST_HOST_IP: 172.17.0.1
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
build:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
container:
|
||||||
|
image: python:3.7.16
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: Checkout
|
||||||
|
run: |
|
||||||
|
git clone --depth 1 "http://test:89085111dd6939710a992d6404bd61a50e420685@8.138.239.222:20300/${GITHUB_REPOSITORY}.git" .
|
||||||
|
git checkout "${GITHUB_SHA}"
|
||||||
|
|
||||||
|
- name: Build
|
||||||
|
run: |
|
||||||
|
mvn $MAVEN_CLI_OPTS clean compile package -Dmaven.test.skip=true $MAVEN_OPTS
|
||||||
|
|
||||||
|
- name: Deploy
|
||||||
|
run: |
|
||||||
|
mkdir -p ~/.ssh
|
||||||
|
chmod 700 ~/.ssh
|
||||||
|
echo "Host *\n\tStrictHostKeyChecking no\n\n" > ~/.ssh/config
|
||||||
|
echo "${{ secrets.DEPLOY_SSH_KEY }}" > ~/.ssh/id_rsa
|
||||||
|
chmod 600 ~/.ssh/id_rsa
|
||||||
|
ssh -o StrictHostKeyChecking=no root@$DEPLOY_TEST_HOST_IP "mkdir -p $DEPLOY_PATH"
|
||||||
|
ssh root@$DEPLOY_TEST_HOST_IP "rm -f $DEPLOY_PATH/*.jar"
|
||||||
|
scp target/material-manage-service-*-SNAPSHOT.jar root@$DEPLOY_TEST_HOST_IP:$DEPLOY_PATH/
|
||||||
|
ssh root@$DEPLOY_TEST_HOST_IP "mv $DEPLOY_PATH/material-manage-service-*-SNAPSHOT.jar $DEPLOY_PATH/app.jar"
|
||||||
|
scp docker-compose.test.yml root@$DEPLOY_TEST_HOST_IP:$DEPLOY_PATH/
|
||||||
|
ssh root@$DEPLOY_TEST_HOST_IP "mv $DEPLOY_PATH/docker-compose.test.yml $DEPLOY_PATH/docker-compose.yml"
|
||||||
|
ssh root@$DEPLOY_TEST_HOST_IP "cd $DEPLOY_PATH && docker compose up -d --force-recreate"
|
@@ -13,4 +13,10 @@ services:
|
|||||||
- "19882:9882"
|
- "19882:9882"
|
||||||
environment:
|
environment:
|
||||||
- TZ="Asia/Shanghai"
|
- TZ="Asia/Shanghai"
|
||||||
entrypoint: java -server -Xms256m -Xmx256m -jar app.jar --spring.profiles.active=test
|
entrypoint: java -server -Xms256m -Xmx256m -jar app.jar --spring.profiles.active=test
|
||||||
|
networks:
|
||||||
|
- server
|
||||||
|
|
||||||
|
networks:
|
||||||
|
server:
|
||||||
|
external: true
|
||||||
|
@@ -21,6 +21,7 @@ public interface DataToolApi {
|
|||||||
@GET("/data/collect")
|
@GET("/data/collect")
|
||||||
Call<NcHttpResponse<String>> collect(
|
Call<NcHttpResponse<String>> collect(
|
||||||
@Query(value = "year") Integer year,
|
@Query(value = "year") Integer year,
|
||||||
@Query(value = "month") Integer month
|
@Query(value = "month") Integer month,
|
||||||
|
@Query(value = "only_avg") Integer onlyAvg
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
@@ -32,8 +32,8 @@ public class DataToolService implements ApiService<DataToolApi> {
|
|||||||
return response;
|
return response;
|
||||||
}
|
}
|
||||||
|
|
||||||
public NcHttpResponse<String> collect (Integer year, Integer month) throws Exception {
|
public NcHttpResponse<String> collect (Integer year, Integer month, Integer onlyAvg) throws Exception {
|
||||||
var call = this.api.collect(year, month);
|
var call = this.api.collect(year, month, onlyAvg);
|
||||||
var response = this.getResponse(call).body();
|
var response = this.getResponse(call).body();
|
||||||
return response;
|
return response;
|
||||||
}
|
}
|
||||||
|
@@ -237,14 +237,17 @@ public class MaterialTaskType {
|
|||||||
*/
|
*/
|
||||||
public static boolean isNetworkPrice(Integer type) {
|
public static boolean isNetworkPrice(Integer type) {
|
||||||
var types = List.of(
|
var types = List.of(
|
||||||
FUZHOU_NETWORK,
|
FUZHOU_NETWORK,
|
||||||
LONGYAN_NETWORK,
|
LONGYAN_NETWORK,
|
||||||
NANPING_NETWORK,
|
NANPING_NETWORK,
|
||||||
NINGDE_NETWORK,
|
NINGDE_NETWORK,
|
||||||
PINTAN_NETWORK,
|
PINTAN_NETWORK,
|
||||||
PUTIAN_NETWORK,
|
PUTIAN_NETWORK,
|
||||||
QUANZHOU_NETWORK,
|
QUANZHOU_NETWORK,
|
||||||
SANMING_NETWORK
|
SANMING_NETWORK,
|
||||||
|
XIAMEN_NETWORK,
|
||||||
|
ZHANGZHOU_NETWORK,
|
||||||
|
ZHANGZHOUKFQ_NETWORK
|
||||||
);
|
);
|
||||||
return types.contains(type);
|
return types.contains(type);
|
||||||
}
|
}
|
||||||
|
@@ -1,5 +1,6 @@
|
|||||||
package mjkf.xinke.main.controller;
|
package mjkf.xinke.main.controller;
|
||||||
|
|
||||||
|
import cn.hutool.core.util.ObjectUtil;
|
||||||
import com.jgy.xxs.core.http.resp.HttpResponse;
|
import com.jgy.xxs.core.http.resp.HttpResponse;
|
||||||
import io.swagger.annotations.ApiOperation;
|
import io.swagger.annotations.ApiOperation;
|
||||||
import io.swagger.annotations.ApiParam;
|
import io.swagger.annotations.ApiParam;
|
||||||
@@ -11,9 +12,11 @@ import mjkf.xinke.main.service.data.DataAdjacentService;
|
|||||||
import mjkf.xinke.main.service.data.LocalMaterialService;
|
import mjkf.xinke.main.service.data.LocalMaterialService;
|
||||||
import mjkf.xinke.main.service.PricePublishService;
|
import mjkf.xinke.main.service.PricePublishService;
|
||||||
import mjkf.xinke.main.service.PriceResultService;
|
import mjkf.xinke.main.service.PriceResultService;
|
||||||
|
import org.springframework.format.annotation.DateTimeFormat;
|
||||||
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
|
||||||
import javax.annotation.Resource;
|
import javax.annotation.Resource;
|
||||||
|
import java.util.Date;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
|
|
||||||
@@ -33,13 +36,20 @@ public class DataShowingController {
|
|||||||
@Resource
|
@Resource
|
||||||
DataAdjacentService dataAdjacentService;
|
DataAdjacentService dataAdjacentService;
|
||||||
|
|
||||||
|
|
||||||
@ApiOperation("钢材")
|
@ApiOperation("钢材")
|
||||||
@GetMapping("/steel")
|
@GetMapping("/steel")
|
||||||
public HttpResponse steel (
|
public HttpResponse steel (
|
||||||
@ApiParam(value = "材料编号") @RequestParam(value="materialId", required = false) String materialId
|
@ApiParam(value = "材料编号") @RequestParam(value="materialId", required = false) String materialId,
|
||||||
|
@ApiParam(value = "起始日期") @RequestParam(value="startDate", required = false) @DateTimeFormat(pattern = "yyyy-MM-dd") Date startDate,
|
||||||
|
@ApiParam(value = "结束日期") @RequestParam(value="endDate", required = false) @DateTimeFormat(pattern = "yyyy-MM-dd") Date endDate
|
||||||
) throws Exception {
|
) throws Exception {
|
||||||
var query = priceResultService.getQueryByMaterialId(materialId);
|
var query = priceResultService.getQueryByMaterialId(materialId);
|
||||||
query = priceResultService.queryLastYear(query);
|
if (ObjectUtil.isNotEmpty(startDate) || ObjectUtil.isNotEmpty(endDate)) {
|
||||||
|
|
||||||
|
} else {
|
||||||
|
query = priceResultService.queryLastYear(query);
|
||||||
|
}
|
||||||
var result = priceResultService.list(query);
|
var result = priceResultService.list(query);
|
||||||
return FuHttpResponse.Builder().dataResponse(result).build();
|
return FuHttpResponse.Builder().dataResponse(result).build();
|
||||||
}
|
}
|
||||||
|
@@ -1,5 +1,6 @@
|
|||||||
package mjkf.xinke.main.controller;
|
package mjkf.xinke.main.controller;
|
||||||
|
|
||||||
|
import cn.hutool.core.util.ObjectUtil;
|
||||||
import com.jgy.xxs.core.http.exp.NcHttpException;
|
import com.jgy.xxs.core.http.exp.NcHttpException;
|
||||||
import com.jgy.xxs.core.http.resp.HttpResponse;
|
import com.jgy.xxs.core.http.resp.HttpResponse;
|
||||||
import io.swagger.annotations.ApiOperation;
|
import io.swagger.annotations.ApiOperation;
|
||||||
@@ -12,6 +13,7 @@ import mjkf.xinke.main.constant.HttpErrorResponseEnum;
|
|||||||
import mjkf.xinke.main.constant.PricePublishStatus;
|
import mjkf.xinke.main.constant.PricePublishStatus;
|
||||||
import mjkf.xinke.main.model.db.PricePublish;
|
import mjkf.xinke.main.model.db.PricePublish;
|
||||||
import mjkf.xinke.main.model.vo.PricePublishEditRequest;
|
import mjkf.xinke.main.model.vo.PricePublishEditRequest;
|
||||||
|
import mjkf.xinke.main.service.MaterialService;
|
||||||
import mjkf.xinke.main.service.PricePublishService;
|
import mjkf.xinke.main.service.PricePublishService;
|
||||||
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
|
||||||
@@ -32,6 +34,8 @@ public class PricePublishController {
|
|||||||
|
|
||||||
@Resource
|
@Resource
|
||||||
PricePublishService pricePublishService;
|
PricePublishService pricePublishService;
|
||||||
|
@Resource
|
||||||
|
MaterialService materialService;
|
||||||
|
|
||||||
@ApiOperation("获取发布价格数据列表")
|
@ApiOperation("获取发布价格数据列表")
|
||||||
@GetMapping("/")
|
@GetMapping("/")
|
||||||
@@ -52,9 +56,15 @@ public class PricePublishController {
|
|||||||
year = date.getYear();
|
year = date.getYear();
|
||||||
month = date.getMonthValue();
|
month = date.getMonthValue();
|
||||||
}
|
}
|
||||||
|
|
||||||
var query = pricePublishService.getQuery(year, month, materialId, name, spec, type);
|
var query = pricePublishService.getQuery(year, month, materialId, name, spec, type);
|
||||||
|
var materialMap = materialService.mapCode();
|
||||||
var result = pricePublishService.list(query);
|
var result = pricePublishService.list(query);
|
||||||
|
for (var item: result) {
|
||||||
|
var meterial = materialMap.get(item.getMaterialId());
|
||||||
|
if (ObjectUtil.isNotEmpty(meterial)) {
|
||||||
|
item.setRoundBit(meterial.getRoundBit());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
return FuHttpResponse.Builder().dataResponse(result).build();
|
return FuHttpResponse.Builder().dataResponse(result).build();
|
||||||
}
|
}
|
||||||
@@ -148,9 +158,10 @@ public class PricePublishController {
|
|||||||
@GetMapping("/collect")
|
@GetMapping("/collect")
|
||||||
public HttpResponse collect(
|
public HttpResponse collect(
|
||||||
@ApiParam("年份") @RequestParam("year") Integer year,
|
@ApiParam("年份") @RequestParam("year") Integer year,
|
||||||
@ApiParam("月份") @RequestParam(value = "month") Integer month
|
@ApiParam("月份") @RequestParam(value = "month") Integer month,
|
||||||
|
@ApiParam("仅计算半年均价") @RequestParam(value = "onlyAvg", required = false, defaultValue = "0") Integer onlyAvg
|
||||||
) throws Exception {
|
) throws Exception {
|
||||||
var result = dataToolService.collect(year, month);
|
var result = dataToolService.collect(year, month, onlyAvg);
|
||||||
return FuHttpResponse.Builder().dataResponse(result).build();
|
return FuHttpResponse.Builder().dataResponse(result).build();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -91,6 +91,9 @@ public class DataFujian extends Model<DataFujian> {
|
|||||||
public DataFujian (Row row, MaterialTask task) {
|
public DataFujian (Row row, MaterialTask task) {
|
||||||
var policy = Row.MissingCellPolicy.CREATE_NULL_AS_BLANK;
|
var policy = Row.MissingCellPolicy.CREATE_NULL_AS_BLANK;
|
||||||
row.getCell(0, policy).setCellType(CellType.STRING);
|
row.getCell(0, policy).setCellType(CellType.STRING);
|
||||||
|
row.getCell(1, policy).setCellType(CellType.STRING);
|
||||||
|
row.getCell(2, policy).setCellType(CellType.STRING);
|
||||||
|
row.getCell(3, policy).setCellType(CellType.STRING);
|
||||||
row.getCell(5, policy).setCellType(CellType.NUMERIC);
|
row.getCell(5, policy).setCellType(CellType.NUMERIC);
|
||||||
this.setNumber(row.getCell(0, policy).getStringCellValue());
|
this.setNumber(row.getCell(0, policy).getStringCellValue());
|
||||||
this.setName(row.getCell(1, policy).getStringCellValue().replace(" ", ""));
|
this.setName(row.getCell(1, policy).getStringCellValue().replace(" ", ""));
|
||||||
|
@@ -102,6 +102,10 @@ public class LocalMaterial extends Model<LocalMaterial> {
|
|||||||
public LocalMaterial (Row row, MaterialTask task) {
|
public LocalMaterial (Row row, MaterialTask task) {
|
||||||
var policy = Row.MissingCellPolicy.CREATE_NULL_AS_BLANK;
|
var policy = Row.MissingCellPolicy.CREATE_NULL_AS_BLANK;
|
||||||
row.getCell(0).setCellType(CellType.STRING);
|
row.getCell(0).setCellType(CellType.STRING);
|
||||||
|
row.getCell(6).setCellType(CellType.NUMERIC);
|
||||||
|
row.getCell(7).setCellType(CellType.NUMERIC);
|
||||||
|
row.getCell(8).setCellType(CellType.STRING);
|
||||||
|
row.getCell(9).setCellType(CellType.STRING);
|
||||||
this.setMaterialId(row.getCell(0, policy).getStringCellValue());
|
this.setMaterialId(row.getCell(0, policy).getStringCellValue());
|
||||||
this.setCity(row.getCell(1, policy).getStringCellValue());
|
this.setCity(row.getCell(1, policy).getStringCellValue());
|
||||||
this.setCounty(row.getCell(2, policy).getStringCellValue());
|
this.setCounty(row.getCell(2, policy).getStringCellValue());
|
||||||
@@ -109,13 +113,16 @@ public class LocalMaterial extends Model<LocalMaterial> {
|
|||||||
this.setSpec(row.getCell(4, policy).getStringCellValue().replace(" ", ""));
|
this.setSpec(row.getCell(4, policy).getStringCellValue().replace(" ", ""));
|
||||||
this.setUnit(row.getCell(5, policy).getStringCellValue());
|
this.setUnit(row.getCell(5, policy).getStringCellValue());
|
||||||
this.setPrice(BigDecimal.valueOf(row.getCell(6, policy).getNumericCellValue()));
|
this.setPrice(BigDecimal.valueOf(row.getCell(6, policy).getNumericCellValue()));
|
||||||
this.setPriceWithoutTax(BigDecimal.valueOf(row.getCell(7, policy).getNumericCellValue()));
|
this.setPriceWithoutTax(BigDecimal.valueOf(row.getCell(7, policy).getNumericCellValue()));
|
||||||
this.setPosition(row.getCell(8, policy).getStringCellValue());
|
this.setPosition(row.getCell(8, policy).getStringCellValue());
|
||||||
this.setRemark(row.getCell(9, policy).getStringCellValue());
|
this.setRemark(row.getCell(9, policy).getStringCellValue());
|
||||||
this.setDate(LocalDate.of(task.getYear(), task.getMonth(), 1)); // 从任务获取日期
|
this.setDate(LocalDate.of(task.getYear(), task.getMonth(), 1)); // 从任务获取日期
|
||||||
if (this.getMaterialId().isEmpty()) {
|
if (this.getMaterialId().isEmpty()) {
|
||||||
throw new IllegalArgumentException("材料编码为空");
|
throw new IllegalArgumentException("材料编码为空");
|
||||||
}
|
}
|
||||||
|
if (ObjectUtil.isEmpty(this.getCounty())) {
|
||||||
|
throw new IllegalArgumentException("缺少区县");
|
||||||
|
}
|
||||||
if (ObjectUtil.isEmpty(this.getPrice())) {
|
if (ObjectUtil.isEmpty(this.getPrice())) {
|
||||||
throw new IllegalArgumentException("缺少价格");
|
throw new IllegalArgumentException("缺少价格");
|
||||||
}
|
}
|
||||||
|
@@ -196,6 +196,10 @@ public class PricePublish extends Model<PricePublish> {
|
|||||||
@TableField("DISPLAY_DIGIT")
|
@TableField("DISPLAY_DIGIT")
|
||||||
private Integer displayDigit;
|
private Integer displayDigit;
|
||||||
|
|
||||||
|
@ApiModelProperty("计算小数位数")
|
||||||
|
@TableField(exist = false)
|
||||||
|
private Integer roundBit;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Serializable pkVal() {
|
public Serializable pkVal() {
|
||||||
return this.id;
|
return this.id;
|
||||||
|
@@ -193,15 +193,20 @@ public class PriceResult extends Model<PriceResult> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public void refreshWeight() {
|
public void refreshWeight() {
|
||||||
|
// 浮动
|
||||||
var fluctuatingSum = fluctuatingFtb * weightFtb + fluctuatingSs * weightSs + fluctuatingFhb * weightFhb + fluctuatingNetwork * weightNetwork + fluctuatingSurvey * weightSurvey;
|
var fluctuatingSum = fluctuatingFtb * weightFtb + fluctuatingSs * weightSs + fluctuatingFhb * weightFhb + fluctuatingNetwork * weightNetwork + fluctuatingSurvey * weightSurvey;
|
||||||
var weight = weightFtb + weightSs + weightFhb + weightNetwork + weightSurvey;
|
var weight = weightFtb + weightSs + weightFhb + weightNetwork + weightSurvey;
|
||||||
var fluctuatingWeightedMean = fluctuatingSum / weight;
|
var fluctuatingWeightedMean = fluctuatingSum / weight;
|
||||||
|
// 计算价
|
||||||
fluctuatingRecommend = fluctuatingWeightedMean;
|
var priceSum = priceFtb * weightFtb + priceSs * weightSs + priceFhb * weightFhb + priceNetwork * weightNetwork + priceSurvey * weightSurvey;
|
||||||
|
var priceWeightedMean = priceSum / weight;
|
||||||
|
this.priceCalculate = priceWeightedMean;
|
||||||
|
// 推荐价
|
||||||
|
this.fluctuatingRecommend = fluctuatingWeightedMean;
|
||||||
if (priceLastMonth.equals(0f) || ObjectUtil.isEmpty(priceLastMonth)) {
|
if (priceLastMonth.equals(0f) || ObjectUtil.isEmpty(priceLastMonth)) {
|
||||||
priceRecommend = priceCalculate + fluctuatingRecommend;
|
this.priceRecommend = priceCalculate + fluctuatingRecommend;
|
||||||
} else {
|
} else {
|
||||||
priceRecommend = priceLastMonth + fluctuatingRecommend;
|
this.priceRecommend = priceLastMonth + fluctuatingRecommend;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -1,9 +1,12 @@
|
|||||||
package mjkf.xinke.main.model.vo;
|
package mjkf.xinke.main.model.vo;
|
||||||
|
|
||||||
|
import com.fasterxml.jackson.databind.PropertyNamingStrategies;
|
||||||
|
import com.fasterxml.jackson.databind.annotation.JsonNaming;
|
||||||
import io.swagger.annotations.ApiModelProperty;
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
|
||||||
@Data
|
@Data
|
||||||
|
@JsonNaming(PropertyNamingStrategies.SnakeCaseStrategy.class)
|
||||||
public class MaterialEditRequest {
|
public class MaterialEditRequest {
|
||||||
|
|
||||||
// @ApiModelProperty("分类1")
|
// @ApiModelProperty("分类1")
|
||||||
|
@@ -6,6 +6,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
|||||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
import java.util.Map;
|
||||||
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
@Service
|
@Service
|
||||||
public class MaterialService extends ServiceImpl<BaseMapper<Material>, Material> {
|
public class MaterialService extends ServiceImpl<BaseMapper<Material>, Material> {
|
||||||
@Deprecated
|
@Deprecated
|
||||||
@@ -49,5 +52,11 @@ public class MaterialService extends ServiceImpl<BaseMapper<Material>, Material>
|
|||||||
query.eq(Material::getCode, code);
|
query.eq(Material::getCode, code);
|
||||||
return this.getOne(query, false);
|
return this.getOne(query, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public Map<String, Material> mapCode() {
|
||||||
|
var list = this.list();
|
||||||
|
var result = list.stream().collect(Collectors.toMap(i->i.getCode(), i->i));
|
||||||
|
return result;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -49,7 +49,7 @@ public class DataNetworkService extends DataService<BaseMapper<DataNetwork>, Dat
|
|||||||
|
|
||||||
public DataNetwork getMapGroupingBy(Map item) {
|
public DataNetwork getMapGroupingBy(Map item) {
|
||||||
var o = new DataNetwork();
|
var o = new DataNetwork();
|
||||||
o.setMaterialId(item.get("Material_id").toString());
|
o.setMaterialId(item.get("material_id").toString());
|
||||||
return o;
|
return o;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -35,8 +35,7 @@ public class LocalMaterialService extends DataService<BaseMapper<LocalMaterial>,
|
|||||||
|
|
||||||
public LambdaQueryWrapper<LocalMaterial> indexQuery(LocalMaterial data) {
|
public LambdaQueryWrapper<LocalMaterial> indexQuery(LocalMaterial data) {
|
||||||
LambdaQueryWrapper<LocalMaterial> query = new LambdaQueryWrapper<>();
|
LambdaQueryWrapper<LocalMaterial> query = new LambdaQueryWrapper<>();
|
||||||
query.eq(LocalMaterial::getName, data.getName());
|
query.eq(LocalMaterial::getMaterialId, data.getMaterialId());
|
||||||
query.eq(LocalMaterial::getSpec, data.getSpec());
|
|
||||||
query.eq(LocalMaterial::getCity, data.getCity());
|
query.eq(LocalMaterial::getCity, data.getCity());
|
||||||
query.eq(LocalMaterial::getCounty, data.getCounty());
|
query.eq(LocalMaterial::getCounty, data.getCounty());
|
||||||
query.eq(LocalMaterial::getDate, data.getDate());
|
query.eq(LocalMaterial::getDate, data.getDate());
|
||||||
@@ -46,8 +45,7 @@ public class LocalMaterialService extends DataService<BaseMapper<LocalMaterial>,
|
|||||||
public LambdaQueryWrapper<LocalMaterial> trendQuery(Object obj, Integer year, Integer month) {
|
public LambdaQueryWrapper<LocalMaterial> trendQuery(Object obj, Integer year, Integer month) {
|
||||||
var data = (LocalMaterial) obj;
|
var data = (LocalMaterial) obj;
|
||||||
LambdaQueryWrapper<LocalMaterial> query = new LambdaQueryWrapper<>();
|
LambdaQueryWrapper<LocalMaterial> query = new LambdaQueryWrapper<>();
|
||||||
query.eq(LocalMaterial::getName, data.getName());
|
query.eq(LocalMaterial::getMaterialId, data.getMaterialId());
|
||||||
query.eq(LocalMaterial::getSpec, data.getSpec());
|
|
||||||
query.eq(LocalMaterial::getCounty, data.getCounty());
|
query.eq(LocalMaterial::getCounty, data.getCounty());
|
||||||
var date = LocalDate.of(year, month, 1);
|
var date = LocalDate.of(year, month, 1);
|
||||||
query.between(LocalMaterial::getDate, date.minusYears(1), date.plusMonths(1));
|
query.between(LocalMaterial::getDate, date.minusYears(1), date.plusMonths(1));
|
||||||
|
@@ -0,0 +1,357 @@
|
|||||||
|
CREATE TABLE material_manage.asphalt_domestic
|
||||||
|
(
|
||||||
|
ID int(11) PRIMARY KEY NOT NULL AUTO_INCREMENT,
|
||||||
|
NAME varchar(128) COMMENT '名称',
|
||||||
|
PRICE decimal(16,4) COMMENT '价格',
|
||||||
|
DATE date COMMENT '日期',
|
||||||
|
`FROM` date COMMENT '数据来源'
|
||||||
|
);
|
||||||
|
CREATE UNIQUE INDEX Idx_key ON material_manage.asphalt_domestic (NAME, DATE, `FROM`);
|
||||||
|
CREATE TABLE material_manage.asphalt_imported
|
||||||
|
(
|
||||||
|
ID int(11) PRIMARY KEY NOT NULL AUTO_INCREMENT,
|
||||||
|
NAME varchar(128) COMMENT '名称',
|
||||||
|
PRICE decimal(16,4) COMMENT '价格',
|
||||||
|
DATE date COMMENT '日期'
|
||||||
|
);
|
||||||
|
CREATE UNIQUE INDEX Idx_key ON material_manage.asphalt_imported (NAME, DATE);
|
||||||
|
CREATE TABLE material_manage.asphalt_modifier
|
||||||
|
(
|
||||||
|
ID int(11) PRIMARY KEY NOT NULL AUTO_INCREMENT,
|
||||||
|
NAME varchar(128) COMMENT '名称',
|
||||||
|
SPEC varchar(128) COMMENT '规格',
|
||||||
|
PRICE decimal(16,4) COMMENT '价格',
|
||||||
|
DATE date COMMENT '日期'
|
||||||
|
);
|
||||||
|
CREATE UNIQUE INDEX Idx_key ON material_manage.asphalt_modifier (NAME, SPEC, DATE);
|
||||||
|
CREATE TABLE material_manage.budget
|
||||||
|
(
|
||||||
|
ID int(11) PRIMARY KEY NOT NULL AUTO_INCREMENT,
|
||||||
|
NAME varchar(128) COMMENT '名称',
|
||||||
|
AMOUNT int(11) COMMENT '总数',
|
||||||
|
MIN_AMOUNT int(11) COMMENT '最小值',
|
||||||
|
MAX_AMOUNT int(11) COMMENT '最大值',
|
||||||
|
YEAR int(11) COMMENT '年份',
|
||||||
|
MONTHS text COMMENT '月份',
|
||||||
|
DATE date COMMENT '日期'
|
||||||
|
);
|
||||||
|
CREATE TABLE material_manage.budget_item
|
||||||
|
(
|
||||||
|
ID int(11) PRIMARY KEY NOT NULL AUTO_INCREMENT,
|
||||||
|
BUDGET_ID int(11) COMMENT '预算id',
|
||||||
|
NAME varchar(128) COMMENT '名称',
|
||||||
|
META text COMMENT '数据',
|
||||||
|
QUANTITY int(11) COMMENT '数量',
|
||||||
|
UNIT text COMMENT '单位',
|
||||||
|
UNIT_PRICE int(11) COMMENT '单价',
|
||||||
|
TOTAL_PRICE int(11) COMMENT '总价'
|
||||||
|
);
|
||||||
|
CREATE TABLE material_manage.cement
|
||||||
|
(
|
||||||
|
ID int(11) PRIMARY KEY NOT NULL AUTO_INCREMENT,
|
||||||
|
NAME varchar(128) COMMENT '名称',
|
||||||
|
SPEC varchar(128) COMMENT '规格',
|
||||||
|
PACK varchar(64) COMMENT '包装',
|
||||||
|
SOURCE varchar(64) COMMENT '产地',
|
||||||
|
PRICE decimal(16,4) COMMENT '价格',
|
||||||
|
FLUCTUATING decimal(16,4) COMMENT '浮动',
|
||||||
|
DATE date COMMENT '日期'
|
||||||
|
);
|
||||||
|
CREATE UNIQUE INDEX Idx_key ON material_manage.cement (NAME, SPEC, PACK, SOURCE, DATE);
|
||||||
|
CREATE TABLE material_manage.data_fujian
|
||||||
|
(
|
||||||
|
ID int(11) PRIMARY KEY NOT NULL AUTO_INCREMENT,
|
||||||
|
NUMBER varchar(128) COMMENT '编码',
|
||||||
|
NAME varchar(128) COMMENT '名称',
|
||||||
|
SPEC varchar(128) COMMENT '规格',
|
||||||
|
UNIT varchar(128) COMMENT '单位',
|
||||||
|
PRICE_WITHOUT_TAX decimal(16,4) COMMENT '除价格',
|
||||||
|
PRICE decimal(16,4) COMMENT '含税价',
|
||||||
|
CATEGORY varchar(128) COMMENT '分类',
|
||||||
|
YEAR int(11) COMMENT '年份',
|
||||||
|
MONTH int(11) COMMENT '月份',
|
||||||
|
CITY varchar(128) COMMENT '地市',
|
||||||
|
DATE date COMMENT '日期'
|
||||||
|
);
|
||||||
|
CREATE UNIQUE INDEX Idx_key ON material_manage.data_fujian (YEAR, MONTH, CITY, NAME, SPEC);
|
||||||
|
CREATE TABLE material_manage.data_guangdong
|
||||||
|
(
|
||||||
|
ID int(11) PRIMARY KEY NOT NULL AUTO_INCREMENT,
|
||||||
|
URL varchar(512) COMMENT '下载地址',
|
||||||
|
NAME varchar(128) COMMENT '名称',
|
||||||
|
SOURCE varchar(128) COMMENT '来源',
|
||||||
|
DATE date COMMENT '日期'
|
||||||
|
);
|
||||||
|
CREATE UNIQUE INDEX Idx_key ON material_manage.data_guangdong (NAME, DATE);
|
||||||
|
CREATE TABLE material_manage.data_network
|
||||||
|
(
|
||||||
|
ID int(11) PRIMARY KEY NOT NULL AUTO_INCREMENT,
|
||||||
|
MATERIAL_ID varchar(128),
|
||||||
|
SPEC varchar(128),
|
||||||
|
UNIT varchar(128),
|
||||||
|
BRAND varchar(128),
|
||||||
|
NAME varchar(128),
|
||||||
|
PRICE decimal(16,4),
|
||||||
|
SOURCE varchar(128),
|
||||||
|
REMARK text,
|
||||||
|
DATE date,
|
||||||
|
REGION varchar(64)
|
||||||
|
);
|
||||||
|
CREATE UNIQUE INDEX Idx_key ON material_manage.data_network (NAME, SPEC, REGION, DATE);
|
||||||
|
CREATE TABLE material_manage.data_zhejiang
|
||||||
|
(
|
||||||
|
ID int(11) PRIMARY KEY NOT NULL AUTO_INCREMENT,
|
||||||
|
URL varchar(512) COMMENT '下载地址',
|
||||||
|
NAME varchar(128) COMMENT '名称',
|
||||||
|
SOURCE varchar(128) COMMENT '来源',
|
||||||
|
DATE date COMMENT '日期'
|
||||||
|
);
|
||||||
|
CREATE UNIQUE INDEX Idx_key ON material_manage.data_zhejiang (NAME, DATE);
|
||||||
|
CREATE TABLE material_manage.fujian_survey
|
||||||
|
(
|
||||||
|
ID int(11) PRIMARY KEY NOT NULL AUTO_INCREMENT,
|
||||||
|
NAME varchar(128) COMMENT '名称',
|
||||||
|
SPEC varchar(128) COMMENT '规格',
|
||||||
|
PRICE decimal(16,4) COMMENT '价格',
|
||||||
|
DATE date COMMENT '日期',
|
||||||
|
MATERIAL_ID varchar(128) COMMENT '材料id',
|
||||||
|
UNIT varchar(128) COMMENT '单位',
|
||||||
|
BRAND varchar(128) COMMENT '品牌',
|
||||||
|
TAX int(11) COMMENT '税率',
|
||||||
|
REGION varchar(128) COMMENT '地区'
|
||||||
|
);
|
||||||
|
CREATE UNIQUE INDEX Idx_key ON material_manage.fujian_survey (NAME, SPEC, DATE, REGION);
|
||||||
|
CREATE TABLE material_manage.fuzhou_highway_bureau
|
||||||
|
(
|
||||||
|
ID int(11) PRIMARY KEY NOT NULL AUTO_INCREMENT,
|
||||||
|
NAME varchar(128) COMMENT '名称',
|
||||||
|
SPEC varchar(128) COMMENT '规格',
|
||||||
|
PRICE decimal(16,4) COMMENT '价格',
|
||||||
|
DATE date COMMENT '日期',
|
||||||
|
MATERIAL_ID varchar(128) COMMENT '材料id',
|
||||||
|
UNIT varchar(128) COMMENT '单位',
|
||||||
|
BRAND varchar(128) COMMENT '品牌',
|
||||||
|
REGION varchar(128) COMMENT '地区'
|
||||||
|
);
|
||||||
|
CREATE UNIQUE INDEX Idx_key ON material_manage.fuzhou_highway_bureau (NAME, SPEC, DATE, REGION);
|
||||||
|
CREATE TABLE material_manage.fuzhou_transportation_bureau
|
||||||
|
(
|
||||||
|
ID int(11) PRIMARY KEY NOT NULL AUTO_INCREMENT,
|
||||||
|
NAME varchar(128) COMMENT '名称',
|
||||||
|
SPEC varchar(128) COMMENT '规格',
|
||||||
|
PRICE decimal(16,4) COMMENT '价格',
|
||||||
|
DATE date COMMENT '日期',
|
||||||
|
MATERIAL_ID varchar(128) COMMENT '材料id',
|
||||||
|
UNIT varchar(128) COMMENT '单位',
|
||||||
|
BRAND varchar(128) COMMENT '品牌',
|
||||||
|
REGION varchar(128) COMMENT '地区'
|
||||||
|
);
|
||||||
|
CREATE UNIQUE INDEX Idx_key ON material_manage.fuzhou_transportation_bureau (NAME, SPEC, DATE, REGION);
|
||||||
|
CREATE TABLE material_manage.local_material
|
||||||
|
(
|
||||||
|
ID int(11) PRIMARY KEY NOT NULL AUTO_INCREMENT,
|
||||||
|
NAME varchar(128) COMMENT '名称',
|
||||||
|
CITY varchar(128) COMMENT '地市',
|
||||||
|
COUNTY varchar(128) COMMENT '区县',
|
||||||
|
MATERIAL_ID varchar(128) COMMENT '材料id',
|
||||||
|
SPEC varchar(128) COMMENT '规格',
|
||||||
|
UNIT varchar(128) COMMENT '单位',
|
||||||
|
PRICE decimal(16,4) COMMENT '价格',
|
||||||
|
PRICE_WITHOUT_TAX decimal(16,4) COMMENT '除税价',
|
||||||
|
DATE date COMMENT '日期',
|
||||||
|
POSITION varchar(256) COMMENT '位置',
|
||||||
|
REMARK text COMMENT '备注'
|
||||||
|
);
|
||||||
|
CREATE UNIQUE INDEX Idx_key ON material_manage.local_material (NAME, SPEC, CITY, COUNTY, DATE);
|
||||||
|
CREATE TABLE material_manage.material
|
||||||
|
(
|
||||||
|
ID varchar(128) PRIMARY KEY NOT NULL,
|
||||||
|
PARENT_ID varchar(128),
|
||||||
|
CATEGORY1 varchar(128) COMMENT '分类1',
|
||||||
|
CATEGORY2 varchar(128) COMMENT '分类2',
|
||||||
|
CATEGORY3 varchar(128) COMMENT '分类3',
|
||||||
|
CATEGORY4 varchar(128) COMMENT '分类4',
|
||||||
|
NAME varchar(128) COMMENT '名称',
|
||||||
|
UNIT varchar(128) COMMENT '单位',
|
||||||
|
SPEC varchar(128) COMMENT '规格',
|
||||||
|
TAX int(11) COMMENT '税率(%)',
|
||||||
|
IS_BUILTIN int(11) COMMENT '是否初始内建类型(不允许删除)',
|
||||||
|
TYPE int(11) COMMENT '材料类别(主材、地材)',
|
||||||
|
IS_TREE int(11) COMMENT '是否树',
|
||||||
|
SORT int(11) COMMENT '排序',
|
||||||
|
CODE varchar(20) COMMENT '材料编码',
|
||||||
|
ROUND_BIT int(11) COMMENT '保留小数位数',
|
||||||
|
ROUND_METHOD varchar(20) COMMENT '保留小数具体方法',
|
||||||
|
update_user_id varchar(64) COMMENT '最后更新人id',
|
||||||
|
update_user_name varchar(64) COMMENT '最后更新人名称',
|
||||||
|
update_time datetime COMMENT '最后更新时间',
|
||||||
|
create_user_id varchar(64) COMMENT '创建人id',
|
||||||
|
create_user_name varchar(64) COMMENT '创建人名称',
|
||||||
|
create_time datetime COMMENT '创建时间',
|
||||||
|
delete_user_id varchar(64) COMMENT '删除人id',
|
||||||
|
delete_user_name varchar(64) COMMENT '删除人名称',
|
||||||
|
delete_time datetime COMMENT '删除时间'
|
||||||
|
);
|
||||||
|
CREATE TABLE material_manage.material_task
|
||||||
|
(
|
||||||
|
ID int(11) PRIMARY KEY NOT NULL AUTO_INCREMENT,
|
||||||
|
NAME varchar(128) COMMENT '任务名称',
|
||||||
|
STATUS int(11) COMMENT '状态(待采集、已采集、采集中)',
|
||||||
|
FILE varchar(256) COMMENT '文件路径',
|
||||||
|
TYPE int(11) COMMENT '类型(网络爬取、文件上传)',
|
||||||
|
YEAR int(11) COMMENT '采集年份',
|
||||||
|
MONTH int(11) COMMENT '采集月份',
|
||||||
|
CONTENT mediumtext COMMENT '数据内容',
|
||||||
|
update_user_id varchar(64) COMMENT '最后更新人id',
|
||||||
|
update_user_name varchar(64) COMMENT '最后更新人名称',
|
||||||
|
update_time datetime COMMENT '最后更新时间',
|
||||||
|
create_user_id varchar(64) COMMENT '创建人id',
|
||||||
|
create_user_name varchar(64) COMMENT '创建人名称',
|
||||||
|
create_time datetime COMMENT '创建时间',
|
||||||
|
delete_user_id varchar(64) COMMENT '删除人id',
|
||||||
|
delete_user_name varchar(64) COMMENT '删除人名称',
|
||||||
|
delete_time datetime COMMENT '删除时间'
|
||||||
|
);
|
||||||
|
CREATE TABLE material_manage.oil
|
||||||
|
(
|
||||||
|
ID int(11) PRIMARY KEY NOT NULL AUTO_INCREMENT,
|
||||||
|
NAME varchar(128) COMMENT '名称',
|
||||||
|
PRICE decimal(16,4) COMMENT '价格',
|
||||||
|
DATE date COMMENT '日期'
|
||||||
|
);
|
||||||
|
CREATE UNIQUE INDEX Idx_key ON material_manage.oil (NAME, DATE);
|
||||||
|
CREATE TABLE material_manage.price_publish
|
||||||
|
(
|
||||||
|
ID int(11) PRIMARY KEY NOT NULL AUTO_INCREMENT,
|
||||||
|
YEAR int(11) COMMENT '统计年份',
|
||||||
|
MONTH int(11) COMMENT '统计月份',
|
||||||
|
MATERIAL_ID varchar(128) COMMENT '编号',
|
||||||
|
NAME varchar(128) COMMENT '材料名称',
|
||||||
|
SPEC varchar(128) COMMENT '规格',
|
||||||
|
PRICE decimal(16,4) COMMENT '价格',
|
||||||
|
PRICE_FUZHOU decimal(16,4) COMMENT '福州价格',
|
||||||
|
PRICE_XIAMEN decimal(16,4) COMMENT '厦门价格',
|
||||||
|
PRICE_PUTIAN decimal(16,4) COMMENT '莆田价格',
|
||||||
|
PRICE_SANMING decimal(16,4) COMMENT '三明价格',
|
||||||
|
PRICE_QUANZHOU decimal(16,4) COMMENT '泉州价格',
|
||||||
|
PRICE_ZHANGZHOU decimal(16,4) COMMENT '漳州价格',
|
||||||
|
PRICE_NANPIN decimal(16,4) COMMENT '南平价格',
|
||||||
|
PRICE_LONGYAN decimal(16,4) COMMENT '龙岩价格',
|
||||||
|
PRICE_NINGDE decimal(16,4) COMMENT '宁德价格',
|
||||||
|
PRICE_PINTAN decimal(16,4) COMMENT '平潭价格',
|
||||||
|
PRICE_ZHANGZHOUKFQ decimal(16,4) COMMENT '漳州开发区价格',
|
||||||
|
TAX decimal(4,2) COMMENT '税率',
|
||||||
|
STATUS int(11) COMMENT '状态',
|
||||||
|
TYPE int(11) COMMENT '类型',
|
||||||
|
UNIT varchar(128) COMMENT '单位',
|
||||||
|
DISPLAY_DIGIT int(11) COMMENT '显示小数位数',
|
||||||
|
update_user_id varchar(64) COMMENT '最后更新人id',
|
||||||
|
update_user_name varchar(64) COMMENT '最后更新人名称',
|
||||||
|
update_time datetime COMMENT '最后更新时间',
|
||||||
|
create_user_id varchar(64) COMMENT '创建人id',
|
||||||
|
create_user_name varchar(64) COMMENT '创建人名称',
|
||||||
|
create_time datetime COMMENT '创建时间',
|
||||||
|
delete_user_id varchar(64) COMMENT '删除人id',
|
||||||
|
delete_user_name varchar(64) COMMENT '删除人名称',
|
||||||
|
delete_time datetime COMMENT '删除时间'
|
||||||
|
);
|
||||||
|
CREATE TABLE material_manage.price_result
|
||||||
|
(
|
||||||
|
ID int(11) PRIMARY KEY NOT NULL AUTO_INCREMENT,
|
||||||
|
MATERIAL_ID varchar(128) COMMENT '编号',
|
||||||
|
NAME varchar(128) COMMENT '材料名称',
|
||||||
|
YEAR int(11) COMMENT '统计年份',
|
||||||
|
MONTH int(11) COMMENT '统计月份',
|
||||||
|
PRICE_FTB decimal(16,4) COMMENT '福州交通局价格',
|
||||||
|
FLUCTUATING_FTB decimal(16,4) COMMENT '福州交通局浮动',
|
||||||
|
PRICE_SS decimal(16,4) COMMENT '三明钢铁价格',
|
||||||
|
FLUCTUATING_SS decimal(16,4) COMMENT '三明钢铁浮动',
|
||||||
|
PRICE_FHB decimal(16,4) COMMENT '福州公路局价格',
|
||||||
|
FLUCTUATING_FHB decimal(16,4) COMMENT '福州公路局浮动',
|
||||||
|
PRICE_NETWORK decimal(16,4) COMMENT '网络价格',
|
||||||
|
FLUCTUATING_NETWORK decimal(16,4) COMMENT '网络浮动',
|
||||||
|
PRICE_SURVEY decimal(16,4) COMMENT '调查价格',
|
||||||
|
FLUCTUATING_SURVEY decimal(16,4) COMMENT '调查浮动',
|
||||||
|
PRICE_LAST_MONTH decimal(16,4) COMMENT '上月发布价格',
|
||||||
|
PRICE_CALCULATE decimal(16,4) COMMENT '计算价格',
|
||||||
|
PRICE_RECOMMEND decimal(16,4) COMMENT '推荐价格',
|
||||||
|
FLUCTUATING_RECOMMEND decimal(16,4) COMMENT '推荐浮动',
|
||||||
|
PRICE_FUJIAN decimal(16,4) COMMENT '住建厅价格',
|
||||||
|
FLUCTUATING_FUJIAN decimal(16,4) COMMENT '住建厅浮动',
|
||||||
|
WEIGHT_FTB decimal(16,4),
|
||||||
|
WEIGHT_SS decimal(16,4),
|
||||||
|
WEIGHT_FHB decimal(16,4),
|
||||||
|
WEIGHT_NETWORK decimal(16,4),
|
||||||
|
WEIGHT_SURVEY decimal(16,4),
|
||||||
|
SPEC varchar(128) COMMENT '规格',
|
||||||
|
UNIT varchar(128) COMMENT '单位',
|
||||||
|
DISPLAY_DIGIT int(11) COMMENT '显示小数位数',
|
||||||
|
update_user_id varchar(64) COMMENT '最后更新人id',
|
||||||
|
update_user_name varchar(64) COMMENT '最后更新人名称',
|
||||||
|
update_time datetime COMMENT '最后更新时间',
|
||||||
|
create_user_id varchar(64) COMMENT '创建人id',
|
||||||
|
create_user_name varchar(64) COMMENT '创建人名称',
|
||||||
|
create_time datetime COMMENT '创建时间',
|
||||||
|
delete_user_id varchar(64) COMMENT '删除人id',
|
||||||
|
delete_user_name varchar(64) COMMENT '删除人名称',
|
||||||
|
delete_time datetime COMMENT '删除时间'
|
||||||
|
);
|
||||||
|
CREATE TABLE material_manage.sanming_steel
|
||||||
|
(
|
||||||
|
ID int(11) PRIMARY KEY NOT NULL AUTO_INCREMENT,
|
||||||
|
NAME varchar(128) COMMENT '名称',
|
||||||
|
SPEC varchar(128) COMMENT '规格',
|
||||||
|
MATERIAL varchar(64) COMMENT '材质',
|
||||||
|
PRICE decimal(16,4) COMMENT '价格',
|
||||||
|
FLUCTUATING decimal(16,4) COMMENT '浮动',
|
||||||
|
DATE date COMMENT '日期'
|
||||||
|
);
|
||||||
|
CREATE UNIQUE INDEX Idx_key ON material_manage.sanming_steel (NAME, SPEC, DATE);
|
||||||
|
CREATE TABLE material_manage.steel_plate
|
||||||
|
(
|
||||||
|
ID int(11) PRIMARY KEY NOT NULL AUTO_INCREMENT,
|
||||||
|
NAME varchar(128) COMMENT '名称',
|
||||||
|
SPEC varchar(128) COMMENT '规格',
|
||||||
|
MATERIAL varchar(64) COMMENT '材质',
|
||||||
|
SOURCE varchar(64) COMMENT '产地',
|
||||||
|
PRICE decimal(16,4) COMMENT '价格',
|
||||||
|
FLUCTUATING decimal(16,4) COMMENT '浮动',
|
||||||
|
DATE date COMMENT '日期'
|
||||||
|
);
|
||||||
|
CREATE UNIQUE INDEX Idx_key ON material_manage.steel_plate (NAME, SPEC, MATERIAL, SOURCE, DATE);
|
||||||
|
CREATE TABLE material_manage.steel_rebar
|
||||||
|
(
|
||||||
|
ID int(11) PRIMARY KEY NOT NULL AUTO_INCREMENT,
|
||||||
|
NAME varchar(128) COMMENT '名称',
|
||||||
|
SPEC varchar(128) COMMENT '规格',
|
||||||
|
MATERIAL varchar(64) COMMENT '材质',
|
||||||
|
SOURCE varchar(64) COMMENT '产地',
|
||||||
|
PRICE decimal(16,4) COMMENT '价格',
|
||||||
|
FLUCTUATING decimal(16,4) COMMENT '浮动',
|
||||||
|
DATE date COMMENT '日期'
|
||||||
|
);
|
||||||
|
CREATE UNIQUE INDEX Idx_key ON material_manage.steel_rebar (NAME, SPEC, MATERIAL, SOURCE, DATE);
|
||||||
|
CREATE TABLE material_manage.steel_section
|
||||||
|
(
|
||||||
|
ID int(11) PRIMARY KEY NOT NULL AUTO_INCREMENT,
|
||||||
|
NAME varchar(128) COMMENT '名称',
|
||||||
|
SPEC varchar(128) COMMENT '规格',
|
||||||
|
MATERIAL varchar(64) COMMENT '材质',
|
||||||
|
SOURCE varchar(64) COMMENT '产地',
|
||||||
|
PRICE decimal(16,4) COMMENT '价格',
|
||||||
|
FLUCTUATING decimal(16,4) COMMENT '浮动',
|
||||||
|
DATE date COMMENT '日期'
|
||||||
|
);
|
||||||
|
CREATE UNIQUE INDEX Idx_key ON material_manage.steel_section (NAME, SPEC, MATERIAL, SOURCE, DATE);
|
||||||
|
CREATE TABLE material_manage.steel_strand
|
||||||
|
(
|
||||||
|
ID int(11) PRIMARY KEY NOT NULL AUTO_INCREMENT,
|
||||||
|
NAME varchar(128) COMMENT '名称',
|
||||||
|
SPEC varchar(128) COMMENT '规格',
|
||||||
|
MATERIAL varchar(64) COMMENT '材质',
|
||||||
|
SOURCE varchar(64) COMMENT '产地',
|
||||||
|
PRICE decimal(16,4) COMMENT '价格',
|
||||||
|
FLUCTUATING decimal(16,4) COMMENT '浮动',
|
||||||
|
DATE date COMMENT '日期'
|
||||||
|
);
|
||||||
|
CREATE UNIQUE INDEX Idx_key ON material_manage.steel_strand (NAME, SPEC, MATERIAL, SOURCE, DATE);
|
@@ -3,4 +3,7 @@ UPDATE MATERIAL SET ROUND_BIT = 2, ROUND_METHOD = 'none' WHERE ID IN ('300300200
|
|||||||
UPDATE MATERIAL SET ROUND_BIT = 1, ROUND_METHOD = 'none' WHERE ID IN ('2005002', '2009028', '2009033', '5005001', '5005002', '5005003', '5005006', '5005007', '5005009', '5006001', '5006002', '5009002', '6001002', '6001003');
|
UPDATE MATERIAL SET ROUND_BIT = 1, ROUND_METHOD = 'none' WHERE ID IN ('2005002', '2009028', '2009033', '5005001', '5005002', '5005003', '5005006', '5005007', '5005009', '5006001', '5006002', '5009002', '6001002', '6001003');
|
||||||
|
|
||||||
DROP INDEX Idx_key ON data_fujian;
|
DROP INDEX Idx_key ON data_fujian;
|
||||||
DROP INDEX Idx_key ON fuzhou_highway_bureau;
|
DROP INDEX Idx_key ON fuzhou_highway_bureau;
|
||||||
|
DROP INDEX Idx_key ON fujian_survey;
|
||||||
|
ALTER TABLE material ALTER COLUMN ROUND_BIT SET DEFAULT 1;
|
||||||
|
ALTER TABLE material ALTER COLUMN ROUND_METHOD SET DEFAULT 'normal';
|
@@ -4,17 +4,18 @@ spring:
|
|||||||
datasource:
|
datasource:
|
||||||
master:
|
master:
|
||||||
driver-class-name: com.mysql.cj.jdbc.Driver
|
driver-class-name: com.mysql.cj.jdbc.Driver
|
||||||
password: Xxs123456
|
# password: Xxs123456
|
||||||
url: jdbc:mysql://192.168.1.3:4306/material_manage?useUnicode=true&characterEncoding=utf-8&useSSL=false&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true&useInformationSchema=true
|
# url: jdbc:mysql://192.168.1.3:4306/material_manage?useUnicode=true&characterEncoding=utf-8&useSSL=false&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true&useInformationSchema=true
|
||||||
username: root
|
|
||||||
# password: XKKFB123456!
|
|
||||||
# url: jdbc:mysql://60.204.172.162:9306/material_manage?useUnicode=true&characterEncoding=utf-8&useSSL=false&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true&useInformationSchema=true
|
|
||||||
# username: root
|
# username: root
|
||||||
|
password: XKKFB123456!
|
||||||
|
url: jdbc:mysql://8.138.239.222:20306/material_manage?useUnicode=true&characterEncoding=utf-8&useSSL=false&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true&useInformationSchema=true
|
||||||
|
username: root
|
||||||
redis:
|
redis:
|
||||||
database: 4
|
database: 4
|
||||||
host: 127.0.0.1
|
host: 192.168.1.3
|
||||||
password: ''
|
password: Xxs123456
|
||||||
port: 6379
|
port: 6379
|
||||||
|
timeout: 10s
|
||||||
|
|
||||||
server:
|
server:
|
||||||
port: 19882
|
port: 19882
|
||||||
@@ -25,7 +26,8 @@ main:
|
|||||||
|
|
||||||
api:
|
api:
|
||||||
host:
|
host:
|
||||||
data-tool: http://localhost:7778
|
data-tool: http://localhost:17778
|
||||||
|
stirling-pdf: http://localhost:20081
|
||||||
|
|
||||||
path:
|
path:
|
||||||
predict-file-dir: C:\Users\Administrator\Documents\WeChat Files\wslshanlin\FileStorage\File\2024-07
|
predict-file-dir: C:\Users\Administrator\Documents\WeChat Files\wslshanlin\FileStorage\File\2024-07
|
@@ -19,7 +19,7 @@ main:
|
|||||||
|
|
||||||
api:
|
api:
|
||||||
host:
|
host:
|
||||||
data-tool: http://material_api:7072
|
data-tool: http://material-api:7778
|
||||||
stirling-pdf: http://stirling-pdf:8080
|
stirling-pdf: http://stirling-pdf:8080
|
||||||
|
|
||||||
path:
|
path:
|
||||||
|
Reference in New Issue
Block a user