Browse Source

通过企业申请的藏品

licailing 4 years ago
parent
commit
18162a418c

+ 3 - 0
src/main/java/com/izouma/nineth/domain/CompanyCollection.java

@@ -76,6 +76,9 @@ public class CompanyCollection extends BaseEntity {
     @ApiModelProperty("特权")
     private List<Privilege> privileges;
 
+    @ApiModelProperty("是否可转售")
+    private boolean canResale;
+
     @Enumerated(EnumType.STRING)
     private CollectionStatus status;
 

+ 15 - 7
src/main/java/com/izouma/nineth/service/CompanyCollectionService.java

@@ -14,7 +14,6 @@ import org.springframework.beans.BeanUtils;
 import org.springframework.data.domain.Page;
 import org.springframework.stereotype.Service;
 
-
 @Service
 @AllArgsConstructor
 public class CompanyCollectionService {
@@ -22,8 +21,8 @@ public class CompanyCollectionService {
     private CompanyCollectionRepo   companyCollectionRepo;
     private CollectionRepo          collectionRepo;
     private UserRepo                userRepo;
-    private ShowroomRepo            showroomRepo;
     private CollectionPrivilegeRepo collectionPrivilegeRepo;
+    private SysConfigService        sysConfigService;
 
     public Page<CompanyCollection> all(PageQuery pageQuery) {
         return companyCollectionRepo.findAll(JpaUtils.toSpecification(pageQuery, CompanyCollection.class), JpaUtils.toPageRequest(pageQuery));
@@ -33,14 +32,17 @@ public class CompanyCollectionService {
         CompanyCollection companyCollection = companyCollectionRepo.findById(id)
                 .orElseThrow(new BusinessException("无申请"));
 
+
         if (!CollectionStatus.PENDING.equals(companyCollection.getStatus())) {
             throw new BusinessException("已审核");
         }
 
         companyCollection.setStatus(status);
         companyCollection.setReason(reason);
-        companyCollectionRepo.save(companyCollection);
+
         if (CollectionStatus.FAIL.equals(status)) {
+            //存状态
+            companyCollectionRepo.save(companyCollection);
             return;
         }
 
@@ -50,7 +52,7 @@ public class CompanyCollectionService {
         }
 
         Collection collection = new Collection();
-        BeanUtils.copyProperties(collection, companyCollection);
+        BeanUtils.copyProperties(companyCollection, collection);
         collection.setSource(CollectionSource.COMPANY);
         collection.setType(CollectionType.DEFAULT);
         collection.setStock(companyCollection.getTotal());
@@ -65,16 +67,22 @@ public class CompanyCollectionService {
         collection.setOwnerId(userId);
         collection.setOwnerAvatar(user.getAvatar());
 
-        Showroom showroom = showroomRepo.findFirstByUserId(userId);
-        collection.setRoyalties(showroom.getRoyalties());
-        collection.setServiceCharge(showroom.getServiceCharge());
+//        Showroom showroom = showroomRepo.findFirstByUserId(userId);
+        int royalties = sysConfigService.getInt("royalties");
+        int serviceCharge = sysConfigService.getInt("serviceCharge");
+        collection.setRoyalties(royalties);
+        collection.setServiceCharge(serviceCharge);
+        collection.setId(null);
         collection = collectionRepo.save(collection);
 
+        //企业属性
         collectionPrivilegeRepo.save(CollectionPrivilege.builder()
                 .collectionId(collection.getId())
                 .companyCollectionId(id)
                 .build());
 
+        //存状态
+        companyCollectionRepo.save(companyCollection);
     }
 
 }

+ 4 - 0
src/main/java/com/izouma/nineth/web/CompanyCollectionController.java

@@ -31,6 +31,10 @@ public class CompanyCollectionController extends BaseController {
         if (record.getId() != null) {
             CompanyCollection orig = companyCollectionRepo.findById(record.getId())
                     .orElseThrow(new BusinessException("无记录"));
+            if (CollectionStatus.SUCCESS.equals(orig.getStatus())) {
+                throw new BusinessException("已通过申请,不可编辑");
+            }
+
             ObjUtils.merge(orig, record);
             return companyCollectionRepo.save(orig);
         }

+ 1 - 1
src/main/vue/src/views/CompanyCollectionShow.vue

@@ -20,7 +20,7 @@
                             type="textarea"
                             v-model="formData.reason"
                             :rows="3"
-                            style="width: calc(90vw - 450px)"
+                            style="width: 500px"
                             disabled
                         ></el-input>
                     </el-form-item>

+ 5 - 1
src/main/vue/src/views/company/CompanyCollectionEdit.vue

@@ -20,7 +20,7 @@
                             type="textarea"
                             v-model="formData.reason"
                             :rows="3"
-                            style="width: calc(90vw - 450px)"
+                            style="width: 500px"
                             disabled
                         ></el-input>
                     </el-form-item>
@@ -182,6 +182,7 @@
     </div>
 </template>
 <script>
+import { mapState } from 'vuex';
 import resolveUrl from 'resolve-url';
 import ModelUpload from '../../components/ModelUpload.vue';
 export default {
@@ -341,6 +342,9 @@ export default {
             showPrivilegeEditDialog: false
         };
     },
+    computed: {
+        ...mapState(['userInfo'])
+    },
     methods: {
         onSave() {
             this.$refs.form.validate(valid => {