修复已知问题
This commit is contained in:
21
ailanyin-admin/src/main/java/com/ailanyin/admin/Test.java
Normal file
21
ailanyin-admin/src/main/java/com/ailanyin/admin/Test.java
Normal file
@ -0,0 +1,21 @@
|
||||
package com.ailanyin.admin;
|
||||
|
||||
import cn.hutool.core.date.DateTime;
|
||||
import cn.hutool.core.date.DateUtil;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* @author ailanyin
|
||||
* @version 1.0
|
||||
* @since 2022/7/29 0029 上午 8:50
|
||||
*/
|
||||
public class Test {
|
||||
|
||||
public static void main(String[] args) {
|
||||
DateTime begin = DateUtil.beginOfWeek(new Date());
|
||||
DateTime end = DateUtil.endOfWeek(new Date());
|
||||
System.out.println(begin.toString("yyyy-MM-dd"));
|
||||
System.out.println(end.toString("yyyy-MM-dd"));
|
||||
}
|
||||
}
|
@ -210,7 +210,7 @@ public class HxScientificProductionController {
|
||||
@ApiOperation(value = "项目管理-型号信息")
|
||||
public AjaxResult getModelYearPlanPic() {
|
||||
HxModelYearPlan yearPlan = new HxModelYearPlan();
|
||||
yearPlan.setYear(DateUtil.getNowYear().toString());
|
||||
yearPlan.setYear(DateUtil.getNowYear().toString()+"%");
|
||||
return AjaxResult.success(hxModelYearPlanService.selectList(yearPlan));
|
||||
}
|
||||
|
||||
|
@ -71,13 +71,13 @@ public class HxDangerousWorkServiceImpl implements HxDangerousWorkService {
|
||||
private Map handleDate(String type) {
|
||||
Map<String, Object> map = new HashMap(2);
|
||||
if (WEEK.equals(type)) {
|
||||
map.put("start", DateFormatUtils.format(DateUtil.getBeginDayOfWeek(), "yyyyMMdd"));
|
||||
map.put("end", DateFormatUtils.format(DateUtil.getEndDayOfWeek(), "yyyyMMdd"));
|
||||
map.put("start", DateFormatUtils.format(DateUtil.getBeginDayOfWeek(), "yyyy-MM-dd"));
|
||||
map.put("end", DateFormatUtils.format(DateUtil.getEndDayOfWeek(), "yyyy-MM-dd"));
|
||||
}
|
||||
|
||||
if (MONTH.equals(type)) {
|
||||
map.put("start", DateFormatUtils.format(DateUtil.getBeginDayOfMonth(), "yyyyMMdd"));
|
||||
map.put("end", DateFormatUtils.format(DateUtil.getEndDayOfMonth(), "yyyyMMdd"));
|
||||
map.put("start", DateFormatUtils.format(DateUtil.getBeginDayOfMonth(), "yyyy-MM-dd"));
|
||||
map.put("end", DateFormatUtils.format(DateUtil.getEndDayOfMonth(), "yyyy-MM-dd"));
|
||||
}
|
||||
|
||||
return map;
|
||||
|
@ -1,13 +1,17 @@
|
||||
package com.ailanyin.admin.service.impl;
|
||||
|
||||
import com.ailanyin.admin.service.HxDeptOperateIndexService;
|
||||
import com.ailanyin.admin.service.HxRevenueProfitService;
|
||||
import com.ailanyin.common.utils.DateUtil;
|
||||
import com.ailanyin.common.utils.EmptyUtil;
|
||||
import com.ailanyin.mapper.HxDeptOperateIndexMapper;
|
||||
import com.ailanyin.model.HxDeptOperateIndex;
|
||||
import com.ailanyin.model.HxRevenueProfit;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
@ -23,6 +27,8 @@ public class HxDeptOperateIndexServiceImpl implements HxDeptOperateIndexService
|
||||
|
||||
@Resource
|
||||
private HxDeptOperateIndexMapper hxDeptOperateIndexMapper;
|
||||
@Autowired
|
||||
private HxRevenueProfitService hxRevenueProfitService;
|
||||
// type=1全年/2=月度
|
||||
private static String TYPE_1 = "1";
|
||||
private static String TYPE_2 = "2";
|
||||
@ -34,8 +40,10 @@ public class HxDeptOperateIndexServiceImpl implements HxDeptOperateIndexService
|
||||
|
||||
@Override
|
||||
public void importData(List<HxDeptOperateIndex> list) {
|
||||
List<HxRevenueProfit> list1 = new ArrayList<>();
|
||||
list.forEach(hxDeptOperateIndex -> {
|
||||
if (EmptyUtil.isNotEmpty(hxDeptOperateIndex)) {
|
||||
list1.add(handleHxRevenueProfit(hxDeptOperateIndex));
|
||||
if (checkIsExist(hxDeptOperateIndex)) {
|
||||
hxDeptOperateIndexMapper.updateSelective(hxDeptOperateIndex);
|
||||
} else {
|
||||
@ -43,8 +51,25 @@ public class HxDeptOperateIndexServiceImpl implements HxDeptOperateIndexService
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
hxRevenueProfitService.importData(list1);
|
||||
}
|
||||
|
||||
private HxRevenueProfit handleHxRevenueProfit(HxDeptOperateIndex hxDeptOperateIndex) {
|
||||
HxRevenueProfit profit = new HxRevenueProfit();
|
||||
// =======================
|
||||
profit.setForecastProfit(hxDeptOperateIndex.getForecastProfit());
|
||||
profit.setTargetProfit(hxDeptOperateIndex.getTargetProfit());
|
||||
profit.setCompletedProfit(hxDeptOperateIndex.getRealProfit());
|
||||
// =======================
|
||||
profit.setForecastRevenue(hxDeptOperateIndex.getForecastIncome());
|
||||
profit.setTargetRevenue(hxDeptOperateIndex.getTargetIncome());
|
||||
profit.setCompletedRevenue(hxDeptOperateIndex.getRealIncome());
|
||||
// =======================
|
||||
profit.setDeptName(hxDeptOperateIndex.getDeptName());
|
||||
profit.setMonth(hxDeptOperateIndex.getMonth());
|
||||
return profit;
|
||||
}
|
||||
@Override
|
||||
public Map getDeptOperateIndexPic(String type,String month) {
|
||||
Map returnMap = new HashMap(2);
|
||||
|
@ -2,6 +2,7 @@ package com.ailanyin.admin.service.impl;
|
||||
|
||||
import com.ailanyin.admin.service.HxModelYearPlanService;
|
||||
import com.ailanyin.common.utils.BigDecimalUtil;
|
||||
import com.ailanyin.common.utils.DateUtil;
|
||||
import com.ailanyin.common.utils.EmptyUtil;
|
||||
import com.ailanyin.mapper.HxModelYearPlanMapper;
|
||||
import com.ailanyin.model.HxModelYearPlan;
|
||||
@ -24,7 +25,24 @@ public class HxModelYearPlanServiceImpl implements HxModelYearPlanService {
|
||||
|
||||
@Override
|
||||
public List<HxModelYearPlan> selectList(HxModelYearPlan hxModelYearPlan) {
|
||||
return hxModelYearPlanMapper.selectList(hxModelYearPlan);
|
||||
List<HxModelYearPlan> list = hxModelYearPlanMapper.select(hxModelYearPlan);
|
||||
for (HxModelYearPlan plan : list) {
|
||||
plan.setYear(DateUtil.getNowYear().toString());
|
||||
String total = hxModelYearPlanMapper.selectTargetTotal(DateUtil.getNowYear().toString(), plan.getProductModel());
|
||||
plan.setTargetCharge(total);
|
||||
plan.setTargetDeliver(total);
|
||||
try {
|
||||
plan.setChargeRate(String.valueOf(BigDecimalUtil.div(plan.getRealCharge(), plan.getTargetCharge(), 2) * 100));
|
||||
} catch (Exception e) {
|
||||
plan.setChargeRate("0");
|
||||
}
|
||||
try {
|
||||
plan.setDeliverRate(String.valueOf(BigDecimalUtil.div(plan.getRealDeliver(), plan.getTargetDeliver(), 2) * 100));
|
||||
} catch (Exception e) {
|
||||
plan.setDeliverRate("0");
|
||||
}
|
||||
}
|
||||
return list;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -24,7 +24,7 @@ public class HxMonthFactoryPlanServiceImpl implements HxMonthFactoryPlanService
|
||||
|
||||
@Override
|
||||
public List<HxMonthFactoryPlan> selectList(HxMonthFactoryPlan hxMonthFactoryPlan) {
|
||||
return hxMonthFactoryPlanMapper.selectList(hxMonthFactoryPlan);
|
||||
return hxMonthFactoryPlanMapper.select(hxMonthFactoryPlan);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -23,7 +23,30 @@ public class HxMonthPlanServiceImpl implements HxMonthPlanService {
|
||||
|
||||
@Override
|
||||
public List<HxMonthPlan> selectList(HxMonthPlan hxMonthPlan) {
|
||||
return hxMonthPlanMapper.selectList(hxMonthPlan);
|
||||
List<HxMonthPlan> list = null;
|
||||
if (hxMonthPlan.getMonth() != null) {
|
||||
list = hxMonthPlanMapper.selectByMonth(hxMonthPlan);
|
||||
} else {
|
||||
list = hxMonthPlanMapper.selectAll(hxMonthPlan);
|
||||
}
|
||||
for (HxMonthPlan plan : list) {
|
||||
try {
|
||||
plan.setDeliverRate(String.valueOf(BigDecimalUtil.div(plan.getRealDeliver(), plan.getTargetDeliver(), 2) * 100));
|
||||
} catch (Exception e) {
|
||||
plan.setDeliverRate("0");
|
||||
}
|
||||
try {
|
||||
plan.setChargeRate(String.valueOf(BigDecimalUtil.div(plan.getRealCharge(), plan.getTargetCharge(), 2) * 100));
|
||||
} catch (Exception e) {
|
||||
plan.setChargeRate("0");
|
||||
}
|
||||
try {
|
||||
plan.setAssembleRate(String.valueOf(BigDecimalUtil.div(plan.getRealAssemble(), plan.getTargetAssemble(), 2) * 100));
|
||||
} catch (Exception e) {
|
||||
plan.setAssembleRate("0");
|
||||
}
|
||||
}
|
||||
return list;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -2,7 +2,9 @@ package com.ailanyin.admin.service.impl;
|
||||
|
||||
import com.ailanyin.admin.service.HxProductCompletionOverviewService;
|
||||
import com.ailanyin.common.utils.BigDecimalUtil;
|
||||
import com.ailanyin.common.utils.DateUtil;
|
||||
import com.ailanyin.common.utils.EmptyUtil;
|
||||
import com.ailanyin.mapper.HxModelYearPlanMapper;
|
||||
import com.ailanyin.mapper.HxProductCompletionOverviewMapper;
|
||||
import com.ailanyin.model.HxProductCompletionOverview;
|
||||
import org.springframework.stereotype.Service;
|
||||
@ -22,7 +24,8 @@ public class HxProductCompletionOverviewServiceImpl implements HxProductCompleti
|
||||
|
||||
@Resource
|
||||
private HxProductCompletionOverviewMapper completionOverviewMapper;
|
||||
|
||||
@Resource
|
||||
private HxModelYearPlanMapper hxModelYearPlanMapper;
|
||||
/**
|
||||
* 红峡交付产品完成概况列表
|
||||
*
|
||||
@ -31,7 +34,17 @@ public class HxProductCompletionOverviewServiceImpl implements HxProductCompleti
|
||||
*/
|
||||
@Override
|
||||
public List<HxProductCompletionOverview> selectHxProductCompletionOverviewList(HxProductCompletionOverview completionOverview) {
|
||||
return completionOverviewMapper.selectHxProductCompletionOverviewList(completionOverview);
|
||||
List<HxProductCompletionOverview> list = completionOverviewMapper.selectList(completionOverview);
|
||||
for (HxProductCompletionOverview overview : list) {
|
||||
try {
|
||||
String total = hxModelYearPlanMapper.selectTargetTotal(overview.getMonth().substring(0,4), overview.getProductName());
|
||||
overview.setTargetDeliveryQuantity(total);
|
||||
overview.setCompletionRate(String.valueOf(BigDecimalUtil.div(overview.getActualDeliveryQuantity(),total,2) * 100));
|
||||
} catch (Exception e) {
|
||||
overview.setCompletionRate("0");
|
||||
}
|
||||
}
|
||||
return list;
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -4,6 +4,7 @@ import com.ailanyin.admin.service.HxProductionResponsibilityService;
|
||||
import com.ailanyin.common.utils.BigDecimalUtil;
|
||||
import com.ailanyin.common.utils.DateUtil;
|
||||
import com.ailanyin.common.utils.EmptyUtil;
|
||||
import com.ailanyin.mapper.HxModelYearPlanMapper;
|
||||
import com.ailanyin.mapper.HxProductionResponsibilityMapper;
|
||||
import com.ailanyin.model.HxProductionResponsibility;
|
||||
import org.springframework.stereotype.Service;
|
||||
@ -47,14 +48,28 @@ public class HxProductionResponsibilityServiceImpl implements HxProductionRespon
|
||||
list.forEach(this::handleData);
|
||||
}
|
||||
|
||||
@Resource
|
||||
private HxModelYearPlanMapper hxModelYearPlanMapper;
|
||||
|
||||
@Override
|
||||
public Map getPic() {
|
||||
String year = DateUtil.getNowYear() + "-%";
|
||||
|
||||
String year = DateUtil.getNowYear().toString();
|
||||
List<Map> mapList = responsibilityMapper.getCategoryAndTotal(year + "-%");
|
||||
for (Map map : mapList) {
|
||||
String model = map.get("translateName").toString();
|
||||
String completedTotal = map.get("completedTaskNumber").toString();
|
||||
String total = hxModelYearPlanMapper.selectTargetTotal(year, model);
|
||||
try {
|
||||
map.put("completionRate",BigDecimalUtil.div(completedTotal,total,2));
|
||||
} catch (Exception e) {
|
||||
map.put("completionRate","0");
|
||||
}
|
||||
}
|
||||
Map map = new HashMap(2);
|
||||
HxProductionResponsibility responsibility = new HxProductionResponsibility();
|
||||
responsibility.setMonth(year);
|
||||
map.put("list",selectHxProductionResponsibilityList(responsibility));
|
||||
map.put("rate",responsibilityMapper.getRateByYear(year));
|
||||
|
||||
map.put("list",mapList);
|
||||
map.put("rate",responsibilityMapper.getRateByYear(year+"%"));
|
||||
return map;
|
||||
}
|
||||
|
||||
|
@ -16,6 +16,7 @@ import javax.annotation.Resource;
|
||||
import java.io.IOException;
|
||||
import java.net.InetAddress;
|
||||
import java.net.UnknownHostException;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
@ -43,7 +44,11 @@ public class HxWorkHomeInfoServiceImpl implements HxWorkHomeInfoService {
|
||||
public void importData(List<HxWorkHomeInfo> list) {
|
||||
list.forEach(hxWorkHomeInfo -> {
|
||||
if (EmptyUtil.isNotEmpty(hxWorkHomeInfo.getWorkHomeName())) {
|
||||
if (checkIsExist(hxWorkHomeInfo)) {
|
||||
hxWorkHomeInfoMapper.updateSelective(hxWorkHomeInfo);
|
||||
} else {
|
||||
hxWorkHomeInfoMapper.insertSelective(hxWorkHomeInfo);
|
||||
}
|
||||
handleRtmpToVideo(hxWorkHomeInfo);
|
||||
}
|
||||
});
|
||||
@ -51,13 +56,18 @@ public class HxWorkHomeInfoServiceImpl implements HxWorkHomeInfoService {
|
||||
|
||||
@Override
|
||||
public List<HxWorkHomeInfo> getHxWorkHomePic() {
|
||||
List<HxWorkHomeInfo> list = selectList(new HxWorkHomeInfo());
|
||||
HxWorkHomeInfo info = new HxWorkHomeInfo();
|
||||
info.setWorkFlag("是");
|
||||
List<HxWorkHomeInfo> list = selectList(info);
|
||||
list.forEach(hxWorkHomeInfo -> {
|
||||
if (redisService.hasKey(database + ":rtmp:hxWorkHomeInfo" + hxWorkHomeInfo.getId())) {
|
||||
String url = redisService.get(database + ":rtmp:hxWorkHomeInfo" + hxWorkHomeInfo.getId()).toString();
|
||||
hxWorkHomeInfo.setAvAddress(url);
|
||||
}
|
||||
hxWorkHomeInfo.setUserList(hxWorkHomeInfoMapper.getWorkshopAllUserByName(hxWorkHomeInfo.getWorkshop()));
|
||||
|
||||
if (hxWorkHomeInfo.getUsers() != null) {
|
||||
hxWorkHomeInfo.setUserList(Arrays.asList(hxWorkHomeInfo.getUsers().split(",")));
|
||||
}
|
||||
});
|
||||
return list;
|
||||
}
|
||||
@ -65,7 +75,7 @@ public class HxWorkHomeInfoServiceImpl implements HxWorkHomeInfoService {
|
||||
@Override
|
||||
public void handleRtmpToVideo(HxWorkHomeInfo hxWorkHomeInfo) {
|
||||
if (EmptyUtil.isNotEmpty(hxWorkHomeInfo.getId()) && EmptyUtil.isNotEmpty(hxWorkHomeInfo.getAvAddress())) {
|
||||
System.out.println("开始推: " +hxWorkHomeInfo.getWorkHomeName() +" 工房");
|
||||
System.out.println("开始推: " + hxWorkHomeInfo.getWorkHomeName() + " 工房");
|
||||
String[] cmd = new String[]{"sh", "-c", "nohup ffmpeg -re -i " + hxWorkHomeInfo.getAvAddress() + " -vcodec copy -acodec copy -f flv -y rtmp://127.0.0.1:1935/live/hxWorkHomeInfo" + hxWorkHomeInfo.getId() + " >/opt/null 2>&1 &"};
|
||||
try {
|
||||
Runtime.getRuntime().exec(cmd);
|
||||
@ -74,7 +84,7 @@ public class HxWorkHomeInfoServiceImpl implements HxWorkHomeInfoService {
|
||||
}
|
||||
|
||||
try {
|
||||
String url = "http://" + IpUtil.getLocalIp() + "/stream/live/hxWorkHomeInfo" + hxWorkHomeInfo.getId()+".flv";
|
||||
String url = "http://" + IpUtil.getLocalIp() + "/stream/live/hxWorkHomeInfo" + hxWorkHomeInfo.getId() + ".flv";
|
||||
redisService.set(database + ":rtmp:hxWorkHomeInfo" + hxWorkHomeInfo.getId(), url);
|
||||
} catch (UnknownHostException e) {
|
||||
e.printStackTrace();
|
||||
|
@ -25,7 +25,15 @@ public class HxYearDutyServiceImpl implements HxYearDutyService {
|
||||
|
||||
@Override
|
||||
public List<HxYearDuty> selectList(HxYearDuty hxYearDuty) {
|
||||
return hxYearDutyMapper.selectList(hxYearDuty);
|
||||
List<HxYearDuty> list = hxYearDutyMapper.selectList(hxYearDuty);
|
||||
for (HxYearDuty duty : list) {
|
||||
Integer total = hxYearDutyMapper.selectRealTotal(duty.getYear()+'%',duty.getProductModel());
|
||||
if (total == null) {
|
||||
total = 0;
|
||||
}
|
||||
duty.setRate(String.valueOf(BigDecimalUtil.div(Double.valueOf(total),Double.valueOf(duty.getTargetTotal()),2) * 100));
|
||||
}
|
||||
return list;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -1,35 +0,0 @@
|
||||
drop table "ROOT"."hx_production_plan";
|
||||
CREATE TABLE "ROOT"."hx_production_plan"
|
||||
(
|
||||
"id" BIGINT IDENTITY(1, 1) NOT NULL,
|
||||
"month" VARCHAR(255),
|
||||
"product_model" VARCHAR(255),
|
||||
"real_adiabat" VARCHAR(255),
|
||||
"real_charge" VARCHAR(255),
|
||||
"real_assembly" VARCHAR(255),
|
||||
"real_deliver" VARCHAR(255),
|
||||
"forecast_adiabat" VARCHAR(255),
|
||||
"forecast_charge" VARCHAR(255),
|
||||
"forecast_assembly" VARCHAR(255),
|
||||
"forecast_deliver" VARCHAR(255),
|
||||
"review" VARCHAR(255),
|
||||
"settlement" VARCHAR(255),
|
||||
"production_number" VARCHAR(255),
|
||||
NOT CLUSTER PRIMARY KEY("id")) STORAGE(ON "AITEST", CLUSTERBTR) ;
|
||||
|
||||
COMMENT ON COLUMN "ROOT"."hx_production_plan"."forecast_adiabat" IS 'Ԥ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';
|
||||
COMMENT ON COLUMN "ROOT"."hx_production_plan"."forecast_assembly" IS 'Ԥ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>װ';
|
||||
COMMENT ON COLUMN "ROOT"."hx_production_plan"."forecast_charge" IS 'Ԥ<EFBFBD><EFBFBD>װҩ';
|
||||
COMMENT ON COLUMN "ROOT"."hx_production_plan"."forecast_deliver" IS 'Ԥ<EFBFBD>⽻<EFBFBD><EFBFBD>';
|
||||
COMMENT ON COLUMN "ROOT"."hx_production_plan"."product_model" IS '<EFBFBD><EFBFBD>Ʒ<EFBFBD>ͺ<EFBFBD>';
|
||||
COMMENT ON COLUMN "ROOT"."hx_production_plan"."production_number" IS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';
|
||||
COMMENT ON COLUMN "ROOT"."hx_production_plan"."real_adiabat" IS 'ʵ<EFBFBD>ʾ<EFBFBD><EFBFBD><EFBFBD>';
|
||||
COMMENT ON COLUMN "ROOT"."hx_production_plan"."real_assembly" IS 'ʵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>װ';
|
||||
COMMENT ON COLUMN "ROOT"."hx_production_plan"."real_charge" IS 'ʵ<EFBFBD><EFBFBD>װҩ';
|
||||
COMMENT ON COLUMN "ROOT"."hx_production_plan"."real_deliver" IS 'ʵ<EFBFBD>ʽ<EFBFBD><EFBFBD><EFBFBD>';
|
||||
COMMENT ON COLUMN "ROOT"."hx_production_plan"."review" IS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD>';
|
||||
COMMENT ON COLUMN "ROOT"."hx_production_plan"."settlement" IS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD>';
|
||||
|
||||
|
||||
CREATE UNIQUE INDEX "INDEX356532075240600" ON "ROOT"."hx_production_plan"("id" ASC) STORAGE(ON "AITEST", CLUSTERBTR) ;
|
||||
|
@ -1,31 +0,0 @@
|
||||
drop table "ROOT"."hx_reader_info";
|
||||
CREATE TABLE "ROOT"."hx_reader_info"
|
||||
(
|
||||
"id" BIGINT NOT NULL,
|
||||
"reader_name" VARCHAR(255),
|
||||
"abscissa" INT,
|
||||
"ordinate" INT,
|
||||
"north_angle" INT,
|
||||
"reader_ip" VARCHAR(255),
|
||||
"reader_port" INT,
|
||||
"record_distance" INT,
|
||||
"create_time" TIMESTAMP(0),
|
||||
NOT CLUSTER PRIMARY KEY("id")) STORAGE(ON "AITEST", CLUSTERBTR) ;
|
||||
|
||||
COMMENT ON TABLE "ROOT"."hx_reader_info" IS '读卡器';
|
||||
COMMENT ON COLUMN "ROOT"."hx_reader_info"."abscissa" IS '横坐标';
|
||||
COMMENT ON COLUMN "ROOT"."hx_reader_info"."create_time" IS '录入时间';
|
||||
COMMENT ON COLUMN "ROOT"."hx_reader_info"."id" IS 'ID';
|
||||
COMMENT ON COLUMN "ROOT"."hx_reader_info"."north_angle" IS '与正北夹角';
|
||||
COMMENT ON COLUMN "ROOT"."hx_reader_info"."ordinate" IS '纵坐标';
|
||||
COMMENT ON COLUMN "ROOT"."hx_reader_info"."reader_ip" IS '读卡器静态ip';
|
||||
COMMENT ON COLUMN "ROOT"."hx_reader_info"."reader_name" IS '读卡器名称';
|
||||
COMMENT ON COLUMN "ROOT"."hx_reader_info"."reader_port" IS '读卡器端口';
|
||||
COMMENT ON COLUMN "ROOT"."hx_reader_info"."record_distance" IS '进出工房设置距离';
|
||||
|
||||
|
||||
CREATE UNIQUE INDEX "INDEX6215806402700" ON "ROOT"."hx_reader_info"("id" ASC) STORAGE(ON "AITEST", CLUSTERBTR) ;
|
||||
|
||||
|
||||
|
||||
|
@ -0,0 +1,21 @@
|
||||
drop table "ROOT"."hx_responsibility_status";
|
||||
|
||||
CREATE TABLE "ROOT"."hx_responsibility_status"
|
||||
(
|
||||
"id" BIGINT IDENTITY(1, 1) NOT NULL,
|
||||
"responsibility_content" VARCHAR(255),
|
||||
"progress_status" VARCHAR(255),
|
||||
"completion_status" VARCHAR(255),
|
||||
"dept_name" VARCHAR(255),
|
||||
"month" CHAR(30),
|
||||
NOT CLUSTER PRIMARY KEY("id")) STORAGE(ON "AITEST", CLUSTERBTR) ;
|
||||
|
||||
COMMENT ON COLUMN "ROOT"."hx_responsibility_status"."completion_status" IS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';
|
||||
COMMENT ON COLUMN "ROOT"."hx_responsibility_status"."dept_name" IS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';
|
||||
COMMENT ON COLUMN "ROOT"."hx_responsibility_status"."month" IS '<EFBFBD>·<EFBFBD>';
|
||||
COMMENT ON COLUMN "ROOT"."hx_responsibility_status"."progress_status" IS '<EFBFBD><EFBFBD>չ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>';
|
||||
COMMENT ON COLUMN "ROOT"."hx_responsibility_status"."responsibility_content" IS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';
|
||||
|
||||
|
||||
CREATE UNIQUE INDEX "INDEX8279916944200" ON "ROOT"."hx_responsibility_status"("id" ASC) STORAGE(ON "AITEST", CLUSTERBTR) ;
|
||||
|
14
ailanyin-admin/src/main/resources/sql/hx_table_0.sql
Normal file
14
ailanyin-admin/src/main/resources/sql/hx_table_0.sql
Normal file
@ -0,0 +1,14 @@
|
||||
drop table if exists "ROOT"."hx_table";
|
||||
|
||||
CREATE TABLE "ROOT"."hx_table"
|
||||
(
|
||||
"name" VARCHAR(50),
|
||||
"sql" TEXT,
|
||||
"table" VARCHAR(50),
|
||||
UNIQUE("name")) STORAGE(ON "AITEST", CLUSTERBTR) ;
|
||||
|
||||
COMMENT ON COLUMN "ROOT"."hx_table"."name" IS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD>';
|
||||
COMMENT ON COLUMN "ROOT"."hx_table"."sql" IS 'ִ<EFBFBD>е<EFBFBD>sql';
|
||||
COMMENT ON COLUMN "ROOT"."hx_table"."table" IS '<EFBFBD><EFBFBD>';
|
||||
|
||||
|
@ -0,0 +1,20 @@
|
||||
drop table if exists "ROOT"."hx_work_home_info";
|
||||
CREATE TABLE "ROOT"."hx_work_home_info"
|
||||
(
|
||||
"id" BIGINT IDENTITY(1, 1) NOT NULL,
|
||||
"work_home_name" VARCHAR(255),
|
||||
"abscissa" VARCHAR(255),
|
||||
"ordinate" VARCHAR(255),
|
||||
"workshop" VARCHAR(255),
|
||||
"job_content" VARCHAR(255),
|
||||
"error_info" VARCHAR(255),
|
||||
"av_address" VARCHAR(255),
|
||||
"users" VARCHAR(1000),
|
||||
"work_flag" VARCHAR(50),
|
||||
NOT CLUSTER PRIMARY KEY("id")) STORAGE(ON "AITEST", CLUSTERBTR) ;
|
||||
|
||||
COMMENT ON COLUMN "ROOT"."hx_work_home_info"."work_home_name" IS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';
|
||||
|
||||
|
||||
CREATE UNIQUE INDEX "INDEX555455965509700" ON "ROOT"."hx_work_home_info"("id" ASC) STORAGE(ON "AITEST", CLUSTERBTR) ;
|
||||
|
@ -1,8 +1,8 @@
|
||||
package com.ailanyin.common.utils;
|
||||
|
||||
import cn.hutool.core.io.IoUtil;
|
||||
import cn.hutool.core.lang.UUID;
|
||||
import com.ailanyin.common.exception.Asserts;
|
||||
import com.alibaba.fastjson.util.IOUtils;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
|
||||
@ -91,8 +91,8 @@ public class FileUtil {
|
||||
} catch (IOException e) {
|
||||
throw e;
|
||||
} finally {
|
||||
IOUtils.close(os);
|
||||
IOUtils.close(fis);
|
||||
IoUtil.close(os);
|
||||
IoUtil.close(fis);
|
||||
}
|
||||
}
|
||||
|
||||
@ -261,7 +261,7 @@ public class FileUtil {
|
||||
String filePath = FileUtil.class.getProtectionDomain().getCodeSource().getLocation().getFile();
|
||||
String jarPath = filePath.split(".jar!")[0];
|
||||
jarPath = jarPath.split("file:")[1];
|
||||
return jarPath.substring(0,jarPath.lastIndexOf("/"));
|
||||
return jarPath.substring(0, jarPath.lastIndexOf("/"));
|
||||
} catch (Exception e) {
|
||||
File desc = new File("/opt/jar");
|
||||
if (!desc.exists()) {
|
||||
|
@ -1,6 +1,8 @@
|
||||
package com.ailanyin.mapper;
|
||||
|
||||
import com.ailanyin.model.HxModelYearPlan;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
import org.apache.ibatis.annotations.Select;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@ -12,9 +14,12 @@ import java.util.List;
|
||||
public interface HxModelYearPlanMapper {
|
||||
int checkIsExist(HxModelYearPlan hxModelYearPlan);
|
||||
|
||||
List<HxModelYearPlan> selectList(HxModelYearPlan hxModelYearPlan);
|
||||
List<HxModelYearPlan> select(HxModelYearPlan hxModelYearPlan);
|
||||
|
||||
void insertSelective(HxModelYearPlan hxModelYearPlan);
|
||||
|
||||
void updateSelective(HxModelYearPlan hxModelYearPlan);
|
||||
|
||||
String selectTargetTotal(@Param("year") String year,@Param("model") String productModel);
|
||||
|
||||
}
|
||||
|
@ -1,6 +1,8 @@
|
||||
package com.ailanyin.mapper;
|
||||
|
||||
import com.ailanyin.model.HxMonthFactoryPlan;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.apache.ibatis.annotations.Select;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@ -9,8 +11,10 @@ import java.util.List;
|
||||
* @version 1.0
|
||||
* @since 2021/12/22 0022 下午 16:30
|
||||
*/
|
||||
@Mapper
|
||||
public interface HxMonthFactoryPlanMapper {
|
||||
List<HxMonthFactoryPlan> selectList(HxMonthFactoryPlan hxMonthFactoryPlan);
|
||||
|
||||
List<HxMonthFactoryPlan> select(HxMonthFactoryPlan hxMonthFactoryPlan);
|
||||
|
||||
void updateSelective(HxMonthFactoryPlan hxMonthFactoryPlan);
|
||||
|
||||
|
@ -1,6 +1,7 @@
|
||||
package com.ailanyin.mapper;
|
||||
|
||||
import com.ailanyin.model.HxMonthPlan;
|
||||
import org.apache.ibatis.annotations.Select;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@ -17,4 +18,25 @@ public interface HxMonthPlanMapper {
|
||||
void updateSelective(HxMonthPlan hxMonthPlan);
|
||||
|
||||
void insertSelective(HxMonthPlan hxMonthPlan);
|
||||
|
||||
@Select("select \"month\", \"product_model\" as \"model\",\"ascription\",\n" +
|
||||
"\"real_deliver\" as \"realDeliver\",\n" +
|
||||
"\"real_assembly\" as \"realAssemble\",\n" +
|
||||
"\"real_charge\" as \"realCharge\",\n" +
|
||||
"\"forecast_deliver\" as \"targetDeliver\",\n" +
|
||||
"\"forecast_assembly\" as \"targetAssemble\",\n" +
|
||||
"\"forecast_charge\" as \"targetCharge\"\n" +
|
||||
"from ROOT.\"hx_production_plan\"\n" +
|
||||
"where \"month\" = #{month}")
|
||||
List<HxMonthPlan> selectByMonth(HxMonthPlan hxMonthPlan);
|
||||
|
||||
@Select("select \"month\", \"product_model\" as \"model\",\"ascription\",\n" +
|
||||
"\"real_deliver\" as \"realDeliver\",\n" +
|
||||
"\"real_assembly\" as \"realAssemble\",\n" +
|
||||
"\"real_charge\" as \"realCharge\",\n" +
|
||||
"\"forecast_deliver\" as \"targetDeliver\",\n" +
|
||||
"\"forecast_assembly\" as \"targetAssemble\",\n" +
|
||||
"\"forecast_charge\" as \"targetCharge\"\n" +
|
||||
"from ROOT.\"hx_production_plan\"")
|
||||
List<HxMonthPlan> selectAll(HxMonthPlan hxMonthPlan);
|
||||
}
|
||||
|
@ -2,6 +2,7 @@ package com.ailanyin.mapper;
|
||||
|
||||
import com.ailanyin.model.HxProductCompletionOverview;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
import org.apache.ibatis.annotations.Select;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@ -49,4 +50,6 @@ public interface HxProductCompletionOverviewMapper {
|
||||
* @param id id
|
||||
*/
|
||||
void delHxProductCompletionOverviewById(Long id);
|
||||
|
||||
List<HxProductCompletionOverview> selectList(HxProductCompletionOverview completionOverview);
|
||||
}
|
||||
|
@ -3,6 +3,7 @@ package com.ailanyin.mapper;
|
||||
import com.ailanyin.model.HxProductionResponsibility;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
import org.apache.ibatis.annotations.Select;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
@ -47,4 +48,10 @@ public interface HxProductionResponsibilityMapper {
|
||||
void insertSelective(HxProductionResponsibility productionResponsibility);
|
||||
|
||||
Map getRateByYear(String year);
|
||||
|
||||
@Select("select \"translate_name\" as \"translateName\",sum(\"completed_task_number\") as \"completedTaskNumber\"\n" +
|
||||
"from ROOT.\"hx_production_responsibility\"\n" +
|
||||
"where \"month\" like #{year}\n" +
|
||||
"group by \"translate_name\"")
|
||||
List<Map> getCategoryAndTotal(String year);
|
||||
}
|
||||
|
@ -1,6 +1,9 @@
|
||||
package com.ailanyin.mapper;
|
||||
|
||||
import com.ailanyin.model.HxYearDuty;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
import org.apache.ibatis.annotations.Select;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@ -9,6 +12,7 @@ import java.util.List;
|
||||
* @version 1.0
|
||||
* @since 2021/12/22 0022 下午 14:40
|
||||
*/
|
||||
@Mapper
|
||||
public interface HxYearDutyMapper {
|
||||
int checkIsExist(HxYearDuty hxYearDuty);
|
||||
|
||||
@ -17,4 +21,7 @@ public interface HxYearDutyMapper {
|
||||
void updateSelective(HxYearDuty hxYearDuty);
|
||||
|
||||
void insertSelective(HxYearDuty hxYearDuty);
|
||||
|
||||
@Select("select sum(\"assembly\") from ROOT.\"actual_production_base\" where \"month\" like #{year} and \"model\" = #{model}")
|
||||
Integer selectRealTotal(@Param("year") String year, @Param("model") String model);
|
||||
}
|
||||
|
@ -28,24 +28,27 @@ public class HxProductionPlan implements Serializable {
|
||||
@ApiModelProperty(value = "绝热数量")
|
||||
@Excel(name = "实际绝热数量", width = 20)
|
||||
private String realAdiabat;
|
||||
@Excel(name = "预测绝热数量", width = 20)
|
||||
private String forecastAdiabat;
|
||||
|
||||
@ApiModelProperty(value = "装药数量")
|
||||
@Excel(name = "实际装药数量", width = 20)
|
||||
private String realCharge;
|
||||
@Excel(name = "实际总装数量", width = 20)
|
||||
private String realAssembly;
|
||||
|
||||
@Excel(name = "实际交付数量", width = 20)
|
||||
private String realDeliver;
|
||||
@ApiModelProperty(value = "装药数量")
|
||||
|
||||
@Excel(name = "预测绝热数量", width = 20)
|
||||
private String forecastAdiabat;
|
||||
@Excel(name = "预测装药数量", width = 20)
|
||||
private String forecastCharge;
|
||||
|
||||
@ApiModelProperty(value = "总装数量")
|
||||
@Excel(name = "实际总装数量", width = 20)
|
||||
private String realAssembly;
|
||||
|
||||
@Excel(name = "预测总装数量", width = 20)
|
||||
private String forecastAssembly;
|
||||
|
||||
@ApiModelProperty(value = "交付数量")
|
||||
@Excel(name = "实际交付数量", width = 20)
|
||||
private String realDeliver;
|
||||
|
||||
@Excel(name = "预测交付数量", width = 20)
|
||||
private String forecastDeliver;
|
||||
|
||||
@ -61,5 +64,9 @@ public class HxProductionPlan implements Serializable {
|
||||
@Excel(name = "生产数量", width = 20)
|
||||
private String productionNumber;
|
||||
|
||||
@ApiModelProperty(value = "计划归属")
|
||||
@Excel(name = "计划归属", width = 20)
|
||||
private String ascription;
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
}
|
||||
|
@ -17,6 +17,10 @@ public class HxResponsibilityStatus implements Serializable {
|
||||
|
||||
private Long id;
|
||||
|
||||
@ApiModelProperty(value = "月份")
|
||||
@Excel(name = "月份", width = 20)
|
||||
private String month;
|
||||
|
||||
@ApiModelProperty(value = "责任令内容")
|
||||
@Excel(name = "责任令内容", width = 20)
|
||||
private String responsibilityContent;
|
||||
|
@ -35,6 +35,10 @@ public class HxWorkHomeInfo implements Serializable {
|
||||
@Excel(name = "车间名称", width = 20)
|
||||
private String workshop;
|
||||
|
||||
@ApiModelProperty(value = "是否正在作业")
|
||||
@Excel(name = "是否正在作业(是/否)", width = 25)
|
||||
private String workFlag;
|
||||
|
||||
@ApiModelProperty(value = "作业内容")
|
||||
@Excel(name = "作业内容", width = 20)
|
||||
private String jobContent;
|
||||
@ -49,7 +53,11 @@ public class HxWorkHomeInfo implements Serializable {
|
||||
|
||||
private boolean flag = false;
|
||||
|
||||
private List<Map> userList;
|
||||
@ApiModelProperty(value = "作业人员")
|
||||
@Excel(name = "作业人员", width = 30)
|
||||
private String users;
|
||||
|
||||
private List<String> userList;
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
}
|
||||
|
@ -26,6 +26,18 @@
|
||||
"id", "year", "product_model", "real_charge", "target_charge", "charge_rate", "real_deliver",
|
||||
"target_deliver", "deliver_rate"
|
||||
</sql>
|
||||
|
||||
<select id="select" resultMap="BaseResultMap">
|
||||
select "product_model" as "productModel",
|
||||
sum("real_charge") as "realCharge",
|
||||
sum("real_deliver") as "realDeliver"
|
||||
from ROOT."hx_production_plan"
|
||||
where "month" LIKE #{year}
|
||||
group BY "hx_production_plan"."product_model"
|
||||
</select>
|
||||
<select id="selectTargetTotal" resultType="string">
|
||||
select sum("total") from ROOT."production_responsibility_base" where "year" = #{year} and "model" = #{model}
|
||||
</select>
|
||||
<select id="selectList" resultMap="BaseResultMap">
|
||||
<!--
|
||||
WARNING - @mbg.generated
|
||||
|
@ -30,6 +30,19 @@
|
||||
"real_assemble", "target_assemble", "bad_reason", "insulate_rate", "charge_rate",
|
||||
"assemble_rate"
|
||||
</sql>
|
||||
|
||||
<select id="select" resultMap="BaseResultMap">
|
||||
select "month",
|
||||
sum("real_adiabat") as "realInsulate",
|
||||
sum("real_assembly") as "realAssemble",
|
||||
sum("real_charge") as "realCharge",
|
||||
sum("forecast_adiabat") as "targetInsulate",
|
||||
sum("forecast_assembly") as "targetAssemble",
|
||||
sum("forecast_charge") as "targetCharge"
|
||||
from ROOT."hx_production_plan"
|
||||
where "ascription" = '厂计划' and "month" = #{month}
|
||||
group BY "month"
|
||||
</select>
|
||||
<select id="selectList" resultMap="BaseResultMap">
|
||||
<!--
|
||||
WARNING - @mbg.generated
|
||||
|
@ -14,6 +14,10 @@
|
||||
"id", "product_name", "actual_delivery_quantity", "target_delivery_quantity", "completion_rate","month",
|
||||
"create_time"
|
||||
</sql>
|
||||
|
||||
<select id="selectList" resultMap="BaseResultMap">
|
||||
select "month","model" as "productName","deliver" as "actualDeliveryQuantity" from ROOT."actual_production_base"
|
||||
</select>
|
||||
<select id="selectHxProductCompletionOverviewList" resultMap="BaseResultMap">
|
||||
select
|
||||
<include refid="Base_Column_List" />
|
||||
|
@ -21,6 +21,7 @@
|
||||
<result column="forecast_deliver" jdbcType="VARCHAR" property="forecastDeliver" />
|
||||
<result column="review" jdbcType="VARCHAR" property="review" />
|
||||
<result column="settlement" jdbcType="VARCHAR" property="settlement" />
|
||||
<result column="ascription" jdbcType="VARCHAR" property="ascription" />
|
||||
</resultMap>
|
||||
<sql id="Base_Column_List">
|
||||
<!--
|
||||
@ -41,7 +42,8 @@
|
||||
"real_deliver",
|
||||
"forecast_deliver",
|
||||
"review",
|
||||
"settlement"
|
||||
"settlement",
|
||||
"ascription"
|
||||
</sql>
|
||||
<select id="selectList" resultMap="BaseResultMap">
|
||||
<!--
|
||||
@ -132,6 +134,9 @@
|
||||
<if test="settlement != null">
|
||||
"settlement",
|
||||
</if>
|
||||
<if test="ascription != null">
|
||||
"ascription",
|
||||
</if>
|
||||
</trim>
|
||||
<trim prefix="values (" suffix=")" suffixOverrides=",">
|
||||
<if test="id != null">
|
||||
@ -176,6 +181,9 @@
|
||||
<if test="settlement != null">
|
||||
#{settlement,jdbcType=VARCHAR},
|
||||
</if>
|
||||
<if test="ascription != null">
|
||||
#{ascription,jdbcType=VARCHAR},
|
||||
</if>
|
||||
</trim>
|
||||
</insert>
|
||||
<update id="updateSelective" parameterType="com.ailanyin.model.HxProductionPlan">
|
||||
@ -219,6 +227,9 @@
|
||||
<if test="settlement != null">
|
||||
"settlement" = #{settlement,jdbcType=VARCHAR},
|
||||
</if>
|
||||
<if test="ascription != null">
|
||||
"ascription" = #{ascription,jdbcType=VARCHAR},
|
||||
</if>
|
||||
</set>
|
||||
where "month" = #{month,jdbcType=VARCHAR} and "product_model" = #{productModel,jdbcType=VARCHAR}
|
||||
</update>
|
||||
|
@ -130,7 +130,7 @@
|
||||
|
||||
<select id="selectGeneralFactory" resultType="map">
|
||||
select "month",sum("plan_number") as "total",sum("complete_number") as "completed",
|
||||
sum("complete_number")/sum("plan_number") as "rate"
|
||||
sum("complete_number")/sum("plan_number")*100 as "rate"
|
||||
from ROOT."hx_quality_plan"
|
||||
group BY "month"
|
||||
order by "month" ASC
|
||||
@ -138,7 +138,7 @@
|
||||
|
||||
<select id="selectDept" resultType="map">
|
||||
select "dept_name" as "deptName",sum("plan_number") as "total",sum("complete_number") as "completed",
|
||||
sum("complete_number")/sum("plan_number") as "rate"
|
||||
sum("complete_number")/sum("plan_number")*100 as "rate"
|
||||
from ROOT."hx_quality_plan"
|
||||
group BY "dept_name"
|
||||
</select>
|
||||
|
@ -12,6 +12,7 @@
|
||||
<result column="progress_status" jdbcType="VARCHAR" property="progressStatus" />
|
||||
<result column="completion_status" jdbcType="VARCHAR" property="completionStatus" />
|
||||
<result column="dept_name" jdbcType="VARCHAR" property="deptName" />
|
||||
<result column="month" jdbcType="VARCHAR" property="month" />
|
||||
</resultMap>
|
||||
<sql id="Base_Column_List">
|
||||
<!--
|
||||
@ -19,7 +20,7 @@
|
||||
This element is automatically generated by MyBatis Generator, do not modify.
|
||||
This element was generated on Tue Dec 14 02:43:38 UTC 2021.
|
||||
-->
|
||||
"id", "responsibility_content", "progress_status", "completion_status", "dept_name"
|
||||
"id", "responsibility_content", "progress_status", "completion_status", "dept_name","month"
|
||||
</sql>
|
||||
<select id="selectHxResponsibilityStatusList" resultMap="BaseResultMap">
|
||||
select
|
||||
@ -69,6 +70,9 @@
|
||||
<if test="deptName != null">
|
||||
"dept_name",
|
||||
</if>
|
||||
<if test="month != null">
|
||||
"month",
|
||||
</if>
|
||||
</trim>
|
||||
<trim prefix="values (" suffix=")" suffixOverrides=",">
|
||||
<if test="id != null">
|
||||
@ -86,6 +90,9 @@
|
||||
<if test="deptName != null">
|
||||
#{deptName,jdbcType=VARCHAR},
|
||||
</if>
|
||||
<if test="month != null">
|
||||
#{month,jdbcType=VARCHAR},
|
||||
</if>
|
||||
</trim>
|
||||
</insert>
|
||||
<update id="updateSelective" parameterType="com.ailanyin.model.HxResponsibilityStatus">
|
||||
@ -94,7 +101,7 @@
|
||||
This element is automatically generated by MyBatis Generator, do not modify.
|
||||
This element was generated on Tue Dec 14 02:43:38 UTC 2021.
|
||||
-->
|
||||
update "hx_responsibility_status"
|
||||
update ROOT."hx_responsibility_status"
|
||||
<set>
|
||||
<if test="progressStatus != null">
|
||||
"progress_status" = #{progressStatus,jdbcType=VARCHAR},
|
||||
@ -103,7 +110,7 @@
|
||||
"completion_status" = #{completionStatus,jdbcType=VARCHAR},
|
||||
</if>
|
||||
</set>
|
||||
where "dept_name" = #{deptName} and "responsibility_content" = #{responsibilityContent}
|
||||
where "dept_name" = #{deptName} and "responsibility_content" = #{responsibilityContent} and "month" = #{month}
|
||||
</update>
|
||||
<update id="updateByPrimaryKey" parameterType="com.ailanyin.model.HxResponsibilityStatus">
|
||||
<!--
|
||||
@ -120,14 +127,13 @@
|
||||
</update>
|
||||
|
||||
<select id="getTotalAndRate" resultType="map">
|
||||
select count("id") as "total",convert(float,(select count("id")
|
||||
from ROOT."hx_responsibility_status" where "completion_status" = '已完成'))/convert(float,count("id")) * 100 as "rate"
|
||||
from ROOT."hx_responsibility_status"
|
||||
select count("id") as "total",convert(float,(count("id"))/convert(float,(select count(1) from ROOT."hx_responsibility_status"))) * 100 as "rate"
|
||||
from ROOT."hx_responsibility_status" where "completion_status" = '已完成'
|
||||
</select>
|
||||
|
||||
<select id="checkIsExist" resultType="int">
|
||||
select count("id") from ROOT."hx_responsibility_status"
|
||||
where "dept_name" = #{deptName} and "responsibility_content" = #{responsibilityContent}
|
||||
where "dept_name" = #{deptName} and "responsibility_content" = #{responsibilityContent} and "month" = #{month}
|
||||
limit 1
|
||||
</select>
|
||||
</mapper>
|
||||
|
@ -15,6 +15,8 @@
|
||||
<result column="job_content" jdbcType="VARCHAR" property="jobContent" />
|
||||
<result column="error_info" jdbcType="VARCHAR" property="errorInfo" />
|
||||
<result column="av_address" jdbcType="VARCHAR" property="avAddress" />
|
||||
<result column="users" jdbcType="VARCHAR" property="users" />
|
||||
<result column="work_flag" jdbcType="VARCHAR" property="workFlag" />
|
||||
</resultMap>
|
||||
<sql id="Base_Column_List">
|
||||
<!--
|
||||
@ -23,7 +25,7 @@
|
||||
This element was generated on Thu Dec 23 10:21:10 UTC 2021.
|
||||
-->
|
||||
"id", "work_home_name", "abscissa", "ordinate", "workshop", "job_content", "error_info",
|
||||
"av_address"
|
||||
"av_address","work_flag","users"
|
||||
</sql>
|
||||
<select id="selectList" resultMap="BaseResultMap">
|
||||
<!--
|
||||
@ -99,6 +101,12 @@
|
||||
<if test="avAddress != null">
|
||||
"av_address",
|
||||
</if>
|
||||
<if test="users != null">
|
||||
"users",
|
||||
</if>
|
||||
<if test="workFlag != null">
|
||||
"work_flag",
|
||||
</if>
|
||||
</trim>
|
||||
<trim prefix="values (" suffix=")" suffixOverrides=",">
|
||||
<if test="id != null">
|
||||
@ -125,6 +133,12 @@
|
||||
<if test="avAddress != null">
|
||||
#{avAddress,jdbcType=VARCHAR},
|
||||
</if>
|
||||
<if test="users != null">
|
||||
#{users,jdbcType=VARCHAR},
|
||||
</if>
|
||||
<if test="workFlag != null">
|
||||
#{workFlag,jdbcType=VARCHAR},
|
||||
</if>
|
||||
</trim>
|
||||
</insert>
|
||||
<update id="updateSelective" parameterType="com.ailanyin.model.HxWorkHomeInfo">
|
||||
@ -156,6 +170,12 @@
|
||||
<if test="avAddress != null">
|
||||
"av_address" = #{avAddress,jdbcType=VARCHAR},
|
||||
</if>
|
||||
<if test="users != null">
|
||||
"users" = #{users,jdbcType=VARCHAR},
|
||||
</if>
|
||||
<if test="workFlag != null">
|
||||
"work_flag" = #{workFlag,jdbcType=VARCHAR},
|
||||
</if>
|
||||
</set>
|
||||
where "work_home_name" = #{workHomeName,jdbcType=VARCHAR}
|
||||
</update>
|
||||
|
@ -1,49 +0,0 @@
|
||||
create or replace FUNCTION ROOT.FIND_IN_SET(piv_str1 varchar2, piv_str2 varchar2, p_sep varchar2 := ',')
|
||||
RETURN NUMBER IS
|
||||
l_idx number:=0; -- <20><><EFBFBD>ڼ<EFBFBD><DABC><EFBFBD>piv_str2<72>зָ<D0B7><D6B8><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><CEBB>
|
||||
str varchar2(500); -- <20><><EFBFBD>ݷָ<DDB7><D6B8><EFBFBD><EFBFBD><EFBFBD>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD>
|
||||
piv_str varchar2(500) := piv_str2; -- <20><>piv_str2<72><32>ֵ<EFBFBD><D6B5>piv_str
|
||||
res number:=0; -- <20><><EFBFBD>ؽ<EFBFBD><D8BD><EFBFBD>
|
||||
res_place number:=0;-- ԭ<>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD>е<EFBFBD>λ<EFBFBD><CEBB>
|
||||
BEGIN
|
||||
-- <20><><EFBFBD><EFBFBD><EFBFBD>ֶ<EFBFBD><D6B6><EFBFBD>null <20><EFBFBD>0
|
||||
IF piv_str2 IS NULL THEN
|
||||
RETURN res;
|
||||
END IF;
|
||||
-- <20><><EFBFBD><EFBFBD>piv_str<74><72>û<EFBFBD>зָ<D0B7><D6B8><EFBFBD><EFBFBD><EFBFBD>ֱ<EFBFBD><D6B1><EFBFBD>ж<EFBFBD>piv_str1<72><31>piv_str<74>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>ȣ<EFBFBD><C8A3><EFBFBD><EFBFBD><EFBFBD> res_place=1
|
||||
IF instr(piv_str, p_sep, 1) = 0 THEN
|
||||
IF piv_str = piv_str1 THEN
|
||||
res_place:=1;
|
||||
res:= res_place;
|
||||
END IF;
|
||||
ELSE
|
||||
-- ѭ<><D1AD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD><EFBFBD>ȡpiv_str
|
||||
LOOP
|
||||
l_idx := instr(piv_str,p_sep);
|
||||
--
|
||||
res_place := res_place + 1;
|
||||
-- <20><>piv_str<74>л<EFBFBD><D0BB>зָ<D0B7><D6B8><EFBFBD>ʱ
|
||||
IF l_idx > 0 THEN
|
||||
-- <20><>ȡ<EFBFBD><C8A1>һ<EFBFBD><D2BB><EFBFBD>ָ<EFBFBD><D6B8><EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD>ֶ<EFBFBD>str
|
||||
str:= substr(piv_str,1,l_idx-1);
|
||||
-- <20>ж<EFBFBD> str <20><>piv_str1 <20>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>ȣ<EFBFBD><C8A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѭ<EFBFBD><D1AD><EFBFBD>ж<EFBFBD>
|
||||
IF str = piv_str1 THEN
|
||||
res:= res_place;
|
||||
EXIT;
|
||||
END IF;
|
||||
piv_str := substr(piv_str,l_idx+length(p_sep));
|
||||
ELSE
|
||||
-- <20><><EFBFBD><EFBFBD>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD>piv_str <20>в<EFBFBD><D0B2><EFBFBD><EFBFBD>ڷָ<DAB7><D6B8><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD>ж<EFBFBD>piv_str<74><72>piv_str1<72>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>ȣ<EFBFBD><C8A3><EFBFBD><EFBFBD><EFBFBD> res=res_path
|
||||
IF piv_str = piv_str1 THEN
|
||||
res:= res_place;
|
||||
END IF;
|
||||
-- <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>ȣ<EFBFBD><C8A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѭ<EFBFBD><D1AD>
|
||||
EXIT;
|
||||
END IF;
|
||||
END LOOP;
|
||||
-- <20><><EFBFBD><EFBFBD>ѭ<EFBFBD><D1AD>
|
||||
END IF;
|
||||
-- <20><><EFBFBD><EFBFBD>res
|
||||
RETURN res;
|
||||
END FIND_IN_SET;
|
||||
|
File diff suppressed because one or more lines are too long
5666
doc/vis389.sql
Normal file
5666
doc/vis389.sql
Normal file
File diff suppressed because one or more lines are too long
@ -1,6 +0,0 @@
|
||||
1. 装一个mysql5.7
|
||||
2. 执行ailanyin-boot-mysql5.7.sql到mysql5.7中
|
||||
3. 装dm8
|
||||
4. 用达梦数据迁移工具,将mysql迁移到dm8
|
||||
5. 复制FIND_IN_SET.sql中的内容并运行
|
||||
(将ROOT.FIND_IN_SET中的ROOT改成实际的)
|
Reference in New Issue
Block a user