Jelajahi Sumber

统计修改

licailing 4 tahun lalu
induk
melakukan
dee863e962

+ 12 - 8
src/main/java/com/izouma/wenlvju/domain/GradingOrganization.java

@@ -1,5 +1,6 @@
 package com.izouma.wenlvju.domain;
 
+import com.izouma.wenlvju.annotations.Searchable;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.AllArgsConstructor;
@@ -20,22 +21,25 @@ import javax.persistence.Entity;
 public class GradingOrganization extends BaseEntity {
     private String code;
 
+    @Searchable
     private String name;
 
-    private String introduction;
+    private boolean outOfProvince;
+
+//    private String introduction;
 
     private String province;
 
-    private String city;
+//    private String city;
 
-    private String district;
+//    private String district;
 
-    private String street;
+//    private String street;
 
-    private String address;
+//    private String address;
 
-    @ApiModelProperty(value = "联系人")
-    private String contact;
+//    @ApiModelProperty(value = "联系人")
+//    private String contact;
 
-    private String contactPhone;
+//    private String contactPhone;
 }

+ 3 - 0
src/main/java/com/izouma/wenlvju/repo/DistrictRepo.java

@@ -1,6 +1,7 @@
 package com.izouma.wenlvju.repo;
 
 import com.izouma.wenlvju.domain.District;
+import com.izouma.wenlvju.enums.DistrictLevel;
 import org.springframework.data.jpa.repository.JpaRepository;
 import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
 
@@ -8,4 +9,6 @@ import java.util.List;
 
 public interface DistrictRepo extends JpaRepository<District, Long>, JpaSpecificationExecutor<District> {
     List<District> findAllByParent(Long parent);
+
+    List<District> findAllByLevel(DistrictLevel level);
 }

+ 2 - 0
src/main/java/com/izouma/wenlvju/repo/RateRepo.java

@@ -33,4 +33,6 @@ public interface RateRepo extends JpaRepository<Rate, Long>, JpaSpecificationExe
 
     List<Rate> findAllByStatusAndYearOrderByScoreDesc(RateStatus status, String year);
 
+    Long countAllByYearAndRejectedAtIsNull(String year);
+
 }

+ 6 - 4
src/main/java/com/izouma/wenlvju/service/regulation/ReportService.java

@@ -15,10 +15,7 @@ import com.izouma.wenlvju.dto.ReportDTO;
 import com.izouma.wenlvju.enums.ReportType;
 import com.izouma.wenlvju.enums.UnitType;
 import com.izouma.wenlvju.exception.BusinessException;
-import com.izouma.wenlvju.repo.GradingOrganizationRepo;
-import com.izouma.wenlvju.repo.OrganizationRepo;
-import com.izouma.wenlvju.repo.RecordRepo;
-import com.izouma.wenlvju.repo.RecordSpecialtyRepo;
+import com.izouma.wenlvju.repo.*;
 import com.izouma.wenlvju.repo.regulation.ComplainRepo;
 import com.izouma.wenlvju.repo.regulation.RecordExpertAuditRepo;
 import com.izouma.wenlvju.repo.regulation.ReportRepo;
@@ -64,6 +61,7 @@ public class ReportService {
     private RecordSpecialtyRepo     recordSpecialtyRepo;
     private StorageService          storageService;
     private ReportStatisticRepo     reportStatisticRepo;
+    private RateRepo                rateRepo;
 
     public Page<Report> all(PageQuery pageQuery) {
         return reportRepo.findAll(JpaUtils.toSpecification(pageQuery, Report.class), JpaUtils.toPageRequest(pageQuery));
@@ -919,4 +917,8 @@ public class ReportService {
         return url;
     }
 
+    public void rate(int year) {
+        rateRepo.countAllByYearAndRejectedAtIsNull(String.valueOf(year));
+    }
+
 }

+ 7 - 2
src/main/java/com/izouma/wenlvju/web/DistrictController.java

@@ -13,7 +13,7 @@ import java.util.List;
 @RequestMapping("/district")
 @AllArgsConstructor
 public class DistrictController extends BaseController {
-    private final DistrictRepo districtRepo;
+    private final DistrictRepo    districtRepo;
     private final DistrictService districtService;
 
     @GetMapping({"/", ""})
@@ -24,8 +24,13 @@ public class DistrictController extends BaseController {
     }
 
     @GetMapping("/NJ")
-    public List<District> NJ(){
+    public List<District> NJ() {
         return districtRepo.findAllByParent(320100L);
     }
+
+    @GetMapping("/province")
+    public List<District> province() {
+        return districtRepo.findAllByLevel(DistrictLevel.PROVINCE);
+    }
 }
 

+ 32 - 11
src/main/vue/src/views/GradingOrganizationEdit.vue

@@ -10,10 +10,10 @@
             style="max-width: 640px;"
         >
             <el-form-item prop="code" label="代码">
-                <el-input v-model="formData.code"></el-input>
+                <el-input v-model="formData.code" style="width: 300px"></el-input>
             </el-form-item>
             <el-form-item prop="name" label="名称">
-                <el-input v-model="formData.name"></el-input>
+                <el-input v-model="formData.name" style="width: 300px"></el-input>
             </el-form-item>
             <!-- <el-form-item prop="introduction" label="简介">
                 <el-input
@@ -22,15 +22,23 @@
                     v-model="formData.introduction"
                 ></el-input>
             </el-form-item> -->
-            <!-- <el-form-item prop="code" label="地址">
-                <district-choose style="width:560px" v-model="district"></district-choose>
+            <el-form-item prop="province" label="地址">
+                <!-- <district-choose style="width:560px" v-model="district"></district-choose>
                 <el-input
                     type="textarea"
                     :autosize="{ minRows: 2, maxRows: 3 }"
                     v-model="formData.address"
                     style="margin-top: 10px"
-                ></el-input>
-            </el-form-item> -->
+                ></el-input> -->
+                <el-select v-model="formData.province">
+                    <el-option
+                        v-for="item in provinces"
+                        :label="item.name"
+                        :value="item.name"
+                        :key="item.id"
+                    ></el-option>
+                </el-select>
+            </el-form-item>
             <!-- <el-form-item prop="contact" label="联系人">
                 <el-input v-model="formData.contact"></el-input>
             </el-form-item>
@@ -64,13 +72,23 @@ export default {
                     this.$message.error(e.error);
                 });
         }
+        this.$http
+            .get('district/province')
+            .then(res => {
+                this.provinces = res;
+            })
+            .catch(e => {
+                console.log(e);
+                this.$message.error(e.error);
+            });
     },
     data() {
         return {
             saving: false,
             formData: {},
             rules: {},
-            district: []
+            district: [],
+            provinces: []
         };
     },
     methods: {
@@ -85,10 +103,13 @@ export default {
         },
         submit() {
             let data = { ...this.formData };
-            data.province = this.district[0];
-            data.city = this.district[1];
-            data.district = this.district[2];
-            data.street = this.district[3];
+            if (data.province != '江苏省') {
+                data.outOfProvince = true;
+            }
+            // data.province = this.district[0];
+            // data.city = this.district[1];
+            // data.district = this.district[2];
+            // data.street = this.district[3];
             this.saving = true;
             this.$http
                 .post('/gradingOrganization/save', data, { body: 'json' })

+ 2 - 0
src/main/vue/src/views/GradingOrganizationList.vue

@@ -28,6 +28,8 @@
             <!-- <el-table-column prop="id" label="ID" width="100"> </el-table-column> -->
             <el-table-column prop="code" label="编号" min-width="60"> </el-table-column>
             <el-table-column prop="name" label="名称" min-width="150"> </el-table-column>
+            <el-table-column prop="outOfProvince" label="省外" min-width="150"> </el-table-column>
+            <el-table-column prop="province" label="省份" min-width="150"> </el-table-column>
             <!-- <el-table-column prop="province" label="所属省份" min-width="100"> </el-table-column>
             <el-table-column prop="introduction" label="简介" min-width="200" show-overflow-tooltip> </el-table-column>
             <el-table-column prop="contact" label="联系人"> </el-table-column>

+ 1 - 1
src/main/vue/src/views/showStatistic/DatasWidget.vue

@@ -1,7 +1,7 @@
 <template>
     <widget-card>
         <template slot="header">
-            <span>数据总</span>
+            <span>数据总</span>
 
             <!-- <el-select style="float:right" v-model="chooseYear" size="mini" placeholder="请选择">
                 <el-option v-for="item in years" :key="item" :label="item" :value="item"> </el-option>

+ 5 - 4
src/main/vue/src/views/showStatistic/RatePieWidget.vue

@@ -49,7 +49,7 @@ export default {
                     {
                         name: '承办单位',
                         type: 'pie',
-                        radius: ['40%', '70%'],
+                        radius: ['40%', '60%'],
                         avoidLabelOverlap: false,
                         label: {
                             show: false,
@@ -63,7 +63,7 @@ export default {
                         //     }
                         // },
                         labelLine: {
-                            length: 20
+                            length: 10
                         },
                         label: {
                             formatter: ' {b|{b}:}{c}家 {per|{d}%}  ',
@@ -85,7 +85,7 @@ export default {
                                 },
                                 b: {
                                     color: '#4C5058',
-                                    fontSize: 14,
+                                    fontSize: 13,
                                     fontWeight: 'bold',
                                     lineHeight: 33
                                 },
@@ -100,7 +100,8 @@ export default {
                         data: [
                             { value: 89, name: '参加' },
                             { value: 112, name: '未参加' }
-                        ]
+                        ],
+                        center: ['50%', '50%']
                     }
                 ]
             };

+ 4 - 4
src/main/vue/src/views/showStatistic/RateYearWidget.vue

@@ -125,14 +125,14 @@ export default {
                     trigger: 'item'
                 },
                 legend: {
-                    orient: 'vertical',
-                    left: 'left'
+                    // orient: 'vertical'
+                    // left: 'left'
                 },
                 series: [
                     {
                         name: '2021年等级评定',
                         type: 'pie',
-                        radius: '70%',
+                        radius: '60%',
                         data: [
                             { value: 15, name: '优秀' },
                             { value: 60, name: '合格' },
@@ -169,7 +169,7 @@ export default {
                                 },
                                 b: {
                                     color: '#4C5058',
-                                    fontSize: 14,
+                                    fontSize: 13,
                                     fontWeight: 'bold',
                                     lineHeight: 33
                                 },